putConfigurationSetDeliveryOptions method

Future<void> putConfigurationSetDeliveryOptions({
  1. required String configurationSetName,
  2. int? maxDeliverySeconds,
  3. String? sendingPoolName,
  4. TlsPolicy? tlsPolicy,
})

Associate a configuration set with a dedicated IP pool. You can use dedicated IP pools to create groups of dedicated IP addresses for sending specific types of email.

May throw BadRequestException. May throw NotFoundException. May throw TooManyRequestsException.

Parameter configurationSetName : The name of the configuration set to associate with a dedicated IP pool.

Parameter maxDeliverySeconds : The maximum amount of time, in seconds, that Amazon SES API v2 will attempt delivery of email. If specified, the value must greater than or equal to 300 seconds (5 minutes) and less than or equal to 50400 seconds (840 minutes).

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

Parameter tlsPolicy : 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.

Implementation

Future<void> putConfigurationSetDeliveryOptions({
  required String configurationSetName,
  int? maxDeliverySeconds,
  String? sendingPoolName,
  TlsPolicy? tlsPolicy,
}) async {
  _s.validateNumRange(
    'maxDeliverySeconds',
    maxDeliverySeconds,
    300,
    50400,
  );
  final $payload = <String, dynamic>{
    if (maxDeliverySeconds != null) 'MaxDeliverySeconds': maxDeliverySeconds,
    if (sendingPoolName != null) 'SendingPoolName': sendingPoolName,
    if (tlsPolicy != null) 'TlsPolicy': tlsPolicy.value,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'PUT',
    requestUri:
        '/v2/email/configuration-sets/${Uri.encodeComponent(configurationSetName)}/delivery-options',
    exceptionFnMap: _exceptionFns,
  );
}