Class SendRawEmailRequest
- All Implemented Interfaces:
SdkPojo
,ToCopyableBuilder<SendRawEmailRequest.Builder,
SendRawEmailRequest>
Represents a request to send a single raw email using Amazon SES. For more information, see the Amazon SES Developer Guide.
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionstatic SendRawEmailRequest.Builder
builder()
final String
The name of the configuration set to use when you send an email usingSendRawEmail
.A list of destinations for the message, consisting of To:, CC:, and BCC: addresses.final boolean
final boolean
equalsBySdkFields
(Object obj) Indicates whether some other object is "equal to" this one by SDK fields.final String
fromArn()
This parameter is used only for sending authorization.final <T> Optional
<T> getValueForField
(String fieldName, Class<T> clazz) Used to retrieve the value of a field from any class that extendsSdkRequest
.final boolean
For responses, this returns true if the service returned a value for the Destinations property.final int
hashCode()
final boolean
hasTags()
For responses, this returns true if the service returned a value for the Tags property.final RawMessage
The raw email message itself.final String
This parameter is used only for sending authorization.static Class
<? extends SendRawEmailRequest.Builder> final String
source()
The identity's email address.final String
This parameter is used only for sending authorization.final List
<MessageTag> tags()
A list of tags, in the form of name/value pairs, to apply to an email that you send usingSendRawEmail
.Take this object and create a builder that contains all of the current property values of this object.final String
toString()
Returns a string representation of this object.Methods inherited from class software.amazon.awssdk.awscore.AwsRequest
overrideConfiguration
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
source
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 email address string must be 7-bit ASCII. If you want to send to or from email addresses that contain Unicode characters in the domain part of an address, you must encode the domain using Punycode. Punycode is not permitted in the local part of the email address (the part before the @ sign) nor in the "friendly from" name. If you want to use Unicode characters in the "friendly from" name, you must encode the "friendly from" name using MIME encoded-word syntax, as described in Sending raw email using the Amazon SES API. For more information about Punycode, see RFC 3492.
If you specify the
Source
parameter and have feedback forwarding enabled, then bounces and complaints are sent to this email address. This takes precedence over any Return-Path header that you might include in the raw text of the message.- Returns:
- 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 email address string must be 7-bit ASCII. If you want to send to or from email addresses that contain Unicode characters in the domain part of an address, you must encode the domain using Punycode. Punycode is not permitted in the local part of the email address (the part before the @ sign) nor in the "friendly from" name. If you want to use Unicode characters in the "friendly from" name, you must encode the "friendly from" name using MIME encoded-word syntax, as described in Sending raw email using the Amazon SES API. For more information about Punycode, see RFC 3492.
If you specify the
Source
parameter and have feedback forwarding enabled, then bounces and complaints are sent to this email address. This takes precedence over any Return-Path header that you might include in the raw text of the message.
-
hasDestinations
public final boolean hasDestinations()For responses, this returns true if the service returned a value for the Destinations property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
destinations
A list of destinations for the message, consisting of To:, CC:, and BCC: addresses.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasDestinations()
method.- Returns:
- A list of destinations for the message, consisting of To:, CC:, and BCC: addresses.
-
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 <CRLF>, must not exceed 1,000 characters.
- Returns:
- 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 <CRLF>, must not exceed 1,000 characters.
-
-
-
fromArn
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 theFromArn
parameter and the corresponding X-header, Amazon SES uses the value of theFromArn
parameter.For information about when to use this parameter, see the description of
SendRawEmail
in this guide, or see the Amazon SES Developer Guide.- Returns:
- 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 theFromArn
parameter and the corresponding X-header, Amazon SES uses the value of theFromArn
parameter.For information about when to use this parameter, see the description of
SendRawEmail
in this guide, or see the Amazon SES Developer Guide.
-
sourceArn
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 ARNarn:aws:ses:us-east-1:123456789012:identity/example.com
) attaches a policy to it that authorizes you to send fromuser@example.com
, then you would specify theSourceArn
to bearn:aws:ses:us-east-1:123456789012:identity/example.com
, and theSource
to beuser@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 theSourceArn
parameter and the corresponding X-header, Amazon SES uses the value of theSourceArn
parameter.For information about when to use this parameter, see the description of
SendRawEmail
in this guide, or see the Amazon SES Developer Guide.- Returns:
- 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 ARNarn:aws:ses:us-east-1:123456789012:identity/example.com
) attaches a policy to it that authorizes you to send fromuser@example.com
, then you would specify theSourceArn
to bearn:aws:ses:us-east-1:123456789012:identity/example.com
, and theSource
to beuser@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 theSourceArn
parameter and the corresponding X-header, Amazon SES uses the value of theSourceArn
parameter.For information about when to use this parameter, see the description of
SendRawEmail
in this guide, or see the Amazon SES Developer Guide.
-
returnPathArn
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 ARNarn:aws:ses:us-east-1:123456789012:identity/example.com
) attaches a policy to it that authorizes you to usefeedback@example.com
, then you would specify theReturnPathArn
to bearn:aws:ses:us-east-1:123456789012:identity/example.com
, and theReturnPath
to befeedback@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 theReturnPathArn
parameter and the corresponding X-header, Amazon SES uses the value of theReturnPathArn
parameter.For information about when to use this parameter, see the description of
SendRawEmail
in this guide, or see the Amazon SES Developer Guide.- Returns:
- 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 ARNarn:aws:ses:us-east-1:123456789012:identity/example.com
) attaches a policy to it that authorizes you to usefeedback@example.com
, then you would specify theReturnPathArn
to bearn:aws:ses:us-east-1:123456789012:identity/example.com
, and theReturnPath
to befeedback@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 theReturnPathArn
parameter and the corresponding X-header, Amazon SES uses the value of theReturnPathArn
parameter.For information about when to use this parameter, see the description of
SendRawEmail
in this guide, or see the Amazon SES Developer Guide.
-
hasTags
public final boolean hasTags()For responses, this returns true if the service returned a value for the Tags property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
tags
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.Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasTags()
method.- Returns:
- 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.
-
configurationSetName
The name of the configuration set to use when you send an email using
SendRawEmail
.- Returns:
- The name of the configuration set to use when you send an email using
SendRawEmail
.
-
toBuilder
Description copied from interface:ToCopyableBuilder
Take this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilder
in interfaceToCopyableBuilder<SendRawEmailRequest.Builder,
SendRawEmailRequest> - Specified by:
toBuilder
in classSesRequest
- Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
public final int hashCode()- Overrides:
hashCode
in classAwsRequest
-
equals
- Overrides:
equals
in classAwsRequest
-
equalsBySdkFields
Description copied from interface:SdkPojo
Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in anSdkPojo
class, and is generated based on a service model.If an
SdkPojo
class does not have any inherited fields,equalsBySdkFields
andequals
are essentially the same.- Specified by:
equalsBySdkFields
in interfaceSdkPojo
- Parameters:
obj
- the object to be compared with- Returns:
- true if the other object equals to this object by sdk fields, false otherwise.
-
toString
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value. -
getValueForField
Description copied from class:SdkRequest
Used to retrieve the value of a field from any class that extendsSdkRequest
. The field name specified should match the member name from the corresponding service-2.json model specified in the codegen-resources folder for a given service. The class specifies what class to cast the returned value to. If the returned value is also a modeled class, theSdkRequest.getValueForField(String, Class)
method will again be available.- Overrides:
getValueForField
in classSdkRequest
- Parameters:
fieldName
- The name of the member to be retrieved.clazz
- The class to cast the returned object to.- Returns:
- Optional containing the casted return value
-
sdkFields
-