A cycle's bonus pay board
The Bonus pay tab for one cycle: per creator, the bonus each set (pair) earned, what was already sent, what can be paid now and what blocks the rest, plus the creators withheld from payment and why. A ledger-model cycle has no board (isLedger: true, board: null). Creators are paged by payout id.
bearerAuth payouts:readAuthorizationBearer <token>Personal access token. Scopes: account:read, creator:read, creator:earnings, managed:read, coach:read, brand:read, creators:read, videos:read, analytics:read, recruitment:read, engagement:read, support:read, integrations:read, payouts:read, funds:read, billing:read.
Scope: payouts:read
brandId*stringA brand id from GET /me or GET /creator/brands.
1 <= lengthcycleId*stringA payout cycle id from GET /brands/{brandId}/payout-cycles.
1 <= lengthlimit?integerPage size, 1–100. Default 50.
1 <= value <= 10050cursor?stringThe nextCursor from the previous page. Omit for the first page.
1 <= lengthSuccess.
application/json- response
data*array<>nextCursor*|Pass as cursor to get the next page; null on the last page.
isLedger*booleanLedger bonus is settled set by set as it accrues, so there is no board.
board*|nullcurl -X GET 'https://example.com/api/v1/brands/string/payout-cycles/string/bonus-board'{ "data": [ { "creator": { "id": "string", "name": "string", "status": "string", "hasPayoutAccount": true }, "payoutId": "string", "payoutStatus": "string", "bonusEarned": 0, "payable": 0, "bonusPaidPerSet": 0, "bonusOutstanding": 0, "setCount": -9007199254740991, "payableSetCount": -9007199254740991, "paidSetCount": -9007199254740991, "skippedSetCount": -9007199254740991, "paymentInFlight": { "amount": 0, "since": "string", "setIds": [ "string" ] }, "baseSettled": true, "outstandingBase": { "count": -9007199254740991, "amount": 0 }, "statsSnapshotDate": "string", "paidAt": "string", "paidBy": "string", "paidVia": "string", "transferId": "string", "sets": [ { "setId": "string", "views": 0, "basePay": 0, "bonusPay": 0, "baseOwed": 0, "baseStatus": "string", "bonusPaid": 0, "bonusPaidAt": "string", "bonusDue": 0, "bonusSkipped": true, "bonusSkippedAmount": 0, "inFlight": true, "blocker": "string", "tags": [ { "id": "string", "name": "string" } ], "videos": [ { "id": "string", "platform": "string", "views": 0, "url": "string", "postedAt": "string" } ] } ] } ], "nextCursor": "string", "isLedger": true, "board": { "payoutProvider": "string", "ended": true, "endDate": "string", "instantBasePayEnabled": true, "cyclePaid": true, "allSettled": true, "anyProviderTransfer": true, "withheld": { "creators": -9007199254740991, "bonusEarned": 0, "payable": 0, "rows": [ { "creator": { "id": "string", "name": "string", "status": "string" }, "reason": "string", "label": "string", "bonusEarned": 0, "payable": 0 } ] } }}The instant base pay queue GET
Sets (pairs) whose base pay qualified mid-cycle and wait for an admin to review and pay, as on Payouts › Base pay. Pending by default; pass `status` for decided requests. Read-only: nothing here approves or pays. Newest first.
The brand's bounties GET
Every bounty the brand created, newest first, as the Bounties page lists them: reward, type, status, targets, dates and how many of its claim slots are taken. Claims on one bounty are at .../bounties/{bountyId}/claims.