Answer a call
const url = 'https://app.mondochat.io/v1/calls/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/answer';const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://app.mondochat.io/v1/calls/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/answer \ --header 'Authorization: Bearer <token>'The callee answers a ringing call. The call becomes active and the response carries what the callee needs to join the Agora channel. Takes a session token. See https://docs.mondochat.io/guides/calls/.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Responses
Section titled “Responses”Successful Response
What a client needs to join the call’s Agora channel.
object
The Agora app id to join with.
The call.
object
The user who is called.
The user who started the call.
The conversation the call belongs to.
The call’s id.
When the call was started.
ringing until answered, then active; missed, declined and busy end it unanswered, ended after it was answered.
How the callee’s client rings; it changes nothing else.
The Agora channel of the call.
When the token stops working.
The other participant’s uid. React only to this uid in the channel.
The Agora token for this channel and uid.
The caller’s numeric Agora uid.
Example
{ "agora_app_id": "0123456789abcdef0123456789abcdef", "call": { "callee_id": "0199d6a0-1000-7000-8000-000000000002", "caller_id": "0199d6a0-1000-7000-8000-000000000001", "conversation_id": "0199d6a0-2000-7000-8000-000000000001", "id": "0199d6a0-5000-7000-8000-000000000001", "started_at": "2026-11-01T09:30:00Z", "state": "ringing", "video": true }, "channel": "0199d6a0-5000-7000-8000-000000000001", "expires_at": "2026-11-01T13:30:00Z", "peer_uid": 1002, "rtc_token": "example-rtc-token", "uid": 1001}Problem
An RFC 9457 problem: the body of every error answer.
object
The stable error code to branch on, such as policy_denied.
What went wrong this time, when there is more to say.
For validation, one entry per invalid field.
One invalid field.
object
The path to the field.
What is wrong with it.
The path of the request.
For policy_denied and limit_reached, the rule or limit that refused the request; for forbidden, a short cause such as you_blocked; for banned, temporary when the ban expires.
The HTTP status code.
A short summary of the problem.
A URL that names the problem, https://app.mondochat.io/problems/<code>.
Example
{ "code": "policy_denied", "detail": null, "instance": "/v1/conversations/0199d6a0-2000-7000-8000-000000000001", "reason": "pins", "status": 403, "title": "Policy denied", "type": "https://app.mondochat.io/problems/policy_denied"}