Introduction
One HTTP API for the fan apps, organiser portal, merchant portal, and floor terminals. Send JSON, read the shared envelope, then open a chapter for the methods you need.
How to call it
Use Content-Type: application/json for request bodies. Production base URL is https://api.groove.com.na. Point UAT builds at the UAT Cloud Run host — never mix payment hosts across environments.
Clients and the API
Every product surface talks to the same service.
Response envelope
Always read status first. A wrong password is often HTTP 200 with status: "failed" — that is intentional.
| Field | Req. | Description |
|---|---|---|
status | Y | Outcome class: success, failed, or error. |
success | Y | Boolean convenience flag. true only when status is success. |
statusCode | Y | Application code. success uses 00000. Auth failures use 201… integers. HTTP errors use the HTTP status. |
message | Y | Human-readable explanation suitable for logs or UI. |
shortMessage | Y | Short label for compact UI (e.g. SUCCESS, Invalid credentials). |
timestamp | Y | ISO 8601 UTC time the envelope was built. |
requestId | Y | Correlation id. Also returned as header x-request-id. |
data | C | Payload on success. null on failed. Absent or null on many errors. |
code | C | Machine-readable failure code (e.g. INVALID_CREDENTIALS, VALIDATION_ERROR). |
path | C | Request path on error envelopes. |
errors | C | Optional field-level validation details. |
Authentication
- Call
POST /api/auth/login(or Google / Apple) to receive tokens. - Send
Authorization: Bearer <accessToken>on protected routes. - When access expires, call
POST /api/auth/refresh. - On sign-out, call
POST /api/auth/logout.
Browse by chapter
Each chapter lists methods with request fields, an example response, and notes on the data payload.
Source of truth
- Generated from
Groove/api/src/routes/*Zod schemas and route registrations. - Sample bodies enriched from
Groove/api/postman/Groove-API-UAT.postman_collection.json. - Regenerate with
python3 docs/api/_generate.py. - Conventions:
Groove/api/docs/API-CONVENTIONS.md.
API reference · October 2026 · 438 methods
