Developers · Orbit API
Build on Orbit.
API-first.
Award points, enroll members, redeem rewards, and read your catalogue from any backend with a single HTTP call. Every endpoint is API-key authenticated, scope-checked, and returns a consistent JSON envelope.
Get your API keysBase URL https://api.orbitloyalty.com/api/v1
Authentication
Every request needs your secret API key as a Bearer token. Keys are issued per store in the panel.
Authorization: Bearer lak_••••Response envelope
Success and error responses share the same shape, with a request id and timestamp in meta.
{ success, data, meta }Rate limits & scopes
Requests are throttled per API key and per store. Each key carries explicit scopes. A missing scope returns 403 forbidden; over-limit returns 429.
Endpoints
All paths are relative to https://api.orbitloyalty.com/api/v1.
Store
GET
/stores/{slug}/Store profile, theme & plan.store:readGET
/stores/{slug}/offers/Currently active promotional offers.store:readMembers
GET
/stores/{slug}/members/Paginated member list.members:readPOST
/stores/{slug}/members/Enroll a member by email.members:writeGET
/stores/{slug}/members/{email}/Member balance & tier.members:readTransactions
GET
/stores/{slug}/members/{email}/transactions/Recent transaction history.transactions:readPOST
/stores/{slug}/members/{email}/transactions/Award points, idempotent via order_id.transactions:writeRewards
GET
/stores/{slug}/rewards/Active rewards catalogue.rewards:readPOST
/stores/{slug}/members/{email}/redeem/Redeem a reward for a member.rewards:writeEarn Codes
POST
/stores/{slug}/earn-codes/redeem/Redeem a single-use earn code.earn-codes:writeCatalogue
GET
/stores/{slug}/catalogue/Menu / product catalogue (?featured=true).catalogue:readAward points: an example
award-points.js
// Award 500 points for an order. Safe to retry (idempotent by order_id) const res = await fetch( `https://api.orbitloyalty.com/api/v1/stores/${slug}/members/${email}/transactions/`, { method: "POST", headers: { Authorization: `Bearer ${API_KEY}`, "Content-Type": "application/json", }, body: JSON.stringify({ points: 500, title: "Purchase #1234", order_id: "ord_1234", }), } ) // → { // "success": true, // "data": { "membership_id": "…", "points_awarded": 500, "new_balance": 2450 }, // "meta": { "request_id": "a1b2c3d4", "timestamp": "…", "version": "v1" } // }
Scopes
store:readmembers:readmembers:writetransactions:readtransactions:writerewards:readrewards:writeearn-codes:writecatalogue:read
Ready to integrate?
Create a store, generate an API key with the scopes you need, and award your first points in minutes.
