Skip to content

Latest commit

 

History

History
157 lines (144 loc) · 2.68 KB

DOCUMENTATION.md

File metadata and controls

157 lines (144 loc) · 2.68 KB

API Documentation

All API routes are prefixed /api/v1/

/admin_token

All sub-routes require admin privileges

/

  • Method: POST
  • Response:
      {
          id: <integer>,
          token: <string>
      }
    

/ban

All sub-routes require admin privileges

/

  • Method: POST
  • Data params:
    • message <string>
    • username <string>
    • canCreateThreads <boolean>
    • canCreatePosts <boolean>
    • ipBanned <boolean>
  • Response:
    {
        id: <integer>,
        message: <string>,
        canCreateThreads: <boolean>,
        canCreatePosts: <boolean>,
        ipBanned: <boolean>,
        User: {
            id: <integer>,
            username: <string>,
            description: <null | string>,
            color: <string>,
            createdAt: <string>
        }
    

/

  • Method: GET
  • Response:
    [{
        id: <integer>,
        createdAt: <string>,
        updatedAt: <string>,
        canCreatePosts: <boolean>,
        canCreateThreads: <boolean>,
        ipBanned: <boolean>,
        message: <string>,
        UserId: <integer>
    }, ...]
    

/:id

  • Method: DELETE
  • URL params: id <integer>
  • Response:
    { success: true }
    

/category

/

  • Method: GET
  • Reponse:
    [{
        color: <string>,
        createdAt: <string>,
        id: <integer>,
        name: <string>,
        updatedAt: <string>,
        value: <string>
    }, ...]
    

/:category

  • Method: GET
  • URL params: category <string>
  • Query params:
    • username <string, optional>
    • from <integer, optional>
    • limit <integer, optional>
  • Response:
    {
        name: <string>,
        value: <string>,
        color: <string>,
        [id: <integer>],
        [createdAt: <string>],
        [updatedAt: <string>],
        Threads: [ ... ],
        meta: {
           nextURL: <string | null>,
           nextThreadsCount: <integer>
        }
    }
    

/

  • Method: POST
  • Data params:
    • name <string>
    • color <string, optional>
  • Response:
    {
        color: <string>,
        createdAt: <string>,
        id: <integer>,
        name: <string>,
        updatedAt: <string>,
        value: <string>
    }
    
  • Notes: requires admin privileges

/:id

  • Method: PUT
  • URL params: id <integer>
  • Data params:
    • name <string, optional>
    • color <string, optional>
  • Response:
    {
        color: <string>,
        createdAt: <string>,
        id: <integer>,
        name: <string>,
        updatedAt: <string>,
        value: <string>
    }
    
  • Notes: requires admin privileges

/

  • Method: DELETE
  • URL params: id <integer>
  • Response:
    {
        success: true,
        otherCategoryCreated: <category object | null>
    }
    
  • Notes: requires admin privileges