# WordPlus Cloud realtime HTTP API

Your server sends events to rooms and users, and asks the pages of a user and waits for their replies. It reads the
rooms someone is in, who is in each and its history, who is online, the group calls and live streams going on and
who is in them, what your app uses, and the deliveries of its webhook. It takes a user out of everything at once,
takes people out of rooms, calls and streams, mutes and ends calls, and moderates the chat of a stream as its
moderators do. All with signed HTTPS requests. WordPlus Cloud tells your server what happens with a signed webhook.

The packages for Node (`@wordplus/realtime`), PHP (`wordplus/realtime-php`) and Python (`wordplus-realtime`) make
these requests for you. From any other language, sign them as [signing requests](/api/signing/) shows. Every
request carries three headers: `X-WordPlus-Site` (your app key), `X-WordPlus-Timestamp` (unix seconds) and
`X-WordPlus-Signature`.

The examples use a helper that signs and sends a request, `wordplus( method, path, body )`, the same in every
language, given in full on [signing requests](/api/signing/).

Base address: https://rest.wordplus.cloud

| Header | |
|---|---|
| `X-WordPlus-Site` | Your app key, `WORDPLUS_SITE`. |
| `X-WordPlus-Timestamp` | The time of the request in unix seconds, within 5 minutes of the server clock. |
| `X-WordPlus-Signature` | Hex HMAC-SHA256, under the publish key `HMAC-SHA256(secret, "wordplus-realtime publish v1")`, of `"{timestamp}\n{METHOD}\n{path with query, as sent}\n{sha256 hex of the body}"` ([signing requests](/api/signing/)). |

OpenAPI 3.1: https://docs.wordplus.cloud/api/openapi.yaml
