# API Documentation All API routes are prefixed `/api/v1/` ## /admin_token All sub-routes require admin privileges ### / * Method: `POST` * Response: ``` { id: , token: } ``` ## /ban All sub-routes require admin privileges ### / * Method: `POST` * Data params: * `message ` * `username ` * `canCreateThreads ` * `canCreatePosts ` * `ipBanned ` * Response: ``` { id: , message: , canCreateThreads: , canCreatePosts: , ipBanned: , User: { id: , username: , description: , color: , createdAt: } ``` ### / * Method: `GET` * Response: ``` [{ id: , createdAt: , updatedAt: , canCreatePosts: , canCreateThreads: , ipBanned: , message: , UserId: }, ...] ``` ### /:id * Method: `DELETE` * URL params: `id ` * Response: ``` { success: true } ``` ## /category ### / * Method: `GET` * Reponse: ``` [{ color: , createdAt: , id: , name: , updatedAt: , value: }, ...] ``` ### /:category * Method: `GET` * URL params: `category ` * Query params: * `username ` * `from ` * `limit ` * Response: ``` { name: , value: , color: , [id: ], [createdAt: ], [updatedAt: ], Threads: [ ... ], meta: { nextURL: , nextThreadsCount: } } ``` ### / * Method: `POST` * Data params: * `name ` * `color ` * Response: ``` { color: , createdAt: , id: , name: , updatedAt: , value: } ``` * Notes: requires admin privileges ### /:id * Method: `PUT` * URL params: `id ` * Data params: * `name ` * `color ` * Response: ``` { color: , createdAt: , id: , name: , updatedAt: , value: } ``` * Notes: requires admin privileges ### / * Method: `DELETE` * URL params: `id ` * Response: ``` { success: true, otherCategoryCreated: } ``` * Notes: requires admin privileges