API conventionsΒΆ

The default base URL is http://localhost:8090. JSON requests set Content-Type: application/json. Successful JSON responses use application/json; errors are plain text with an appropriate HTTP status.

Common statuses are 200 (success), 201 (created), 204 (success without a body), 400 (invalid input), 401 (authentication required), 403 (not permitted), 404 (missing or inaccessible resource), 409 (conflict), and 500 (server/database failure).

UUID path values identify users, servers, channels, conversations, messages, and warnings. Multipart message requests use a content field and repeated attachments fields. Attachments are limited to five files and 25 MiB per file.