List Wallet Requests
POST https://trade-uk.sandbox.zodiamarkets.com/api/3/ssi/wallets/requests
The wallet requests you have raised that are still awaiting Zodia Markets Operations, or that Operations declined, for one account group and one kind of participant.
What to send
Section titled “What to send”accountGroupUuid and kind are required. kind is ORIGINATOR for your own onboarded entity, BENEFICIARY or SENDER; to see every request, call once for each kind. status is an optional filter: PENDING or REJECTED, or omit it for both. A missing or unrecognised value returns 403 Invalid signed params.
Reading a row
Section titled “Reading a row”status is PENDING_SCREENING while the request awaits review, shown in the client portal as Pending screening, or REJECTED once declined. The filter value for the first is PENDING, not PENDING_SCREENING. No reason for a decline is returned; contact your relationship manager.
Approved requests are not listed. Once approved, the wallet appears under its participant on Get Account Details List, Get Beneficiary List or Get Sender List. Use it only when that endpoint reports enabled: true and whitelisted: true.
id matches the approvalRequestId returned by Submit a Wallet. For a new wallet operationType is CREATE, entityUuid is null, and the details you submitted are in requestedChanges. requestedChanges can arrive as a JSON-encoded string rather than an object: if it is a string, parse it before reading fields.
Requests raised by Zodia Markets Operations are not included. There is no pagination.
This is a POST because the nonce or tonce travels in the signed body. It changes nothing.
Domain: Payment participants
Request
Section titled “Request”POST https://trade-uk.sandbox.zodiamarkets.com/api/3/ssi/wallets/requestsHeaders
Section titled “Headers”| Header | Required | Description |
|---|---|---|
Rest-Key |
yes | API key for authentication |
Rest-Sign |
yes | Calculated API Signature |
| Field | Type | Required | Description |
|---|---|---|---|
tonce |
integer (int64) | yes | The current Unix time in microseconds. Accepted only within two minutes of server time. Send either tonce or nonce. |
nonce |
integer (int64) | Alternative to tonce, and takes precedence when both are sent. Must be a whole number and strictly increasing for a given API key: a reused or lower value is rejected. A request carrying neither nonce nor tonce is rejected with 401. |
|
accountGroupUuid |
string | yes | The account group to list for. Required. You must hold ROLE_OPERATIONS on it; otherwise the call returns 403, not an empty list. |
kind |
string (enum) | yes | Required. Which participants’ requests to return: ORIGINATOR your own onboarded entity, BENEFICIARY your beneficiaries, SENDER your senders. — One of: ORIGINATOR, BENEFICIARY, SENDER |
status |
string (enum) | Optional filter. PENDING returns requests still awaiting review, which the response reports as PENDING_SCREENING. REJECTED returns declined ones. Omit it for both. — One of: PENDING, REJECTED |
Responses
Section titled “Responses”200 OK
Section titled “200 OK”The matching requests, newest first. No pagination.
| Field | Type | Required | Description |
|---|---|---|---|
[].id |
integer (int64) | Identifier of the review request. Matches approvalRequestId from the submit response. |
|
[].status |
string (enum) | PENDING_SCREENING: awaiting review by Zodia Markets Operations; shown in the client portal as Pending screening. REJECTED: declined by Operations. No reason is returned. Approved requests are not listed. — One of: PENDING_SCREENING, REJECTED |
|
[].operationType |
string | What was requested. CREATE for a submission made through the submit endpoint. Other values describe changes requested in the client portal. |
|
[].entityType |
string | The kind of entry the request concerns. | |
[].entityUuid |
string | The existing wallet the request changes. null for a CREATE, since nothing exists yet. |
|
[].requestType |
string | The channel the request was raised through. | |
[].requestedChanges |
The details as submitted. May arrive as a JSON-encoded string rather than an object: if it is a string, parse it before reading fields. | ||
[].createdAt |
string | When the request was raised. | |
[].address |
string | Address of the existing wallet a change request targets. null for a CREATE, whose address is in requestedChanges. |
|
[].asset |
string | Asset of the existing wallet a change request targets. null for a CREATE. |
|
[].blockchain |
string | Blockchain of the existing wallet a change request targets. null for a CREATE. |
400 Bad Request
Section titled “400 Bad Request”The list could not be produced. For example, the participant record for your client could not be found, in which case the message is Originator record not found — please contact support.
| Field | Type | Required | Description |
|---|---|---|---|
success |
boolean | ||
message |
string |
401 Unauthorized
Section titled “401 Unauthorized”Authentication failed: unknown key, bad signature, a missing, malformed, reused or decreasing nonce or out-of-window tonce, a body that is not parseable JSON, or a throttled caller. Rate limiting surfaces here as 401, not 429.
| Field | Type | Required | Description |
|---|---|---|---|
success |
boolean | ||
message |
string |
403 Forbidden
Section titled “403 Forbidden”Body missing or failed field validation (Invalid signed params), the API key lacks the Move Funds permission (MOVE FUNDS permission required), or you do not hold ROLE_OPERATIONS on accountGroupUuid (You do not have permission to perform this action). The message does not name the field or the permission at fault. Required: accountGroupUuid and kind; kind must be ORIGINATOR, BENEFICIARY or SENDER, and status, when sent, PENDING or REJECTED.
| Field | Type | Required | Description |
|---|---|---|---|
success |
boolean | ||
message |
string |
500 Internal Server Error
Section titled “500 Internal Server Error”Unexpected error. The outcome is undefined.
| Field | Type | Required | Description |
|---|---|---|---|
success |
boolean | ||
message |
string |
The service that holds bank accounts and wallets could not be reached or returned an unusable answer. Retry later.
| Field | Type | Required | Description |
|---|---|---|---|
success |
boolean | ||
message |
string |
