Take a piece
The APIs
Everything the apps use. The one call that needs nothing from you is /info, the join preview — it's open on purpose, because a client has to be able to tell you whether you need an account before you try.
bash
curl -s https://chat.example.com/infojson
{
"serverId": "...",
"name": "Bird House",
"members": "12",
"lanOpen": false,
"identityTiers": ["account"],
"joinPolicy": "invite"
}A server with discovery turned off answers 404 to anyone who isn’t already a member. The build number only comes back for members, because an open endpoint that names your exact version is a list of hosts for someone to scan.
An identity is a P-256 keypair that signs its own certificate. A server checks the signature instead of asking anyone, us included. That is the same handshake a person, a bot and another server all use — there is no second path.
- Server APIEvery REST endpoint and Socket.IO event the server answers.
- The SFU protocolHow the voice server is spoken to, from both sides: the Gryt server's connection and a participant's.
- IdentitySelf-signed certificates, the challenge-response, and how a server decides a key is who it says.
- Rate limitingWhat the server does when a client goes too fast, and what a client should do about it.