Skip to main content
Credit endpoints power non-cash reward programmes — read what partners and referees have earned, and confirm delivery.

List credit grants

GET /api/v1/credits — credit grants and per-kind balances. Scope: any valid key.
partner_id
string
Filter by partner. Provide this or external_user_id.
external_user_id
string
Filter by your own user id. Provide this or partner_id.
status
string
default:"all"
earned, delivered, or all.
limit
integer
default:"100"
Maximum grants (max 500).
grants
array
Each grant: id, program_id, partner_id, commission_id, credit_kind, amount, status, external_user_id, referee_external_user_id, earned_at, delivered_at, created_at.
balance
object
Per credit-kind totals: { "<credit_kind>": { "earned": N, "delivered": N } }.

Mark a grant delivered

POST /api/v1/credits/{id}/mark-delivered — flip a grant from earned to delivered after you’ve applied the credit in your product. Scope: secret key (lk_).
id
integer
required
The grant id.
Returns { "ok": true }, or { "ok": true, "already": true } if the grant was already delivered. Firing this also emits a credit.delivered webhook.
If you use a fulfilment connector, delivery is handled for you — you only need this endpoint when applying credit yourself (e.g. via the Webhook driver or a custom flow).