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 Amazon Web Services managed customer master key (CMK) for Amazon SNS or a custom CMK. For more information, see [Key Terms]. For more examples, see [KeyId] in the *Key Management Service API Reference*.

^

The following attributes apply only to [FIFO topics]:

  • ‘FifoTopic` – When this is set to `true`, a FIFO topic is created.

  • ‘ContentBasedDeduplication` – Enables content-based deduplication for FIFO topics.

    • By default, ‘ContentBasedDeduplication` is set to `false`. If you create a FIFO topic and this attribute is `false`, you must specify a value for the `MessageDeduplicationId` parameter for the [Publish] action.

    • When you set ‘ContentBasedDeduplication` to `true`, Amazon SNS uses a SHA-256 hash to generate the `MessageDeduplicationId` using the body of the message (but not the attributes of the message).

      (Optional) To override the generated value, you can specify a value for the ‘MessageDeduplicationId` parameter for the `Publish` action.

[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 [4]: docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html [5]: docs.aws.amazon.com/sns/latest/api/API_Publish.html

Returns:

  • (Hash<String,String>)


428
429
430
431
432
433
434
# File 'lib/aws-sdk-sns/types.rb', line 428

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)


428
429
430
431
432
433
434
# File 'lib/aws-sdk-sns/types.rb', line 428

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:



428
429
430
431
432
433
434
# File 'lib/aws-sdk-sns/types.rb', line 428

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