Send a presence heartbeat
const url = 'https://app.mondochat.io/v1/presence';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/presence \ --header 'Authorization: Bearer <token>'Keeps the caller online. The chat sends it when it opens and every 25 seconds while it is open and visible. The first heartbeat of an offline user marks them online and tells the peers allowed to see presence; later ones only move last_seen_at, at most one write per 20 seconds. A user with no heartbeat for 60 seconds goes offline. Nothing happens while presence.enabled is off. Needs a session token.
Guide: Presence.
Authorizations
Section titled “Authorizations”Responses
Section titled “Responses”Successful Response
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"}