pub struct Client { /* private fields */ }
Expand description

Client for Amazon Simple Email Service

Client for invoking operations on Amazon Simple Email Service. Each operation on Amazon Simple Email Service is a method on this this struct. .send() MUST be invoked on the generated operations to dispatch the request to the service.

Examples

Constructing a client and invoking an operation

    // create a shared configuration. This can be used & shared between multiple service clients.
    let shared_config = aws_config::load_from_env().await;
    let client = aws_sdk_ses::Client::new(&shared_config);
    // invoke an operation
    /* let rsp = client
        .<operation_name>().
        .<param>("some value")
        .send().await; */

Constructing a client with custom configuration

use aws_config::RetryConfig;
let shared_config = aws_config::load_from_env().await;
let config = aws_sdk_ses::config::Builder::from(&shared_config)
  .retry_config(RetryConfig::disabled())
  .build();
let client = aws_sdk_ses::Client::from_conf(config);

Implementations

Creates a client with the given service configuration.

Returns the client’s configuration.

Constructs a fluent builder for the CloneReceiptRuleSet operation.

Constructs a fluent builder for the CreateConfigurationSet operation.

Constructs a fluent builder for the CreateConfigurationSetEventDestination operation.

Constructs a fluent builder for the CreateConfigurationSetTrackingOptions operation.

Constructs a fluent builder for the CreateCustomVerificationEmailTemplate operation.

Constructs a fluent builder for the CreateReceiptFilter operation.

Constructs a fluent builder for the CreateReceiptRule operation.

Constructs a fluent builder for the CreateReceiptRuleSet operation.

Constructs a fluent builder for the CreateTemplate operation.

Constructs a fluent builder for the DeleteConfigurationSet operation.

Constructs a fluent builder for the DeleteConfigurationSetEventDestination operation.

Constructs a fluent builder for the DeleteConfigurationSetTrackingOptions operation.

Constructs a fluent builder for the DeleteCustomVerificationEmailTemplate operation.

Constructs a fluent builder for the DeleteIdentity operation.

Constructs a fluent builder for the DeleteIdentityPolicy operation.

Constructs a fluent builder for the DeleteReceiptFilter operation.

Constructs a fluent builder for the DeleteReceiptRule operation.

Constructs a fluent builder for the DeleteReceiptRuleSet operation.

Constructs a fluent builder for the DeleteTemplate operation.

Constructs a fluent builder for the DeleteVerifiedEmailAddress operation.

Constructs a fluent builder for the DescribeActiveReceiptRuleSet operation.

Constructs a fluent builder for the DescribeConfigurationSet operation.

Constructs a fluent builder for the DescribeReceiptRule operation.

Constructs a fluent builder for the DescribeReceiptRuleSet operation.

Constructs a fluent builder for the GetAccountSendingEnabled operation.

Constructs a fluent builder for the GetCustomVerificationEmailTemplate operation.

Constructs a fluent builder for the GetIdentityDkimAttributes operation.

Constructs a fluent builder for the GetIdentityMailFromDomainAttributes operation.

Constructs a fluent builder for the GetIdentityNotificationAttributes operation.

Constructs a fluent builder for the GetIdentityPolicies operation.

Constructs a fluent builder for the GetIdentityVerificationAttributes operation.

Constructs a fluent builder for the GetSendQuota operation.

  • The fluent builder takes no input, just send it.
  • On success, responds with GetSendQuotaOutput with field(s):
    • max24_hour_send(f64):

      The maximum number of emails the user is allowed to send in a 24-hour interval. A value of -1 signifies an unlimited quota.

    • max_send_rate(f64):

      The maximum number of emails that Amazon SES can accept from the user’s account per second.

      The rate at which Amazon SES accepts the user’s messages might be less than the maximum send rate.

    • sent_last24_hours(f64):

      The number of emails sent during the previous 24 hours.

  • On failure, responds with SdkError<GetSendQuotaError>

Constructs a fluent builder for the GetSendStatistics operation.

Constructs a fluent builder for the GetTemplate operation.

Constructs a fluent builder for the ListConfigurationSets operation.

Constructs a fluent builder for the ListCustomVerificationEmailTemplates operation. This operation supports pagination; See into_paginator().

Constructs a fluent builder for the ListIdentities operation. This operation supports pagination; See into_paginator().

Constructs a fluent builder for the ListIdentityPolicies operation.

Constructs a fluent builder for the ListReceiptFilters operation.

Constructs a fluent builder for the ListReceiptRuleSets operation.

Constructs a fluent builder for the ListTemplates operation.

Constructs a fluent builder for the ListVerifiedEmailAddresses operation.

Constructs a fluent builder for the PutConfigurationSetDeliveryOptions operation.

Constructs a fluent builder for the PutIdentityPolicy operation.

Constructs a fluent builder for the ReorderReceiptRuleSet operation.

Constructs a fluent builder for the SendBounce operation.

Constructs a fluent builder for the SendBulkTemplatedEmail operation.

Constructs a fluent builder for the SendCustomVerificationEmail operation.

Constructs a fluent builder for the SendEmail operation.

  • The fluent builder is configurable:
    • source(impl Into<String>) / set_source(Option<String>):

      The email address that is sending the email. This email address must be either individually verified with Amazon SES, or from a domain that has been verified with Amazon SES. For information about verifying identities, see the Amazon SES Developer Guide.

      If you are sending on behalf of another user and have been permitted to do so by a sending authorization policy, then you must also specify the SourceArn parameter. For more information about sending authorization, see the Amazon SES Developer Guide.

      Amazon SES does not support the SMTPUTF8 extension, as described in RFC6531. For this reason, the local part of a source email address (the part of the email address that precedes the @ sign) may only contain 7-bit ASCII characters. If the domain part of an address (the part after the @ sign) contains non-ASCII characters, they must be encoded using Punycode, as described in RFC3492. The sender name (also known as the friendly name) may contain non-ASCII characters. These characters must be encoded using MIME encoded-word syntax, as described in RFC 2047. MIME encoded-word syntax uses the following form: =?charset?encoding?encoded-text?=.

    • destination(Destination) / set_destination(Option<Destination>):

      The destination for this email, composed of To:, CC:, and BCC: fields.

    • message(Message) / set_message(Option<Message>):

      The message to be sent.

    • reply_to_addresses(Vec<String>) / set_reply_to_addresses(Option<Vec<String>>):

      The reply-to email address(es) for the message. If the recipient replies to the message, each reply-to address will receive the reply.

    • return_path(impl Into<String>) / set_return_path(Option<String>):

      The email address that bounces and complaints will be forwarded to when feedback forwarding is enabled. If the message cannot be delivered to the recipient, then an error message will be returned from the recipient’s ISP; this message will then be forwarded to the email address specified by the ReturnPath parameter. The ReturnPath parameter is never overwritten. This email address must be either individually verified with Amazon SES, or from a domain that has been verified with Amazon SES.

    • source_arn(impl Into<String>) / set_source_arn(Option<String>):

      This parameter is used only for sending authorization. It is the ARN of the identity that is associated with the sending authorization policy that permits you to send for the email address specified in the Source parameter.

      For example, if the owner of example.com (which has ARN arn:aws:ses:us-east-1:123456789012:identity/example.com) attaches a policy to it that authorizes you to send from user@example.com, then you would specify the SourceArn to be arn:aws:ses:us-east-1:123456789012:identity/example.com, and the Source to be user@example.com.

      For more information about sending authorization, see the Amazon SES Developer Guide.

    • return_path_arn(impl Into<String>) / set_return_path_arn(Option<String>):

      This parameter is used only for sending authorization. It is the ARN of the identity that is associated with the sending authorization policy that permits you to use the email address specified in the ReturnPath parameter.

      For example, if the owner of example.com (which has ARN arn:aws:ses:us-east-1:123456789012:identity/example.com) attaches a policy to it that authorizes you to use feedback@example.com, then you would specify the ReturnPathArn to be arn:aws:ses:us-east-1:123456789012:identity/example.com, and the ReturnPath to be feedback@example.com.

      For more information about sending authorization, see the Amazon SES Developer Guide.

    • tags(Vec<MessageTag>) / set_tags(Option<Vec<MessageTag>>):

      A list of tags, in the form of name/value pairs, to apply to an email that you send using SendEmail. Tags correspond to characteristics of the email that you define, so that you can publish email sending events.

    • configuration_set_name(impl Into<String>) / set_configuration_set_name(Option<String>):

      The name of the configuration set to use when you send an email using SendEmail.

  • On success, responds with SendEmailOutput with field(s):
  • On failure, responds with SdkError<SendEmailError>

Constructs a fluent builder for the SendRawEmail operation.

  • The fluent builder is configurable:
    • source(impl Into<String>) / set_source(Option<String>):

      The identity’s email address. If you do not provide a value for this parameter, you must specify a “From” address in the raw text of the message. (You can also specify both.)

      Amazon SES does not support the SMTPUTF8 extension, as described inRFC6531. For this reason, the local part of a source email address (the part of the email address that precedes the @ sign) may only contain 7-bit ASCII characters. If the domain part of an address (the part after the @ sign) contains non-ASCII characters, they must be encoded using Punycode, as described in RFC3492. The sender name (also known as the friendly name) may contain non-ASCII characters. These characters must be encoded using MIME encoded-word syntax, as described in RFC 2047. MIME encoded-word syntax uses the following form: =?charset?encoding?encoded-text?=.

      If you specify the Source parameter and have feedback forwarding enabled, then bounces and complaints will be sent to this email address. This takes precedence over any Return-Path header that you might include in the raw text of the message.

    • destinations(Vec<String>) / set_destinations(Option<Vec<String>>):

      A list of destinations for the message, consisting of To:, CC:, and BCC: addresses.

    • raw_message(RawMessage) / set_raw_message(Option<RawMessage>):

      The raw email message itself. The message has to meet the following criteria:

      • The message has to contain a header and a body, separated by a blank line.

      • All of the required header fields must be present in the message.

      • Each part of a multipart MIME message must be formatted properly.

      • Attachments must be of a content type that Amazon SES supports. For a list on unsupported content types, see Unsupported Attachment Types in the Amazon SES Developer Guide.

      • The entire message must be base64-encoded.

      • If any of the MIME parts in your message contain content that is outside of the 7-bit ASCII character range, we highly recommend that you encode that content. For more information, see Sending Raw Email in the Amazon SES Developer Guide.

      • Per RFC 5321, the maximum length of each line of text, including the , must not exceed 1,000 characters.

    • from_arn(impl Into<String>) / set_from_arn(Option<String>):

      This parameter is used only for sending authorization. It is the ARN of the identity that is associated with the sending authorization policy that permits you to specify a particular “From” address in the header of the raw email.

      Instead of using this parameter, you can use the X-header X-SES-FROM-ARN in the raw message of the email. If you use both the FromArn parameter and the corresponding X-header, Amazon SES uses the value of the FromArn parameter.

      For information about when to use this parameter, see the description of SendRawEmail in this guide, or see the Amazon SES Developer Guide.

    • source_arn(impl Into<String>) / set_source_arn(Option<String>):

      This parameter is used only for sending authorization. It is the ARN of the identity that is associated with the sending authorization policy that permits you to send for the email address specified in the Source parameter.

      For example, if the owner of example.com (which has ARN arn:aws:ses:us-east-1:123456789012:identity/example.com) attaches a policy to it that authorizes you to send from user@example.com, then you would specify the SourceArn to be arn:aws:ses:us-east-1:123456789012:identity/example.com, and the Source to be user@example.com.

      Instead of using this parameter, you can use the X-header X-SES-SOURCE-ARN in the raw message of the email. If you use both the SourceArn parameter and the corresponding X-header, Amazon SES uses the value of the SourceArn parameter.

      For information about when to use this parameter, see the description of SendRawEmail in this guide, or see the Amazon SES Developer Guide.

    • return_path_arn(impl Into<String>) / set_return_path_arn(Option<String>):

      This parameter is used only for sending authorization. It is the ARN of the identity that is associated with the sending authorization policy that permits you to use the email address specified in the ReturnPath parameter.

      For example, if the owner of example.com (which has ARN arn:aws:ses:us-east-1:123456789012:identity/example.com) attaches a policy to it that authorizes you to use feedback@example.com, then you would specify the ReturnPathArn to be arn:aws:ses:us-east-1:123456789012:identity/example.com, and the ReturnPath to be feedback@example.com.

      Instead of using this parameter, you can use the X-header X-SES-RETURN-PATH-ARN in the raw message of the email. If you use both the ReturnPathArn parameter and the corresponding X-header, Amazon SES uses the value of the ReturnPathArn parameter.

      For information about when to use this parameter, see the description of SendRawEmail in this guide, or see the Amazon SES Developer Guide.

    • tags(Vec<MessageTag>) / set_tags(Option<Vec<MessageTag>>):

      A list of tags, in the form of name/value pairs, to apply to an email that you send using SendRawEmail. Tags correspond to characteristics of the email that you define, so that you can publish email sending events.

    • configuration_set_name(impl Into<String>) / set_configuration_set_name(Option<String>):

      The name of the configuration set to use when you send an email using SendRawEmail.

  • On success, responds with SendRawEmailOutput with field(s):
  • On failure, responds with SdkError<SendRawEmailError>

Constructs a fluent builder for the SendTemplatedEmail operation.

  • The fluent builder is configurable:
    • source(impl Into<String>) / set_source(Option<String>):

      The email address that is sending the email. This email address must be either individually verified with Amazon SES, or from a domain that has been verified with Amazon SES. For information about verifying identities, see the Amazon SES Developer Guide.

      If you are sending on behalf of another user and have been permitted to do so by a sending authorization policy, then you must also specify the SourceArn parameter. For more information about sending authorization, see the Amazon SES Developer Guide.

      Amazon SES does not support the SMTPUTF8 extension, as described in RFC6531. For this reason, the local part of a source email address (the part of the email address that precedes the @ sign) may only contain 7-bit ASCII characters. If the domain part of an address (the part after the @ sign) contains non-ASCII characters, they must be encoded using Punycode, as described in RFC3492. The sender name (also known as the friendly name) may contain non-ASCII characters. These characters must be encoded using MIME encoded-word syntax, as described inRFC 2047. MIME encoded-word syntax uses the following form: =?charset?encoding?encoded-text?=.

    • destination(Destination) / set_destination(Option<Destination>):

      The destination for this email, composed of To:, CC:, and BCC: fields. A Destination can include up to 50 recipients across these three fields.

    • reply_to_addresses(Vec<String>) / set_reply_to_addresses(Option<Vec<String>>):

      The reply-to email address(es) for the message. If the recipient replies to the message, each reply-to address will receive the reply.

    • return_path(impl Into<String>) / set_return_path(Option<String>):

      The email address that bounces and complaints will be forwarded to when feedback forwarding is enabled. If the message cannot be delivered to the recipient, then an error message will be returned from the recipient’s ISP; this message will then be forwarded to the email address specified by the ReturnPath parameter. The ReturnPath parameter is never overwritten. This email address must be either individually verified with Amazon SES, or from a domain that has been verified with Amazon SES.

    • source_arn(impl Into<String>) / set_source_arn(Option<String>):

      This parameter is used only for sending authorization. It is the ARN of the identity that is associated with the sending authorization policy that permits you to send for the email address specified in the Source parameter.

      For example, if the owner of example.com (which has ARN arn:aws:ses:us-east-1:123456789012:identity/example.com) attaches a policy to it that authorizes you to send from user@example.com, then you would specify the SourceArn to be arn:aws:ses:us-east-1:123456789012:identity/example.com, and the Source to be user@example.com.

      For more information about sending authorization, see the Amazon SES Developer Guide.

    • return_path_arn(impl Into<String>) / set_return_path_arn(Option<String>):

      This parameter is used only for sending authorization. It is the ARN of the identity that is associated with the sending authorization policy that permits you to use the email address specified in the ReturnPath parameter.

      For example, if the owner of example.com (which has ARN arn:aws:ses:us-east-1:123456789012:identity/example.com) attaches a policy to it that authorizes you to use feedback@example.com, then you would specify the ReturnPathArn to be arn:aws:ses:us-east-1:123456789012:identity/example.com, and the ReturnPath to be feedback@example.com.

      For more information about sending authorization, see the Amazon SES Developer Guide.

    • tags(Vec<MessageTag>) / set_tags(Option<Vec<MessageTag>>):

      A list of tags, in the form of name/value pairs, to apply to an email that you send using SendTemplatedEmail. Tags correspond to characteristics of the email that you define, so that you can publish email sending events.

    • configuration_set_name(impl Into<String>) / set_configuration_set_name(Option<String>):

      The name of the configuration set to use when you send an email using SendTemplatedEmail.

    • template(impl Into<String>) / set_template(Option<String>):

      The template to use when sending this email.

    • template_arn(impl Into<String>) / set_template_arn(Option<String>):

      The ARN of the template to use when sending this email.

    • template_data(impl Into<String>) / set_template_data(Option<String>):

      A list of replacement values to apply to the template. This parameter is a JSON object, typically consisting of key-value pairs in which the keys correspond to replacement tags in the email template.

  • On success, responds with SendTemplatedEmailOutput with field(s):
  • On failure, responds with SdkError<SendTemplatedEmailError>

Constructs a fluent builder for the SetActiveReceiptRuleSet operation.

Constructs a fluent builder for the SetIdentityDkimEnabled operation.

Constructs a fluent builder for the SetIdentityFeedbackForwardingEnabled operation.

Constructs a fluent builder for the SetIdentityHeadersInNotificationsEnabled operation.

Constructs a fluent builder for the SetIdentityMailFromDomain operation.

Constructs a fluent builder for the SetIdentityNotificationTopic operation.

Constructs a fluent builder for the SetReceiptRulePosition operation.

Constructs a fluent builder for the TestRenderTemplate operation.

Constructs a fluent builder for the UpdateAccountSendingEnabled operation.

Constructs a fluent builder for the UpdateConfigurationSetEventDestination operation.

Constructs a fluent builder for the UpdateConfigurationSetReputationMetricsEnabled operation.

Constructs a fluent builder for the UpdateConfigurationSetSendingEnabled operation.

Constructs a fluent builder for the UpdateConfigurationSetTrackingOptions operation.

Constructs a fluent builder for the UpdateCustomVerificationEmailTemplate operation.

Constructs a fluent builder for the UpdateReceiptRule operation.

Constructs a fluent builder for the UpdateTemplate operation.

Constructs a fluent builder for the VerifyDomainDkim operation.

  • The fluent builder is configurable:
  • On success, responds with VerifyDomainDkimOutput with field(s):
    • dkim_tokens(Option<Vec<String>>):

      A set of character strings that represent the domain’s identity. If the identity is an email address, the tokens represent the domain of that address.

      Using these tokens, you need to create DNS CNAME records that point to DKIM public keys that are hosted by Amazon SES. Amazon Web Services eventually detects that you’ve updated your DNS records. This detection process might take up to 72 hours. After successful detection, Amazon SES is able to DKIM-sign email originating from that domain. (This only applies to domain identities, not email address identities.)

      For more information about creating DNS records using DKIM tokens, see the Amazon SES Developer Guide.

  • On failure, responds with SdkError<VerifyDomainDkimError>

Constructs a fluent builder for the VerifyDomainIdentity operation.

  • The fluent builder is configurable:
  • On success, responds with VerifyDomainIdentityOutput with field(s):
    • verification_token(Option<String>):

      A TXT record that you must place in the DNS settings of the domain to complete domain verification with Amazon SES.

      As Amazon SES searches for the TXT record, the domain’s verification status is “Pending”. When Amazon SES detects the record, the domain’s verification status changes to “Success”. If Amazon SES is unable to detect the record within 72 hours, the domain’s verification status changes to “Failed.” In that case, if you still want to verify the domain, you must restart the verification process from the beginning.

  • On failure, responds with SdkError<VerifyDomainIdentityError>

Constructs a fluent builder for the VerifyEmailAddress operation.

Constructs a fluent builder for the VerifyEmailIdentity operation.

Creates a client with the given service config and connector override.

Creates a new client from a shared config.

Creates a new client from the service Config.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Converts to this type from the input type.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more