Get a call
Retrieves one of your calls by id: the parties, the owning number, the current status with its failure reason, duration, price, recording availability, and a timeline of when the call entered each status.
Response Body
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/v3/calls/call_9f2ab000-0000-4000-8000-000000000001"{
"success": true,
"data": {
"id": "call_9f2ab000-0000-4000-8000-000000000001",
"direction": "outbound",
"from": {
"kind": "user",
"value": "agent-42"
},
"to": {
"kind": "number",
"value": "+12025550142"
},
"number": "+12025550123",
"status": "COMPLETED",
"failure_reason": null,
"started_at": "2026-07-22T12:00:00+00:00",
"answered_at": "2026-07-22T12:00:05+00:00",
"ended_at": "2026-07-22T12:00:47+00:00",
"duration_seconds": 42,
"price": null,
"recording_available": false,
"timeline": [
{
"status": "INITIATED",
"timestamp": "2026-07-22T12:00:00+00:00"
},
{
"status": "ANSWERED",
"timestamp": "2026-07-22T12:00:05+00:00"
},
{
"status": "COMPLETED",
"timestamp": "2026-07-22T12:00:47+00:00"
}
]
},
"error": null,
"meta": {
"request_id": "req_7X9zKp2jDw",
"timestamp": "2026-10-06T09:10:22.7037086+00:00",
"version": "v3"
}
}{
"success": false,
"data": null,
"error": {
"code": "VALIDATION_001",
"message": "Request validation failed",
"details": {
"id": [
"'id' must be a call id, such as call_9f2ab000-0000-4000-8000-000000000001"
]
},
"doc_url": "https://docs.sent.dm/reference/api/error-catalog"
},
"meta": {
"request_id": "req_7X9zKp2jDw",
"timestamp": "2026-10-06T09:10:22.7037128+00:00",
"version": "v3"
}
}{
"success": false,
"data": null,
"error": {
"code": "RESOURCE_015",
"message": "Call not found",
"details": null,
"doc_url": "https://docs.sent.dm/reference/api/error-catalog"
},
"meta": {
"request_id": "req_7X9zKp2jDw",
"timestamp": "2026-10-06T09:10:22.7037133+00:00",
"version": "v3"
}
}{
"success": false,
"data": null,
"error": {
"code": "INTERNAL_001",
"message": "An unexpected error occurred while retrieving the call",
"details": null,
"doc_url": "https://docs.sent.dm/reference/api/error-catalog"
},
"meta": {
"request_id": "req_7X9zKp2jDw",
"timestamp": "2026-10-06T09:10:22.7037136+00:00",
"version": "v3"
}
}List calls GET
Retrieves a paginated list of your calls, most recent first. Filter by direction, status, the owning number, and the time the call started (from and to are inclusive). Use the call webhooks for real-time updates; this list is for looking calls up afterwards.
Hang up a call POST
Ends one of your live calls. The call then ends the way any other call does: its status moves to completed and call.completed is sent once the disconnect is reported. A call that has already ended answers 409, and so does a call with no phone leg, such as one between two app users.