RealtimeTrigger RealtimeTrigger

yaml
type: "io.kestra.plugin.aws.sqs.RealtimeTrigger"

Consume a message in real-time from an SQS queue and create one execution per message.

If you would like to consume multiple messages processed within a given time frame and process them in batch, you can use the io.kestra.plugin.aws.sqs.Trigger instead.

Examples

Consume a message from an SQS queue in real-time.

yaml
id: sqs
namespace: dev

tasks:
- id: log
  type: io.kestra.plugin.core.log.Log
  message: "{{ trigger.data }}"

triggers:
- id: realtime_trigger
  type: io.kestra.plugin.aws.sqs.RealtimeTrigger
  accessKeyId: "<access-key>",
  secretKeyId: "<secret-key>",
  region: "eu-central-1",
  queueUrl: https://sqs.eu-central-1.amazonaws.com/000000000000/test-queue

Properties

queueUrl

  • Type: string
  • Dynamic: ✔️
  • Required: ✔️

The SQS queue URL. The queue must already exist.

serdeType

  • Type: string
  • Dynamic:
  • Required: ✔️
  • Default: STRING
  • Possible Values:
    • STRING
    • JSON

The serializer/deserializer to use.

accessKeyId

  • Type: string
  • Dynamic: ✔️
  • Required:

Access Key Id in order to connect to AWS.

If no connection is defined, we will use the DefaultCredentialsProvider to fetch the value.

conditions

  • Type: array
  • SubType: Condition
  • Dynamic:
  • Required:

List of conditions in order to limit the flow trigger.

endpointOverride

  • Type: string
  • Dynamic: ✔️
  • Required:

The endpoint with which the SDK should communicate.

This property should normally not be used except for local development.

region

  • Type: string
  • Dynamic: ✔️
  • Required:

AWS region with which the SDK should communicate.

secretKeyId

  • Type: string
  • Dynamic: ✔️
  • Required:

Secret Key Id in order to connect to AWS.

If no connection is defined, we will use the DefaultCredentialsProvider to fetch the value.

sessionToken

  • Type: string
  • Dynamic: ✔️
  • Required:

AWS session token, retrieved from an AWS token service, used for authenticating that this user has received temporary permissions to access a given resource.

If no connection is defined, we will use the DefaultCredentialsProvider to fetch the value.

stopAfter

  • Type: array
  • SubType: string
  • Dynamic:
  • Required:

List of execution states after which a trigger should be stopped (a.k.a. disabled).

stsEndpointOverride

  • Type: string
  • Dynamic: ✔️
  • Required:

The AWS STS endpoint with which the SDKClient should communicate.

stsRoleArn

  • Type: string
  • Dynamic: ✔️
  • Required:

AWS STS Role.

The Amazon Resource Name (ARN) of the role to assume. If set the task will use the StsAssumeRoleCredentialsProvider. Otherwise, the StaticCredentialsProvider will be used with the provided Access Key Id and Secret Key.

stsRoleExternalId

  • Type: string
  • Dynamic: ✔️
  • Required:

AWS STS External Id.

A unique identifier that might be required when you assume a role in another account. This property is only used when an stsRoleArn is defined.

stsRoleSessionDuration

  • Type: string
  • Dynamic:
  • Required:
  • Default: 900.000000000
  • Format: duration

AWS STS Session duration.

The duration of the role session (default: 15 minutes, i.e., PT15M). This property is only used when an stsRoleArn is defined.

stsRoleSessionName

  • Type: string
  • Dynamic: ✔️
  • Required:

AWS STS Session name. This property is only used when an stsRoleArn is defined.

Outputs

data

  • Type: string
  • Dynamic: ✔️
  • Required: ✔️

The message data.

deduplicationId

  • Type: string
  • Dynamic: ✔️
  • Required:

The message deduplication ID.

delaySeconds

  • Type: integer
  • Dynamic:
  • Required:

The message delay in seconds.

groupId

  • Type: string
  • Dynamic: ✔️
  • Required:

The message group ID.

Definitions

Was this page helpful?