Docs Developers Status ForumSpark Hub
Connect · REST API

Authentication

The REST API uses Laravel Sanctum bearer tokens for authentication. Board admins generate API tokens from their Admin Control Panel with fine-grained permission scopes.

Making authenticated requests

Include the token as a Bearer token in the Authorization header:

curl https://your-board.forumspark.net/api/forums \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Accept: application/json"

Available token scopes

Each token can be granted any combination of these scopes. Write scopes include read access.

Scope Description
forums.readRead forums and categories
forums.writeCreate, update, and delete forums
topics.readRead topics
topics.writeCreate, update, and delete topics
replies.readRead replies
replies.writeCreate, update, and delete replies
users.readRead user profiles
users.writeCreate, update, and delete users
groups.readRead user groups
groups.writeCreate, update, and delete groups
themes.readRead themes and settings
themes.writeCreate, update themes, CSS, and layouts
webhooks.readList webhook subscriptions
webhooks.writeCreate and delete webhook subscriptions

Important: API requests must be made to the board's subdomain (e.g. your-board.forumspark.net), not the main forumspark.net domain. The API is only available on per-board domains.

REST API

All API endpoints return JSON. Requests that create or modify data should include Content-Type: application/json and Accept: application/json headers.

Endpoint reference

Generated from the route table

App Data

EndpointRequired ability
GET/app-data any
PUT/app-data any
GET/app-data/{key} any
PUT/app-data/{key} any
DELETE/app-data/{key} any

Board

EndpointRequired ability
GET/board any

Forums

EndpointRequired ability
GET/forums forums.read,forums.write
POST/forums forums.write
GET/forums/{forum} forums.read,forums.write
PATCH/forums/{forum} forums.write
POST/forums/{forum}/topics topics.write

Frontend Jwt

EndpointRequired ability
POST/frontend-jwt/validate any

Groups

EndpointRequired ability
GET/groups groups.read,groups.write
POST/groups groups.write
GET/groups/{group} groups.read,groups.write
PATCH/groups/{group} groups.write

Replies

EndpointRequired ability
GET/replies replies.read,replies.write
GET/replies/{reply} replies.read,replies.write
PATCH/replies/{reply} replies.read,replies.write

Themes

EndpointRequired ability
GET/themes themes.read,themes.write
POST/themes themes.write
GET/themes/{theme} themes.read,themes.write
PATCH/themes/{theme} themes.write
PATCH/themes/{theme}/css themes.write
PATCH/themes/{theme}/guest-layout themes.write
PATCH/themes/{theme}/layout themes.write

Topics

EndpointRequired ability
GET/topics topics.read,topics.write
GET/topics/{topic} topics.read,topics.write
PATCH/topics/{topic} topics.write
POST/topics/{topic}/replies replies.read,replies.write

User

EndpointRequired ability
GET/user any

Users

EndpointRequired ability
GET/users users.read,users.write
POST/users users.write
GET/users/{user} users.read,users.write
PATCH/users/{user} users.write

Webhooks

EndpointRequired ability
GET/webhooks webhooks.read,webhooks.write
POST/webhooks webhooks.write
DELETE/webhooks/{webhook} webhooks.write

Token scopes

Generated from the platform registry
ScopeGrants
theme.applyApply theme to boards
widgets.registerRegister custom widgets
scripts.injectInject scripts into forum pages
board.readRead board configuration