Skip to main content
POST
/
api
/
call
/
create_call
Initiate outbound call
curl --request POST \
  --url https://api.kupe.in/api/call/create_call \
  --header 'x-api-key: <api-key>'
{
  "status": "success",
  "request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "call_session_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "user_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "telephony_provider": "pstn",
  "target_number": "<string>",
  "from_phone_number": "<string>",
  "telephony_leg_id": "<string>"
}

Documentation Index

Fetch the complete documentation index at: https://kupe.in/docs/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

x-api-key
string
header
default:YOUR_KUPE_API_KEY
required

Kupe dashboard API key for your user.

Query Parameters

phoneNumber
string
required
agent_id
string<uuid>
workflow_id
string<uuid>
phone_number_id
string<uuid>

Response

Call initiated (status: success) or initiation recorded as failed (status: failed) with the same ids for tracing — HTTP 200 so clients always receive request_id / call_session_id.

status
enum<string>
required
Available options:
success
request_id
string<uuid>
required

Correlation id for tracing (logs, analytics, GET /api/v1/call-analytics?request_id=). Echoed on telephony WebSocket when the carrier includes it in the media URL.

call_session_id
string<uuid>
required

Primary key in Kupe call_sessions for this dial.

user_id
string<uuid>
required

User charged and whose phone mappings applied — always the API key owner or Bearer session user (same as auth; echoed for convenience).

telephony_provider
string
required

Stable public label; vendor-specific telephony names are not returned in this JSON.

Example:

"pstn"

target_number
string
required

Destination dialed (as submitted, normalized server-side).

from_phone_number
string

Caller line used when resolved.

telephony_leg_id
string

Opaque provider leg identifier when available (e.g. Twilio Call SID). Not labeled by vendor in JSON.