Frontend Forever ships a REST API at /api/* and a Socket.IO channel for realtime updates. This page tracks the current v2 API; the 2023 v1 reference has been retired.
Bearer auth
Send Authorization: Bearer <token>. Use the JWT from /api/auth/login or a personal access token.
JSON in / JSON out
All endpoints accept and return application/json. Errors follow the { error, message } shape.
Rate limits
100 req/min for reads, 30 req/min for writes. Authenticated users get a higher bucket.
/api/auth/registerCreate a new account./api/auth/loginExchange credentials for a JWT./api/auth/refreshRefresh an expiring access token./api/auth/logoutInvalidate the current session./api/usersList users (paginated, searchable)./api/users/:idOrUsernameFetch a public profile./api/users/:idOrUsername/followersList followers./api/users/:idOrUsername/followingList followings./api/users/:id/followFollow a user (auth required)./api/elementsList elements (filters, sort, search)./api/elementsPublish a new element (auth required)./api/elements/:idOrSlugFetch a single element./api/elements/:id/likeLike an element (auth required)./api/elements/:id/commentsAdd a comment (auth required)./api/blogList published blog posts./api/blog/:slugFetch a single post./api/blog/:id/likeLike a post (auth required)./api/notificationsList the current user’s notifications./api/socket.ioRealtime channel (presence, comments, likes)./api/api-keysList your API keys./api/api-keysCreate a new API key. Returns the raw token once./api/api-keys/:idRevoke an API key.Create a personal access token from your account settings and use it as a bearer token in the Authorization header.