The Omra API
A REST API for club operations, with an OpenAPI 3.1 document and an interactive reference.
One REST surface over the same member record the app runs on: membership and households, billing, the tee sheet, regattas, camps, banquets, point of sale and feedback. Read a club’s data, or write back to it, without going through the staff app.
Basehttps://api.clubomra.com/api/v1
Every endpoint hangs off this.
Docshttps://api.clubomra.com/api-reference
Interactive reference, generated from the same router that serves the API.
Spechttps://api.clubomra.com/api-reference/spec.json
OpenAPI 3.1 document. Point a client generator at this.
Send an API key in the api-key request header. Keys are issued per club from Settings → Developer in the staff app, and each key is scoped to the club that issued it.
curl https://api.clubomra.com/api/v1/members?club_id=YOUR_CLUB_ID \ -H "api-key: YOUR_API_KEY"
Successful responses use the envelope { request_id, code, status, data }. List endpoints return has_more for pagination, and mutations accept an idempotency-key header so a retried write does not double-apply.
GET/trust/subprocessors
The subprocessor register as JSON — who processes club data, for what, and where.
GET/trust/ai-systems
Where omra uses AI, what each system may decide, and the human oversight on it.
Both are code-defined, identical for every caller, and not specific to a club. They back the trust page.
Write to hello@clubomra.com for a key problem, a missing endpoint, or a field the API does not expose yet.