Class: Aws::SNS::Types::CreateTopicInput

Inherits:
Struct
  • Object
show all
Includes:
Aws::Structure
Defined in:
lib/aws-sdk-sns/types.rb

Overview

Note:

When making an API call, you may pass CreateTopicInput data as a hash:

{
  name: "topicName", # required
  attributes: {
    "attributeName" => "attributeValue",
  },
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
}

Input for CreateTopic action.

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#attributesHash<String,String>

A map of attributes with their corresponding values.

The following lists the names, descriptions, and values of the special request parameters that the ‘CreateTopic` action uses:

  • ‘DeliveryPolicy` – The policy that defines how Amazon SNS retries failed deliveries to HTTP/S endpoints.

  • ‘DisplayName` – The display name to use for a topic with SMS subscriptions.

  • ‘FifoTopic` – Set to true to create a FIFO topic.

  • ‘Policy` – The policy that defines who can access your topic. By default, only the topic owner can publish or subscribe to the topic.

The following attribute applies only to [server-side-encryption]:

  • ‘KmsMasterKeyId` – The ID of an AWS-managed customer master key (CMK) for Amazon SNS or a custom CMK. For more information, see

    Key Terms]. For more examples, see [KeyId][3

    in the *AWS Key

    Management Service API Reference*.

^

The following attribute applies only to FIFO topics:

  • ‘ContentBasedDeduplication` – Enables content-based deduplication. Amazon SNS uses a SHA-256 hash to generate the `MessageDeduplicationId` using the body of the message (but not the attributes of the message).

  • 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 the queue has ‘ContentBasedDeduplication` set, your `MessageDeduplicationId` overrides the generated one.

[1]: docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html [2]: docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms [3]: docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters

Returns:

  • (Hash<String,String>)


388
389
390
391
392
393
394
# File 'lib/aws-sdk-sns/types.rb', line 388

class CreateTopicInput < Struct.new(
  :name,
  :attributes,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end

#nameString

The name of the topic you want to create.

Constraints: Topic names must be made up of only uppercase and lowercase ASCII letters, numbers, underscores, and hyphens, and must be between 1 and 256 characters long.

For a FIFO (first-in-first-out) topic, the name must end with the ‘.fifo` suffix.

Returns:

  • (String)


388
389
390
391
392
393
394
# File 'lib/aws-sdk-sns/types.rb', line 388

class CreateTopicInput < Struct.new(
  :name,
  :attributes,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end

#tagsArray<Types::Tag>

The list of tags to add to a new topic.

<note markdown=“1”> To be able to tag a topic on creation, you must have the ‘sns:CreateTopic` and `sns:TagResource` permissions.

</note>

Returns:



388
389
390
391
392
393
394
# File 'lib/aws-sdk-sns/types.rb', line 388

class CreateTopicInput < Struct.new(
  :name,
  :attributes,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end