
Publish
Publish a message to an AWS SNS topic.
Publish a message to an AWS SNS topic.
Publish a message to an AWS SNS topic.
type: "io.kestra.plugin.aws.sns.Publish"Examples
Send an SMS message using AWS SNS
id: aws_sns_publish
namespace: company.team
tasks:
- id: publish
type: io.kestra.plugin.aws.sns.Publish
accessKeyId: "{{ secret('AWS_ACCESS_KEY_ID') }}"
secretKeyId: "{{ secret('AWS_SECRET_KEY_ID') }}"
region: "{{ secret('AWS_DEFAULT_REGION') }}"
topicArn: "arn:aws:sns:eu-central-1:000000000000:MessageTopic"
from:
- data: Hello World
- data: Hello Kestra
subject: Kestra
Send an SMS message using AWS SNS based on a runtime-specific input
id: send_sms
namespace: company.team
inputs:
- id: sms_text
type: STRING
defaults: Hello from Kestra and AWS SNS!
tasks:
- id: send_sms
type: io.kestra.plugin.aws.sns.Publish
accessKeyId: "{{ secret('AWS_ACCESS_KEY_ID') }}"
secretKeyId: "{{ secret('AWS_SECRET_KEY_ID') }}"
region: "{{ secret('AWS_DEFAULT_REGION') }}"
topicArn: arn:aws:sns:eu-central-1:123456789:kestra
from:
data: |
{{ inputs.sms_text }}
Properties
from*Requiredstringarray
Structured data items, either as a map, a list of map, a URI, or a JSON string.
Structured data items can be defined in the following ways:
- A single item as a map (a document).
- A list of items as a list of maps (a list of documents).
- A URI, supported schemes are
kestrafor internal storage files,filefor host local files, andnsfilefor namespace files. - A JSON String that will then be serialized either as a single item or a list of items.
io.kestra.plugin.aws.sns.model.Message
The message data.
The message deduplication ID.
The message group ID.
The message phone number.
The message structure.
The message subject.
topicArn*Requiredstring
The SNS topic ARN. The topic must already exist.
accessKeyIdstring
Access Key Id in order to connect to AWS.
compatibilityModebooleanstring
Enable compatibility mode.
Use it to connect to S3 bucket with S3 compatible services that don't support the new transport client.
endpointOverridestring
The endpoint with which the SDK should communicate.
This property allows you to use a different S3 compatible storage backend.
forcePathStylebooleanstring
Force path style access.
Must only be used when compatibilityMode is enabled.
regionstring
AWS region with which the SDK should communicate.
secretKeyIdstring
Secret Key Id in order to connect to AWS.
sessionTokenstring
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.
stsEndpointOverridestring
The AWS STS endpoint with which the SDKClient should communicate.
stsRoleArnstring
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.
stsRoleExternalIdstring
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.
stsRoleSessionDurationstring
PT15MdurationAWS 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.
stsRoleSessionNamestring
AWS STS Session name.
This property is only used when an stsRoleArn is defined.
Outputs
messagesCountinteger
Number of published messages.
Metrics
sns.publish.messagescounter
messagesNumber of messages published to the SNS topic.