@dfns/sdk 0.8.7 → 0.8.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -230,6 +230,22 @@ export type ArchivePolicyResponse = {
230
230
  skipChainalysisFailure: boolean;
231
231
  };
232
232
  };
233
+ } | {
234
+ kind: "GlobalLedgerTransactionPrescreening";
235
+ configuration: {
236
+ /** Risk score threshold (0-100). Policy triggers if address/transaction risk score >= threshold */
237
+ riskScoreThreshold: number;
238
+ fallbackBehaviours: {
239
+ /** skip all wallet requests that cannot be screened (eg. raw signatures) */
240
+ skipUnscreenableTransaction: boolean;
241
+ /** skip transfer requests to a network not supported yet in our GlobalLedger integration */
242
+ skipUnsupportedNetwork: boolean;
243
+ /** skip transfer requests of an asset not supported by our GlobalLedger integration */
244
+ skipUnsupportedAsset: boolean;
245
+ /** skips any errors from GlobalLedger API request */
246
+ skipGlobalLedgerFailure: boolean;
247
+ };
248
+ };
233
249
  } | {
234
250
  kind: "TravelRuleTransactionPrescreening";
235
251
  configuration: {
@@ -331,11 +347,11 @@ export type CreateApprovalDecisionResponse = {
331
347
  walletId: string;
332
348
  /** The blockchain network this transfer is on. */
333
349
  network: "Algorand" | "AlgorandTestnet" | "Aptos" | "AptosTestnet" | "ArbitrumOne" | "ArbitrumGoerli" | "ArbitrumSepolia" | "ArcTestnet" | "AvalancheC" | "AvalancheCFuji" | "Adi" | "AdiTestnet" | "AdiTestnetAb" | "BabylonGenesis" | "BabylonTestnet5" | "Base" | "BaseGoerli" | "BaseSepolia" | "Berachain" | "BerachainBArtio" | "BerachainBepolia" | "Bitcoin" | "BitcoinSignet" | "BitcoinTestnet3" | "BitcoinCash" | "BitcoinCashTestnet" | "Bob" | "BobSepolia" | "Bsc" | "BscTestnet" | "Canton" | "CantonDevnet" | "CantonTestnet" | "Cardano" | "CardanoPreprod" | "Concordium" | "ConcordiumTestnet" | "Celo" | "CeloAlfajores" | "Codex" | "CodexSepolia" | "CosmosHub4" | "CosmosIcsTestnet" | "Dogecoin" | "DogecoinTestnet" | "Ethereum" | "EthereumClassic" | "EthereumClassicMordor" | "EthereumGoerli" | "EthereumSepolia" | "EthereumHolesky" | "EthereumHoodi" | "FantomOpera" | "FantomTestnet" | "FlareC" | "FlareCCoston2" | "FlowEvm" | "FlowEvmTestnet" | "Hedera" | "HederaTestnet" | "Ink" | "InkSepolia" | "InternetComputer" | "Ion" | "IonTestnet" | "Iota" | "IotaTestnet" | "IotaZodianet" | "Kaspa" | "KaspaTestnet11" | "Kusama" | "KusamaAssetHub" | "Litecoin" | "LitecoinTestnet" | "Near" | "NearTestnet" | "Optimism" | "OptimismGoerli" | "OptimismSepolia" | "Origyn" | "Plasma" | "PlasmaTestnet" | "Plume" | "PlumeSepolia" | "Paseo" | "PaseoAssetHub" | "Polkadot" | "PolkadotAssetHub" | "Polygon" | "PolygonAmoy" | "PolygonMumbai" | "Polymesh" | "PolymeshTestnet" | "Race" | "RaceSepolia" | "SeiAtlantic2" | "SeiPacific1" | "Solana" | "SolanaDevnet" | "Sonic" | "SonicTestnet" | "Starknet" | "StarknetSepolia" | "Stellar" | "StellarTestnet" | "Sui" | "SuiTestnet" | "Tezos" | "TezosGhostnet" | "TempoAndantino" | "Tsc" | "TscTestnet1" | "Ton" | "TonTestnet" | "Tron" | "TronNile" | "Westend" | "WestendAssetHub" | "XrpLedger" | "XrpLedgerTestnet";
334
- /** The user (including Service Accounts) who requested this transfer. */
350
+ /** The user who initiated the request. */
335
351
  requester: {
336
- /** The id of the user who requested this transfer. */
352
+ /** User id. */
337
353
  userId: string;
338
- /** The id of the token used to authenticate the user. */
354
+ /** Token id. */
339
355
  tokenId?: string | undefined;
340
356
  };
341
357
  requestBody: {
@@ -344,8 +360,8 @@ export type CreateApprovalDecisionResponse = {
344
360
  to: string;
345
361
  /** The amount of native tokens to transfer in minimum denomination. */
346
362
  amount: string;
347
- /** The memo or destination tag. `Algorand`, `Cosmos`, `Hedera`, `Stellar`, `TON`, `XrpLedger` support `memo`. Not valid for other networks. */
348
- memo?: string | undefined;
363
+ /** The memo or destination tag (supported networks only). */
364
+ memo?: (string | "") | undefined;
349
365
  /** 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](https://docs.dfns.co/api-reference/networks/estimate-fees) API to calculate the transfer fees. When not specified, defaults to `Standard` priority. */
350
366
  priority?: ("Slow" | "Standard" | "Fast") | undefined;
351
367
  /** 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. */
@@ -373,15 +389,13 @@ export type CreateApprovalDecisionResponse = {
373
389
  /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
374
390
  feeSponsorId?: string | undefined;
375
391
  } | {
376
- kind: "Asa";
377
- /** The token asset id. */
378
- assetId: string;
392
+ kind: "Aip21";
393
+ /** The asset metadata address. */
394
+ metadata: string;
379
395
  /** The destination address. */
380
396
  to: string;
381
397
  /** The amount of tokens to transfer in minimum denomination. */
382
398
  amount: string;
383
- /** The memo. */
384
- memo?: string | undefined;
385
399
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
386
400
  externalId?: string | undefined;
387
401
  /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
@@ -401,13 +415,15 @@ export type CreateApprovalDecisionResponse = {
401
415
  /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
402
416
  feeSponsorId?: string | undefined;
403
417
  } | {
404
- kind: "Aip21";
405
- /** The asset metadata address. */
406
- metadata: string;
418
+ kind: "Asa";
419
+ /** The token asset id. */
420
+ assetId: string;
407
421
  /** The destination address. */
408
422
  to: string;
409
423
  /** The amount of tokens to transfer in minimum denomination. */
410
424
  amount: string;
425
+ /** The memo. */
426
+ memo?: (string | "") | undefined;
411
427
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
412
428
  externalId?: string | undefined;
413
429
  /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
@@ -508,6 +524,34 @@ export type CreateApprovalDecisionResponse = {
508
524
  }) | undefined;
509
525
  /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
510
526
  feeSponsorId?: string | undefined;
527
+ } | {
528
+ kind: "Cis7";
529
+ /** The destination address. */
530
+ to: string;
531
+ /** The amount of tokens to transfer in minimum denomination. */
532
+ amount: string;
533
+ /** The Cis7 token identifier. */
534
+ tokenId: string;
535
+ /** The memo or destination tag. */
536
+ memo?: (string | "") | undefined;
537
+ /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
538
+ externalId?: string | undefined;
539
+ /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
540
+ travelRule?: ({
541
+ kind: "Notabene";
542
+ beneficiaryVASPdid?: string | undefined;
543
+ beneficiaryProof?: {
544
+ [x: string]: any;
545
+ } | undefined;
546
+ originator: {
547
+ [x: string]: any;
548
+ };
549
+ beneficiary: {
550
+ [x: string]: any;
551
+ };
552
+ }) | undefined;
553
+ /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
554
+ feeSponsorId?: string | undefined;
511
555
  } | {
512
556
  kind: "Coin";
513
557
  /** The coin identifier. */
@@ -598,7 +642,7 @@ export type CreateApprovalDecisionResponse = {
598
642
  /** The destination address. */
599
643
  to: string;
600
644
  /** The memo. */
601
- memo?: string | undefined;
645
+ memo?: (string | "") | undefined;
602
646
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
603
647
  externalId?: string | undefined;
604
648
  /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
@@ -626,7 +670,7 @@ export type CreateApprovalDecisionResponse = {
626
670
  /** The amount of tokens to transfer in minimum denomination. */
627
671
  amount: string;
628
672
  /** The memo. */
629
- memo?: string | undefined;
673
+ memo?: (string | "") | undefined;
630
674
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
631
675
  externalId?: string | undefined;
632
676
  /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
@@ -646,14 +690,16 @@ export type CreateApprovalDecisionResponse = {
646
690
  /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
647
691
  feeSponsorId?: string | undefined;
648
692
  } | {
649
- kind: "Cis7";
693
+ kind: "Iou";
694
+ /** The IOU currency code. */
695
+ currency: string;
696
+ /** The IOU issuer address. */
697
+ issuer: string;
650
698
  /** The destination address. */
651
699
  to: string;
652
700
  /** The amount of tokens to transfer in minimum denomination. */
653
701
  amount: string;
654
- /** The Cis7 token identifier. */
655
- tokenId: string;
656
- /** The memo or destination tag. */
702
+ /** The memo or destination tag for XRPL transactions. */
657
703
  memo?: string | undefined;
658
704
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
659
705
  externalId?: string | undefined;
@@ -684,7 +730,7 @@ export type CreateApprovalDecisionResponse = {
684
730
  /** The amount of tokens to transfer in minimum denomination. */
685
731
  amount: string;
686
732
  /** The memo or destination tag. */
687
- memo?: string | undefined;
733
+ memo?: (string | "") | undefined;
688
734
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
689
735
  externalId?: string | undefined;
690
736
  /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
@@ -792,7 +838,7 @@ export type CreateApprovalDecisionResponse = {
792
838
  /** The amount of tokens to transfer in minimum denomination. */
793
839
  amount: string;
794
840
  /** The memo or destination tag. */
795
- memo?: string | undefined;
841
+ memo?: (string | "") | undefined;
796
842
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
797
843
  externalId?: string | undefined;
798
844
  /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
@@ -889,6 +935,34 @@ export type CreateApprovalDecisionResponse = {
889
935
  }) | undefined;
890
936
  /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
891
937
  feeSponsorId?: string | undefined;
938
+ } | {
939
+ kind: "Xls33";
940
+ /** The XLS-33 issuance identifier. */
941
+ issuanceId: string;
942
+ /** The destination address. */
943
+ to: string;
944
+ /** The amount of tokens to transfer in minimum denomination. */
945
+ amount: string;
946
+ /** The memo or destination tag for XRPL transactions. */
947
+ memo?: string | undefined;
948
+ /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
949
+ externalId?: string | undefined;
950
+ /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
951
+ travelRule?: ({
952
+ kind: "Notabene";
953
+ beneficiaryVASPdid?: string | undefined;
954
+ beneficiaryProof?: {
955
+ [x: string]: any;
956
+ } | undefined;
957
+ originator: {
958
+ [x: string]: any;
959
+ };
960
+ beneficiary: {
961
+ [x: string]: any;
962
+ };
963
+ }) | undefined;
964
+ /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
965
+ feeSponsorId?: string | undefined;
892
966
  };
893
967
  /** Additional metadata about the transfered asset. */
894
968
  metadata: {
@@ -905,7 +979,7 @@ export type CreateApprovalDecisionResponse = {
905
979
  };
906
980
  };
907
981
  /** Transfer status.
908
-
982
+
909
983
  | Status | Definition |
910
984
  | --- | --- |
911
985
  | `Pending` | The request is pending approval due to a policy applied to the wallet. |
@@ -933,11 +1007,16 @@ export type CreateApprovalDecisionResponse = {
933
1007
  feeSponsorId?: string | undefined;
934
1008
  } | undefined;
935
1009
  transactionRequest?: {
1010
+ /** Transaction id. */
936
1011
  id: string;
1012
+ /** Wallet id. */
937
1013
  walletId: string;
938
1014
  network: "Algorand" | "AlgorandTestnet" | "Aptos" | "AptosTestnet" | "ArbitrumOne" | "ArbitrumGoerli" | "ArbitrumSepolia" | "ArcTestnet" | "AvalancheC" | "AvalancheCFuji" | "Adi" | "AdiTestnet" | "AdiTestnetAb" | "BabylonGenesis" | "BabylonTestnet5" | "Base" | "BaseGoerli" | "BaseSepolia" | "Berachain" | "BerachainBArtio" | "BerachainBepolia" | "Bitcoin" | "BitcoinSignet" | "BitcoinTestnet3" | "BitcoinCash" | "BitcoinCashTestnet" | "Bob" | "BobSepolia" | "Bsc" | "BscTestnet" | "Canton" | "CantonDevnet" | "CantonTestnet" | "Cardano" | "CardanoPreprod" | "Concordium" | "ConcordiumTestnet" | "Celo" | "CeloAlfajores" | "Codex" | "CodexSepolia" | "CosmosHub4" | "CosmosIcsTestnet" | "Dogecoin" | "DogecoinTestnet" | "Ethereum" | "EthereumClassic" | "EthereumClassicMordor" | "EthereumGoerli" | "EthereumSepolia" | "EthereumHolesky" | "EthereumHoodi" | "FantomOpera" | "FantomTestnet" | "FlareC" | "FlareCCoston2" | "FlowEvm" | "FlowEvmTestnet" | "Hedera" | "HederaTestnet" | "Ink" | "InkSepolia" | "InternetComputer" | "Ion" | "IonTestnet" | "Iota" | "IotaTestnet" | "IotaZodianet" | "Kaspa" | "KaspaTestnet11" | "Kusama" | "KusamaAssetHub" | "Litecoin" | "LitecoinTestnet" | "Near" | "NearTestnet" | "Optimism" | "OptimismGoerli" | "OptimismSepolia" | "Origyn" | "Plasma" | "PlasmaTestnet" | "Plume" | "PlumeSepolia" | "Paseo" | "PaseoAssetHub" | "Polkadot" | "PolkadotAssetHub" | "Polygon" | "PolygonAmoy" | "PolygonMumbai" | "Polymesh" | "PolymeshTestnet" | "Race" | "RaceSepolia" | "SeiAtlantic2" | "SeiPacific1" | "Solana" | "SolanaDevnet" | "Sonic" | "SonicTestnet" | "Starknet" | "StarknetSepolia" | "Stellar" | "StellarTestnet" | "Sui" | "SuiTestnet" | "Tezos" | "TezosGhostnet" | "TempoAndantino" | "Tsc" | "TscTestnet1" | "Ton" | "TonTestnet" | "Tron" | "TronNile" | "Westend" | "WestendAssetHub" | "XrpLedger" | "XrpLedgerTestnet";
1015
+ /** The user who initiated the request. */
939
1016
  requester: {
1017
+ /** User id. */
940
1018
  userId: string;
1019
+ /** Token id. */
941
1020
  tokenId?: string | undefined;
942
1021
  };
943
1022
  requestBody: {
@@ -1015,7 +1094,7 @@ export type CreateApprovalDecisionResponse = {
1015
1094
  externalId?: string | undefined;
1016
1095
  } | {
1017
1096
  kind: "CancelTransaction";
1018
- txHash: string;
1097
+ txHash?: string | undefined;
1019
1098
  signedTx: string;
1020
1099
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key (read more [here](https://docs.dfns.co/api-reference/idempotency)). */
1021
1100
  externalId?: string | undefined;
@@ -1038,10 +1117,15 @@ export type CreateApprovalDecisionResponse = {
1038
1117
  externalId?: string | undefined;
1039
1118
  } | undefined;
1040
1119
  signatureRequest?: {
1120
+ /** Signature id. */
1041
1121
  id: string;
1122
+ /** Key id. */
1042
1123
  keyId: string;
1124
+ /** The user who initiated the request. */
1043
1125
  requester: {
1126
+ /** User id. */
1044
1127
  userId: string;
1128
+ /** Token id. */
1045
1129
  tokenId?: string | undefined;
1046
1130
  };
1047
1131
  requestBody: {
@@ -1171,7 +1255,7 @@ export type CreateApprovalDecisionResponse = {
1171
1255
  } | {
1172
1256
  kind: "SignerPayload";
1173
1257
  /** The unsigned Signer Payload formatted as JSON, or as a serialized hex-encoded buffer.
1174
-
1258
+
1175
1259
  Please refer to the original Polkadot definition for more details: [SignerPayloadJson](https://github.com/polkadot-js/api/blob/v16.2.2/packages/types/src/types/extrinsic.ts#L32). Note that additional fields will be rejected.
1176
1260
 
1177
1261
  | Field | Description | Type - Optional |
@@ -1340,10 +1424,11 @@ export type CreateApprovalDecisionResponse = {
1340
1424
  amount: string;
1341
1425
  };
1342
1426
  } | {};
1427
+ /** The user who initiated the request. */
1343
1428
  requester: {
1344
- /** User (could be a service account) who requested the resource. */
1429
+ /** User id. */
1345
1430
  userId: string;
1346
- /** Service Account token or Personal Access token used when requesting the resource. */
1431
+ /** Token id. */
1347
1432
  tokenId?: string | undefined;
1348
1433
  };
1349
1434
  } | undefined;
@@ -1829,6 +1914,46 @@ export type CreateApprovalDecisionResponse = {
1829
1914
  tos: string[];
1830
1915
  value: string;
1831
1916
  fee?: string | undefined;
1917
+ } | {
1918
+ walletId: string;
1919
+ direction: "In" | "Out";
1920
+ network: "Algorand" | "AlgorandTestnet" | "Aptos" | "AptosTestnet" | "ArbitrumOne" | "ArbitrumGoerli" | "ArbitrumSepolia" | "ArcTestnet" | "AvalancheC" | "AvalancheCFuji" | "Adi" | "AdiTestnet" | "AdiTestnetAb" | "BabylonGenesis" | "BabylonTestnet5" | "Base" | "BaseGoerli" | "BaseSepolia" | "Berachain" | "BerachainBArtio" | "BerachainBepolia" | "Bitcoin" | "BitcoinSignet" | "BitcoinTestnet3" | "BitcoinCash" | "BitcoinCashTestnet" | "Bob" | "BobSepolia" | "Bsc" | "BscTestnet" | "Canton" | "CantonDevnet" | "CantonTestnet" | "Cardano" | "CardanoPreprod" | "Concordium" | "ConcordiumTestnet" | "Celo" | "CeloAlfajores" | "Codex" | "CodexSepolia" | "CosmosHub4" | "CosmosIcsTestnet" | "Dogecoin" | "DogecoinTestnet" | "Ethereum" | "EthereumClassic" | "EthereumClassicMordor" | "EthereumGoerli" | "EthereumSepolia" | "EthereumHolesky" | "EthereumHoodi" | "FantomOpera" | "FantomTestnet" | "FlareC" | "FlareCCoston2" | "FlowEvm" | "FlowEvmTestnet" | "Hedera" | "HederaTestnet" | "Ink" | "InkSepolia" | "InternetComputer" | "Ion" | "IonTestnet" | "Iota" | "IotaTestnet" | "IotaZodianet" | "Kaspa" | "KaspaTestnet11" | "Kusama" | "KusamaAssetHub" | "Litecoin" | "LitecoinTestnet" | "Near" | "NearTestnet" | "Optimism" | "OptimismGoerli" | "OptimismSepolia" | "Origyn" | "Plasma" | "PlasmaTestnet" | "Plume" | "PlumeSepolia" | "Paseo" | "PaseoAssetHub" | "Polkadot" | "PolkadotAssetHub" | "Polygon" | "PolygonAmoy" | "PolygonMumbai" | "Polymesh" | "PolymeshTestnet" | "Race" | "RaceSepolia" | "SeiAtlantic2" | "SeiPacific1" | "Solana" | "SolanaDevnet" | "Sonic" | "SonicTestnet" | "Starknet" | "StarknetSepolia" | "Stellar" | "StellarTestnet" | "Sui" | "SuiTestnet" | "Tezos" | "TezosGhostnet" | "TempoAndantino" | "Tsc" | "TscTestnet1" | "Ton" | "TonTestnet" | "Tron" | "TronNile" | "Westend" | "WestendAssetHub" | "XrpLedger" | "XrpLedgerTestnet";
1921
+ blockNumber: number;
1922
+ txHash: string;
1923
+ index?: string | undefined;
1924
+ timestamp: string;
1925
+ metadata: {
1926
+ asset: {
1927
+ symbol?: string | undefined;
1928
+ /** Number of decimals used by the asset, see [this guide](https://docs.dfns.co/guides/developers/displaying-balances) for more details. */
1929
+ decimals?: number | undefined;
1930
+ /** Whether the asset is verified by DFNS as legitimate. */
1931
+ verified?: boolean | undefined;
1932
+ /** Corresponding asset price in USD at the time of transfer. */
1933
+ quotes?: {
1934
+ [x: string]: number;
1935
+ } | undefined;
1936
+ };
1937
+ fee?: {
1938
+ symbol?: string | undefined;
1939
+ /** Number of decimals used by the asset, see [this guide](https://docs.dfns.co/guides/developers/displaying-balances) for more details. */
1940
+ decimals?: number | undefined;
1941
+ /** Whether the asset is verified by DFNS as legitimate. */
1942
+ verified?: boolean | undefined;
1943
+ /** Corresponding asset price in USD at the time of transfer. */
1944
+ quotes?: {
1945
+ [x: string]: number;
1946
+ } | undefined;
1947
+ } | undefined;
1948
+ };
1949
+ kind: "IouTransfer";
1950
+ currency: string;
1951
+ issuer: string;
1952
+ from?: string | undefined;
1953
+ to?: string | undefined;
1954
+ value: string;
1955
+ fee?: string | undefined;
1956
+ memo?: string | undefined;
1832
1957
  } | {
1833
1958
  walletId: string;
1834
1959
  direction: "In" | "Out";
@@ -1867,6 +1992,45 @@ export type CreateApprovalDecisionResponse = {
1867
1992
  tos?: string[] | undefined;
1868
1993
  value: string;
1869
1994
  fee?: string | undefined;
1995
+ } | {
1996
+ walletId: string;
1997
+ direction: "In" | "Out";
1998
+ network: "Algorand" | "AlgorandTestnet" | "Aptos" | "AptosTestnet" | "ArbitrumOne" | "ArbitrumGoerli" | "ArbitrumSepolia" | "ArcTestnet" | "AvalancheC" | "AvalancheCFuji" | "Adi" | "AdiTestnet" | "AdiTestnetAb" | "BabylonGenesis" | "BabylonTestnet5" | "Base" | "BaseGoerli" | "BaseSepolia" | "Berachain" | "BerachainBArtio" | "BerachainBepolia" | "Bitcoin" | "BitcoinSignet" | "BitcoinTestnet3" | "BitcoinCash" | "BitcoinCashTestnet" | "Bob" | "BobSepolia" | "Bsc" | "BscTestnet" | "Canton" | "CantonDevnet" | "CantonTestnet" | "Cardano" | "CardanoPreprod" | "Concordium" | "ConcordiumTestnet" | "Celo" | "CeloAlfajores" | "Codex" | "CodexSepolia" | "CosmosHub4" | "CosmosIcsTestnet" | "Dogecoin" | "DogecoinTestnet" | "Ethereum" | "EthereumClassic" | "EthereumClassicMordor" | "EthereumGoerli" | "EthereumSepolia" | "EthereumHolesky" | "EthereumHoodi" | "FantomOpera" | "FantomTestnet" | "FlareC" | "FlareCCoston2" | "FlowEvm" | "FlowEvmTestnet" | "Hedera" | "HederaTestnet" | "Ink" | "InkSepolia" | "InternetComputer" | "Ion" | "IonTestnet" | "Iota" | "IotaTestnet" | "IotaZodianet" | "Kaspa" | "KaspaTestnet11" | "Kusama" | "KusamaAssetHub" | "Litecoin" | "LitecoinTestnet" | "Near" | "NearTestnet" | "Optimism" | "OptimismGoerli" | "OptimismSepolia" | "Origyn" | "Plasma" | "PlasmaTestnet" | "Plume" | "PlumeSepolia" | "Paseo" | "PaseoAssetHub" | "Polkadot" | "PolkadotAssetHub" | "Polygon" | "PolygonAmoy" | "PolygonMumbai" | "Polymesh" | "PolymeshTestnet" | "Race" | "RaceSepolia" | "SeiAtlantic2" | "SeiPacific1" | "Solana" | "SolanaDevnet" | "Sonic" | "SonicTestnet" | "Starknet" | "StarknetSepolia" | "Stellar" | "StellarTestnet" | "Sui" | "SuiTestnet" | "Tezos" | "TezosGhostnet" | "TempoAndantino" | "Tsc" | "TscTestnet1" | "Ton" | "TonTestnet" | "Tron" | "TronNile" | "Westend" | "WestendAssetHub" | "XrpLedger" | "XrpLedgerTestnet";
1999
+ blockNumber: number;
2000
+ txHash: string;
2001
+ index?: string | undefined;
2002
+ timestamp: string;
2003
+ metadata: {
2004
+ asset: {
2005
+ symbol?: string | undefined;
2006
+ /** Number of decimals used by the asset, see [this guide](https://docs.dfns.co/guides/developers/displaying-balances) for more details. */
2007
+ decimals?: number | undefined;
2008
+ /** Whether the asset is verified by DFNS as legitimate. */
2009
+ verified?: boolean | undefined;
2010
+ /** Corresponding asset price in USD at the time of transfer. */
2011
+ quotes?: {
2012
+ [x: string]: number;
2013
+ } | undefined;
2014
+ };
2015
+ fee?: {
2016
+ symbol?: string | undefined;
2017
+ /** Number of decimals used by the asset, see [this guide](https://docs.dfns.co/guides/developers/displaying-balances) for more details. */
2018
+ decimals?: number | undefined;
2019
+ /** Whether the asset is verified by DFNS as legitimate. */
2020
+ verified?: boolean | undefined;
2021
+ /** Corresponding asset price in USD at the time of transfer. */
2022
+ quotes?: {
2023
+ [x: string]: number;
2024
+ } | undefined;
2025
+ } | undefined;
2026
+ };
2027
+ kind: "Xls33Transfer";
2028
+ issuanceId: string;
2029
+ from?: string | undefined;
2030
+ to?: string | undefined;
2031
+ value: string;
2032
+ fee?: string | undefined;
2033
+ memo?: string | undefined;
1870
2034
  } | {
1871
2035
  walletId: string;
1872
2036
  direction: "In" | "Out";
@@ -2217,6 +2381,7 @@ export type CreateApprovalDecisionResponse = {
2217
2381
  kind: "Policies:Modify";
2218
2382
  changeRequest: {
2219
2383
  id: string;
2384
+ /** The user who initiated the change request. */
2220
2385
  requester: {
2221
2386
  userId: string;
2222
2387
  tokenId?: string | undefined;
@@ -2458,6 +2623,22 @@ export type CreateApprovalDecisionResponse = {
2458
2623
  skipChainalysisFailure: boolean;
2459
2624
  };
2460
2625
  };
2626
+ } | {
2627
+ kind: "GlobalLedgerTransactionPrescreening";
2628
+ configuration: {
2629
+ /** Risk score threshold (0-100). Policy triggers if address/transaction risk score >= threshold */
2630
+ riskScoreThreshold: number;
2631
+ fallbackBehaviours: {
2632
+ /** skip all wallet requests that cannot be screened (eg. raw signatures) */
2633
+ skipUnscreenableTransaction: boolean;
2634
+ /** skip transfer requests to a network not supported yet in our GlobalLedger integration */
2635
+ skipUnsupportedNetwork: boolean;
2636
+ /** skip transfer requests of an asset not supported by our GlobalLedger integration */
2637
+ skipUnsupportedAsset: boolean;
2638
+ /** skips any errors from GlobalLedger API request */
2639
+ skipGlobalLedgerFailure: boolean;
2640
+ };
2641
+ };
2461
2642
  } | {
2462
2643
  kind: "TravelRuleTransactionPrescreening";
2463
2644
  configuration: {
@@ -2544,6 +2725,7 @@ export type CreateApprovalDecisionResponse = {
2544
2725
  kind: "Permissions:Modify";
2545
2726
  changeRequest: {
2546
2727
  id: string;
2728
+ /** The user who initiated the change request. */
2547
2729
  requester: {
2548
2730
  userId: string;
2549
2731
  tokenId?: string | undefined;
@@ -2569,6 +2751,7 @@ export type CreateApprovalDecisionResponse = {
2569
2751
  kind: "Permissions:Assign";
2570
2752
  changeRequest: {
2571
2753
  id: string;
2754
+ /** The user who initiated the change request. */
2572
2755
  requester: {
2573
2756
  userId: string;
2574
2757
  tokenId?: string | undefined;
@@ -2653,6 +2836,7 @@ export type CreateApprovalDecisionResponse = {
2653
2836
  policyId: string;
2654
2837
  triggered: boolean;
2655
2838
  reason: string;
2839
+ context?: any | undefined;
2656
2840
  }[];
2657
2841
  decisions: {
2658
2842
  userId: string;
@@ -2869,6 +3053,22 @@ export type CreatePolicyBody = {
2869
3053
  skipChainalysisFailure: boolean;
2870
3054
  };
2871
3055
  };
3056
+ } | {
3057
+ kind: "GlobalLedgerTransactionPrescreening";
3058
+ configuration: {
3059
+ /** Risk score threshold (0-100). Policy triggers if address/transaction risk score >= threshold */
3060
+ riskScoreThreshold: number;
3061
+ fallbackBehaviours: {
3062
+ /** skip all wallet requests that cannot be screened (eg. raw signatures) */
3063
+ skipUnscreenableTransaction: boolean;
3064
+ /** skip transfer requests to a network not supported yet in our GlobalLedger integration */
3065
+ skipUnsupportedNetwork: boolean;
3066
+ /** skip transfer requests of an asset not supported by our GlobalLedger integration */
3067
+ skipUnsupportedAsset: boolean;
3068
+ /** skips any errors from GlobalLedger API request */
3069
+ skipGlobalLedgerFailure: boolean;
3070
+ };
3071
+ };
2872
3072
  } | {
2873
3073
  kind: "TravelRuleTransactionPrescreening";
2874
3074
  configuration: {
@@ -3175,6 +3375,22 @@ export type CreatePolicyResponse = {
3175
3375
  skipChainalysisFailure: boolean;
3176
3376
  };
3177
3377
  };
3378
+ } | {
3379
+ kind: "GlobalLedgerTransactionPrescreening";
3380
+ configuration: {
3381
+ /** Risk score threshold (0-100). Policy triggers if address/transaction risk score >= threshold */
3382
+ riskScoreThreshold: number;
3383
+ fallbackBehaviours: {
3384
+ /** skip all wallet requests that cannot be screened (eg. raw signatures) */
3385
+ skipUnscreenableTransaction: boolean;
3386
+ /** skip transfer requests to a network not supported yet in our GlobalLedger integration */
3387
+ skipUnsupportedNetwork: boolean;
3388
+ /** skip transfer requests of an asset not supported by our GlobalLedger integration */
3389
+ skipUnsupportedAsset: boolean;
3390
+ /** skips any errors from GlobalLedger API request */
3391
+ skipGlobalLedgerFailure: boolean;
3392
+ };
3393
+ };
3178
3394
  } | {
3179
3395
  kind: "TravelRuleTransactionPrescreening";
3180
3396
  configuration: {
@@ -3274,11 +3490,11 @@ export type GetApprovalResponse = {
3274
3490
  walletId: string;
3275
3491
  /** The blockchain network this transfer is on. */
3276
3492
  network: "Algorand" | "AlgorandTestnet" | "Aptos" | "AptosTestnet" | "ArbitrumOne" | "ArbitrumGoerli" | "ArbitrumSepolia" | "ArcTestnet" | "AvalancheC" | "AvalancheCFuji" | "Adi" | "AdiTestnet" | "AdiTestnetAb" | "BabylonGenesis" | "BabylonTestnet5" | "Base" | "BaseGoerli" | "BaseSepolia" | "Berachain" | "BerachainBArtio" | "BerachainBepolia" | "Bitcoin" | "BitcoinSignet" | "BitcoinTestnet3" | "BitcoinCash" | "BitcoinCashTestnet" | "Bob" | "BobSepolia" | "Bsc" | "BscTestnet" | "Canton" | "CantonDevnet" | "CantonTestnet" | "Cardano" | "CardanoPreprod" | "Concordium" | "ConcordiumTestnet" | "Celo" | "CeloAlfajores" | "Codex" | "CodexSepolia" | "CosmosHub4" | "CosmosIcsTestnet" | "Dogecoin" | "DogecoinTestnet" | "Ethereum" | "EthereumClassic" | "EthereumClassicMordor" | "EthereumGoerli" | "EthereumSepolia" | "EthereumHolesky" | "EthereumHoodi" | "FantomOpera" | "FantomTestnet" | "FlareC" | "FlareCCoston2" | "FlowEvm" | "FlowEvmTestnet" | "Hedera" | "HederaTestnet" | "Ink" | "InkSepolia" | "InternetComputer" | "Ion" | "IonTestnet" | "Iota" | "IotaTestnet" | "IotaZodianet" | "Kaspa" | "KaspaTestnet11" | "Kusama" | "KusamaAssetHub" | "Litecoin" | "LitecoinTestnet" | "Near" | "NearTestnet" | "Optimism" | "OptimismGoerli" | "OptimismSepolia" | "Origyn" | "Plasma" | "PlasmaTestnet" | "Plume" | "PlumeSepolia" | "Paseo" | "PaseoAssetHub" | "Polkadot" | "PolkadotAssetHub" | "Polygon" | "PolygonAmoy" | "PolygonMumbai" | "Polymesh" | "PolymeshTestnet" | "Race" | "RaceSepolia" | "SeiAtlantic2" | "SeiPacific1" | "Solana" | "SolanaDevnet" | "Sonic" | "SonicTestnet" | "Starknet" | "StarknetSepolia" | "Stellar" | "StellarTestnet" | "Sui" | "SuiTestnet" | "Tezos" | "TezosGhostnet" | "TempoAndantino" | "Tsc" | "TscTestnet1" | "Ton" | "TonTestnet" | "Tron" | "TronNile" | "Westend" | "WestendAssetHub" | "XrpLedger" | "XrpLedgerTestnet";
3277
- /** The user (including Service Accounts) who requested this transfer. */
3493
+ /** The user who initiated the request. */
3278
3494
  requester: {
3279
- /** The id of the user who requested this transfer. */
3495
+ /** User id. */
3280
3496
  userId: string;
3281
- /** The id of the token used to authenticate the user. */
3497
+ /** Token id. */
3282
3498
  tokenId?: string | undefined;
3283
3499
  };
3284
3500
  requestBody: {
@@ -3287,8 +3503,8 @@ export type GetApprovalResponse = {
3287
3503
  to: string;
3288
3504
  /** The amount of native tokens to transfer in minimum denomination. */
3289
3505
  amount: string;
3290
- /** The memo or destination tag. `Algorand`, `Cosmos`, `Hedera`, `Stellar`, `TON`, `XrpLedger` support `memo`. Not valid for other networks. */
3291
- memo?: string | undefined;
3506
+ /** The memo or destination tag (supported networks only). */
3507
+ memo?: (string | "") | undefined;
3292
3508
  /** 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](https://docs.dfns.co/api-reference/networks/estimate-fees) API to calculate the transfer fees. When not specified, defaults to `Standard` priority. */
3293
3509
  priority?: ("Slow" | "Standard" | "Fast") | undefined;
3294
3510
  /** 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. */
@@ -3316,15 +3532,13 @@ export type GetApprovalResponse = {
3316
3532
  /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
3317
3533
  feeSponsorId?: string | undefined;
3318
3534
  } | {
3319
- kind: "Asa";
3320
- /** The token asset id. */
3321
- assetId: string;
3535
+ kind: "Aip21";
3536
+ /** The asset metadata address. */
3537
+ metadata: string;
3322
3538
  /** The destination address. */
3323
3539
  to: string;
3324
3540
  /** The amount of tokens to transfer in minimum denomination. */
3325
3541
  amount: string;
3326
- /** The memo. */
3327
- memo?: string | undefined;
3328
3542
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
3329
3543
  externalId?: string | undefined;
3330
3544
  /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
@@ -3344,13 +3558,15 @@ export type GetApprovalResponse = {
3344
3558
  /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
3345
3559
  feeSponsorId?: string | undefined;
3346
3560
  } | {
3347
- kind: "Aip21";
3348
- /** The asset metadata address. */
3349
- metadata: string;
3561
+ kind: "Asa";
3562
+ /** The token asset id. */
3563
+ assetId: string;
3350
3564
  /** The destination address. */
3351
3565
  to: string;
3352
3566
  /** The amount of tokens to transfer in minimum denomination. */
3353
3567
  amount: string;
3568
+ /** The memo. */
3569
+ memo?: (string | "") | undefined;
3354
3570
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
3355
3571
  externalId?: string | undefined;
3356
3572
  /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
@@ -3451,6 +3667,34 @@ export type GetApprovalResponse = {
3451
3667
  }) | undefined;
3452
3668
  /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
3453
3669
  feeSponsorId?: string | undefined;
3670
+ } | {
3671
+ kind: "Cis7";
3672
+ /** The destination address. */
3673
+ to: string;
3674
+ /** The amount of tokens to transfer in minimum denomination. */
3675
+ amount: string;
3676
+ /** The Cis7 token identifier. */
3677
+ tokenId: string;
3678
+ /** The memo or destination tag. */
3679
+ memo?: (string | "") | undefined;
3680
+ /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
3681
+ externalId?: string | undefined;
3682
+ /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
3683
+ travelRule?: ({
3684
+ kind: "Notabene";
3685
+ beneficiaryVASPdid?: string | undefined;
3686
+ beneficiaryProof?: {
3687
+ [x: string]: any;
3688
+ } | undefined;
3689
+ originator: {
3690
+ [x: string]: any;
3691
+ };
3692
+ beneficiary: {
3693
+ [x: string]: any;
3694
+ };
3695
+ }) | undefined;
3696
+ /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
3697
+ feeSponsorId?: string | undefined;
3454
3698
  } | {
3455
3699
  kind: "Coin";
3456
3700
  /** The coin identifier. */
@@ -3541,7 +3785,7 @@ export type GetApprovalResponse = {
3541
3785
  /** The destination address. */
3542
3786
  to: string;
3543
3787
  /** The memo. */
3544
- memo?: string | undefined;
3788
+ memo?: (string | "") | undefined;
3545
3789
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
3546
3790
  externalId?: string | undefined;
3547
3791
  /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
@@ -3569,7 +3813,7 @@ export type GetApprovalResponse = {
3569
3813
  /** The amount of tokens to transfer in minimum denomination. */
3570
3814
  amount: string;
3571
3815
  /** The memo. */
3572
- memo?: string | undefined;
3816
+ memo?: (string | "") | undefined;
3573
3817
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
3574
3818
  externalId?: string | undefined;
3575
3819
  /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
@@ -3589,14 +3833,16 @@ export type GetApprovalResponse = {
3589
3833
  /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
3590
3834
  feeSponsorId?: string | undefined;
3591
3835
  } | {
3592
- kind: "Cis7";
3836
+ kind: "Iou";
3837
+ /** The IOU currency code. */
3838
+ currency: string;
3839
+ /** The IOU issuer address. */
3840
+ issuer: string;
3593
3841
  /** The destination address. */
3594
3842
  to: string;
3595
3843
  /** The amount of tokens to transfer in minimum denomination. */
3596
3844
  amount: string;
3597
- /** The Cis7 token identifier. */
3598
- tokenId: string;
3599
- /** The memo or destination tag. */
3845
+ /** The memo or destination tag for XRPL transactions. */
3600
3846
  memo?: string | undefined;
3601
3847
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
3602
3848
  externalId?: string | undefined;
@@ -3627,7 +3873,7 @@ export type GetApprovalResponse = {
3627
3873
  /** The amount of tokens to transfer in minimum denomination. */
3628
3874
  amount: string;
3629
3875
  /** The memo or destination tag. */
3630
- memo?: string | undefined;
3876
+ memo?: (string | "") | undefined;
3631
3877
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
3632
3878
  externalId?: string | undefined;
3633
3879
  /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
@@ -3735,7 +3981,7 @@ export type GetApprovalResponse = {
3735
3981
  /** The amount of tokens to transfer in minimum denomination. */
3736
3982
  amount: string;
3737
3983
  /** The memo or destination tag. */
3738
- memo?: string | undefined;
3984
+ memo?: (string | "") | undefined;
3739
3985
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
3740
3986
  externalId?: string | undefined;
3741
3987
  /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
@@ -3832,6 +4078,34 @@ export type GetApprovalResponse = {
3832
4078
  }) | undefined;
3833
4079
  /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
3834
4080
  feeSponsorId?: string | undefined;
4081
+ } | {
4082
+ kind: "Xls33";
4083
+ /** The XLS-33 issuance identifier. */
4084
+ issuanceId: string;
4085
+ /** The destination address. */
4086
+ to: string;
4087
+ /** The amount of tokens to transfer in minimum denomination. */
4088
+ amount: string;
4089
+ /** The memo or destination tag for XRPL transactions. */
4090
+ memo?: string | undefined;
4091
+ /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
4092
+ externalId?: string | undefined;
4093
+ /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
4094
+ travelRule?: ({
4095
+ kind: "Notabene";
4096
+ beneficiaryVASPdid?: string | undefined;
4097
+ beneficiaryProof?: {
4098
+ [x: string]: any;
4099
+ } | undefined;
4100
+ originator: {
4101
+ [x: string]: any;
4102
+ };
4103
+ beneficiary: {
4104
+ [x: string]: any;
4105
+ };
4106
+ }) | undefined;
4107
+ /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
4108
+ feeSponsorId?: string | undefined;
3835
4109
  };
3836
4110
  /** Additional metadata about the transfered asset. */
3837
4111
  metadata: {
@@ -3848,7 +4122,7 @@ export type GetApprovalResponse = {
3848
4122
  };
3849
4123
  };
3850
4124
  /** Transfer status.
3851
-
4125
+
3852
4126
  | Status | Definition |
3853
4127
  | --- | --- |
3854
4128
  | `Pending` | The request is pending approval due to a policy applied to the wallet. |
@@ -3876,11 +4150,16 @@ export type GetApprovalResponse = {
3876
4150
  feeSponsorId?: string | undefined;
3877
4151
  } | undefined;
3878
4152
  transactionRequest?: {
4153
+ /** Transaction id. */
3879
4154
  id: string;
4155
+ /** Wallet id. */
3880
4156
  walletId: string;
3881
4157
  network: "Algorand" | "AlgorandTestnet" | "Aptos" | "AptosTestnet" | "ArbitrumOne" | "ArbitrumGoerli" | "ArbitrumSepolia" | "ArcTestnet" | "AvalancheC" | "AvalancheCFuji" | "Adi" | "AdiTestnet" | "AdiTestnetAb" | "BabylonGenesis" | "BabylonTestnet5" | "Base" | "BaseGoerli" | "BaseSepolia" | "Berachain" | "BerachainBArtio" | "BerachainBepolia" | "Bitcoin" | "BitcoinSignet" | "BitcoinTestnet3" | "BitcoinCash" | "BitcoinCashTestnet" | "Bob" | "BobSepolia" | "Bsc" | "BscTestnet" | "Canton" | "CantonDevnet" | "CantonTestnet" | "Cardano" | "CardanoPreprod" | "Concordium" | "ConcordiumTestnet" | "Celo" | "CeloAlfajores" | "Codex" | "CodexSepolia" | "CosmosHub4" | "CosmosIcsTestnet" | "Dogecoin" | "DogecoinTestnet" | "Ethereum" | "EthereumClassic" | "EthereumClassicMordor" | "EthereumGoerli" | "EthereumSepolia" | "EthereumHolesky" | "EthereumHoodi" | "FantomOpera" | "FantomTestnet" | "FlareC" | "FlareCCoston2" | "FlowEvm" | "FlowEvmTestnet" | "Hedera" | "HederaTestnet" | "Ink" | "InkSepolia" | "InternetComputer" | "Ion" | "IonTestnet" | "Iota" | "IotaTestnet" | "IotaZodianet" | "Kaspa" | "KaspaTestnet11" | "Kusama" | "KusamaAssetHub" | "Litecoin" | "LitecoinTestnet" | "Near" | "NearTestnet" | "Optimism" | "OptimismGoerli" | "OptimismSepolia" | "Origyn" | "Plasma" | "PlasmaTestnet" | "Plume" | "PlumeSepolia" | "Paseo" | "PaseoAssetHub" | "Polkadot" | "PolkadotAssetHub" | "Polygon" | "PolygonAmoy" | "PolygonMumbai" | "Polymesh" | "PolymeshTestnet" | "Race" | "RaceSepolia" | "SeiAtlantic2" | "SeiPacific1" | "Solana" | "SolanaDevnet" | "Sonic" | "SonicTestnet" | "Starknet" | "StarknetSepolia" | "Stellar" | "StellarTestnet" | "Sui" | "SuiTestnet" | "Tezos" | "TezosGhostnet" | "TempoAndantino" | "Tsc" | "TscTestnet1" | "Ton" | "TonTestnet" | "Tron" | "TronNile" | "Westend" | "WestendAssetHub" | "XrpLedger" | "XrpLedgerTestnet";
4158
+ /** The user who initiated the request. */
3882
4159
  requester: {
4160
+ /** User id. */
3883
4161
  userId: string;
4162
+ /** Token id. */
3884
4163
  tokenId?: string | undefined;
3885
4164
  };
3886
4165
  requestBody: {
@@ -3958,7 +4237,7 @@ export type GetApprovalResponse = {
3958
4237
  externalId?: string | undefined;
3959
4238
  } | {
3960
4239
  kind: "CancelTransaction";
3961
- txHash: string;
4240
+ txHash?: string | undefined;
3962
4241
  signedTx: string;
3963
4242
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key (read more [here](https://docs.dfns.co/api-reference/idempotency)). */
3964
4243
  externalId?: string | undefined;
@@ -3981,10 +4260,15 @@ export type GetApprovalResponse = {
3981
4260
  externalId?: string | undefined;
3982
4261
  } | undefined;
3983
4262
  signatureRequest?: {
4263
+ /** Signature id. */
3984
4264
  id: string;
4265
+ /** Key id. */
3985
4266
  keyId: string;
4267
+ /** The user who initiated the request. */
3986
4268
  requester: {
4269
+ /** User id. */
3987
4270
  userId: string;
4271
+ /** Token id. */
3988
4272
  tokenId?: string | undefined;
3989
4273
  };
3990
4274
  requestBody: {
@@ -4114,7 +4398,7 @@ export type GetApprovalResponse = {
4114
4398
  } | {
4115
4399
  kind: "SignerPayload";
4116
4400
  /** The unsigned Signer Payload formatted as JSON, or as a serialized hex-encoded buffer.
4117
-
4401
+
4118
4402
  Please refer to the original Polkadot definition for more details: [SignerPayloadJson](https://github.com/polkadot-js/api/blob/v16.2.2/packages/types/src/types/extrinsic.ts#L32). Note that additional fields will be rejected.
4119
4403
 
4120
4404
  | Field | Description | Type - Optional |
@@ -4283,10 +4567,11 @@ export type GetApprovalResponse = {
4283
4567
  amount: string;
4284
4568
  };
4285
4569
  } | {};
4570
+ /** The user who initiated the request. */
4286
4571
  requester: {
4287
- /** User (could be a service account) who requested the resource. */
4572
+ /** User id. */
4288
4573
  userId: string;
4289
- /** Service Account token or Personal Access token used when requesting the resource. */
4574
+ /** Token id. */
4290
4575
  tokenId?: string | undefined;
4291
4576
  };
4292
4577
  } | undefined;
@@ -4686,16 +4971,92 @@ export type GetApprovalResponse = {
4686
4971
  } | undefined;
4687
4972
  } | undefined;
4688
4973
  };
4689
- kind: "Erc721Transfer";
4690
- contract: string;
4691
- from: string;
4692
- to: string;
4693
- tokenId: string;
4974
+ kind: "Erc721Transfer";
4975
+ contract: string;
4976
+ from: string;
4977
+ to: string;
4978
+ tokenId: string;
4979
+ fee?: string | undefined;
4980
+ /** @deprecated use metadata.asset.symbol instead */
4981
+ symbol?: string | undefined;
4982
+ /** @deprecated use metadata.asset.verified instead */
4983
+ verified?: boolean | undefined;
4984
+ } | {
4985
+ walletId: string;
4986
+ direction: "In" | "Out";
4987
+ network: "Algorand" | "AlgorandTestnet" | "Aptos" | "AptosTestnet" | "ArbitrumOne" | "ArbitrumGoerli" | "ArbitrumSepolia" | "ArcTestnet" | "AvalancheC" | "AvalancheCFuji" | "Adi" | "AdiTestnet" | "AdiTestnetAb" | "BabylonGenesis" | "BabylonTestnet5" | "Base" | "BaseGoerli" | "BaseSepolia" | "Berachain" | "BerachainBArtio" | "BerachainBepolia" | "Bitcoin" | "BitcoinSignet" | "BitcoinTestnet3" | "BitcoinCash" | "BitcoinCashTestnet" | "Bob" | "BobSepolia" | "Bsc" | "BscTestnet" | "Canton" | "CantonDevnet" | "CantonTestnet" | "Cardano" | "CardanoPreprod" | "Concordium" | "ConcordiumTestnet" | "Celo" | "CeloAlfajores" | "Codex" | "CodexSepolia" | "CosmosHub4" | "CosmosIcsTestnet" | "Dogecoin" | "DogecoinTestnet" | "Ethereum" | "EthereumClassic" | "EthereumClassicMordor" | "EthereumGoerli" | "EthereumSepolia" | "EthereumHolesky" | "EthereumHoodi" | "FantomOpera" | "FantomTestnet" | "FlareC" | "FlareCCoston2" | "FlowEvm" | "FlowEvmTestnet" | "Hedera" | "HederaTestnet" | "Ink" | "InkSepolia" | "InternetComputer" | "Ion" | "IonTestnet" | "Iota" | "IotaTestnet" | "IotaZodianet" | "Kaspa" | "KaspaTestnet11" | "Kusama" | "KusamaAssetHub" | "Litecoin" | "LitecoinTestnet" | "Near" | "NearTestnet" | "Optimism" | "OptimismGoerli" | "OptimismSepolia" | "Origyn" | "Plasma" | "PlasmaTestnet" | "Plume" | "PlumeSepolia" | "Paseo" | "PaseoAssetHub" | "Polkadot" | "PolkadotAssetHub" | "Polygon" | "PolygonAmoy" | "PolygonMumbai" | "Polymesh" | "PolymeshTestnet" | "Race" | "RaceSepolia" | "SeiAtlantic2" | "SeiPacific1" | "Solana" | "SolanaDevnet" | "Sonic" | "SonicTestnet" | "Starknet" | "StarknetSepolia" | "Stellar" | "StellarTestnet" | "Sui" | "SuiTestnet" | "Tezos" | "TezosGhostnet" | "TempoAndantino" | "Tsc" | "TscTestnet1" | "Ton" | "TonTestnet" | "Tron" | "TronNile" | "Westend" | "WestendAssetHub" | "XrpLedger" | "XrpLedgerTestnet";
4988
+ blockNumber: number;
4989
+ txHash: string;
4990
+ index?: string | undefined;
4991
+ timestamp: string;
4992
+ metadata: {
4993
+ asset: {
4994
+ symbol?: string | undefined;
4995
+ /** Number of decimals used by the asset, see [this guide](https://docs.dfns.co/guides/developers/displaying-balances) for more details. */
4996
+ decimals?: number | undefined;
4997
+ /** Whether the asset is verified by DFNS as legitimate. */
4998
+ verified?: boolean | undefined;
4999
+ /** Corresponding asset price in USD at the time of transfer. */
5000
+ quotes?: {
5001
+ [x: string]: number;
5002
+ } | undefined;
5003
+ };
5004
+ fee?: {
5005
+ symbol?: string | undefined;
5006
+ /** Number of decimals used by the asset, see [this guide](https://docs.dfns.co/guides/developers/displaying-balances) for more details. */
5007
+ decimals?: number | undefined;
5008
+ /** Whether the asset is verified by DFNS as legitimate. */
5009
+ verified?: boolean | undefined;
5010
+ /** Corresponding asset price in USD at the time of transfer. */
5011
+ quotes?: {
5012
+ [x: string]: number;
5013
+ } | undefined;
5014
+ } | undefined;
5015
+ };
5016
+ kind: "Hip17Transfer";
5017
+ tokenId: string;
5018
+ serialNumber: string;
5019
+ from?: string | undefined;
5020
+ to?: string | undefined;
5021
+ fee?: string | undefined;
5022
+ } | {
5023
+ walletId: string;
5024
+ direction: "In" | "Out";
5025
+ network: "Algorand" | "AlgorandTestnet" | "Aptos" | "AptosTestnet" | "ArbitrumOne" | "ArbitrumGoerli" | "ArbitrumSepolia" | "ArcTestnet" | "AvalancheC" | "AvalancheCFuji" | "Adi" | "AdiTestnet" | "AdiTestnetAb" | "BabylonGenesis" | "BabylonTestnet5" | "Base" | "BaseGoerli" | "BaseSepolia" | "Berachain" | "BerachainBArtio" | "BerachainBepolia" | "Bitcoin" | "BitcoinSignet" | "BitcoinTestnet3" | "BitcoinCash" | "BitcoinCashTestnet" | "Bob" | "BobSepolia" | "Bsc" | "BscTestnet" | "Canton" | "CantonDevnet" | "CantonTestnet" | "Cardano" | "CardanoPreprod" | "Concordium" | "ConcordiumTestnet" | "Celo" | "CeloAlfajores" | "Codex" | "CodexSepolia" | "CosmosHub4" | "CosmosIcsTestnet" | "Dogecoin" | "DogecoinTestnet" | "Ethereum" | "EthereumClassic" | "EthereumClassicMordor" | "EthereumGoerli" | "EthereumSepolia" | "EthereumHolesky" | "EthereumHoodi" | "FantomOpera" | "FantomTestnet" | "FlareC" | "FlareCCoston2" | "FlowEvm" | "FlowEvmTestnet" | "Hedera" | "HederaTestnet" | "Ink" | "InkSepolia" | "InternetComputer" | "Ion" | "IonTestnet" | "Iota" | "IotaTestnet" | "IotaZodianet" | "Kaspa" | "KaspaTestnet11" | "Kusama" | "KusamaAssetHub" | "Litecoin" | "LitecoinTestnet" | "Near" | "NearTestnet" | "Optimism" | "OptimismGoerli" | "OptimismSepolia" | "Origyn" | "Plasma" | "PlasmaTestnet" | "Plume" | "PlumeSepolia" | "Paseo" | "PaseoAssetHub" | "Polkadot" | "PolkadotAssetHub" | "Polygon" | "PolygonAmoy" | "PolygonMumbai" | "Polymesh" | "PolymeshTestnet" | "Race" | "RaceSepolia" | "SeiAtlantic2" | "SeiPacific1" | "Solana" | "SolanaDevnet" | "Sonic" | "SonicTestnet" | "Starknet" | "StarknetSepolia" | "Stellar" | "StellarTestnet" | "Sui" | "SuiTestnet" | "Tezos" | "TezosGhostnet" | "TempoAndantino" | "Tsc" | "TscTestnet1" | "Ton" | "TonTestnet" | "Tron" | "TronNile" | "Westend" | "WestendAssetHub" | "XrpLedger" | "XrpLedgerTestnet";
5026
+ blockNumber: number;
5027
+ txHash: string;
5028
+ index?: string | undefined;
5029
+ timestamp: string;
5030
+ metadata: {
5031
+ asset: {
5032
+ symbol?: string | undefined;
5033
+ /** Number of decimals used by the asset, see [this guide](https://docs.dfns.co/guides/developers/displaying-balances) for more details. */
5034
+ decimals?: number | undefined;
5035
+ /** Whether the asset is verified by DFNS as legitimate. */
5036
+ verified?: boolean | undefined;
5037
+ /** Corresponding asset price in USD at the time of transfer. */
5038
+ quotes?: {
5039
+ [x: string]: number;
5040
+ } | undefined;
5041
+ };
5042
+ fee?: {
5043
+ symbol?: string | undefined;
5044
+ /** Number of decimals used by the asset, see [this guide](https://docs.dfns.co/guides/developers/displaying-balances) for more details. */
5045
+ decimals?: number | undefined;
5046
+ /** Whether the asset is verified by DFNS as legitimate. */
5047
+ verified?: boolean | undefined;
5048
+ /** Corresponding asset price in USD at the time of transfer. */
5049
+ quotes?: {
5050
+ [x: string]: number;
5051
+ } | undefined;
5052
+ } | undefined;
5053
+ };
5054
+ kind: "HtsTransfer";
5055
+ tokenId?: string | undefined;
5056
+ froms: string[];
5057
+ tos: string[];
5058
+ value: string;
4694
5059
  fee?: string | undefined;
4695
- /** @deprecated use metadata.asset.symbol instead */
4696
- symbol?: string | undefined;
4697
- /** @deprecated use metadata.asset.verified instead */
4698
- verified?: boolean | undefined;
4699
5060
  } | {
4700
5061
  walletId: string;
4701
5062
  direction: "In" | "Out";
@@ -4728,12 +5089,14 @@ export type GetApprovalResponse = {
4728
5089
  } | undefined;
4729
5090
  } | undefined;
4730
5091
  };
4731
- kind: "Hip17Transfer";
4732
- tokenId: string;
4733
- serialNumber: string;
5092
+ kind: "IouTransfer";
5093
+ currency: string;
5094
+ issuer: string;
4734
5095
  from?: string | undefined;
4735
5096
  to?: string | undefined;
5097
+ value: string;
4736
5098
  fee?: string | undefined;
5099
+ memo?: string | undefined;
4737
5100
  } | {
4738
5101
  walletId: string;
4739
5102
  direction: "In" | "Out";
@@ -4766,10 +5129,10 @@ export type GetApprovalResponse = {
4766
5129
  } | undefined;
4767
5130
  } | undefined;
4768
5131
  };
4769
- kind: "HtsTransfer";
4770
- tokenId?: string | undefined;
4771
- froms: string[];
4772
- tos: string[];
5132
+ kind: "LockedCoinTransfer";
5133
+ coin: string;
5134
+ from: string;
5135
+ tos?: string[] | undefined;
4773
5136
  value: string;
4774
5137
  fee?: string | undefined;
4775
5138
  } | {
@@ -4804,12 +5167,13 @@ export type GetApprovalResponse = {
4804
5167
  } | undefined;
4805
5168
  } | undefined;
4806
5169
  };
4807
- kind: "LockedCoinTransfer";
4808
- coin: string;
4809
- from: string;
4810
- tos?: string[] | undefined;
5170
+ kind: "Xls33Transfer";
5171
+ issuanceId: string;
5172
+ from?: string | undefined;
5173
+ to?: string | undefined;
4811
5174
  value: string;
4812
5175
  fee?: string | undefined;
5176
+ memo?: string | undefined;
4813
5177
  } | {
4814
5178
  walletId: string;
4815
5179
  direction: "In" | "Out";
@@ -5160,6 +5524,7 @@ export type GetApprovalResponse = {
5160
5524
  kind: "Policies:Modify";
5161
5525
  changeRequest: {
5162
5526
  id: string;
5527
+ /** The user who initiated the change request. */
5163
5528
  requester: {
5164
5529
  userId: string;
5165
5530
  tokenId?: string | undefined;
@@ -5401,6 +5766,22 @@ export type GetApprovalResponse = {
5401
5766
  skipChainalysisFailure: boolean;
5402
5767
  };
5403
5768
  };
5769
+ } | {
5770
+ kind: "GlobalLedgerTransactionPrescreening";
5771
+ configuration: {
5772
+ /** Risk score threshold (0-100). Policy triggers if address/transaction risk score >= threshold */
5773
+ riskScoreThreshold: number;
5774
+ fallbackBehaviours: {
5775
+ /** skip all wallet requests that cannot be screened (eg. raw signatures) */
5776
+ skipUnscreenableTransaction: boolean;
5777
+ /** skip transfer requests to a network not supported yet in our GlobalLedger integration */
5778
+ skipUnsupportedNetwork: boolean;
5779
+ /** skip transfer requests of an asset not supported by our GlobalLedger integration */
5780
+ skipUnsupportedAsset: boolean;
5781
+ /** skips any errors from GlobalLedger API request */
5782
+ skipGlobalLedgerFailure: boolean;
5783
+ };
5784
+ };
5404
5785
  } | {
5405
5786
  kind: "TravelRuleTransactionPrescreening";
5406
5787
  configuration: {
@@ -5487,6 +5868,7 @@ export type GetApprovalResponse = {
5487
5868
  kind: "Permissions:Modify";
5488
5869
  changeRequest: {
5489
5870
  id: string;
5871
+ /** The user who initiated the change request. */
5490
5872
  requester: {
5491
5873
  userId: string;
5492
5874
  tokenId?: string | undefined;
@@ -5512,6 +5894,7 @@ export type GetApprovalResponse = {
5512
5894
  kind: "Permissions:Assign";
5513
5895
  changeRequest: {
5514
5896
  id: string;
5897
+ /** The user who initiated the change request. */
5515
5898
  requester: {
5516
5899
  userId: string;
5517
5900
  tokenId?: string | undefined;
@@ -5596,6 +5979,7 @@ export type GetApprovalResponse = {
5596
5979
  policyId: string;
5597
5980
  triggered: boolean;
5598
5981
  reason: string;
5982
+ context?: any | undefined;
5599
5983
  }[];
5600
5984
  decisions: {
5601
5985
  userId: string;
@@ -5837,6 +6221,22 @@ export type GetPolicyResponse = ({
5837
6221
  skipChainalysisFailure: boolean;
5838
6222
  };
5839
6223
  };
6224
+ } | {
6225
+ kind: "GlobalLedgerTransactionPrescreening";
6226
+ configuration: {
6227
+ /** Risk score threshold (0-100). Policy triggers if address/transaction risk score >= threshold */
6228
+ riskScoreThreshold: number;
6229
+ fallbackBehaviours: {
6230
+ /** skip all wallet requests that cannot be screened (eg. raw signatures) */
6231
+ skipUnscreenableTransaction: boolean;
6232
+ /** skip transfer requests to a network not supported yet in our GlobalLedger integration */
6233
+ skipUnsupportedNetwork: boolean;
6234
+ /** skip transfer requests of an asset not supported by our GlobalLedger integration */
6235
+ skipUnsupportedAsset: boolean;
6236
+ /** skips any errors from GlobalLedger API request */
6237
+ skipGlobalLedgerFailure: boolean;
6238
+ };
6239
+ };
5840
6240
  } | {
5841
6241
  kind: "TravelRuleTransactionPrescreening";
5842
6242
  configuration: {
@@ -5920,6 +6320,7 @@ export type GetPolicyResponse = ({
5920
6320
  }) & {
5921
6321
  pendingChangeRequest?: {
5922
6322
  id: string;
6323
+ /** The user who initiated the change request. */
5923
6324
  requester: {
5924
6325
  userId: string;
5925
6326
  tokenId?: string | undefined;
@@ -6161,6 +6562,22 @@ export type GetPolicyResponse = ({
6161
6562
  skipChainalysisFailure: boolean;
6162
6563
  };
6163
6564
  };
6565
+ } | {
6566
+ kind: "GlobalLedgerTransactionPrescreening";
6567
+ configuration: {
6568
+ /** Risk score threshold (0-100). Policy triggers if address/transaction risk score >= threshold */
6569
+ riskScoreThreshold: number;
6570
+ fallbackBehaviours: {
6571
+ /** skip all wallet requests that cannot be screened (eg. raw signatures) */
6572
+ skipUnscreenableTransaction: boolean;
6573
+ /** skip transfer requests to a network not supported yet in our GlobalLedger integration */
6574
+ skipUnsupportedNetwork: boolean;
6575
+ /** skip transfer requests of an asset not supported by our GlobalLedger integration */
6576
+ skipUnsupportedAsset: boolean;
6577
+ /** skips any errors from GlobalLedger API request */
6578
+ skipGlobalLedgerFailure: boolean;
6579
+ };
6580
+ };
6164
6581
  } | {
6165
6582
  kind: "TravelRuleTransactionPrescreening";
6166
6583
  configuration: {
@@ -6265,11 +6682,11 @@ export type ListApprovalsResponse = {
6265
6682
  walletId: string;
6266
6683
  /** The blockchain network this transfer is on. */
6267
6684
  network: "Algorand" | "AlgorandTestnet" | "Aptos" | "AptosTestnet" | "ArbitrumOne" | "ArbitrumGoerli" | "ArbitrumSepolia" | "ArcTestnet" | "AvalancheC" | "AvalancheCFuji" | "Adi" | "AdiTestnet" | "AdiTestnetAb" | "BabylonGenesis" | "BabylonTestnet5" | "Base" | "BaseGoerli" | "BaseSepolia" | "Berachain" | "BerachainBArtio" | "BerachainBepolia" | "Bitcoin" | "BitcoinSignet" | "BitcoinTestnet3" | "BitcoinCash" | "BitcoinCashTestnet" | "Bob" | "BobSepolia" | "Bsc" | "BscTestnet" | "Canton" | "CantonDevnet" | "CantonTestnet" | "Cardano" | "CardanoPreprod" | "Concordium" | "ConcordiumTestnet" | "Celo" | "CeloAlfajores" | "Codex" | "CodexSepolia" | "CosmosHub4" | "CosmosIcsTestnet" | "Dogecoin" | "DogecoinTestnet" | "Ethereum" | "EthereumClassic" | "EthereumClassicMordor" | "EthereumGoerli" | "EthereumSepolia" | "EthereumHolesky" | "EthereumHoodi" | "FantomOpera" | "FantomTestnet" | "FlareC" | "FlareCCoston2" | "FlowEvm" | "FlowEvmTestnet" | "Hedera" | "HederaTestnet" | "Ink" | "InkSepolia" | "InternetComputer" | "Ion" | "IonTestnet" | "Iota" | "IotaTestnet" | "IotaZodianet" | "Kaspa" | "KaspaTestnet11" | "Kusama" | "KusamaAssetHub" | "Litecoin" | "LitecoinTestnet" | "Near" | "NearTestnet" | "Optimism" | "OptimismGoerli" | "OptimismSepolia" | "Origyn" | "Plasma" | "PlasmaTestnet" | "Plume" | "PlumeSepolia" | "Paseo" | "PaseoAssetHub" | "Polkadot" | "PolkadotAssetHub" | "Polygon" | "PolygonAmoy" | "PolygonMumbai" | "Polymesh" | "PolymeshTestnet" | "Race" | "RaceSepolia" | "SeiAtlantic2" | "SeiPacific1" | "Solana" | "SolanaDevnet" | "Sonic" | "SonicTestnet" | "Starknet" | "StarknetSepolia" | "Stellar" | "StellarTestnet" | "Sui" | "SuiTestnet" | "Tezos" | "TezosGhostnet" | "TempoAndantino" | "Tsc" | "TscTestnet1" | "Ton" | "TonTestnet" | "Tron" | "TronNile" | "Westend" | "WestendAssetHub" | "XrpLedger" | "XrpLedgerTestnet";
6268
- /** The user (including Service Accounts) who requested this transfer. */
6685
+ /** The user who initiated the request. */
6269
6686
  requester: {
6270
- /** The id of the user who requested this transfer. */
6687
+ /** User id. */
6271
6688
  userId: string;
6272
- /** The id of the token used to authenticate the user. */
6689
+ /** Token id. */
6273
6690
  tokenId?: string | undefined;
6274
6691
  };
6275
6692
  requestBody: {
@@ -6278,8 +6695,8 @@ export type ListApprovalsResponse = {
6278
6695
  to: string;
6279
6696
  /** The amount of native tokens to transfer in minimum denomination. */
6280
6697
  amount: string;
6281
- /** The memo or destination tag. `Algorand`, `Cosmos`, `Hedera`, `Stellar`, `TON`, `XrpLedger` support `memo`. Not valid for other networks. */
6282
- memo?: string | undefined;
6698
+ /** The memo or destination tag (supported networks only). */
6699
+ memo?: (string | "") | undefined;
6283
6700
  /** 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](https://docs.dfns.co/api-reference/networks/estimate-fees) API to calculate the transfer fees. When not specified, defaults to `Standard` priority. */
6284
6701
  priority?: ("Slow" | "Standard" | "Fast") | undefined;
6285
6702
  /** 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. */
@@ -6307,15 +6724,13 @@ export type ListApprovalsResponse = {
6307
6724
  /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
6308
6725
  feeSponsorId?: string | undefined;
6309
6726
  } | {
6310
- kind: "Asa";
6311
- /** The token asset id. */
6312
- assetId: string;
6727
+ kind: "Aip21";
6728
+ /** The asset metadata address. */
6729
+ metadata: string;
6313
6730
  /** The destination address. */
6314
6731
  to: string;
6315
6732
  /** The amount of tokens to transfer in minimum denomination. */
6316
6733
  amount: string;
6317
- /** The memo. */
6318
- memo?: string | undefined;
6319
6734
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
6320
6735
  externalId?: string | undefined;
6321
6736
  /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
@@ -6335,13 +6750,15 @@ export type ListApprovalsResponse = {
6335
6750
  /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
6336
6751
  feeSponsorId?: string | undefined;
6337
6752
  } | {
6338
- kind: "Aip21";
6339
- /** The asset metadata address. */
6340
- metadata: string;
6753
+ kind: "Asa";
6754
+ /** The token asset id. */
6755
+ assetId: string;
6341
6756
  /** The destination address. */
6342
6757
  to: string;
6343
6758
  /** The amount of tokens to transfer in minimum denomination. */
6344
6759
  amount: string;
6760
+ /** The memo. */
6761
+ memo?: (string | "") | undefined;
6345
6762
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
6346
6763
  externalId?: string | undefined;
6347
6764
  /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
@@ -6442,6 +6859,34 @@ export type ListApprovalsResponse = {
6442
6859
  }) | undefined;
6443
6860
  /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
6444
6861
  feeSponsorId?: string | undefined;
6862
+ } | {
6863
+ kind: "Cis7";
6864
+ /** The destination address. */
6865
+ to: string;
6866
+ /** The amount of tokens to transfer in minimum denomination. */
6867
+ amount: string;
6868
+ /** The Cis7 token identifier. */
6869
+ tokenId: string;
6870
+ /** The memo or destination tag. */
6871
+ memo?: (string | "") | undefined;
6872
+ /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
6873
+ externalId?: string | undefined;
6874
+ /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
6875
+ travelRule?: ({
6876
+ kind: "Notabene";
6877
+ beneficiaryVASPdid?: string | undefined;
6878
+ beneficiaryProof?: {
6879
+ [x: string]: any;
6880
+ } | undefined;
6881
+ originator: {
6882
+ [x: string]: any;
6883
+ };
6884
+ beneficiary: {
6885
+ [x: string]: any;
6886
+ };
6887
+ }) | undefined;
6888
+ /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
6889
+ feeSponsorId?: string | undefined;
6445
6890
  } | {
6446
6891
  kind: "Coin";
6447
6892
  /** The coin identifier. */
@@ -6532,7 +6977,7 @@ export type ListApprovalsResponse = {
6532
6977
  /** The destination address. */
6533
6978
  to: string;
6534
6979
  /** The memo. */
6535
- memo?: string | undefined;
6980
+ memo?: (string | "") | undefined;
6536
6981
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
6537
6982
  externalId?: string | undefined;
6538
6983
  /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
@@ -6560,7 +7005,7 @@ export type ListApprovalsResponse = {
6560
7005
  /** The amount of tokens to transfer in minimum denomination. */
6561
7006
  amount: string;
6562
7007
  /** The memo. */
6563
- memo?: string | undefined;
7008
+ memo?: (string | "") | undefined;
6564
7009
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
6565
7010
  externalId?: string | undefined;
6566
7011
  /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
@@ -6580,14 +7025,16 @@ export type ListApprovalsResponse = {
6580
7025
  /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
6581
7026
  feeSponsorId?: string | undefined;
6582
7027
  } | {
6583
- kind: "Cis7";
7028
+ kind: "Iou";
7029
+ /** The IOU currency code. */
7030
+ currency: string;
7031
+ /** The IOU issuer address. */
7032
+ issuer: string;
6584
7033
  /** The destination address. */
6585
7034
  to: string;
6586
7035
  /** The amount of tokens to transfer in minimum denomination. */
6587
7036
  amount: string;
6588
- /** The Cis7 token identifier. */
6589
- tokenId: string;
6590
- /** The memo or destination tag. */
7037
+ /** The memo or destination tag for XRPL transactions. */
6591
7038
  memo?: string | undefined;
6592
7039
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
6593
7040
  externalId?: string | undefined;
@@ -6618,7 +7065,7 @@ export type ListApprovalsResponse = {
6618
7065
  /** The amount of tokens to transfer in minimum denomination. */
6619
7066
  amount: string;
6620
7067
  /** The memo or destination tag. */
6621
- memo?: string | undefined;
7068
+ memo?: (string | "") | undefined;
6622
7069
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
6623
7070
  externalId?: string | undefined;
6624
7071
  /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
@@ -6726,7 +7173,7 @@ export type ListApprovalsResponse = {
6726
7173
  /** The amount of tokens to transfer in minimum denomination. */
6727
7174
  amount: string;
6728
7175
  /** The memo or destination tag. */
6729
- memo?: string | undefined;
7176
+ memo?: (string | "") | undefined;
6730
7177
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
6731
7178
  externalId?: string | undefined;
6732
7179
  /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
@@ -6823,6 +7270,34 @@ export type ListApprovalsResponse = {
6823
7270
  }) | undefined;
6824
7271
  /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
6825
7272
  feeSponsorId?: string | undefined;
7273
+ } | {
7274
+ kind: "Xls33";
7275
+ /** The XLS-33 issuance identifier. */
7276
+ issuanceId: string;
7277
+ /** The destination address. */
7278
+ to: string;
7279
+ /** The amount of tokens to transfer in minimum denomination. */
7280
+ amount: string;
7281
+ /** The memo or destination tag for XRPL transactions. */
7282
+ memo?: string | undefined;
7283
+ /** A unique ID from your system. It can be leveraged to be used as an idempotency key. (read more [here](https://docs.dfns.co/api-reference/idempotency)) */
7284
+ externalId?: string | undefined;
7285
+ /** A travel rule payload to associate with the transfer. (read more [here](https://docs.dfns.co/features/travel-rule)) */
7286
+ travelRule?: ({
7287
+ kind: "Notabene";
7288
+ beneficiaryVASPdid?: string | undefined;
7289
+ beneficiaryProof?: {
7290
+ [x: string]: any;
7291
+ } | undefined;
7292
+ originator: {
7293
+ [x: string]: any;
7294
+ };
7295
+ beneficiary: {
7296
+ [x: string]: any;
7297
+ };
7298
+ }) | undefined;
7299
+ /** Id of the fee sponsor that will be used to pay for your transfer fees, it might not be available for all blockchains. (read more [here](https://docs.dfns.co/features/fee-sponsors)) */
7300
+ feeSponsorId?: string | undefined;
6826
7301
  };
6827
7302
  /** Additional metadata about the transfered asset. */
6828
7303
  metadata: {
@@ -6839,7 +7314,7 @@ export type ListApprovalsResponse = {
6839
7314
  };
6840
7315
  };
6841
7316
  /** Transfer status.
6842
-
7317
+
6843
7318
  | Status | Definition |
6844
7319
  | --- | --- |
6845
7320
  | `Pending` | The request is pending approval due to a policy applied to the wallet. |
@@ -6867,11 +7342,16 @@ export type ListApprovalsResponse = {
6867
7342
  feeSponsorId?: string | undefined;
6868
7343
  } | undefined;
6869
7344
  transactionRequest?: {
7345
+ /** Transaction id. */
6870
7346
  id: string;
7347
+ /** Wallet id. */
6871
7348
  walletId: string;
6872
7349
  network: "Algorand" | "AlgorandTestnet" | "Aptos" | "AptosTestnet" | "ArbitrumOne" | "ArbitrumGoerli" | "ArbitrumSepolia" | "ArcTestnet" | "AvalancheC" | "AvalancheCFuji" | "Adi" | "AdiTestnet" | "AdiTestnetAb" | "BabylonGenesis" | "BabylonTestnet5" | "Base" | "BaseGoerli" | "BaseSepolia" | "Berachain" | "BerachainBArtio" | "BerachainBepolia" | "Bitcoin" | "BitcoinSignet" | "BitcoinTestnet3" | "BitcoinCash" | "BitcoinCashTestnet" | "Bob" | "BobSepolia" | "Bsc" | "BscTestnet" | "Canton" | "CantonDevnet" | "CantonTestnet" | "Cardano" | "CardanoPreprod" | "Concordium" | "ConcordiumTestnet" | "Celo" | "CeloAlfajores" | "Codex" | "CodexSepolia" | "CosmosHub4" | "CosmosIcsTestnet" | "Dogecoin" | "DogecoinTestnet" | "Ethereum" | "EthereumClassic" | "EthereumClassicMordor" | "EthereumGoerli" | "EthereumSepolia" | "EthereumHolesky" | "EthereumHoodi" | "FantomOpera" | "FantomTestnet" | "FlareC" | "FlareCCoston2" | "FlowEvm" | "FlowEvmTestnet" | "Hedera" | "HederaTestnet" | "Ink" | "InkSepolia" | "InternetComputer" | "Ion" | "IonTestnet" | "Iota" | "IotaTestnet" | "IotaZodianet" | "Kaspa" | "KaspaTestnet11" | "Kusama" | "KusamaAssetHub" | "Litecoin" | "LitecoinTestnet" | "Near" | "NearTestnet" | "Optimism" | "OptimismGoerli" | "OptimismSepolia" | "Origyn" | "Plasma" | "PlasmaTestnet" | "Plume" | "PlumeSepolia" | "Paseo" | "PaseoAssetHub" | "Polkadot" | "PolkadotAssetHub" | "Polygon" | "PolygonAmoy" | "PolygonMumbai" | "Polymesh" | "PolymeshTestnet" | "Race" | "RaceSepolia" | "SeiAtlantic2" | "SeiPacific1" | "Solana" | "SolanaDevnet" | "Sonic" | "SonicTestnet" | "Starknet" | "StarknetSepolia" | "Stellar" | "StellarTestnet" | "Sui" | "SuiTestnet" | "Tezos" | "TezosGhostnet" | "TempoAndantino" | "Tsc" | "TscTestnet1" | "Ton" | "TonTestnet" | "Tron" | "TronNile" | "Westend" | "WestendAssetHub" | "XrpLedger" | "XrpLedgerTestnet";
7350
+ /** The user who initiated the request. */
6873
7351
  requester: {
7352
+ /** User id. */
6874
7353
  userId: string;
7354
+ /** Token id. */
6875
7355
  tokenId?: string | undefined;
6876
7356
  };
6877
7357
  requestBody: {
@@ -6949,7 +7429,7 @@ export type ListApprovalsResponse = {
6949
7429
  externalId?: string | undefined;
6950
7430
  } | {
6951
7431
  kind: "CancelTransaction";
6952
- txHash: string;
7432
+ txHash?: string | undefined;
6953
7433
  signedTx: string;
6954
7434
  /** A unique ID from your system. It can be leveraged to be used as an idempotency key (read more [here](https://docs.dfns.co/api-reference/idempotency)). */
6955
7435
  externalId?: string | undefined;
@@ -6972,10 +7452,15 @@ export type ListApprovalsResponse = {
6972
7452
  externalId?: string | undefined;
6973
7453
  } | undefined;
6974
7454
  signatureRequest?: {
7455
+ /** Signature id. */
6975
7456
  id: string;
7457
+ /** Key id. */
6976
7458
  keyId: string;
7459
+ /** The user who initiated the request. */
6977
7460
  requester: {
7461
+ /** User id. */
6978
7462
  userId: string;
7463
+ /** Token id. */
6979
7464
  tokenId?: string | undefined;
6980
7465
  };
6981
7466
  requestBody: {
@@ -7105,7 +7590,7 @@ export type ListApprovalsResponse = {
7105
7590
  } | {
7106
7591
  kind: "SignerPayload";
7107
7592
  /** The unsigned Signer Payload formatted as JSON, or as a serialized hex-encoded buffer.
7108
-
7593
+
7109
7594
  Please refer to the original Polkadot definition for more details: [SignerPayloadJson](https://github.com/polkadot-js/api/blob/v16.2.2/packages/types/src/types/extrinsic.ts#L32). Note that additional fields will be rejected.
7110
7595
 
7111
7596
  | Field | Description | Type - Optional |
@@ -7274,10 +7759,11 @@ export type ListApprovalsResponse = {
7274
7759
  amount: string;
7275
7760
  };
7276
7761
  } | {};
7762
+ /** The user who initiated the request. */
7277
7763
  requester: {
7278
- /** User (could be a service account) who requested the resource. */
7764
+ /** User id. */
7279
7765
  userId: string;
7280
- /** Service Account token or Personal Access token used when requesting the resource. */
7766
+ /** Token id. */
7281
7767
  tokenId?: string | undefined;
7282
7768
  };
7283
7769
  } | undefined;
@@ -7763,6 +8249,46 @@ export type ListApprovalsResponse = {
7763
8249
  tos: string[];
7764
8250
  value: string;
7765
8251
  fee?: string | undefined;
8252
+ } | {
8253
+ walletId: string;
8254
+ direction: "In" | "Out";
8255
+ network: "Algorand" | "AlgorandTestnet" | "Aptos" | "AptosTestnet" | "ArbitrumOne" | "ArbitrumGoerli" | "ArbitrumSepolia" | "ArcTestnet" | "AvalancheC" | "AvalancheCFuji" | "Adi" | "AdiTestnet" | "AdiTestnetAb" | "BabylonGenesis" | "BabylonTestnet5" | "Base" | "BaseGoerli" | "BaseSepolia" | "Berachain" | "BerachainBArtio" | "BerachainBepolia" | "Bitcoin" | "BitcoinSignet" | "BitcoinTestnet3" | "BitcoinCash" | "BitcoinCashTestnet" | "Bob" | "BobSepolia" | "Bsc" | "BscTestnet" | "Canton" | "CantonDevnet" | "CantonTestnet" | "Cardano" | "CardanoPreprod" | "Concordium" | "ConcordiumTestnet" | "Celo" | "CeloAlfajores" | "Codex" | "CodexSepolia" | "CosmosHub4" | "CosmosIcsTestnet" | "Dogecoin" | "DogecoinTestnet" | "Ethereum" | "EthereumClassic" | "EthereumClassicMordor" | "EthereumGoerli" | "EthereumSepolia" | "EthereumHolesky" | "EthereumHoodi" | "FantomOpera" | "FantomTestnet" | "FlareC" | "FlareCCoston2" | "FlowEvm" | "FlowEvmTestnet" | "Hedera" | "HederaTestnet" | "Ink" | "InkSepolia" | "InternetComputer" | "Ion" | "IonTestnet" | "Iota" | "IotaTestnet" | "IotaZodianet" | "Kaspa" | "KaspaTestnet11" | "Kusama" | "KusamaAssetHub" | "Litecoin" | "LitecoinTestnet" | "Near" | "NearTestnet" | "Optimism" | "OptimismGoerli" | "OptimismSepolia" | "Origyn" | "Plasma" | "PlasmaTestnet" | "Plume" | "PlumeSepolia" | "Paseo" | "PaseoAssetHub" | "Polkadot" | "PolkadotAssetHub" | "Polygon" | "PolygonAmoy" | "PolygonMumbai" | "Polymesh" | "PolymeshTestnet" | "Race" | "RaceSepolia" | "SeiAtlantic2" | "SeiPacific1" | "Solana" | "SolanaDevnet" | "Sonic" | "SonicTestnet" | "Starknet" | "StarknetSepolia" | "Stellar" | "StellarTestnet" | "Sui" | "SuiTestnet" | "Tezos" | "TezosGhostnet" | "TempoAndantino" | "Tsc" | "TscTestnet1" | "Ton" | "TonTestnet" | "Tron" | "TronNile" | "Westend" | "WestendAssetHub" | "XrpLedger" | "XrpLedgerTestnet";
8256
+ blockNumber: number;
8257
+ txHash: string;
8258
+ index?: string | undefined;
8259
+ timestamp: string;
8260
+ metadata: {
8261
+ asset: {
8262
+ symbol?: string | undefined;
8263
+ /** Number of decimals used by the asset, see [this guide](https://docs.dfns.co/guides/developers/displaying-balances) for more details. */
8264
+ decimals?: number | undefined;
8265
+ /** Whether the asset is verified by DFNS as legitimate. */
8266
+ verified?: boolean | undefined;
8267
+ /** Corresponding asset price in USD at the time of transfer. */
8268
+ quotes?: {
8269
+ [x: string]: number;
8270
+ } | undefined;
8271
+ };
8272
+ fee?: {
8273
+ symbol?: string | undefined;
8274
+ /** Number of decimals used by the asset, see [this guide](https://docs.dfns.co/guides/developers/displaying-balances) for more details. */
8275
+ decimals?: number | undefined;
8276
+ /** Whether the asset is verified by DFNS as legitimate. */
8277
+ verified?: boolean | undefined;
8278
+ /** Corresponding asset price in USD at the time of transfer. */
8279
+ quotes?: {
8280
+ [x: string]: number;
8281
+ } | undefined;
8282
+ } | undefined;
8283
+ };
8284
+ kind: "IouTransfer";
8285
+ currency: string;
8286
+ issuer: string;
8287
+ from?: string | undefined;
8288
+ to?: string | undefined;
8289
+ value: string;
8290
+ fee?: string | undefined;
8291
+ memo?: string | undefined;
7766
8292
  } | {
7767
8293
  walletId: string;
7768
8294
  direction: "In" | "Out";
@@ -7801,6 +8327,45 @@ export type ListApprovalsResponse = {
7801
8327
  tos?: string[] | undefined;
7802
8328
  value: string;
7803
8329
  fee?: string | undefined;
8330
+ } | {
8331
+ walletId: string;
8332
+ direction: "In" | "Out";
8333
+ network: "Algorand" | "AlgorandTestnet" | "Aptos" | "AptosTestnet" | "ArbitrumOne" | "ArbitrumGoerli" | "ArbitrumSepolia" | "ArcTestnet" | "AvalancheC" | "AvalancheCFuji" | "Adi" | "AdiTestnet" | "AdiTestnetAb" | "BabylonGenesis" | "BabylonTestnet5" | "Base" | "BaseGoerli" | "BaseSepolia" | "Berachain" | "BerachainBArtio" | "BerachainBepolia" | "Bitcoin" | "BitcoinSignet" | "BitcoinTestnet3" | "BitcoinCash" | "BitcoinCashTestnet" | "Bob" | "BobSepolia" | "Bsc" | "BscTestnet" | "Canton" | "CantonDevnet" | "CantonTestnet" | "Cardano" | "CardanoPreprod" | "Concordium" | "ConcordiumTestnet" | "Celo" | "CeloAlfajores" | "Codex" | "CodexSepolia" | "CosmosHub4" | "CosmosIcsTestnet" | "Dogecoin" | "DogecoinTestnet" | "Ethereum" | "EthereumClassic" | "EthereumClassicMordor" | "EthereumGoerli" | "EthereumSepolia" | "EthereumHolesky" | "EthereumHoodi" | "FantomOpera" | "FantomTestnet" | "FlareC" | "FlareCCoston2" | "FlowEvm" | "FlowEvmTestnet" | "Hedera" | "HederaTestnet" | "Ink" | "InkSepolia" | "InternetComputer" | "Ion" | "IonTestnet" | "Iota" | "IotaTestnet" | "IotaZodianet" | "Kaspa" | "KaspaTestnet11" | "Kusama" | "KusamaAssetHub" | "Litecoin" | "LitecoinTestnet" | "Near" | "NearTestnet" | "Optimism" | "OptimismGoerli" | "OptimismSepolia" | "Origyn" | "Plasma" | "PlasmaTestnet" | "Plume" | "PlumeSepolia" | "Paseo" | "PaseoAssetHub" | "Polkadot" | "PolkadotAssetHub" | "Polygon" | "PolygonAmoy" | "PolygonMumbai" | "Polymesh" | "PolymeshTestnet" | "Race" | "RaceSepolia" | "SeiAtlantic2" | "SeiPacific1" | "Solana" | "SolanaDevnet" | "Sonic" | "SonicTestnet" | "Starknet" | "StarknetSepolia" | "Stellar" | "StellarTestnet" | "Sui" | "SuiTestnet" | "Tezos" | "TezosGhostnet" | "TempoAndantino" | "Tsc" | "TscTestnet1" | "Ton" | "TonTestnet" | "Tron" | "TronNile" | "Westend" | "WestendAssetHub" | "XrpLedger" | "XrpLedgerTestnet";
8334
+ blockNumber: number;
8335
+ txHash: string;
8336
+ index?: string | undefined;
8337
+ timestamp: string;
8338
+ metadata: {
8339
+ asset: {
8340
+ symbol?: string | undefined;
8341
+ /** Number of decimals used by the asset, see [this guide](https://docs.dfns.co/guides/developers/displaying-balances) for more details. */
8342
+ decimals?: number | undefined;
8343
+ /** Whether the asset is verified by DFNS as legitimate. */
8344
+ verified?: boolean | undefined;
8345
+ /** Corresponding asset price in USD at the time of transfer. */
8346
+ quotes?: {
8347
+ [x: string]: number;
8348
+ } | undefined;
8349
+ };
8350
+ fee?: {
8351
+ symbol?: string | undefined;
8352
+ /** Number of decimals used by the asset, see [this guide](https://docs.dfns.co/guides/developers/displaying-balances) for more details. */
8353
+ decimals?: number | undefined;
8354
+ /** Whether the asset is verified by DFNS as legitimate. */
8355
+ verified?: boolean | undefined;
8356
+ /** Corresponding asset price in USD at the time of transfer. */
8357
+ quotes?: {
8358
+ [x: string]: number;
8359
+ } | undefined;
8360
+ } | undefined;
8361
+ };
8362
+ kind: "Xls33Transfer";
8363
+ issuanceId: string;
8364
+ from?: string | undefined;
8365
+ to?: string | undefined;
8366
+ value: string;
8367
+ fee?: string | undefined;
8368
+ memo?: string | undefined;
7804
8369
  } | {
7805
8370
  walletId: string;
7806
8371
  direction: "In" | "Out";
@@ -8151,6 +8716,7 @@ export type ListApprovalsResponse = {
8151
8716
  kind: "Policies:Modify";
8152
8717
  changeRequest: {
8153
8718
  id: string;
8719
+ /** The user who initiated the change request. */
8154
8720
  requester: {
8155
8721
  userId: string;
8156
8722
  tokenId?: string | undefined;
@@ -8392,6 +8958,22 @@ export type ListApprovalsResponse = {
8392
8958
  skipChainalysisFailure: boolean;
8393
8959
  };
8394
8960
  };
8961
+ } | {
8962
+ kind: "GlobalLedgerTransactionPrescreening";
8963
+ configuration: {
8964
+ /** Risk score threshold (0-100). Policy triggers if address/transaction risk score >= threshold */
8965
+ riskScoreThreshold: number;
8966
+ fallbackBehaviours: {
8967
+ /** skip all wallet requests that cannot be screened (eg. raw signatures) */
8968
+ skipUnscreenableTransaction: boolean;
8969
+ /** skip transfer requests to a network not supported yet in our GlobalLedger integration */
8970
+ skipUnsupportedNetwork: boolean;
8971
+ /** skip transfer requests of an asset not supported by our GlobalLedger integration */
8972
+ skipUnsupportedAsset: boolean;
8973
+ /** skips any errors from GlobalLedger API request */
8974
+ skipGlobalLedgerFailure: boolean;
8975
+ };
8976
+ };
8395
8977
  } | {
8396
8978
  kind: "TravelRuleTransactionPrescreening";
8397
8979
  configuration: {
@@ -8478,6 +9060,7 @@ export type ListApprovalsResponse = {
8478
9060
  kind: "Permissions:Modify";
8479
9061
  changeRequest: {
8480
9062
  id: string;
9063
+ /** The user who initiated the change request. */
8481
9064
  requester: {
8482
9065
  userId: string;
8483
9066
  tokenId?: string | undefined;
@@ -8503,6 +9086,7 @@ export type ListApprovalsResponse = {
8503
9086
  kind: "Permissions:Assign";
8504
9087
  changeRequest: {
8505
9088
  id: string;
9089
+ /** The user who initiated the change request. */
8506
9090
  requester: {
8507
9091
  userId: string;
8508
9092
  tokenId?: string | undefined;
@@ -8587,6 +9171,7 @@ export type ListApprovalsResponse = {
8587
9171
  policyId: string;
8588
9172
  triggered: boolean;
8589
9173
  reason: string;
9174
+ context?: any | undefined;
8590
9175
  }[];
8591
9176
  decisions: {
8592
9177
  userId: string;
@@ -8835,6 +9420,22 @@ export type ListPoliciesResponse = {
8835
9420
  skipChainalysisFailure: boolean;
8836
9421
  };
8837
9422
  };
9423
+ } | {
9424
+ kind: "GlobalLedgerTransactionPrescreening";
9425
+ configuration: {
9426
+ /** Risk score threshold (0-100). Policy triggers if address/transaction risk score >= threshold */
9427
+ riskScoreThreshold: number;
9428
+ fallbackBehaviours: {
9429
+ /** skip all wallet requests that cannot be screened (eg. raw signatures) */
9430
+ skipUnscreenableTransaction: boolean;
9431
+ /** skip transfer requests to a network not supported yet in our GlobalLedger integration */
9432
+ skipUnsupportedNetwork: boolean;
9433
+ /** skip transfer requests of an asset not supported by our GlobalLedger integration */
9434
+ skipUnsupportedAsset: boolean;
9435
+ /** skips any errors from GlobalLedger API request */
9436
+ skipGlobalLedgerFailure: boolean;
9437
+ };
9438
+ };
8838
9439
  } | {
8839
9440
  kind: "TravelRuleTransactionPrescreening";
8840
9441
  configuration: {
@@ -8918,6 +9519,7 @@ export type ListPoliciesResponse = {
8918
9519
  }) & {
8919
9520
  pendingChangeRequest?: {
8920
9521
  id: string;
9522
+ /** The user who initiated the change request. */
8921
9523
  requester: {
8922
9524
  userId: string;
8923
9525
  tokenId?: string | undefined;
@@ -9159,6 +9761,22 @@ export type ListPoliciesResponse = {
9159
9761
  skipChainalysisFailure: boolean;
9160
9762
  };
9161
9763
  };
9764
+ } | {
9765
+ kind: "GlobalLedgerTransactionPrescreening";
9766
+ configuration: {
9767
+ /** Risk score threshold (0-100). Policy triggers if address/transaction risk score >= threshold */
9768
+ riskScoreThreshold: number;
9769
+ fallbackBehaviours: {
9770
+ /** skip all wallet requests that cannot be screened (eg. raw signatures) */
9771
+ skipUnscreenableTransaction: boolean;
9772
+ /** skip transfer requests to a network not supported yet in our GlobalLedger integration */
9773
+ skipUnsupportedNetwork: boolean;
9774
+ /** skip transfer requests of an asset not supported by our GlobalLedger integration */
9775
+ skipUnsupportedAsset: boolean;
9776
+ /** skips any errors from GlobalLedger API request */
9777
+ skipGlobalLedgerFailure: boolean;
9778
+ };
9779
+ };
9162
9780
  } | {
9163
9781
  kind: "TravelRuleTransactionPrescreening";
9164
9782
  configuration: {
@@ -9452,6 +10070,22 @@ export type UpdatePolicyBody = {
9452
10070
  skipChainalysisFailure: boolean;
9453
10071
  };
9454
10072
  };
10073
+ } | {
10074
+ kind: "GlobalLedgerTransactionPrescreening";
10075
+ configuration: {
10076
+ /** Risk score threshold (0-100). Policy triggers if address/transaction risk score >= threshold */
10077
+ riskScoreThreshold: number;
10078
+ fallbackBehaviours: {
10079
+ /** skip all wallet requests that cannot be screened (eg. raw signatures) */
10080
+ skipUnscreenableTransaction: boolean;
10081
+ /** skip transfer requests to a network not supported yet in our GlobalLedger integration */
10082
+ skipUnsupportedNetwork: boolean;
10083
+ /** skip transfer requests of an asset not supported by our GlobalLedger integration */
10084
+ skipUnsupportedAsset: boolean;
10085
+ /** skips any errors from GlobalLedger API request */
10086
+ skipGlobalLedgerFailure: boolean;
10087
+ };
10088
+ };
9455
10089
  } | {
9456
10090
  kind: "TravelRuleTransactionPrescreening";
9457
10091
  configuration: {
@@ -9761,6 +10395,22 @@ export type UpdatePolicyResponse = {
9761
10395
  skipChainalysisFailure: boolean;
9762
10396
  };
9763
10397
  };
10398
+ } | {
10399
+ kind: "GlobalLedgerTransactionPrescreening";
10400
+ configuration: {
10401
+ /** Risk score threshold (0-100). Policy triggers if address/transaction risk score >= threshold */
10402
+ riskScoreThreshold: number;
10403
+ fallbackBehaviours: {
10404
+ /** skip all wallet requests that cannot be screened (eg. raw signatures) */
10405
+ skipUnscreenableTransaction: boolean;
10406
+ /** skip transfer requests to a network not supported yet in our GlobalLedger integration */
10407
+ skipUnsupportedNetwork: boolean;
10408
+ /** skip transfer requests of an asset not supported by our GlobalLedger integration */
10409
+ skipUnsupportedAsset: boolean;
10410
+ /** skips any errors from GlobalLedger API request */
10411
+ skipGlobalLedgerFailure: boolean;
10412
+ };
10413
+ };
9764
10414
  } | {
9765
10415
  kind: "TravelRuleTransactionPrescreening";
9766
10416
  configuration: {