List Approvals
Retrieves a paginated list of approval requests. You can filter approvals by status, initiator, or approver.
- HTTP request
- GET/v2/ppolicy-approvals
- Authentication
-
Authentication Type Supported Organization User (CustomerEmployee) Yes Delegated User (EndUser) No Service Account Yes - Required permissions
- Policies:Approvals:Read (always required)
- Authorization requirements
-
Header Type Required Description Authorizationstring Yes Bearer token used to authenticate the request. See Authentication flows for instructions on generating this token. - Query parameters
-
Parameter Type Default Description limit string None Maximum number of items to return. paginationToken string None Opaque token used to retrieve the next page. Minimum length is 1. status enum string None Filter by approval status. Allowed values: Pending,Approved,Denied,Expired.initiatorId string None approverId string None - Request body
-
curl --request GET \ --url https://api.digitalassets.ibm.com/v2/policy-approvals \ --header 'Authorization: Bearer <token>' - Response
- 200: Success
Example response:
{ "items": [ { "id": "<string>", "initiatorId": "<string>", "activity": { "kind": "Wallets:Sign", "transferRequest": { "id": "xfr-20g4k-nsdpo-mg6arrifgvid4orn", "walletId": "wa-5pfuu-9euek-h0odgb6snva8ph3k", "network": "Algorand", "requester": { "userId": "us-6b58p-r53sr-rlrd3l5cj3uc4ome", "tokenId": "to-202a0-cdo33-o65mbt6q758lvvnt" }, "requestBody": { "kind": "Native", "to": "<string>", "amount": "<string>", "memo": "<string>", "priority": "Slow", "createDestinationAccount": true, "offer": true, "expiresAt": "2023-11-07T05:31:56Z", "externalId": "<string>", "travelRule": { "kind": "Notabene", "originator": {}, "beneficiary": {}, "beneficiaryVASPdid": "<string>", "beneficiaryProof": {} }, "feeSponsorId": "fs-5vqdl-gliqk-b4rfukqauov1sp7j" }, "metadata": { "asset": { "symbol": "<string>", "decimals": 123, "verified": true, "quotes": { "EUR": 123, "USD": 123 } } }, "status": "Pending", "dateRequested": "2023-04-14T20:41:28.715Z", "reason": "<string>", "txHash": "<string>", "fee": "<string>", "datePolicyResolved": "2023-04-14T20:41:28.715Z", "dateBroadcasted": "2023-04-14T20:41:28.715Z", "dateConfirmed": "2023-04-14T20:41:28.715Z", "approvalId": "ap-2a9in-tt2a1-983lho480p35ejd0", "externalId": "<string>", "feeSponsorId": "fs-5vqdl-gliqk-b4rfukqauov1sp7j" }, "transactionRequest": { "id": "tx-583hu-sp2p7-slvb9nqpa3hd8bus", "walletId": "wa-5pfuu-9euek-h0odgb6snva8ph3k", "network": "Algorand", "requester": { "userId": "us-6b58p-r53sr-rlrd3l5cj3uc4ome", "tokenId": "to-202a0-cdo33-o65mbt6q758lvvnt" }, "requestBody": { "kind": "Transaction", "transaction": "<string>", "externalId": "<string>" }, "status": "Pending", "dateRequested": "2023-04-14T20:41:28.715Z", "reason": "<string>", "txHash": "<string>", "fee": "<string>", "approvalId": "ap-2a9in-tt2a1-983lho480p35ejd0", "datePolicyResolved": "2023-04-14T20:41:28.715Z", "dateBroadcasted": "2023-04-14T20:41:28.715Z", "dateConfirmed": "2023-04-14T20:41:28.715Z", "externalId": "<string>" }, "signatureRequest": { "id": "sig-4sfvl-f4iha-umighfi3hk4t54dr", "keyId": "key-01snl-t56gb-j8tsok0vn802p80i", "requester": { "userId": "us-6b58p-r53sr-rlrd3l5cj3uc4ome", "tokenId": "to-202a0-cdo33-o65mbt6q758lvvnt" }, "requestBody": { "kind": "Hash", "hash": "<string>", "taprootMerkleRoot": "<string>", "network": "Algorand", "blockchainKind": "Algorand", "externalId": "<string>" }, "status": "Pending", "dateRequested": "2023-04-14T20:41:28.715Z", "reason": "<string>", "signature": { "r": "<string>", "s": "<string>", "recid": 123, "encoded": "<string>" }, "signatures": [ { "r": "<string>", "s": "<string>", "recid": 123, "encoded": "<string>" } ], "signedData": "<string>", "network": "Algorand", "txHash": "<string>", "fee": "<string>", "approvalId": "ap-2a9in-tt2a1-983lho480p35ejd0", "datePolicyResolved": "2023-04-14T20:41:28.715Z", "dateSigned": "2023-04-14T20:41:28.715Z", "dateConfirmed": "2023-04-14T20:41:28.715Z", "externalId": "<string>" }, "swapRequest": { "id": "swap-6a3ku-bn8d7-8u5rs1oukojms7k8", "quoteId": "swapQuote-3hgv4-q8tbf-8v2ajmrbmg6m4i9t", "reference": null, "walletId": "wa-3l3cj-l8mq7-8q78f9nopq7f1qjv", "targetWalletId": "wa-3l3cj-l8mq7-8q78f9nopq7f1qjv", "status": "PendingPolicyApproval", "provider": "UniswapClassic", "quotedSourceAsset": { "kind": "Native", "amount": "10000000000", "metadata": { "network": "EthereumSepolia", "name": "Ethereum", "symbol": "SepoliaETH", "decimals": 18, "tid": "native:eth" } }, "quotedTargetAsset": { "kind": "Erc20", "contract": "0xda0be7efd234295395d4204d0df4358339b57b27", "amount": "6467571553831928182", "metadata": { "network": "EthereumSepolia", "name": "Test", "symbol": "Test", "decimals": 18, "tid": "erc20:0xda0be7efd234295395d4204d0df4358339b57b27" } }, "slippageBps": 100, "dateCreated": "2025-09-11T10:57:55.758Z", "requestBody": { "quoteId": "swapQuote-3hgv4-q8tbf-8v2ajmrbmg6m4i9t", "walletId": "wa-3l3cj-l8mq7-8q78f9nopq7f1qjv", "targetWalletId": "wa-3l3cj-l8mq7-8q78f9nopq7f1qjv", "provider": "UniswapClassic", "slippageBps": 100, "sourceAsset": { "kind": "Native", "amount": "10000000000" }, "targetAsset": { "kind": "Erc20", "contract": "0xda0be7efd234295395d4204d0df4358339b57b27", "amount": "653003161" } }, "requester": { "userId": "us-48r5q-eshfg-9pmr2lo6bmpr4i4i", "tokenId": "to-4etah-smoal-9n3rmhul4dpaueg5" } } }, "status": "Pending", "dateUpdated": "<string>", "policyEvaluations": [ { "policyId": "<string>", "triggered": true, "reason": "<string>", "context": "<unknown>" } ], "decisions": [ { "userId": "<string>", "date": "<string>", "reason": "<string>", "value": "Approved" } ], "expirationDate": "<string>", "dateCreated": "<string>", "dateResolved": "<string>" } ], "nextPageToken": "<string>" }