// ================================================================= // // * WARNING * // // This file is generated! // // Changes made to this file will be overwritten. If changes are // required to the generated code, the service_crategen project // must be updated to generate the changes. // // ================================================================= use std::error::Error; use std::fmt; use async_trait::async_trait; use rusoto_core::credential::ProvideAwsCredentials; use rusoto_core::region; use rusoto_core::request::{BufferedHttpResponse, DispatchSignedRequest}; use rusoto_core::{Client, RusotoError}; use rusoto_core::param::{Params, ServiceParams}; use rusoto_core::proto; use rusoto_core::signature::SignedRequest; #[allow(unused_imports)] use serde::{Deserialize, Serialize}; use serde_json; ///

An object that contains information about a blacklisting event that impacts one of the dedicated IP addresses that is associated with your account.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct BlacklistEntry { ///

Additional information about the blacklisting event, as provided by the blacklist maintainer.

#[serde(rename = "Description")] #[serde(skip_serializing_if = "Option::is_none")] pub description: Option, ///

The time when the blacklisting event occurred, shown in Unix time format.

#[serde(rename = "ListingTime")] #[serde(skip_serializing_if = "Option::is_none")] pub listing_time: Option, ///

The name of the blacklist that the IP address appears on.

#[serde(rename = "RblName")] #[serde(skip_serializing_if = "Option::is_none")] pub rbl_name: Option, } ///

Represents the body of the email message.

#[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct Body { ///

An object that represents the version of the message that is displayed in email clients that support HTML. HTML messages can include formatted text, hyperlinks, images, and more.

#[serde(rename = "Html")] #[serde(skip_serializing_if = "Option::is_none")] pub html: Option, ///

An object that represents the version of the message that is displayed in email clients that don't support HTML, or clients where the recipient has disabled HTML rendering.

#[serde(rename = "Text")] #[serde(skip_serializing_if = "Option::is_none")] pub text: Option, } ///

An object that defines an Amazon CloudWatch destination for email events. You can use Amazon CloudWatch to monitor and gain insights on your email sending metrics.

#[derive(Clone, Debug, Default, Deserialize, PartialEq, Serialize)] pub struct CloudWatchDestination { ///

An array of objects that define the dimensions to use when you send email events to Amazon CloudWatch.

#[serde(rename = "DimensionConfigurations")] pub dimension_configurations: Vec, } ///

An object that defines the dimension configuration to use when you send Amazon Pinpoint email events to Amazon CloudWatch.

#[derive(Clone, Debug, Default, Deserialize, PartialEq, Serialize)] pub struct CloudWatchDimensionConfiguration { ///

The default value of the dimension that is published to Amazon CloudWatch if you don't provide the value of the dimension when you send an email. This value has to meet the following criteria:

  • It can only contain ASCII letters (a-z, A-Z), numbers (0-9), underscores (_), or dashes (-).

  • It can contain no more than 256 characters.

#[serde(rename = "DefaultDimensionValue")] pub default_dimension_value: String, ///

The name of an Amazon CloudWatch dimension associated with an email sending metric. The name has to meet the following criteria:

  • It can only contain ASCII letters (a-z, A-Z), numbers (0-9), underscores (_), or dashes (-).

  • It can contain no more than 256 characters.

#[serde(rename = "DimensionName")] pub dimension_name: String, ///

The location where Amazon Pinpoint finds the value of a dimension to publish to Amazon CloudWatch. If you want Amazon Pinpoint to use the message tags that you specify using an X-SES-MESSAGE-TAGS header or a parameter to the SendEmail/SendRawEmail API, choose messageTag. If you want Amazon Pinpoint to use your own email headers, choose emailHeader. If you want Amazon Pinpoint to use link tags, choose linkTags.

#[serde(rename = "DimensionValueSource")] pub dimension_value_source: String, } ///

An object that represents the content of the email, and optionally a character set specification.

#[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct Content { ///

The character set for the content. Because of the constraints of the SMTP protocol, Amazon Pinpoint uses 7-bit ASCII by default. If the text includes characters outside of the ASCII range, you have to specify a character set. For example, you could specify UTF-8, ISO-8859-1, or Shift_JIS.

#[serde(rename = "Charset")] #[serde(skip_serializing_if = "Option::is_none")] pub charset: Option, ///

The content of the message itself.

#[serde(rename = "Data")] pub data: String, } ///

A request to add an event destination to a configuration set.

#[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct CreateConfigurationSetEventDestinationRequest { ///

The name of the configuration set that you want to add an event destination to.

#[serde(rename = "ConfigurationSetName")] pub configuration_set_name: String, ///

An object that defines the event destination.

#[serde(rename = "EventDestination")] pub event_destination: EventDestinationDefinition, ///

A name that identifies the event destination within the configuration set.

#[serde(rename = "EventDestinationName")] pub event_destination_name: String, } ///

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

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct CreateConfigurationSetEventDestinationResponse {} ///

A request to create a configuration set.

#[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct CreateConfigurationSetRequest { ///

The name of the configuration set.

#[serde(rename = "ConfigurationSetName")] pub configuration_set_name: String, ///

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

#[serde(rename = "DeliveryOptions")] #[serde(skip_serializing_if = "Option::is_none")] pub delivery_options: Option, ///

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

#[serde(rename = "ReputationOptions")] #[serde(skip_serializing_if = "Option::is_none")] pub reputation_options: Option, ///

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

#[serde(rename = "SendingOptions")] #[serde(skip_serializing_if = "Option::is_none")] pub sending_options: Option, ///

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

#[serde(rename = "Tags")] #[serde(skip_serializing_if = "Option::is_none")] pub tags: Option>, ///

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

#[serde(rename = "TrackingOptions")] #[serde(skip_serializing_if = "Option::is_none")] pub tracking_options: Option, } ///

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

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct CreateConfigurationSetResponse {} ///

A request to create a new dedicated IP pool.

#[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct CreateDedicatedIpPoolRequest { ///

The name of the dedicated IP pool.

#[serde(rename = "PoolName")] pub pool_name: String, ///

An object that defines the tags (keys and values) that you want to associate with the pool.

#[serde(rename = "Tags")] #[serde(skip_serializing_if = "Option::is_none")] pub tags: Option>, } ///

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

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct CreateDedicatedIpPoolResponse {} ///

A request to perform a predictive inbox placement test. Predictive inbox placement tests can help you predict how your messages will be handled by various email providers around the world. When you perform a predictive inbox placement test, you provide a sample message that contains the content that you plan to send to your customers. Amazon Pinpoint then sends that message to special email addresses spread across several major email providers. After about 24 hours, the test is complete, and you can use the GetDeliverabilityTestReport operation to view the results of the test.

#[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct CreateDeliverabilityTestReportRequest { ///

The HTML body of the message that you sent when you performed the predictive inbox placement test.

#[serde(rename = "Content")] pub content: EmailContent, ///

The email address that the predictive inbox placement test email was sent from.

#[serde(rename = "FromEmailAddress")] pub from_email_address: String, ///

A unique name that helps you to identify the predictive inbox placement test when you retrieve the results.

#[serde(rename = "ReportName")] #[serde(skip_serializing_if = "Option::is_none")] pub report_name: Option, ///

An array of objects that define the tags (keys and values) that you want to associate with the predictive inbox placement test.

#[serde(rename = "Tags")] #[serde(skip_serializing_if = "Option::is_none")] pub tags: Option>, } ///

Information about the predictive inbox placement test that you created.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct CreateDeliverabilityTestReportResponse { ///

The status of the predictive inbox placement test. If the status is IN_PROGRESS, then the predictive inbox placement test is currently running. Predictive inbox placement tests are usually complete within 24 hours of creating the test. If the status is COMPLETE, then the test is finished, and you can use the GetDeliverabilityTestReport to view the results of the test.

#[serde(rename = "DeliverabilityTestStatus")] pub deliverability_test_status: String, ///

A unique string that identifies the predictive inbox placement test.

#[serde(rename = "ReportId")] pub report_id: String, } ///

A request to begin the verification process for an email identity (an email address or domain).

#[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct CreateEmailIdentityRequest { ///

The email address or domain that you want to verify.

#[serde(rename = "EmailIdentity")] pub email_identity: String, ///

An array of objects that define the tags (keys and values) that you want to associate with the email identity.

#[serde(rename = "Tags")] #[serde(skip_serializing_if = "Option::is_none")] pub tags: Option>, } ///

If the email identity is a domain, this object contains tokens that you can use to create a set of CNAME records. To sucessfully verify your domain, you have to add these records to the DNS configuration for your domain.

If the email identity is an email address, this object is empty.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct CreateEmailIdentityResponse { ///

An object that contains information about the DKIM attributes for the identity. This object includes the tokens that you use to create the CNAME records that are required to complete the DKIM verification process.

#[serde(rename = "DkimAttributes")] #[serde(skip_serializing_if = "Option::is_none")] pub dkim_attributes: Option, ///

The email identity type.

#[serde(rename = "IdentityType")] #[serde(skip_serializing_if = "Option::is_none")] pub identity_type: Option, ///

Specifies whether or not the identity is verified. In Amazon Pinpoint, you can only send email from verified email addresses or domains. For more information about verifying identities, see the Amazon Pinpoint User Guide.

#[serde(rename = "VerifiedForSendingStatus")] #[serde(skip_serializing_if = "Option::is_none")] pub verified_for_sending_status: Option, } ///

An object that contains information about the volume of email sent on each day of the analysis period.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct DailyVolume { ///

An object that contains inbox placement metrics for a specified day in the analysis period, broken out by the recipient's email provider.

#[serde(rename = "DomainIspPlacements")] #[serde(skip_serializing_if = "Option::is_none")] pub domain_isp_placements: Option>, ///

The date that the DailyVolume metrics apply to, in Unix time.

#[serde(rename = "StartDate")] #[serde(skip_serializing_if = "Option::is_none")] pub start_date: Option, ///

An object that contains inbox placement metrics for a specific day in the analysis period.

#[serde(rename = "VolumeStatistics")] #[serde(skip_serializing_if = "Option::is_none")] pub volume_statistics: Option, } ///

Contains information about a dedicated IP address that is associated with your Amazon Pinpoint account.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct DedicatedIp { ///

An IP address that is reserved for use by your Amazon Pinpoint account.

#[serde(rename = "Ip")] pub ip: String, ///

The name of the dedicated IP pool that the IP address is associated with.

#[serde(rename = "PoolName")] #[serde(skip_serializing_if = "Option::is_none")] pub pool_name: Option, ///

Indicates how complete the dedicated IP warm-up process is. When this value equals 1, the address has completed the warm-up process and is ready for use.

#[serde(rename = "WarmupPercentage")] pub warmup_percentage: i64, ///

The warm-up status of a dedicated IP address. The status can have one of the following values:

  • IN_PROGRESS – The IP address isn't ready to use because the dedicated IP warm-up process is ongoing.

  • DONE – The dedicated IP warm-up process is complete, and the IP address is ready to use.

#[serde(rename = "WarmupStatus")] pub warmup_status: String, } ///

A request to delete an event destination from a configuration set.

#[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct DeleteConfigurationSetEventDestinationRequest { ///

The name of the configuration set that contains the event destination that you want to delete.

#[serde(rename = "ConfigurationSetName")] pub configuration_set_name: String, ///

The name of the event destination that you want to delete.

#[serde(rename = "EventDestinationName")] pub event_destination_name: String, } ///

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

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct DeleteConfigurationSetEventDestinationResponse {} ///

A request to delete a configuration set.

#[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct DeleteConfigurationSetRequest { ///

The name of the configuration set that you want to delete.

#[serde(rename = "ConfigurationSetName")] pub configuration_set_name: String, } ///

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

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct DeleteConfigurationSetResponse {} ///

A request to delete a dedicated IP pool.

#[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct DeleteDedicatedIpPoolRequest { ///

The name of the dedicated IP pool that you want to delete.

#[serde(rename = "PoolName")] pub pool_name: String, } ///

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

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct DeleteDedicatedIpPoolResponse {} ///

A request to delete an existing email identity. When you delete an identity, you lose the ability to use Amazon Pinpoint to send email from that identity. You can restore your ability to send email by completing the verification process for the identity again.

#[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct DeleteEmailIdentityRequest { ///

The identity (that is, the email address or domain) that you want to delete from your Amazon Pinpoint account.

#[serde(rename = "EmailIdentity")] pub email_identity: String, } ///

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

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct DeleteEmailIdentityResponse {} ///

An object that contains metadata related to a predictive inbox placement test.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct DeliverabilityTestReport { ///

The date and time when the predictive inbox placement test was created, in Unix time format.

#[serde(rename = "CreateDate")] #[serde(skip_serializing_if = "Option::is_none")] pub create_date: Option, ///

The status of the predictive inbox placement test. If the status is IN_PROGRESS, then the predictive inbox placement test is currently running. Predictive inbox placement tests are usually complete within 24 hours of creating the test. If the status is COMPLETE, then the test is finished, and you can use the GetDeliverabilityTestReport to view the results of the test.

#[serde(rename = "DeliverabilityTestStatus")] #[serde(skip_serializing_if = "Option::is_none")] pub deliverability_test_status: Option, ///

The sender address that you specified for the predictive inbox placement test.

#[serde(rename = "FromEmailAddress")] #[serde(skip_serializing_if = "Option::is_none")] pub from_email_address: Option, ///

A unique string that identifies the predictive inbox placement test.

#[serde(rename = "ReportId")] #[serde(skip_serializing_if = "Option::is_none")] pub report_id: Option, ///

A name that helps you identify a predictive inbox placement test report.

#[serde(rename = "ReportName")] #[serde(skip_serializing_if = "Option::is_none")] pub report_name: Option, ///

The subject line for an email that you submitted in a predictive inbox placement test.

#[serde(rename = "Subject")] #[serde(skip_serializing_if = "Option::is_none")] pub subject: Option, } ///

Used to associate a configuration set with a dedicated IP pool.

#[derive(Clone, Debug, Default, Deserialize, PartialEq, Serialize)] pub struct DeliveryOptions { ///

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

#[serde(rename = "SendingPoolName")] #[serde(skip_serializing_if = "Option::is_none")] pub sending_pool_name: Option, ///

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.

#[serde(rename = "TlsPolicy")] #[serde(skip_serializing_if = "Option::is_none")] pub tls_policy: Option, } ///

An object that describes the recipients for an email.

#[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct Destination { ///

An array that contains the email addresses of the "BCC" (blind carbon copy) recipients for the email.

#[serde(rename = "BccAddresses")] #[serde(skip_serializing_if = "Option::is_none")] pub bcc_addresses: Option>, ///

An array that contains the email addresses of the "CC" (carbon copy) recipients for the email.

#[serde(rename = "CcAddresses")] #[serde(skip_serializing_if = "Option::is_none")] pub cc_addresses: Option>, ///

An array that contains the email addresses of the "To" recipients for the email.

#[serde(rename = "ToAddresses")] #[serde(skip_serializing_if = "Option::is_none")] pub to_addresses: Option>, } ///

An object that contains information about the DKIM configuration for an email identity.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct DkimAttributes { ///

If the value is true, then the messages that Amazon Pinpoint sends from the identity are DKIM-signed. If the value is false, then the messages that Amazon Pinpoint sends from the identity aren't DKIM-signed.

#[serde(rename = "SigningEnabled")] #[serde(skip_serializing_if = "Option::is_none")] pub signing_enabled: Option, ///

Describes whether or not Amazon Pinpoint has successfully located the DKIM records in the DNS records for the domain. The status can be one of the following:

  • PENDING – Amazon Pinpoint hasn't yet located the DKIM records in the DNS configuration for the domain, but will continue to attempt to locate them.

  • SUCCESS – Amazon Pinpoint located the DKIM records in the DNS configuration for the domain and determined that they're correct. Amazon Pinpoint can now send DKIM-signed email from the identity.

  • FAILED – Amazon Pinpoint was unable to locate the DKIM records in the DNS settings for the domain, and won't continue to search for them.

  • TEMPORARYFAILURE – A temporary issue occurred, which prevented Amazon Pinpoint from determining the DKIM status for the domain.

  • NOTSTARTED – Amazon Pinpoint hasn't yet started searching for the DKIM records in the DKIM records for the domain.

#[serde(rename = "Status")] #[serde(skip_serializing_if = "Option::is_none")] pub status: Option, ///

A set of unique strings that you use to create a set of CNAME records that you add to the DNS configuration for your domain. When Amazon Pinpoint detects these records in the DNS configuration for your domain, the DKIM authentication process is complete. Amazon Pinpoint usually detects these records within about 72 hours of adding them to the DNS configuration for your domain.

#[serde(rename = "Tokens")] #[serde(skip_serializing_if = "Option::is_none")] pub tokens: Option>, } ///

An object that contains the deliverability data for a specific campaign. This data is available for a campaign only if the campaign sent email by using a domain that the Deliverability dashboard is enabled for (PutDeliverabilityDashboardOption operation).

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct DomainDeliverabilityCampaign { ///

The unique identifier for the campaign. Amazon Pinpoint automatically generates and assigns this identifier to a campaign. This value is not the same as the campaign identifier that Amazon Pinpoint assigns to campaigns that you create and manage by using the Amazon Pinpoint API or the Amazon Pinpoint console.

#[serde(rename = "CampaignId")] #[serde(skip_serializing_if = "Option::is_none")] pub campaign_id: Option, ///

The percentage of email messages that were deleted by recipients, without being opened first. Due to technical limitations, this value only includes recipients who opened the message by using an email client that supports images.

#[serde(rename = "DeleteRate")] #[serde(skip_serializing_if = "Option::is_none")] pub delete_rate: Option, ///

The major email providers who handled the email message.

#[serde(rename = "Esps")] #[serde(skip_serializing_if = "Option::is_none")] pub esps: Option>, ///

The first time, in Unix time format, when the email message was delivered to any recipient's inbox. This value can help you determine how long it took for a campaign to deliver an email message.

#[serde(rename = "FirstSeenDateTime")] #[serde(skip_serializing_if = "Option::is_none")] pub first_seen_date_time: Option, ///

The verified email address that the email message was sent from.

#[serde(rename = "FromAddress")] #[serde(skip_serializing_if = "Option::is_none")] pub from_address: Option, ///

The URL of an image that contains a snapshot of the email message that was sent.

#[serde(rename = "ImageUrl")] #[serde(skip_serializing_if = "Option::is_none")] pub image_url: Option, ///

The number of email messages that were delivered to recipients’ inboxes.

#[serde(rename = "InboxCount")] #[serde(skip_serializing_if = "Option::is_none")] pub inbox_count: Option, ///

The last time, in Unix time format, when the email message was delivered to any recipient's inbox. This value can help you determine how long it took for a campaign to deliver an email message.

#[serde(rename = "LastSeenDateTime")] #[serde(skip_serializing_if = "Option::is_none")] pub last_seen_date_time: Option, ///

The projected number of recipients that the email message was sent to.

#[serde(rename = "ProjectedVolume")] #[serde(skip_serializing_if = "Option::is_none")] pub projected_volume: Option, ///

The percentage of email messages that were opened and then deleted by recipients. Due to technical limitations, this value only includes recipients who opened the message by using an email client that supports images.

#[serde(rename = "ReadDeleteRate")] #[serde(skip_serializing_if = "Option::is_none")] pub read_delete_rate: Option, ///

The percentage of email messages that were opened by recipients. Due to technical limitations, this value only includes recipients who opened the message by using an email client that supports images.

#[serde(rename = "ReadRate")] #[serde(skip_serializing_if = "Option::is_none")] pub read_rate: Option, ///

The IP addresses that were used to send the email message.

#[serde(rename = "SendingIps")] #[serde(skip_serializing_if = "Option::is_none")] pub sending_ips: Option>, ///

The number of email messages that were delivered to recipients' spam or junk mail folders.

#[serde(rename = "SpamCount")] #[serde(skip_serializing_if = "Option::is_none")] pub spam_count: Option, ///

The subject line, or title, of the email message.

#[serde(rename = "Subject")] #[serde(skip_serializing_if = "Option::is_none")] pub subject: Option, } ///

An object that contains information about the Deliverability dashboard subscription for a verified domain that you use to send email and currently has an active Deliverability dashboard subscription. If a Deliverability dashboard subscription is active for a domain, you gain access to reputation, inbox placement, and other metrics for the domain.

#[derive(Clone, Debug, Default, Deserialize, PartialEq, Serialize)] pub struct DomainDeliverabilityTrackingOption { ///

A verified domain that’s associated with your AWS account and currently has an active Deliverability dashboard subscription.

#[serde(rename = "Domain")] #[serde(skip_serializing_if = "Option::is_none")] pub domain: Option, ///

An object that contains information about the inbox placement data settings for the domain.

#[serde(rename = "InboxPlacementTrackingOption")] #[serde(skip_serializing_if = "Option::is_none")] pub inbox_placement_tracking_option: Option, ///

The date, in Unix time format, when you enabled the Deliverability dashboard for the domain.

#[serde(rename = "SubscriptionStartDate")] #[serde(skip_serializing_if = "Option::is_none")] pub subscription_start_date: Option, } ///

An object that contains inbox placement data for email sent from one of your email domains to a specific email provider.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct DomainIspPlacement { ///

The percentage of messages that were sent from the selected domain to the specified email provider that arrived in recipients' inboxes.

#[serde(rename = "InboxPercentage")] #[serde(skip_serializing_if = "Option::is_none")] pub inbox_percentage: Option, ///

The total number of messages that were sent from the selected domain to the specified email provider that arrived in recipients' inboxes.

#[serde(rename = "InboxRawCount")] #[serde(skip_serializing_if = "Option::is_none")] pub inbox_raw_count: Option, ///

The name of the email provider that the inbox placement data applies to.

#[serde(rename = "IspName")] #[serde(skip_serializing_if = "Option::is_none")] pub isp_name: Option, ///

The percentage of messages that were sent from the selected domain to the specified email provider that arrived in recipients' spam or junk mail folders.

#[serde(rename = "SpamPercentage")] #[serde(skip_serializing_if = "Option::is_none")] pub spam_percentage: Option, ///

The total number of messages that were sent from the selected domain to the specified email provider that arrived in recipients' spam or junk mail folders.

#[serde(rename = "SpamRawCount")] #[serde(skip_serializing_if = "Option::is_none")] pub spam_raw_count: Option, } ///

An object that defines the entire content of the email, including the message headers and the body content. You can create a simple email message, in which you specify the subject and the text and HTML versions of the message body. You can also create raw messages, in which you specify a complete MIME-formatted message. Raw messages can include attachments and custom headers.

#[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct EmailContent { ///

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

  • The message has to contain a header and a body, separated by one 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.

  • If you include attachments, they must be in a file format that Amazon Pinpoint supports.

  • 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, you should encode that content to ensure that recipients' email clients render the message properly.

  • The length of any single line of text in the message can't exceed 1,000 characters. This restriction is defined in RFC 5321.

#[serde(rename = "Raw")] #[serde(skip_serializing_if = "Option::is_none")] pub raw: Option, ///

The simple email message. The message consists of a subject and a message body.

#[serde(rename = "Simple")] #[serde(skip_serializing_if = "Option::is_none")] pub simple: Option, ///

The template to use for the email message.

#[serde(rename = "Template")] #[serde(skip_serializing_if = "Option::is_none")] pub template: Option