Description
Genesys Cloud SMS number provisioning is moving over to an asynchronous operation, where these operations were previously done synchronously. This async process will be much more fault tolerant and give customers more stability when purchasing new numbers to use with SMS in Genesys Cloud.
Change Category
Informational
API
Change Context
In order to allow our customers to interact with external vendors when doing provisioning operations on SMS numbers for Genesys Cloud, we are moving over to an async provisioning/de-provisioning process. This will allow longer running operations to complete successfully for our customers on a more consistent basis. This also allows us to move to other external vendors (which only support async provisioning) in the future. After the change date listed, the listed resources will only support Async provisioning operations going forward. The consumer impacted change is explained more below, and explanation of how they can appropriately change over to the async path.
Change Impact
When provisioning and de-provisioning SMS numbers there is now a new query parameter called "async" on these API resources. In the future Async will be required to be set to "true" for all provisioning operations. Today with the default path (async=false) these resources respond with a 200 OK response after the api call completes, and this means the operation is done. Going forward all consumers should be using the new path (async=true), and the resources will respond with a 202 Accepted response code, and this means the operation has been accepted, but is not finished yet. The new process, when this async parameter is set to "true", is that when the consumer gets the '202 Accepted' API response when making the request (POST/PUT/DELETE). The resources will respond with a 'provisioningStatus' object discussed below. The consumer can then use the GET /api/v2/routing/sms/phonenumbers/{addressId} to Poll for the operation's results. The GET response will contain the following '{"provisioningStatus":{"action":"Create,Update,Delete","state":"Running,Completed,Failed", "error":{}}}` Once the state transitions to "Completed" or "Failed" the Async operation is now finished.
Date of Change
Mar 01, 2022
Impacted APIs
POST /api/v2/routing/sms/phonenumbers PUT /api/v2/routing/sms/phonenumbers/{addressId} DELETE /api/v2/routing/sms/phonenumbers/{addressId}
References
MSG-2921