# RTLayer > RTLayer delivers realtime messages from your servers to your users. Publish with one HTTPS request; every connected web or mobile client receives it over a websocket within milliseconds. No socket servers to build, scale or babysit. Essentials: - Publish from a server: `POST https://api.rtlayer.com/message` with header `x-api-key: ` and JSON `{"message": "...", "channel": "optional"}`. - Receive in a client: `npm i rtlayer-client`, then `RTLayer(orgId, serviceId).on("", handler)`, or open `wss://ws.rtlayer.com///` and send `{"action":"join","id":""}`. - Org ID and service ID are public; API keys are secret and belong on servers only. ## Docs - [Full documentation as Markdown](https://rtlayer.com/llms-full.txt): every section below in one file - [How RTLayer works](https://rtlayer.com/docs#overview): Your server publishes over HTTPS; RTLayer pushes to every subscribed client over websockets. - [Quickstart](https://rtlayer.com/docs#quickstart): From zero to a live message in five minutes. - [Core concepts](https://rtlayer.com/docs#concepts): Organizations, services, IDs, API keys, channels, messages and TTL. - [Publish messages](https://rtlayer.com/docs#publishing): POST /message: send a message to a channel or to everyone. - [Receive messages (JavaScript)](https://rtlayer.com/docs#receiving): The rtlayer-client SDK for browsers, React Native and Node 22+. - [Websocket protocol (any language)](https://rtlayer.com/docs#websocket-protocol): Connect, join channels and read frames without an SDK. - [Authenticate clients](https://rtlayer.com/docs#authentication): Require signed tokens so only your users connect, and control which channels they join. - [Delivery and TTL](https://rtlayer.com/docs#delivery): What happens to a message, and how TTL keeps it for late joiners. - [Org API keys and creating services](https://rtlayer.com/docs#org-api-keys): One key for every service in an organization, including creating services from code. - [API keys](https://rtlayer.com/docs#api-keys): Service keys vs org keys, who manages them, and disabling a key. - [Limits](https://rtlayer.com/docs#limits): Rate limits, sizes, connections and timeouts. - [Errors](https://rtlayer.com/docs#errors): Status codes and messages from the HTTP API and the websocket. - [Using the dashboard](https://rtlayer.com/docs#dashboard): Services, keys, Playground, analytics and team roles. - [For AI agents](https://rtlayer.com/docs#agents): Machine-readable docs and a checklist for integrating RTLayer from code. - [Troubleshooting](https://rtlayer.com/docs#troubleshooting): Common problems and how to fix them.