notice: browser connection code refers to the session code generated from /auth/connect. base64 encoded creds refers to the base64 encoded object containing username and password i.e. var username = 'my_username'; var password = 'MY-P@$$WORD'; var output = btoa(JSON.stringify({username: username, password: password})); //outputs the base64 encoded creds ---------------------------------------------------------------------------------------------------- Description endpoint method syntax ---------------------------------------------------------------------------------------------------- USER METHODS Get info about a user /users/:user GET (no body) Get a users list of /users/:user/followers GET (no body) followers Get a users list of /users/:user/following GET (no body) following Get a users pfp data url /users/:user/pfp GET (no body) Get a users list of /users/:user/messages POST headers: {authorization: 'browser connection code'} messages (requires authentication) Get a users settings /users/:user/settings POST headers: {authorization: 'browser connection code'} (requires authentication) Get a list of profile /users/:user/comments GET (no body) comments Get the number of /users/:user/messages/count GET (no body) messages a user has Report a user /users/:user/report POST body: {for: 'user_name123', reason: 'report reason'}, headers: {authorization: 'browser connection code'} Update a users settings /settings POST body: {settings: {password: 'n3w_pA$$word', commenting: true/false, pfp: 'data:url', email: 'new@email.com', bio: 'Fun facts about me', wiwo: 'random stuff idrk', sets:{ profile:{ privatecoms: true, comment: "everyone", dm: "everyone" }, pref:{ theme:1, font:"default", rot:{x:0,y:0,z:0}, contrast: 1, age:0,ultradark:false,party:false,css:true,customcss:"",customjs:"" } }} }, headers: {authorization: 'browser connection code'} Comment on a user /users/:user/comment POST body: {content: 'comment content'}, headers: {authorization: 'browser connection code'} Reply to a comment /users/:user/comments/:id/reply POST body: {content: 'comment content'}, headers: {authorization: 'browser connection code'} Toggle following a user /users/:user/follow POST headers: {authorization: 'browser connection code'} Get a users posts /users/:user/posts GET (no body) POST METHODS Create a post /post POST body: {content: 'post content'}, headers: {authorization: 'browser connection code'} Get a post /post/:id GET (no body) Get a post's comments /post/:id/comments GET (no body) Comment on a post /post/:id/comment POST body: {content: 'comment content'}, headers: {authorization: 'browser connection code'} AUTH METHODS Join (rate limited) /auth/join POST body:{email: 'email@domain.tld', username: 'username123', password: 'password123', country: 'country_name', day: 'day', month: 'month', year: 'year'}} Verify credidentials /auth/signin POST headers: {authorization: 'base 64 encoded creds'} Connect browser to creds /auth/connect POST headers: {authorization: 'base 64 encoded creds'} Disconnect (logout) /auth/disconnect POST body: {code: 'stored_session_code_generated_from_/auth/connect}, headers: {authorization: 'browser connection code'} browser session Get user details from /auth/determine POST headers: {authorization: 'browser connection code'} session code (similar to GET /users/:username) ADMIN METHODS Ban a user /admin/users/:user/ban POST headers: {authorization: 'browser connection code'} Delete a user /admin/users/:user/delete POST headers: {authorization: 'browser connection code'} Update any users settings /admin/users/:user/settings POST body: {settings: {password: 'n3w_pA$$word', commenting: true/false, pfp: 'data:url', email: 'new@email.com', bio: 'Fun facts about me', wiwo: 'random stuff idrk', is_admin: true/false, username: 'new_username_yay'}}, headers: {authorization: 'browser connection code'} Reset server (emergency) /admin/resetserver POST headers: {authorization: 'base 64 creds'} Sign everyone out; /admin/resetassoc POST headers: {authorization: 'base 64 creds'} to be used in emergency (there are more admin methods but they are hidden) OTHER METHODS Status, resources, etc / GET (no body) Statistics /stats GET (no body) Api reference /docs GET (no body) Information about cat db /cats GET (no body) Add a cat to the cat db /cats POST body: {name: 'cat_name', style: 'sitting/sleeping/playing/head'} View all the cats /cats/view GET (no body)