Session Open Group Server
| Schemes | session://, sessions://, sogs:// |
| Cargo feature | service-sogs |
| Service | https://getsession.org/ |
| Body formats | text (first is the default) |
| Attachments | no |
| Title length | no title (merged into the body) |
| Body length | 2,000 characters |
| Body lines | unlimited |
| Request throttle | none |
| Vendor URLs accepted | no |
URL formats
{schema}://{user}:{password}@{host}/{targets}
{schema}://{user}:{password}@{host}:{port}/{targets}
{schema} is one of session://, sessions://, sogs://.
URL tokens
| Token | Meaning | Type | Required | Default | Notes |
|---|---|---|---|---|---|
{host} | Hostname | string | yes | ||
{password} | Seed | string | yes | secret | |
{port} | Port | int, 1 to 65535 | no | ||
{targets} | Rooms | list | no | separated by / | |
{user} | Public Key | string | yes |
Query parameters
| Parameter | Meaning | Type | Default | Notes |
|---|---|---|---|---|
key | Public Key | string | sets {user} | |
public_key | Public Key | string | sets {user} | |
seed | Seed | string | sets {password} | |
to | Rooms | list | sets {targets} |
The common URL parameters (format, overflow, verify, redirect, cto, rto, retry, wait, store, tag, tz, user, password, port, optional, emojis) apply as well.
Examples
Rejected URLs:
sessions://host/test-room
sessions://bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb@host/test-room
sessions://ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@host/test-room
sessions://bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@host
Notes
Session Open Group Server (session://, sessions://, sogs://): messages to Session open group rooms.
Every request is authenticated with the X-SOGS-* headers: an Ed25519 signature (by the bot’s seed) over the server key, a random nonce, the timestamp, method, path and the BLAKE2b-512 hash of the body.