curl --request GET \
--url https://api.dfns.io/v2/policy-approvals/{approvalId} \
--header 'Authorization: Bearer <token>'{
"id": "<string>",
"initiatorId": "<string>",
"activity": {
"kind": "Wallets:Sign",
"transferRequest": {
"id": "<string>",
"walletId": "<string>",
"network": "Algorand",
"requester": {
"userId": "<string>",
"tokenId": "<string>"
},
"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": "<string>"
},
"metadata": {
"asset": {
"symbol": "<string>",
"decimals": 123,
"verified": true,
"quotes": {
"EUR": 123,
"USD": 123
}
}
},
"status": "Pending",
"dateRequested": "<string>",
"reason": "<string>",
"txHash": "<string>",
"fee": "<string>",
"datePolicyResolved": "<string>",
"dateBroadcasted": "<string>",
"dateConfirmed": "<string>",
"approvalId": "<string>",
"externalId": "<string>",
"feeSponsorId": "<string>"
},
"transactionRequest": {
"id": "<string>",
"walletId": "<string>",
"network": "Algorand",
"requester": {
"userId": "<string>",
"tokenId": "<string>"
},
"requestBody": {
"kind": "Transaction",
"transaction": "<string>",
"externalId": "<string>"
},
"status": "Pending",
"dateRequested": "<string>",
"reason": "<string>",
"txHash": "<string>",
"fee": "<string>",
"approvalId": "<string>",
"datePolicyResolved": "<string>",
"dateBroadcasted": "<string>",
"dateConfirmed": "<string>",
"externalId": "<string>"
},
"signatureRequest": {
"id": "<string>",
"keyId": "<string>",
"requester": {
"userId": "<string>",
"tokenId": "<string>"
},
"requestBody": {
"kind": "Hash",
"hash": "<string>",
"taprootMerkleRoot": "<string>",
"network": "Algorand",
"blockchainKind": "Algorand",
"externalId": "<string>"
},
"status": "Pending",
"dateRequested": "<string>",
"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": "<string>",
"datePolicyResolved": "<string>",
"dateSigned": "<string>",
"dateConfirmed": "<string>",
"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>"
}
],
"decisions": [
{
"userId": "<string>",
"date": "<string>",
"reason": "<string>",
"value": "Approved"
}
],
"expirationDate": "<string>",
"dateCreated": "<string>",
"dateResolved": "<string>"
}Retrieve information about a specific approval request.
curl --request GET \
--url https://api.dfns.io/v2/policy-approvals/{approvalId} \
--header 'Authorization: Bearer <token>'{
"id": "<string>",
"initiatorId": "<string>",
"activity": {
"kind": "Wallets:Sign",
"transferRequest": {
"id": "<string>",
"walletId": "<string>",
"network": "Algorand",
"requester": {
"userId": "<string>",
"tokenId": "<string>"
},
"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": "<string>"
},
"metadata": {
"asset": {
"symbol": "<string>",
"decimals": 123,
"verified": true,
"quotes": {
"EUR": 123,
"USD": 123
}
}
},
"status": "Pending",
"dateRequested": "<string>",
"reason": "<string>",
"txHash": "<string>",
"fee": "<string>",
"datePolicyResolved": "<string>",
"dateBroadcasted": "<string>",
"dateConfirmed": "<string>",
"approvalId": "<string>",
"externalId": "<string>",
"feeSponsorId": "<string>"
},
"transactionRequest": {
"id": "<string>",
"walletId": "<string>",
"network": "Algorand",
"requester": {
"userId": "<string>",
"tokenId": "<string>"
},
"requestBody": {
"kind": "Transaction",
"transaction": "<string>",
"externalId": "<string>"
},
"status": "Pending",
"dateRequested": "<string>",
"reason": "<string>",
"txHash": "<string>",
"fee": "<string>",
"approvalId": "<string>",
"datePolicyResolved": "<string>",
"dateBroadcasted": "<string>",
"dateConfirmed": "<string>",
"externalId": "<string>"
},
"signatureRequest": {
"id": "<string>",
"keyId": "<string>",
"requester": {
"userId": "<string>",
"tokenId": "<string>"
},
"requestBody": {
"kind": "Hash",
"hash": "<string>",
"taprootMerkleRoot": "<string>",
"network": "Algorand",
"blockchainKind": "Algorand",
"externalId": "<string>"
},
"status": "Pending",
"dateRequested": "<string>",
"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": "<string>",
"datePolicyResolved": "<string>",
"dateSigned": "<string>",
"dateConfirmed": "<string>",
"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>"
}
],
"decisions": [
{
"userId": "<string>",
"date": "<string>",
"reason": "<string>",
"value": "Approved"
}
],
"expirationDate": "<string>",
"dateCreated": "<string>",
"dateResolved": "<string>"
}CustomerEmployee)EndUser)Policies:Approvals:Read: Always required.Bearer Token: Used to authenticate API requests. More details how to generate the token: Authentication flows
Success
A "`Wallets:Sign`" activity represents any activity which involves signing with a wallet. Currently, in our API, these can be:Show child attributes
Wallets:Sign Show child attributes
Algorand, AlgorandTestnet, Aptos, AptosTestnet, ArbitrumOne, ArbitrumSepolia, AvalancheC, AvalancheCFuji, BabylonGenesis, BabylonTestnet5, Base, BaseSepolia, Berachain, BerachainBepolia, Bitcoin, BitcoinSignet, BitcoinTestnet3, BitcoinCash, Bob, BobSepolia, Bsc, BscTestnet, Canton, CantonTestnet, Cardano, CardanoPreprod, Celo, CeloAlfajores, Codex, CodexSepolia, CosmosHub4, CosmosIcsTestnet, Dogecoin, Ethereum, EthereumGoerli, EthereumSepolia, EthereumHolesky, EthereumHoodi, FantomOpera, FantomTestnet, FlareC, FlareCCoston2, FlowEvm, FlowEvmTestnet, Hedera, HederaTestnet, Ink, InkSepolia, InternetComputer, Ion, IonTestnet, Iota, IotaTestnet, Kaspa, Kusama, KusamaAssetHub, Litecoin, Near, NearTestnet, Optimism, OptimismSepolia, Origyn, Plasma, PlasmaTestnet, Plume, PlumeSepolia, Paseo, PaseoAssetHub, Polkadot, PolkadotAssetHub, Polygon, PolygonAmoy, Polymesh, PolymeshTestnet, Race, RaceSepolia, SeiAtlantic2, SeiPacific1, Solana, SolanaDevnet, Starknet, StarknetSepolia, Stellar, StellarTestnet, Sui, SuiTestnet, Tsc, TscTestnet1, Tezos, TezosGhostnet, Ton, TonTestnet, Tron, TronNile, Westend, WestendAssetHub, XrpLedger, XrpLedgerTestnet Transfer the native token of the network. All networks support the native token type.
Show child attributes
Native The destination address.
The amount of native tokens to transfer in minimum denomination.
The memo or destination tag. Stellar, TON and XrpLedger support memo. Not valid for other networks.
The priority that determines the fees paid for the transfer. All EVM compatible networks and Bitcoin support priority. Not supported for other networks. It uses the estimate fees API to calculate the transfer fees. When not specified, defaults to Standard priority.
Slow, Standard, Fast Whether to create the destination account on chains that require account creation (e.g., Stellar). Only valid for chains that require the receiver account to exist before transfer.
Optional field for Canton, if true it will create a transfer offer.
Optional field for Canton, especially useful in the context of offers
A travel rule payload to associate with the transfer. (read more here)
Show child attributes
Notabene Show child attributes
Show child attributes
Pending, Executing, Broadcasted, Confirmed, Failed, Rejected Show child attributes
Algorand, AlgorandTestnet, Aptos, AptosTestnet, ArbitrumOne, ArbitrumSepolia, AvalancheC, AvalancheCFuji, BabylonGenesis, BabylonTestnet5, Base, BaseSepolia, Berachain, BerachainBepolia, Bitcoin, BitcoinSignet, BitcoinTestnet3, BitcoinCash, Bob, BobSepolia, Bsc, BscTestnet, Canton, CantonTestnet, Cardano, CardanoPreprod, Celo, CeloAlfajores, Codex, CodexSepolia, CosmosHub4, CosmosIcsTestnet, Dogecoin, Ethereum, EthereumGoerli, EthereumSepolia, EthereumHolesky, EthereumHoodi, FantomOpera, FantomTestnet, FlareC, FlareCCoston2, FlowEvm, FlowEvmTestnet, Hedera, HederaTestnet, Ink, InkSepolia, InternetComputer, Ion, IonTestnet, Iota, IotaTestnet, Kaspa, Kusama, KusamaAssetHub, Litecoin, Near, NearTestnet, Optimism, OptimismSepolia, Origyn, Plasma, PlasmaTestnet, Plume, PlumeSepolia, Paseo, PaseoAssetHub, Polkadot, PolkadotAssetHub, Polygon, PolygonAmoy, Polymesh, PolymeshTestnet, Race, RaceSepolia, SeiAtlantic2, SeiPacific1, Solana, SolanaDevnet, Starknet, StarknetSepolia, Stellar, StellarTestnet, Sui, SuiTestnet, Tsc, TscTestnet1, Tezos, TezosGhostnet, Ton, TonTestnet, Tron, TronNile, Westend, WestendAssetHub, XrpLedger, XrpLedgerTestnet Signs an unsigned transaction and broadcasts it to chain. For EVM transactions, you may use JSON objects:
| Field | Description | Type - Optional |
|---|---|---|
| type | Ethereum transaction type. 0 for legacy transaction; 2 for EIP-1559 transaction; 4 for EIP-7702 transaction. Default is 2 if undefined. | Integer (optional) |
| to | The destination address or target contract. Leave undefined when the transaction is a contract deployment. | String (optional) |
| value | The amount of native tokens to transfer in minimum denomination. | String (optional) |
| data | ABI encoded function call data in hex format. Can also be the encoded smart contract data when the transaction is a contract deployment. | String (optional) |
| nonce | The transaction number to guarantee idempotency. If omitted, it will be provided automatically. Note the same nonce can be submitted multiple times with a higher maxFeePerGas to "overwrite" existing transactions in the mempool. | Integer or String (optional) |
| gasLimit | The maximum amount of gas that can be spent for executing the transaction. If omitted, it will be calculated automatically. | String (optional) |
| gasPrice | The amount of per unit gas. Only valid for a type 0 legacy transaction. If omitted, it will be calculated automatically. | String (optional) |
| maxFeePerGas | The maximum amount of per unit gas willing to be paid for the transaction. Valid for type 2 and type 4 transactions. If omitted, it will be calculated automatically. | String (optional) |
| maxPriorityFeePerGas | The maximum amount of per unit gas to be included as a tip to the validator. Valid for type 2 and type 4 transactions. If omitted, it will be calculated automatically. | String (optional) |
| authorizationList | A list that indicates what code the signer of each authorization desires to execute in the context of their EOA. Only valid for type 4 transaction. | Authorization (optional) |
For Starknet transactions, you may use invocation request objects:
| Field | Description | Type - Optional |
|---|---|---|
| calls | Array of contract calls to execute. Each element contains: | Array (required) |
| ↳ calls[0].contractAddress | The target contract address | String (required) |
| ↳ calls[0].entrypoint | The function name to call | String (required) |
| ↳ calls[0].calldata | Parameters for the function call | Array of Strings (optional) |
| nonce | Transaction nonce. If omitted, will be determined automatically. | String/Number/BigInt (optional) |
| resourceBounds | Gas bounds for L1 and L2. If omitted, will be estimated automatically. | Object (optional) |
| ↳ resourceBounds.l1Gas | L1 gas configuration with maxAmount and maxPricePerUnit | Object (optional) |
| ↳ resourceBounds.l2Gas | L2 gas configuration with maxAmount and maxPricePerUnit | Object (optional) |
| ↳ resourceBounds.l1DataGas | L1 data gas configuration with maxAmount and maxPricePerUnit | Object (optional) |
| tip | Transaction tip. Defaults to 0 if omitted. | String/Number/BigInt (optional) |
{
"kind": "Transaction",
"transaction": {
"to": "0x00fb58432ef9d418bf6688bcf0a226d2fcaa18e2",
"data": "0x40d097c3000000000000000000000000d2f77f85a50cdd650ca562f3a180284e1d5b4934",
"maxFeePerGas": "1626000000000",
"maxPriorityFeePerGas": "1332000000000"
}
}{
"kind": "Transaction",
"transaction": {
"calls": [
{
"contractAddress": "0x049d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7",
"entrypoint": "transfer",
"calldata": ["0x123...", "0x1000000000000000000", "0x0"]
}
],
"nonce": "0x3a",
"resourceBounds": {
"l2Gas": {
"maxAmount": "0x1694a0",
"maxPricePerUnit": "0x10c388d00"
},
"l1Gas": {
"maxAmount": "0x0",
"maxPricePerUnit": "0x2e83a3bfd70a"
},
"l1DataGas": {
"maxAmount": "0x120",
"maxPricePerUnit": "0xc7c6"
}
},
"tip": 0,
}
}Show child attributes
Transaction The unsigned hex encoded transaction. EVM transactions also accept JSON objects.
Pending, Executing, Broadcasted, Confirmed, Failed, Rejected Show child attributes
All cryptographic scheme support hash signing. Different blockchains will apply different hash functions to compute the hash.
Show child attributes
Hash 32-byte hash in hex encoded format.
Required when signing with a Schnorr key. Specify the merkle root for tweaking the signing key, or the empty string "" to tweak with the default merkle root.
Algorand, AlgorandTestnet, Aptos, AptosTestnet, ArbitrumOne, ArbitrumSepolia, AvalancheC, AvalancheCFuji, BabylonGenesis, BabylonTestnet5, Base, BaseSepolia, Berachain, BerachainBepolia, Bitcoin, BitcoinSignet, BitcoinTestnet3, BitcoinCash, Bob, BobSepolia, Bsc, BscTestnet, Canton, CantonTestnet, Cardano, CardanoPreprod, Celo, CeloAlfajores, Codex, CodexSepolia, CosmosHub4, CosmosIcsTestnet, Dogecoin, Ethereum, EthereumGoerli, EthereumSepolia, EthereumHolesky, EthereumHoodi, FantomOpera, FantomTestnet, FlareC, FlareCCoston2, FlowEvm, FlowEvmTestnet, Hedera, HederaTestnet, Ink, InkSepolia, InternetComputer, Ion, IonTestnet, Iota, IotaTestnet, Kaspa, Kusama, KusamaAssetHub, Litecoin, Near, NearTestnet, Optimism, OptimismSepolia, Origyn, Plasma, PlasmaTestnet, Plume, PlumeSepolia, Paseo, PaseoAssetHub, Polkadot, PolkadotAssetHub, Polygon, PolygonAmoy, Polymesh, PolymeshTestnet, Race, RaceSepolia, SeiAtlantic2, SeiPacific1, Solana, SolanaDevnet, Starknet, StarknetSepolia, Stellar, StellarTestnet, Sui, SuiTestnet, Tsc, TscTestnet1, Tezos, TezosGhostnet, Ton, TonTestnet, Tron, TronNile, Westend, WestendAssetHub, XrpLedger, XrpLedgerTestnet Algorand, Aptos, Bitcoin, BitcoinCash, Canton, Cardano, Cosmos, Evm, Hedera, Icp, Iota, Kaspa, Near, Polymesh, Solana, Starknet, Stellar, Substrate, Sui, Tezos, Ton, Tron, Xrpl Pending, Executing, Signed, Confirmed, Failed, Rejected Algorand, AlgorandTestnet, Aptos, AptosTestnet, ArbitrumOne, ArbitrumSepolia, AvalancheC, AvalancheCFuji, BabylonGenesis, BabylonTestnet5, Base, BaseSepolia, Berachain, BerachainBepolia, Bitcoin, BitcoinSignet, BitcoinTestnet3, BitcoinCash, Bob, BobSepolia, Bsc, BscTestnet, Canton, CantonTestnet, Cardano, CardanoPreprod, Celo, CeloAlfajores, Codex, CodexSepolia, CosmosHub4, CosmosIcsTestnet, Dogecoin, Ethereum, EthereumGoerli, EthereumSepolia, EthereumHolesky, EthereumHoodi, FantomOpera, FantomTestnet, FlareC, FlareCCoston2, FlowEvm, FlowEvmTestnet, Hedera, HederaTestnet, Ink, InkSepolia, InternetComputer, Ion, IonTestnet, Iota, IotaTestnet, Kaspa, Kusama, KusamaAssetHub, Litecoin, Near, NearTestnet, Optimism, OptimismSepolia, Origyn, Plasma, PlasmaTestnet, Plume, PlumeSepolia, Paseo, PaseoAssetHub, Polkadot, PolkadotAssetHub, Polygon, PolygonAmoy, Polymesh, PolymeshTestnet, Race, RaceSepolia, SeiAtlantic2, SeiPacific1, Solana, SolanaDevnet, Starknet, StarknetSepolia, Stellar, StellarTestnet, Sui, SuiTestnet, Tsc, TscTestnet1, Tezos, TezosGhostnet, Ton, TonTestnet, Tron, TronNile, Westend, WestendAssetHub, XrpLedger, XrpLedgerTestnet Show child attributes
Swap id.
1 - 64"swap-5ch70-fc3n7-3k2cbo8d7q5lnts4"
Id of the quote this swap is based on.
1 - 64"swapQuote-7n9p0-cth75-6l74n2sj7u73ooeq"
Optional user-defined reference for this Swap.
Id of the Dfns wallet spending the sourceAsset.
1 - 64"wa-5pfuu-9euek-h0odgb6snva8ph3k"
Id of the Dfns wallet receiving the target asset. Currently this value must be the same as the walletId.
1 - 64"wa-5pfuu-9euek-h0odgb6snva8ph3k"
Swap status.
PendingPolicyApproval, InProgress, Completed, Failed, Rejected Swap provider.
UniswapX, UniswapClassic The source asset for this swap transaction.
Show child attributes
Native Show child attributes
Algorand, AlgorandTestnet, Aptos, AptosTestnet, ArbitrumOne, ArbitrumSepolia, AvalancheC, AvalancheCFuji, BabylonGenesis, BabylonTestnet5, Base, BaseSepolia, Berachain, BerachainBepolia, Bitcoin, BitcoinSignet, BitcoinTestnet3, BitcoinCash, Bob, BobSepolia, Bsc, BscTestnet, Canton, CantonTestnet, Cardano, CardanoPreprod, Celo, CeloAlfajores, Codex, CodexSepolia, CosmosHub4, CosmosIcsTestnet, Dogecoin, Ethereum, EthereumGoerli, EthereumSepolia, EthereumHolesky, EthereumHoodi, FantomOpera, FantomTestnet, FlareC, FlareCCoston2, FlowEvm, FlowEvmTestnet, Hedera, HederaTestnet, Ink, InkSepolia, InternetComputer, Ion, IonTestnet, Iota, IotaTestnet, Kaspa, Kusama, KusamaAssetHub, Litecoin, Near, NearTestnet, Optimism, OptimismSepolia, Origyn, Plasma, PlasmaTestnet, Plume, PlumeSepolia, Paseo, PaseoAssetHub, Polkadot, PolkadotAssetHub, Polygon, PolygonAmoy, Polymesh, PolymeshTestnet, Race, RaceSepolia, SeiAtlantic2, SeiPacific1, Solana, SolanaDevnet, Starknet, StarknetSepolia, Stellar, StellarTestnet, Sui, SuiTestnet, Tsc, TscTestnet1, Tezos, TezosGhostnet, Ton, TonTestnet, Tron, TronNile, Westend, WestendAssetHub, XrpLedger, XrpLedgerTestnet The target asset for this swap transaction.
Show child attributes
Native Show child attributes
Algorand, AlgorandTestnet, Aptos, AptosTestnet, ArbitrumOne, ArbitrumSepolia, AvalancheC, AvalancheCFuji, BabylonGenesis, BabylonTestnet5, Base, BaseSepolia, Berachain, BerachainBepolia, Bitcoin, BitcoinSignet, BitcoinTestnet3, BitcoinCash, Bob, BobSepolia, Bsc, BscTestnet, Canton, CantonTestnet, Cardano, CardanoPreprod, Celo, CeloAlfajores, Codex, CodexSepolia, CosmosHub4, CosmosIcsTestnet, Dogecoin, Ethereum, EthereumGoerli, EthereumSepolia, EthereumHolesky, EthereumHoodi, FantomOpera, FantomTestnet, FlareC, FlareCCoston2, FlowEvm, FlowEvmTestnet, Hedera, HederaTestnet, Ink, InkSepolia, InternetComputer, Ion, IonTestnet, Iota, IotaTestnet, Kaspa, Kusama, KusamaAssetHub, Litecoin, Near, NearTestnet, Optimism, OptimismSepolia, Origyn, Plasma, PlasmaTestnet, Plume, PlumeSepolia, Paseo, PaseoAssetHub, Polkadot, PolkadotAssetHub, Polygon, PolygonAmoy, Polymesh, PolymeshTestnet, Race, RaceSepolia, SeiAtlantic2, SeiPacific1, Solana, SolanaDevnet, Starknet, StarknetSepolia, Stellar, StellarTestnet, Sui, SuiTestnet, Tsc, TscTestnet1, Tezos, TezosGhostnet, Ton, TonTestnet, Tron, TronNile, Westend, WestendAssetHub, XrpLedger, XrpLedgerTestnet The slippage tolerance for this trade in basis point (BPS). Slippage tolerance defines the maximum price difference you are willing to accept during a trade from the estimated quote, ensuring you still receive at least a minimum number of tokens if the price shifts. One basis point equals one-hundredth of a percentage point, or 0.01%.
The full request used for initiating this swap.
Show child attributes
Quote to use for this swap.
1 - 64"swapQuote-7n9p0-cth75-6l74n2sj7u73ooeq"
Provided for this swap. Used for attesting that the swap is being created with the same parameters as the quote.
UniswapX, UniswapClassic Id of the Dfns wallet spending the sourceAsset. Used for attesting that the swap is being created with the same parameters as the quote.
1 - 64"wa-5pfuu-9euek-h0odgb6snva8ph3k"
The slippage tolerance for this trade in basis point (BPS). Slippage tolerance defines the maximum price difference you are willing to accept during a trade from the estimated quote, ensuring you still receive at least a minimum number of tokens if the price shifts. One basis point equals one-hundredth of a percentage point, or 0.01%. Used for attesting that the swap is being created with the same parameters as the quote.
The source asset that will be spent on the Swap transaction. Used for attesting that the swap is being created with the same parameters as the quote.
The target asset that will be received with the Swap transaction. Used for attesting that the swap is being created with the same parameters as the quote.
An optional reference for this Swap.
Id of the Dfns wallet receiving the target asset. Currently this value must be the same as the walletId. Used for attesting that the swap is being created with the same parameters as the quote.
1 - 64"wa-5pfuu-9euek-h0odgb6snva8ph3k"
Show child attributes
User (could be a service account) who requested the resource.
1 - 64"us-6b58p-r53sr-rlrd3l5cj3uc4ome"
Service Account token or Personal Access token used when requesting the resource.
1 - 64"to-202a0-cdo33-o65mbt6q758lvvnt"
{
"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"
}
}Pending, Approved, Denied, Expired Was this page helpful?