- take comma-separated values on every filter for multi-select,
- paginate with
page(default 1) andlimit, - accept a free-text
keywordthat searches across fields, - accept
fromDate/toDate(ISO 8601), - and can export instead of returning JSON: pass
resultType=fileand you get a presigned S3 CSV URL (valid 1 hour) in place of the data array (filePrefixcustomises the filename).
{ "success": true, "result": { "total": …, "data": […] } }.
Each endpoint below links to its API Reference page, where you can inspect the full
schema and send a live request with the Try it playground.
The endpoints
| Endpoint | Required claim | Notable extras |
|---|---|---|
GET /applications/search | transactions.view | isCompany, workflowStage (+workflowStageExclude), clientReference, isRisk (risk-report format). programId required. Admin CSV exports include onboarding columns (Current Step, Required Actions) and Risk Compliance Action / Risk Compliance Reason when a compliance decision exists. Current Step may be RISK_COMPLIANCE_REVIEW_RFI when compliance has requested information from the program. |
GET /accounts/search | transactions.view | id, customerId, status, provider, currency, allPrograms. CSV export enriches with onboarding fees. |
GET /transactions/search | transactions.view | accountId (provider account IDs accepted), paymentId, direction, isFee, merchant filters (merchantId/Name/Country), cardId. Merges prepaid-master-account and crypto transactions where applicable. |
GET /cards/search | transactions.view | id, customerId, status, provider, currency. |
GET /cards/transactions/search | transactions.view | Card authorisation (webhook) records: transactionId, status, direction, isFee. |
GET /payments/search | payments.view | type, subType, excludedProviders. Defaults to resultType=file — pass resultType=json for inline results. |
GET /charges/search | transactions.view | Fee charges: accountType, status, currency. |
GET /audit-trail/search | audit.trail.view | Audit-trail records for compliance review. |
Program scoping comes from the operator’s claims. Multi-program operators pass
allPrograms=true (bounded to their entitled programs) or an explicit programId.Re-trigger a failed charge
POST /charges/trigger-charge
(claim triage.edit) with { "chargeId": … } unlocks a stuck charge record so the
charging pipeline retries it.