Skip to content

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/api

Authentication

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-Brand selects 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

ConventionDetail
MoneyInteger minor units (halalas): amount_minor: 15000 = 150.00 SAR
DatesISO 8601 strings (2026-08-04T10:30:00+03:00); gym timezone is Asia/Riyadh
IDsULIDs (26-char strings)
ErrorsStandard Laravel JSON: 422 validation (errors map), 401 unauthenticated, 403 forbidden, 404 not found
Paginationpage 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.