Public API key
Prefixzen_pub_. It reads the data your studio already publishes: the
schedule, workshops, lecturers, and locations.
- Safe to ship in client-side code
- CORS is open, so you can call it from any origin
- Exposes no personal data
Secret API key
Prefixzen_live_. It reads and writes client data.
- Backend only. Never call it from a browser or a mobile app
- Exposes personal data, including names, emails, and balances
- Can grant credits and entry passes, which changes what clients owe and hold
Getting your keys
In the Zenamu admin, open Settings → General info → API keys, then select Generate API keys. The secret key is displayed once, at generation time. Zenamu stores only a hash of it, so it cannot be shown again — if you lose it, regenerate the pair.Self-service generation requires the Ultimate plan. Studios on a trial get
their keys from Zenamu support. See Plans and access.
Rotating keys
Regenerating replaces both keys at once and the previous pair stops working immediately. Every integration using the old keys breaks until you swap in the new ones, so plan the rotation rather than doing it live.Authentication errors
The
400 and 401 messages retain legacy wording. Your credential is still an
API key.
Authentication runs before parameter validation. A request that both omits its
key and passes a bad dateFrom returns the authentication error.
CORS
The four public endpoints answer cross-origin requests from any origin, so a browser can call them directly with the public key. The private endpoints —/v1/clients, /v1/pass-groups, and the credit and
pass endpoints — are backend-only. All of them block CORS outright, so there is
no origin a browser can call them from. Do not plan on browser access to any of
them: the secret key must never reach a browser in the first place.
