Skip to main content
The app endpoints provide access to board data in JSON format, compatible with the 4chan API structure. All endpoints support optional authentication to filter reported content.

Authentication

These endpoints support optional JWT authentication via the api_usr_authenticated decorator. When authenticated, reported posts are filtered based on the user’s authority level.
Unauthenticated requests will receive filtered content with reported posts hidden according to the moderation settings.

Get catalog

GET /api/v1/{board}/catalog.json
Retrieves the catalog for a specific board, containing all threads organized by pages.
board
string
required
Board shortname (e.g., “g”, “a”, “tech”)
Authorization
string
Bearer token for authenticated requests (optional)

Response

Returns an array of page objects, each containing threads for that page.
threads
array
Array of thread objects in the catalog. Reported posts are filtered based on authentication status.

Get thread

GET /api/v1/{board}/thread/{thread_id}.json
Retrieves a complete thread with all posts.
board
string
required
Board shortname
thread_id
integer
required
Thread ID (OP post number)
Authorization
string
Bearer token for authenticated requests (optional)

Response

Returns a thread object containing the OP and all replies.
posts
array
Array of post objects in the thread. Reported posts are filtered based on authentication status.

Get board index

GET /api/v1/{board}/{page_num}.json
Retrieves a specific page of the board index with thread previews.
board
string
required
Board shortname
page_num
integer
required
Page number (0-indexed)
Authorization
string
Bearer token for authenticated requests (optional)

Response

Returns an index object containing threads for the requested page.
threads
array
Array of thread objects with preview posts. Reported posts are filtered based on authentication status.

Error handling

All endpoints validate the board shortname and will return an error if the board does not exist.
Invalid board names will result in a validation error. Ensure the board shortname matches a configured board.

Build docs developers (and LLMs) love