List accounts
GET /v1/accounts
Use this operation for list accounts. Follow the accounts and identity guide for the complete workflow.
Accounts and identity guide · All endpoints · SDK: listAccounts
Authentication
Server-to-server HMAC. Your key selects the partner; your backend must authorize the end user.
CRISP enables access to the features agreed for your integration. Contact CRISP if an enabled feature returns an access error.
Idempotency-Key: Not required by this operation. Signing and authentication →
Request fields
Required means the field must be present. Nullable means an explicit JSON null is allowed; it does not mean optional.
Path parameters
None.
Query parameters
| Field | Type / presence | Description and constraints |
|---|---|---|
limit | integerOptional Non-null | Maximum number of records requested in one page. Default: 50 minimum: 1 maximum: 200 |
offset | integerOptional Non-null | Number of records to skip for offset pagination. minimum: 0 |
status | stringOptional Non-null | identity_pending is a legacy read state, not a supported new onboarding flow. Allowed: "provisioning", "wallet_pending", "polymarket_pending", "identity_pending", "ready", "failed", "revoked" |
Header parameters
No operation-specific headers. The HMAC headers above still apply.
JSON body
No request body.
Request example
Illustrative identifiers only: replace them with resources from your integration. Keep credentials on your backend. HTTP placeholders must be signed; the SDK signs automatically. Financial intent keys must be persisted and unique per new action.
GET /v1/accounts?limit=50
Host: partner-api.crisp.trade
X-Crisp-Partner-Key: <server-key-id>
X-Crisp-Timestamp: <fresh-ISO-8601-UTC-timestamp>
X-Crisp-Nonce: <fresh-unique-nonce>
X-Crisp-Signature: <computed-base64-HMAC>Response fields
HTTP responses use the envelope below. SDK calls expose its payload as result.data, with HTTP status and request metadata on the SDK wrapper.
200 · Success
Data payload
| Field | Type / presence | Description and constraints | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
accounts | array<object>Required Non-null | Expand the structure below. | ||||||||||||||||||||||||
accounts: expand item fields
Additional fields are not allowed in this object. | ||||||||||||||||||||||||||
total | integerRequired Non-null | minimum: 0 | ||||||||||||||||||||||||
limit | integerRequired Non-null | Maximum number of records requested in one page. Default: 50 minimum: 1 maximum: 200 | ||||||||||||||||||||||||
offset | integerRequired Non-null | Number of records to skip for offset pagination. minimum: 0 | ||||||||||||||||||||||||
Additional fields are not allowed in this object.
Full HTTP envelope
| Field | Type / presence | Description and constraints | ||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
data | objectRequired Non-null | Expand the structure below. | ||||||||||||||||||||||||||||||||||||||||||
data: expand fields
Additional fields are not allowed in this object. | ||||||||||||||||||||||||||||||||||||||||||||
requestId | stringRequired Non-null | Request correlation ID for debugging and support. | ||||||||||||||||||||||||||||||||||||||||||
Additional fields are not allowed in this object.
Response example
Schema illustration, not live account data. Null means unavailable or not applicable, never an invented zero. Empty arrays do not imply the endpoint always returns no results.
200 response JSON
{
"data": {
"accounts": [],
"total": 0,
"limit": 50,
"offset": 0
},
"requestId": "example-request-id"
}Errors and recovery
| Status | Meaning |
|---|---|
400 | Inspect error.code and retain the original financial intent. |
401 | Inspect error.code and retain the original financial intent. |
403 | Inspect error.code and retain the original financial intent. |
404 | Not visible for this account. A recovery lookup miss is not proof that an in-flight submission failed. |
409 | Inspect error.code and retain the original financial intent. |
429 | Inspect error.code and retain the original financial intent. |
500 | Inspect error.code and retain the original financial intent. |
502 | Inspect error.code and retain the original financial intent. |
503 | Inspect error.code and retain the original financial intent. |
Inspect the error code and outcomeUnknown, not just the HTTP status. Preserve the original intent after financial uncertainty. Read-only retries should honor Retry-After. Recovery workflow →
Error response fields
| Field | Type / presence | Description and constraints | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
error | objectRequired Non-null | Expand the structure below. | ||||||||||||
error: expand fields
Additional fields are not allowed in this object. | ||||||||||||||
Additional fields are not allowed in this object.