CreateProxySession - Amazon Chime

CreateProxySession

Creates a proxy session on the specified Amazon Chime Voice Connector for the specified participant phone numbers.

Request Syntax

POST /voice-connectors/voiceConnectorId/proxy-sessions HTTP/1.1 Content-type: application/json { "Capabilities": [ "string" ], "ExpiryMinutes": number, "GeoMatchLevel": "string", "GeoMatchParams": { "AreaCode": "string", "Country": "string" }, "Name": "string", "NumberSelectionBehavior": "string", "ParticipantPhoneNumbers": [ "string" ] }

URI Request Parameters

The request uses the following URI parameters.

voiceConnectorId

The Amazon Chime voice connector ID.

Length Constraints: Minimum length of 1. Maximum length of 128.

Pattern: .*\S.*

Required: Yes

Request Body

The request accepts the following data in JSON format.

Capabilities

The proxy session capabilities.

Type: Array of strings

Valid Values: Voice | SMS

Required: Yes

ExpiryMinutes

The number of minutes allowed for the proxy session.

Type: Integer

Valid Range: Minimum value of 1.

Required: No

GeoMatchLevel

The preference for matching the country or area code of the proxy phone number with that of the first participant.

Type: String

Valid Values: Country | AreaCode

Required: No

GeoMatchParams

The country and area code for the proxy phone number.

Type: GeoMatchParams object

Required: No

Name

The name of the proxy session.

Type: String

Pattern: ^$|^[a-zA-Z0-9 ]{0,30}$

Required: No

NumberSelectionBehavior

The preference for proxy phone number reuse, or stickiness, between the same participants across sessions.

Type: String

Valid Values: PreferSticky | AvoidSticky

Required: No

ParticipantPhoneNumbers

The participant phone numbers.

Type: Array of strings

Array Members: Fixed number of 2 items.

Pattern: ^\+?[1-9]\d{1,14}$

Required: Yes

Response Syntax

HTTP/1.1 201 Content-type: application/json { "ProxySession": { "Capabilities": [ "string" ], "CreatedTimestamp": number, "EndedTimestamp": number, "ExpiryMinutes": number, "GeoMatchLevel": "string", "GeoMatchParams": { "AreaCode": "string", "Country": "string" }, "Name": "string", "NumberSelectionBehavior": "string", "Participants": [ { "PhoneNumber": "string", "ProxyPhoneNumber": "string" } ], "ProxySessionId": "string", "Status": "string", "UpdatedTimestamp": number, "VoiceConnectorId": "string" } }

Response Elements

If the action is successful, the service sends back an HTTP 201 response.

The following data is returned in JSON format by the service.

ProxySession

The proxy session details.

Type: ProxySession object

Errors

For information about the errors that are common to all actions, see Common Errors.

BadRequestException

The input parameters don't match the service's restrictions.

HTTP Status Code: 400

ForbiddenException

The client is permanently forbidden from making the request. For example, when a user tries to create an account from an unsupported Region.

HTTP Status Code: 403

NotFoundException

One or more of the resources in the request does not exist in the system.

HTTP Status Code: 404

ServiceFailureException

The service encountered an unexpected error.

HTTP Status Code: 500

ServiceUnavailableException

The service is currently unavailable.

HTTP Status Code: 503

ThrottledClientException

The client exceeded its request rate limit.

HTTP Status Code: 429

UnauthorizedClientException

The client is not currently authorized to make the request.

HTTP Status Code: 401

Example

In the following example or examples, the Authorization header contents (AUTHPARAMS) must be replaced with an AWS Signature Version 4 signature. For more information about creating these signatures, see Signature Version 4 Signing Process in the AWS General Reference.

You only need to learn how to sign HTTP requests if you intend to manually create them. When you use the AWS Command Line Interface (AWS CLI) or one of the AWS SDKs to make requests to AWS, these tools automatically sign the requests for you with the access key that you specify when you configure the tools. When you use these tools, you don't need to learn how to sign requests yourself.

Example

This example creates a proxy session on your Amazon Chime Voice Connector.

Sample Request

POST /voice-connectors/abcdef1ghij2klmno3pqr4/proxy-sessions HTTP/1.1 Host: service.chime.aws.amazon.com Accept-Encoding: identity User-Agent: aws-cli/1.18.39 Python/3.8.0 Windows/10 botocore/1.15.39 X-Amz-Date: 20200415T161009Z Authorization: AUTHPARAMS Content-Length: 95 {"ParticipantPhoneNumbers": ["+14015550101", "+12065550100"], "Capabilities": ["Voice", "SMS"]}

Sample Response

HTTP/1.1 201 Created x-amzn-RequestId: f40fe3fd-06fb-45e8-9d85-51833d44e651 Content-Type: application/json Content-Length: 531 Date: Wed, 15 Apr 2020 16:10:09 GMT Connection: keep-alive {"ProxySession":{"Capabilities":["SMS","Voice"],"CreatedTimestamp":"2020-04-15T16:10:10.288Z","EndedTimestamp":null,"ExpiryMinutes":60,"GeoMatchLevel":null,"GeoMatchParams":null,"Name":null,"NumberSelectionBehavior":null,"Participants":[{"PhoneNumber":"+12065550100","ProxyPhoneNumber":"+19135550199"},{"PhoneNumber":"+14015550101","ProxyPhoneNumber":"+19135550199"}],"ProxySessionId":"123a4bc5-67d8-901e-2f3g-h4ghjk56789l","Status":"Open","UpdatedTimestamp":"2020-04-15T16:10:10.288Z","VoiceConnectorId":"abcdef1ghij2klmno3pqr4"}}

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: