Route Academy

route-posts

A complete social API learning playground with professional docs, clear endpoint contracts, and fast testing workflow.

Auth & Users Feed & Timeline Comments & Mentions Notifications

About Route Academy

Egypt's Leading IT Training Center Since 2012

Route Academy is the premier IT training center in Egypt, established in 2012. We specialize in delivering high-quality training courses in programming, web development, and application development. We've identified the unique challenges people may face when learning new technology and made efforts to provide strategies to overcome them.

2012 Founded
40K+ Graduates
50+ Partner Companies
5 Branches
20 Diplomas Available

Live Demo

Use this quick demo to verify the backend is reachable from your browser.

Not executed yet
Click "Run Health Check" to fetch /api/health...

Testing Workflow

  1. Open the Postman public documentation and fork the collection to your workspace.
  2. Create a user with POST /users/signup, then sign in using POST /users/signin.
  3. Save data.token and send it as Authorization: Bearer <token> for protected routes.
  4. Run the core journey: create post, comment/reply, like/bookmark/share, then check notifications.
  5. Validate pagination and filters using page, limit, only, and cursor where available.
Free for testing and educational use. Not intended for production workloads.

Connect With Route Academy

Follow Route Academy and join the learning community.

API Modules

Method Endpoint Purpose Auth
POST /users/signup Create account and return token + user payload No
POST /users/signin Sign in by login/email/username No
PATCH /users/change-password Rotate password and token Yes
PUT /users/upload-photo Upload profile photo to Cloudflare R2 Yes
GET /users/profile-data Current authenticated profile Yes
GET /users/suggestions?page=&limit= Follow suggestions with pagination Yes
Method Endpoint Purpose Auth
GET /posts Public post listing (default newest first) Yes
GET /posts/feed?only=&page=&limit= Home timeline (following/me/all) Yes
POST /posts Create post with body/image Yes
PUT /posts/:postId Update body/image or remove image Yes
PUT /posts/:postId/like Toggle like Yes
GET /posts/:postId/likes?page=&limit= List users who liked a post Yes
PUT /posts/:postId/bookmark Toggle bookmark Yes
POST /posts/:postId/share Create share post linked to original post Yes
Method Endpoint Purpose Auth
GET /posts/:postId/comments?page=&limit= Paginated post comments Yes
POST /posts/:postId/comments Create comment (text/image) Yes
GET /posts/:postId/comments/:commentId/replies Paginated replies Yes
POST /posts/:postId/comments/:commentId/replies Create reply Yes
PUT /posts/:postId/comments/:commentId Edit comment by owner Yes
DELETE /posts/:postId/comments/:commentId Delete by comment owner or post owner Yes
PUT /posts/:postId/comments/:commentId/like Toggle comment like Yes
Method Endpoint Purpose Auth
GET /notifications?page=&limit= Notifications list with entity details Yes
GET /notifications/unread-count Unread badge count Yes
PATCH /notifications/:notificationId/read Mark one as read Yes
PATCH /notifications/read-all Mark all as read Yes

Response Contract

{
  "success": true,
  "message": "success",
  "data": {},
  "meta": {}
}
{
  "success": false,
  "message": "Validation error message",
  "errors": ["field error 1", "field error 2"]
}