Realtime · Schema

Realtime Presence

A presence record describing a member's membership in a realtime channel — who is connected, with what client metadata, and from when. Generalizes the presence models in Ably, Pusher, PubNub, Phoenix Presence, and LiveKit room participants.

Real-TimeWebSocketWebRTCServer-Sent EventsMQTTPush NotificationsPub-SubPresenceSignalingTopic

Properties

Name Type Description
channel string Channel on which the presence event occurred.
clientId string Identifier of the user or client whose presence is being reported.
connectionId string Provider-assigned identifier for the transport connection backing this presence.
action string The presence transition this record represents.
data object Application-defined presence metadata associated with the member (e.g., display name, avatar URL, status, location).
since string Time at which the member entered the channel (only for 'present'/'update').
occurredAt string Time the presence event occurred.
View JSON Schema on GitHub

JSON Schema

realtime-presence.json Raw ↑
{
  "$id": "realtime-presence.json",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "Realtime Presence",
  "description": "A presence record describing a member's membership in a realtime channel — who is connected, with what client metadata, and from when. Generalizes the presence models in Ably, Pusher, PubNub, Phoenix Presence, and LiveKit room participants.",
  "type": "object",
  "required": [
    "channel",
    "clientId",
    "action"
  ],
  "properties": {
    "channel": {
      "type": "string",
      "description": "Channel on which the presence event occurred."
    },
    "clientId": {
      "type": "string",
      "description": "Identifier of the user or client whose presence is being reported."
    },
    "connectionId": {
      "type": "string",
      "description": "Provider-assigned identifier for the transport connection backing this presence."
    },
    "action": {
      "type": "string",
      "description": "The presence transition this record represents.",
      "enum": [
        "enter",
        "leave",
        "update",
        "present",
        "absent"
      ]
    },
    "data": {
      "type": "object",
      "description": "Application-defined presence metadata associated with the member (e.g., display name, avatar URL, status, location).",
      "additionalProperties": true
    },
    "since": {
      "type": "string",
      "format": "date-time",
      "description": "Time at which the member entered the channel (only for 'present'/'update')."
    },
    "occurredAt": {
      "type": "string",
      "format": "date-time",
      "description": "Time the presence event occurred."
    }
  },
  "additionalProperties": false
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/realtime-presence"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.