Skip to content

API Overview

Base URL

https://api-<hash>-ew.a.run.app/v1

The API is deployed to europe-west1 on Cloud Run (Firebase Functions v2). The exact base URL is environment-specific; check your environment configuration.

Versioning

All endpoints are under /v1/. No v2 exists yet.

Response Shape

Every response is wrapped in a BaseResponse envelope:

{
  "code": 200,
  "body": { ... }
}

Errors follow the same shape:

{
  "code": 400,
  "body": { "errorMessage": "Descriptive message here" }
}

Always read body to get the actual payload.

Timestamps

All timestamps are epoch milliseconds (Unix time × 1000).

const date = new Date(payload.createdOn); // correct

Conventions

  • All request/response bodies are JSON
  • Authentication via Firebase ID token in the authorization header (no Bearer prefix)
  • Soft-deleted records have deletedOn > 0 — the API filters these out automatically