List withdrawal requests
Lists one customer wallet's withdrawal requests, one page at a time.
GET/
ownerAddress is required. On startup and after reconnecting, pass settled=false to restore every request that still needs fulfillment, classification or cancellation, and page until hasMore is false.
Requires an API key with the earn.read action.
Query parameters
-
ownerAddress·string· required · min length 32 · max length 44 · pattern^[1-9A-HJ-NP-Za-km-z]{32,44}$· example9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWMThe customer's wallet address: an external wallet, so SDP holds no key for it. It signs, owns the shares, and pays the network fee unless the build names a
feePayer. It must decode to a 32-byte public key; a base58 string that matches the pattern but does not decode returns 400. -
limit·integer· min 1 · max 100 · default20Page size, from 1 to 100. Defaults to 20.
-
before·string· min length 1The previous page's
nextCursor. Omit it for the first page. -
status·string· one ofcreating,pending,fulfillable,expiredCancelable,cancelling,closedOrUnknown,fulfilled,cancelled,failed -
settled·string· one oftrue,false
Headers
-
x-project-id·string· min length 1 · exampleprj_exampleRequired for dashboard sessions. API keys use their assigned project.
Responses
-
200One page of withdrawal requests-
data·object· required-
withdrawalRequests·object[]· requiredAny of:
-
mechanism: "solverQueue"
-
withdrawalRequestId·string· required · exampleearn_vault_withdrawal_request_3c905ad2-c92c-4258-9675-1899c41569b9 -
positionId·string· required · exampleearn_position_2f8b6b04-7147-487e-b760-b1caa4fbcb8b -
provider·string· required · exampleveda -
providerReference·string· requiredThe strategy's onchain address.
-
ownerAddress·string· required · example9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWMThe customer's wallet address.
-
requestAddress·string· requiredProvider request account address.
-
status·string· required · one ofcreating,pending,fulfillable,expiredCancelable,cancelling,fulfilled,cancelled,closedOrUnknown,failedThe request's status. Only
fulfilled,cancelledandfailedare final. Keep tracking every other status,closedOrUnknownincluded: SDP resolves it from a finalized close event. -
assetMint·string· required · min length 32 · max length 44 · pattern^[1-9A-HJ-NP-Za-km-z]{32,44}$· example2b1kV6DkPAnxd5ixfnxCpjxmKwqjjaYmCZfHsFu24GXoBase58 Solana mint address.
-
shareMint·string· required · min length 32 · max length 44 · pattern^[1-9A-HJ-NP-Za-km-z]{32,44}$· example2b1kV6DkPAnxd5ixfnxCpjxmKwqjjaYmCZfHsFu24GXoBase58 Solana mint address.
-
shares·string· required · max length 128 · pattern^(?=.*[1-9])\d+(\.\d+)?$· example25Positive decimal string with at least one non-zero digit; never a float.
-
quotedAssets·string· required · max length 128 · pattern^(?=.*[1-9])\d+(\.\d+)?$· example25Expected payout at request creation, in
assetMintunits. Not a settled amount. -
shareDecimals·integer· required · min 0 · max 38 -
assetDecimals·integer· required · min 0 · max 38 -
nonce·string | null· required -
creationTimestamp·string | null· required · pattern^\d+$ -
creationSignature·string | null· requiredThe request-creation transaction. Its confirmation does not prove a payout.
-
cancelSignature·string | null· requiredThe cancellation transaction, once one is submitted.
-
closingSignature·string | null· requiredProvider-authenticated fulfillment or cancellation transaction, when known.
-
assetsPaid·string | null· required · max length 128 · pattern^(?=.*[1-9])\d+(\.\d+)?$· example25The payout SDP observed at fulfillment, in
assetMintunits; null until then. -
failureReason·string | null· required -
fulfilledAt·string | null· required · formatdate-time· example2025-01-01T00:00:00.000ZISO 8601 timestamp.
-
cancelledAt·string | null· required · formatdate-time· example2025-01-01T00:00:00.000ZISO 8601 timestamp.
-
createdAt·string· required · formatdate-time· example2025-01-01T00:00:00.000ZISO 8601 timestamp.
-
updatedAt·string· required · formatdate-time· example2025-01-01T00:00:00.000ZISO 8601 timestamp.
-
replayed·boolean -
mechanism·string· required · alwayssolverQueue -
intermediateMint·any· required -
intermediateAmount·any· required -
discountBps·integer· required · min 0 · max 10000 -
maturityTimestamp·string· required · pattern^\d+$ -
deadlineTimestamp·string· required · pattern^\d+$
-
-
mechanism: "operatorRedemption"
-
withdrawalRequestId·string· required · exampleearn_vault_withdrawal_request_3c905ad2-c92c-4258-9675-1899c41569b9 -
positionId·string· required · exampleearn_position_2f8b6b04-7147-487e-b760-b1caa4fbcb8b -
provider·string· required · exampleveda -
providerReference·string· requiredThe strategy's onchain address.
-
ownerAddress·string· required · example9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWMThe customer's wallet address.
-
requestAddress·string· requiredProvider request account address.
-
status·string· required · one ofcreating,pending,fulfillable,expiredCancelable,cancelling,fulfilled,cancelled,closedOrUnknown,failedThe request's status. Only
fulfilled,cancelledandfailedare final. Keep tracking every other status,closedOrUnknownincluded: SDP resolves it from a finalized close event. -
assetMint·string· required · min length 32 · max length 44 · pattern^[1-9A-HJ-NP-Za-km-z]{32,44}$· example2b1kV6DkPAnxd5ixfnxCpjxmKwqjjaYmCZfHsFu24GXoBase58 Solana mint address.
-
shareMint·string· required · min length 32 · max length 44 · pattern^[1-9A-HJ-NP-Za-km-z]{32,44}$· example2b1kV6DkPAnxd5ixfnxCpjxmKwqjjaYmCZfHsFu24GXoBase58 Solana mint address.
-
shares·string· required · max length 128 · pattern^\d+(\.\d+)?$· example10Position shares the request burns, in share units; "0" when it redeems intermediate the owner already holds.
-
quotedAssets·string· required · max length 128 · pattern^(?=.*[1-9])\d+(\.\d+)?$· example25Expected payout at request creation, in
assetMintunits. Not a settled amount. -
shareDecimals·integer· required · min 0 · max 38 -
assetDecimals·integer· required · min 0 · max 38 -
nonce·string | null· required -
creationTimestamp·string | null· required · pattern^\d+$ -
creationSignature·string | null· requiredThe request-creation transaction. Its confirmation does not prove a payout.
-
cancelSignature·string | null· requiredThe cancellation transaction, once one is submitted.
-
closingSignature·string | null· requiredProvider-authenticated fulfillment or cancellation transaction, when known.
-
assetsPaid·string | null· required · max length 128 · pattern^(?=.*[1-9])\d+(\.\d+)?$· example25The payout SDP observed at fulfillment, in
assetMintunits; null until then. -
failureReason·string | null· required -
fulfilledAt·string | null· required · formatdate-time· example2025-01-01T00:00:00.000ZISO 8601 timestamp.
-
cancelledAt·string | null· required · formatdate-time· example2025-01-01T00:00:00.000ZISO 8601 timestamp.
-
createdAt·string· required · formatdate-time· example2025-01-01T00:00:00.000ZISO 8601 timestamp.
-
updatedAt·string· required · formatdate-time· example2025-01-01T00:00:00.000ZISO 8601 timestamp.
-
replayed·boolean -
mechanism·string· required · alwaysoperatorRedemption -
intermediateMint·string· required · min length 32 · max length 44 · pattern^[1-9A-HJ-NP-Za-km-z]{32,44}$· example2b1kV6DkPAnxd5ixfnxCpjxmKwqjjaYmCZfHsFu24GXoBase58 Solana mint address.
-
intermediateAmount·string· required · max length 128 · pattern^(?=.*[1-9])\d+(\.\d+)?$· example25Positive decimal string with at least one non-zero digit; never a float.
-
discountBps·any· required -
maturityTimestamp·any· required -
deadlineTimestamp·any· required
-
-
-
hasMore·boolean· required -
nextCursor·string | null· required
-
-
meta·object· requiredResponse metadata.
-
requestId·string· required · min length 1 · examplereq_exampleRequest identifier for tracing.
-
timestamp·string· required · formatdate-time· example2025-01-01T00:00:00.000ZISO 8601 timestamp.
-
-
-
400Bad Request-
error·object· requiredStandard error payload.
-
code·string· requiredMachine-readable error code.
-
message·string· requiredHuman-readable error message.
-
details·objectOptional error details for debugging.
*·any
-
-
meta·object-
requestId·string· min length 1 · examplereq_exampleRequest identifier for tracing.
-
-
-
401UnauthorizedSame fields as
400. -
403Forbidden. Requires theearn.readaction: an API key must hold it (a module'smanageorexecutealso covers itsread), and a signed-in member's organization role must include it. Without it the error is INSUFFICIENT_PERMISSIONS anderror.details.actionnames the action. Any other 403 names its own reason.Same fields as
400. -
429Too Many RequestsSame fields as
400. -
500Internal Server ErrorSame fields as
400. -
503Service UnavailableSame fields as
400.