Amazon Simple Email Service

2024/09/27 - Amazon Simple Email Service - 3 updated api methods

Changes  This release adds support for engagement tracking over Https using custom domains.

CreateConfigurationSet (updated) Link ¶
Changes (request)
{'TrackingOptions': {'HttpsPolicy': 'REQUIRE | REQUIRE_OPEN_ONLY | OPTIONAL'}}

Create a configuration set. Configuration sets are groups of rules that you can apply to the emails that you send. You apply a configuration set to an email by specifying the name of the configuration set when you call the Amazon SES API v2. When you apply a configuration set to an email, all of the rules in that configuration set are applied to the email.

See also: AWS API Documentation

Request Syntax

client.create_configuration_set(
    ConfigurationSetName='string',
    TrackingOptions={
        'CustomRedirectDomain': 'string',
        'HttpsPolicy': 'REQUIRE'|'REQUIRE_OPEN_ONLY'|'OPTIONAL'
    },
    DeliveryOptions={
        'TlsPolicy': 'REQUIRE'|'OPTIONAL',
        'SendingPoolName': 'string'
    },
    ReputationOptions={
        'ReputationMetricsEnabled': True|False,
        'LastFreshStart': datetime(2015, 1, 1)
    },
    SendingOptions={
        'SendingEnabled': True|False
    },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    SuppressionOptions={
        'SuppressedReasons': [
            'BOUNCE'|'COMPLAINT',
        ]
    },
    VdmOptions={
        'DashboardOptions': {
            'EngagementMetrics': 'ENABLED'|'DISABLED'
        },
        'GuardianOptions': {
            'OptimizedSharedDelivery': 'ENABLED'|'DISABLED'
        }
    }
)
type ConfigurationSetName

string

param ConfigurationSetName

[REQUIRED]

The name of the configuration set. The name can contain up to 64 alphanumeric characters, including letters, numbers, hyphens (-) and underscores (_) only.

type TrackingOptions

dict

param TrackingOptions

An object that defines the open and click tracking options for emails that you send using the configuration set.

  • CustomRedirectDomain (string) -- [REQUIRED]

    The domain to use for tracking open and click events.

  • HttpsPolicy (string) --

    The https policy to use for tracking open and click events.

type DeliveryOptions

dict

param DeliveryOptions

An object that defines the dedicated IP pool that is used to send emails that you send using the configuration set.

  • TlsPolicy (string) --

    Specifies whether messages that use the configuration set are required to use Transport Layer Security (TLS). If the value is Require , messages are only delivered if a TLS connection can be established. If the value is Optional , messages can be delivered in plain text if a TLS connection can't be established.

  • SendingPoolName (string) --

    The name of the dedicated IP pool to associate with the configuration set.

type ReputationOptions

dict

param ReputationOptions

An object that defines whether or not Amazon SES collects reputation metrics for the emails that you send that use the configuration set.

  • ReputationMetricsEnabled (boolean) --

    If true , tracking of reputation metrics is enabled for the configuration set. If false , tracking of reputation metrics is disabled for the configuration set.

  • LastFreshStart (datetime) --

    The date and time (in Unix time) when the reputation metrics were last given a fresh start. When your account is given a fresh start, your reputation metrics are calculated starting from the date of the fresh start.

type SendingOptions

dict

param SendingOptions

An object that defines whether or not Amazon SES can send email that you send using the configuration set.

  • SendingEnabled (boolean) --

    If true , email sending is enabled for the configuration set. If false , email sending is disabled for the configuration set.

type Tags

list

param Tags

An array of objects that define the tags (keys and values) to associate with the configuration set.

  • (dict) --

    An object that defines the tags that are associated with a resource. A tag is a label that you optionally define and associate with a resource. Tags can help you categorize and manage resources in different ways, such as by purpose, owner, environment, or other criteria. A resource can have as many as 50 tags.

    Each tag consists of a required tag key and an associated tag value , both of which you define. A tag key is a general label that acts as a category for a more specific tag value. A tag value acts as a descriptor within a tag key. A tag key can contain as many as 128 characters. A tag value can contain as many as 256 characters. The characters can be Unicode letters, digits, white space, or one of the following symbols: _ . : / = + -. The following additional restrictions apply to tags:

    • Tag keys and values are case sensitive.

    • For each associated resource, each tag key must be unique and it can have only one value.

    • The aws: prefix is reserved for use by Amazon Web Services; you can’t use it in any tag keys or values that you define. In addition, you can't edit or remove tag keys or values that use this prefix. Tags that use this prefix don’t count against the limit of 50 tags per resource.

    • You can associate tags with public or shared resources, but the tags are available only for your Amazon Web Services account, not any other accounts that share the resource. In addition, the tags are available only for resources that are located in the specified Amazon Web Services Region for your Amazon Web Services account.

    • Key (string) -- [REQUIRED]

      One part of a key-value pair that defines a tag. The maximum length of a tag key is 128 characters. The minimum length is 1 character.

    • Value (string) -- [REQUIRED]

      The optional part of a key-value pair that defines a tag. The maximum length of a tag value is 256 characters. The minimum length is 0 characters. If you don't want a resource to have a specific tag value, don't specify a value for this parameter. If you don't specify a value, Amazon SES sets the value to an empty string.

type SuppressionOptions

dict

param SuppressionOptions

An object that contains information about the suppression list preferences for your account.

  • SuppressedReasons (list) --

    A list that contains the reasons that email addresses are automatically added to the suppression list for your account. This list can contain any or all of the following:

    • COMPLAINT – Amazon SES adds an email address to the suppression list for your account when a message sent to that address results in a complaint.

    • BOUNCE – Amazon SES adds an email address to the suppression list for your account when a message sent to that address results in a hard bounce.

    • (string) --

      The reason that the address was added to the suppression list for your account. The value can be one of the following:

      • COMPLAINT – Amazon SES added an email address to the suppression list for your account because a message sent to that address results in a complaint.

      • BOUNCE – Amazon SES added an email address to the suppression list for your account because a message sent to that address results in a hard bounce.

type VdmOptions

dict

param VdmOptions

An object that defines the VDM options for emails that you send using the configuration set.

  • DashboardOptions (dict) --

    Specifies additional settings for your VDM configuration as applicable to the Dashboard.

    • EngagementMetrics (string) --

      Specifies the status of your VDM engagement metrics collection. Can be one of the following:

      • ENABLED – Amazon SES enables engagement metrics for the configuration set.

      • DISABLED – Amazon SES disables engagement metrics for the configuration set.

  • GuardianOptions (dict) --

    Specifies additional settings for your VDM configuration as applicable to the Guardian.

    • OptimizedSharedDelivery (string) --

      Specifies the status of your VDM optimized shared delivery. Can be one of the following:

      • ENABLED – Amazon SES enables optimized shared delivery for the configuration set.

      • DISABLED – Amazon SES disables optimized shared delivery for the configuration set.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

    An HTTP 200 response if the request succeeds, or an error message if the request fails.

GetConfigurationSet (updated) Link ¶
Changes (response)
{'TrackingOptions': {'HttpsPolicy': 'REQUIRE | REQUIRE_OPEN_ONLY | OPTIONAL'}}

Get information about an existing configuration set, including the dedicated IP pool that it's associated with, whether or not it's enabled for sending email, and more.

Configuration sets are groups of rules that you can apply to the emails you send. You apply a configuration set to an email by including a reference to the configuration set in the headers of the email. When you apply a configuration set to an email, all of the rules in that configuration set are applied to the email.

See also: AWS API Documentation

Request Syntax

client.get_configuration_set(
    ConfigurationSetName='string'
)
type ConfigurationSetName

string

param ConfigurationSetName

[REQUIRED]

The name of the configuration set.

rtype

dict

returns

Response Syntax

{
    'ConfigurationSetName': 'string',
    'TrackingOptions': {
        'CustomRedirectDomain': 'string',
        'HttpsPolicy': 'REQUIRE'|'REQUIRE_OPEN_ONLY'|'OPTIONAL'
    },
    'DeliveryOptions': {
        'TlsPolicy': 'REQUIRE'|'OPTIONAL',
        'SendingPoolName': 'string'
    },
    'ReputationOptions': {
        'ReputationMetricsEnabled': True|False,
        'LastFreshStart': datetime(2015, 1, 1)
    },
    'SendingOptions': {
        'SendingEnabled': True|False
    },
    'Tags': [
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    'SuppressionOptions': {
        'SuppressedReasons': [
            'BOUNCE'|'COMPLAINT',
        ]
    },
    'VdmOptions': {
        'DashboardOptions': {
            'EngagementMetrics': 'ENABLED'|'DISABLED'
        },
        'GuardianOptions': {
            'OptimizedSharedDelivery': 'ENABLED'|'DISABLED'
        }
    }
}

Response Structure

  • (dict) --

    Information about a configuration set.

    • ConfigurationSetName (string) --

      The name of the configuration set.

    • TrackingOptions (dict) --

      An object that defines the open and click tracking options for emails that you send using the configuration set.

      • CustomRedirectDomain (string) --

        The domain to use for tracking open and click events.

      • HttpsPolicy (string) --

        The https policy to use for tracking open and click events.

    • DeliveryOptions (dict) --

      An object that defines the dedicated IP pool that is used to send emails that you send using the configuration set.

      • TlsPolicy (string) --

        Specifies whether messages that use the configuration set are required to use Transport Layer Security (TLS). If the value is Require , messages are only delivered if a TLS connection can be established. If the value is Optional , messages can be delivered in plain text if a TLS connection can't be established.

      • SendingPoolName (string) --

        The name of the dedicated IP pool to associate with the configuration set.

    • ReputationOptions (dict) --

      An object that defines whether or not Amazon SES collects reputation metrics for the emails that you send that use the configuration set.

      • ReputationMetricsEnabled (boolean) --

        If true , tracking of reputation metrics is enabled for the configuration set. If false , tracking of reputation metrics is disabled for the configuration set.

      • LastFreshStart (datetime) --

        The date and time (in Unix time) when the reputation metrics were last given a fresh start. When your account is given a fresh start, your reputation metrics are calculated starting from the date of the fresh start.

    • SendingOptions (dict) --

      An object that defines whether or not Amazon SES can send email that you send using the configuration set.

      • SendingEnabled (boolean) --

        If true , email sending is enabled for the configuration set. If false , email sending is disabled for the configuration set.

    • Tags (list) --

      An array of objects that define the tags (keys and values) that are associated with the configuration set.

      • (dict) --

        An object that defines the tags that are associated with a resource. A tag is a label that you optionally define and associate with a resource. Tags can help you categorize and manage resources in different ways, such as by purpose, owner, environment, or other criteria. A resource can have as many as 50 tags.

        Each tag consists of a required tag key and an associated tag value , both of which you define. A tag key is a general label that acts as a category for a more specific tag value. A tag value acts as a descriptor within a tag key. A tag key can contain as many as 128 characters. A tag value can contain as many as 256 characters. The characters can be Unicode letters, digits, white space, or one of the following symbols: _ . : / = + -. The following additional restrictions apply to tags:

        • Tag keys and values are case sensitive.

        • For each associated resource, each tag key must be unique and it can have only one value.

        • The aws: prefix is reserved for use by Amazon Web Services; you can’t use it in any tag keys or values that you define. In addition, you can't edit or remove tag keys or values that use this prefix. Tags that use this prefix don’t count against the limit of 50 tags per resource.

        • You can associate tags with public or shared resources, but the tags are available only for your Amazon Web Services account, not any other accounts that share the resource. In addition, the tags are available only for resources that are located in the specified Amazon Web Services Region for your Amazon Web Services account.

        • Key (string) --

          One part of a key-value pair that defines a tag. The maximum length of a tag key is 128 characters. The minimum length is 1 character.

        • Value (string) --

          The optional part of a key-value pair that defines a tag. The maximum length of a tag value is 256 characters. The minimum length is 0 characters. If you don't want a resource to have a specific tag value, don't specify a value for this parameter. If you don't specify a value, Amazon SES sets the value to an empty string.

    • SuppressionOptions (dict) --

      An object that contains information about the suppression list preferences for your account.

      • SuppressedReasons (list) --

        A list that contains the reasons that email addresses are automatically added to the suppression list for your account. This list can contain any or all of the following:

        • COMPLAINT – Amazon SES adds an email address to the suppression list for your account when a message sent to that address results in a complaint.

        • BOUNCE – Amazon SES adds an email address to the suppression list for your account when a message sent to that address results in a hard bounce.

        • (string) --

          The reason that the address was added to the suppression list for your account. The value can be one of the following:

          • COMPLAINT – Amazon SES added an email address to the suppression list for your account because a message sent to that address results in a complaint.

          • BOUNCE – Amazon SES added an email address to the suppression list for your account because a message sent to that address results in a hard bounce.

    • VdmOptions (dict) --

      An object that contains information about the VDM preferences for your configuration set.

      • DashboardOptions (dict) --

        Specifies additional settings for your VDM configuration as applicable to the Dashboard.

        • EngagementMetrics (string) --

          Specifies the status of your VDM engagement metrics collection. Can be one of the following:

          • ENABLED – Amazon SES enables engagement metrics for the configuration set.

          • DISABLED – Amazon SES disables engagement metrics for the configuration set.

      • GuardianOptions (dict) --

        Specifies additional settings for your VDM configuration as applicable to the Guardian.

        • OptimizedSharedDelivery (string) --

          Specifies the status of your VDM optimized shared delivery. Can be one of the following:

          • ENABLED – Amazon SES enables optimized shared delivery for the configuration set.

          • DISABLED – Amazon SES disables optimized shared delivery for the configuration set.

PutConfigurationSetTrackingOptions (updated) Link ¶
Changes (request)
{'HttpsPolicy': 'REQUIRE | REQUIRE_OPEN_ONLY | OPTIONAL'}

Specify a custom domain to use for open and click tracking elements in email that you send.

See also: AWS API Documentation

Request Syntax

client.put_configuration_set_tracking_options(
    ConfigurationSetName='string',
    CustomRedirectDomain='string',
    HttpsPolicy='REQUIRE'|'REQUIRE_OPEN_ONLY'|'OPTIONAL'
)
type ConfigurationSetName

string

param ConfigurationSetName

[REQUIRED]

The name of the configuration set.

type CustomRedirectDomain

string

param CustomRedirectDomain

The domain to use to track open and click events.

type HttpsPolicy

string

param HttpsPolicy

The https policy to use for tracking open and click events. If the value is OPTIONAL or HttpsPolicy is not specified, the open trackers use HTTP and click tracker use the original protocol of the link. If the value is REQUIRE, both open and click tracker uses HTTPS and if the value is REQUIRE_OPEN_ONLY open tracker uses HTTPS and link tracker is same as original protocol of the link.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

    An HTTP 200 response if the request succeeds, or an error message if the request fails.