Publish a message to an AWS SNS topic.
type: "io.kestra.plugin.aws.sns.publish"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 }}
YESStructured 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.
YESThe SNS topic ARN. The topic must already exist.
YESAccess Key Id in order to connect to AWS.
If no credentials are defined, we will use the default credentials provider chain to fetch credentials.
NOEnable compatibility mode.
Use it to connect to S3 bucket with S3 compatible services that don't support the new transport client.
YESThe endpoint with which the SDK should communicate.
This property allows you to use a different S3 compatible storage backend.
NOForce path style access.
Must only be used when compatibilityMode is enabled.
YESAWS region with which the SDK should communicate.
YESSecret Key Id in order to connect to AWS.
If no credentials are defined, we will use the default credentials provider chain to fetch credentials.
YESAWS 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.
YESThe AWS STS endpoint with which the SDKClient should communicate.
YESAWS 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.
YESAWS 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.
YESPT15MdurationAWS 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.
YESAWS STS Session name.
This property is only used when an stsRoleArn is defined.
Number of published messages.
YESThe message data.
YESThe message deduplication ID.
YESThe message group ID.
YESThe message phone number.
YESThe message structure.
YESThe message subject.