Skip to main content

API Overview

Base URL

Production base URL:

https://api.langwa.kwadrise.com

Local development (when running the backend locally):

http://localhost:3000

Authentication

All protected endpoints use bearer tokens:

Authorization: Bearer <access_token>

Error format

Error responses return a non-2xx status code with a JSON body. The exact error shape is not yet versioned in OpenAPI, so clients should defensively read the message field when present and fall back to the HTTP status code.

Rate limits

Rate limits are enforced at the API edge. If you need higher limits for a client or integration, coordinate with the backend team to provision per-app rules.

Implemented endpoints

All API routes are prefixed with /api.

Auth

  • POST /api/auth/signup
  • POST /api/auth/login
  • POST /api/auth/google
  • GET /api/auth/me (requires Authorization: Bearer <token>)
  • POST /api/auth/logout

Upload

  • POST /api/upload (multipart file upload)

Learners

  • GET /api/learners/me/preferences (requires Authorization: Bearer <token>)

API Explorer

The live Swagger UI is available in the docs site at /api, backed by /openapi.json from this repo.