SDK for PHP 3.x

Client: Aws\PinpointSMSVoiceV2\PinpointSMSVoiceV2Client
Service ID: pinpoint-sms-voice-v2
Version: 2022-03-31

This page describes the parameters and results for the operations of the Amazon Pinpoint SMS Voice V2 (2022-03-31), and shows how to use the Aws\PinpointSMSVoiceV2\PinpointSMSVoiceV2Client object to call the described operations. This documentation is specific to the 2022-03-31 API version of the service.

Operation Summary

Each of the following operations can be created from a client using $client->getCommand('CommandName'), where "CommandName" is the name of one of the following operations. Note: a command is a value that encapsulates an operation and the parameters used to create an HTTP request.

You can also create and send a command immediately using the magic methods available on a client object: $client->commandName(/* parameters */). You can send the command asynchronously (returning a promise) by appending the word "Async" to the operation name: $client->commandNameAsync(/* parameters */).

AssociateOriginationIdentity ( array $params = [] )
Associates the specified origination identity with a pool.
AssociateProtectConfiguration ( array $params = [] )
Associate a protect configuration with a configuration set.
CreateConfigurationSet ( array $params = [] )
Creates a new configuration set.
CreateEventDestination ( array $params = [] )
Creates a new event destination in a configuration set.
CreateOptOutList ( array $params = [] )
Creates a new opt-out list.
CreatePool ( array $params = [] )
Creates a new pool and associates the specified origination identity to the pool.
CreateProtectConfiguration ( array $params = [] )
Create a new protect configuration.
CreateRegistration ( array $params = [] )
Creates a new registration based on the RegistrationType field.
CreateRegistrationAssociation ( array $params = [] )
Associate the registration with an origination identity such as a phone number or sender ID.
CreateRegistrationAttachment ( array $params = [] )
Create a new registration attachment to use for uploading a file or a URL to a file.
CreateRegistrationVersion ( array $params = [] )
Create a new version of the registration and increase the VersionNumber.
CreateVerifiedDestinationNumber ( array $params = [] )
You can only send messages to verified destination numbers when your account is in the sandbox.
DeleteAccountDefaultProtectConfiguration ( array $params = [] )
Removes the current account default protect configuration.
DeleteConfigurationSet ( array $params = [] )
Deletes an existing configuration set.
DeleteDefaultMessageType ( array $params = [] )
Deletes an existing default message type on a configuration set.
DeleteDefaultSenderId ( array $params = [] )
Deletes an existing default sender ID on a configuration set.
DeleteEventDestination ( array $params = [] )
Deletes an existing event destination.
DeleteKeyword ( array $params = [] )
Deletes an existing keyword from an origination phone number or pool.
DeleteMediaMessageSpendLimitOverride ( array $params = [] )
Deletes an account-level monthly spending limit override for sending multimedia messages (MMS).
DeleteOptOutList ( array $params = [] )
Deletes an existing opt-out list.
DeleteOptedOutNumber ( array $params = [] )
Deletes an existing opted out destination phone number from the specified opt-out list.
DeletePool ( array $params = [] )
Deletes an existing pool.
DeleteProtectConfiguration ( array $params = [] )
Permanently delete the protect configuration.
DeleteRegistration ( array $params = [] )
Permanently delete an existing registration from your account.
DeleteRegistrationAttachment ( array $params = [] )
Permanently delete the specified registration attachment.
DeleteRegistrationFieldValue ( array $params = [] )
Delete the value in a registration form field.
DeleteResourcePolicy ( array $params = [] )
Deletes the resource-based policy document attached to the AWS End User Messaging SMS and Voice resource.
DeleteTextMessageSpendLimitOverride ( array $params = [] )
Deletes an account-level monthly spending limit override for sending text messages.
DeleteVerifiedDestinationNumber ( array $params = [] )
Delete a verified destination phone number.
DeleteVoiceMessageSpendLimitOverride ( array $params = [] )
Deletes an account level monthly spend limit override for sending voice messages.
DescribeAccountAttributes ( array $params = [] )
Describes attributes of your Amazon Web Services account.
DescribeAccountLimits ( array $params = [] )
Describes the current AWS End User Messaging SMS and Voice SMS Voice V2 resource quotas for your account.
DescribeConfigurationSets ( array $params = [] )
Describes the specified configuration sets or all in your account.
DescribeKeywords ( array $params = [] )
Describes the specified keywords or all keywords on your origination phone number or pool.
DescribeOptOutLists ( array $params = [] )
Describes the specified opt-out list or all opt-out lists in your account.
DescribeOptedOutNumbers ( array $params = [] )
Describes the specified opted out destination numbers or all opted out destination numbers in an opt-out list.
DescribePhoneNumbers ( array $params = [] )
Describes the specified origination phone number, or all the phone numbers in your account.
DescribePools ( array $params = [] )
Retrieves the specified pools or all pools associated with your Amazon Web Services account.
DescribeProtectConfigurations ( array $params = [] )
Retrieves the protect configurations that match any of filters.
DescribeRegistrationAttachments ( array $params = [] )
Retrieves the specified registration attachments or all registration attachments associated with your Amazon Web Services account.
DescribeRegistrationFieldDefinitions ( array $params = [] )
Retrieves the specified registration type field definitions.
DescribeRegistrationFieldValues ( array $params = [] )
Retrieves the specified registration field values.
DescribeRegistrationSectionDefinitions ( array $params = [] )
Retrieves the specified registration section definitions.
DescribeRegistrationTypeDefinitions ( array $params = [] )
Retrieves the specified registration type definitions.
DescribeRegistrationVersions ( array $params = [] )
Retrieves the specified registration version.
DescribeRegistrations ( array $params = [] )
Retrieves the specified registrations.
DescribeSenderIds ( array $params = [] )
Describes the specified SenderIds or all SenderIds associated with your Amazon Web Services account.
DescribeSpendLimits ( array $params = [] )
Describes the current monthly spend limits for sending voice and text messages.
DescribeVerifiedDestinationNumbers ( array $params = [] )
Retrieves the specified verified destiona numbers.
DisassociateOriginationIdentity ( array $params = [] )
Removes the specified origination identity from an existing pool.
DisassociateProtectConfiguration ( array $params = [] )
Disassociate a protect configuration from a configuration set.
DiscardRegistrationVersion ( array $params = [] )
Discard the current version of the registration.
GetProtectConfigurationCountryRuleSet ( array $params = [] )
Retrieve the CountryRuleSet for the specified NumberCapability from a protect configuration.
GetResourcePolicy ( array $params = [] )
Retrieves the JSON text of the resource-based policy document attached to the AWS End User Messaging SMS and Voice resource.
ListPoolOriginationIdentities ( array $params = [] )
Lists all associated origination identities in your pool.
ListRegistrationAssociations ( array $params = [] )
Retreive all of the origination identies that are associated with a registration.
ListTagsForResource ( array $params = [] )
List all tags associated with a resource.
PutKeyword ( array $params = [] )
Creates or updates a keyword configuration on an origination phone number or pool.
PutOptedOutNumber ( array $params = [] )
Creates an opted out destination phone number in the opt-out list.
PutRegistrationFieldValue ( array $params = [] )
Creates or updates a field value for a registration.
PutResourcePolicy ( array $params = [] )
Attaches a resource-based policy to a AWS End User Messaging SMS and Voice resource(phone number, sender Id, phone poll, or opt-out list) that is used for sharing the resource.
ReleasePhoneNumber ( array $params = [] )
Releases an existing origination phone number in your account.
ReleaseSenderId ( array $params = [] )
Releases an existing sender ID in your account.
RequestPhoneNumber ( array $params = [] )
Request an origination phone number for use in your account.
RequestSenderId ( array $params = [] )
Request a new sender ID that doesn't require registration.
SendDestinationNumberVerificationCode ( array $params = [] )
Before you can send test messages to a verified destination phone number you need to opt-in the verified destination phone number.
SendMediaMessage ( array $params = [] )
Creates a new multimedia message (MMS) and sends it to a recipient's phone number.
SendTextMessage ( array $params = [] )
Creates a new text message and sends it to a recipient's phone number.
SendVoiceMessage ( array $params = [] )
Allows you to send a request that sends a voice message.
SetAccountDefaultProtectConfiguration ( array $params = [] )
Set a protect configuration as your account default.
SetDefaultMessageType ( array $params = [] )
Sets the default message type on a configuration set.
SetDefaultSenderId ( array $params = [] )
Sets default sender ID on a configuration set.
SetMediaMessageSpendLimitOverride ( array $params = [] )
Sets an account level monthly spend limit override for sending MMS messages.
SetTextMessageSpendLimitOverride ( array $params = [] )
Sets an account level monthly spend limit override for sending text messages.
SetVoiceMessageSpendLimitOverride ( array $params = [] )
Sets an account level monthly spend limit override for sending voice messages.
SubmitRegistrationVersion ( array $params = [] )
Submit the specified registration for review and approval.
TagResource ( array $params = [] )
Adds or overwrites only the specified tags for the specified resource.
UntagResource ( array $params = [] )
Removes the association of the specified tags from a resource.
UpdateEventDestination ( array $params = [] )
Updates an existing event destination in a configuration set.
UpdatePhoneNumber ( array $params = [] )
Updates the configuration of an existing origination phone number.
UpdatePool ( array $params = [] )
Updates the configuration of an existing pool.
UpdateProtectConfiguration ( array $params = [] )
Update the setting for an existing protect configuration.
UpdateProtectConfigurationCountryRuleSet ( array $params = [] )
Update a country rule set to ALLOW or BLOCK messages to be sent to the specified destination counties.
UpdateSenderId ( array $params = [] )
Updates the configuration of an existing sender ID.
VerifyDestinationNumber ( array $params = [] )
Use the verification code that was received by the verified destination phone number to opt-in the verified destination phone number to receive more messages.

Paginators

Paginators handle automatically iterating over paginated API results. Paginators are associated with specific API operations, and they accept the parameters that the corresponding API operation accepts. You can get a paginator from a client class using getPaginator($paginatorName, $operationParameters). This client supports the following paginators:

DescribeAccountAttributes
DescribeAccountLimits
DescribeConfigurationSets
DescribeKeywords
DescribeOptOutLists
DescribeOptedOutNumbers
DescribePhoneNumbers
DescribePools
DescribeProtectConfigurations
DescribeRegistrationAttachments
DescribeRegistrationFieldDefinitions
DescribeRegistrationFieldValues
DescribeRegistrationSectionDefinitions
DescribeRegistrationTypeDefinitions
DescribeRegistrationVersions
DescribeRegistrations
DescribeSenderIds
DescribeSpendLimits
DescribeVerifiedDestinationNumbers
ListPoolOriginationIdentities
ListRegistrationAssociations

Operations

AssociateOriginationIdentity

$result = $client->associateOriginationIdentity([/* ... */]);
$promise = $client->associateOriginationIdentityAsync([/* ... */]);

Associates the specified origination identity with a pool.

If the origination identity is a phone number and is already associated with another pool, an error is returned. A sender ID can be associated with multiple pools.

If the origination identity configuration doesn't match the pool's configuration, an error is returned.

Parameter Syntax

$result = $client->associateOriginationIdentity([
    'ClientToken' => '<string>',
    'IsoCountryCode' => '<string>', // REQUIRED
    'OriginationIdentity' => '<string>', // REQUIRED
    'PoolId' => '<string>', // REQUIRED
]);

Parameter Details

Members
ClientToken
Type: string

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

IsoCountryCode
Required: Yes
Type: string

The new two-character code, in ISO 3166-1 alpha-2 format, for the country or region of the origination identity.

OriginationIdentity
Required: Yes
Type: string

The origination identity to use, such as PhoneNumberId, PhoneNumberArn, SenderId, or SenderIdArn. You can use DescribePhoneNumbers to find the values for PhoneNumberId and PhoneNumberArn, while DescribeSenderIds can be used to get the values for SenderId and SenderIdArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

PoolId
Required: Yes
Type: string

The pool to update with the new Identity. This value can be either the PoolId or PoolArn, and you can find these values using DescribePools.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

Result Syntax

[
    'IsoCountryCode' => '<string>',
    'OriginationIdentity' => '<string>',
    'OriginationIdentityArn' => '<string>',
    'PoolArn' => '<string>',
    'PoolId' => '<string>',
]

Result Details

Members
IsoCountryCode
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

OriginationIdentity
Type: string

The PhoneNumberId or SenderId of the origination identity.

OriginationIdentityArn
Type: string

The PhoneNumberArn or SenderIdArn of the origination identity.

PoolArn
Type: string

The Amazon Resource Name (ARN) of the pool that is now associated with the origination identity.

PoolId
Type: string

The PoolId of the pool that is now associated with the origination identity.

Errors

ServiceQuotaExceededException:

The request would cause a service quota to be exceeded.

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

AssociateProtectConfiguration

$result = $client->associateProtectConfiguration([/* ... */]);
$promise = $client->associateProtectConfigurationAsync([/* ... */]);

Associate a protect configuration with a configuration set. This replaces the configuration sets current protect configuration. A configuration set can only be associated with one protect configuration at a time. A protect configuration can be associated with multiple configuration sets.

Parameter Syntax

$result = $client->associateProtectConfiguration([
    'ConfigurationSetName' => '<string>', // REQUIRED
    'ProtectConfigurationId' => '<string>', // REQUIRED
]);

Parameter Details

Members
ConfigurationSetName
Required: Yes
Type: string

The name of the ConfigurationSet.

ProtectConfigurationId
Required: Yes
Type: string

The unique identifier for the protect configuration.

Result Syntax

[
    'ConfigurationSetArn' => '<string>',
    'ConfigurationSetName' => '<string>',
    'ProtectConfigurationArn' => '<string>',
    'ProtectConfigurationId' => '<string>',
]

Result Details

Members
ConfigurationSetArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the configuration set.

ConfigurationSetName
Required: Yes
Type: string

The name of the ConfigurationSet.

ProtectConfigurationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the protect configuration.

ProtectConfigurationId
Required: Yes
Type: string

The unique identifier for the protect configuration.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

CreateConfigurationSet

$result = $client->createConfigurationSet([/* ... */]);
$promise = $client->createConfigurationSetAsync([/* ... */]);

Creates a new configuration set. After you create the configuration set, you can add one or more event destinations to it.

A configuration set is a set of rules that you apply to the SMS and voice messages that you send.

When you send a message, you can optionally specify a single configuration set.

Parameter Syntax

$result = $client->createConfigurationSet([
    'ClientToken' => '<string>',
    'ConfigurationSetName' => '<string>', // REQUIRED
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
ClientToken
Type: string

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

ConfigurationSetName
Required: Yes
Type: string

The name to use for the new configuration set.

Tags
Type: Array of Tag structures

An array of key and value pair tags that's associated with the new configuration set.

Result Syntax

[
    'ConfigurationSetArn' => '<string>',
    'ConfigurationSetName' => '<string>',
    'CreatedTimestamp' => <DateTime>,
    'Tags' => [
        [
            'Key' => '<string>',
            'Value' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
ConfigurationSetArn
Type: string

The Amazon Resource Name (ARN) of the newly created configuration set.

ConfigurationSetName
Type: string

The name of the new configuration set.

CreatedTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the configuration set was created, in UNIX epoch time format.

Tags
Type: Array of Tag structures

An array of key and value pair tags that's associated with the configuration set.

Errors

ServiceQuotaExceededException:

The request would cause a service quota to be exceeded.

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

CreateEventDestination

$result = $client->createEventDestination([/* ... */]);
$promise = $client->createEventDestinationAsync([/* ... */]);

Creates a new event destination in a configuration set.

An event destination is a location where you send message events. The event options are Amazon CloudWatch, Amazon Data Firehose, or Amazon SNS. For example, when a message is delivered successfully, you can send information about that event to an event destination, or send notifications to endpoints that are subscribed to an Amazon SNS topic.

Each configuration set can contain between 0 and 5 event destinations. Each event destination can contain a reference to a single destination, such as a CloudWatch or Firehose destination.

Parameter Syntax

$result = $client->createEventDestination([
    'ClientToken' => '<string>',
    'CloudWatchLogsDestination' => [
        'IamRoleArn' => '<string>', // REQUIRED
        'LogGroupArn' => '<string>', // REQUIRED
    ],
    'ConfigurationSetName' => '<string>', // REQUIRED
    'EventDestinationName' => '<string>', // REQUIRED
    'KinesisFirehoseDestination' => [
        'DeliveryStreamArn' => '<string>', // REQUIRED
        'IamRoleArn' => '<string>', // REQUIRED
    ],
    'MatchingEventTypes' => ['<string>', ...], // REQUIRED
    'SnsDestination' => [
        'TopicArn' => '<string>', // REQUIRED
    ],
]);

Parameter Details

Members
ClientToken
Type: string

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

CloudWatchLogsDestination
Type: CloudWatchLogsDestination structure

An object that contains information about an event destination for logging to Amazon CloudWatch Logs.

ConfigurationSetName
Required: Yes
Type: string

Either the name of the configuration set or the configuration set ARN to apply event logging to. The ConfigurateSetName and ConfigurationSetArn can be found using the DescribeConfigurationSets action.

EventDestinationName
Required: Yes
Type: string

The name that identifies the event destination.

KinesisFirehoseDestination
Type: KinesisFirehoseDestination structure

An object that contains information about an event destination for logging to Amazon Data Firehose.

MatchingEventTypes
Required: Yes
Type: Array of strings

An array of event types that determine which events to log. If "ALL" is used, then AWS End User Messaging SMS and Voice logs every event type.

The TEXT_SENT event type is not supported.

SnsDestination
Type: SnsDestination structure

An object that contains information about an event destination for logging to Amazon SNS.

Result Syntax

[
    'ConfigurationSetArn' => '<string>',
    'ConfigurationSetName' => '<string>',
    'EventDestination' => [
        'CloudWatchLogsDestination' => [
            'IamRoleArn' => '<string>',
            'LogGroupArn' => '<string>',
        ],
        'Enabled' => true || false,
        'EventDestinationName' => '<string>',
        'KinesisFirehoseDestination' => [
            'DeliveryStreamArn' => '<string>',
            'IamRoleArn' => '<string>',
        ],
        'MatchingEventTypes' => ['<string>', ...],
        'SnsDestination' => [
            'TopicArn' => '<string>',
        ],
    ],
]

Result Details

Members
ConfigurationSetArn
Type: string

The ARN of the configuration set.

ConfigurationSetName
Type: string

The name of the configuration set.

EventDestination
Type: EventDestination structure

The details of the destination where events are logged.

Errors

ServiceQuotaExceededException:

The request would cause a service quota to be exceeded.

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

CreateOptOutList

$result = $client->createOptOutList([/* ... */]);
$promise = $client->createOptOutListAsync([/* ... */]);

Creates a new opt-out list.

If the opt-out list name already exists, an error is returned.

An opt-out list is a list of phone numbers that are opted out, meaning you can't send SMS or voice messages to them. If end user replies with the keyword "STOP," an entry for the phone number is added to the opt-out list. In addition to STOP, your recipients can use any supported opt-out keyword, such as CANCEL or OPTOUT. For a list of supported opt-out keywords, see SMS opt out in the AWS End User Messaging SMS User Guide.

Parameter Syntax

$result = $client->createOptOutList([
    'ClientToken' => '<string>',
    'OptOutListName' => '<string>', // REQUIRED
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
ClientToken
Type: string

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

OptOutListName
Required: Yes
Type: string

The name of the new OptOutList.

Tags
Type: Array of Tag structures

An array of tags (key and value pairs) to associate with the new OptOutList.

Result Syntax

[
    'CreatedTimestamp' => <DateTime>,
    'OptOutListArn' => '<string>',
    'OptOutListName' => '<string>',
    'Tags' => [
        [
            'Key' => '<string>',
            'Value' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
CreatedTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the pool was created, in UNIX epoch time format.

OptOutListArn
Type: string

The Amazon Resource Name (ARN) for the OptOutList.

OptOutListName
Type: string

The name of the new OptOutList.

Tags
Type: Array of Tag structures

An array of tags (key and value pairs) associated with the new OptOutList.

Errors

ServiceQuotaExceededException:

The request would cause a service quota to be exceeded.

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

CreatePool

$result = $client->createPool([/* ... */]);
$promise = $client->createPoolAsync([/* ... */]);

Creates a new pool and associates the specified origination identity to the pool. A pool can include one or more phone numbers and SenderIds that are associated with your Amazon Web Services account.

The new pool inherits its configuration from the specified origination identity. This includes keywords, message type, opt-out list, two-way configuration, and self-managed opt-out configuration. Deletion protection isn't inherited from the origination identity and defaults to false.

If the origination identity is a phone number and is already associated with another pool, an error is returned. A sender ID can be associated with multiple pools.

Parameter Syntax

$result = $client->createPool([
    'ClientToken' => '<string>',
    'DeletionProtectionEnabled' => true || false,
    'IsoCountryCode' => '<string>', // REQUIRED
    'MessageType' => 'TRANSACTIONAL|PROMOTIONAL', // REQUIRED
    'OriginationIdentity' => '<string>', // REQUIRED
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
ClientToken
Type: string

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

DeletionProtectionEnabled
Type: boolean

By default this is set to false. When set to true the pool can't be deleted. You can change this value using the UpdatePool action.

IsoCountryCode
Required: Yes
Type: string

The new two-character code, in ISO 3166-1 alpha-2 format, for the country or region of the new pool.

MessageType
Required: Yes
Type: string

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive. After the pool is created the MessageType can't be changed.

OriginationIdentity
Required: Yes
Type: string

The origination identity to use such as a PhoneNumberId, PhoneNumberArn, SenderId or SenderIdArn. You can use DescribePhoneNumbers to find the values for PhoneNumberId and PhoneNumberArn while DescribeSenderIds can be used to get the values for SenderId and SenderIdArn.

After the pool is created you can add more origination identities to the pool by using AssociateOriginationIdentity.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

Tags
Type: Array of Tag structures

An array of tags (key and value pairs) associated with the pool.

Result Syntax

[
    'CreatedTimestamp' => <DateTime>,
    'DeletionProtectionEnabled' => true || false,
    'MessageType' => 'TRANSACTIONAL|PROMOTIONAL',
    'OptOutListName' => '<string>',
    'PoolArn' => '<string>',
    'PoolId' => '<string>',
    'SelfManagedOptOutsEnabled' => true || false,
    'SharedRoutesEnabled' => true || false,
    'Status' => 'CREATING|ACTIVE|DELETING',
    'Tags' => [
        [
            'Key' => '<string>',
            'Value' => '<string>',
        ],
        // ...
    ],
    'TwoWayChannelArn' => '<string>',
    'TwoWayChannelRole' => '<string>',
    'TwoWayEnabled' => true || false,
]

Result Details

Members
CreatedTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the pool was created, in UNIX epoch time format.

DeletionProtectionEnabled
Type: boolean

When set to true deletion protection is enabled. By default this is set to false.

MessageType
Type: string

The type of message for the pool to use.

OptOutListName
Type: string

The name of the OptOutList associated with the pool.

PoolArn
Type: string

The Amazon Resource Name (ARN) for the pool.

PoolId
Type: string

The unique identifier for the pool.

SelfManagedOptOutsEnabled
Type: boolean

By default this is set to false. When an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, AWS End User Messaging SMS and Voice automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.

SharedRoutesEnabled
Type: boolean

Indicates whether shared routes are enabled for the pool. Set to false and only origination identities in this pool are used to send messages.

Status
Type: string

The current status of the pool.

  • CREATING: The pool is currently being created and isn't yet available for use.

  • ACTIVE: The pool is active and available for use.

  • DELETING: The pool is being deleted.

Tags
Type: Array of Tag structures

An array of tags (key and value pairs) associated with the pool.

TwoWayChannelArn
Type: string

The Amazon Resource Name (ARN) of the two way channel.

TwoWayChannelRole
Type: string

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

TwoWayEnabled
Type: boolean

By default this is set to false. When set to true you can receive incoming text messages from your end recipients.

Errors

ServiceQuotaExceededException:

The request would cause a service quota to be exceeded.

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

CreateProtectConfiguration

$result = $client->createProtectConfiguration([/* ... */]);
$promise = $client->createProtectConfigurationAsync([/* ... */]);

Create a new protect configuration. By default all country rule sets for each capability are set to ALLOW. Update the country rule sets using UpdateProtectConfigurationCountryRuleSet. A protect configurations name is stored as a Tag with the key set to Name and value as the name of the protect configuration.

Parameter Syntax

$result = $client->createProtectConfiguration([
    'ClientToken' => '<string>',
    'DeletionProtectionEnabled' => true || false,
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
ClientToken
Type: string

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

DeletionProtectionEnabled
Type: boolean

When set to true deletion protection is enabled. By default this is set to false.

Tags
Type: Array of Tag structures

An array of key and value pair tags that are associated with the resource.

Result Syntax

[
    'AccountDefault' => true || false,
    'CreatedTimestamp' => <DateTime>,
    'DeletionProtectionEnabled' => true || false,
    'ProtectConfigurationArn' => '<string>',
    'ProtectConfigurationId' => '<string>',
    'Tags' => [
        [
            'Key' => '<string>',
            'Value' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
AccountDefault
Required: Yes
Type: boolean

This is true if the protect configuration is set as your account default protect configuration.

CreatedTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the protect configuration was created, in UNIX epoch time format.

DeletionProtectionEnabled
Required: Yes
Type: boolean

When set to true deletion protection is enabled. By default this is set to false.

ProtectConfigurationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the protect configuration.

ProtectConfigurationId
Required: Yes
Type: string

The unique identifier for the protect configuration.

Tags
Type: Array of Tag structures

An array of key and value pair tags that are associated with the resource.

Errors

ServiceQuotaExceededException:

The request would cause a service quota to be exceeded.

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

CreateRegistration

$result = $client->createRegistration([/* ... */]);
$promise = $client->createRegistrationAsync([/* ... */]);

Creates a new registration based on the RegistrationType field.

Parameter Syntax

$result = $client->createRegistration([
    'ClientToken' => '<string>',
    'RegistrationType' => '<string>', // REQUIRED
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
ClientToken
Type: string

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

RegistrationType
Required: Yes
Type: string

The type of registration form to create. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

Tags
Type: Array of Tag structures

An array of tags (key and value pairs) to associate with the registration.

Result Syntax

[
    'AdditionalAttributes' => ['<string>', ...],
    'CreatedTimestamp' => <DateTime>,
    'CurrentVersionNumber' => <integer>,
    'RegistrationArn' => '<string>',
    'RegistrationId' => '<string>',
    'RegistrationStatus' => 'CREATED|SUBMITTED|REVIEWING|REQUIRES_AUTHENTICATION|PROVISIONING|COMPLETE|REQUIRES_UPDATES|CLOSED|DELETED',
    'RegistrationType' => '<string>',
    'Tags' => [
        [
            'Key' => '<string>',
            'Value' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
AdditionalAttributes
Type: Associative array of custom strings keys (String) to strings

Metadata about a given registration which is specific to that registration type.

CreatedTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the registration was created, in UNIX epoch time format.

CurrentVersionNumber
Required: Yes
Type: long (int|float)

The current version number of the registration.

RegistrationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the registration.

RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

RegistrationStatus
Required: Yes
Type: string

The status of the registration.

  • CREATED: Your registration is created but not submitted.

  • SUBMITTED: Your registration has been submitted and is awaiting review.

  • REVIEWING: Your registration has been accepted and is being reviewed.

  • PROVISIONING: Your registration has been approved and your origination identity is being created.

  • COMPLETE: Your registration has been approved and and your origination identity has been created.

  • REQUIRES_UPDATES: You must fix your registration and resubmit it.

  • CLOSED: The phone number or sender ID has been deleted and you must also delete the registration for the number.

  • DELETED: The registration has been deleted.

RegistrationType
Required: Yes
Type: string

The type of registration form to create. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

Tags
Type: Array of Tag structures

An array of tags (key and value pairs) to associate with the registration.

Errors

ServiceQuotaExceededException:

The request would cause a service quota to be exceeded.

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

CreateRegistrationAssociation

$result = $client->createRegistrationAssociation([/* ... */]);
$promise = $client->createRegistrationAssociationAsync([/* ... */]);

Associate the registration with an origination identity such as a phone number or sender ID.

Parameter Syntax

$result = $client->createRegistrationAssociation([
    'RegistrationId' => '<string>', // REQUIRED
    'ResourceId' => '<string>', // REQUIRED
]);

Parameter Details

Members
RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

ResourceId
Required: Yes
Type: string

The unique identifier for the origination identity. For example this could be a PhoneNumberId or SenderId.

Result Syntax

[
    'IsoCountryCode' => '<string>',
    'PhoneNumber' => '<string>',
    'RegistrationArn' => '<string>',
    'RegistrationId' => '<string>',
    'RegistrationType' => '<string>',
    'ResourceArn' => '<string>',
    'ResourceId' => '<string>',
    'ResourceType' => '<string>',
]

Result Details

Members
IsoCountryCode
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

PhoneNumber
Type: string

The phone number associated with the registration in E.164 format.

RegistrationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the registration.

RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

RegistrationType
Required: Yes
Type: string

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

ResourceArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the origination identity that is associated with the registration.

ResourceId
Required: Yes
Type: string

The unique identifier for the origination identity. For example this could be a PhoneNumberId or SenderId.

ResourceType
Required: Yes
Type: string

The registration type or origination identity type.

Errors

ServiceQuotaExceededException:

The request would cause a service quota to be exceeded.

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

CreateRegistrationAttachment

$result = $client->createRegistrationAttachment([/* ... */]);
$promise = $client->createRegistrationAttachmentAsync([/* ... */]);

Create a new registration attachment to use for uploading a file or a URL to a file. The maximum file size is 500KB and valid file extensions are PDF, JPEG and PNG. For example, many sender ID registrations require a signed “letter of authorization” (LOA) to be submitted.

Use either AttachmentUrl or AttachmentBody to upload your attachment. If both are specified then an exception is returned.

Parameter Syntax

$result = $client->createRegistrationAttachment([
    'AttachmentBody' => <string || resource || Psr\Http\Message\StreamInterface>,
    'AttachmentUrl' => '<string>',
    'ClientToken' => '<string>',
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
AttachmentBody
Type: blob (string|resource|Psr\Http\Message\StreamInterface)

The registration file to upload. The maximum file size is 500KB and valid file extensions are PDF, JPEG and PNG.

AttachmentUrl
Type: string

Registration files have to be stored in an Amazon S3 bucket. The URI to use when sending is in the format s3://BucketName/FileName.

ClientToken
Type: string

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

Tags
Type: Array of Tag structures

An array of tags (key and value pairs) to associate with the registration attachment.

Result Syntax

[
    'AttachmentStatus' => 'UPLOAD_IN_PROGRESS|UPLOAD_COMPLETE|UPLOAD_FAILED|DELETED',
    'CreatedTimestamp' => <DateTime>,
    'RegistrationAttachmentArn' => '<string>',
    'RegistrationAttachmentId' => '<string>',
    'Tags' => [
        [
            'Key' => '<string>',
            'Value' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
AttachmentStatus
Required: Yes
Type: string

The status of the registration attachment.

  • UPLOAD_IN_PROGRESS The attachment is being uploaded.

  • UPLOAD_COMPLETE The attachment has been uploaded.

  • UPLOAD_FAILED The attachment failed to uploaded.

  • DELETED The attachment has been deleted..

CreatedTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the registration attachment was created, in UNIX epoch time format.

RegistrationAttachmentArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the registration attachment.

RegistrationAttachmentId
Required: Yes
Type: string

The unique identifier for the registration attachment.

Tags
Type: Array of Tag structures

An array of tags (key and value pairs) to associate with the registration attachment.

Errors

ServiceQuotaExceededException:

The request would cause a service quota to be exceeded.

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

CreateRegistrationVersion

$result = $client->createRegistrationVersion([/* ... */]);
$promise = $client->createRegistrationVersionAsync([/* ... */]);

Create a new version of the registration and increase the VersionNumber. The previous version of the registration becomes read-only.

Parameter Syntax

$result = $client->createRegistrationVersion([
    'RegistrationId' => '<string>', // REQUIRED
]);

Parameter Details

Members
RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

Result Syntax

[
    'RegistrationArn' => '<string>',
    'RegistrationId' => '<string>',
    'RegistrationVersionStatus' => 'DRAFT|SUBMITTED|REVIEWING|REQUIRES_AUTHENTICATION|APPROVED|DISCARDED|DENIED|REVOKED|ARCHIVED',
    'RegistrationVersionStatusHistory' => [
        'ApprovedTimestamp' => <DateTime>,
        'ArchivedTimestamp' => <DateTime>,
        'DeniedTimestamp' => <DateTime>,
        'DiscardedTimestamp' => <DateTime>,
        'DraftTimestamp' => <DateTime>,
        'ReviewingTimestamp' => <DateTime>,
        'RevokedTimestamp' => <DateTime>,
        'SubmittedTimestamp' => <DateTime>,
    ],
    'VersionNumber' => <integer>,
]

Result Details

Members
RegistrationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the registration.

RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

RegistrationVersionStatus
Required: Yes
Type: string

The status of the registration.

  • DRAFT: The initial status of a registration version after it’s created.

  • SUBMITTED: Your registration has been submitted.

  • REVIEWING: Your registration has been accepted and is being reviewed.

  • APPROVED: Your registration has been approved.

  • DISCARDED: You've abandon this version of their registration to start over with a new version.

  • DENIED: You must fix your registration and resubmit it.

  • REVOKED: Your previously approved registration has been revoked.

  • ARCHIVED: Your previously approved registration version moves into this status when a more recently submitted version is approved.

RegistrationVersionStatusHistory
Required: Yes
Type: RegistrationVersionStatusHistory structure

A RegistrationVersionStatusHistory object that contains timestamps for the registration.

VersionNumber
Required: Yes
Type: long (int|float)

The new version number of the registration.

Errors

ServiceQuotaExceededException:

The request would cause a service quota to be exceeded.

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

CreateVerifiedDestinationNumber

$result = $client->createVerifiedDestinationNumber([/* ... */]);
$promise = $client->createVerifiedDestinationNumberAsync([/* ... */]);

You can only send messages to verified destination numbers when your account is in the sandbox. You can add up to 10 verified destination numbers.

Parameter Syntax

$result = $client->createVerifiedDestinationNumber([
    'ClientToken' => '<string>',
    'DestinationPhoneNumber' => '<string>', // REQUIRED
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
ClientToken
Type: string

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

DestinationPhoneNumber
Required: Yes
Type: string

The verified destination phone number, in E.164 format.

Tags
Type: Array of Tag structures

An array of tags (key and value pairs) to associate with the destination number.

Result Syntax

[
    'CreatedTimestamp' => <DateTime>,
    'DestinationPhoneNumber' => '<string>',
    'Status' => 'PENDING|VERIFIED',
    'Tags' => [
        [
            'Key' => '<string>',
            'Value' => '<string>',
        ],
        // ...
    ],
    'VerifiedDestinationNumberArn' => '<string>',
    'VerifiedDestinationNumberId' => '<string>',
]

Result Details

Members
CreatedTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the verified phone number was created, in UNIX epoch time format.

DestinationPhoneNumber
Required: Yes
Type: string

The verified destination phone number, in E.164 format.

Status
Required: Yes
Type: string

The status of the verified destination phone number.

  • PENDING: The phone number hasn't been verified yet.

  • VERIFIED: The phone number is verified and can receive messages.

Tags
Type: Array of Tag structures

An array of tags (key and value pairs) to associate with the destination number.

VerifiedDestinationNumberArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the verified destination phone number.

VerifiedDestinationNumberId
Required: Yes
Type: string

The unique identifier for the verified destination phone number.

Errors

ServiceQuotaExceededException:

The request would cause a service quota to be exceeded.

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DeleteAccountDefaultProtectConfiguration

$result = $client->deleteAccountDefaultProtectConfiguration([/* ... */]);
$promise = $client->deleteAccountDefaultProtectConfigurationAsync([/* ... */]);

Removes the current account default protect configuration.

Parameter Syntax

$result = $client->deleteAccountDefaultProtectConfiguration([
]);

Parameter Details

Members

Result Syntax

[
    'DefaultProtectConfigurationArn' => '<string>',
    'DefaultProtectConfigurationId' => '<string>',
]

Result Details

Members
DefaultProtectConfigurationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the account default protect configuration.

DefaultProtectConfigurationId
Required: Yes
Type: string

The unique identifier of the account default protect configuration.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DeleteConfigurationSet

$result = $client->deleteConfigurationSet([/* ... */]);
$promise = $client->deleteConfigurationSetAsync([/* ... */]);

Deletes an existing configuration set.

A configuration set is a set of rules that you apply to voice and SMS messages that you send. In a configuration set, you can specify a destination for specific types of events related to voice and SMS messages.

Parameter Syntax

$result = $client->deleteConfigurationSet([
    'ConfigurationSetName' => '<string>', // REQUIRED
]);

Parameter Details

Members
ConfigurationSetName
Required: Yes
Type: string

The name of the configuration set or the configuration set ARN that you want to delete. The ConfigurationSetName and ConfigurationSetArn can be found using the DescribeConfigurationSets action.

Result Syntax

[
    'ConfigurationSetArn' => '<string>',
    'ConfigurationSetName' => '<string>',
    'CreatedTimestamp' => <DateTime>,
    'DefaultMessageType' => 'TRANSACTIONAL|PROMOTIONAL',
    'DefaultSenderId' => '<string>',
    'EventDestinations' => [
        [
            'CloudWatchLogsDestination' => [
                'IamRoleArn' => '<string>',
                'LogGroupArn' => '<string>',
            ],
            'Enabled' => true || false,
            'EventDestinationName' => '<string>',
            'KinesisFirehoseDestination' => [
                'DeliveryStreamArn' => '<string>',
                'IamRoleArn' => '<string>',
            ],
            'MatchingEventTypes' => ['<string>', ...],
            'SnsDestination' => [
                'TopicArn' => '<string>',
            ],
        ],
        // ...
    ],
]

Result Details

Members
ConfigurationSetArn
Type: string

The Amazon Resource Name (ARN) of the deleted configuration set.

ConfigurationSetName
Type: string

The name of the deleted configuration set.

CreatedTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time that the deleted configuration set was created in UNIX epoch time format.

DefaultMessageType
Type: string

The default message type of the configuration set that was deleted.

DefaultSenderId
Type: string

The default Sender ID of the configuration set that was deleted.

EventDestinations
Type: Array of EventDestination structures

An array of any EventDestination objects that were associated with the deleted configuration set.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DeleteDefaultMessageType

$result = $client->deleteDefaultMessageType([/* ... */]);
$promise = $client->deleteDefaultMessageTypeAsync([/* ... */]);

Deletes an existing default message type on a configuration set.

A message type is a type of messages that you plan to send. If you send account-related messages or time-sensitive messages such as one-time passcodes, choose Transactional. If you plan to send messages that contain marketing material or other promotional content, choose Promotional. This setting applies to your entire Amazon Web Services account.

Parameter Syntax

$result = $client->deleteDefaultMessageType([
    'ConfigurationSetName' => '<string>', // REQUIRED
]);

Parameter Details

Members
ConfigurationSetName
Required: Yes
Type: string

The name of the configuration set or the configuration set Amazon Resource Name (ARN) to delete the default message type from. The ConfigurationSetName and ConfigurationSetArn can be found using the DescribeConfigurationSets action.

Result Syntax

[
    'ConfigurationSetArn' => '<string>',
    'ConfigurationSetName' => '<string>',
    'MessageType' => 'TRANSACTIONAL|PROMOTIONAL',
]

Result Details

Members
ConfigurationSetArn
Type: string

The Amazon Resource Name (ARN) of the configuration set.

ConfigurationSetName
Type: string

The name of the configuration set.

MessageType
Type: string

The current message type for the configuration set.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DeleteDefaultSenderId

$result = $client->deleteDefaultSenderId([/* ... */]);
$promise = $client->deleteDefaultSenderIdAsync([/* ... */]);

Deletes an existing default sender ID on a configuration set.

A default sender ID is the identity that appears on recipients' devices when they receive SMS messages. Support for sender ID capabilities varies by country or region.

Parameter Syntax

$result = $client->deleteDefaultSenderId([
    'ConfigurationSetName' => '<string>', // REQUIRED
]);

Parameter Details

Members
ConfigurationSetName
Required: Yes
Type: string

The name of the configuration set or the configuration set Amazon Resource Name (ARN) to delete the default sender ID from. The ConfigurationSetName and ConfigurationSetArn can be found using the DescribeConfigurationSets action.

Result Syntax

[
    'ConfigurationSetArn' => '<string>',
    'ConfigurationSetName' => '<string>',
    'SenderId' => '<string>',
]

Result Details

Members
ConfigurationSetArn
Type: string

The Amazon Resource Name (ARN) of the configuration set.

ConfigurationSetName
Type: string

The name of the configuration set.

SenderId
Type: string

The current sender ID for the configuration set.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DeleteEventDestination

$result = $client->deleteEventDestination([/* ... */]);
$promise = $client->deleteEventDestinationAsync([/* ... */]);

Deletes an existing event destination.

An event destination is a location where you send response information about the messages that you send. For example, when a message is delivered successfully, you can send information about that event to an Amazon CloudWatch destination, or send notifications to endpoints that are subscribed to an Amazon SNS topic.

Parameter Syntax

$result = $client->deleteEventDestination([
    'ConfigurationSetName' => '<string>', // REQUIRED
    'EventDestinationName' => '<string>', // REQUIRED
]);

Parameter Details

Members
ConfigurationSetName
Required: Yes
Type: string

The name of the configuration set or the configuration set's Amazon Resource Name (ARN) to remove the event destination from. The ConfigurateSetName and ConfigurationSetArn can be found using the DescribeConfigurationSets action.

EventDestinationName
Required: Yes
Type: string

The name of the event destination to delete.

Result Syntax

[
    'ConfigurationSetArn' => '<string>',
    'ConfigurationSetName' => '<string>',
    'EventDestination' => [
        'CloudWatchLogsDestination' => [
            'IamRoleArn' => '<string>',
            'LogGroupArn' => '<string>',
        ],
        'Enabled' => true || false,
        'EventDestinationName' => '<string>',
        'KinesisFirehoseDestination' => [
            'DeliveryStreamArn' => '<string>',
            'IamRoleArn' => '<string>',
        ],
        'MatchingEventTypes' => ['<string>', ...],
        'SnsDestination' => [
            'TopicArn' => '<string>',
        ],
    ],
]

Result Details

Members
ConfigurationSetArn
Type: string

The Amazon Resource Name (ARN) of the configuration set.

ConfigurationSetName
Type: string

The name of the configuration set the event destination was deleted from.

EventDestination
Type: EventDestination structure

The event destination object that was deleted.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DeleteKeyword

$result = $client->deleteKeyword([/* ... */]);
$promise = $client->deleteKeywordAsync([/* ... */]);

Deletes an existing keyword from an origination phone number or pool.

A keyword is a word that you can search for on a particular phone number or pool. It is also a specific word or phrase that an end user can send to your number to elicit a response, such as an informational message or a special offer. When your number receives a message that begins with a keyword, AWS End User Messaging SMS and Voice responds with a customizable message.

Keywords "HELP" and "STOP" can't be deleted or modified.

Parameter Syntax

$result = $client->deleteKeyword([
    'Keyword' => '<string>', // REQUIRED
    'OriginationIdentity' => '<string>', // REQUIRED
]);

Parameter Details

Members
Keyword
Required: Yes
Type: string

The keyword to delete.

OriginationIdentity
Required: Yes
Type: string

The origination identity to use such as a PhoneNumberId, PhoneNumberArn, PoolId or PoolArn. You can use DescribePhoneNumbers to find the values for PhoneNumberId and PhoneNumberArn and DescribePools to find the values of PoolId and PoolArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

Result Syntax

[
    'Keyword' => '<string>',
    'KeywordAction' => 'AUTOMATIC_RESPONSE|OPT_OUT|OPT_IN',
    'KeywordMessage' => '<string>',
    'OriginationIdentity' => '<string>',
    'OriginationIdentityArn' => '<string>',
]

Result Details

Members
Keyword
Type: string

The keyword that was deleted.

KeywordAction
Type: string

The action that was associated with the deleted keyword.

KeywordMessage
Type: string

The message that was associated with the deleted keyword.

OriginationIdentity
Type: string

The PhoneNumberId or PoolId that the keyword was associated with.

OriginationIdentityArn
Type: string

The PhoneNumberArn or PoolArn that the keyword was associated with.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DeleteMediaMessageSpendLimitOverride

$result = $client->deleteMediaMessageSpendLimitOverride([/* ... */]);
$promise = $client->deleteMediaMessageSpendLimitOverrideAsync([/* ... */]);

Deletes an account-level monthly spending limit override for sending multimedia messages (MMS). Deleting a spend limit override will set the EnforcedLimit to equal the MaxLimit, which is controlled by Amazon Web Services. For more information on spend limits (quotas) see Quotas for Server Migration Service in the Server Migration Service User Guide.

Parameter Syntax

$result = $client->deleteMediaMessageSpendLimitOverride([
]);

Parameter Details

Members

Result Syntax

[
    'MonthlyLimit' => <integer>,
]

Result Details

Members
MonthlyLimit
Type: long (int|float)

The current monthly limit, in US dollars.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DeleteOptOutList

$result = $client->deleteOptOutList([/* ... */]);
$promise = $client->deleteOptOutListAsync([/* ... */]);

Deletes an existing opt-out list. All opted out phone numbers in the opt-out list are deleted.

If the specified opt-out list name doesn't exist or is in-use by an origination phone number or pool, an error is returned.

Parameter Syntax

$result = $client->deleteOptOutList([
    'OptOutListName' => '<string>', // REQUIRED
]);

Parameter Details

Members
OptOutListName
Required: Yes
Type: string

The OptOutListName or OptOutListArn of the OptOutList to delete. You can use DescribeOptOutLists to find the values for OptOutListName and OptOutListArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

Result Syntax

[
    'CreatedTimestamp' => <DateTime>,
    'OptOutListArn' => '<string>',
    'OptOutListName' => '<string>',
]

Result Details

Members
CreatedTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the OptOutList was created, in UNIX epoch time format.

OptOutListArn
Type: string

The Amazon Resource Name (ARN) of the OptOutList that was removed.

OptOutListName
Type: string

The name of the OptOutList that was removed.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DeleteOptedOutNumber

$result = $client->deleteOptedOutNumber([/* ... */]);
$promise = $client->deleteOptedOutNumberAsync([/* ... */]);

Deletes an existing opted out destination phone number from the specified opt-out list.

Each destination phone number can only be deleted once every 30 days.

If the specified destination phone number doesn't exist or if the opt-out list doesn't exist, an error is returned.

Parameter Syntax

$result = $client->deleteOptedOutNumber([
    'OptOutListName' => '<string>', // REQUIRED
    'OptedOutNumber' => '<string>', // REQUIRED
]);

Parameter Details

Members
OptOutListName
Required: Yes
Type: string

The OptOutListName or OptOutListArn to remove the phone number from.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

OptedOutNumber
Required: Yes
Type: string

The phone number, in E.164 format, to remove from the OptOutList.

Result Syntax

[
    'EndUserOptedOut' => true || false,
    'OptOutListArn' => '<string>',
    'OptOutListName' => '<string>',
    'OptedOutNumber' => '<string>',
    'OptedOutTimestamp' => <DateTime>,
]

Result Details

Members
EndUserOptedOut
Type: boolean

This is true if it was the end user who requested their phone number be removed.

OptOutListArn
Type: string

The OptOutListArn that the phone number was removed from.

OptOutListName
Type: string

The OptOutListName that the phone number was removed from.

OptedOutNumber
Type: string

The phone number that was removed from the OptOutList.

OptedOutTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time that the number was removed at, in UNIX epoch time format.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DeletePool

$result = $client->deletePool([/* ... */]);
$promise = $client->deletePoolAsync([/* ... */]);

Deletes an existing pool. Deleting a pool disassociates all origination identities from that pool.

If the pool status isn't active or if deletion protection is enabled, an error is returned.

A pool is a collection of phone numbers and SenderIds. A pool can include one or more phone numbers and SenderIds that are associated with your Amazon Web Services account.

Parameter Syntax

$result = $client->deletePool([
    'PoolId' => '<string>', // REQUIRED
]);

Parameter Details

Members
PoolId
Required: Yes
Type: string

The PoolId or PoolArn of the pool to delete. You can use DescribePools to find the values for PoolId and PoolArn .

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

Result Syntax

[
    'CreatedTimestamp' => <DateTime>,
    'MessageType' => 'TRANSACTIONAL|PROMOTIONAL',
    'OptOutListName' => '<string>',
    'PoolArn' => '<string>',
    'PoolId' => '<string>',
    'SelfManagedOptOutsEnabled' => true || false,
    'SharedRoutesEnabled' => true || false,
    'Status' => 'CREATING|ACTIVE|DELETING',
    'TwoWayChannelArn' => '<string>',
    'TwoWayChannelRole' => '<string>',
    'TwoWayEnabled' => true || false,
]

Result Details

Members
CreatedTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the pool was created, in UNIX epoch time format.

MessageType
Type: string

The message type that was associated with the deleted pool.

OptOutListName
Type: string

The name of the OptOutList that was associated with the deleted pool.

PoolArn
Type: string

The Amazon Resource Name (ARN) of the pool that was deleted.

PoolId
Type: string

The PoolId of the pool that was deleted.

SelfManagedOptOutsEnabled
Type: boolean

By default this is set to false. When an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, AWS End User Messaging SMS and Voice automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.

SharedRoutesEnabled
Type: boolean

Indicates whether shared routes are enabled for the pool.

Status
Type: string

The current status of the pool.

  • CREATING: The pool is currently being created and isn't yet available for use.

  • ACTIVE: The pool is active and available for use.

  • DELETING: The pool is being deleted.

TwoWayChannelArn
Type: string

The Amazon Resource Name (ARN) of the TwoWayChannel.

TwoWayChannelRole
Type: string

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

TwoWayEnabled
Type: boolean

By default this is set to false. When set to true you can receive incoming text messages from your end recipients.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DeleteProtectConfiguration

$result = $client->deleteProtectConfiguration([/* ... */]);
$promise = $client->deleteProtectConfigurationAsync([/* ... */]);

Permanently delete the protect configuration. The protect configuration must have deletion protection disabled and must not be associated as the account default protect configuration or associated with a configuration set.

Parameter Syntax

$result = $client->deleteProtectConfiguration([
    'ProtectConfigurationId' => '<string>', // REQUIRED
]);

Parameter Details

Members
ProtectConfigurationId
Required: Yes
Type: string

The unique identifier for the protect configuration.

Result Syntax

[
    'AccountDefault' => true || false,
    'CreatedTimestamp' => <DateTime>,
    'DeletionProtectionEnabled' => true || false,
    'ProtectConfigurationArn' => '<string>',
    'ProtectConfigurationId' => '<string>',
]

Result Details

Members
AccountDefault
Required: Yes
Type: boolean

This is true if the protect configuration is set as your account default protect configuration.

CreatedTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the protect configuration was created, in UNIX epoch time format.

DeletionProtectionEnabled
Required: Yes
Type: boolean

The status of deletion protection for the protect configuration. When set to true deletion protection is enabled. By default this is set to false.

ProtectConfigurationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the protect configuration.

ProtectConfigurationId
Required: Yes
Type: string

The unique identifier for the protect configuration.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DeleteRegistration

$result = $client->deleteRegistration([/* ... */]);
$promise = $client->deleteRegistrationAsync([/* ... */]);

Permanently delete an existing registration from your account.

Parameter Syntax

$result = $client->deleteRegistration([
    'RegistrationId' => '<string>', // REQUIRED
]);

Parameter Details

Members
RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

Result Syntax

[
    'AdditionalAttributes' => ['<string>', ...],
    'ApprovedVersionNumber' => <integer>,
    'CreatedTimestamp' => <DateTime>,
    'CurrentVersionNumber' => <integer>,
    'LatestDeniedVersionNumber' => <integer>,
    'RegistrationArn' => '<string>',
    'RegistrationId' => '<string>',
    'RegistrationStatus' => 'CREATED|SUBMITTED|REVIEWING|REQUIRES_AUTHENTICATION|PROVISIONING|COMPLETE|REQUIRES_UPDATES|CLOSED|DELETED',
    'RegistrationType' => '<string>',
]

Result Details

Members
AdditionalAttributes
Type: Associative array of custom strings keys (String) to strings

Metadata about a given registration which is specific to that registration type.

ApprovedVersionNumber
Type: long (int|float)

The version number of the registration that was approved.

CreatedTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the registration was created, in UNIX epoch time format.

CurrentVersionNumber
Required: Yes
Type: long (int|float)

The current version number of the registration.

LatestDeniedVersionNumber
Type: long (int|float)

The latest version number of the registration that was denied.

RegistrationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the registration.

RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

RegistrationStatus
Required: Yes
Type: string

The status of the registration.

  • CREATED: Your registration is created but not submitted.

  • SUBMITTED: Your registration has been submitted and is awaiting review.

  • REVIEWING: Your registration has been accepted and is being reviewed.

  • PROVISIONING: Your registration has been approved and your origination identity is being created.

  • COMPLETE: Your registration has been approved and and your origination identity has been created.

  • REQUIRES_UPDATES: You must fix your registration and resubmit it.

  • CLOSED: The phone number or sender ID has been deleted and you must also delete the registration for the number.

  • DELETED: The registration has been deleted.

RegistrationType
Required: Yes
Type: string

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DeleteRegistrationAttachment

$result = $client->deleteRegistrationAttachment([/* ... */]);
$promise = $client->deleteRegistrationAttachmentAsync([/* ... */]);

Permanently delete the specified registration attachment.

Parameter Syntax

$result = $client->deleteRegistrationAttachment([
    'RegistrationAttachmentId' => '<string>', // REQUIRED
]);

Parameter Details

Members
RegistrationAttachmentId
Required: Yes
Type: string

The unique identifier for the registration attachment.

Result Syntax

[
    'AttachmentStatus' => 'UPLOAD_IN_PROGRESS|UPLOAD_COMPLETE|UPLOAD_FAILED|DELETED',
    'AttachmentUploadErrorReason' => 'INTERNAL_ERROR',
    'CreatedTimestamp' => <DateTime>,
    'RegistrationAttachmentArn' => '<string>',
    'RegistrationAttachmentId' => '<string>',
]

Result Details

Members
AttachmentStatus
Required: Yes
Type: string

The status of the registration attachment.

  • UPLOAD_IN_PROGRESS The attachment is being uploaded.

  • UPLOAD_COMPLETE The attachment has been uploaded.

  • UPLOAD_FAILED The attachment failed to uploaded.

  • DELETED The attachment has been deleted..

AttachmentUploadErrorReason
Type: string

The error message if the upload failed.

CreatedTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the registration attachment was created, in UNIX epoch time format.

RegistrationAttachmentArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the registration attachment.

RegistrationAttachmentId
Required: Yes
Type: string

The unique identifier for the registration attachment.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DeleteRegistrationFieldValue

$result = $client->deleteRegistrationFieldValue([/* ... */]);
$promise = $client->deleteRegistrationFieldValueAsync([/* ... */]);

Delete the value in a registration form field.

Parameter Syntax

$result = $client->deleteRegistrationFieldValue([
    'FieldPath' => '<string>', // REQUIRED
    'RegistrationId' => '<string>', // REQUIRED
]);

Parameter Details

Members
FieldPath
Required: Yes
Type: string

The path to the registration form field. You can use DescribeRegistrationFieldDefinitions for a list of FieldPaths.

RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

Result Syntax

[
    'FieldPath' => '<string>',
    'RegistrationArn' => '<string>',
    'RegistrationAttachmentId' => '<string>',
    'RegistrationId' => '<string>',
    'SelectChoices' => ['<string>', ...],
    'TextValue' => '<string>',
    'VersionNumber' => <integer>,
]

Result Details

Members
FieldPath
Required: Yes
Type: string

The path to the registration form field.

RegistrationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the registration.

RegistrationAttachmentId
Type: string

The unique identifier for the registration attachment.

RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

SelectChoices
Type: Array of strings

An array of values for the form field.

TextValue
Type: string

The text data for a free form field.

VersionNumber
Required: Yes
Type: long (int|float)

The version number of the registration.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DeleteResourcePolicy

$result = $client->deleteResourcePolicy([/* ... */]);
$promise = $client->deleteResourcePolicyAsync([/* ... */]);

Deletes the resource-based policy document attached to the AWS End User Messaging SMS and Voice resource. A shared resource can be a Pool, Opt-out list, Sender Id, or Phone number.

Parameter Syntax

$result = $client->deleteResourcePolicy([
    'ResourceArn' => '<string>', // REQUIRED
]);

Parameter Details

Members
ResourceArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the AWS End User Messaging SMS and Voice resource you're deleting the resource-based policy from.

Result Syntax

[
    'CreatedTimestamp' => <DateTime>,
    'Policy' => '<string>',
    'ResourceArn' => '<string>',
]

Result Details

Members
CreatedTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the resource-based policy was created, in UNIX epoch time format.

Policy
Type: string

The JSON formatted resource-based policy that was deleted.

ResourceArn
Type: string

The Amazon Resource Name (ARN) of the AWS End User Messaging SMS and Voice resource that the resource-based policy was deleted from.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DeleteTextMessageSpendLimitOverride

$result = $client->deleteTextMessageSpendLimitOverride([/* ... */]);
$promise = $client->deleteTextMessageSpendLimitOverrideAsync([/* ... */]);

Deletes an account-level monthly spending limit override for sending text messages. Deleting a spend limit override will set the EnforcedLimit to equal the MaxLimit, which is controlled by Amazon Web Services. For more information on spend limits (quotas) see Quotas in the AWS End User Messaging SMS User Guide.

Parameter Syntax

$result = $client->deleteTextMessageSpendLimitOverride([
]);

Parameter Details

Members

Result Syntax

[
    'MonthlyLimit' => <integer>,
]

Result Details

Members
MonthlyLimit
Type: long (int|float)

The current monthly limit, in US dollars.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DeleteVerifiedDestinationNumber

$result = $client->deleteVerifiedDestinationNumber([/* ... */]);
$promise = $client->deleteVerifiedDestinationNumberAsync([/* ... */]);

Delete a verified destination phone number.

Parameter Syntax

$result = $client->deleteVerifiedDestinationNumber([
    'VerifiedDestinationNumberId' => '<string>', // REQUIRED
]);

Parameter Details

Members
VerifiedDestinationNumberId
Required: Yes
Type: string

The unique identifier for the verified destination phone number.

Result Syntax

[
    'CreatedTimestamp' => <DateTime>,
    'DestinationPhoneNumber' => '<string>',
    'VerifiedDestinationNumberArn' => '<string>',
    'VerifiedDestinationNumberId' => '<string>',
]

Result Details

Members
CreatedTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the destination phone number was created, in UNIX epoch time format.

DestinationPhoneNumber
Required: Yes
Type: string

The verified destination phone number, in E.164 format.

VerifiedDestinationNumberArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the verified destination phone number.

VerifiedDestinationNumberId
Required: Yes
Type: string

The unique identifier for the verified destination phone number.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DeleteVoiceMessageSpendLimitOverride

$result = $client->deleteVoiceMessageSpendLimitOverride([/* ... */]);
$promise = $client->deleteVoiceMessageSpendLimitOverrideAsync([/* ... */]);

Deletes an account level monthly spend limit override for sending voice messages. Deleting a spend limit override sets the EnforcedLimit equal to the MaxLimit, which is controlled by Amazon Web Services. For more information on spending limits (quotas) see Quotas in the AWS End User Messaging SMS User Guide.

Parameter Syntax

$result = $client->deleteVoiceMessageSpendLimitOverride([
]);

Parameter Details

Members

Result Syntax

[
    'MonthlyLimit' => <integer>,
]

Result Details

Members
MonthlyLimit
Type: long (int|float)

The current monthly limit, in US dollars.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DescribeAccountAttributes

$result = $client->describeAccountAttributes([/* ... */]);
$promise = $client->describeAccountAttributesAsync([/* ... */]);

Describes attributes of your Amazon Web Services account. The supported account attributes include account tier, which indicates whether your account is in the sandbox or production environment. When you're ready to move your account out of the sandbox, create an Amazon Web Services Support case for a service limit increase request.

New accounts are placed into an SMS or voice sandbox. The sandbox protects both Amazon Web Services end recipients and SMS or voice recipients from fraud and abuse.

Parameter Syntax

$result = $client->describeAccountAttributes([
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
]);

Parameter Details

Members
MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

Result Syntax

[
    'AccountAttributes' => [
        [
            'Name' => 'ACCOUNT_TIER|DEFAULT_PROTECT_CONFIGURATION_ID',
            'Value' => '<string>',
        ],
        // ...
    ],
    'NextToken' => '<string>',
]

Result Details

Members
AccountAttributes
Type: Array of AccountAttribute structures

An array of AccountAttributes objects.

NextToken
Type: string

The token to be used for the next set of paginated results. If this field is empty then there are no more results.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DescribeAccountLimits

$result = $client->describeAccountLimits([/* ... */]);
$promise = $client->describeAccountLimitsAsync([/* ... */]);

Describes the current AWS End User Messaging SMS and Voice SMS Voice V2 resource quotas for your account. The description for a quota includes the quota name, current usage toward that quota, and the quota's maximum value.

When you establish an Amazon Web Services account, the account has initial quotas on the maximum number of configuration sets, opt-out lists, phone numbers, and pools that you can create in a given Region. For more information see Quotas in the AWS End User Messaging SMS User Guide.

Parameter Syntax

$result = $client->describeAccountLimits([
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
]);

Parameter Details

Members
MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

Result Syntax

[
    'AccountLimits' => [
        [
            'Max' => <integer>,
            'Name' => 'PHONE_NUMBERS|POOLS|CONFIGURATION_SETS|OPT_OUT_LISTS|SENDER_IDS|REGISTRATIONS|REGISTRATION_ATTACHMENTS|VERIFIED_DESTINATION_NUMBERS',
            'Used' => <integer>,
        ],
        // ...
    ],
    'NextToken' => '<string>',
]

Result Details

Members
AccountLimits
Type: Array of AccountLimit structures

An array of AccountLimit objects that show the current spend limits.

NextToken
Type: string

The token to be used for the next set of paginated results. If this field is empty then there are no more results.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DescribeConfigurationSets

$result = $client->describeConfigurationSets([/* ... */]);
$promise = $client->describeConfigurationSetsAsync([/* ... */]);

Describes the specified configuration sets or all in your account.

If you specify configuration set names, the output includes information for only the specified configuration sets. If you specify filters, the output includes information for only those configuration sets that meet the filter criteria. If you don't specify configuration set names or filters, the output includes information for all configuration sets.

If you specify a configuration set name that isn't valid, an error is returned.

Parameter Syntax

$result = $client->describeConfigurationSets([
    'ConfigurationSetNames' => ['<string>', ...],
    'Filters' => [
        [
            'Name' => 'event-destination-name|matching-event-types|default-message-type|default-sender-id|protect-configuration-id', // REQUIRED
            'Values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
]);

Parameter Details

Members
ConfigurationSetNames
Type: Array of strings

An array of strings. Each element can be either a ConfigurationSetName or ConfigurationSetArn.

Filters
Type: Array of ConfigurationSetFilter structures

An array of filters to apply to the results that are returned.

MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

Result Syntax

[
    'ConfigurationSets' => [
        [
            'ConfigurationSetArn' => '<string>',
            'ConfigurationSetName' => '<string>',
            'CreatedTimestamp' => <DateTime>,
            'DefaultMessageType' => 'TRANSACTIONAL|PROMOTIONAL',
            'DefaultSenderId' => '<string>',
            'EventDestinations' => [
                [
                    'CloudWatchLogsDestination' => [
                        'IamRoleArn' => '<string>',
                        'LogGroupArn' => '<string>',
                    ],
                    'Enabled' => true || false,
                    'EventDestinationName' => '<string>',
                    'KinesisFirehoseDestination' => [
                        'DeliveryStreamArn' => '<string>',
                        'IamRoleArn' => '<string>',
                    ],
                    'MatchingEventTypes' => ['<string>', ...],
                    'SnsDestination' => [
                        'TopicArn' => '<string>',
                    ],
                ],
                // ...
            ],
            'ProtectConfigurationId' => '<string>',
        ],
        // ...
    ],
    'NextToken' => '<string>',
]

Result Details

Members
ConfigurationSets
Type: Array of ConfigurationSetInformation structures

An array of ConfigurationSets objects.

NextToken
Type: string

The token to be used for the next set of paginated results. If this field is empty then there are no more results.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DescribeKeywords

$result = $client->describeKeywords([/* ... */]);
$promise = $client->describeKeywordsAsync([/* ... */]);

Describes the specified keywords or all keywords on your origination phone number or pool.

A keyword is a word that you can search for on a particular phone number or pool. It is also a specific word or phrase that an end user can send to your number to elicit a response, such as an informational message or a special offer. When your number receives a message that begins with a keyword, AWS End User Messaging SMS and Voice responds with a customizable message.

If you specify a keyword that isn't valid, an error is returned.

Parameter Syntax

$result = $client->describeKeywords([
    'Filters' => [
        [
            'Name' => 'keyword-action', // REQUIRED
            'Values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'Keywords' => ['<string>', ...],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'OriginationIdentity' => '<string>', // REQUIRED
]);

Parameter Details

Members
Filters
Type: Array of KeywordFilter structures

An array of keyword filters to filter the results.

Keywords
Type: Array of strings

An array of keywords to search for.

MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

OriginationIdentity
Required: Yes
Type: string

The origination identity to use such as a PhoneNumberId, PhoneNumberArn, SenderId or SenderIdArn. You can use DescribePhoneNumbers to find the values for PhoneNumberId and PhoneNumberArn while DescribeSenderIds can be used to get the values for SenderId and SenderIdArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

Result Syntax

[
    'Keywords' => [
        [
            'Keyword' => '<string>',
            'KeywordAction' => 'AUTOMATIC_RESPONSE|OPT_OUT|OPT_IN',
            'KeywordMessage' => '<string>',
        ],
        // ...
    ],
    'NextToken' => '<string>',
    'OriginationIdentity' => '<string>',
    'OriginationIdentityArn' => '<string>',
]

Result Details

Members
Keywords
Type: Array of KeywordInformation structures

An array of KeywordInformation objects that contain the results.

NextToken
Type: string

The token to be used for the next set of paginated results. If this field is empty then there are no more results.

OriginationIdentity
Type: string

The PhoneNumberId or PoolId that is associated with the OriginationIdentity.

OriginationIdentityArn
Type: string

The PhoneNumberArn or PoolArn that is associated with the OriginationIdentity.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DescribeOptOutLists

$result = $client->describeOptOutLists([/* ... */]);
$promise = $client->describeOptOutListsAsync([/* ... */]);

Describes the specified opt-out list or all opt-out lists in your account.

If you specify opt-out list names, the output includes information for only the specified opt-out lists. Opt-out lists include only those that meet the filter criteria. If you don't specify opt-out list names or filters, the output includes information for all opt-out lists.

If you specify an opt-out list name that isn't valid, an error is returned.

Parameter Syntax

$result = $client->describeOptOutLists([
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'OptOutListNames' => ['<string>', ...],
    'Owner' => 'SELF|SHARED',
]);

Parameter Details

Members
MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

OptOutListNames
Type: Array of strings

The OptOutLists to show the details of. This is an array of strings that can be either the OptOutListName or OptOutListArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

Owner
Type: string

Use SELF to filter the list of Opt-Out List to ones your account owns or use SHARED to filter on Opt-Out List shared with your account. The Owner and OptOutListNames parameters can't be used at the same time.

Result Syntax

[
    'NextToken' => '<string>',
    'OptOutLists' => [
        [
            'CreatedTimestamp' => <DateTime>,
            'OptOutListArn' => '<string>',
            'OptOutListName' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

The token to be used for the next set of paginated results. If this field is empty then there are no more results.

OptOutLists
Type: Array of OptOutListInformation structures

An array of OptOutListInformation objects that contain the details for the requested OptOutLists.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DescribeOptedOutNumbers

$result = $client->describeOptedOutNumbers([/* ... */]);
$promise = $client->describeOptedOutNumbersAsync([/* ... */]);

Describes the specified opted out destination numbers or all opted out destination numbers in an opt-out list.

If you specify opted out numbers, the output includes information for only the specified opted out numbers. If you specify filters, the output includes information for only those opted out numbers that meet the filter criteria. If you don't specify opted out numbers or filters, the output includes information for all opted out destination numbers in your opt-out list.

If you specify an opted out number that isn't valid, an exception is returned.

Parameter Syntax

$result = $client->describeOptedOutNumbers([
    'Filters' => [
        [
            'Name' => 'end-user-opted-out', // REQUIRED
            'Values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'OptOutListName' => '<string>', // REQUIRED
    'OptedOutNumbers' => ['<string>', ...],
]);

Parameter Details

Members
Filters
Type: Array of OptedOutFilter structures

An array of OptedOutFilter objects to filter the results on.

MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

OptOutListName
Required: Yes
Type: string

The OptOutListName or OptOutListArn of the OptOutList. You can use DescribeOptOutLists to find the values for OptOutListName and OptOutListArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

OptedOutNumbers
Type: Array of strings

An array of phone numbers to search for in the OptOutList.

If you specify an opted out number that isn't valid, an exception is returned.

Result Syntax

[
    'NextToken' => '<string>',
    'OptOutListArn' => '<string>',
    'OptOutListName' => '<string>',
    'OptedOutNumbers' => [
        [
            'EndUserOptedOut' => true || false,
            'OptedOutNumber' => '<string>',
            'OptedOutTimestamp' => <DateTime>,
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

The token to be used for the next set of paginated results. If this field is empty then there are no more results.

OptOutListArn
Type: string

The Amazon Resource Name (ARN) of the OptOutList.

OptOutListName
Type: string

The name of the OptOutList.

OptedOutNumbers
Type: Array of OptedOutNumberInformation structures

An array of OptedOutNumbersInformation objects that provide information about the requested OptedOutNumbers.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DescribePhoneNumbers

$result = $client->describePhoneNumbers([/* ... */]);
$promise = $client->describePhoneNumbersAsync([/* ... */]);

Describes the specified origination phone number, or all the phone numbers in your account.

If you specify phone number IDs, the output includes information for only the specified phone numbers. If you specify filters, the output includes information for only those phone numbers that meet the filter criteria. If you don't specify phone number IDs or filters, the output includes information for all phone numbers.

If you specify a phone number ID that isn't valid, an error is returned.

Parameter Syntax

$result = $client->describePhoneNumbers([
    'Filters' => [
        [
            'Name' => 'status|iso-country-code|message-type|number-capability|number-type|two-way-enabled|self-managed-opt-outs-enabled|opt-out-list-name|deletion-protection-enabled|two-way-channel-arn', // REQUIRED
            'Values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'Owner' => 'SELF|SHARED',
    'PhoneNumberIds' => ['<string>', ...],
]);

Parameter Details

Members
Filters
Type: Array of PhoneNumberFilter structures

An array of PhoneNumberFilter objects to filter the results.

MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

Owner
Type: string

Use SELF to filter the list of phone numbers to ones your account owns or use SHARED to filter on phone numbers shared with your account. The Owner and PhoneNumberIds parameters can't be used at the same time.

PhoneNumberIds
Type: Array of strings

The unique identifier of phone numbers to find information about. This is an array of strings that can be either the PhoneNumberId or PhoneNumberArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

Result Syntax

[
    'NextToken' => '<string>',
    'PhoneNumbers' => [
        [
            'CreatedTimestamp' => <DateTime>,
            'DeletionProtectionEnabled' => true || false,
            'IsoCountryCode' => '<string>',
            'MessageType' => 'TRANSACTIONAL|PROMOTIONAL',
            'MonthlyLeasingPrice' => '<string>',
            'NumberCapabilities' => ['<string>', ...],
            'NumberType' => 'SHORT_CODE|LONG_CODE|TOLL_FREE|TEN_DLC|SIMULATOR',
            'OptOutListName' => '<string>',
            'PhoneNumber' => '<string>',
            'PhoneNumberArn' => '<string>',
            'PhoneNumberId' => '<string>',
            'PoolId' => '<string>',
            'RegistrationId' => '<string>',
            'SelfManagedOptOutsEnabled' => true || false,
            'Status' => 'PENDING|ACTIVE|ASSOCIATING|DISASSOCIATING|DELETED',
            'TwoWayChannelArn' => '<string>',
            'TwoWayChannelRole' => '<string>',
            'TwoWayEnabled' => true || false,
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

The token to be used for the next set of paginated results. If this field is empty then there are no more results.

PhoneNumbers
Type: Array of PhoneNumberInformation structures

An array of PhoneNumberInformation objects that contain the details for the requested phone numbers.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DescribePools

$result = $client->describePools([/* ... */]);
$promise = $client->describePoolsAsync([/* ... */]);

Retrieves the specified pools or all pools associated with your Amazon Web Services account.

If you specify pool IDs, the output includes information for only the specified pools. If you specify filters, the output includes information for only those pools that meet the filter criteria. If you don't specify pool IDs or filters, the output includes information for all pools.

If you specify a pool ID that isn't valid, an error is returned.

A pool is a collection of phone numbers and SenderIds. A pool can include one or more phone numbers and SenderIds that are associated with your Amazon Web Services account.

Parameter Syntax

$result = $client->describePools([
    'Filters' => [
        [
            'Name' => 'status|message-type|two-way-enabled|self-managed-opt-outs-enabled|opt-out-list-name|shared-routes-enabled|deletion-protection-enabled|two-way-channel-arn', // REQUIRED
            'Values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'Owner' => 'SELF|SHARED',
    'PoolIds' => ['<string>', ...],
]);

Parameter Details

Members
Filters
Type: Array of PoolFilter structures

An array of PoolFilter objects to filter the results.

MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

Owner
Type: string

Use SELF to filter the list of Pools to ones your account owns or use SHARED to filter on Pools shared with your account. The Owner and PoolIds parameters can't be used at the same time.

PoolIds
Type: Array of strings

The unique identifier of pools to find. This is an array of strings that can be either the PoolId or PoolArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

Result Syntax

[
    'NextToken' => '<string>',
    'Pools' => [
        [
            'CreatedTimestamp' => <DateTime>,
            'DeletionProtectionEnabled' => true || false,
            'MessageType' => 'TRANSACTIONAL|PROMOTIONAL',
            'OptOutListName' => '<string>',
            'PoolArn' => '<string>',
            'PoolId' => '<string>',
            'SelfManagedOptOutsEnabled' => true || false,
            'SharedRoutesEnabled' => true || false,
            'Status' => 'CREATING|ACTIVE|DELETING',
            'TwoWayChannelArn' => '<string>',
            'TwoWayChannelRole' => '<string>',
            'TwoWayEnabled' => true || false,
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

The token to be used for the next set of paginated results. If this field is empty then there are no more results.

Pools
Type: Array of PoolInformation structures

An array of PoolInformation objects that contain the details for the requested pools.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DescribeProtectConfigurations

$result = $client->describeProtectConfigurations([/* ... */]);
$promise = $client->describeProtectConfigurationsAsync([/* ... */]);

Retrieves the protect configurations that match any of filters. If a filter isn’t provided then all protect configurations are returned.

Parameter Syntax

$result = $client->describeProtectConfigurations([
    'Filters' => [
        [
            'Name' => 'account-default|deletion-protection-enabled', // REQUIRED
            'Values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'ProtectConfigurationIds' => ['<string>', ...],
]);

Parameter Details

Members
Filters
Type: Array of ProtectConfigurationFilter structures

An array of ProtectConfigurationFilter objects to filter the results.

MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

ProtectConfigurationIds
Type: Array of strings

An array of protect configuration identifiers to search for.

Result Syntax

[
    'NextToken' => '<string>',
    'ProtectConfigurations' => [
        [
            'AccountDefault' => true || false,
            'CreatedTimestamp' => <DateTime>,
            'DeletionProtectionEnabled' => true || false,
            'ProtectConfigurationArn' => '<string>',
            'ProtectConfigurationId' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

ProtectConfigurations
Type: Array of ProtectConfigurationInformation structures

An array of ProtectConfigurationInformation objects that contain the details for the request.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DescribeRegistrationAttachments

$result = $client->describeRegistrationAttachments([/* ... */]);
$promise = $client->describeRegistrationAttachmentsAsync([/* ... */]);

Retrieves the specified registration attachments or all registration attachments associated with your Amazon Web Services account.

Parameter Syntax

$result = $client->describeRegistrationAttachments([
    'Filters' => [
        [
            'Name' => 'attachment-status', // REQUIRED
            'Values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'RegistrationAttachmentIds' => ['<string>', ...],
]);

Parameter Details

Members
Filters
Type: Array of RegistrationAttachmentFilter structures

An array of RegistrationAttachmentFilter objects to filter the results.

MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

RegistrationAttachmentIds
Type: Array of strings

The unique identifier of registration attachments to find. This is an array of RegistrationAttachmentId.

Result Syntax

[
    'NextToken' => '<string>',
    'RegistrationAttachments' => [
        [
            'AttachmentStatus' => 'UPLOAD_IN_PROGRESS|UPLOAD_COMPLETE|UPLOAD_FAILED|DELETED',
            'AttachmentUploadErrorReason' => 'INTERNAL_ERROR',
            'CreatedTimestamp' => <DateTime>,
            'RegistrationAttachmentArn' => '<string>',
            'RegistrationAttachmentId' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

RegistrationAttachments
Required: Yes
Type: Array of RegistrationAttachmentsInformation structures

An array of RegistrationAttachments objects that contain the details for the requested registration attachments.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DescribeRegistrationFieldDefinitions

$result = $client->describeRegistrationFieldDefinitions([/* ... */]);
$promise = $client->describeRegistrationFieldDefinitionsAsync([/* ... */]);

Retrieves the specified registration type field definitions. You can use DescribeRegistrationFieldDefinitions to view the requirements for creating, filling out, and submitting each registration type.

Parameter Syntax

$result = $client->describeRegistrationFieldDefinitions([
    'FieldPaths' => ['<string>', ...],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'RegistrationType' => '<string>', // REQUIRED
    'SectionPath' => '<string>',
]);

Parameter Details

Members
FieldPaths
Type: Array of strings

An array of paths to the registration form field.

MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

RegistrationType
Required: Yes
Type: string

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

SectionPath
Type: string

The path to the section of the registration.

Result Syntax

[
    'NextToken' => '<string>',
    'RegistrationFieldDefinitions' => [
        [
            'DisplayHints' => [
                'DocumentationLink' => '<string>',
                'DocumentationTitle' => '<string>',
                'ExampleTextValue' => '<string>',
                'LongDescription' => '<string>',
                'SelectOptionDescriptions' => [
                    [
                        'Description' => '<string>',
                        'Option' => '<string>',
                        'Title' => '<string>',
                    ],
                    // ...
                ],
                'ShortDescription' => '<string>',
                'TextValidationDescription' => '<string>',
                'Title' => '<string>',
            ],
            'FieldPath' => '<string>',
            'FieldRequirement' => 'REQUIRED|CONDITIONAL|OPTIONAL',
            'FieldType' => 'SELECT|TEXT|ATTACHMENT',
            'SectionPath' => '<string>',
            'SelectValidation' => [
                'MaxChoices' => <integer>,
                'MinChoices' => <integer>,
                'Options' => ['<string>', ...],
            ],
            'TextValidation' => [
                'MaxLength' => <integer>,
                'MinLength' => <integer>,
                'Pattern' => '<string>',
            ],
        ],
        // ...
    ],
    'RegistrationType' => '<string>',
]

Result Details

Members
NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

RegistrationFieldDefinitions
Required: Yes
Type: Array of RegistrationFieldDefinition structures

An array of RegistrationFieldDefinitions objects that contain the details for the requested fields.

RegistrationType
Required: Yes
Type: string

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DescribeRegistrationFieldValues

$result = $client->describeRegistrationFieldValues([/* ... */]);
$promise = $client->describeRegistrationFieldValuesAsync([/* ... */]);

Retrieves the specified registration field values.

Parameter Syntax

$result = $client->describeRegistrationFieldValues([
    'FieldPaths' => ['<string>', ...],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'RegistrationId' => '<string>', // REQUIRED
    'SectionPath' => '<string>',
    'VersionNumber' => <integer>,
]);

Parameter Details

Members
FieldPaths
Type: Array of strings

An array of paths to the registration form field.

MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

SectionPath
Type: string

The path to the section of the registration.

VersionNumber
Type: long (int|float)

The version number of the registration.

Result Syntax

[
    'NextToken' => '<string>',
    'RegistrationArn' => '<string>',
    'RegistrationFieldValues' => [
        [
            'DeniedReason' => '<string>',
            'FieldPath' => '<string>',
            'RegistrationAttachmentId' => '<string>',
            'SelectChoices' => ['<string>', ...],
            'TextValue' => '<string>',
        ],
        // ...
    ],
    'RegistrationId' => '<string>',
    'VersionNumber' => <integer>,
]

Result Details

Members
NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

RegistrationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the registration.

RegistrationFieldValues
Required: Yes
Type: Array of RegistrationFieldValueInformation structures

An array of RegistrationFieldValues objects that contain the values for the requested registration.

RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

VersionNumber
Required: Yes
Type: long (int|float)

The current version of the registration.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DescribeRegistrationSectionDefinitions

$result = $client->describeRegistrationSectionDefinitions([/* ... */]);
$promise = $client->describeRegistrationSectionDefinitionsAsync([/* ... */]);

Retrieves the specified registration section definitions. You can use DescribeRegistrationSectionDefinitions to view the requirements for creating, filling out, and submitting each registration type.

Parameter Syntax

$result = $client->describeRegistrationSectionDefinitions([
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'RegistrationType' => '<string>', // REQUIRED
    'SectionPaths' => ['<string>', ...],
]);

Parameter Details

Members
MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

RegistrationType
Required: Yes
Type: string

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

SectionPaths
Type: Array of strings

An array of paths for the registration form section.

Result Syntax

[
    'NextToken' => '<string>',
    'RegistrationSectionDefinitions' => [
        [
            'DisplayHints' => [
                'DocumentationLink' => '<string>',
                'DocumentationTitle' => '<string>',
                'LongDescription' => '<string>',
                'ShortDescription' => '<string>',
                'Title' => '<string>',
            ],
            'SectionPath' => '<string>',
        ],
        // ...
    ],
    'RegistrationType' => '<string>',
]

Result Details

Members
NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

RegistrationSectionDefinitions
Required: Yes
Type: Array of RegistrationSectionDefinition structures

An array of RegistrationSectionDefinition objects.

RegistrationType
Required: Yes
Type: string

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DescribeRegistrationTypeDefinitions

$result = $client->describeRegistrationTypeDefinitions([/* ... */]);
$promise = $client->describeRegistrationTypeDefinitionsAsync([/* ... */]);

Retrieves the specified registration type definitions. You can use DescribeRegistrationTypeDefinitions to view the requirements for creating, filling out, and submitting each registration type.

Parameter Syntax

$result = $client->describeRegistrationTypeDefinitions([
    'Filters' => [
        [
            'Name' => 'supported-association-resource-type|supported-association-iso-country-code', // REQUIRED
            'Values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'RegistrationTypes' => ['<string>', ...],
]);

Parameter Details

Members
Filters
Type: Array of RegistrationTypeFilter structures

An array of RegistrationFilter objects to filter the results.

MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

RegistrationTypes
Type: Array of strings

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

Result Syntax

[
    'NextToken' => '<string>',
    'RegistrationTypeDefinitions' => [
        [
            'DisplayHints' => [
                'DocumentationLink' => '<string>',
                'DocumentationTitle' => '<string>',
                'LongDescription' => '<string>',
                'ShortDescription' => '<string>',
                'Title' => '<string>',
            ],
            'RegistrationType' => '<string>',
            'SupportedAssociations' => [
                [
                    'AssociationBehavior' => 'ASSOCIATE_BEFORE_SUBMIT|ASSOCIATE_ON_APPROVAL|ASSOCIATE_AFTER_COMPLETE',
                    'DisassociationBehavior' => 'DISASSOCIATE_ALL_CLOSES_REGISTRATION|DISASSOCIATE_ALL_ALLOWS_DELETE_REGISTRATION|DELETE_REGISTRATION_DISASSOCIATES',
                    'IsoCountryCode' => '<string>',
                    'ResourceType' => '<string>',
                ],
                // ...
            ],
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

RegistrationTypeDefinitions
Required: Yes
Type: Array of RegistrationTypeDefinition structures

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DescribeRegistrationVersions

$result = $client->describeRegistrationVersions([/* ... */]);
$promise = $client->describeRegistrationVersionsAsync([/* ... */]);

Retrieves the specified registration version.

Parameter Syntax

$result = $client->describeRegistrationVersions([
    'Filters' => [
        [
            'Name' => 'registration-version-status', // REQUIRED
            'Values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'RegistrationId' => '<string>', // REQUIRED
    'VersionNumbers' => [<integer>, ...],
]);

Parameter Details

Members
Filters
Type: Array of RegistrationVersionFilter structures

An array of RegistrationVersionFilter objects to filter the results.

MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

VersionNumbers
Type: Array of long (int|float)s

An array of registration version numbers.

Result Syntax

[
    'NextToken' => '<string>',
    'RegistrationArn' => '<string>',
    'RegistrationId' => '<string>',
    'RegistrationVersions' => [
        [
            'DeniedReasons' => [
                [
                    'DocumentationLink' => '<string>',
                    'DocumentationTitle' => '<string>',
                    'LongDescription' => '<string>',
                    'Reason' => '<string>',
                    'ShortDescription' => '<string>',
                ],
                // ...
            ],
            'RegistrationVersionStatus' => 'DRAFT|SUBMITTED|REVIEWING|REQUIRES_AUTHENTICATION|APPROVED|DISCARDED|DENIED|REVOKED|ARCHIVED',
            'RegistrationVersionStatusHistory' => [
                'ApprovedTimestamp' => <DateTime>,
                'ArchivedTimestamp' => <DateTime>,
                'DeniedTimestamp' => <DateTime>,
                'DiscardedTimestamp' => <DateTime>,
                'DraftTimestamp' => <DateTime>,
                'ReviewingTimestamp' => <DateTime>,
                'RevokedTimestamp' => <DateTime>,
                'SubmittedTimestamp' => <DateTime>,
            ],
            'VersionNumber' => <integer>,
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

RegistrationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the registration.

RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

RegistrationVersions
Required: Yes
Type: Array of RegistrationVersionInformation structures

An array of RegistrationVersions objects.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DescribeRegistrations

$result = $client->describeRegistrations([/* ... */]);
$promise = $client->describeRegistrationsAsync([/* ... */]);

Retrieves the specified registrations.

Parameter Syntax

$result = $client->describeRegistrations([
    'Filters' => [
        [
            'Name' => 'registration-type|registration-status', // REQUIRED
            'Values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'RegistrationIds' => ['<string>', ...],
]);

Parameter Details

Members
Filters
Type: Array of RegistrationFilter structures

An array of RegistrationFilter objects to filter the results.

MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

RegistrationIds
Type: Array of strings

An array of unique identifiers for each registration.

Result Syntax

[
    'NextToken' => '<string>',
    'Registrations' => [
        [
            'AdditionalAttributes' => ['<string>', ...],
            'ApprovedVersionNumber' => <integer>,
            'CreatedTimestamp' => <DateTime>,
            'CurrentVersionNumber' => <integer>,
            'LatestDeniedVersionNumber' => <integer>,
            'RegistrationArn' => '<string>',
            'RegistrationId' => '<string>',
            'RegistrationStatus' => 'CREATED|SUBMITTED|REVIEWING|REQUIRES_AUTHENTICATION|PROVISIONING|COMPLETE|REQUIRES_UPDATES|CLOSED|DELETED',
            'RegistrationType' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

Registrations
Required: Yes
Type: Array of RegistrationInformation structures

An array of RegistrationInformation objects.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DescribeSenderIds

$result = $client->describeSenderIds([/* ... */]);
$promise = $client->describeSenderIdsAsync([/* ... */]);

Describes the specified SenderIds or all SenderIds associated with your Amazon Web Services account.

If you specify SenderIds, the output includes information for only the specified SenderIds. If you specify filters, the output includes information for only those SenderIds that meet the filter criteria. If you don't specify SenderIds or filters, the output includes information for all SenderIds.

f you specify a sender ID that isn't valid, an error is returned.

Parameter Syntax

$result = $client->describeSenderIds([
    'Filters' => [
        [
            'Name' => 'sender-id|iso-country-code|message-type|deletion-protection-enabled|registered', // REQUIRED
            'Values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'Owner' => 'SELF|SHARED',
    'SenderIds' => [
        [
            'IsoCountryCode' => '<string>', // REQUIRED
            'SenderId' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
Filters
Type: Array of SenderIdFilter structures

An array of SenderIdFilter objects to filter the results.

MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

Owner
Type: string

Use SELF to filter the list of Sender Ids to ones your account owns or use SHARED to filter on Sender Ids shared with your account. The Owner and SenderIds parameters can't be used at the same time.

SenderIds
Type: Array of SenderIdAndCountry structures

An array of SenderIdAndCountry objects to search for.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

Result Syntax

[
    'NextToken' => '<string>',
    'SenderIds' => [
        [
            'DeletionProtectionEnabled' => true || false,
            'IsoCountryCode' => '<string>',
            'MessageTypes' => ['<string>', ...],
            'MonthlyLeasingPrice' => '<string>',
            'Registered' => true || false,
            'RegistrationId' => '<string>',
            'SenderId' => '<string>',
            'SenderIdArn' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

The token to be used for the next set of paginated results. If this field is empty then there are no more results.

SenderIds
Type: Array of SenderIdInformation structures

An array of SernderIdInformation objects that contain the details for the requested SenderIds.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DescribeSpendLimits

$result = $client->describeSpendLimits([/* ... */]);
$promise = $client->describeSpendLimitsAsync([/* ... */]);

Describes the current monthly spend limits for sending voice and text messages.

When you establish an Amazon Web Services account, the account has initial monthly spend limit in a given Region. For more information on increasing your monthly spend limit, see Requesting increases to your monthly SMS, MMS, or Voice spending quota in the AWS End User Messaging SMS User Guide.

Parameter Syntax

$result = $client->describeSpendLimits([
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
]);

Parameter Details

Members
MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

Result Syntax

[
    'NextToken' => '<string>',
    'SpendLimits' => [
        [
            'EnforcedLimit' => <integer>,
            'MaxLimit' => <integer>,
            'Name' => 'TEXT_MESSAGE_MONTHLY_SPEND_LIMIT|VOICE_MESSAGE_MONTHLY_SPEND_LIMIT|MEDIA_MESSAGE_MONTHLY_SPEND_LIMIT',
            'Overridden' => true || false,
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

The token to be used for the next set of paginated results. If this field is empty then there are no more results.

SpendLimits
Type: Array of SpendLimit structures

An array of SpendLimit objects that contain the details for the requested spend limits.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DescribeVerifiedDestinationNumbers

$result = $client->describeVerifiedDestinationNumbers([/* ... */]);
$promise = $client->describeVerifiedDestinationNumbersAsync([/* ... */]);

Retrieves the specified verified destiona numbers.

Parameter Syntax

$result = $client->describeVerifiedDestinationNumbers([
    'DestinationPhoneNumbers' => ['<string>', ...],
    'Filters' => [
        [
            'Name' => 'status', // REQUIRED
            'Values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'VerifiedDestinationNumberIds' => ['<string>', ...],
]);

Parameter Details

Members
DestinationPhoneNumbers
Type: Array of strings

An array of verified destination phone number, in E.164 format.

Filters
Type: Array of VerifiedDestinationNumberFilter structures

An array of VerifiedDestinationNumberFilter objects to filter the results.

MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

VerifiedDestinationNumberIds
Type: Array of strings

An array of VerifiedDestinationNumberid to retreive.

Result Syntax

[
    'NextToken' => '<string>',
    'VerifiedDestinationNumbers' => [
        [
            'CreatedTimestamp' => <DateTime>,
            'DestinationPhoneNumber' => '<string>',
            'Status' => 'PENDING|VERIFIED',
            'VerifiedDestinationNumberArn' => '<string>',
            'VerifiedDestinationNumberId' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

VerifiedDestinationNumbers
Required: Yes
Type: Array of VerifiedDestinationNumberInformation structures

An array of VerifiedDestinationNumberInformation objects

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DisassociateOriginationIdentity

$result = $client->disassociateOriginationIdentity([/* ... */]);
$promise = $client->disassociateOriginationIdentityAsync([/* ... */]);

Removes the specified origination identity from an existing pool.

If the origination identity isn't associated with the specified pool, an error is returned.

Parameter Syntax

$result = $client->disassociateOriginationIdentity([
    'ClientToken' => '<string>',
    'IsoCountryCode' => '<string>', // REQUIRED
    'OriginationIdentity' => '<string>', // REQUIRED
    'PoolId' => '<string>', // REQUIRED
]);

Parameter Details

Members
ClientToken
Type: string

Unique, case-sensitive identifier you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

IsoCountryCode
Required: Yes
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

OriginationIdentity
Required: Yes
Type: string

The origination identity to use such as a PhoneNumberId, PhoneNumberArn, SenderId or SenderIdArn. You can use DescribePhoneNumbers find the values for PhoneNumberId and PhoneNumberArn, or use DescribeSenderIds to get the values for SenderId and SenderIdArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

PoolId
Required: Yes
Type: string

The unique identifier for the pool to disassociate with the origination identity. This value can be either the PoolId or PoolArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

Result Syntax

[
    'IsoCountryCode' => '<string>',
    'OriginationIdentity' => '<string>',
    'OriginationIdentityArn' => '<string>',
    'PoolArn' => '<string>',
    'PoolId' => '<string>',
]

Result Details

Members
IsoCountryCode
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

OriginationIdentity
Type: string

The PhoneNumberId or SenderId of the origination identity.

OriginationIdentityArn
Type: string

The PhoneNumberArn or SenderIdArn of the origination identity.

PoolArn
Type: string

The Amazon Resource Name (ARN) of the pool.

PoolId
Type: string

The PoolId of the pool no longer associated with the origination identity.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DisassociateProtectConfiguration

$result = $client->disassociateProtectConfiguration([/* ... */]);
$promise = $client->disassociateProtectConfigurationAsync([/* ... */]);

Disassociate a protect configuration from a configuration set.

Parameter Syntax

$result = $client->disassociateProtectConfiguration([
    'ConfigurationSetName' => '<string>', // REQUIRED
    'ProtectConfigurationId' => '<string>', // REQUIRED
]);

Parameter Details

Members
ConfigurationSetName
Required: Yes
Type: string

The name of the ConfigurationSet.

ProtectConfigurationId
Required: Yes
Type: string

The unique identifier for the protect configuration.

Result Syntax

[
    'ConfigurationSetArn' => '<string>',
    'ConfigurationSetName' => '<string>',
    'ProtectConfigurationArn' => '<string>',
    'ProtectConfigurationId' => '<string>',
]

Result Details

Members
ConfigurationSetArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the configuration set.

ConfigurationSetName
Required: Yes
Type: string

The name of the ConfigurationSet.

ProtectConfigurationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the protect configuration.

ProtectConfigurationId
Required: Yes
Type: string

The unique identifier for the protect configuration.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

DiscardRegistrationVersion

$result = $client->discardRegistrationVersion([/* ... */]);
$promise = $client->discardRegistrationVersionAsync([/* ... */]);

Discard the current version of the registration.

Parameter Syntax

$result = $client->discardRegistrationVersion([
    'RegistrationId' => '<string>', // REQUIRED
]);

Parameter Details

Members
RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

Result Syntax

[
    'RegistrationArn' => '<string>',
    'RegistrationId' => '<string>',
    'RegistrationVersionStatus' => 'DRAFT|SUBMITTED|REVIEWING|REQUIRES_AUTHENTICATION|APPROVED|DISCARDED|DENIED|REVOKED|ARCHIVED',
    'RegistrationVersionStatusHistory' => [
        'ApprovedTimestamp' => <DateTime>,
        'ArchivedTimestamp' => <DateTime>,
        'DeniedTimestamp' => <DateTime>,
        'DiscardedTimestamp' => <DateTime>,
        'DraftTimestamp' => <DateTime>,
        'ReviewingTimestamp' => <DateTime>,
        'RevokedTimestamp' => <DateTime>,
        'SubmittedTimestamp' => <DateTime>,
    ],
    'VersionNumber' => <integer>,
]

Result Details

Members
RegistrationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the registration.

RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

RegistrationVersionStatus
Required: Yes
Type: string

The status of the registration version.

  • DRAFT: The initial status of a registration version after it’s created.

  • SUBMITTED: Your registration has been submitted.

  • REVIEWING: Your registration has been accepted and is being reviewed.

  • APPROVED: Your registration has been approved.

  • DISCARDED: You've abandon this version of their registration to start over with a new version.

  • DENIED: You must fix your registration and resubmit it.

  • REVOKED: Your previously approved registration has been revoked.

  • ARCHIVED: Your previously approved registration version moves into this status when a more recently submitted version is approved.

RegistrationVersionStatusHistory
Required: Yes
Type: RegistrationVersionStatusHistory structure

The RegistrationVersionStatusHistory object contains the time stamps for when the reservations status changes.

VersionNumber
Required: Yes
Type: long (int|float)

The version number of the registration.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

GetProtectConfigurationCountryRuleSet

$result = $client->getProtectConfigurationCountryRuleSet([/* ... */]);
$promise = $client->getProtectConfigurationCountryRuleSetAsync([/* ... */]);

Retrieve the CountryRuleSet for the specified NumberCapability from a protect configuration.

Parameter Syntax

$result = $client->getProtectConfigurationCountryRuleSet([
    'NumberCapability' => 'SMS|VOICE|MMS', // REQUIRED
    'ProtectConfigurationId' => '<string>', // REQUIRED
]);

Parameter Details

Members
NumberCapability
Required: Yes
Type: string

The capability type to return the CountryRuleSet for. Valid values are SMS, VOICE, or MMS.

ProtectConfigurationId
Required: Yes
Type: string

The unique identifier for the protect configuration.

Result Syntax

[
    'CountryRuleSet' => [
        '<IsoCountryCode>' => [
            'ProtectStatus' => 'ALLOW|BLOCK',
        ],
        // ...
    ],
    'NumberCapability' => 'SMS|VOICE|MMS',
    'ProtectConfigurationArn' => '<string>',
    'ProtectConfigurationId' => '<string>',
]

Result Details

Members
CountryRuleSet
Required: Yes
Type: Associative array of custom strings keys (IsoCountryCode) to ProtectConfigurationCountryRuleSetInformation structures

A map of ProtectConfigurationCountryRuleSetInformation objects that contain the details for the requested NumberCapability. The Key is the two-letter ISO country code. For a list of supported ISO country codes, see Supported countries and regions (SMS channel) in the AWS End User Messaging SMS User Guide.

NumberCapability
Required: Yes
Type: string

The capability type associated with the returned ProtectConfigurationCountryRuleSetInformation objects.

ProtectConfigurationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the protect configuration.

ProtectConfigurationId
Required: Yes
Type: string

The unique identifier for the protect configuration.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

GetResourcePolicy

$result = $client->getResourcePolicy([/* ... */]);
$promise = $client->getResourcePolicyAsync([/* ... */]);

Retrieves the JSON text of the resource-based policy document attached to the AWS End User Messaging SMS and Voice resource. A shared resource can be a Pool, Opt-out list, Sender Id, or Phone number.

Parameter Syntax

$result = $client->getResourcePolicy([
    'ResourceArn' => '<string>', // REQUIRED
]);

Parameter Details

Members
ResourceArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the AWS End User Messaging SMS and Voice resource attached to the resource-based policy.

Result Syntax

[
    'CreatedTimestamp' => <DateTime>,
    'Policy' => '<string>',
    'ResourceArn' => '<string>',
]

Result Details

Members
CreatedTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the resource-based policy was created, in UNIX epoch time format.

Policy
Type: string

The JSON formatted string that contains the resource-based policy attached to the AWS End User Messaging SMS and Voice resource.

ResourceArn
Type: string

The Amazon Resource Name (ARN) of the AWS End User Messaging SMS and Voice resource attached to the resource-based policy.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

ListPoolOriginationIdentities

$result = $client->listPoolOriginationIdentities([/* ... */]);
$promise = $client->listPoolOriginationIdentitiesAsync([/* ... */]);

Lists all associated origination identities in your pool.

If you specify filters, the output includes information for only those origination identities that meet the filter criteria.

Parameter Syntax

$result = $client->listPoolOriginationIdentities([
    'Filters' => [
        [
            'Name' => 'iso-country-code|number-capability', // REQUIRED
            'Values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'PoolId' => '<string>', // REQUIRED
]);

Parameter Details

Members
Filters
Type: Array of PoolOriginationIdentitiesFilter structures

An array of PoolOriginationIdentitiesFilter objects to filter the results..

MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

PoolId
Required: Yes
Type: string

The unique identifier for the pool. This value can be either the PoolId or PoolArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

Result Syntax

[
    'NextToken' => '<string>',
    'OriginationIdentities' => [
        [
            'IsoCountryCode' => '<string>',
            'NumberCapabilities' => ['<string>', ...],
            'OriginationIdentity' => '<string>',
            'OriginationIdentityArn' => '<string>',
            'PhoneNumber' => '<string>',
        ],
        // ...
    ],
    'PoolArn' => '<string>',
    'PoolId' => '<string>',
]

Result Details

Members
NextToken
Type: string

The token to be used for the next set of paginated results. If this field is empty then there are no more results.

OriginationIdentities
Type: Array of OriginationIdentityMetadata structures

An array of any OriginationIdentityMetadata objects.

PoolArn
Type: string

The Amazon Resource Name (ARN) for the pool.

PoolId
Type: string

The unique PoolId of the pool.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

ListRegistrationAssociations

$result = $client->listRegistrationAssociations([/* ... */]);
$promise = $client->listRegistrationAssociationsAsync([/* ... */]);

Retreive all of the origination identies that are associated with a registration.

Parameter Syntax

$result = $client->listRegistrationAssociations([
    'Filters' => [
        [
            'Name' => 'resource-type|iso-country-code', // REQUIRED
            'Values' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'RegistrationId' => '<string>', // REQUIRED
]);

Parameter Details

Members
Filters
Type: Array of RegistrationAssociationFilter structures

An array of RegistrationAssociationFilter to apply to the results that are returned.

MaxResults
Type: int

The maximum number of results to return per each request.

NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

Result Syntax

[
    'NextToken' => '<string>',
    'RegistrationArn' => '<string>',
    'RegistrationAssociations' => [
        [
            'IsoCountryCode' => '<string>',
            'PhoneNumber' => '<string>',
            'ResourceArn' => '<string>',
            'ResourceId' => '<string>',
            'ResourceType' => '<string>',
        ],
        // ...
    ],
    'RegistrationId' => '<string>',
    'RegistrationType' => '<string>',
]

Result Details

Members
NextToken
Type: string

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

RegistrationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the registration.

RegistrationAssociations
Required: Yes
Type: Array of RegistrationAssociationMetadata structures

An array of RegistrationAssociationMetadata objects.

RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

RegistrationType
Required: Yes
Type: string

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

ListTagsForResource

$result = $client->listTagsForResource([/* ... */]);
$promise = $client->listTagsForResourceAsync([/* ... */]);

List all tags associated with a resource.

Parameter Syntax

$result = $client->listTagsForResource([
    'ResourceArn' => '<string>', // REQUIRED
]);

Parameter Details

Members
ResourceArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the resource to query for.

Result Syntax

[
    'ResourceArn' => '<string>',
    'Tags' => [
        [
            'Key' => '<string>',
            'Value' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
ResourceArn
Type: string

The ARN of the resource.

Tags
Type: Array of Tag structures

An array of key and value pair tags that are associated with the resource.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

PutKeyword

$result = $client->putKeyword([/* ... */]);
$promise = $client->putKeywordAsync([/* ... */]);

Creates or updates a keyword configuration on an origination phone number or pool.

A keyword is a word that you can search for on a particular phone number or pool. It is also a specific word or phrase that an end user can send to your number to elicit a response, such as an informational message or a special offer. When your number receives a message that begins with a keyword, AWS End User Messaging SMS and Voice responds with a customizable message.

If you specify a keyword that isn't valid, an error is returned.

Parameter Syntax

$result = $client->putKeyword([
    'Keyword' => '<string>', // REQUIRED
    'KeywordAction' => 'AUTOMATIC_RESPONSE|OPT_OUT|OPT_IN',
    'KeywordMessage' => '<string>', // REQUIRED
    'OriginationIdentity' => '<string>', // REQUIRED
]);

Parameter Details

Members
Keyword
Required: Yes
Type: string

The new keyword to add.

KeywordAction
Type: string

The action to perform for the new keyword when it is received.

  • AUTOMATIC_RESPONSE: A message is sent to the recipient.

  • OPT_OUT: Keeps the recipient from receiving future messages.

  • OPT_IN: The recipient wants to receive future messages.

KeywordMessage
Required: Yes
Type: string

The message associated with the keyword.

OriginationIdentity
Required: Yes
Type: string

The origination identity to use such as a PhoneNumberId, PhoneNumberArn, SenderId or SenderIdArn. You can use DescribePhoneNumbers get the values for PhoneNumberId and PhoneNumberArn while DescribeSenderIds can be used to get the values for SenderId and SenderIdArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

Result Syntax

[
    'Keyword' => '<string>',
    'KeywordAction' => 'AUTOMATIC_RESPONSE|OPT_OUT|OPT_IN',
    'KeywordMessage' => '<string>',
    'OriginationIdentity' => '<string>',
    'OriginationIdentityArn' => '<string>',
]

Result Details

Members
Keyword
Type: string

The keyword that was added.

KeywordAction
Type: string

The action to perform when the keyword is used.

KeywordMessage
Type: string

The message associated with the keyword.

OriginationIdentity
Type: string

The PhoneNumberId or PoolId that the keyword was associated with.

OriginationIdentityArn
Type: string

The PhoneNumberArn or PoolArn that the keyword was associated with.

Errors

ServiceQuotaExceededException:

The request would cause a service quota to be exceeded.

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

PutOptedOutNumber

$result = $client->putOptedOutNumber([/* ... */]);
$promise = $client->putOptedOutNumberAsync([/* ... */]);

Creates an opted out destination phone number in the opt-out list.

If the destination phone number isn't valid or if the specified opt-out list doesn't exist, an error is returned.

Parameter Syntax

$result = $client->putOptedOutNumber([
    'OptOutListName' => '<string>', // REQUIRED
    'OptedOutNumber' => '<string>', // REQUIRED
]);

Parameter Details

Members
OptOutListName
Required: Yes
Type: string

The OptOutListName or OptOutListArn to add the phone number to.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

OptedOutNumber
Required: Yes
Type: string

The phone number to add to the OptOutList in E.164 format.

Result Syntax

[
    'EndUserOptedOut' => true || false,
    'OptOutListArn' => '<string>',
    'OptOutListName' => '<string>',
    'OptedOutNumber' => '<string>',
    'OptedOutTimestamp' => <DateTime>,
]

Result Details

Members
EndUserOptedOut
Type: boolean

This is true if it was the end user who requested their phone number be removed.

OptOutListArn
Type: string

The OptOutListArn that the phone number was removed from.

OptOutListName
Type: string

The OptOutListName that the phone number was removed from.

OptedOutNumber
Type: string

The phone number that was added to the OptOutList.

OptedOutTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time that the phone number was added to the OptOutList, in UNIX epoch time format.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

PutRegistrationFieldValue

$result = $client->putRegistrationFieldValue([/* ... */]);
$promise = $client->putRegistrationFieldValueAsync([/* ... */]);

Creates or updates a field value for a registration.

Parameter Syntax

$result = $client->putRegistrationFieldValue([
    'FieldPath' => '<string>', // REQUIRED
    'RegistrationAttachmentId' => '<string>',
    'RegistrationId' => '<string>', // REQUIRED
    'SelectChoices' => ['<string>', ...],
    'TextValue' => '<string>',
]);

Parameter Details

Members
FieldPath
Required: Yes
Type: string

The path to the registration form field. You can use DescribeRegistrationFieldDefinitions for a list of FieldPaths.

RegistrationAttachmentId
Type: string

The unique identifier for the registration attachment.

RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

SelectChoices
Type: Array of strings

An array of values for the form field.

TextValue
Type: string

The text data for a free form field.

Result Syntax

[
    'FieldPath' => '<string>',
    'RegistrationArn' => '<string>',
    'RegistrationAttachmentId' => '<string>',
    'RegistrationId' => '<string>',
    'SelectChoices' => ['<string>', ...],
    'TextValue' => '<string>',
    'VersionNumber' => <integer>,
]

Result Details

Members
FieldPath
Required: Yes
Type: string

The path to the registration form field. You can use DescribeRegistrationFieldDefinitions for a list of FieldPaths.

RegistrationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the registration.

RegistrationAttachmentId
Type: string

The unique identifier for the registration attachment.

RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

SelectChoices
Type: Array of strings

An array of values for the form field.

TextValue
Type: string

The text data for a free form field.

VersionNumber
Required: Yes
Type: long (int|float)

The version number of the registration.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

PutResourcePolicy

$result = $client->putResourcePolicy([/* ... */]);
$promise = $client->putResourcePolicyAsync([/* ... */]);

Attaches a resource-based policy to a AWS End User Messaging SMS and Voice resource(phone number, sender Id, phone poll, or opt-out list) that is used for sharing the resource. A shared resource can be a Pool, Opt-out list, Sender Id, or Phone number. For more information about resource-based policies, see Working with shared resources in the AWS End User Messaging SMS User Guide.

Parameter Syntax

$result = $client->putResourcePolicy([
    'Policy' => '<string>', // REQUIRED
    'ResourceArn' => '<string>', // REQUIRED
]);

Parameter Details

Members
Policy
Required: Yes
Type: string

The JSON formatted resource-based policy to attach.

ResourceArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the AWS End User Messaging SMS and Voice resource to attach the resource-based policy to.

Result Syntax

[
    'CreatedTimestamp' => <DateTime>,
    'Policy' => '<string>',
    'ResourceArn' => '<string>',
]

Result Details

Members
CreatedTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the resource-based policy was created, in UNIX epoch time format.

Policy
Type: string

The JSON formatted Resource Policy.

ResourceArn
Type: string

The Amazon Resource Name (ARN) of the AWS End User Messaging SMS and Voice resource attached to the resource-based policy.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

ReleasePhoneNumber

$result = $client->releasePhoneNumber([/* ... */]);
$promise = $client->releasePhoneNumberAsync([/* ... */]);

Releases an existing origination phone number in your account. Once released, a phone number is no longer available for sending messages.

If the origination phone number has deletion protection enabled or is associated with a pool, an error is returned.

Parameter Syntax

$result = $client->releasePhoneNumber([
    'PhoneNumberId' => '<string>', // REQUIRED
]);

Parameter Details

Members
PhoneNumberId
Required: Yes
Type: string

The PhoneNumberId or PhoneNumberArn of the phone number to release. You can use DescribePhoneNumbers to get the values for PhoneNumberId and PhoneNumberArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

Result Syntax

[
    'CreatedTimestamp' => <DateTime>,
    'IsoCountryCode' => '<string>',
    'MessageType' => 'TRANSACTIONAL|PROMOTIONAL',
    'MonthlyLeasingPrice' => '<string>',
    'NumberCapabilities' => ['<string>', ...],
    'NumberType' => 'SHORT_CODE|LONG_CODE|TOLL_FREE|TEN_DLC|SIMULATOR',
    'OptOutListName' => '<string>',
    'PhoneNumber' => '<string>',
    'PhoneNumberArn' => '<string>',
    'PhoneNumberId' => '<string>',
    'RegistrationId' => '<string>',
    'SelfManagedOptOutsEnabled' => true || false,
    'Status' => 'PENDING|ACTIVE|ASSOCIATING|DISASSOCIATING|DELETED',
    'TwoWayChannelArn' => '<string>',
    'TwoWayChannelRole' => '<string>',
    'TwoWayEnabled' => true || false,
]

Result Details

Members
CreatedTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the phone number was created, in UNIX epoch time format.

IsoCountryCode
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

MessageType
Type: string

The message type that was associated with the phone number.

MonthlyLeasingPrice
Type: string

The monthly price of the phone number, in US dollars.

NumberCapabilities
Type: Array of strings

Specifies if the number could be used for text messages, voice, or both.

NumberType
Type: string

The type of number that was released.

OptOutListName
Type: string

The name of the OptOutList that was associated with the phone number.

PhoneNumber
Type: string

The phone number that was released.

PhoneNumberArn
Type: string

The PhoneNumberArn of the phone number that was released.

PhoneNumberId
Type: string

The PhoneNumberId of the phone number that was released.

RegistrationId
Type: string

The unique identifier for the registration.

SelfManagedOptOutsEnabled
Type: boolean

By default this is set to false. When an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, AWS End User Messaging SMS and Voice automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.

Status
Type: string

The current status of the request.

TwoWayChannelArn
Type: string

The Amazon Resource Name (ARN) of the TwoWayChannel.

TwoWayChannelRole
Type: string

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

TwoWayEnabled
Type: boolean

By default this is set to false. When set to true you can receive incoming text messages from your end recipients.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

ReleaseSenderId

$result = $client->releaseSenderId([/* ... */]);
$promise = $client->releaseSenderIdAsync([/* ... */]);

Releases an existing sender ID in your account.

Parameter Syntax

$result = $client->releaseSenderId([
    'IsoCountryCode' => '<string>', // REQUIRED
    'SenderId' => '<string>', // REQUIRED
]);

Parameter Details

Members
IsoCountryCode
Required: Yes
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

SenderId
Required: Yes
Type: string

The sender ID to release.

Result Syntax

[
    'IsoCountryCode' => '<string>',
    'MessageTypes' => ['<string>', ...],
    'MonthlyLeasingPrice' => '<string>',
    'Registered' => true || false,
    'RegistrationId' => '<string>',
    'SenderId' => '<string>',
    'SenderIdArn' => '<string>',
]

Result Details

Members
IsoCountryCode
Required: Yes
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

MessageTypes
Required: Yes
Type: Array of strings

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

MonthlyLeasingPrice
Required: Yes
Type: string

The monthly price, in US dollars, to lease the sender ID.

Registered
Required: Yes
Type: boolean

True if the sender ID is registered.

RegistrationId
Type: string

The unique identifier for the registration.

SenderId
Required: Yes
Type: string

The sender ID that was released.

SenderIdArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) associated with the SenderId.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

RequestPhoneNumber

$result = $client->requestPhoneNumber([/* ... */]);
$promise = $client->requestPhoneNumberAsync([/* ... */]);

Request an origination phone number for use in your account. For more information on phone number request see Request a phone number in the AWS End User Messaging SMS User Guide.

Parameter Syntax

$result = $client->requestPhoneNumber([
    'ClientToken' => '<string>',
    'DeletionProtectionEnabled' => true || false,
    'IsoCountryCode' => '<string>', // REQUIRED
    'MessageType' => 'TRANSACTIONAL|PROMOTIONAL', // REQUIRED
    'NumberCapabilities' => ['<string>', ...], // REQUIRED
    'NumberType' => 'LONG_CODE|TOLL_FREE|TEN_DLC|SIMULATOR', // REQUIRED
    'OptOutListName' => '<string>',
    'PoolId' => '<string>',
    'RegistrationId' => '<string>',
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
ClientToken
Type: string

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

DeletionProtectionEnabled
Type: boolean

By default this is set to false. When set to true the phone number can't be deleted.

IsoCountryCode
Required: Yes
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

MessageType
Required: Yes
Type: string

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

NumberCapabilities
Required: Yes
Type: Array of strings

Indicates if the phone number will be used for text messages, voice messages, or both.

NumberType
Required: Yes
Type: string

The type of phone number to request.

OptOutListName
Type: string

The name of the OptOutList to associate with the phone number. You can use the OptOutListName or OptOutListArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

PoolId
Type: string

The pool to associated with the phone number. You can use the PoolId or PoolArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

RegistrationId
Type: string

Use this field to attach your phone number for an external registration process.

Tags
Type: Array of Tag structures

An array of tags (key and value pairs) associate with the requested phone number.

Result Syntax

[
    'CreatedTimestamp' => <DateTime>,
    'DeletionProtectionEnabled' => true || false,
    'IsoCountryCode' => '<string>',
    'MessageType' => 'TRANSACTIONAL|PROMOTIONAL',
    'MonthlyLeasingPrice' => '<string>',
    'NumberCapabilities' => ['<string>', ...],
    'NumberType' => 'LONG_CODE|TOLL_FREE|TEN_DLC|SIMULATOR',
    'OptOutListName' => '<string>',
    'PhoneNumber' => '<string>',
    'PhoneNumberArn' => '<string>',
    'PhoneNumberId' => '<string>',
    'PoolId' => '<string>',
    'RegistrationId' => '<string>',
    'SelfManagedOptOutsEnabled' => true || false,
    'Status' => 'PENDING|ACTIVE|ASSOCIATING|DISASSOCIATING|DELETED',
    'Tags' => [
        [
            'Key' => '<string>',
            'Value' => '<string>',
        ],
        // ...
    ],
    'TwoWayChannelArn' => '<string>',
    'TwoWayChannelRole' => '<string>',
    'TwoWayEnabled' => true || false,
]

Result Details

Members
CreatedTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the phone number was created, in UNIX epoch time format.

DeletionProtectionEnabled
Type: boolean

By default this is set to false. When set to true the phone number can't be deleted.

IsoCountryCode
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

MessageType
Type: string

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

MonthlyLeasingPrice
Type: string

The monthly price, in US dollars, to lease the phone number.

NumberCapabilities
Type: Array of strings

Indicates if the phone number will be used for text messages, voice messages or both.

NumberType
Type: string

The type of number that was released.

OptOutListName
Type: string

The name of the OptOutList that is associated with the requested phone number.

PhoneNumber
Type: string

The new phone number that was requested.

PhoneNumberArn
Type: string

The Amazon Resource Name (ARN) of the requested phone number.

PhoneNumberId
Type: string

The unique identifier of the new phone number.

PoolId
Type: string

The unique identifier of the pool associated with the phone number

RegistrationId
Type: string

The unique identifier for the registration.

SelfManagedOptOutsEnabled
Type: boolean

By default this is set to false. When an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, AWS End User Messaging SMS and Voice automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.

Status
Type: string

The current status of the request.

Tags
Type: Array of Tag structures

An array of key and value pair tags that are associated with the phone number.

TwoWayChannelArn
Type: string

The ARN used to identify the two way channel.

TwoWayChannelRole
Type: string

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

TwoWayEnabled
Type: boolean

By default this is set to false. When set to true you can receive incoming text messages from your end recipients.

Errors

ServiceQuotaExceededException:

The request would cause a service quota to be exceeded.

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

RequestSenderId

$result = $client->requestSenderId([/* ... */]);
$promise = $client->requestSenderIdAsync([/* ... */]);

Request a new sender ID that doesn't require registration.

Parameter Syntax

$result = $client->requestSenderId([
    'ClientToken' => '<string>',
    'DeletionProtectionEnabled' => true || false,
    'IsoCountryCode' => '<string>', // REQUIRED
    'MessageTypes' => ['<string>', ...],
    'SenderId' => '<string>', // REQUIRED
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
ClientToken
Type: string

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

DeletionProtectionEnabled
Type: boolean

By default this is set to false. When set to true the sender ID can't be deleted.

IsoCountryCode
Required: Yes
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

MessageTypes
Type: Array of strings

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

SenderId
Required: Yes
Type: string

The sender ID string to request.

Tags
Type: Array of Tag structures

An array of tags (key and value pairs) to associate with the sender ID.

Result Syntax

[
    'DeletionProtectionEnabled' => true || false,
    'IsoCountryCode' => '<string>',
    'MessageTypes' => ['<string>', ...],
    'MonthlyLeasingPrice' => '<string>',
    'Registered' => true || false,
    'SenderId' => '<string>',
    'SenderIdArn' => '<string>',
    'Tags' => [
        [
            'Key' => '<string>',
            'Value' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
DeletionProtectionEnabled
Required: Yes
Type: boolean

By default this is set to false. When set to true the sender ID can't be deleted.

IsoCountryCode
Required: Yes
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

MessageTypes
Required: Yes
Type: Array of strings

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

MonthlyLeasingPrice
Required: Yes
Type: string

The monthly price, in US dollars, to lease the sender ID.

Registered
Required: Yes
Type: boolean

True if the sender ID is registered.

SenderId
Required: Yes
Type: string

The sender ID that was requested.

SenderIdArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) associated with the SenderId.

Tags
Type: Array of Tag structures

An array of tags (key and value pairs) to associate with the sender ID.

Errors

ServiceQuotaExceededException:

The request would cause a service quota to be exceeded.

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

SendDestinationNumberVerificationCode

$result = $client->sendDestinationNumberVerificationCode([/* ... */]);
$promise = $client->sendDestinationNumberVerificationCodeAsync([/* ... */]);

Before you can send test messages to a verified destination phone number you need to opt-in the verified destination phone number. Creates a new text message with a verification code and send it to a verified destination phone number. Once you have the verification code use VerifyDestinationNumber to opt-in the verified destination phone number to receive messages.

Parameter Syntax

$result = $client->sendDestinationNumberVerificationCode([
    'ConfigurationSetName' => '<string>',
    'Context' => ['<string>', ...],
    'DestinationCountryParameters' => ['<string>', ...],
    'LanguageCode' => 'DE_DE|EN_GB|EN_US|ES_419|ES_ES|FR_CA|FR_FR|IT_IT|JA_JP|KO_KR|PT_BR|ZH_CN|ZH_TW',
    'OriginationIdentity' => '<string>',
    'VerificationChannel' => 'TEXT|VOICE', // REQUIRED
    'VerifiedDestinationNumberId' => '<string>', // REQUIRED
]);

Parameter Details

Members
ConfigurationSetName
Type: string

The name of the configuration set to use. This can be either the ConfigurationSetName or ConfigurationSetArn.

Context
Type: Associative array of custom strings keys (ContextKey) to strings

You can specify custom data in this field. If you do, that data is logged to the event destination.

DestinationCountryParameters
Type: Associative array of custom strings keys (DestinationCountryParameterKey) to strings

This field is used for any country-specific registration requirements. Currently, this setting is only used when you send messages to recipients in India using a sender ID. For more information see Special requirements for sending SMS messages to recipients in India.

LanguageCode
Type: string

Choose the language to use for the message.

OriginationIdentity
Type: string

The origination identity of the message. This can be either the PhoneNumber, PhoneNumberId, PhoneNumberArn, SenderId, SenderIdArn, PoolId, or PoolArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

VerificationChannel
Required: Yes
Type: string

Choose to send the verification code as an SMS or voice message.

VerifiedDestinationNumberId
Required: Yes
Type: string

The unique identifier for the verified destination phone number.

Result Syntax

[
    'MessageId' => '<string>',
]

Result Details

Members
MessageId
Required: Yes
Type: string

The unique identifier for the message.

Errors

ServiceQuotaExceededException:

The request would cause a service quota to be exceeded.

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

SendMediaMessage

$result = $client->sendMediaMessage([/* ... */]);
$promise = $client->sendMediaMessageAsync([/* ... */]);

Creates a new multimedia message (MMS) and sends it to a recipient's phone number.

Parameter Syntax

$result = $client->sendMediaMessage([
    'ConfigurationSetName' => '<string>',
    'Context' => ['<string>', ...],
    'DestinationPhoneNumber' => '<string>', // REQUIRED
    'DryRun' => true || false,
    'MaxPrice' => '<string>',
    'MediaUrls' => ['<string>', ...],
    'MessageBody' => '<string>',
    'OriginationIdentity' => '<string>', // REQUIRED
    'ProtectConfigurationId' => '<string>',
    'TimeToLive' => <integer>,
]);

Parameter Details

Members
ConfigurationSetName
Type: string

The name of the configuration set to use. This can be either the ConfigurationSetName or ConfigurationSetArn.

Context
Type: Associative array of custom strings keys (ContextKey) to strings

You can specify custom data in this field. If you do, that data is logged to the event destination.

DestinationPhoneNumber
Required: Yes
Type: string

The destination phone number in E.164 format.

DryRun
Type: boolean

When set to true, the message is checked and validated, but isn't sent to the end recipient.

MaxPrice
Type: string

The maximum amount that you want to spend, in US dollars, per each MMS message.

MediaUrls
Type: Array of strings

An array of URLs to each media file to send.

The media files have to be stored in a publicly available S3 bucket. Supported media file formats are listed in MMS file types, size and character limits. For more information on creating an S3 bucket and managing objects, see Creating a bucket and Uploading objects in the S3 user guide.

MessageBody
Type: string

The text body of the message.

OriginationIdentity
Required: Yes
Type: string

The origination identity of the message. This can be either the PhoneNumber, PhoneNumberId, PhoneNumberArn, SenderId, SenderIdArn, PoolId, or PoolArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

ProtectConfigurationId
Type: string

The unique identifier of the protect configuration to use.

TimeToLive
Type: int

How long the text message is valid for. By default this is 72 hours.

Result Syntax

[
    'MessageId' => '<string>',
]

Result Details

Members
MessageId
Type: string

The unique identifier for the message.

Errors

ServiceQuotaExceededException:

The request would cause a service quota to be exceeded.

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

SendTextMessage

$result = $client->sendTextMessage([/* ... */]);
$promise = $client->sendTextMessageAsync([/* ... */]);

Creates a new text message and sends it to a recipient's phone number. SendTextMessage only sends an SMS message to one recipient each time it is invoked.

SMS throughput limits are measured in Message Parts per Second (MPS). Your MPS limit depends on the destination country of your messages, as well as the type of phone number (origination number) that you use to send the message. For more information about MPS, see Message Parts per Second (MPS) limits in the AWS End User Messaging SMS User Guide.

Parameter Syntax

$result = $client->sendTextMessage([
    'ConfigurationSetName' => '<string>',
    'Context' => ['<string>', ...],
    'DestinationCountryParameters' => ['<string>', ...],
    'DestinationPhoneNumber' => '<string>', // REQUIRED
    'DryRun' => true || false,
    'Keyword' => '<string>',
    'MaxPrice' => '<string>',
    'MessageBody' => '<string>',
    'MessageType' => 'TRANSACTIONAL|PROMOTIONAL',
    'OriginationIdentity' => '<string>',
    'ProtectConfigurationId' => '<string>',
    'TimeToLive' => <integer>,
]);

Parameter Details

Members
ConfigurationSetName
Type: string

The name of the configuration set to use. This can be either the ConfigurationSetName or ConfigurationSetArn.

Context
Type: Associative array of custom strings keys (ContextKey) to strings

You can specify custom data in this field. If you do, that data is logged to the event destination.

DestinationCountryParameters
Type: Associative array of custom strings keys (DestinationCountryParameterKey) to strings

This field is used for any country-specific registration requirements. Currently, this setting is only used when you send messages to recipients in India using a sender ID. For more information see Special requirements for sending SMS messages to recipients in India.

  • IN_ENTITY_ID The entity ID or Principal Entity (PE) ID that you received after completing the sender ID registration process.

  • IN_TEMPLATE_ID The template ID that you received after completing the sender ID registration process.

    Make sure that the Template ID that you specify matches your message template exactly. If your message doesn't match the template that you provided during the registration process, the mobile carriers might reject your message.

DestinationPhoneNumber
Required: Yes
Type: string

The destination phone number in E.164 format.

DryRun
Type: boolean

When set to true, the message is checked and validated, but isn't sent to the end recipient. You are not charged for using DryRun.

The Message Parts per Second (MPS) limit when using DryRun is five. If your origination identity has a lower MPS limit then the lower MPS limit is used. For more information about MPS limits, see Message Parts per Second (MPS) limits in the AWS End User Messaging SMS User Guide..

Keyword
Type: string

When you register a short code in the US, you must specify a program name. If you don’t have a US short code, omit this attribute.

MaxPrice
Type: string

The maximum amount that you want to spend, in US dollars, per each text message. If the calculated amount to send the text message is greater than MaxPrice, the message is not sent and an error is returned.

MessageBody
Type: string

The body of the text message.

MessageType
Type: string

The type of message. Valid values are for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

OriginationIdentity
Type: string

The origination identity of the message. This can be either the PhoneNumber, PhoneNumberId, PhoneNumberArn, SenderId, SenderIdArn, PoolId, or PoolArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

ProtectConfigurationId
Type: string

The unique identifier for the protect configuration.

TimeToLive
Type: int

How long the text message is valid for, in seconds. By default this is 72 hours. If the messages isn't handed off before the TTL expires we stop attempting to hand off the message and return TTL_EXPIRED event.

Result Syntax

[
    'MessageId' => '<string>',
]

Result Details

Members
MessageId
Type: string

The unique identifier for the message.

Errors

ServiceQuotaExceededException:

The request would cause a service quota to be exceeded.

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

SendVoiceMessage

$result = $client->sendVoiceMessage([/* ... */]);
$promise = $client->sendVoiceMessageAsync([/* ... */]);

Allows you to send a request that sends a voice message. This operation uses Amazon Polly to convert a text script into a voice message.

Parameter Syntax

$result = $client->sendVoiceMessage([
    'ConfigurationSetName' => '<string>',
    'Context' => ['<string>', ...],
    'DestinationPhoneNumber' => '<string>', // REQUIRED
    'DryRun' => true || false,
    'MaxPricePerMinute' => '<string>',
    'MessageBody' => '<string>',
    'MessageBodyTextType' => 'TEXT|SSML',
    'OriginationIdentity' => '<string>', // REQUIRED
    'ProtectConfigurationId' => '<string>',
    'TimeToLive' => <integer>,
    'VoiceId' => 'AMY|ASTRID|BIANCA|BRIAN|CAMILA|CARLA|CARMEN|CELINE|CHANTAL|CONCHITA|CRISTIANO|DORA|EMMA|ENRIQUE|EWA|FILIZ|GERAINT|GIORGIO|GWYNETH|HANS|INES|IVY|JACEK|JAN|JOANNA|JOEY|JUSTIN|KARL|KENDRA|KIMBERLY|LEA|LIV|LOTTE|LUCIA|LUPE|MADS|MAJA|MARLENE|MATHIEU|MATTHEW|MAXIM|MIA|MIGUEL|MIZUKI|NAJA|NICOLE|PENELOPE|RAVEENA|RICARDO|RUBEN|RUSSELL|SALLI|SEOYEON|TAKUMI|TATYANA|VICKI|VITORIA|ZEINA|ZHIYU',
]);

Parameter Details

Members
ConfigurationSetName
Type: string

The name of the configuration set to use. This can be either the ConfigurationSetName or ConfigurationSetArn.

Context
Type: Associative array of custom strings keys (ContextKey) to strings

You can specify custom data in this field. If you do, that data is logged to the event destination.

DestinationPhoneNumber
Required: Yes
Type: string

The destination phone number in E.164 format.

DryRun
Type: boolean

When set to true, the message is checked and validated, but isn't sent to the end recipient.

MaxPricePerMinute
Type: string

The maximum amount to spend per voice message, in US dollars.

MessageBody
Type: string

The text to convert to a voice message.

MessageBodyTextType
Type: string

Specifies if the MessageBody field contains text or speech synthesis markup language (SSML).

  • TEXT: This is the default value. When used the maximum character limit is 3000.

  • SSML: When used the maximum character limit is 6000 including SSML tagging.

OriginationIdentity
Required: Yes
Type: string

The origination identity to use for the voice call. This can be the PhoneNumber, PhoneNumberId, PhoneNumberArn, PoolId, or PoolArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

ProtectConfigurationId
Type: string

The unique identifier for the protect configuration.

TimeToLive
Type: int

How long the voice message is valid for. By default this is 72 hours.

VoiceId
Type: string

The voice for the Amazon Polly service to use. By default this is set to "MATTHEW".

Result Syntax

[
    'MessageId' => '<string>',
]

Result Details

Members
MessageId
Type: string

The unique identifier for the message.

Errors

ServiceQuotaExceededException:

The request would cause a service quota to be exceeded.

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

SetAccountDefaultProtectConfiguration

$result = $client->setAccountDefaultProtectConfiguration([/* ... */]);
$promise = $client->setAccountDefaultProtectConfigurationAsync([/* ... */]);

Set a protect configuration as your account default. You can only have one account default protect configuration at a time. The current account default protect configuration is replaced with the provided protect configuration.

Parameter Syntax

$result = $client->setAccountDefaultProtectConfiguration([
    'ProtectConfigurationId' => '<string>', // REQUIRED
]);

Parameter Details

Members
ProtectConfigurationId
Required: Yes
Type: string

The unique identifier for the protect configuration.

Result Syntax

[
    'DefaultProtectConfigurationArn' => '<string>',
    'DefaultProtectConfigurationId' => '<string>',
]

Result Details

Members
DefaultProtectConfigurationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the account default protect configuration.

DefaultProtectConfigurationId
Required: Yes
Type: string

The unique identifier of the account default protect configuration.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

SetDefaultMessageType

$result = $client->setDefaultMessageType([/* ... */]);
$promise = $client->setDefaultMessageTypeAsync([/* ... */]);

Sets the default message type on a configuration set.

Choose the category of SMS messages that you plan to send from this account. If you send account-related messages or time-sensitive messages such as one-time passcodes, choose Transactional. If you plan to send messages that contain marketing material or other promotional content, choose Promotional. This setting applies to your entire Amazon Web Services account.

Parameter Syntax

$result = $client->setDefaultMessageType([
    'ConfigurationSetName' => '<string>', // REQUIRED
    'MessageType' => 'TRANSACTIONAL|PROMOTIONAL', // REQUIRED
]);

Parameter Details

Members
ConfigurationSetName
Required: Yes
Type: string

The configuration set to update with a new default message type. This field can be the ConsigurationSetName or ConfigurationSetArn.

MessageType
Required: Yes
Type: string

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

Result Syntax

[
    'ConfigurationSetArn' => '<string>',
    'ConfigurationSetName' => '<string>',
    'MessageType' => 'TRANSACTIONAL|PROMOTIONAL',
]

Result Details

Members
ConfigurationSetArn
Type: string

The Amazon Resource Name (ARN) of the updated configuration set.

ConfigurationSetName
Type: string

The name of the configuration set that was updated.

MessageType
Type: string

The new default message type of the configuration set.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

SetDefaultSenderId

$result = $client->setDefaultSenderId([/* ... */]);
$promise = $client->setDefaultSenderIdAsync([/* ... */]);

Sets default sender ID on a configuration set.

When sending a text message to a destination country that supports sender IDs, the default sender ID on the configuration set specified will be used if no dedicated origination phone numbers or registered sender IDs are available in your account.

Parameter Syntax

$result = $client->setDefaultSenderId([
    'ConfigurationSetName' => '<string>', // REQUIRED
    'SenderId' => '<string>', // REQUIRED
]);

Parameter Details

Members
ConfigurationSetName
Required: Yes
Type: string

The configuration set to updated with a new default SenderId. This field can be the ConsigurationSetName or ConfigurationSetArn.

SenderId
Required: Yes
Type: string

The current sender ID for the configuration set. When sending a text message to a destination country which supports SenderIds, the default sender ID on the configuration set specified on SendTextMessage will be used if no dedicated origination phone numbers or registered SenderIds are available in your account, instead of a generic sender ID, such as 'NOTICE'.

Result Syntax

[
    'ConfigurationSetArn' => '<string>',
    'ConfigurationSetName' => '<string>',
    'SenderId' => '<string>',
]

Result Details

Members
ConfigurationSetArn
Type: string

The Amazon Resource Name (ARN) of the updated configuration set.

ConfigurationSetName
Type: string

The name of the configuration set that was updated.

SenderId
Type: string

The default sender ID to set for the ConfigurationSet.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

SetMediaMessageSpendLimitOverride

$result = $client->setMediaMessageSpendLimitOverride([/* ... */]);
$promise = $client->setMediaMessageSpendLimitOverrideAsync([/* ... */]);

Sets an account level monthly spend limit override for sending MMS messages. The requested spend limit must be less than or equal to the MaxLimit, which is set by Amazon Web Services.

Parameter Syntax

$result = $client->setMediaMessageSpendLimitOverride([
    'MonthlyLimit' => <integer>, // REQUIRED
]);

Parameter Details

Members
MonthlyLimit
Required: Yes
Type: long (int|float)

The new monthly limit to enforce on text messages.

Result Syntax

[
    'MonthlyLimit' => <integer>,
]

Result Details

Members
MonthlyLimit
Type: long (int|float)

The current monthly limit to enforce on sending text messages.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

SetTextMessageSpendLimitOverride

$result = $client->setTextMessageSpendLimitOverride([/* ... */]);
$promise = $client->setTextMessageSpendLimitOverrideAsync([/* ... */]);

Sets an account level monthly spend limit override for sending text messages. The requested spend limit must be less than or equal to the MaxLimit, which is set by Amazon Web Services.

Parameter Syntax

$result = $client->setTextMessageSpendLimitOverride([
    'MonthlyLimit' => <integer>, // REQUIRED
]);

Parameter Details

Members
MonthlyLimit
Required: Yes
Type: long (int|float)

The new monthly limit to enforce on text messages.

Result Syntax

[
    'MonthlyLimit' => <integer>,
]

Result Details

Members
MonthlyLimit
Type: long (int|float)

The current monthly limit to enforce on sending text messages.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

SetVoiceMessageSpendLimitOverride

$result = $client->setVoiceMessageSpendLimitOverride([/* ... */]);
$promise = $client->setVoiceMessageSpendLimitOverrideAsync([/* ... */]);

Sets an account level monthly spend limit override for sending voice messages. The requested spend limit must be less than or equal to the MaxLimit, which is set by Amazon Web Services.

Parameter Syntax

$result = $client->setVoiceMessageSpendLimitOverride([
    'MonthlyLimit' => <integer>, // REQUIRED
]);

Parameter Details

Members
MonthlyLimit
Required: Yes
Type: long (int|float)

The new monthly limit to enforce on voice messages.

Result Syntax

[
    'MonthlyLimit' => <integer>,
]

Result Details

Members
MonthlyLimit
Type: long (int|float)

The current monthly limit to enforce on sending voice messages.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

SubmitRegistrationVersion

$result = $client->submitRegistrationVersion([/* ... */]);
$promise = $client->submitRegistrationVersionAsync([/* ... */]);

Submit the specified registration for review and approval.

Parameter Syntax

$result = $client->submitRegistrationVersion([
    'RegistrationId' => '<string>', // REQUIRED
]);

Parameter Details

Members
RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

Result Syntax

[
    'RegistrationArn' => '<string>',
    'RegistrationId' => '<string>',
    'RegistrationVersionStatus' => 'DRAFT|SUBMITTED|REVIEWING|REQUIRES_AUTHENTICATION|APPROVED|DISCARDED|DENIED|REVOKED|ARCHIVED',
    'RegistrationVersionStatusHistory' => [
        'ApprovedTimestamp' => <DateTime>,
        'ArchivedTimestamp' => <DateTime>,
        'DeniedTimestamp' => <DateTime>,
        'DiscardedTimestamp' => <DateTime>,
        'DraftTimestamp' => <DateTime>,
        'ReviewingTimestamp' => <DateTime>,
        'RevokedTimestamp' => <DateTime>,
        'SubmittedTimestamp' => <DateTime>,
    ],
    'VersionNumber' => <integer>,
]

Result Details

Members
RegistrationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the registration.

RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

RegistrationVersionStatus
Required: Yes
Type: string

The status of the registration version.

  • DRAFT: The initial status of a registration version after it’s created.

  • SUBMITTED: Your registration has been submitted.

  • REVIEWING: Your registration has been accepted and is being reviewed.

  • APPROVED: Your registration has been approved.

  • DISCARDED: You've abandon this version of their registration to start over with a new version.

  • DENIED: You must fix your registration and resubmit it.

  • REVOKED: Your previously approved registration has been revoked.

  • ARCHIVED: Your previously approved registration version moves into this status when a more recently submitted version is approved.

RegistrationVersionStatusHistory
Required: Yes
Type: RegistrationVersionStatusHistory structure

The RegistrationVersionStatusHistory object contains the time stamps for when the reservations status changes.

VersionNumber
Required: Yes
Type: long (int|float)

The version number of the registration.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

TagResource

$result = $client->tagResource([/* ... */]);
$promise = $client->tagResourceAsync([/* ... */]);

Adds or overwrites only the specified tags for the specified resource. When you specify an existing tag key, the value is overwritten with the new value. Each resource can have a maximum of 50 tags. Each tag consists of a key and an optional value. Tag keys must be unique per resource. For more information about tags, see Tags in the AWS End User Messaging SMS User Guide.

Parameter Syntax

$result = $client->tagResource([
    'ResourceArn' => '<string>', // REQUIRED
    'Tags' => [ // REQUIRED
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
ResourceArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the resource.

Tags
Required: Yes
Type: Array of Tag structures

An array of key and value pair tags that are associated with the resource.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ServiceQuotaExceededException:

The request would cause a service quota to be exceeded.

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

UntagResource

$result = $client->untagResource([/* ... */]);
$promise = $client->untagResourceAsync([/* ... */]);

Removes the association of the specified tags from a resource. For more information on tags see Tags in the AWS End User Messaging SMS User Guide.

Parameter Syntax

$result = $client->untagResource([
    'ResourceArn' => '<string>', // REQUIRED
    'TagKeys' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
ResourceArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the resource.

TagKeys
Required: Yes
Type: Array of strings

An array of tag key values to unassociate with the resource.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

UpdateEventDestination

$result = $client->updateEventDestination([/* ... */]);
$promise = $client->updateEventDestinationAsync([/* ... */]);

Updates an existing event destination in a configuration set. You can update the IAM role ARN for CloudWatch Logs and Firehose. You can also enable or disable the event destination.

You may want to update an event destination to change its matching event types or updating the destination resource ARN. You can't change an event destination's type between CloudWatch Logs, Firehose, and Amazon SNS.

Parameter Syntax

$result = $client->updateEventDestination([
    'CloudWatchLogsDestination' => [
        'IamRoleArn' => '<string>', // REQUIRED
        'LogGroupArn' => '<string>', // REQUIRED
    ],
    'ConfigurationSetName' => '<string>', // REQUIRED
    'Enabled' => true || false,
    'EventDestinationName' => '<string>', // REQUIRED
    'KinesisFirehoseDestination' => [
        'DeliveryStreamArn' => '<string>', // REQUIRED
        'IamRoleArn' => '<string>', // REQUIRED
    ],
    'MatchingEventTypes' => ['<string>', ...],
    'SnsDestination' => [
        'TopicArn' => '<string>', // REQUIRED
    ],
]);

Parameter Details

Members
CloudWatchLogsDestination
Type: CloudWatchLogsDestination structure

An object that contains information about an event destination that sends data to CloudWatch Logs.

ConfigurationSetName
Required: Yes
Type: string

The configuration set to update with the new event destination. Valid values for this can be the ConfigurationSetName or ConfigurationSetArn.

Enabled
Type: boolean

When set to true logging is enabled.

EventDestinationName
Required: Yes
Type: string

The name to use for the event destination.

KinesisFirehoseDestination
Type: KinesisFirehoseDestination structure

An object that contains information about an event destination for logging to Firehose.

MatchingEventTypes
Type: Array of strings

An array of event types that determine which events to log.

The TEXT_SENT event type is not supported.

SnsDestination
Type: SnsDestination structure

An object that contains information about an event destination that sends data to Amazon SNS.

Result Syntax

[
    'ConfigurationSetArn' => '<string>',
    'ConfigurationSetName' => '<string>',
    'EventDestination' => [
        'CloudWatchLogsDestination' => [
            'IamRoleArn' => '<string>',
            'LogGroupArn' => '<string>',
        ],
        'Enabled' => true || false,
        'EventDestinationName' => '<string>',
        'KinesisFirehoseDestination' => [
            'DeliveryStreamArn' => '<string>',
            'IamRoleArn' => '<string>',
        ],
        'MatchingEventTypes' => ['<string>', ...],
        'SnsDestination' => [
            'TopicArn' => '<string>',
        ],
    ],
]

Result Details

Members
ConfigurationSetArn
Type: string

The Amazon Resource Name (ARN) for the ConfigurationSet that was updated.

ConfigurationSetName
Type: string

The name of the configuration set.

EventDestination
Type: EventDestination structure

An EventDestination object containing the details of where events will be logged.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

UpdatePhoneNumber

$result = $client->updatePhoneNumber([/* ... */]);
$promise = $client->updatePhoneNumberAsync([/* ... */]);

Updates the configuration of an existing origination phone number. You can update the opt-out list, enable or disable two-way messaging, change the TwoWayChannelArn, enable or disable self-managed opt-outs, and enable or disable deletion protection.

If the origination phone number is associated with a pool, an error is returned.

Parameter Syntax

$result = $client->updatePhoneNumber([
    'DeletionProtectionEnabled' => true || false,
    'OptOutListName' => '<string>',
    'PhoneNumberId' => '<string>', // REQUIRED
    'SelfManagedOptOutsEnabled' => true || false,
    'TwoWayChannelArn' => '<string>',
    'TwoWayChannelRole' => '<string>',
    'TwoWayEnabled' => true || false,
]);

Parameter Details

Members
DeletionProtectionEnabled
Type: boolean

By default this is set to false. When set to true the phone number can't be deleted.

OptOutListName
Type: string

The OptOutList to add the phone number to. Valid values for this field can be either the OutOutListName or OutOutListArn.

PhoneNumberId
Required: Yes
Type: string

The unique identifier of the phone number. Valid values for this field can be either the PhoneNumberId or PhoneNumberArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

SelfManagedOptOutsEnabled
Type: boolean

By default this is set to false. When an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, AWS End User Messaging SMS and Voice automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.

TwoWayChannelArn
Type: string

The Amazon Resource Name (ARN) of the two way channel.

TwoWayChannelRole
Type: string

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

TwoWayEnabled
Type: boolean

By default this is set to false. When set to true you can receive incoming text messages from your end recipients.

Result Syntax

[
    'CreatedTimestamp' => <DateTime>,
    'DeletionProtectionEnabled' => true || false,
    'IsoCountryCode' => '<string>',
    'MessageType' => 'TRANSACTIONAL|PROMOTIONAL',
    'MonthlyLeasingPrice' => '<string>',
    'NumberCapabilities' => ['<string>', ...],
    'NumberType' => 'SHORT_CODE|LONG_CODE|TOLL_FREE|TEN_DLC|SIMULATOR',
    'OptOutListName' => '<string>',
    'PhoneNumber' => '<string>',
    'PhoneNumberArn' => '<string>',
    'PhoneNumberId' => '<string>',
    'RegistrationId' => '<string>',
    'SelfManagedOptOutsEnabled' => true || false,
    'Status' => 'PENDING|ACTIVE|ASSOCIATING|DISASSOCIATING|DELETED',
    'TwoWayChannelArn' => '<string>',
    'TwoWayChannelRole' => '<string>',
    'TwoWayEnabled' => true || false,
]

Result Details

Members
CreatedTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the phone number was created, in UNIX epoch time format.

DeletionProtectionEnabled
Type: boolean

When set to true the phone number can't be deleted.

IsoCountryCode
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

MessageType
Type: string

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

MonthlyLeasingPrice
Type: string

The monthly leasing price of the phone number, in US dollars.

NumberCapabilities
Type: Array of strings

Specifies if the number could be used for text messages, voice or both.

NumberType
Type: string

The type of number that was requested.

OptOutListName
Type: string

The name of the OptOutList associated with the phone number.

PhoneNumber
Type: string

The phone number that was updated.

PhoneNumberArn
Type: string

The Amazon Resource Name (ARN) of the updated phone number.

PhoneNumberId
Type: string

The unique identifier of the phone number.

RegistrationId
Type: string

The unique identifier for the registration.

SelfManagedOptOutsEnabled
Type: boolean

This is true if self managed opt-out are enabled.

Status
Type: string

The current status of the request.

TwoWayChannelArn
Type: string

The Amazon Resource Name (ARN) of the two way channel.

TwoWayChannelRole
Type: string

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

TwoWayEnabled
Type: boolean

By default this is set to false. When set to true you can receive incoming text messages from your end recipients.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

UpdatePool

$result = $client->updatePool([/* ... */]);
$promise = $client->updatePoolAsync([/* ... */]);

Updates the configuration of an existing pool. You can update the opt-out list, enable or disable two-way messaging, change the TwoWayChannelArn, enable or disable self-managed opt-outs, enable or disable deletion protection, and enable or disable shared routes.

Parameter Syntax

$result = $client->updatePool([
    'DeletionProtectionEnabled' => true || false,
    'OptOutListName' => '<string>',
    'PoolId' => '<string>', // REQUIRED
    'SelfManagedOptOutsEnabled' => true || false,
    'SharedRoutesEnabled' => true || false,
    'TwoWayChannelArn' => '<string>',
    'TwoWayChannelRole' => '<string>',
    'TwoWayEnabled' => true || false,
]);

Parameter Details

Members
DeletionProtectionEnabled
Type: boolean

When set to true the pool can't be deleted.

OptOutListName
Type: string

The OptOutList to associate with the pool. Valid values are either OptOutListName or OptOutListArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

PoolId
Required: Yes
Type: string

The unique identifier of the pool to update. Valid values are either the PoolId or PoolArn.

If you are using a shared AWS End User Messaging SMS and Voice resource then you must use the full Amazon Resource Name(ARN).

SelfManagedOptOutsEnabled
Type: boolean

By default this is set to false. When an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, AWS End User Messaging SMS and Voice automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.

SharedRoutesEnabled
Type: boolean

Indicates whether shared routes are enabled for the pool.

TwoWayChannelArn
Type: string

The Amazon Resource Name (ARN) of the two way channel.

TwoWayChannelRole
Type: string

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

TwoWayEnabled
Type: boolean

By default this is set to false. When set to true you can receive incoming text messages from your end recipients.

Result Syntax

[
    'CreatedTimestamp' => <DateTime>,
    'DeletionProtectionEnabled' => true || false,
    'MessageType' => 'TRANSACTIONAL|PROMOTIONAL',
    'OptOutListName' => '<string>',
    'PoolArn' => '<string>',
    'PoolId' => '<string>',
    'SelfManagedOptOutsEnabled' => true || false,
    'SharedRoutesEnabled' => true || false,
    'Status' => 'CREATING|ACTIVE|DELETING',
    'TwoWayChannelArn' => '<string>',
    'TwoWayChannelRole' => '<string>',
    'TwoWayEnabled' => true || false,
]

Result Details

Members
CreatedTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the pool was created, in UNIX epoch time format.

DeletionProtectionEnabled
Type: boolean

When set to true the pool can't be deleted.

MessageType
Type: string

The type of message for the pool to use.

OptOutListName
Type: string

The name of the OptOutList associated with the pool.

PoolArn
Type: string

The ARN of the pool.

PoolId
Type: string

The unique identifier of the pool.

SelfManagedOptOutsEnabled
Type: boolean

When an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, AWS End User Messaging SMS and Voice automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.

SharedRoutesEnabled
Type: boolean

Indicates whether shared routes are enabled for the pool.

Status
Type: string

The current status of the pool update request.

TwoWayChannelArn
Type: string

The Amazon Resource Name (ARN) of the two way channel.

TwoWayChannelRole
Type: string

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

TwoWayEnabled
Type: boolean

By default this is set to false. When set to true you can receive incoming text messages from your end recipients.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

UpdateProtectConfiguration

$result = $client->updateProtectConfiguration([/* ... */]);
$promise = $client->updateProtectConfigurationAsync([/* ... */]);

Update the setting for an existing protect configuration.

Parameter Syntax

$result = $client->updateProtectConfiguration([
    'DeletionProtectionEnabled' => true || false,
    'ProtectConfigurationId' => '<string>', // REQUIRED
]);

Parameter Details

Members
DeletionProtectionEnabled
Type: boolean

When set to true deletion protection is enabled. By default this is set to false.

ProtectConfigurationId
Required: Yes
Type: string

The unique identifier for the protect configuration.

Result Syntax

[
    'AccountDefault' => true || false,
    'CreatedTimestamp' => <DateTime>,
    'DeletionProtectionEnabled' => true || false,
    'ProtectConfigurationArn' => '<string>',
    'ProtectConfigurationId' => '<string>',
]

Result Details

Members
AccountDefault
Required: Yes
Type: boolean

This is true if the protect configuration is set as your account default protect configuration.

CreatedTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the protect configuration was created, in UNIX epoch time format.

DeletionProtectionEnabled
Required: Yes
Type: boolean

The status of deletion protection for the protect configuration. When set to true deletion protection is enabled. By default this is set to false.

ProtectConfigurationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the protect configuration.

ProtectConfigurationId
Required: Yes
Type: string

The unique identifier for the protect configuration.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

UpdateProtectConfigurationCountryRuleSet

$result = $client->updateProtectConfigurationCountryRuleSet([/* ... */]);
$promise = $client->updateProtectConfigurationCountryRuleSetAsync([/* ... */]);

Update a country rule set to ALLOW or BLOCK messages to be sent to the specified destination counties. You can update one or multiple countries at a time. The updates are only applied to the specified NumberCapability type.

Parameter Syntax

$result = $client->updateProtectConfigurationCountryRuleSet([
    'CountryRuleSetUpdates' => [ // REQUIRED
        '<IsoCountryCode>' => [
            'ProtectStatus' => 'ALLOW|BLOCK', // REQUIRED
        ],
        // ...
    ],
    'NumberCapability' => 'SMS|VOICE|MMS', // REQUIRED
    'ProtectConfigurationId' => '<string>', // REQUIRED
]);

Parameter Details

Members
CountryRuleSetUpdates
Required: Yes
Type: Associative array of custom strings keys (IsoCountryCode) to ProtectConfigurationCountryRuleSetInformation structures

A map of ProtectConfigurationCountryRuleSetInformation objects that contain the details for the requested NumberCapability. The Key is the two-letter ISO country code. For a list of supported ISO country codes, see Supported countries and regions (SMS channel) in the AWS End User Messaging SMS User Guide.

NumberCapability
Required: Yes
Type: string

The number capability to apply the CountryRuleSetUpdates updates to.

ProtectConfigurationId
Required: Yes
Type: string

The unique identifier for the protect configuration.

Result Syntax

[
    'CountryRuleSet' => [
        '<IsoCountryCode>' => [
            'ProtectStatus' => 'ALLOW|BLOCK',
        ],
        // ...
    ],
    'NumberCapability' => 'SMS|VOICE|MMS',
    'ProtectConfigurationArn' => '<string>',
    'ProtectConfigurationId' => '<string>',
]

Result Details

Members
CountryRuleSet
Required: Yes
Type: Associative array of custom strings keys (IsoCountryCode) to ProtectConfigurationCountryRuleSetInformation structures

An array of ProtectConfigurationCountryRuleSetInformation containing the rules for the NumberCapability.

NumberCapability
Required: Yes
Type: string

The number capability that was updated

ProtectConfigurationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the protect configuration.

ProtectConfigurationId
Required: Yes
Type: string

The unique identifier for the protect configuration.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

UpdateSenderId

$result = $client->updateSenderId([/* ... */]);
$promise = $client->updateSenderIdAsync([/* ... */]);

Updates the configuration of an existing sender ID.

Parameter Syntax

$result = $client->updateSenderId([
    'DeletionProtectionEnabled' => true || false,
    'IsoCountryCode' => '<string>', // REQUIRED
    'SenderId' => '<string>', // REQUIRED
]);

Parameter Details

Members
DeletionProtectionEnabled
Type: boolean

By default this is set to false. When set to true the sender ID can't be deleted.

IsoCountryCode
Required: Yes
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

SenderId
Required: Yes
Type: string

The sender ID to update.

Result Syntax

[
    'DeletionProtectionEnabled' => true || false,
    'IsoCountryCode' => '<string>',
    'MessageTypes' => ['<string>', ...],
    'MonthlyLeasingPrice' => '<string>',
    'Registered' => true || false,
    'RegistrationId' => '<string>',
    'SenderId' => '<string>',
    'SenderIdArn' => '<string>',
]

Result Details

Members
DeletionProtectionEnabled
Required: Yes
Type: boolean

By default this is set to false. When set to true the sender ID can't be deleted.

IsoCountryCode
Required: Yes
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

MessageTypes
Required: Yes
Type: Array of strings

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

MonthlyLeasingPrice
Required: Yes
Type: string

The monthly price, in US dollars, to lease the sender ID.

Registered
Required: Yes
Type: boolean

True if the sender ID is registered..

RegistrationId
Type: string

The unique identifier for the registration.

SenderId
Required: Yes
Type: string

The sender ID that was updated.

SenderIdArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) associated with the SenderId.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

VerifyDestinationNumber

$result = $client->verifyDestinationNumber([/* ... */]);
$promise = $client->verifyDestinationNumberAsync([/* ... */]);

Use the verification code that was received by the verified destination phone number to opt-in the verified destination phone number to receive more messages.

Parameter Syntax

$result = $client->verifyDestinationNumber([
    'VerificationCode' => '<string>', // REQUIRED
    'VerifiedDestinationNumberId' => '<string>', // REQUIRED
]);

Parameter Details

Members
VerificationCode
Required: Yes
Type: string

The verification code that was received by the verified destination phone number.

VerifiedDestinationNumberId
Required: Yes
Type: string

The unique identifier for the verififed destination phone number.

Result Syntax

[
    'CreatedTimestamp' => <DateTime>,
    'DestinationPhoneNumber' => '<string>',
    'Status' => 'PENDING|VERIFIED',
    'VerifiedDestinationNumberArn' => '<string>',
    'VerifiedDestinationNumberId' => '<string>',
]

Result Details

Members
CreatedTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the destination phone number was created, in UNIX epoch time format.

DestinationPhoneNumber
Required: Yes
Type: string

The phone number in E.164 format.

Status
Required: Yes
Type: string

The status for being able to send messages to the phone number.

VerifiedDestinationNumberArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the verified destination phone number.

VerifiedDestinationNumberId
Required: Yes
Type: string

The unique identifier for the verified destination phone number.

Errors

ThrottlingException:

An error that occurred because too many requests were sent during a certain amount of time.

AccessDeniedException:

The request was denied because you don't have sufficient permissions to access the resource.

ResourceNotFoundException:

A requested resource couldn't be found.

ValidationException:

A validation exception for a field.

ConflictException:

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

InternalServerException:

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

Shapes

AccessDeniedException

Description

The request was denied because you don't have sufficient permissions to access the resource.

Members
Message
Type: string
Reason
Type: string

The reason for the exception.

AccountAttribute

Description

Displays the attributes associated with a single Amazon Web Services account.

Members
Name
Required: Yes
Type: string

The name of the account attribute.

Value
Required: Yes
Type: string

The value associated with the account attribute name.

AccountLimit

Description

The current resource quotas associated with an Amazon Web Services account.

Members
Max
Required: Yes
Type: long (int|float)

The Amazon Web Services set limit for that resource type, in US dollars.

Name
Required: Yes
Type: string

The name of the attribute to apply the account limit to.

Used
Required: Yes
Type: long (int|float)

The current amount that has been spent, in US dollars.

CloudWatchLogsDestination

Description

Contains the destination configuration to use when publishing message sending events.

Members
IamRoleArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of an Identity and Access Management role that is able to write event data to an Amazon CloudWatch destination.

LogGroupArn
Required: Yes
Type: string

The name of the Amazon CloudWatch log group that you want to record events in.

ConfigurationSetFilter

Description

The information for configuration sets that meet a specified criteria.

Members
Name
Required: Yes
Type: string

The name of the attribute to filter on.

Values
Required: Yes
Type: Array of strings

An array values to filter for.

ConfigurationSetInformation

Description

Information related to a given configuration set in your Amazon Web Services account.

Members
ConfigurationSetArn
Required: Yes
Type: string

The Resource Name (ARN) of the ConfigurationSet.

ConfigurationSetName
Required: Yes
Type: string

The name of the ConfigurationSet.

CreatedTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the ConfigurationSet was created, in UNIX epoch time format.

DefaultMessageType
Type: string

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

DefaultSenderId
Type: string

The default sender ID used by the ConfigurationSet.

EventDestinations
Required: Yes
Type: Array of EventDestination structures

An array of EventDestination objects that describe any events to log and where to log them.

ProtectConfigurationId
Type: string

The unique identifier for the protect configuration.

ConflictException

Description

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

Members
Message
Type: string
Reason
Type: string

The reason for the exception.

ResourceId
Type: string

The unique identifier of the request.

ResourceType
Type: string

The type of resource that caused the exception.

EventDestination

Description

Contains information about an event destination.

Event destinations are associated with configuration sets, which enable you to publish message sending events to CloudWatch, Firehose, or Amazon SNS.

Members
CloudWatchLogsDestination
Type: CloudWatchLogsDestination structure

An object that contains information about an event destination that sends logging events to Amazon CloudWatch logs.

Enabled
Required: Yes
Type: boolean

When set to true events will be logged.

EventDestinationName
Required: Yes
Type: string

The name of the EventDestination.

KinesisFirehoseDestination
Type: KinesisFirehoseDestination structure

An object that contains information about an event destination for logging to Amazon Data Firehose.

MatchingEventTypes
Required: Yes
Type: Array of strings

An array of event types that determine which events to log.

The TEXT_SENT event type is not supported.

SnsDestination
Type: SnsDestination structure

An object that contains information about an event destination that sends logging events to Amazon SNS.

InternalServerException

Description

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

Members
Message
Type: string
RequestId
Type: string

The unique identifier of the request.

KeywordFilter

Description

The information for keywords that meet a specified criteria.

Members
Name
Required: Yes
Type: string

The name of the attribute to filter on.

Values
Required: Yes
Type: Array of strings

An array values to filter for.

KeywordInformation

Description

The information for all keywords in a pool.

Members
Keyword
Required: Yes
Type: string

The keyword as a string.

KeywordAction
Required: Yes
Type: string

The action to perform for the keyword.

KeywordMessage
Required: Yes
Type: string

A custom message that can be used with the keyword.

KinesisFirehoseDestination

Description

Contains the delivery stream Amazon Resource Name (ARN), and the ARN of the Identity and Access Management (IAM) role associated with a Firehose event destination.

Event destinations, such as Firehose, are associated with configuration sets, which enable you to publish message sending events.

Members
DeliveryStreamArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the delivery stream.

IamRoleArn
Required: Yes
Type: string

The ARN of an Identity and Access Management role that is able to write event data to an Amazon Data Firehose destination.

OptOutListInformation

Description

The information for all OptOutList in an Amazon Web Services account.

Members
CreatedTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the OutOutList was created, in UNIX epoch time format.

OptOutListArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the OptOutList.

OptOutListName
Required: Yes
Type: string

The name of the OptOutList.

OptedOutFilter

Description

The information for opted out numbers that meet a specified criteria.

Members
Name
Required: Yes
Type: string

The name of the attribute to filter on.

Values
Required: Yes
Type: Array of strings

An array of values to filter for.

OptedOutNumberInformation

Description

The information for an opted out number in an Amazon Web Services account.

Members
EndUserOptedOut
Required: Yes
Type: boolean

This is set to true if it was the end recipient that opted out.

OptedOutNumber
Required: Yes
Type: string

The phone number that is opted out.

OptedOutTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time that the op tout occurred, in UNIX epoch time format.

OriginationIdentityMetadata

Description

The metadata for an origination identity associated with a pool.

Members
IsoCountryCode
Required: Yes
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

NumberCapabilities
Required: Yes
Type: Array of strings

Describes if the origination identity can be used for text messages, voice calls or both.

OriginationIdentity
Required: Yes
Type: string

The unique identifier of the origination identity.

OriginationIdentityArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) associated with the origination identity.

PhoneNumber
Type: string

The phone number in E.164 format.

PhoneNumberFilter

Description

The information for a phone number that meets a specified criteria.

Members
Name
Required: Yes
Type: string

The name of the attribute to filter on.

Values
Required: Yes
Type: Array of strings

An array values to filter for.

PhoneNumberInformation

Description

The information for a phone number, in E.164 format, in an Amazon Web Services account.

Members
CreatedTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the phone number was created, in UNIX epoch time format.

DeletionProtectionEnabled
Required: Yes
Type: boolean

When set to true the phone number can't be deleted.

IsoCountryCode
Required: Yes
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

MessageType
Required: Yes
Type: string

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

MonthlyLeasingPrice
Required: Yes
Type: string

The price, in US dollars, to lease the phone number.

NumberCapabilities
Required: Yes
Type: Array of strings

Describes if the origination identity can be used for text messages, voice calls or both.

NumberType
Required: Yes
Type: string

The type of phone number.

OptOutListName
Required: Yes
Type: string

The name of the OptOutList associated with the phone number.

PhoneNumber
Required: Yes
Type: string

The phone number in E.164 format.

PhoneNumberArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) associated with the phone number.

PhoneNumberId
Type: string

The unique identifier for the phone number.

PoolId
Type: string

The unique identifier of the pool associated with the phone number.

RegistrationId
Type: string

The unique identifier for the registration.

SelfManagedOptOutsEnabled
Required: Yes
Type: boolean

When set to false an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, AWS End User Messaging SMS and Voice automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out request. For more information see Self-managed opt-outs

Status
Required: Yes
Type: string

The current status of the phone number.

TwoWayChannelArn
Type: string

The Amazon Resource Name (ARN) of the two way channel.

TwoWayChannelRole
Type: string

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

TwoWayEnabled
Required: Yes
Type: boolean

By default this is set to false. When set to true you can receive incoming text messages from your end recipients using the TwoWayChannelArn.

PoolFilter

Description

The information for a pool that meets a specified criteria.

Members
Name
Required: Yes
Type: string

The name of the attribute to filter on.

Values
Required: Yes
Type: Array of strings

An array values to filter for.

PoolInformation

Description

The information for a pool in an Amazon Web Services account.

Members
CreatedTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the pool was created, in UNIX epoch time format.

DeletionProtectionEnabled
Required: Yes
Type: boolean

When set to true the pool can't be deleted.

MessageType
Required: Yes
Type: string

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

OptOutListName
Required: Yes
Type: string

The name of the OptOutList associated with the pool.

PoolArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the pool.

PoolId
Required: Yes
Type: string

The unique identifier for the pool.

SelfManagedOptOutsEnabled
Required: Yes
Type: boolean

When set to false, an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, AWS End User Messaging SMS and Voice automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests. For more information see Self-managed opt-outs

SharedRoutesEnabled
Required: Yes
Type: boolean

Allows you to enable shared routes on your pool.

By default, this is set to False. If you set this value to True, your messages are sent using phone numbers or sender IDs (depending on the country) that are shared with other users. In some countries, such as the United States, senders aren't allowed to use shared routes and must use a dedicated phone number or short code.

Status
Required: Yes
Type: string

The current status of the pool.

TwoWayChannelArn
Type: string

The Amazon Resource Name (ARN) of the two way channel.

TwoWayChannelRole
Type: string

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

TwoWayEnabled
Required: Yes
Type: boolean

When set to true you can receive incoming text messages from your end recipients using the TwoWayChannelArn.

PoolOriginationIdentitiesFilter

Description

Information about origination identities associated with a pool that meets a specified criteria.

Members
Name
Required: Yes
Type: string

The name of the attribute to filter on.

Values
Required: Yes
Type: Array of strings

An array values to filter for.

ProtectConfigurationCountryRuleSetInformation

Description

The types of statuses that can be used.

Members
ProtectStatus
Required: Yes
Type: string

The types of protection that can be used.

ProtectConfigurationFilter

Description

The filter definition for filtering protect configurations that meet a specified criteria.

Members
Name
Required: Yes
Type: string

The name of the attribute to filter on.

Values
Required: Yes
Type: Array of strings

An array of values to filter for.

ProtectConfigurationInformation

Description

Provides information on the specified protect configuration.

Members
AccountDefault
Required: Yes
Type: boolean

This is true if the protect configuration is set as your account default protect configuration.

CreatedTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the protect configuration was created, in UNIX epoch time format.

DeletionProtectionEnabled
Required: Yes
Type: boolean

The status of deletion protection for the protect configuration. When set to true deletion protection is enabled. By default this is set to false.

ProtectConfigurationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the protect configuration.

ProtectConfigurationId
Required: Yes
Type: string

The unique identifier for the protect configuration.

RegistrationAssociationFilter

Description

The filter definition for filtering registrations that meets a specified criteria.

Members
Name
Required: Yes
Type: string

The name of the attribute to filter on.

Values
Required: Yes
Type: Array of strings

An array of values to filter for.

RegistrationAssociationMetadata

Description

Metadata for the origination identity that is associated with the registration.

Members
IsoCountryCode
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

PhoneNumber
Type: string

The phone number associated with the registration in E.164 format.

ResourceArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the origination identity that is associated with the registration.

ResourceId
Required: Yes
Type: string

The unique identifier for the origination identity. For example this could be a PhoneNumberId or SenderId.

ResourceType
Required: Yes
Type: string

The origination identity type.

RegistrationAttachmentFilter

Description

The filter definition for filtering registration attachments that meets a specified criteria.

Members
Name
Required: Yes
Type: string

The name of the attribute to filter on.

Values
Required: Yes
Type: Array of strings

An array of values to filter on.

RegistrationAttachmentsInformation

Description

Provides information on the specified registration attachments.

Members
AttachmentStatus
Required: Yes
Type: string

The status of the registration attachment.

  • UPLOAD_IN_PROGRESS The attachment is being uploaded.

  • UPLOAD_COMPLETE The attachment has been uploaded.

  • UPLOAD_FAILED The attachment failed to uploaded.

  • DELETED The attachment has been deleted..

AttachmentUploadErrorReason
Type: string

A description of why the upload didn't successfully complete.

CreatedTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the registration attachment was created, in UNIX epoch time format.

RegistrationAttachmentArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the registration attachment.

RegistrationAttachmentId
Required: Yes
Type: string

The unique identifier for the registration attachment.

RegistrationDeniedReasonInformation

Description

Provides the reason a registration was rejected.

Members
DocumentationLink
Type: string

The link to the document.

DocumentationTitle
Type: string

The title of the document.

LongDescription
Type: string

A long description of the rejection reason.

Reason
Required: Yes
Type: string

The reason a registration was rejected.

ShortDescription
Required: Yes
Type: string

A short description of the rejection reason.

RegistrationFieldDefinition

Description

Provides a description of the specified field.

Members
DisplayHints
Required: Yes
Type: RegistrationFieldDisplayHints structure

An array of RegistrationFieldDisplayHints objects for the field.

FieldPath
Required: Yes
Type: string

The path to the registration form field. You can use DescribeRegistrationFieldDefinitions for a list of FieldPaths.

FieldRequirement
Required: Yes
Type: string

Specifies if the field for the registration form is required, conditional or optional.

FieldType
Required: Yes
Type: string

The type of field.

SectionPath
Required: Yes
Type: string

The section path of the field.

SelectValidation
Type: SelectValidation structure

The validation rules for a select field.

TextValidation
Type: TextValidation structure

The validation rules for a text field.

RegistrationFieldDisplayHints

Description

Provides help information on the registration field.

Members
DocumentationLink
Type: string

The link to the document the display hint is associated with.

DocumentationTitle
Type: string

The title of the document the display hint is associated with.

ExampleTextValue
Type: string

Example text of what the value of a field should contain.

LongDescription
Type: string

A full description of the display hint.

SelectOptionDescriptions
Type: Array of SelectOptionDescription structures

An array of SelectOptionDescription objects.

ShortDescription
Required: Yes
Type: string

A short description of the display hint.

TextValidationDescription
Type: string

The validation rules for the text field.

Title
Required: Yes
Type: string

The title of the display hint.

RegistrationFieldValueInformation

Description

Provides the values of the specified field.

Members
DeniedReason
Type: string

A description of why the registration was denied.

FieldPath
Required: Yes
Type: string

The path to the registration form field. You can use DescribeRegistrationFieldDefinitions for a list of FieldPaths.

RegistrationAttachmentId
Type: string

The unique identifier for the registration attachment.

SelectChoices
Type: Array of strings

An array of values for the form field.

TextValue
Type: string

The text data for a free form field.

RegistrationFilter

Description

The filter definition for filtering registrations that meets a specified criteria.

Members
Name
Required: Yes
Type: string

The name of the attribute to filter on.

Values
Required: Yes
Type: Array of strings

An array of values to filter on.

RegistrationInformation

Description

Provides information about the requested registration.

Members
AdditionalAttributes
Type: Associative array of custom strings keys (String) to strings

Metadata about a given registration which is specific to that registration type.

ApprovedVersionNumber
Type: long (int|float)

The version number of the registration that was approved.

CreatedTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the registration was created, in UNIX epoch time format.

CurrentVersionNumber
Required: Yes
Type: long (int|float)

The current version number of the registration.

LatestDeniedVersionNumber
Type: long (int|float)

The latest version number of the registration that was denied.

RegistrationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the registration.

RegistrationId
Required: Yes
Type: string

The unique identifier for the registration.

RegistrationStatus
Required: Yes
Type: string

The status of the registration.

  • CREATED: Your registration is created but not submitted.

  • SUBMITTED: Your registration has been submitted and is awaiting review.

  • REVIEWING: Your registration has been accepted and is being reviewed.

  • PROVISIONING: Your registration has been approved and your origination identity is being created.

  • COMPLETE: Your registration has been approved and and your origination identity has been created.

  • REQUIRES_UPDATES: You must fix your registration and resubmit it.

  • CLOSED: The phone number or sender ID has been deleted and you must also delete the registration for the number.

  • DELETED: The registration has been deleted.

RegistrationType
Required: Yes
Type: string

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

RegistrationSectionDefinition

Description

Provides information on the specified section definition.

Members
DisplayHints
Required: Yes
Type: RegistrationSectionDisplayHints structure

The path to the section of the registration.

SectionPath
Required: Yes
Type: string

The path to the section of the registration.

RegistrationSectionDisplayHints

Description

Provides help information on the registration section.

Members
DocumentationLink
Type: string

The link to the document the display hint is associated with.

DocumentationTitle
Type: string

The title of the document the display hint is associated with.

LongDescription
Type: string

A full description of the display hint.

ShortDescription
Required: Yes
Type: string

A short description of the display hint.

Title
Required: Yes
Type: string

The title of the display hint.

RegistrationTypeDefinition

Description

Provides information on the supported registration type.

Members
DisplayHints
Required: Yes
Type: RegistrationTypeDisplayHints structure

Provides help information on the registration.

RegistrationType
Required: Yes
Type: string

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

SupportedAssociations
Type: Array of SupportedAssociation structures

The supported association behavior for the registration type.

RegistrationTypeDisplayHints

Description

Provides help information on the registration type.

Members
DocumentationLink
Type: string

The link to the document the display hint is associated with.

DocumentationTitle
Type: string

The title of the document the display hint is associated with.

LongDescription
Type: string

A full description of the display hint.

ShortDescription
Type: string

A short description of the display hint.

Title
Required: Yes
Type: string

The title of the display hint.

RegistrationTypeFilter

Description

The filter definition for filtering registration types that meets a specified criteria.

Members
Name
Required: Yes
Type: string

The name of the attribute to filter on.

Values
Required: Yes
Type: Array of strings

An array of values to filter on.

RegistrationVersionFilter

Description

The filter definition for filtering registration versions that meets a specified criteria.

Members
Name
Required: Yes
Type: string

The name of the attribute to filter on.

Values
Required: Yes
Type: Array of strings

An array of values to filter on.

RegistrationVersionInformation

Description

Provides information about the specified version of the registration.

Members
DeniedReasons
Type: Array of RegistrationDeniedReasonInformation structures

An array of RegistrationDeniedReasonInformation objects.

RegistrationVersionStatus
Required: Yes
Type: string

The status of the registration.

  • DRAFT: The initial status of a registration version after it’s created.

  • SUBMITTED: Your registration has been submitted.

  • REVIEWING: Your registration has been accepted and is being reviewed.

  • APPROVED: Your registration has been approved.

  • DISCARDED: You've abandon this version of their registration to start over with a new version.

  • DENIED: You must fix your registration and resubmit it.

  • REVOKED: Your previously approved registration has been revoked.

  • ARCHIVED: Your previously approved registration version moves into this status when a more recently submitted version is approved.

RegistrationVersionStatusHistory
Required: Yes
Type: RegistrationVersionStatusHistory structure

The RegistrationVersionStatusHistory object contains the time stamps for when the reservations status changes.

VersionNumber
Required: Yes
Type: long (int|float)

The version number of the registration.

RegistrationVersionStatusHistory

Description

The RegistrationVersionStatusHistory object contains the time stamps for when the reservations status changes.

Members
ApprovedTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the registration was in the approved state, in UNIX epoch time format.

ArchivedTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the registration was in the archived state, in UNIX epoch time format.

DeniedTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the registration was in the denied state, in UNIX epoch time format.

DiscardedTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the registration was in the discarded state, in UNIX epoch time format.

DraftTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the registration was in the draft state, in UNIX epoch time format.

ReviewingTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the registration was in the reviewing state, in UNIX epoch time format.

RevokedTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the registration was in the revoked state, in UNIX epoch time format.

SubmittedTimestamp
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the registration was in the submitted state, in UNIX epoch time format.

ResourceNotFoundException

Description

A requested resource couldn't be found.

Members
Message
Type: string
ResourceId
Type: string

The unique identifier of the resource.

ResourceType
Type: string

The type of resource that caused the exception.

SelectOptionDescription

Description

A description of each select option.

Members
Description
Type: string

A description of the option meaning.

Option
Required: Yes
Type: string

The value of the option.

Title
Type: string

The title of the select option.

SelectValidation

Description

Validation rules for a select field.

Members
MaxChoices
Required: Yes
Type: int

The maximum number of choices for the select.

MinChoices
Required: Yes
Type: int

The minimum number of choices for the select.

Options
Required: Yes
Type: Array of strings

An array of strings for the possible selection options.

SenderIdAndCountry

Description

The alphanumeric sender ID in a specific country that you want to describe. For more information on sender IDs see Requesting sender IDs in the AWS End User Messaging SMS User Guide.

Members
IsoCountryCode
Required: Yes
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

SenderId
Required: Yes
Type: string

The unique identifier of the sender.

SenderIdFilter

Description

The information for a sender ID that meets a specified criteria.

Members
Name
Required: Yes
Type: string

The name of the attribute to filter on.

Values
Required: Yes
Type: Array of strings

An array of values to filter for.

SenderIdInformation

Description

The information for all SenderIds in an Amazon Web Services account.

Members
DeletionProtectionEnabled
Required: Yes
Type: boolean

By default this is set to false. When set to true the sender ID can't be deleted.

IsoCountryCode
Required: Yes
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

MessageTypes
Required: Yes
Type: Array of strings

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

MonthlyLeasingPrice
Required: Yes
Type: string

The monthly leasing price, in US dollars.

Registered
Required: Yes
Type: boolean

True if the sender ID is registered.

RegistrationId
Type: string

The unique identifier for the registration.

SenderId
Required: Yes
Type: string

The alphanumeric sender ID in a specific country that you'd like to describe.

SenderIdArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) associated with the SenderId.

ServiceQuotaExceededException

Description

The request would cause a service quota to be exceeded.

Members
Message
Type: string
Reason
Type: string

The reason for the exception.

SnsDestination

Description

An object that defines an Amazon SNS destination for events. You can use Amazon SNS to send notification when certain events occur.

Members
TopicArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the Amazon SNS topic that you want to publish events to.

SpendLimit

Description

Describes the current monthly spend limits for sending voice and text messages. For more information on increasing your monthly spend limit, see Requesting a spending quota increase in the AWS End User Messaging SMS User Guide.

Members
EnforcedLimit
Required: Yes
Type: long (int|float)

The maximum amount of money, in US dollars, that you want to be able to spend sending messages each month. This value has to be less than or equal to the amount in MaxLimit. To use this custom limit, Overridden must be set to true.

MaxLimit
Required: Yes
Type: long (int|float)

The maximum amount of money that you are able to spend to send messages each month, in US dollars.

Name
Required: Yes
Type: string

The name for the SpendLimit.

Overridden
Required: Yes
Type: boolean

When set to True, the value that has been specified in the EnforcedLimit is used to determine the maximum amount in US dollars that can be spent to send messages each month, in US dollars.

SupportedAssociation

Description

The processing rules for when a registration can be associated with an origination identity and disassociated from an origination identity.

Members
AssociationBehavior
Required: Yes
Type: string

The association behavior.

  • ASSOCIATE_BEFORE_SUBMIT The origination identity has to be supplied when creating a registration.

  • ASSOCIATE_ON_APPROVAL This applies to all short code registrations. The short code will be automatically provisioned once the registration is approved.

  • ASSOCIATE_AFTER_COMPLETE This applies to phone number registrations when you must complete a registration first, then associate one or more phone numbers later. For example 10DLC campaigns and long codes.

DisassociationBehavior
Required: Yes
Type: string

The disassociation behavior.

  • DISASSOCIATE_ALL_CLOSES_REGISTRATION All origination identities must be disassociated from the registration before the registration can be closed.

  • DISASSOCIATE_ALL_ALLOWS_DELETE_REGISTRATION All origination identities must be disassociated from the registration before the registration can be deleted.

  • DELETE_REGISTRATION_DISASSOCIATES The registration can be deleted and all origination identities will be disasscoiated.

IsoCountryCode
Type: string

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

ResourceType
Required: Yes
Type: string

Defines the behavior of when an origination identity and registration can be associated with each other.

Tag

Description

The list of tags to be added to the specified topic.

Members
Key
Required: Yes
Type: string

The key identifier, or name, of the tag.

Value
Required: Yes
Type: string

The string value associated with the key of the tag.

TextValidation

Description

Validation rules for a text field.

Members
MaxLength
Required: Yes
Type: int

The maximum number of characters for the text field.

MinLength
Required: Yes
Type: int

The minimum number of characters for the text field.

Pattern
Required: Yes
Type: string

The regular expression used to validate the text field.

ThrottlingException

Description

An error that occurred because too many requests were sent during a certain amount of time.

Members
Message
Type: string

ValidationException

Description

A validation exception for a field.

Members
Fields
Type: Array of ValidationExceptionField structures

The field that failed validation.

Message
Type: string
Reason
Type: string

The reason for the exception.

ValidationExceptionField

Description

The field associated with the validation exception.

Members
Message
Required: Yes
Type: string

The message associated with the validation exception with information to help determine its cause.

Name
Required: Yes
Type: string

The name of the field.

VerifiedDestinationNumberFilter

Description

The filter definition for filtering verified destination phone numbers that meets a specified criteria.

Members
Name
Required: Yes
Type: string

The name of the attribute to filter on.

Values
Required: Yes
Type: Array of strings

An array of values to filter on.

VerifiedDestinationNumberInformation

Description

Provides information about the requested verified destintion phone number.

Members
CreatedTimestamp
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the destination phone number was created, in UNIX epoch time format.

DestinationPhoneNumber
Required: Yes
Type: string

The verified destination phone number, in E.164 format.

Status
Required: Yes
Type: string

The status of the verified destination phone number.

  • PENDING: The phone number hasn't been verified yet.

  • VERIFIED: The phone number is verified and can receive messages.

VerifiedDestinationNumberArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for the verified destination phone number.

VerifiedDestinationNumberId
Required: Yes
Type: string

The unique identifier for the verified destination phone number.