Every RaxBoard install ships a Bearer-authenticated REST API. Issue scoped keys, then read and write forums, threads, posts, members, private messages and moderation — all over HTTP.
A machine-readable OpenAPI 3.1 document describes every endpoint, scope and schema. Point Swagger UI, Postman or an SDK generator at your forum’s spec — or explore it interactively below.
Send your key as a Bearer token in the Authorization header. Every endpoint under /api/v1 requires it; requests without a valid key return 401.
Keys are created inside your forum, never on raxboard.com:
Each key carries one or more scopes. The broad umbrellas (read, write, admin) include their finer-grained members; private messages and admin actions require their explicit scope.
| Scope | Name | Description |
|---|---|---|
| * | Full access | Everything below. Grant only to fully trusted integrations. |
| read | Read | Read public forums, threads, posts and users. |
| write | Write | All non-admin write actions (post, thread, react, edit). |
| thread:write | Create threads | Start new threads. |
| post:write | Create posts | Reply to threads. |
| post:manage | Manage posts | Edit and delete posts. |
| react:write | React | Add or remove reactions. |
| conversation:read | Read messages | Read the owner's private conversations. |
| conversation:write | Send messages | Start and reply to private conversations. |
| token | Manage API keys | List and revoke your own API keys. |
| admin | Administration | All administrative actions below. |
| admin:users | Manage users | Ban, unban and manage member accounts. |
| admin:content | Moderate content | Moderate threads and posts. |
Each key has a per-minute request limit (default 60). Responses carry rate-limit headers; exceeding the limit returns HTTP 429 with Retry-After.
Successful responses are wrapped in { success: true, data: ... }. Errors return a consistent envelope with a machine-readable code and a human message, plus the right HTTP status.
List endpoints accept page and per_page (max 100). The response carries a pagination object and an RFC 5988 Link header with first/prev/next/last URLs.
/api/v1read/api/v1/authread/api/v1/forumsread/api/v1/forums/{id}read/api/v1/threadsread/api/v1/threadsthread:write/api/v1/threads/{id}read/api/v1/threads/{id}/postsread/api/v1/postsread/api/v1/postspost:write/api/v1/posts/{id}read/api/v1/posts/{id}post:manage/api/v1/posts/{id}post:manage/api/v1/posts/{id}/reactreact:write/api/v1/usersread/api/v1/users/meread/api/v1/users/{id}read/api/v1/notifications/alertsread/api/v1/searchread/api/v1/messagesconversation:read/api/v1/messagesconversation:write/api/v1/messages/{id}conversation:read/api/v1/messages/{id}/replyconversation:write/api/v1/admin/users/{id}/banadmin:users/api/v1/admin/users/{id}/unbanadmin:users/api/v1/admin/threads/{id}/deleteadmin:content/api/v1/admin/threads/{id}/restoreadmin:content/api/v1/admin/posts/{id}/deleteadmin:content/api/v1/admin/posts/{id}/approveadmin:content/api/v1/notifications/alerts/{id}/readwrite/api/v1/notifications/alerts/read-allwrite/api/v1/notifications/alerts/countread/api/v1/reactionsread/api/v1/posts/{id}/reactreact:write/api/v1/threads/{id}/bookmarkwrite/api/v1/posts/{id}/bookmarkwrite/api/v1/users/me/bookmarksread/api/v1/users/me/bookmarks/labelsread/api/v1/users/{id}/followwrite/api/v1/users/{id}/followwrite/api/v1/users/{id}/followersread/api/v1/users/{id}/followingread/api/v1/users/{id}/wallread/api/v1/users/{id}/wallwrite/api/v1/users/{id}/ignorewrite/api/v1/users/{id}/ignorewrite/api/v1/users/{id}/blockwrite/api/v1/users/{id}/blockwrite/api/v1/threads/{id}/watchwrite/api/v1/threads/{id}/watchwrite/api/v1/forums/{id}/readwrite/api/v1/forums/read-allwrite/api/v1/tagsread/api/v1/tags/{slug}/threadsread/api/v1/forums/{id}/prefixesread/api/v1/polls/{id}read/api/v1/polls/{id}/votewrite/api/v1/polls/{id}/votewrite/api/v1/threads/{id}/reportwrite/api/v1/posts/{id}/reportwrite/api/v1/admin/reportsadmin:content/api/v1/admin/reports/{id}/resolveadmin:content/api/v1/attachmentswrite/api/v1/attachments/{id}read/api/v1/users/mewrite/api/v1/users/me/preferencesread/api/v1/users/me/preferenceswrite/api/v1/users/me/custom-fields/{field_id}write/api/v1/users/me/ignoredread/api/v1/users/me/tokenstoken/api/v1/users/me/tokens/{id}token/api/v1/users/onlineread/api/v1/user-groupsread/api/v1/user-groups/{id}/membersread/api/v1/nodesread/api/v1/statsread/api/v1/eventsread/api/v1/events/{id}/rsvpwrite/api/v1/clubsread/api/v1/clubs/{id}/joinwrite/api/v1/users/me/drafts/{key}read/api/v1/users/me/drafts/{key}write/api/v1/broadcast/authread/api/v1/broadcast/pollread/api/v1/presence/thread/{thread_id}read/api/v1/presence/onlineread/api/v1/push/subscribereadReplace your-forum.com with your own domain and YOUR_API_KEY with a key you created.
Beyond the REST API, your forum can push HMAC-signed webhooks to external services when events fire — configure them in Admin Panel → Webhooks.
This reference applies to the API on your own RaxBoard install. Back to docs →