Trigger an outbound call
Place a single outbound call from one of your DIDs to a customer number.
POST
https://nextgenpanel.cloudshope.com/api/v1/outboundCallApis/outboundCallPlaces one outbound call: from_number (one of your account's DIDs) dials mobile_number. Credit is checked before dialling — the call is rejected if the account has none.
Optional voice clips (from_clip_id / to_clip_id) play a pre-recorded message to either party before the call connects, and dlurl receives a callback when the call completes.
Errors on this endpoint return { "success": false, "message": "…" } or { "status": …, "message": "…" }, not the standard problem shape.
Authentication
Send Authorization: Bearer <token>. Any valid API token for the account works.
Body parameters
| Name | Type | Required | Description |
|---|---|---|---|
from_number | string (10 digits) | Yes | The DID to dial from. |
mobile_number | string (10 digits) | Yes | The customer number to dial. |
cli_number | string (10 digits) | No | Caller ID to present, if different from from_number. |
max_seconds | integer | No | Maximum call duration before it is force-ended. |
billing_source | integer (1 or 2) | No | Which credit pool to bill the call against. |
from_clip_id | integer | No | Voice clip id to play to the DID side before bridging. |
to_clip_id | integer | No | Voice clip id to play to the customer side before bridging. |
dlurl | string | No | Callback URL notified when the call completes. |
Request
curl -X POST https://nextgenpanel.cloudshope.com/api/v1/outboundCallApis/outboundCall \
-H "Authorization: Bearer cs_live_9f2c…" \
-H "Content-Type: application/json" \
-d '{
"from_number": "9800000000",
"mobile_number": "9876543210"
}'Response
{
"status": 200,
"message": "success",
"data": { "mobile": "9876543210" }
}Errors
| Status | Type | When |
|---|---|---|
| 400 | bad-request | A field failed validation — see errors. |
| 404 | not-found | The account has no credit left, or from_number does not match a DID / server on the account. |
| 500 | internal-error | Something went wrong placing the call. |
| 401 | unauthorized | The Authorization header is missing, malformed or the token is invalid or expired. |
| 403 | forbidden | The token is valid but the account is not allowed to perform this action. |
