/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Contains the details of a single Amazon SNS message along with an
* Id
that identifies a message within the batch. See
* Also:
AWS
* API Reference
An identifier for the message in this batch.
The
* Ids
of a batch request must be unique within a request.
This identifier can have up to 80 characters. The following characters are * accepted: alphanumeric characters, hyphens(-), and underscores (_).
*/ inline const Aws::String& GetId() const{ return m_id; } /** *An identifier for the message in this batch.
The
* Ids
of a batch request must be unique within a request.
This identifier can have up to 80 characters. The following characters are * accepted: alphanumeric characters, hyphens(-), and underscores (_).
*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *An identifier for the message in this batch.
The
* Ids
of a batch request must be unique within a request.
This identifier can have up to 80 characters. The following characters are * accepted: alphanumeric characters, hyphens(-), and underscores (_).
*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *An identifier for the message in this batch.
The
* Ids
of a batch request must be unique within a request.
This identifier can have up to 80 characters. The following characters are * accepted: alphanumeric characters, hyphens(-), and underscores (_).
*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *An identifier for the message in this batch.
The
* Ids
of a batch request must be unique within a request.
This identifier can have up to 80 characters. The following characters are * accepted: alphanumeric characters, hyphens(-), and underscores (_).
*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *An identifier for the message in this batch.
The
* Ids
of a batch request must be unique within a request.
This identifier can have up to 80 characters. The following characters are * accepted: alphanumeric characters, hyphens(-), and underscores (_).
*/ inline PublishBatchRequestEntry& WithId(const Aws::String& value) { SetId(value); return *this;} /** *An identifier for the message in this batch.
The
* Ids
of a batch request must be unique within a request.
This identifier can have up to 80 characters. The following characters are * accepted: alphanumeric characters, hyphens(-), and underscores (_).
*/ inline PublishBatchRequestEntry& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *An identifier for the message in this batch.
The
* Ids
of a batch request must be unique within a request.
This identifier can have up to 80 characters. The following characters are * accepted: alphanumeric characters, hyphens(-), and underscores (_).
*/ inline PublishBatchRequestEntry& WithId(const char* value) { SetId(value); return *this;} /** *The body of the message.
*/ inline const Aws::String& GetMessage() const{ return m_message; } /** *The body of the message.
*/ inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; } /** *The body of the message.
*/ inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; } /** *The body of the message.
*/ inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); } /** *The body of the message.
*/ inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); } /** *The body of the message.
*/ inline PublishBatchRequestEntry& WithMessage(const Aws::String& value) { SetMessage(value); return *this;} /** *The body of the message.
*/ inline PublishBatchRequestEntry& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;} /** *The body of the message.
*/ inline PublishBatchRequestEntry& WithMessage(const char* value) { SetMessage(value); return *this;} /** *The subject of the batch message.
*/ inline const Aws::String& GetSubject() const{ return m_subject; } /** *The subject of the batch message.
*/ inline bool SubjectHasBeenSet() const { return m_subjectHasBeenSet; } /** *The subject of the batch message.
*/ inline void SetSubject(const Aws::String& value) { m_subjectHasBeenSet = true; m_subject = value; } /** *The subject of the batch message.
*/ inline void SetSubject(Aws::String&& value) { m_subjectHasBeenSet = true; m_subject = std::move(value); } /** *The subject of the batch message.
*/ inline void SetSubject(const char* value) { m_subjectHasBeenSet = true; m_subject.assign(value); } /** *The subject of the batch message.
*/ inline PublishBatchRequestEntry& WithSubject(const Aws::String& value) { SetSubject(value); return *this;} /** *The subject of the batch message.
*/ inline PublishBatchRequestEntry& WithSubject(Aws::String&& value) { SetSubject(std::move(value)); return *this;} /** *The subject of the batch message.
*/ inline PublishBatchRequestEntry& WithSubject(const char* value) { SetSubject(value); return *this;} /** *Set MessageStructure
to json
if you want to send a
* different message for each protocol. For example, using one publish action, you
* can send a short message to your SMS subscribers and a longer message to your
* email subscribers. If you set MessageStructure
to
* json
, the value of the Message
parameter must:
be a syntactically valid JSON object; and
contain * at least a top-level JSON key of "default" with a value that is a string.
*You can define other top-level keys that define the message you * want to send to a specific transport protocol (e.g. http).
*/ inline const Aws::String& GetMessageStructure() const{ return m_messageStructure; } /** *Set MessageStructure
to json
if you want to send a
* different message for each protocol. For example, using one publish action, you
* can send a short message to your SMS subscribers and a longer message to your
* email subscribers. If you set MessageStructure
to
* json
, the value of the Message
parameter must:
be a syntactically valid JSON object; and
contain * at least a top-level JSON key of "default" with a value that is a string.
*You can define other top-level keys that define the message you * want to send to a specific transport protocol (e.g. http).
*/ inline bool MessageStructureHasBeenSet() const { return m_messageStructureHasBeenSet; } /** *Set MessageStructure
to json
if you want to send a
* different message for each protocol. For example, using one publish action, you
* can send a short message to your SMS subscribers and a longer message to your
* email subscribers. If you set MessageStructure
to
* json
, the value of the Message
parameter must:
be a syntactically valid JSON object; and
contain * at least a top-level JSON key of "default" with a value that is a string.
*You can define other top-level keys that define the message you * want to send to a specific transport protocol (e.g. http).
*/ inline void SetMessageStructure(const Aws::String& value) { m_messageStructureHasBeenSet = true; m_messageStructure = value; } /** *Set MessageStructure
to json
if you want to send a
* different message for each protocol. For example, using one publish action, you
* can send a short message to your SMS subscribers and a longer message to your
* email subscribers. If you set MessageStructure
to
* json
, the value of the Message
parameter must:
be a syntactically valid JSON object; and
contain * at least a top-level JSON key of "default" with a value that is a string.
*You can define other top-level keys that define the message you * want to send to a specific transport protocol (e.g. http).
*/ inline void SetMessageStructure(Aws::String&& value) { m_messageStructureHasBeenSet = true; m_messageStructure = std::move(value); } /** *Set MessageStructure
to json
if you want to send a
* different message for each protocol. For example, using one publish action, you
* can send a short message to your SMS subscribers and a longer message to your
* email subscribers. If you set MessageStructure
to
* json
, the value of the Message
parameter must:
be a syntactically valid JSON object; and
contain * at least a top-level JSON key of "default" with a value that is a string.
*You can define other top-level keys that define the message you * want to send to a specific transport protocol (e.g. http).
*/ inline void SetMessageStructure(const char* value) { m_messageStructureHasBeenSet = true; m_messageStructure.assign(value); } /** *Set MessageStructure
to json
if you want to send a
* different message for each protocol. For example, using one publish action, you
* can send a short message to your SMS subscribers and a longer message to your
* email subscribers. If you set MessageStructure
to
* json
, the value of the Message
parameter must:
be a syntactically valid JSON object; and
contain * at least a top-level JSON key of "default" with a value that is a string.
*You can define other top-level keys that define the message you * want to send to a specific transport protocol (e.g. http).
*/ inline PublishBatchRequestEntry& WithMessageStructure(const Aws::String& value) { SetMessageStructure(value); return *this;} /** *Set MessageStructure
to json
if you want to send a
* different message for each protocol. For example, using one publish action, you
* can send a short message to your SMS subscribers and a longer message to your
* email subscribers. If you set MessageStructure
to
* json
, the value of the Message
parameter must:
be a syntactically valid JSON object; and
contain * at least a top-level JSON key of "default" with a value that is a string.
*You can define other top-level keys that define the message you * want to send to a specific transport protocol (e.g. http).
*/ inline PublishBatchRequestEntry& WithMessageStructure(Aws::String&& value) { SetMessageStructure(std::move(value)); return *this;} /** *Set MessageStructure
to json
if you want to send a
* different message for each protocol. For example, using one publish action, you
* can send a short message to your SMS subscribers and a longer message to your
* email subscribers. If you set MessageStructure
to
* json
, the value of the Message
parameter must:
be a syntactically valid JSON object; and
contain * at least a top-level JSON key of "default" with a value that is a string.
*You can define other top-level keys that define the message you * want to send to a specific transport protocol (e.g. http).
*/ inline PublishBatchRequestEntry& WithMessageStructure(const char* value) { SetMessageStructure(value); return *this;} /** *Each message attribute consists of a Name
, Type
,
* and Value
. For more information, see Amazon
* SNS message attributes in the Amazon SNS Developer Guide.
Each message attribute consists of a Name
, Type
,
* and Value
. For more information, see Amazon
* SNS message attributes in the Amazon SNS Developer Guide.
Each message attribute consists of a Name
, Type
,
* and Value
. For more information, see Amazon
* SNS message attributes in the Amazon SNS Developer Guide.
Each message attribute consists of a Name
, Type
,
* and Value
. For more information, see Amazon
* SNS message attributes in the Amazon SNS Developer Guide.
Each message attribute consists of a Name
, Type
,
* and Value
. For more information, see Amazon
* SNS message attributes in the Amazon SNS Developer Guide.
Each message attribute consists of a Name
, Type
,
* and Value
. For more information, see Amazon
* SNS message attributes in the Amazon SNS Developer Guide.
Each message attribute consists of a Name
, Type
,
* and Value
. For more information, see Amazon
* SNS message attributes in the Amazon SNS Developer Guide.
Each message attribute consists of a Name
, Type
,
* and Value
. For more information, see Amazon
* SNS message attributes in the Amazon SNS Developer Guide.
Each message attribute consists of a Name
, Type
,
* and Value
. For more information, see Amazon
* SNS message attributes in the Amazon SNS Developer Guide.
Each message attribute consists of a Name
, Type
,
* and Value
. For more information, see Amazon
* SNS message attributes in the Amazon SNS Developer Guide.
Each message attribute consists of a Name
, Type
,
* and Value
. For more information, see Amazon
* SNS message attributes in the Amazon SNS Developer Guide.
Each message attribute consists of a Name
, Type
,
* and Value
. For more information, see Amazon
* SNS message attributes in the Amazon SNS Developer Guide.
This parameter applies only to FIFO (first-in-first-out) topics.
The
* token used for deduplication of messages within a 5-minute minimum deduplication
* interval. If a message with a particular MessageDeduplicationId
is
* sent successfully, subsequent messages with the same
* MessageDeduplicationId
are accepted successfully but aren't
* delivered.
Every message must have a unique
* MessageDeduplicationId
.
You may provide a
* MessageDeduplicationId
explicitly.
If you aren't
* able to provide a MessageDeduplicationId
and you enable
* ContentBasedDeduplication
for your topic, Amazon SNS uses a SHA-256
* hash to generate the MessageDeduplicationId
using the body of the
* message (but not the attributes of the message).
If you don't
* provide a MessageDeduplicationId
and the topic doesn't have
* ContentBasedDeduplication
set, the action fails with an error.
If the topic has a ContentBasedDeduplication
set,
* your MessageDeduplicationId
overrides the generated one.
When ContentBasedDeduplication
is in effect,
* messages with identical content sent within the deduplication interval are
* treated as duplicates and only one copy of the message is delivered.
If you send one message with ContentBasedDeduplication
* enabled, and then another message with a MessageDeduplicationId
* that is the same as the one generated for the first
* MessageDeduplicationId
, the two messages are treated as duplicates
* and only one copy of the message is delivered.
The
* MessageDeduplicationId
is available to the consumer of the message
* (this can be useful for troubleshooting delivery issues).
If a message is
* sent successfully but the acknowledgement is lost and the message is resent with
* the same MessageDeduplicationId
after the deduplication interval,
* Amazon SNS can't detect duplicate messages.
Amazon SNS continues to keep * track of the message deduplication ID even after the message is received and * deleted.
The length of MessageDeduplicationId
is
* 128 characters.
MessageDeduplicationId
can contain
* alphanumeric characters (a-z, A-Z, 0-9)
and punctuation
* (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~)
.
This parameter applies only to FIFO (first-in-first-out) topics.
The
* token used for deduplication of messages within a 5-minute minimum deduplication
* interval. If a message with a particular MessageDeduplicationId
is
* sent successfully, subsequent messages with the same
* MessageDeduplicationId
are accepted successfully but aren't
* delivered.
Every message must have a unique
* MessageDeduplicationId
.
You may provide a
* MessageDeduplicationId
explicitly.
If you aren't
* able to provide a MessageDeduplicationId
and you enable
* ContentBasedDeduplication
for your topic, Amazon SNS uses a SHA-256
* hash to generate the MessageDeduplicationId
using the body of the
* message (but not the attributes of the message).
If you don't
* provide a MessageDeduplicationId
and the topic doesn't have
* ContentBasedDeduplication
set, the action fails with an error.
If the topic has a ContentBasedDeduplication
set,
* your MessageDeduplicationId
overrides the generated one.
When ContentBasedDeduplication
is in effect,
* messages with identical content sent within the deduplication interval are
* treated as duplicates and only one copy of the message is delivered.
If you send one message with ContentBasedDeduplication
* enabled, and then another message with a MessageDeduplicationId
* that is the same as the one generated for the first
* MessageDeduplicationId
, the two messages are treated as duplicates
* and only one copy of the message is delivered.
The
* MessageDeduplicationId
is available to the consumer of the message
* (this can be useful for troubleshooting delivery issues).
If a message is
* sent successfully but the acknowledgement is lost and the message is resent with
* the same MessageDeduplicationId
after the deduplication interval,
* Amazon SNS can't detect duplicate messages.
Amazon SNS continues to keep * track of the message deduplication ID even after the message is received and * deleted.
The length of MessageDeduplicationId
is
* 128 characters.
MessageDeduplicationId
can contain
* alphanumeric characters (a-z, A-Z, 0-9)
and punctuation
* (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~)
.
This parameter applies only to FIFO (first-in-first-out) topics.
The
* token used for deduplication of messages within a 5-minute minimum deduplication
* interval. If a message with a particular MessageDeduplicationId
is
* sent successfully, subsequent messages with the same
* MessageDeduplicationId
are accepted successfully but aren't
* delivered.
Every message must have a unique
* MessageDeduplicationId
.
You may provide a
* MessageDeduplicationId
explicitly.
If you aren't
* able to provide a MessageDeduplicationId
and you enable
* ContentBasedDeduplication
for your topic, Amazon SNS uses a SHA-256
* hash to generate the MessageDeduplicationId
using the body of the
* message (but not the attributes of the message).
If you don't
* provide a MessageDeduplicationId
and the topic doesn't have
* ContentBasedDeduplication
set, the action fails with an error.
If the topic has a ContentBasedDeduplication
set,
* your MessageDeduplicationId
overrides the generated one.
When ContentBasedDeduplication
is in effect,
* messages with identical content sent within the deduplication interval are
* treated as duplicates and only one copy of the message is delivered.
If you send one message with ContentBasedDeduplication
* enabled, and then another message with a MessageDeduplicationId
* that is the same as the one generated for the first
* MessageDeduplicationId
, the two messages are treated as duplicates
* and only one copy of the message is delivered.
The
* MessageDeduplicationId
is available to the consumer of the message
* (this can be useful for troubleshooting delivery issues).
If a message is
* sent successfully but the acknowledgement is lost and the message is resent with
* the same MessageDeduplicationId
after the deduplication interval,
* Amazon SNS can't detect duplicate messages.
Amazon SNS continues to keep * track of the message deduplication ID even after the message is received and * deleted.
The length of MessageDeduplicationId
is
* 128 characters.
MessageDeduplicationId
can contain
* alphanumeric characters (a-z, A-Z, 0-9)
and punctuation
* (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~)
.
This parameter applies only to FIFO (first-in-first-out) topics.
The
* token used for deduplication of messages within a 5-minute minimum deduplication
* interval. If a message with a particular MessageDeduplicationId
is
* sent successfully, subsequent messages with the same
* MessageDeduplicationId
are accepted successfully but aren't
* delivered.
Every message must have a unique
* MessageDeduplicationId
.
You may provide a
* MessageDeduplicationId
explicitly.
If you aren't
* able to provide a MessageDeduplicationId
and you enable
* ContentBasedDeduplication
for your topic, Amazon SNS uses a SHA-256
* hash to generate the MessageDeduplicationId
using the body of the
* message (but not the attributes of the message).
If you don't
* provide a MessageDeduplicationId
and the topic doesn't have
* ContentBasedDeduplication
set, the action fails with an error.
If the topic has a ContentBasedDeduplication
set,
* your MessageDeduplicationId
overrides the generated one.
When ContentBasedDeduplication
is in effect,
* messages with identical content sent within the deduplication interval are
* treated as duplicates and only one copy of the message is delivered.
If you send one message with ContentBasedDeduplication
* enabled, and then another message with a MessageDeduplicationId
* that is the same as the one generated for the first
* MessageDeduplicationId
, the two messages are treated as duplicates
* and only one copy of the message is delivered.
The
* MessageDeduplicationId
is available to the consumer of the message
* (this can be useful for troubleshooting delivery issues).
If a message is
* sent successfully but the acknowledgement is lost and the message is resent with
* the same MessageDeduplicationId
after the deduplication interval,
* Amazon SNS can't detect duplicate messages.
Amazon SNS continues to keep * track of the message deduplication ID even after the message is received and * deleted.
The length of MessageDeduplicationId
is
* 128 characters.
MessageDeduplicationId
can contain
* alphanumeric characters (a-z, A-Z, 0-9)
and punctuation
* (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~)
.
This parameter applies only to FIFO (first-in-first-out) topics.
The
* token used for deduplication of messages within a 5-minute minimum deduplication
* interval. If a message with a particular MessageDeduplicationId
is
* sent successfully, subsequent messages with the same
* MessageDeduplicationId
are accepted successfully but aren't
* delivered.
Every message must have a unique
* MessageDeduplicationId
.
You may provide a
* MessageDeduplicationId
explicitly.
If you aren't
* able to provide a MessageDeduplicationId
and you enable
* ContentBasedDeduplication
for your topic, Amazon SNS uses a SHA-256
* hash to generate the MessageDeduplicationId
using the body of the
* message (but not the attributes of the message).
If you don't
* provide a MessageDeduplicationId
and the topic doesn't have
* ContentBasedDeduplication
set, the action fails with an error.
If the topic has a ContentBasedDeduplication
set,
* your MessageDeduplicationId
overrides the generated one.
When ContentBasedDeduplication
is in effect,
* messages with identical content sent within the deduplication interval are
* treated as duplicates and only one copy of the message is delivered.
If you send one message with ContentBasedDeduplication
* enabled, and then another message with a MessageDeduplicationId
* that is the same as the one generated for the first
* MessageDeduplicationId
, the two messages are treated as duplicates
* and only one copy of the message is delivered.
The
* MessageDeduplicationId
is available to the consumer of the message
* (this can be useful for troubleshooting delivery issues).
If a message is
* sent successfully but the acknowledgement is lost and the message is resent with
* the same MessageDeduplicationId
after the deduplication interval,
* Amazon SNS can't detect duplicate messages.
Amazon SNS continues to keep * track of the message deduplication ID even after the message is received and * deleted.
The length of MessageDeduplicationId
is
* 128 characters.
MessageDeduplicationId
can contain
* alphanumeric characters (a-z, A-Z, 0-9)
and punctuation
* (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~)
.
This parameter applies only to FIFO (first-in-first-out) topics.
The
* token used for deduplication of messages within a 5-minute minimum deduplication
* interval. If a message with a particular MessageDeduplicationId
is
* sent successfully, subsequent messages with the same
* MessageDeduplicationId
are accepted successfully but aren't
* delivered.
Every message must have a unique
* MessageDeduplicationId
.
You may provide a
* MessageDeduplicationId
explicitly.
If you aren't
* able to provide a MessageDeduplicationId
and you enable
* ContentBasedDeduplication
for your topic, Amazon SNS uses a SHA-256
* hash to generate the MessageDeduplicationId
using the body of the
* message (but not the attributes of the message).
If you don't
* provide a MessageDeduplicationId
and the topic doesn't have
* ContentBasedDeduplication
set, the action fails with an error.
If the topic has a ContentBasedDeduplication
set,
* your MessageDeduplicationId
overrides the generated one.
When ContentBasedDeduplication
is in effect,
* messages with identical content sent within the deduplication interval are
* treated as duplicates and only one copy of the message is delivered.
If you send one message with ContentBasedDeduplication
* enabled, and then another message with a MessageDeduplicationId
* that is the same as the one generated for the first
* MessageDeduplicationId
, the two messages are treated as duplicates
* and only one copy of the message is delivered.
The
* MessageDeduplicationId
is available to the consumer of the message
* (this can be useful for troubleshooting delivery issues).
If a message is
* sent successfully but the acknowledgement is lost and the message is resent with
* the same MessageDeduplicationId
after the deduplication interval,
* Amazon SNS can't detect duplicate messages.
Amazon SNS continues to keep * track of the message deduplication ID even after the message is received and * deleted.
The length of MessageDeduplicationId
is
* 128 characters.
MessageDeduplicationId
can contain
* alphanumeric characters (a-z, A-Z, 0-9)
and punctuation
* (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~)
.
This parameter applies only to FIFO (first-in-first-out) topics.
The
* token used for deduplication of messages within a 5-minute minimum deduplication
* interval. If a message with a particular MessageDeduplicationId
is
* sent successfully, subsequent messages with the same
* MessageDeduplicationId
are accepted successfully but aren't
* delivered.
Every message must have a unique
* MessageDeduplicationId
.
You may provide a
* MessageDeduplicationId
explicitly.
If you aren't
* able to provide a MessageDeduplicationId
and you enable
* ContentBasedDeduplication
for your topic, Amazon SNS uses a SHA-256
* hash to generate the MessageDeduplicationId
using the body of the
* message (but not the attributes of the message).
If you don't
* provide a MessageDeduplicationId
and the topic doesn't have
* ContentBasedDeduplication
set, the action fails with an error.
If the topic has a ContentBasedDeduplication
set,
* your MessageDeduplicationId
overrides the generated one.
When ContentBasedDeduplication
is in effect,
* messages with identical content sent within the deduplication interval are
* treated as duplicates and only one copy of the message is delivered.
If you send one message with ContentBasedDeduplication
* enabled, and then another message with a MessageDeduplicationId
* that is the same as the one generated for the first
* MessageDeduplicationId
, the two messages are treated as duplicates
* and only one copy of the message is delivered.
The
* MessageDeduplicationId
is available to the consumer of the message
* (this can be useful for troubleshooting delivery issues).
If a message is
* sent successfully but the acknowledgement is lost and the message is resent with
* the same MessageDeduplicationId
after the deduplication interval,
* Amazon SNS can't detect duplicate messages.
Amazon SNS continues to keep * track of the message deduplication ID even after the message is received and * deleted.
The length of MessageDeduplicationId
is
* 128 characters.
MessageDeduplicationId
can contain
* alphanumeric characters (a-z, A-Z, 0-9)
and punctuation
* (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~)
.
This parameter applies only to FIFO (first-in-first-out) topics.
The
* token used for deduplication of messages within a 5-minute minimum deduplication
* interval. If a message with a particular MessageDeduplicationId
is
* sent successfully, subsequent messages with the same
* MessageDeduplicationId
are accepted successfully but aren't
* delivered.
Every message must have a unique
* MessageDeduplicationId
.
You may provide a
* MessageDeduplicationId
explicitly.
If you aren't
* able to provide a MessageDeduplicationId
and you enable
* ContentBasedDeduplication
for your topic, Amazon SNS uses a SHA-256
* hash to generate the MessageDeduplicationId
using the body of the
* message (but not the attributes of the message).
If you don't
* provide a MessageDeduplicationId
and the topic doesn't have
* ContentBasedDeduplication
set, the action fails with an error.
If the topic has a ContentBasedDeduplication
set,
* your MessageDeduplicationId
overrides the generated one.
When ContentBasedDeduplication
is in effect,
* messages with identical content sent within the deduplication interval are
* treated as duplicates and only one copy of the message is delivered.
If you send one message with ContentBasedDeduplication
* enabled, and then another message with a MessageDeduplicationId
* that is the same as the one generated for the first
* MessageDeduplicationId
, the two messages are treated as duplicates
* and only one copy of the message is delivered.
The
* MessageDeduplicationId
is available to the consumer of the message
* (this can be useful for troubleshooting delivery issues).
If a message is
* sent successfully but the acknowledgement is lost and the message is resent with
* the same MessageDeduplicationId
after the deduplication interval,
* Amazon SNS can't detect duplicate messages.
Amazon SNS continues to keep * track of the message deduplication ID even after the message is received and * deleted.
The length of MessageDeduplicationId
is
* 128 characters.
MessageDeduplicationId
can contain
* alphanumeric characters (a-z, A-Z, 0-9)
and punctuation
* (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~)
.
This parameter applies only to FIFO (first-in-first-out) topics.
The
* tag that specifies that a message belongs to a specific message group. Messages
* that belong to the same message group are processed in a FIFO manner (however,
* messages in different message groups might be processed out of order). To
* interleave multiple ordered streams within a single topic, use
* MessageGroupId
values (for example, session data for multiple
* users). In this scenario, multiple consumers can process the topic, but the
* session data of each user is processed in a FIFO fashion.
You must
* associate a non-empty MessageGroupId
with a message. If you don't
* provide a MessageGroupId
, the action fails.
The length of
* MessageGroupId
is 128 characters.
* MessageGroupId
can contain alphanumeric characters (a-z, A-Z,
* 0-9)
and punctuation
* (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~)
.
* MessageGroupId
is required for FIFO topics. You can't use it for
* standard topics.
This parameter applies only to FIFO (first-in-first-out) topics.
The
* tag that specifies that a message belongs to a specific message group. Messages
* that belong to the same message group are processed in a FIFO manner (however,
* messages in different message groups might be processed out of order). To
* interleave multiple ordered streams within a single topic, use
* MessageGroupId
values (for example, session data for multiple
* users). In this scenario, multiple consumers can process the topic, but the
* session data of each user is processed in a FIFO fashion.
You must
* associate a non-empty MessageGroupId
with a message. If you don't
* provide a MessageGroupId
, the action fails.
The length of
* MessageGroupId
is 128 characters.
* MessageGroupId
can contain alphanumeric characters (a-z, A-Z,
* 0-9)
and punctuation
* (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~)
.
* MessageGroupId
is required for FIFO topics. You can't use it for
* standard topics.
This parameter applies only to FIFO (first-in-first-out) topics.
The
* tag that specifies that a message belongs to a specific message group. Messages
* that belong to the same message group are processed in a FIFO manner (however,
* messages in different message groups might be processed out of order). To
* interleave multiple ordered streams within a single topic, use
* MessageGroupId
values (for example, session data for multiple
* users). In this scenario, multiple consumers can process the topic, but the
* session data of each user is processed in a FIFO fashion.
You must
* associate a non-empty MessageGroupId
with a message. If you don't
* provide a MessageGroupId
, the action fails.
The length of
* MessageGroupId
is 128 characters.
* MessageGroupId
can contain alphanumeric characters (a-z, A-Z,
* 0-9)
and punctuation
* (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~)
.
* MessageGroupId
is required for FIFO topics. You can't use it for
* standard topics.
This parameter applies only to FIFO (first-in-first-out) topics.
The
* tag that specifies that a message belongs to a specific message group. Messages
* that belong to the same message group are processed in a FIFO manner (however,
* messages in different message groups might be processed out of order). To
* interleave multiple ordered streams within a single topic, use
* MessageGroupId
values (for example, session data for multiple
* users). In this scenario, multiple consumers can process the topic, but the
* session data of each user is processed in a FIFO fashion.
You must
* associate a non-empty MessageGroupId
with a message. If you don't
* provide a MessageGroupId
, the action fails.
The length of
* MessageGroupId
is 128 characters.
* MessageGroupId
can contain alphanumeric characters (a-z, A-Z,
* 0-9)
and punctuation
* (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~)
.
* MessageGroupId
is required for FIFO topics. You can't use it for
* standard topics.
This parameter applies only to FIFO (first-in-first-out) topics.
The
* tag that specifies that a message belongs to a specific message group. Messages
* that belong to the same message group are processed in a FIFO manner (however,
* messages in different message groups might be processed out of order). To
* interleave multiple ordered streams within a single topic, use
* MessageGroupId
values (for example, session data for multiple
* users). In this scenario, multiple consumers can process the topic, but the
* session data of each user is processed in a FIFO fashion.
You must
* associate a non-empty MessageGroupId
with a message. If you don't
* provide a MessageGroupId
, the action fails.
The length of
* MessageGroupId
is 128 characters.
* MessageGroupId
can contain alphanumeric characters (a-z, A-Z,
* 0-9)
and punctuation
* (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~)
.
* MessageGroupId
is required for FIFO topics. You can't use it for
* standard topics.
This parameter applies only to FIFO (first-in-first-out) topics.
The
* tag that specifies that a message belongs to a specific message group. Messages
* that belong to the same message group are processed in a FIFO manner (however,
* messages in different message groups might be processed out of order). To
* interleave multiple ordered streams within a single topic, use
* MessageGroupId
values (for example, session data for multiple
* users). In this scenario, multiple consumers can process the topic, but the
* session data of each user is processed in a FIFO fashion.
You must
* associate a non-empty MessageGroupId
with a message. If you don't
* provide a MessageGroupId
, the action fails.
The length of
* MessageGroupId
is 128 characters.
* MessageGroupId
can contain alphanumeric characters (a-z, A-Z,
* 0-9)
and punctuation
* (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~)
.
* MessageGroupId
is required for FIFO topics. You can't use it for
* standard topics.
This parameter applies only to FIFO (first-in-first-out) topics.
The
* tag that specifies that a message belongs to a specific message group. Messages
* that belong to the same message group are processed in a FIFO manner (however,
* messages in different message groups might be processed out of order). To
* interleave multiple ordered streams within a single topic, use
* MessageGroupId
values (for example, session data for multiple
* users). In this scenario, multiple consumers can process the topic, but the
* session data of each user is processed in a FIFO fashion.
You must
* associate a non-empty MessageGroupId
with a message. If you don't
* provide a MessageGroupId
, the action fails.
The length of
* MessageGroupId
is 128 characters.
* MessageGroupId
can contain alphanumeric characters (a-z, A-Z,
* 0-9)
and punctuation
* (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~)
.
* MessageGroupId
is required for FIFO topics. You can't use it for
* standard topics.
This parameter applies only to FIFO (first-in-first-out) topics.
The
* tag that specifies that a message belongs to a specific message group. Messages
* that belong to the same message group are processed in a FIFO manner (however,
* messages in different message groups might be processed out of order). To
* interleave multiple ordered streams within a single topic, use
* MessageGroupId
values (for example, session data for multiple
* users). In this scenario, multiple consumers can process the topic, but the
* session data of each user is processed in a FIFO fashion.
You must
* associate a non-empty MessageGroupId
with a message. If you don't
* provide a MessageGroupId
, the action fails.
The length of
* MessageGroupId
is 128 characters.
* MessageGroupId
can contain alphanumeric characters (a-z, A-Z,
* 0-9)
and punctuation
* (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~)
.
* MessageGroupId
is required for FIFO topics. You can't use it for
* standard topics.