Authorization header.
curl, requests, axios, and most HTTP libraries handle the base64
encoding for you.
Where credentials come from
Your klikit integration contact issues two values during onboarding:partner_api_key— the public half. Safe to log in your own systems.partner_api_secret— the secret half. Treat it like a password. Never commit it to git; rotate it via support if you suspect it leaked.
Scopes
Each credential is granted a subset of scopes. The endpoint that you’re calling must be covered by one of them, or the API returns403.
| Scope | Grants |
|---|---|
brands:read | GET /brands, GET /branches |
menus:read | GET /menus (both modes) |
menus:oos | PATCH /items/{id}/availability (single + bulk) |
orders:read | GET /orders, GET /orders/{id} |
visibility:write | Branch / brand visibility toggles |
webhooks:read | Read your registered webhook URLs (operator-driven today) |
Worked example
Rotating a secret
The operator can re-issue your secret at any time. The old secret keeps working for 15 minutes after rotation so you can roll the new value through your config without dropping requests; after that window it returns401. Schedule rotations during a low-traffic period and update both halves
of your deployment before the window expires.