Skip to content
v2.273.0

SqsSendMessage Class ​

Use an Amazon SQS Queue as a target for AWS EventBridge Scheduler.

Example ​

ts
const payload = 'test';
const messageGroupId = 'id';
const queue = new sqs.Queue(this, 'MyQueue', {
  fifo: true,
  contentBasedDeduplication: true,
});

const target = new targets.SqsSendMessage(queue, {
    input: ScheduleTargetInput.fromText(payload),
    messageGroupId,
});

new Schedule(this, 'Schedule', {
    schedule: ScheduleExpression.rate(Duration.minutes(1)),
    target
});
python
payload = "test"
message_group_id = "id"
queue = sqs.Queue(self, "MyQueue",
    fifo=True,
    content_based_deduplication=True
)

target = targets.SqsSendMessage(queue,
    input=ScheduleTargetInput.from_text(payload),
    message_group_id=message_group_id
)

Schedule(self, "Schedule",
    schedule=ScheduleExpression.rate(Duration.minutes(1)),
    target=target
)
java
String payload = "test";
String messageGroupId = "id";
Queue queue = Queue.Builder.create(this, "MyQueue")
        .fifo(true)
        .contentBasedDeduplication(true)
        .build();

SqsSendMessage target = SqsSendMessage.Builder.create(queue)
        .input(ScheduleTargetInput.fromText(payload))
        .messageGroupId(messageGroupId)
        .build();

Schedule.Builder.create(this, "Schedule")
        .schedule(ScheduleExpression.rate(Duration.minutes(1)))
        .target(target)
        .build();
csharp
// Install: dotnet add package Amazon.CDK.Lib
var payload = "test";
var messageGroupId = "id";
var queue = new Queue(this, "MyQueue", new QueueProps {
    Fifo = true,
    ContentBasedDeduplication = true
});

var target = new SqsSendMessage(queue, new SqsSendMessageProps {
    Input = ScheduleTargetInput.FromText(payload),
    MessageGroupId = messageGroupId
});

new Schedule(this, "Schedule", new ScheduleProps {
    Schedule = ScheduleExpression.Rate(Duration.Minutes(1)),
    Target = target
});
go
// Install: go get github.com/aws/aws-cdk-go/awscdk/v2
payload := "test"
messageGroupId := "id"
queue := sqs.NewQueue(this, jsii.String("MyQueue"), &QueueProps{
	Fifo: jsii.Boolean(true),
	ContentBasedDeduplication: jsii.Boolean(true),
})

target := targets.NewSqsSendMessage(queue, &SqsSendMessageProps{
	Input: awscdk.ScheduleTargetInput_FromText(payload),
	MessageGroupId: jsii.String(MessageGroupId),
})

awscdk.NewSchedule(this, jsii.String("Schedule"), &ScheduleProps{
	Schedule: awscdk.ScheduleExpression_Rate(awscdk.Duration_Minutes(jsii.Number(1))),
	Target: Target,
})

Initializer ​

ts
new SqsSendMessage(queue: IQueue, props?: SqsSendMessageProps)
python
SqsSendMessage(queue: IQueue, props: typing.Optional[SqsSendMessageProps] = None)
java
new SqsSendMessage(IQueue queue, SqsSendMessageProps props)
csharp
new SqsSendMessage(IQueue queue, SqsSendMessageProps? props = null)
go
NewSqsSendMessage(Queue IQueue, Props SqsSendMessageProps)

Methods ​

bind(schedule: ISchedule): ScheduleTargetConfigdef bind(self, schedule: ISchedule) -> ScheduleTargetConfigpublic ScheduleTargetConfig bind(ISchedule schedule)public ScheduleTargetConfig Bind(ISchedule schedule)func Bind(Schedule ISchedule) ScheduleTargetConfig#
Create a return a Schedule Target Configuration for the given schedule.
returns

Returns: a Schedule Target Configuration