diff --git a/clients/client-sesv2/README.md b/clients/client-sesv2/README.md index 7e4b62efbb57..1d2421ffca0a 100644 --- a/clients/client-sesv2/README.md +++ b/clients/client-sesv2/README.md @@ -753,6 +753,14 @@ PutAccountVdmAttributes [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/sesv2/command/PutAccountVdmAttributesCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-sesv2/Interface/PutAccountVdmAttributesCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-sesv2/Interface/PutAccountVdmAttributesCommandOutput/) + +
+ +PutConfigurationSetArchivingOptions + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/sesv2/command/PutConfigurationSetArchivingOptionsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-sesv2/Interface/PutConfigurationSetArchivingOptionsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-sesv2/Interface/PutConfigurationSetArchivingOptionsCommandOutput/) +
diff --git a/clients/client-sesv2/src/SESv2.ts b/clients/client-sesv2/src/SESv2.ts index ec8481aa7b42..a95e77ca752f 100644 --- a/clients/client-sesv2/src/SESv2.ts +++ b/clients/client-sesv2/src/SESv2.ts @@ -334,6 +334,11 @@ import { PutAccountVdmAttributesCommandInput, PutAccountVdmAttributesCommandOutput, } from "./commands/PutAccountVdmAttributesCommand"; +import { + PutConfigurationSetArchivingOptionsCommand, + PutConfigurationSetArchivingOptionsCommandInput, + PutConfigurationSetArchivingOptionsCommandOutput, +} from "./commands/PutConfigurationSetArchivingOptionsCommand"; import { PutConfigurationSetDeliveryOptionsCommand, PutConfigurationSetDeliveryOptionsCommandInput, @@ -537,6 +542,7 @@ const commands = { PutAccountSendingAttributesCommand, PutAccountSuppressionAttributesCommand, PutAccountVdmAttributesCommand, + PutConfigurationSetArchivingOptionsCommand, PutConfigurationSetDeliveryOptionsCommand, PutConfigurationSetReputationOptionsCommand, PutConfigurationSetSendingOptionsCommand, @@ -1676,6 +1682,23 @@ export interface SESv2 { cb: (err: any, data?: PutAccountVdmAttributesCommandOutput) => void ): void; + /** + * @see {@link PutConfigurationSetArchivingOptionsCommand} + */ + putConfigurationSetArchivingOptions( + args: PutConfigurationSetArchivingOptionsCommandInput, + options?: __HttpHandlerOptions + ): Promise; + putConfigurationSetArchivingOptions( + args: PutConfigurationSetArchivingOptionsCommandInput, + cb: (err: any, data?: PutConfigurationSetArchivingOptionsCommandOutput) => void + ): void; + putConfigurationSetArchivingOptions( + args: PutConfigurationSetArchivingOptionsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: PutConfigurationSetArchivingOptionsCommandOutput) => void + ): void; + /** * @see {@link PutConfigurationSetDeliveryOptionsCommand} */ diff --git a/clients/client-sesv2/src/SESv2Client.ts b/clients/client-sesv2/src/SESv2Client.ts index dd7d053523d5..50aad41d329f 100644 --- a/clients/client-sesv2/src/SESv2Client.ts +++ b/clients/client-sesv2/src/SESv2Client.ts @@ -250,6 +250,10 @@ import { PutAccountVdmAttributesCommandInput, PutAccountVdmAttributesCommandOutput, } from "./commands/PutAccountVdmAttributesCommand"; +import { + PutConfigurationSetArchivingOptionsCommandInput, + PutConfigurationSetArchivingOptionsCommandOutput, +} from "./commands/PutConfigurationSetArchivingOptionsCommand"; import { PutConfigurationSetDeliveryOptionsCommandInput, PutConfigurationSetDeliveryOptionsCommandOutput, @@ -427,6 +431,7 @@ export type ServiceInputTypes = | PutAccountSendingAttributesCommandInput | PutAccountSuppressionAttributesCommandInput | PutAccountVdmAttributesCommandInput + | PutConfigurationSetArchivingOptionsCommandInput | PutConfigurationSetDeliveryOptionsCommandInput | PutConfigurationSetReputationOptionsCommandInput | PutConfigurationSetSendingOptionsCommandInput @@ -528,6 +533,7 @@ export type ServiceOutputTypes = | PutAccountSendingAttributesCommandOutput | PutAccountSuppressionAttributesCommandOutput | PutAccountVdmAttributesCommandOutput + | PutConfigurationSetArchivingOptionsCommandOutput | PutConfigurationSetDeliveryOptionsCommandOutput | PutConfigurationSetReputationOptionsCommandOutput | PutConfigurationSetSendingOptionsCommandOutput diff --git a/clients/client-sesv2/src/commands/CreateConfigurationSetCommand.ts b/clients/client-sesv2/src/commands/CreateConfigurationSetCommand.ts index 486487750710..a36335b1c941 100644 --- a/clients/client-sesv2/src/commands/CreateConfigurationSetCommand.ts +++ b/clients/client-sesv2/src/commands/CreateConfigurationSetCommand.ts @@ -76,6 +76,9 @@ export interface CreateConfigurationSetCommandOutput extends CreateConfiguration * OptimizedSharedDelivery: "ENABLED" || "DISABLED", * }, * }, + * ArchivingOptions: { // ArchivingOptions + * ArchiveArn: "STRING_VALUE", + * }, * }; * const command = new CreateConfigurationSetCommand(input); * const response = await client.send(command); diff --git a/clients/client-sesv2/src/commands/GetConfigurationSetCommand.ts b/clients/client-sesv2/src/commands/GetConfigurationSetCommand.ts index 4065b5eb96dc..f2016c26c798 100644 --- a/clients/client-sesv2/src/commands/GetConfigurationSetCommand.ts +++ b/clients/client-sesv2/src/commands/GetConfigurationSetCommand.ts @@ -84,6 +84,9 @@ export interface GetConfigurationSetCommandOutput extends GetConfigurationSetRes * // OptimizedSharedDelivery: "ENABLED" || "DISABLED", * // }, * // }, + * // ArchivingOptions: { // ArchivingOptions + * // ArchiveArn: "STRING_VALUE", + * // }, * // }; * * ``` diff --git a/clients/client-sesv2/src/commands/PutConfigurationSetArchivingOptionsCommand.ts b/clients/client-sesv2/src/commands/PutConfigurationSetArchivingOptionsCommand.ts new file mode 100644 index 000000000000..fdef2c77be32 --- /dev/null +++ b/clients/client-sesv2/src/commands/PutConfigurationSetArchivingOptionsCommand.ts @@ -0,0 +1,110 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { + PutConfigurationSetArchivingOptionsRequest, + PutConfigurationSetArchivingOptionsResponse, +} from "../models/models_0"; +import { + de_PutConfigurationSetArchivingOptionsCommand, + se_PutConfigurationSetArchivingOptionsCommand, +} from "../protocols/Aws_restJson1"; +import { ServiceInputTypes, ServiceOutputTypes, SESv2ClientResolvedConfig } from "../SESv2Client"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link PutConfigurationSetArchivingOptionsCommand}. + */ +export interface PutConfigurationSetArchivingOptionsCommandInput extends PutConfigurationSetArchivingOptionsRequest {} +/** + * @public + * + * The output of {@link PutConfigurationSetArchivingOptionsCommand}. + */ +export interface PutConfigurationSetArchivingOptionsCommandOutput + extends PutConfigurationSetArchivingOptionsResponse, + __MetadataBearer {} + +/** + *

Associate the configuration set with a MailManager archive. When you send email using the + * SendEmail or SendBulkEmail operations the message as it will be given + * to the receiving SMTP server will be archived, along with the recipient information.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { SESv2Client, PutConfigurationSetArchivingOptionsCommand } from "@aws-sdk/client-sesv2"; // ES Modules import + * // const { SESv2Client, PutConfigurationSetArchivingOptionsCommand } = require("@aws-sdk/client-sesv2"); // CommonJS import + * const client = new SESv2Client(config); + * const input = { // PutConfigurationSetArchivingOptionsRequest + * ConfigurationSetName: "STRING_VALUE", // required + * ArchiveArn: "STRING_VALUE", + * }; + * const command = new PutConfigurationSetArchivingOptionsCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param PutConfigurationSetArchivingOptionsCommandInput - {@link PutConfigurationSetArchivingOptionsCommandInput} + * @returns {@link PutConfigurationSetArchivingOptionsCommandOutput} + * @see {@link PutConfigurationSetArchivingOptionsCommandInput} for command's `input` shape. + * @see {@link PutConfigurationSetArchivingOptionsCommandOutput} for command's `response` shape. + * @see {@link SESv2ClientResolvedConfig | config} for SESv2Client's `config` shape. + * + * @throws {@link BadRequestException} (client fault) + *

The input you provided is invalid.

+ * + * @throws {@link NotFoundException} (client fault) + *

The resource you attempted to access doesn't exist.

+ * + * @throws {@link TooManyRequestsException} (client fault) + *

Too many requests have been made to the operation.

+ * + * @throws {@link SESv2ServiceException} + *

Base exception class for all service exceptions from SESv2 service.

+ * + * @public + */ +export class PutConfigurationSetArchivingOptionsCommand extends $Command + .classBuilder< + PutConfigurationSetArchivingOptionsCommandInput, + PutConfigurationSetArchivingOptionsCommandOutput, + SESv2ClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: SESv2ClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("SimpleEmailService_v2", "PutConfigurationSetArchivingOptions", {}) + .n("SESv2Client", "PutConfigurationSetArchivingOptionsCommand") + .f(void 0, void 0) + .ser(se_PutConfigurationSetArchivingOptionsCommand) + .de(de_PutConfigurationSetArchivingOptionsCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: PutConfigurationSetArchivingOptionsRequest; + output: {}; + }; + sdk: { + input: PutConfigurationSetArchivingOptionsCommandInput; + output: PutConfigurationSetArchivingOptionsCommandOutput; + }; + }; +} diff --git a/clients/client-sesv2/src/commands/PutConfigurationSetTrackingOptionsCommand.ts b/clients/client-sesv2/src/commands/PutConfigurationSetTrackingOptionsCommand.ts index 7195eaece0cc..d8718deab3c2 100644 --- a/clients/client-sesv2/src/commands/PutConfigurationSetTrackingOptionsCommand.ts +++ b/clients/client-sesv2/src/commands/PutConfigurationSetTrackingOptionsCommand.ts @@ -5,10 +5,8 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { - PutConfigurationSetTrackingOptionsRequest, - PutConfigurationSetTrackingOptionsResponse, -} from "../models/models_0"; +import { PutConfigurationSetTrackingOptionsRequest } from "../models/models_0"; +import { PutConfigurationSetTrackingOptionsResponse } from "../models/models_1"; import { de_PutConfigurationSetTrackingOptionsCommand, se_PutConfigurationSetTrackingOptionsCommand, diff --git a/clients/client-sesv2/src/commands/PutConfigurationSetVdmOptionsCommand.ts b/clients/client-sesv2/src/commands/PutConfigurationSetVdmOptionsCommand.ts index 46ffa2e1b6af..7fc87a0eecbb 100644 --- a/clients/client-sesv2/src/commands/PutConfigurationSetVdmOptionsCommand.ts +++ b/clients/client-sesv2/src/commands/PutConfigurationSetVdmOptionsCommand.ts @@ -5,7 +5,7 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { PutConfigurationSetVdmOptionsRequest, PutConfigurationSetVdmOptionsResponse } from "../models/models_0"; +import { PutConfigurationSetVdmOptionsRequest, PutConfigurationSetVdmOptionsResponse } from "../models/models_1"; import { de_PutConfigurationSetVdmOptionsCommand, se_PutConfigurationSetVdmOptionsCommand, diff --git a/clients/client-sesv2/src/commands/index.ts b/clients/client-sesv2/src/commands/index.ts index ca4d9d7163fb..63d5f895a59b 100644 --- a/clients/client-sesv2/src/commands/index.ts +++ b/clients/client-sesv2/src/commands/index.ts @@ -67,6 +67,7 @@ export * from "./PutAccountDetailsCommand"; export * from "./PutAccountSendingAttributesCommand"; export * from "./PutAccountSuppressionAttributesCommand"; export * from "./PutAccountVdmAttributesCommand"; +export * from "./PutConfigurationSetArchivingOptionsCommand"; export * from "./PutConfigurationSetDeliveryOptionsCommand"; export * from "./PutConfigurationSetReputationOptionsCommand"; export * from "./PutConfigurationSetSendingOptionsCommand"; diff --git a/clients/client-sesv2/src/models/models_0.ts b/clients/client-sesv2/src/models/models_0.ts index dc7058dd35b7..22044a3eff8d 100644 --- a/clients/client-sesv2/src/models/models_0.ts +++ b/clients/client-sesv2/src/models/models_0.ts @@ -189,6 +189,19 @@ export class AlreadyExistsException extends __BaseException { } } +/** + *

Used to associate a configuration set with a MailManager archive.

+ * @public + */ +export interface ArchivingOptions { + /** + *

The Amazon Resource Name (ARN) of the MailManager archive where the Amazon SES API v2 will archive sent + * emails.

+ * @public + */ + ArchiveArn?: string | undefined; +} + /** *

The input you provided is invalid.

* @public @@ -1727,6 +1740,13 @@ export interface CreateConfigurationSetRequest { * @public */ VdmOptions?: VdmOptions | undefined; + + /** + *

An object that defines the MailManager archiving options for emails that you send + * using the configuration set.

+ * @public + */ + ArchivingOptions?: ArchivingOptions | undefined; } /** @@ -5075,6 +5095,13 @@ export interface GetConfigurationSetResponse { * @public */ VdmOptions?: VdmOptions | undefined; + + /** + *

An object that defines the MailManager archive where sent emails are archived that you send + * using the configuration set.

+ * @public + */ + ArchivingOptions?: ArchivingOptions | undefined; } /** @@ -5869,7 +5896,7 @@ export interface VerificationInfo { *
  • *

    * REPLICATION_PRIMARY_INVALID_REGION – The verification failed due to an invalid - * primary region specified. Ensure you provide a valid AWS region where Amazon SES is available and different + * primary region specified. Ensure you provide a valid Amazon Web Services region where Amazon SES is available and different * from the replica region. *

    *
  • @@ -7410,7 +7437,7 @@ export interface Recommendation { /** *

    The recommendation type, with values like DKIM, - * SPF, DMARC or BIMI.

    + * SPF, DMARC, BIMI, or COMPLAINT.

    * @public */ Type?: RecommendationType | undefined; @@ -7745,6 +7772,32 @@ export interface PutAccountVdmAttributesRequest { */ export interface PutAccountVdmAttributesResponse {} +/** + *

    A request to associate a configuration set with a MailManager archive.

    + * @public + */ +export interface PutConfigurationSetArchivingOptionsRequest { + /** + *

    The name of the configuration set to associate with a MailManager archive.

    + * @public + */ + ConfigurationSetName: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the MailManager archive that the Amazon SES API v2 sends email + * to.

    + * @public + */ + ArchiveArn?: string | undefined; +} + +/** + *

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

    + * @public + */ +export interface PutConfigurationSetArchivingOptionsResponse {} + /** *

    A request to associate a configuration set with a dedicated IP pool.

    * @public @@ -7915,38 +7968,6 @@ export interface PutConfigurationSetTrackingOptionsRequest { HttpsPolicy?: HttpsPolicy | undefined; } -/** - *

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

    - * @public - */ -export interface PutConfigurationSetTrackingOptionsResponse {} - -/** - *

    A request to add specific VDM settings to a configuration set.

    - * @public - */ -export interface PutConfigurationSetVdmOptionsRequest { - /** - *

    The name of the configuration set.

    - * @public - */ - ConfigurationSetName: string | undefined; - - /** - *

    The VDM options to apply to the configuration set.

    - * @public - */ - VdmOptions?: VdmOptions | undefined; -} - -/** - *

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

    - * @public - */ -export interface PutConfigurationSetVdmOptionsResponse {} - /** * @internal */ diff --git a/clients/client-sesv2/src/models/models_1.ts b/clients/client-sesv2/src/models/models_1.ts index a7e15741bb1f..29036d3c92fb 100644 --- a/clients/client-sesv2/src/models/models_1.ts +++ b/clients/client-sesv2/src/models/models_1.ts @@ -20,8 +20,41 @@ import { Tag, Topic, TopicPreference, + VdmOptions, } from "./models_0"; +/** + *

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

    + * @public + */ +export interface PutConfigurationSetTrackingOptionsResponse {} + +/** + *

    A request to add specific VDM settings to a configuration set.

    + * @public + */ +export interface PutConfigurationSetVdmOptionsRequest { + /** + *

    The name of the configuration set.

    + * @public + */ + ConfigurationSetName: string | undefined; + + /** + *

    The VDM options to apply to the configuration set.

    + * @public + */ + VdmOptions?: VdmOptions | undefined; +} + +/** + *

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

    + * @public + */ +export interface PutConfigurationSetVdmOptionsResponse {} + /** *

    A request to move a dedicated IP address to a dedicated IP pool.

    * @public diff --git a/clients/client-sesv2/src/protocols/Aws_restJson1.ts b/clients/client-sesv2/src/protocols/Aws_restJson1.ts index 9618003dc3db..2eeb673ec58f 100644 --- a/clients/client-sesv2/src/protocols/Aws_restJson1.ts +++ b/clients/client-sesv2/src/protocols/Aws_restJson1.ts @@ -225,6 +225,10 @@ import { PutAccountVdmAttributesCommandInput, PutAccountVdmAttributesCommandOutput, } from "../commands/PutAccountVdmAttributesCommand"; +import { + PutConfigurationSetArchivingOptionsCommandInput, + PutConfigurationSetArchivingOptionsCommandOutput, +} from "../commands/PutConfigurationSetArchivingOptionsCommand"; import { PutConfigurationSetDeliveryOptionsCommandInput, PutConfigurationSetDeliveryOptionsCommandOutput, @@ -322,6 +326,7 @@ import { import { AccountSuspendedException, AlreadyExistsException, + ArchivingOptions, BadRequestException, BatchGetMetricDataQuery, BlacklistEntry, @@ -472,6 +477,7 @@ export const se_CreateConfigurationSetCommand = async ( let body: any; body = JSON.stringify( take(input, { + ArchivingOptions: (_) => _json(_), ConfigurationSetName: [], DeliveryOptions: (_) => _json(_), ReputationOptions: (_) => se_ReputationOptions(_, context), @@ -1746,6 +1752,29 @@ export const se_PutAccountVdmAttributesCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1PutConfigurationSetArchivingOptionsCommand + */ +export const se_PutConfigurationSetArchivingOptionsCommand = async ( + input: PutConfigurationSetArchivingOptionsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/v2/email/configuration-sets/{ConfigurationSetName}/archiving-options"); + b.p("ConfigurationSetName", () => input.ConfigurationSetName!, "{ConfigurationSetName}", false); + let body: any; + body = JSON.stringify( + take(input, { + ArchiveArn: [], + }) + ); + b.m("PUT").h(headers).b(body); + return b.build(); +}; + /** * serializeAws_restJson1PutConfigurationSetDeliveryOptionsCommand */ @@ -2958,6 +2987,7 @@ export const de_GetConfigurationSetCommand = async ( }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { + ArchivingOptions: _json, ConfigurationSetName: __expectString, DeliveryOptions: _json, ReputationOptions: (_) => de_ReputationOptions(_, context), @@ -3846,6 +3876,23 @@ export const de_PutAccountVdmAttributesCommand = async ( return contents; }; +/** + * deserializeAws_restJson1PutConfigurationSetArchivingOptionsCommand + */ +export const de_PutConfigurationSetArchivingOptionsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + await collectBody(output.body, context); + return contents; +}; + /** * deserializeAws_restJson1PutConfigurationSetDeliveryOptionsCommand */ @@ -4653,6 +4700,8 @@ const de_TooManyRequestsExceptionRes = async ( // se_AdditionalContactEmailAddresses omitted. +// se_ArchivingOptions omitted. + /** * serializeAws_restJson1BatchGetMetricDataQueries */ @@ -4912,6 +4961,8 @@ const se_ReputationOptions = (input: ReputationOptions, context: __SerdeContext) // de_AdditionalContactEmailAddresses omitted. +// de_ArchivingOptions omitted. + /** * deserializeAws_restJson1BlacklistEntries */ diff --git a/codegen/sdk-codegen/aws-models/sesv2.json b/codegen/sdk-codegen/aws-models/sesv2.json index f81f99c590d6..817753268e6c 100644 --- a/codegen/sdk-codegen/aws-models/sesv2.json +++ b/codegen/sdk-codegen/aws-models/sesv2.json @@ -129,6 +129,30 @@ "com.amazonaws.sesv2#AmazonResourceName": { "type": "string" }, + "com.amazonaws.sesv2#ArchiveArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 20, + "max": 1011 + }, + "smithy.api#pattern": "^arn:(aws|aws-[a-z-]+):ses:[a-z]{2}-[a-z-]+-[0-9]:[0-9]{1,20}:mailmanager-archive/a-[a-z0-9]{24,62}$" + } + }, + "com.amazonaws.sesv2#ArchivingOptions": { + "type": "structure", + "members": { + "ArchiveArn": { + "target": "com.amazonaws.sesv2#ArchiveArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the MailManager archive where the Amazon SES API v2 will archive sent\n emails.

    " + } + } + }, + "traits": { + "smithy.api#documentation": "

    Used to associate a configuration set with a MailManager archive.

    " + } + }, "com.amazonaws.sesv2#AttributesData": { "type": "string" }, @@ -1090,6 +1114,12 @@ "traits": { "smithy.api#documentation": "

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

    " } + }, + "ArchivingOptions": { + "target": "com.amazonaws.sesv2#ArchivingOptions", + "traits": { + "smithy.api#documentation": "

    An object that defines the MailManager archiving options for emails that you send\n using the configuration set.

    " + } } }, "traits": { @@ -4576,6 +4606,12 @@ "traits": { "smithy.api#documentation": "

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

    " } + }, + "ArchivingOptions": { + "target": "com.amazonaws.sesv2#ArchivingOptions", + "traits": { + "smithy.api#documentation": "

    An object that defines the MailManager archive where sent emails are archived that you send\n using the configuration set.

    " + } } }, "traits": { @@ -7672,7 +7708,7 @@ } }, "traits": { - "smithy.api#documentation": "

    The ListRecommendations filter type. This can be one of the following:

    \n
      \n
    • \n

      \n TYPE – The recommendation type, with values like DKIM,\n SPF, DMARC or BIMI.

      \n
    • \n
    • \n

      \n IMPACT – The recommendation impact, with values like\n HIGH or LOW.

      \n
    • \n
    • \n

      \n STATUS – The recommendation status, with values like\n OPEN or FIXED.

      \n
    • \n
    • \n

      \n RESOURCE_ARN – The resource affected by the recommendation,\n with values like arn:aws:ses:us-east-1:123456789012:identity/example.com.

      \n
    • \n
    " + "smithy.api#documentation": "

    The ListRecommendations filter type. This can be one of the following:

    \n
      \n
    • \n

      \n TYPE – The recommendation type, with values like DKIM,\n SPF, DMARC, BIMI, or COMPLAINT.

      \n
    • \n
    • \n

      \n IMPACT – The recommendation impact, with values like\n HIGH or LOW.

      \n
    • \n
    • \n

      \n STATUS – The recommendation status, with values like\n OPEN or FIXED.

      \n
    • \n
    • \n

      \n RESOURCE_ARN – The resource affected by the recommendation,\n with values like arn:aws:ses:us-east-1:123456789012:identity/example.com.

      \n
    • \n
    " } }, "com.amazonaws.sesv2#ListRecommendationsRequest": { @@ -8994,6 +9030,77 @@ "smithy.api#output": {} } }, + "com.amazonaws.sesv2#PutConfigurationSetArchivingOptions": { + "type": "operation", + "input": { + "target": "com.amazonaws.sesv2#PutConfigurationSetArchivingOptionsRequest" + }, + "output": { + "target": "com.amazonaws.sesv2#PutConfigurationSetArchivingOptionsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.sesv2#BadRequestException" + }, + { + "target": "com.amazonaws.sesv2#NotFoundException" + }, + { + "target": "com.amazonaws.sesv2#TooManyRequestsException" + } + ], + "traits": { + "smithy.api#documentation": "

    Associate the configuration set with a MailManager archive. When you send email using the\n SendEmail or SendBulkEmail operations the message as it will be given\n to the receiving SMTP server will be archived, along with the recipient information.

    ", + "smithy.api#examples": [ + { + "title": "Used to associate an MailManager archive with a ConfigurationSet.", + "documentation": "This example associates an archive arn with a configuration set.", + "input": { + "ConfigurationSetName": "sample-configuration-name", + "ArchiveArn": "arn:aws:ses:us-west-2:123456789012:mailmanager-archive/a-abcdefghijklmnopqrstuvwxyz" + }, + "output": {} + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/v2/email/configuration-sets/{ConfigurationSetName}/archiving-options", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.sesv2#PutConfigurationSetArchivingOptionsRequest": { + "type": "structure", + "members": { + "ConfigurationSetName": { + "target": "com.amazonaws.sesv2#ConfigurationSetName", + "traits": { + "smithy.api#documentation": "

    The name of the configuration set to associate with a MailManager archive.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ArchiveArn": { + "target": "com.amazonaws.sesv2#ArchiveArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the MailManager archive that the Amazon SES API v2 sends email\n to.

    " + } + } + }, + "traits": { + "smithy.api#documentation": "

    A request to associate a configuration set with a MailManager archive.

    ", + "smithy.api#input": {} + } + }, + "com.amazonaws.sesv2#PutConfigurationSetArchivingOptionsResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

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

    ", + "smithy.api#output": {} + } + }, "com.amazonaws.sesv2#PutConfigurationSetDeliveryOptions": { "type": "operation", "input": { @@ -10072,7 +10179,7 @@ "Type": { "target": "com.amazonaws.sesv2#RecommendationType", "traits": { - "smithy.api#documentation": "

    The recommendation type, with values like DKIM,\n SPF, DMARC or BIMI.

    " + "smithy.api#documentation": "

    The recommendation type, with values like DKIM,\n SPF, DMARC, BIMI, or COMPLAINT.

    " } }, "Description": { @@ -11062,6 +11169,9 @@ { "target": "com.amazonaws.sesv2#PutAccountVdmAttributes" }, + { + "target": "com.amazonaws.sesv2#PutConfigurationSetArchivingOptions" + }, { "target": "com.amazonaws.sesv2#PutConfigurationSetDeliveryOptions" }, @@ -13680,7 +13790,7 @@ "ErrorType": { "target": "com.amazonaws.sesv2#VerificationError", "traits": { - "smithy.api#documentation": "

    Provides the reason for the failure describing why Amazon SES was not able to successfully\n verify the identity. Below are the possible values:

    \n
      \n
    • \n

      \n INVALID_VALUE – Amazon SES was able to find the record, but the\n value contained within the record was invalid. Ensure you have published the\n correct values for the record.

      \n
    • \n
    • \n

      \n TYPE_NOT_FOUND – The queried hostname exists but does not\n have the requested type of DNS record. Ensure that you have published the\n correct type of DNS record.

      \n
    • \n
    • \n

      \n HOST_NOT_FOUND – The queried hostname does not exist or was\n not reachable at the time of the request. Ensure that you have published the\n required DNS record(s).

      \n
    • \n
    • \n

      \n SERVICE_ERROR – A temporary issue is preventing Amazon SES from\n determining the verification status of the domain.

      \n
    • \n
    • \n

      \n DNS_SERVER_ERROR – The DNS server encountered an issue and\n was unable to complete the request.

      \n
    • \n
    • \n

      \n REPLICATION_ACCESS_DENIED – The verification failed because the user does not\n have the required permissions to replicate the DKIM key from the primary region. Ensure you have the\n necessary permissions in both primary and replica regions.\n

      \n
    • \n
    • \n

      \n REPLICATION_PRIMARY_NOT_FOUND – The verification failed because no corresponding\n identity was found in the specified primary region. Ensure the identity exists in the primary region\n before attempting replication.\n

      \n
    • \n
    • \n

      \n REPLICATION_PRIMARY_BYO_DKIM_NOT_SUPPORTED – The verification failed because the\n identity in the primary region is configured with Bring Your Own DKIM (BYODKIM). DKIM key\n replication is only supported for identities using Easy DKIM.\n

      \n
    • \n
    • \n

      \n REPLICATION_REPLICA_AS_PRIMARY_NOT_SUPPORTED – The verification failed because\n the specified primary identity is a replica of another identity, and multi-level replication is not\n supported; the primary identity must be a non-replica identity.\n

      \n
    • \n
    • \n

      \n REPLICATION_PRIMARY_INVALID_REGION – The verification failed due to an invalid\n primary region specified. Ensure you provide a valid AWS region where Amazon SES is available and different\n from the replica region.\n

      \n
    • \n
    " + "smithy.api#documentation": "

    Provides the reason for the failure describing why Amazon SES was not able to successfully\n verify the identity. Below are the possible values:

    \n
      \n
    • \n

      \n INVALID_VALUE – Amazon SES was able to find the record, but the\n value contained within the record was invalid. Ensure you have published the\n correct values for the record.

      \n
    • \n
    • \n

      \n TYPE_NOT_FOUND – The queried hostname exists but does not\n have the requested type of DNS record. Ensure that you have published the\n correct type of DNS record.

      \n
    • \n
    • \n

      \n HOST_NOT_FOUND – The queried hostname does not exist or was\n not reachable at the time of the request. Ensure that you have published the\n required DNS record(s).

      \n
    • \n
    • \n

      \n SERVICE_ERROR – A temporary issue is preventing Amazon SES from\n determining the verification status of the domain.

      \n
    • \n
    • \n

      \n DNS_SERVER_ERROR – The DNS server encountered an issue and\n was unable to complete the request.

      \n
    • \n
    • \n

      \n REPLICATION_ACCESS_DENIED – The verification failed because the user does not\n have the required permissions to replicate the DKIM key from the primary region. Ensure you have the\n necessary permissions in both primary and replica regions.\n

      \n
    • \n
    • \n

      \n REPLICATION_PRIMARY_NOT_FOUND – The verification failed because no corresponding\n identity was found in the specified primary region. Ensure the identity exists in the primary region\n before attempting replication.\n

      \n
    • \n
    • \n

      \n REPLICATION_PRIMARY_BYO_DKIM_NOT_SUPPORTED – The verification failed because the\n identity in the primary region is configured with Bring Your Own DKIM (BYODKIM). DKIM key\n replication is only supported for identities using Easy DKIM.\n

      \n
    • \n
    • \n

      \n REPLICATION_REPLICA_AS_PRIMARY_NOT_SUPPORTED – The verification failed because\n the specified primary identity is a replica of another identity, and multi-level replication is not\n supported; the primary identity must be a non-replica identity.\n

      \n
    • \n
    • \n

      \n REPLICATION_PRIMARY_INVALID_REGION – The verification failed due to an invalid\n primary region specified. Ensure you provide a valid Amazon Web Services region where Amazon SES is available and different\n from the replica region.\n

      \n
    • \n
    " } }, "SOARecord": {