To seamlessly onboard customers using your platform, you can integrate our API endpoint for creating WhatsApp onboarding links. This API enables Independent Software Vendors (ISVs) and customers to integrate the onboarding process into their portals, allowing a streamlined experience for their partners.
To obtain tokens and URL details through the Exotel API, initiate an HTTP POST request to the specified endpoint.
https://<your_api_key>:<your_api_token><subdomain>/v2/accounts/<your_sid>/isv
<your_api_key>
and <your_api_token>
with your API key and token.<your_sid>
with your Account SID.<subdomain>
with the region of your account. For the Singapore cluster, use @api.exotel.com
, and for the Mumbai cluster, use @api.in.exotel.com
.Upon hitting the API endpoint, a link will be generated and provided in the API response. When this link is opened in a separate tab, the following flow will be initiated:
These restrictions ensure the security and controlled usage of fetched tokens, promoting efficient customer onboarding for your business.
Parameter Name | Parameter Type | Mandatory/Optional | Value |
ChannelObject | Optional | Information related to the whatsapp |
Channel Object
Parameter Name | Parameter Type | Mandatory/Optional | Value |
isv | IsvObject | Mandatory | The url with the token will be shown |
Isv Object
Parameter Name | Parameter Type | Mandatory/Optional | Value |
Url | String | Mandatory | The url along with the token is generated |
Please refer Exotel's sample postman collection to try out the APIs, we have also shared some examples here for your reference.
curl --location --globoff --request POST 'https://{{AuthKey}}:{{AuthToken}}@{{SubDomain}}/v2/accounts/{{AccountSid}}/isv' \ --header 'Content-Type: text/plain'
{ "request_id": "15dbef467ff34a96b78e67baf63c19bf", "method": "GET", "http_code": 200, "response": { "whatsapp": { "isv": { "code": 200, "error_data": null, "status": "success", "data": { "onboarding_token_status": "VALID" } } } } }
HTTP Error Codes |
Error Message |
202 |
Accepted - Request accepted. |
400 |
Bad Request - Something in your header or request body was malformed/missing. More than 100 messages specified in a request |
401 |
Unauthorized - Necessary credentials were either missing or invalid. |
402 |
Payment Required - The action is not available on your plan, or you have exceeded usage limits for your current plan. |
403 |
Your credentials are valid, but you don’t have access to the requested resource. |
404 |
Not Found - The object you’re requesting doesn’t exist. |
5xx |
Server Errors - Something went wrong at our end. Please try again. |
Parameter Name |
Parameter Type |
Mandatory/Optional |
Value |
access_token |
String |
Mandatory |
UUID token which has been generated along with the base URL. |
You can copy the UUID which is generated in the Onboarding Base URL and provide it in the Get Validate Token API in the end and check then validity.
https://{{AuthKey}}:{{AuthToken}}@{{SubDomain}}/v2/accounts/{{AccountSid}}/isv?access_token={{token}}
{ "request_id": "15dbef467ff34a96b78e67baf63c19bf", "method": "GET", "http_code": 200, "response": { "whatsapp": { "isv": { "code": 200, "error_data": null, "status": "success", "data": { "onboarding_token_status": "VALID" } } } } }