Renew the call token
const url = 'https://app.mondochat.io/v1/calls/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/token';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/token \ --header 'Authorization: Bearer <token>'Returns a fresh Agora token for the call. While calls.per_minute.enabled is on it charges the next minute first through your call_minute callout, and a result of insufficient or failed ends the call with reason insufficient_funds. 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
A renewed Agora token.
object
When the token stops working.
The Agora token for the call’s channel and the caller’s uid.
Example
{ "expires_at": "2026-11-01T13:30:00Z", "rtc_token": "example-rtc-token"}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"}