{ "apiVersion": "camel.apache.org/v1", "kind": "Kamelet", "metadata": { "name": "aws-kinesis-source", "annotations": { "camel.apache.org/kamelet.support.level": "Stable", "camel.apache.org/catalog.version": "4.22.1", "camel.apache.org/kamelet.icon": "data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNTYgMzA4LjIzNDAxIj48dGl0bGU+YXdzLWtpbmVzaXM8L3RpdGxlPjxwYXRoIGQ9Ik0wLDE3Mi4wODdsMTI3Ljc1NCw1OC44MSwxMjcuNzUyLTU4LjgxLTEyNy43NTItNS4yOTNaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwIDAuMDAwMDUpIiBmaWxsPSIjZmNiZjkyIi8+PHBhdGggZD0iTTEyOC4xNDcsMCwuMDU5LDYzLjg4MXY5MC4xMzZIMTUzLjY0OFYxMi43NTFaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwIDAuMDAwMDUpIiBmaWxsPSIjOWQ1MDI1Ii8+PHBhdGggZD0iTS4wNTksMjE3LjU1OWwxMjguMTYyLDkwLjY3NUwyNTYsMjE3LjU1OSwxMjcuOTQ1LDE5OC45MjZaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwIDAuMDAwMDUpIiBmaWxsPSIjZmNiZjkyIi8+PHBhdGggZD0iTTEyOC4xNDYsMTU0LjAxN2g2Ny41NzdWNTcuODM2TDE3NS45OSw0OS45NDMsMTI4LjE0Niw2My44OThaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwIDAuMDAwMDUpIiBmaWxsPSIjOWQ1MDI1Ii8+PHBhdGggZD0iTTE3NS45OSwxNTQuMDE3aDUyLjIzM1Y5MS42MzJsLTE0Ljk0LTQuNDgxLTM3LjI5Myw2LjMzWiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCAwLjAwMDA1KSIgZmlsbD0iIzlkNTAyNSIvPjxwYXRoIGQ9Ik0yMTMuMjgyLDgyLjI2djcxLjc1N2g0Mi4yMjRMMjU2LDgxLjk0MWwtMTIuODI2LTUuMTI0WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCAwLjAwMDA1KSIgZmlsbD0iIzlkNTAyNSIvPjxwYXRoIGQ9Ik0xMjguMTQ3LDBWMTU0LjAxN2gyNS41VjEyLjc1MVoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgMC4wMDAwNSkiIGZpbGw9IiNmNjg1MzQiLz48cGF0aCBkPSJNMTk1LjcyNCw1Ny44MzZsLTE5LjczMy03Ljg5NFYxNTQuMDE3aDE5LjczMloiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgMC4wMDAwNSkiIGZpbGw9IiNmNjg1MzQiLz48cGF0aCBkPSJNMjI4LjIyNCw5MS42MzJsLTE0Ljk0MS00LjQ4djY2Ljg2NWgxNC45NFoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgMC4wMDAwNSkiIGZpbGw9IiNmNjg1MzQiLz48cGF0aCBkPSJNMjQzLjE3NCwxNTQuMDE3SDI1NlY4MS45NDFsLTEyLjgyNi01LjEyNFoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgMC4wMDAwNSkiIGZpbGw9IiNmNjg1MzQiLz48cGF0aCBkPSJNMTI3Ljc1NCwxODQuODYzdjQ2LjAzM2wxMjcuNzUyLTMxLjg0NFYxNzIuMDg3WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCAwLjAwMDA1KSIgZmlsbD0iI2Y2ODUzNCIvPjxwYXRoIGQ9Ik0xMjcuNzU0LDI2Mi43ODF2NDUuNDUzTDI1NiwyNDQuMTE0VjIxNy41NloiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgMC4wMDAwNSkiIGZpbGw9IiNmNjg1MzQiLz48cGF0aCBkPSJNLjA1OSwyNDQuMzlsMTI3LjY5NSw2My44NDRWMjYyLjQ0OEwuMDU4LDIxNy41NThaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwIDAuMDAwMDUpIiBmaWxsPSIjOWQ1MDI1Ii8+PHBhdGggZD0iTTAsMTk5LjA1MWwxMjcuNzU0LDMxLjg0NVYxODQuODYyTDAsMTcyLjA4NloiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgMC4wMDAwNSkiIGZpbGw9IiM5ZDUwMjUiLz48L3N2Zz4=", "camel.apache.org/provider": "Apache Software Foundation", "camel.apache.org/kamelet.group": "AWS Kinesis", "camel.apache.org/kamelet.namespace": "AWS" }, "labels": { "camel.apache.org/kamelet.type": "source", "camel.apache.org/kamelet.verified": "true" } }, "spec": { "definition": { "title": "AWS Kinesis Source", "description": "Receive data from AWS Kinesis.", "required": [ "stream", "region" ], "type": "object", "properties": { "stream": { "title": "Stream Name", "description": "The Kinesis stream that you want to access. The Kinesis stream that you specify must already exist.", "type": "string" }, "accessKey": { "title": "Access Key", "description": "The access key obtained from AWS.", "type": "string", "format": "password", "x-descriptors": [ "urn:camel:group:credentials" ] }, "secretKey": { "title": "Secret Key", "description": "The secret key obtained from AWS.", "type": "string", "format": "password", "x-descriptors": [ "urn:camel:group:credentials" ] }, "region": { "title": "AWS Region", "description": "The AWS region to access.", "type": "string", "enum": [ "ap-south-1", "eu-south-1", "us-gov-east-1", "me-central-1", "ca-central-1", "eu-central-1", "us-iso-west-1", "us-west-1", "us-west-2", "af-south-1", "eu-north-1", "eu-west-3", "eu-west-2", "eu-west-1", "ap-northeast-3", "ap-northeast-2", "ap-northeast-1", "me-south-1", "sa-east-1", "ap-east-1", "cn-north-1", "us-gov-west-1", "ap-southeast-1", "ap-southeast-2", "us-iso-east-1", "ap-southeast-3", "us-east-1", "us-east-2", "cn-northwest-1", "us-isob-east-1", "aws-global", "aws-cn-global", "aws-us-gov-global", "aws-iso-global", "aws-iso-b-global" ] }, "useDefaultCredentialsProvider": { "title": "Default Credentials Provider", "description": "If true, the Kinesis client loads credentials through a default credentials provider. If false, it uses the basic authentication method (access key and secret key).", "type": "boolean", "default": false }, "useProfileCredentialsProvider": { "title": "Profile Credentials Provider", "description": "Set whether the Kinesis client should expect to load credentials through a profile credentials provider.", "type": "boolean", "default": false }, "useSessionCredentials": { "title": "Session Credentials", "description": "Set whether the Kinesis client should expect to use Session Credentials. This is useful in situation in which the user needs to assume a IAM role for doing operations in Kinesis.", "type": "boolean", "default": false }, "profileCredentialsName": { "title": "Profile Credentials Name", "description": "If using a profile credentials provider this parameter sets the profile name.", "type": "string" }, "sessionToken": { "title": "Session Token", "description": "Amazon AWS Session Token used when the user needs to assume a IAM role.", "type": "string", "format": "password", "x-descriptors": [ "urn:camel:group:credentials" ] }, "uriEndpointOverride": { "title": "Overwrite Endpoint URI", "description": "The overriding endpoint URI. To use this option, you must also select the `overrideEndpoint` option.", "type": "string" }, "overrideEndpoint": { "title": "Endpoint Overwrite", "description": "Select this option to override the endpoint URI. To use this option, you must also provide a URI for the `uriEndpointOverride` option.", "type": "boolean", "default": false }, "delay": { "title": "Delay", "description": "The number of milliseconds before the next poll of the selected stream.", "type": "integer", "default": 500 }, "asyncClient": { "title": "Async Client", "description": "If we want a KinesisAsyncClient instance set it to true.", "type": "boolean", "default": false }, "useKclConsumers": { "title": "KCL Consumer", "description": "If we want to a KCL Consumer set it to true", "type": "boolean", "default": false }, "kclDisableCloudwatchMetricsExport": { "title": "KCL Disable Cloudwatch Metrics Export", "description": "Define if we want to use a KCL Consumer and disable the CloudWatch Metrics Export", "type": "boolean", "default": false } } }, "types": { "out": { "mediaType": "application/octet-stream" } }, "dependencies": [ "camel:aws2-kinesis", "camel:kamelet", "camel:core" ], "template": { "from": { "uri": "aws2-kinesis:{{stream}}", "parameters": { "secretKey": "{{?secretKey}}", "accessKey": "{{?accessKey}}", "region": "{{region}}", "useDefaultCredentialsProvider": "{{useDefaultCredentialsProvider}}", "useProfileCredentialsProvider": "{{useProfileCredentialsProvider}}", "useSessionCredentials": "{{useSessionCredentials}}", "uriEndpointOverride": "{{?uriEndpointOverride}}", "profileCredentialsName": "{{?profileCredentialsName}}", "sessionToken": "{{?sessionToken}}", "overrideEndpoint": "{{overrideEndpoint}}", "delay": "{{delay}}", "useKclConsumers": "{{useKclConsumers}}", "asyncClient": "{{asyncClient}}", "kclDisableCloudwatchMetricsExport": "{{kclDisableCloudwatchMetricsExport}}" }, "steps": [ { "to": "kamelet:sink" } ] } } }, "propertiesSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "title": "AWS Kinesis Source", "description": "Receive data from AWS Kinesis.", "required": [ "stream", "region" ], "properties": { "stream": { "type": "string", "title": "Stream Name", "description": "The Kinesis stream that you want to access. The Kinesis stream that you specify must already exist." }, "accessKey": { "type": "string", "title": "Access Key", "description": "The access key obtained from AWS.", "format": "password" }, "secretKey": { "type": "string", "title": "Secret Key", "description": "The secret key obtained from AWS.", "format": "password" }, "region": { "type": "string", "title": "AWS Region", "description": "The AWS region to access.", "enum": [ "ap-south-1", "eu-south-1", "us-gov-east-1", "me-central-1", "ca-central-1", "eu-central-1", "us-iso-west-1", "us-west-1", "us-west-2", "af-south-1", "eu-north-1", "eu-west-3", "eu-west-2", "eu-west-1", "ap-northeast-3", "ap-northeast-2", "ap-northeast-1", "me-south-1", "sa-east-1", "ap-east-1", "cn-north-1", "us-gov-west-1", "ap-southeast-1", "ap-southeast-2", "us-iso-east-1", "ap-southeast-3", "us-east-1", "us-east-2", "cn-northwest-1", "us-isob-east-1", "aws-global", "aws-cn-global", "aws-us-gov-global", "aws-iso-global", "aws-iso-b-global" ] }, "useDefaultCredentialsProvider": { "type": "boolean", "title": "Default Credentials Provider", "description": "If true, the Kinesis client loads credentials through a default credentials provider. If false, it uses the basic authentication method (access key and secret key).", "default": false }, "useProfileCredentialsProvider": { "type": "boolean", "title": "Profile Credentials Provider", "description": "Set whether the Kinesis client should expect to load credentials through a profile credentials provider.", "default": false }, "useSessionCredentials": { "type": "boolean", "title": "Session Credentials", "description": "Set whether the Kinesis client should expect to use Session Credentials. This is useful in situation in which the user needs to assume a IAM role for doing operations in Kinesis.", "default": false }, "profileCredentialsName": { "type": "string", "title": "Profile Credentials Name", "description": "If using a profile credentials provider this parameter sets the profile name." }, "sessionToken": { "type": "string", "title": "Session Token", "description": "Amazon AWS Session Token used when the user needs to assume a IAM role.", "format": "password" }, "uriEndpointOverride": { "type": "string", "title": "Overwrite Endpoint URI", "description": "The overriding endpoint URI. To use this option, you must also select the `overrideEndpoint` option." }, "overrideEndpoint": { "type": "boolean", "title": "Endpoint Overwrite", "description": "Select this option to override the endpoint URI. To use this option, you must also provide a URI for the `uriEndpointOverride` option.", "default": false }, "delay": { "type": "integer", "title": "Delay", "description": "The number of milliseconds before the next poll of the selected stream.", "default": 500 }, "asyncClient": { "type": "boolean", "title": "Async Client", "description": "If we want a KinesisAsyncClient instance set it to true.", "default": false }, "useKclConsumers": { "type": "boolean", "title": "KCL Consumer", "description": "If we want to a KCL Consumer set it to true", "default": false }, "kclDisableCloudwatchMetricsExport": { "type": "boolean", "title": "KCL Disable Cloudwatch Metrics Export", "description": "Define if we want to use a KCL Consumer and disable the CloudWatch Metrics Export", "default": false } } } }