Get a call
GET
https://api.voice-agent.gowajee.ai/api/call/:callIdReturns one call attempt with its analysis result. callId is payload.call.id in the webhook,
or calls[].id in List campaign calls.
Path parameters
Section titled “Path parameters”| Name | Description |
|---|---|
callId |
The call ID. |
Request
Section titled “Request”curl "https://api.voice-agent.gowajee.ai/api/call/fc1c320d-d133-4d48-8118-5932d93149fd" \ -H "X-API-Key: $GOWAJEE_API_KEY"const res = await fetch(`https://api.voice-agent.gowajee.ai/api/call/${callId}`, { headers: { 'X-API-Key': process.env.GOWAJEE_API_KEY },});const { data: call } = await res.json();call = requests.get( f"https://api.voice-agent.gowajee.ai/api/call/{call_id}", headers={"X-API-Key": os.environ["GOWAJEE_API_KEY"]}, timeout=30,).json()["data"]Response
Section titled “Response”{ "success": true, "message": "Get Call details successfully", "data": { "id": "fc1c320d-d133-4d48-8118-5932d93149fd", "sessionId": "0f72ce05-5481-4bfe-bde4-6a675689822c", "callStatus": "COMPLETED", "agentStatus": "COMPLETED", "callStartedAt": "2026-10-01T02:11:58.472Z", "callEndedAt": "2026-10-01T02:13:58.592Z", "callDuration": "120.120", "result": { "version": "v2", "fixedAttr": { "callSummary": "ลูกค้ารับทราบยอดค้างชำระ และนัดชำระวันที่ 5 ตุลาคม", "funnel": { "funnelFlow": ["greeting", "inform_amount", "closing"], "value": "closing" } }, "postCallAnalyticsResult": { "promise_to_pay": { "type": "boolean", "required": true, "value": true }, "payment_date": { "type": "text", "required": false, "value": "2026-10-05" } } }, "recipient": { "id": "5b1f0c9e-2d4a-4f6b-9a61-3c7e8d2f1a04", "customerName": "Somchai", "tel": "0812345678" }, "createdAt": "2026-10-01T00:00:00.000Z", "updatedAt": "2026-10-01T02:14:20.310Z", "dataExpired": { "audio": false, "personalData": false, "output": false } }}{ "success": false, "statusCode": 404, "code": "CALL_NOT_FOUND", "message": "Call not found", "errors": ["Call not found"]}| Field | Type | Description |
|---|---|---|
result |
object | The analysis. It is called result here, and callResult in the webhook and /calls. Same shape, see callResult. It is {} when there is no result yet, never null. |
callDuration |
numeric string or null |
Seconds with 3 decimals, as a string such as "120.120". Parse it with parseFloat. null if the call never connected. |
recipient |
object | id, customerName, tel. Masked when dataExpired.personalData is true. |
dataExpired |
object | See Data retention. All three are true if the campaign was deleted. |
Errors
Section titled “Errors”The body is the usual error envelope.
| Status | code |
message |
Cause |
|---|---|---|---|
400 |
INVALID_ID |
callId must be a valid UUID |
The ID in the path isn’t a UUID. |
404 |
CALL_NOT_FOUND |
Call not found |
Wrong ID, or the call belongs to another organization. |