API Overview
Memvera exposes a full REST API — everything the staff, member, and trainer apps do is available to integrate with: enrol members, sell memberships, book and cancel classes, read reports, and more. Endpoints are grouped by module in the API reference.
Base URL
https://api.memvera.com/apiAuthentication
Every request (except the Public (no auth) group) sends a bearer token:
Authorization: Bearer <token>
X-Brand: <brand code>- Tokens are issued per user. For server-to-server integrations, ask the gym admin to create a scoped connector token under Settings → MCP integration — those tokens are not tied to a login session.
X-Brandselects the gym (tenant). Users pinned to a brand are locked to it server-side regardless of the header.- Permissions are enforced per endpoint — a token only reaches what its user/scopes allow.
Conventions
| Convention | Detail |
|---|---|
| Money | Integer minor units (halalas): amount_minor: 15000 = 150.00 SAR |
| Dates | ISO 8601 strings (2026-08-04T10:30:00+03:00); gym timezone is Asia/Riyadh |
| IDs | ULIDs (26-char strings) |
| Errors | Standard Laravel JSON: 422 validation (errors map), 401 unauthenticated, 403 forbidden, 404 not found |
| Pagination | page query param; responses carry total / last_page |
Pushing vs pulling
- Pull: call the REST API on your schedule.
- Push: subscribe to webhooks — Memvera POSTs signed events (membership sold, booking cancelled, payment settled…) to your endpoint within a minute of them happening. For ERP/communication-system integrations, webhooks are usually the better starting point.