RealtimeTrigger
RealtimeTrigger
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.
id: sqs
namespace: company.team
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 credentials are defined, we will use the default credentials provider chain to fetch credentials.
clientRetryMaxAttempts
- Type: integer
- Dynamic: ❌
- Required: ❌
- Default:
3
The maximum number of attempts used by the SQS client's retry strategy.
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 allows you to use a different S3 compatible storage backend.
maxNumberOfMessage
- Type: integer
- Dynamic: ❌
- Required: ❌
- Default:
5
The maximum number of messages returned from request made to SQS.
Increasing this value can reduce the number of requests made to SQS. Amazon SQS never returns more messages than this value (however, fewer messages might be returned). Valid values: 1 to 10.
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 credentials are defined, we will use the default credentials provider chain to fetch credentials.
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 credentials are defined, we will use the default credentials provider chain to fetch credentials.
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
. If no credentials are defined, we will use the default credentials provider chain to fetch credentials.
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.
waitTime
- Type: string
- Dynamic: ❌
- Required: ❌
- Default:
20.000000000
- Format:
duration
The duration for which the SQS client waits for a message.
Outputs
data
- Type: string
- Required: ✔️
The message data.
deduplicationId
- Type: string
- Required: ❌
The message deduplication ID.
delaySeconds
- Type: integer
- Required: ❌
The message delay in seconds.
groupId
- Type: string
- Required: ❌
The message group ID.
Was this page helpful?