diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES
index 7c87194e..308d075a 100644
--- a/.openapi-generator/FILES
+++ b/.openapi-generator/FILES
@@ -63,9 +63,11 @@ docs/AddressRegistryTravelRuleProvider.md
docs/AddressRegistryVaultListOrder.md
docs/AddressRegistryVaultOptOutItem.md
docs/AddressReverseLookupResponse.md
+docs/AddressesFilters.md
docs/AlertExposureTypeEnum.md
docs/AlertLevelEnum.md
docs/AllowlistEntry.md
+docs/AllowlistEntryResponse.md
docs/AllowlistEntryStatus.md
docs/AllowlistMetadata.md
docs/AllowlistResponse.md
@@ -259,8 +261,11 @@ docs/CounterpartyGroupsPaginatedResponse.md
docs/CreateAPIUser.md
docs/CreateAddressRequest.md
docs/CreateAddressResponse.md
+docs/CreateAddressesReportRequest.md
docs/CreateAssetsRequest.md
docs/CreateConfigOperationRequest.md
+docs/CreateConnectedAccountRequest.md
+docs/CreateConnectedAccountResponse.md
docs/CreateConnectionRequest.md
docs/CreateConnectionResponse.md
docs/CreateConsoleUser.md
@@ -284,6 +289,7 @@ docs/CreateOrderRequest.md
docs/CreatePayoutRequest.md
docs/CreateQuote.md
docs/CreateQuoteScopeInner.md
+docs/CreateReportResponse.md
docs/CreateSigningKeyDto.md
docs/CreateSigningKeyDtoProofOfOwnership.md
docs/CreateTagRequest.md
@@ -300,6 +306,7 @@ docs/CreateVaultAssetResponse.md
docs/CreateWalletRequest.md
docs/CreateWebhookRequest.md
docs/CreateWorkflowExecutionRequestParamsInner.md
+docs/CreatedConnectedAccountItem.md
docs/CustomRoutingDest.md
docs/DAppAddressConfig.md
docs/DVPSettlement.md
@@ -500,6 +507,7 @@ docs/InternalTransferDestination.md
docs/InternalTransferResponse.md
docs/InternalWalletsApi.md
docs/InvalidParamaterValueError.md
+docs/IssueApiUserPairingTokenResponse.md
docs/JobCreated.md
docs/KeyLinkBetaApi.md
docs/KeysBetaApi.md
@@ -629,7 +637,6 @@ docs/ParameterWithValue.md
docs/ParticipantRelationshipType.md
docs/ParticipantsIdentification.md
docs/ParticipantsIdentificationPolicy.md
-docs/ParticipantsIdentificationSupportedEndpoint.md
docs/PayeeAccount.md
docs/PayeeAccountResponse.md
docs/PayeeAccountType.md
@@ -667,8 +674,8 @@ docs/PolicyAndValidationResponse.md
docs/PolicyCheckResult.md
docs/PolicyCurrency.md
docs/PolicyEditorBetaApi.md
-docs/PolicyEditorV2BetaApi.md
-docs/PolicyMetadata.md
+docs/PolicyEditorV2Api.md
+docs/PolicyMetadataEntry.md
docs/PolicyOperator.md
docs/PolicyResponse.md
docs/PolicyRule.md
@@ -731,6 +738,15 @@ docs/RenameConnectedAccountRequest.md
docs/RenameConnectedAccountResponse.md
docs/RenameCosigner.md
docs/RenameVaultAccountResponse.md
+docs/ReportConflictResponse.md
+docs/ReportJob.md
+docs/ReportJobLinks.md
+docs/ReportJobResponse.md
+docs/ReportListResponse.md
+docs/ReportOutputFormat.md
+docs/ReportStatus.md
+docs/ReportType.md
+docs/ReportsBetaApi.md
docs/ResendByQueryRequest.md
docs/ResendByQueryResponse.md
docs/ResendFailedNotificationsJobStatusResponse.md
@@ -850,6 +866,7 @@ docs/SolanaBlockchainData.md
docs/SolanaConfig.md
docs/SolanaInstruction.md
docs/SolanaInstructionWithValue.md
+docs/SolanaRewardsBreakdown.md
docs/SolanaSimpleCreateParams.md
docs/SourceConfig.md
docs/SourceOfFunds.md
@@ -1021,6 +1038,7 @@ docs/TransactionRequestPriorityFee.md
docs/TransactionResponse.md
docs/TransactionResponseContractCallDecodedData.md
docs/TransactionResponseDestination.md
+docs/TransactionTag.md
docs/TransactionsApi.md
docs/TransferConfigOperation.md
docs/TransferOperationConfigParams.md
@@ -1228,7 +1246,8 @@ src/main/java/com/fireblocks/sdk/api/OnchainDataApi.java
src/main/java/com/fireblocks/sdk/api/OtaBetaApi.java
src/main/java/com/fireblocks/sdk/api/PaymentsPayoutApi.java
src/main/java/com/fireblocks/sdk/api/PolicyEditorBetaApi.java
-src/main/java/com/fireblocks/sdk/api/PolicyEditorV2BetaApi.java
+src/main/java/com/fireblocks/sdk/api/PolicyEditorV2Api.java
+src/main/java/com/fireblocks/sdk/api/ReportsBetaApi.java
src/main/java/com/fireblocks/sdk/api/ResetDeviceApi.java
src/main/java/com/fireblocks/sdk/api/SmartTransferApi.java
src/main/java/com/fireblocks/sdk/api/StakingApi.java
@@ -1304,9 +1323,11 @@ src/main/java/com/fireblocks/sdk/model/AddressRegistryTravelRuleProvider.java
src/main/java/com/fireblocks/sdk/model/AddressRegistryVaultListOrder.java
src/main/java/com/fireblocks/sdk/model/AddressRegistryVaultOptOutItem.java
src/main/java/com/fireblocks/sdk/model/AddressReverseLookupResponse.java
+src/main/java/com/fireblocks/sdk/model/AddressesFilters.java
src/main/java/com/fireblocks/sdk/model/AlertExposureTypeEnum.java
src/main/java/com/fireblocks/sdk/model/AlertLevelEnum.java
src/main/java/com/fireblocks/sdk/model/AllowlistEntry.java
+src/main/java/com/fireblocks/sdk/model/AllowlistEntryResponse.java
src/main/java/com/fireblocks/sdk/model/AllowlistEntryStatus.java
src/main/java/com/fireblocks/sdk/model/AllowlistMetadata.java
src/main/java/com/fireblocks/sdk/model/AllowlistResponse.java
@@ -1489,8 +1510,11 @@ src/main/java/com/fireblocks/sdk/model/CounterpartyGroupsPaginatedResponse.java
src/main/java/com/fireblocks/sdk/model/CreateAPIUser.java
src/main/java/com/fireblocks/sdk/model/CreateAddressRequest.java
src/main/java/com/fireblocks/sdk/model/CreateAddressResponse.java
+src/main/java/com/fireblocks/sdk/model/CreateAddressesReportRequest.java
src/main/java/com/fireblocks/sdk/model/CreateAssetsRequest.java
src/main/java/com/fireblocks/sdk/model/CreateConfigOperationRequest.java
+src/main/java/com/fireblocks/sdk/model/CreateConnectedAccountRequest.java
+src/main/java/com/fireblocks/sdk/model/CreateConnectedAccountResponse.java
src/main/java/com/fireblocks/sdk/model/CreateConnectionRequest.java
src/main/java/com/fireblocks/sdk/model/CreateConnectionResponse.java
src/main/java/com/fireblocks/sdk/model/CreateConsoleUser.java
@@ -1514,6 +1538,7 @@ src/main/java/com/fireblocks/sdk/model/CreateOrderRequest.java
src/main/java/com/fireblocks/sdk/model/CreatePayoutRequest.java
src/main/java/com/fireblocks/sdk/model/CreateQuote.java
src/main/java/com/fireblocks/sdk/model/CreateQuoteScopeInner.java
+src/main/java/com/fireblocks/sdk/model/CreateReportResponse.java
src/main/java/com/fireblocks/sdk/model/CreateSigningKeyDto.java
src/main/java/com/fireblocks/sdk/model/CreateSigningKeyDtoProofOfOwnership.java
src/main/java/com/fireblocks/sdk/model/CreateTagRequest.java
@@ -1530,6 +1555,7 @@ src/main/java/com/fireblocks/sdk/model/CreateVaultAssetResponse.java
src/main/java/com/fireblocks/sdk/model/CreateWalletRequest.java
src/main/java/com/fireblocks/sdk/model/CreateWebhookRequest.java
src/main/java/com/fireblocks/sdk/model/CreateWorkflowExecutionRequestParamsInner.java
+src/main/java/com/fireblocks/sdk/model/CreatedConnectedAccountItem.java
src/main/java/com/fireblocks/sdk/model/CustomRoutingDest.java
src/main/java/com/fireblocks/sdk/model/DAppAddressConfig.java
src/main/java/com/fireblocks/sdk/model/DVPSettlement.java
@@ -1721,6 +1747,7 @@ src/main/java/com/fireblocks/sdk/model/InternalTransferAddress.java
src/main/java/com/fireblocks/sdk/model/InternalTransferDestination.java
src/main/java/com/fireblocks/sdk/model/InternalTransferResponse.java
src/main/java/com/fireblocks/sdk/model/InvalidParamaterValueError.java
+src/main/java/com/fireblocks/sdk/model/IssueApiUserPairingTokenResponse.java
src/main/java/com/fireblocks/sdk/model/JobCreated.java
src/main/java/com/fireblocks/sdk/model/LayerZeroAdapterCreateParams.java
src/main/java/com/fireblocks/sdk/model/LbtPaymentInfo.java
@@ -1843,7 +1870,6 @@ src/main/java/com/fireblocks/sdk/model/ParameterWithValue.java
src/main/java/com/fireblocks/sdk/model/ParticipantRelationshipType.java
src/main/java/com/fireblocks/sdk/model/ParticipantsIdentification.java
src/main/java/com/fireblocks/sdk/model/ParticipantsIdentificationPolicy.java
-src/main/java/com/fireblocks/sdk/model/ParticipantsIdentificationSupportedEndpoint.java
src/main/java/com/fireblocks/sdk/model/PayeeAccount.java
src/main/java/com/fireblocks/sdk/model/PayeeAccountResponse.java
src/main/java/com/fireblocks/sdk/model/PayeeAccountType.java
@@ -1879,7 +1905,7 @@ src/main/java/com/fireblocks/sdk/model/Players.java
src/main/java/com/fireblocks/sdk/model/PolicyAndValidationResponse.java
src/main/java/com/fireblocks/sdk/model/PolicyCheckResult.java
src/main/java/com/fireblocks/sdk/model/PolicyCurrency.java
-src/main/java/com/fireblocks/sdk/model/PolicyMetadata.java
+src/main/java/com/fireblocks/sdk/model/PolicyMetadataEntry.java
src/main/java/com/fireblocks/sdk/model/PolicyOperator.java
src/main/java/com/fireblocks/sdk/model/PolicyResponse.java
src/main/java/com/fireblocks/sdk/model/PolicyRule.java
@@ -1942,6 +1968,14 @@ src/main/java/com/fireblocks/sdk/model/RenameConnectedAccountRequest.java
src/main/java/com/fireblocks/sdk/model/RenameConnectedAccountResponse.java
src/main/java/com/fireblocks/sdk/model/RenameCosigner.java
src/main/java/com/fireblocks/sdk/model/RenameVaultAccountResponse.java
+src/main/java/com/fireblocks/sdk/model/ReportConflictResponse.java
+src/main/java/com/fireblocks/sdk/model/ReportJob.java
+src/main/java/com/fireblocks/sdk/model/ReportJobLinks.java
+src/main/java/com/fireblocks/sdk/model/ReportJobResponse.java
+src/main/java/com/fireblocks/sdk/model/ReportListResponse.java
+src/main/java/com/fireblocks/sdk/model/ReportOutputFormat.java
+src/main/java/com/fireblocks/sdk/model/ReportStatus.java
+src/main/java/com/fireblocks/sdk/model/ReportType.java
src/main/java/com/fireblocks/sdk/model/ResendByQueryRequest.java
src/main/java/com/fireblocks/sdk/model/ResendByQueryResponse.java
src/main/java/com/fireblocks/sdk/model/ResendFailedNotificationsJobStatusResponse.java
@@ -2059,6 +2093,7 @@ src/main/java/com/fireblocks/sdk/model/SolanaBlockchainData.java
src/main/java/com/fireblocks/sdk/model/SolanaConfig.java
src/main/java/com/fireblocks/sdk/model/SolanaInstruction.java
src/main/java/com/fireblocks/sdk/model/SolanaInstructionWithValue.java
+src/main/java/com/fireblocks/sdk/model/SolanaRewardsBreakdown.java
src/main/java/com/fireblocks/sdk/model/SolanaSimpleCreateParams.java
src/main/java/com/fireblocks/sdk/model/SourceConfig.java
src/main/java/com/fireblocks/sdk/model/SourceOfFunds.java
@@ -2225,6 +2260,7 @@ src/main/java/com/fireblocks/sdk/model/TransactionRequestPriorityFee.java
src/main/java/com/fireblocks/sdk/model/TransactionResponse.java
src/main/java/com/fireblocks/sdk/model/TransactionResponseContractCallDecodedData.java
src/main/java/com/fireblocks/sdk/model/TransactionResponseDestination.java
+src/main/java/com/fireblocks/sdk/model/TransactionTag.java
src/main/java/com/fireblocks/sdk/model/TransferConfigOperation.java
src/main/java/com/fireblocks/sdk/model/TransferOperationConfigParams.java
src/main/java/com/fireblocks/sdk/model/TransferOperationExecution.java
@@ -2399,7 +2435,8 @@ src/test/java/com/fireblocks/sdk/api/OnchainDataApiTest.java
src/test/java/com/fireblocks/sdk/api/OtaBetaApiTest.java
src/test/java/com/fireblocks/sdk/api/PaymentsPayoutApiTest.java
src/test/java/com/fireblocks/sdk/api/PolicyEditorBetaApiTest.java
-src/test/java/com/fireblocks/sdk/api/PolicyEditorV2BetaApiTest.java
+src/test/java/com/fireblocks/sdk/api/PolicyEditorV2ApiTest.java
+src/test/java/com/fireblocks/sdk/api/ReportsBetaApiTest.java
src/test/java/com/fireblocks/sdk/api/ResetDeviceApiTest.java
src/test/java/com/fireblocks/sdk/api/SmartTransferApiTest.java
src/test/java/com/fireblocks/sdk/api/StakingApiTest.java
@@ -2474,8 +2511,10 @@ src/test/java/com/fireblocks/sdk/model/AddressRegistryTravelRuleProviderTest.jav
src/test/java/com/fireblocks/sdk/model/AddressRegistryVaultListOrderTest.java
src/test/java/com/fireblocks/sdk/model/AddressRegistryVaultOptOutItemTest.java
src/test/java/com/fireblocks/sdk/model/AddressReverseLookupResponseTest.java
+src/test/java/com/fireblocks/sdk/model/AddressesFiltersTest.java
src/test/java/com/fireblocks/sdk/model/AlertExposureTypeEnumTest.java
src/test/java/com/fireblocks/sdk/model/AlertLevelEnumTest.java
+src/test/java/com/fireblocks/sdk/model/AllowlistEntryResponseTest.java
src/test/java/com/fireblocks/sdk/model/AllowlistEntryStatusTest.java
src/test/java/com/fireblocks/sdk/model/AllowlistEntryTest.java
src/test/java/com/fireblocks/sdk/model/AllowlistMetadataTest.java
@@ -2659,8 +2698,11 @@ src/test/java/com/fireblocks/sdk/model/CounterpartyGroupsPaginatedResponseTest.j
src/test/java/com/fireblocks/sdk/model/CreateAPIUserTest.java
src/test/java/com/fireblocks/sdk/model/CreateAddressRequestTest.java
src/test/java/com/fireblocks/sdk/model/CreateAddressResponseTest.java
+src/test/java/com/fireblocks/sdk/model/CreateAddressesReportRequestTest.java
src/test/java/com/fireblocks/sdk/model/CreateAssetsRequestTest.java
src/test/java/com/fireblocks/sdk/model/CreateConfigOperationRequestTest.java
+src/test/java/com/fireblocks/sdk/model/CreateConnectedAccountRequestTest.java
+src/test/java/com/fireblocks/sdk/model/CreateConnectedAccountResponseTest.java
src/test/java/com/fireblocks/sdk/model/CreateConnectionRequestTest.java
src/test/java/com/fireblocks/sdk/model/CreateConnectionResponseTest.java
src/test/java/com/fireblocks/sdk/model/CreateConsoleUserTest.java
@@ -2684,6 +2726,7 @@ src/test/java/com/fireblocks/sdk/model/CreateOrderRequestTest.java
src/test/java/com/fireblocks/sdk/model/CreatePayoutRequestTest.java
src/test/java/com/fireblocks/sdk/model/CreateQuoteScopeInnerTest.java
src/test/java/com/fireblocks/sdk/model/CreateQuoteTest.java
+src/test/java/com/fireblocks/sdk/model/CreateReportResponseTest.java
src/test/java/com/fireblocks/sdk/model/CreateSigningKeyDtoProofOfOwnershipTest.java
src/test/java/com/fireblocks/sdk/model/CreateSigningKeyDtoTest.java
src/test/java/com/fireblocks/sdk/model/CreateTagRequestTest.java
@@ -2700,6 +2743,7 @@ src/test/java/com/fireblocks/sdk/model/CreateVaultAssetResponseTest.java
src/test/java/com/fireblocks/sdk/model/CreateWalletRequestTest.java
src/test/java/com/fireblocks/sdk/model/CreateWebhookRequestTest.java
src/test/java/com/fireblocks/sdk/model/CreateWorkflowExecutionRequestParamsInnerTest.java
+src/test/java/com/fireblocks/sdk/model/CreatedConnectedAccountItemTest.java
src/test/java/com/fireblocks/sdk/model/CustomRoutingDestTest.java
src/test/java/com/fireblocks/sdk/model/DAppAddressConfigTest.java
src/test/java/com/fireblocks/sdk/model/DVPSettlementTest.java
@@ -2891,6 +2935,7 @@ src/test/java/com/fireblocks/sdk/model/InternalTransferAddressTest.java
src/test/java/com/fireblocks/sdk/model/InternalTransferDestinationTest.java
src/test/java/com/fireblocks/sdk/model/InternalTransferResponseTest.java
src/test/java/com/fireblocks/sdk/model/InvalidParamaterValueErrorTest.java
+src/test/java/com/fireblocks/sdk/model/IssueApiUserPairingTokenResponseTest.java
src/test/java/com/fireblocks/sdk/model/JobCreatedTest.java
src/test/java/com/fireblocks/sdk/model/LayerZeroAdapterCreateParamsTest.java
src/test/java/com/fireblocks/sdk/model/LbtPaymentInfoTest.java
@@ -3012,7 +3057,6 @@ src/test/java/com/fireblocks/sdk/model/ParameterTest.java
src/test/java/com/fireblocks/sdk/model/ParameterWithValueTest.java
src/test/java/com/fireblocks/sdk/model/ParticipantRelationshipTypeTest.java
src/test/java/com/fireblocks/sdk/model/ParticipantsIdentificationPolicyTest.java
-src/test/java/com/fireblocks/sdk/model/ParticipantsIdentificationSupportedEndpointTest.java
src/test/java/com/fireblocks/sdk/model/ParticipantsIdentificationTest.java
src/test/java/com/fireblocks/sdk/model/PayeeAccountResponseTest.java
src/test/java/com/fireblocks/sdk/model/PayeeAccountTest.java
@@ -3049,7 +3093,7 @@ src/test/java/com/fireblocks/sdk/model/PlayersTest.java
src/test/java/com/fireblocks/sdk/model/PolicyAndValidationResponseTest.java
src/test/java/com/fireblocks/sdk/model/PolicyCheckResultTest.java
src/test/java/com/fireblocks/sdk/model/PolicyCurrencyTest.java
-src/test/java/com/fireblocks/sdk/model/PolicyMetadataTest.java
+src/test/java/com/fireblocks/sdk/model/PolicyMetadataEntryTest.java
src/test/java/com/fireblocks/sdk/model/PolicyOperatorTest.java
src/test/java/com/fireblocks/sdk/model/PolicyResponseTest.java
src/test/java/com/fireblocks/sdk/model/PolicyRuleCheckResultTest.java
@@ -3112,6 +3156,14 @@ src/test/java/com/fireblocks/sdk/model/RenameConnectedAccountRequestTest.java
src/test/java/com/fireblocks/sdk/model/RenameConnectedAccountResponseTest.java
src/test/java/com/fireblocks/sdk/model/RenameCosignerTest.java
src/test/java/com/fireblocks/sdk/model/RenameVaultAccountResponseTest.java
+src/test/java/com/fireblocks/sdk/model/ReportConflictResponseTest.java
+src/test/java/com/fireblocks/sdk/model/ReportJobLinksTest.java
+src/test/java/com/fireblocks/sdk/model/ReportJobResponseTest.java
+src/test/java/com/fireblocks/sdk/model/ReportJobTest.java
+src/test/java/com/fireblocks/sdk/model/ReportListResponseTest.java
+src/test/java/com/fireblocks/sdk/model/ReportOutputFormatTest.java
+src/test/java/com/fireblocks/sdk/model/ReportStatusTest.java
+src/test/java/com/fireblocks/sdk/model/ReportTypeTest.java
src/test/java/com/fireblocks/sdk/model/ResendByQueryRequestTest.java
src/test/java/com/fireblocks/sdk/model/ResendByQueryResponseTest.java
src/test/java/com/fireblocks/sdk/model/ResendFailedNotificationsJobStatusResponseTest.java
@@ -3229,6 +3281,7 @@ src/test/java/com/fireblocks/sdk/model/SolanaBlockchainDataTest.java
src/test/java/com/fireblocks/sdk/model/SolanaConfigTest.java
src/test/java/com/fireblocks/sdk/model/SolanaInstructionTest.java
src/test/java/com/fireblocks/sdk/model/SolanaInstructionWithValueTest.java
+src/test/java/com/fireblocks/sdk/model/SolanaRewardsBreakdownTest.java
src/test/java/com/fireblocks/sdk/model/SolanaSimpleCreateParamsTest.java
src/test/java/com/fireblocks/sdk/model/SourceConfigTest.java
src/test/java/com/fireblocks/sdk/model/SourceOfFundsTest.java
@@ -3394,6 +3447,7 @@ src/test/java/com/fireblocks/sdk/model/TransactionRequestTest.java
src/test/java/com/fireblocks/sdk/model/TransactionResponseContractCallDecodedDataTest.java
src/test/java/com/fireblocks/sdk/model/TransactionResponseDestinationTest.java
src/test/java/com/fireblocks/sdk/model/TransactionResponseTest.java
+src/test/java/com/fireblocks/sdk/model/TransactionTagTest.java
src/test/java/com/fireblocks/sdk/model/TransactionTest.java
src/test/java/com/fireblocks/sdk/model/TransferConfigOperationTest.java
src/test/java/com/fireblocks/sdk/model/TransferOperationConfigParamsTest.java
diff --git a/CHANGELOG.md b/CHANGELOG.md
deleted file mode 100644
index 69534384..00000000
--- a/CHANGELOG.md
+++ /dev/null
@@ -1,239 +0,0 @@
-# Changelog
-
-All notable changes to this project will be documented in this file.
-
-The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
-and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
-
-## [v21.0.0](https://github.com/fireblocks/java-sdk/compare/v15.0.0...v21.0.0) - 2026-06-11
-
-### Merged
-
-- Generated SDK #5364 [`#137`](https://github.com/fireblocks/java-sdk/pull/137)
-
-## [v15.0.0](https://github.com/fireblocks/java-sdk/compare/v14.1.0...v15.0.0) - 2026-03-15
-
-### Merged
-
-- Generated SDK #3733 (major) [`#128`](https://github.com/fireblocks/java-sdk/pull/128)
-
-## [v14.1.0](https://github.com/fireblocks/java-sdk/compare/v14.0.0...v14.1.0) - 2026-02-26
-
-### Merged
-
-- Generated SDK #2167 [`#126`](https://github.com/fireblocks/java-sdk/pull/126)
-
-## [v14.0.0](https://github.com/fireblocks/java-sdk/compare/v13.0.0...v14.0.0) - 2026-02-03
-
-### Merged
-
-- Generated SDK #4746 [`#121`](https://github.com/fireblocks/java-sdk/pull/121)
-
-## [v13.0.0](https://github.com/fireblocks/java-sdk/compare/v12.1.3...v13.0.0) - 2025-11-13
-
-### Merged
-
-- Generated SDK #5834 [`#116`](https://github.com/fireblocks/java-sdk/pull/116)
-
-## [v12.1.3](https://github.com/fireblocks/java-sdk/compare/v12.1.2...v12.1.3) - 2025-10-22
-
-### Merged
-
-- Generated SDK #8293 [`#115`](https://github.com/fireblocks/java-sdk/pull/115)
-
-## [v12.1.2](https://github.com/fireblocks/java-sdk/compare/v12.1.1...v12.1.2) - 2025-09-29
-
-### Merged
-
-- Generated SDK #6061 [`#113`](https://github.com/fireblocks/java-sdk/pull/113)
-
-## [v12.1.1](https://github.com/fireblocks/java-sdk/compare/v12.1.0...v12.1.1) - 2025-09-10
-
-### Merged
-
-- Generated SDK #1410 [`#111`](https://github.com/fireblocks/java-sdk/pull/111)
-
-## [v12.1.0](https://github.com/fireblocks/java-sdk/compare/v12.0.0...v12.1.0) - 2025-09-09
-
-### Merged
-
-- Generated SDK #4521 [`#109`](https://github.com/fireblocks/java-sdk/pull/109)
-
-## [v12.0.0](https://github.com/fireblocks/java-sdk/compare/v11.2.0...v12.0.0) - 2025-09-01
-
-### Merged
-
-- Generated SDK #7741 [`#108`](https://github.com/fireblocks/java-sdk/pull/108)
-
-## [v11.2.0](https://github.com/fireblocks/java-sdk/compare/v11.1.0...v11.2.0) - 2025-08-21
-
-### Merged
-
-- Generated SDK #3302 [`#107`](https://github.com/fireblocks/java-sdk/pull/107)
-
-## [v11.1.0](https://github.com/fireblocks/java-sdk/compare/v11.0.0...v11.1.0) - 2025-08-11
-
-### Merged
-
-- Generated SDK #1782 [`#105`](https://github.com/fireblocks/java-sdk/pull/105)
-
-## [v11.0.0](https://github.com/fireblocks/java-sdk/compare/v10.4.0...v11.0.0) - 2025-07-15
-
-### Merged
-
-- Generated SDK #5610 [`#103`](https://github.com/fireblocks/java-sdk/pull/103)
-
-## [v10.4.0](https://github.com/fireblocks/java-sdk/compare/v10.3.0...v10.4.0) - 2025-06-29
-
-### Merged
-
-- Generated SDK #1492 [`#101`](https://github.com/fireblocks/java-sdk/pull/101)
-
-## [v10.3.0](https://github.com/fireblocks/java-sdk/compare/v10.2.0...v10.3.0) - 2025-06-18
-
-### Merged
-
-- Generated SDK #4009 [`#99`](https://github.com/fireblocks/java-sdk/pull/99)
-
-## [v10.2.0](https://github.com/fireblocks/java-sdk/compare/v10.1.1...v10.2.0) - 2025-06-04
-
-### Merged
-
-- Generated SDK #8912 [`#98`](https://github.com/fireblocks/java-sdk/pull/98)
-
-## [v10.1.1](https://github.com/fireblocks/java-sdk/compare/v10.1.0...v10.1.1) - 2025-05-18
-
-### Merged
-
-- Generated SDK #5019 [`#97`](https://github.com/fireblocks/java-sdk/pull/97)
-
-## [v10.1.0](https://github.com/fireblocks/java-sdk/compare/v10.0.2...v10.1.0) - 2025-05-07
-
-### Merged
-
-- Generated SDK #7076 [`#95`](https://github.com/fireblocks/java-sdk/pull/95)
-
-## [v10.0.2](https://github.com/fireblocks/java-sdk/compare/v10.0.1...v10.0.2) - 2025-04-20
-
-### Merged
-
-- Generated SDK #4794 [`#94`](https://github.com/fireblocks/java-sdk/pull/94)
-
-## [v10.0.1](https://github.com/fireblocks/java-sdk/compare/v10.0.0...v10.0.1) - 2025-04-07
-
-### Merged
-
-- Generated SDK #3065 [`#93`](https://github.com/fireblocks/java-sdk/pull/93)
-
-## [v10.0.0](https://github.com/fireblocks/java-sdk/compare/v9.0.0...v10.0.0) - 2025-03-30
-
-### Merged
-
-- Generated SDK #619 [`#90`](https://github.com/fireblocks/java-sdk/pull/90)
-
-## [v9.0.0](https://github.com/fireblocks/java-sdk/compare/v8.1.0...v9.0.0) - 2025-03-17
-
-### Merged
-
-- Generated SDK #645 [`#89`](https://github.com/fireblocks/java-sdk/pull/89)
-
-## [v8.1.0](https://github.com/fireblocks/java-sdk/compare/v8.0.1...v8.1.0) - 2025-02-24
-
-### Merged
-
-- Generated SDK #9833 [`#84`](https://github.com/fireblocks/java-sdk/pull/84)
-
-## [v8.0.1](https://github.com/fireblocks/java-sdk/compare/v8.0.0...v8.0.1) - 2025-02-12
-
-### Merged
-
-- Generated SDK #4262 [`#82`](https://github.com/fireblocks/java-sdk/pull/82)
-
-## [v8.0.0](https://github.com/fireblocks/java-sdk/compare/v7.0.0...v8.0.0) - 2025-02-02
-
-### Merged
-
-- Generated SDK #538 [`#80`](https://github.com/fireblocks/java-sdk/pull/80)
-
-## [v7.0.0](https://github.com/fireblocks/java-sdk/compare/v6.0.0...v7.0.0) - 2025-01-08
-
-### Merged
-
-- Generated SDK #8699 [`#77`](https://github.com/fireblocks/java-sdk/pull/77)
-
-## [v6.0.0](https://github.com/fireblocks/java-sdk/compare/v5.0.0...v6.0.0) - 2024-12-05
-
-### Merged
-
-- Generated SDK #1430 [`#73`](https://github.com/fireblocks/java-sdk/pull/73)
-
-## [v5.0.0](https://github.com/fireblocks/java-sdk/compare/v4.0.0...v5.0.0) - 2024-10-31
-
-### Merged
-
-- Generated SDK #5184 [`#71`](https://github.com/fireblocks/java-sdk/pull/71)
-
-## [v4.0.0](https://github.com/fireblocks/java-sdk/compare/v3.1.0...v4.0.0) - 2024-09-17
-
-### Merged
-
-- Generated SDK #237 [`#70`](https://github.com/fireblocks/java-sdk/pull/70)
-
-## [v3.1.0](https://github.com/fireblocks/java-sdk/compare/v3.0.0...v3.1.0) - 2024-07-25
-
-### Merged
-
-- Generated SDK #6749 [`#67`](https://github.com/fireblocks/java-sdk/pull/67)
-
-## [v3.0.0](https://github.com/fireblocks/java-sdk/compare/v2.1.0...v3.0.0) - 2024-07-17
-
-### Merged
-
-- Generated SDK #6152 [`#65`](https://github.com/fireblocks/java-sdk/pull/65)
-- Generated SDK #7984 [`#62`](https://github.com/fireblocks/java-sdk/pull/62)
-- Generated SDK #2873 [`#61`](https://github.com/fireblocks/java-sdk/pull/61)
-
-## [v2.1.0](https://github.com/fireblocks/java-sdk/compare/v2.0.1...v2.1.0) - 2024-06-04
-
-### Merged
-
-- Generated SDK for version COR-46191/fix_pipelines [`#24`](https://github.com/fireblocks/java-sdk/pull/24)
-- Generated SDK for version COR-46191/fix_pipelines [`#23`](https://github.com/fireblocks/java-sdk/pull/23)
-- Generated SDK for version COR-46191/fix_pipelines [`#22`](https://github.com/fireblocks/java-sdk/pull/22)
-- Generated SDK for version COR-46191/fix_pipelines [`#21`](https://github.com/fireblocks/java-sdk/pull/21)
-
-## [v2.0.1](https://github.com/fireblocks/java-sdk/compare/v2.0.0...v2.0.1) - 2024-06-04
-
-### Merged
-
-- Generated SDK for version COR-46191/fix_pipelines [`#20`](https://github.com/fireblocks/java-sdk/pull/20)
-
-## [v2.0.0](https://github.com/fireblocks/java-sdk/compare/v1.1.0...v2.0.0) - 2024-05-08
-
-### Merged
-
-- feat: add tokenization api [`#12`](https://github.com/fireblocks/java-sdk/pull/12)
-
-## [v1.1.0](https://github.com/fireblocks/java-sdk/compare/v1.0.1...v1.1.0) - 2024-04-17
-
-### Merged
-
-- feat: add cosigners beta api [`#11`](https://github.com/fireblocks/java-sdk/pull/11)
-- fix: fix readme doc headline [`#10`](https://github.com/fireblocks/java-sdk/pull/10)
-
-## [v1.0.1](https://github.com/fireblocks/java-sdk/compare/v1.0.0...v1.0.1) - 2024-04-07
-
-### Merged
-
-- Generated SDK for version v1.0.1 [`#9`](https://github.com/fireblocks/java-sdk/pull/9)
-
-## v1.0.0 - 2024-04-07
-
-### Merged
-
-- Generated SDK for version v1.0.0 GA [`#8`](https://github.com/fireblocks/java-sdk/pull/8)
-- v0.0.1-beta [`#6`](https://github.com/fireblocks/java-sdk/pull/6)
-- Update GitHub Actions workflows [`#5`](https://github.com/fireblocks/java-sdk/pull/5)
-- Generated #1189972817 [`#3`](https://github.com/fireblocks/java-sdk/pull/3)
-- Add installation instructions [`#2`](https://github.com/fireblocks/java-sdk/pull/2)
-- Added Idempotency & NCW headers support #6 [`#1`](https://github.com/fireblocks/java-sdk/pull/1)
diff --git a/README.md b/README.md
index 2738d3a3..e35d564d 100644
--- a/README.md
+++ b/README.md
@@ -32,7 +32,7 @@ Add this dependency to your project's POM:
com.fireblocks.sdk
fireblocks-sdk
- 21.0.0
+ 0.0.0
compile
```
@@ -42,7 +42,7 @@ Add this dependency to your project's POM:
Add this dependency to your project's build file:
```groovy
-compile "com.fireblocks.sdk:fireblocks-sdk:21.0.0"
+compile "com.fireblocks.sdk:fireblocks-sdk:0.0.0"
```
### Others
@@ -55,7 +55,7 @@ mvn clean package
Then manually install the following JARs:
-- `target/fireblocks-sdk-21.0.0.jar`
+- `target/fireblocks-sdk-0.0.0.jar`
- `target/lib/*.jar`
@@ -143,6 +143,7 @@ Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*ApiUserApi* | [**createApiUser**](docs/ApiUserApi.md#createApiUser) | **POST** /management/api_users | Create API Key
*ApiUserApi* | [**getApiUsers**](docs/ApiUserApi.md#getApiUsers) | **GET** /management/api_users | Get API Keys
+*ApiUserApi* | [**issueApiUserPairingToken**](docs/ApiUserApi.md#issueApiUserPairingToken) | **POST** /management/api_users/{userId}/pairing_token | Issue API user pairing token
*AuditLogsApi* | [**getAuditLogs**](docs/AuditLogsApi.md#getAuditLogs) | **GET** /management/audit_logs | Get audit logs
*BlockchainsAssetsApi* | [**getAsset**](docs/BlockchainsAssetsApi.md#getAsset) | **GET** /assets/{id} | Get an asset
*BlockchainsAssetsApi* | [**getBlockchain**](docs/BlockchainsAssetsApi.md#getBlockchain) | **GET** /blockchains/{id} | Get a Blockchain by ID
@@ -160,6 +161,7 @@ Class | Method | HTTP request | Description
*ComplianceApi* | [**deactivateArsConfig**](docs/ComplianceApi.md#deactivateArsConfig) | **POST** /screening/ars/config/deactivate | Deactivate ARS (Address Registry Screening)
*ComplianceApi* | [**deactivateByorkConfig**](docs/ComplianceApi.md#deactivateByorkConfig) | **POST** /screening/byork/config/deactivate | Deactivate BYORK Light
*ComplianceApi* | [**deleteCounterpartyGroup**](docs/ComplianceApi.md#deleteCounterpartyGroup) | **DELETE** /counterparty_groups/{groupId} | Delete a counterparty group
+*ComplianceApi* | [**deleteLegalEntity**](docs/ComplianceApi.md#deleteLegalEntity) | **DELETE** /legal_entities/{legalEntityId} | Delete a legal entity
*ComplianceApi* | [**getAddressRegistryTenantParticipationStatus**](docs/ComplianceApi.md#getAddressRegistryTenantParticipationStatus) | **GET** /address_registry/tenant | Get address registry participation status for the authenticated workspace
*ComplianceApi* | [**getAddressRegistryVaultOptOut**](docs/ComplianceApi.md#getAddressRegistryVaultOptOut) | **GET** /address_registry/vaults/{vaultAccountId} | Get whether a vault account is opted out of the address registry
*ComplianceApi* | [**getAmlPostScreeningPolicy**](docs/ComplianceApi.md#getAmlPostScreeningPolicy) | **GET** /screening/aml/post_screening_policy | AML - View Post-Screening Policy
@@ -192,6 +194,7 @@ Class | Method | HTTP request | Description
*ComplianceApi* | [**updateTravelRuleConfig**](docs/ComplianceApi.md#updateTravelRuleConfig) | **PUT** /screening/travel_rule/policy_configuration | Update Travel Rule Configuration
*ComplianceScreeningConfigurationApi* | [**getAmlScreeningConfiguration**](docs/ComplianceScreeningConfigurationApi.md#getAmlScreeningConfiguration) | **GET** /screening/aml/policy_configuration | Get AML Screening Policy Configuration
*ComplianceScreeningConfigurationApi* | [**getScreeningConfiguration**](docs/ComplianceScreeningConfigurationApi.md#getScreeningConfiguration) | **GET** /screening/travel_rule/policy_configuration | Get Travel Rule Screening Policy Configuration
+*ConnectedAccountsBetaApi* | [**createConnectedAccount**](docs/ConnectedAccountsBetaApi.md#createConnectedAccount) | **POST** /connected_accounts | Create a connected account
*ConnectedAccountsBetaApi* | [**disconnectConnectedAccount**](docs/ConnectedAccountsBetaApi.md#disconnectConnectedAccount) | **DELETE** /connected_accounts/{accountId} | Disconnect connected account
*ConnectedAccountsBetaApi* | [**getConnectedAccount**](docs/ConnectedAccountsBetaApi.md#getConnectedAccount) | **GET** /connected_accounts/{accountId} | Get connected account
*ConnectedAccountsBetaApi* | [**getConnectedAccountAllowlist**](docs/ConnectedAccountsBetaApi.md#getConnectedAccountAllowlist) | **GET** /connected_accounts/{accountId}/allowlist | Get allowlist for connected account
@@ -362,10 +365,13 @@ Class | Method | HTTP request | Description
*PolicyEditorBetaApi* | [**publishDraftLegacy**](docs/PolicyEditorBetaApi.md#publishDraftLegacy) | **POST** /tap/draft | Send publish request for a certain draft id
*PolicyEditorBetaApi* | [**publishPolicyRules**](docs/PolicyEditorBetaApi.md#publishPolicyRules) | **POST** /tap/publish | Send publish request for a set of policy rules
*PolicyEditorBetaApi* | [**updateDraftLegacy**](docs/PolicyEditorBetaApi.md#updateDraftLegacy) | **PUT** /tap/draft | Update the draft with a new set of rules
-*PolicyEditorV2BetaApi* | [**getActivePolicy**](docs/PolicyEditorV2BetaApi.md#getActivePolicy) | **GET** /policy/active_policy | Get the active policy and its validation by policy type
-*PolicyEditorV2BetaApi* | [**getDraft**](docs/PolicyEditorV2BetaApi.md#getDraft) | **GET** /policy/draft | Get the active draft by policy type
-*PolicyEditorV2BetaApi* | [**publishDraft**](docs/PolicyEditorV2BetaApi.md#publishDraft) | **POST** /policy/draft | Send publish request for a certain draft id
-*PolicyEditorV2BetaApi* | [**updateDraft**](docs/PolicyEditorV2BetaApi.md#updateDraft) | **PUT** /policy/draft | Update the draft with a new set of rules by policy types
+*PolicyEditorV2Api* | [**getActivePolicy**](docs/PolicyEditorV2Api.md#getActivePolicy) | **GET** /policy/active_policy | Get the active policy and its validation by policy type
+*PolicyEditorV2Api* | [**getDraft**](docs/PolicyEditorV2Api.md#getDraft) | **GET** /policy/draft | Get the active draft by policy type
+*PolicyEditorV2Api* | [**publishDraft**](docs/PolicyEditorV2Api.md#publishDraft) | **POST** /policy/draft | Send publish request for a certain draft id
+*PolicyEditorV2Api* | [**updateDraft**](docs/PolicyEditorV2Api.md#updateDraft) | **PUT** /policy/draft | Update the draft with a new set of rules by policy types
+*ReportsBetaApi* | [**createReport**](docs/ReportsBetaApi.md#createReport) | **POST** /reports | Create a report
+*ReportsBetaApi* | [**getReport**](docs/ReportsBetaApi.md#getReport) | **GET** /reports/{reportId} | Get report status
+*ReportsBetaApi* | [**listReports**](docs/ReportsBetaApi.md#listReports) | **GET** /reports | List reports
*ResetDeviceApi* | [**resetDevice**](docs/ResetDeviceApi.md#resetDevice) | **POST** /management/users/{id}/reset_device | Resets device
*SmartTransferApi* | [**approveDvPTicketTerm**](docs/SmartTransferApi.md#approveDvPTicketTerm) | **PUT** /smart_transfers/{ticketId}/terms/{termId}/dvp/approve | Set funding source and approval
*SmartTransferApi* | [**cancelTicket**](docs/SmartTransferApi.md#cancelTicket) | **PUT** /smart-transfers/{ticketId}/cancel | Cancel Ticket
@@ -403,7 +409,6 @@ Class | Method | HTTP request | Description
*StakingApi* | [**stake**](docs/StakingApi.md#stake) | **POST** /staking/chains/{chainDescriptor}/stake | Initiate or add to existing stake
*StakingApi* | [**unstake**](docs/StakingApi.md#unstake) | **POST** /staking/chains/{chainDescriptor}/unstake | Initiate unstake
*StakingApi* | [**withdraw**](docs/StakingApi.md#withdraw) | **POST** /staking/chains/{chainDescriptor}/withdraw | Withdraw staked funds
-*TagsApi* | [**cancelApprovalRequest**](docs/TagsApi.md#cancelApprovalRequest) | **POST** /tags/approval_requests/{id}/cancel | Cancel an approval request by id
*TagsApi* | [**createTag**](docs/TagsApi.md#createTag) | **POST** /tags | Create a new tag
*TagsApi* | [**deleteTag**](docs/TagsApi.md#deleteTag) | **DELETE** /tags/{tagId} | Delete a tag
*TagsApi* | [**getApprovalRequest**](docs/TagsApi.md#getApprovalRequest) | **GET** /tags/approval_requests/{id} | Get an approval request by id
@@ -630,9 +635,11 @@ Class | Method | HTTP request | Description
- [AddressRegistryVaultListOrder](docs/AddressRegistryVaultListOrder.md)
- [AddressRegistryVaultOptOutItem](docs/AddressRegistryVaultOptOutItem.md)
- [AddressReverseLookupResponse](docs/AddressReverseLookupResponse.md)
+ - [AddressesFilters](docs/AddressesFilters.md)
- [AlertExposureTypeEnum](docs/AlertExposureTypeEnum.md)
- [AlertLevelEnum](docs/AlertLevelEnum.md)
- [AllowlistEntry](docs/AllowlistEntry.md)
+ - [AllowlistEntryResponse](docs/AllowlistEntryResponse.md)
- [AllowlistEntryStatus](docs/AllowlistEntryStatus.md)
- [AllowlistMetadata](docs/AllowlistMetadata.md)
- [AllowlistResponse](docs/AllowlistResponse.md)
@@ -815,8 +822,11 @@ Class | Method | HTTP request | Description
- [CreateAPIUser](docs/CreateAPIUser.md)
- [CreateAddressRequest](docs/CreateAddressRequest.md)
- [CreateAddressResponse](docs/CreateAddressResponse.md)
+ - [CreateAddressesReportRequest](docs/CreateAddressesReportRequest.md)
- [CreateAssetsRequest](docs/CreateAssetsRequest.md)
- [CreateConfigOperationRequest](docs/CreateConfigOperationRequest.md)
+ - [CreateConnectedAccountRequest](docs/CreateConnectedAccountRequest.md)
+ - [CreateConnectedAccountResponse](docs/CreateConnectedAccountResponse.md)
- [CreateConnectionRequest](docs/CreateConnectionRequest.md)
- [CreateConnectionResponse](docs/CreateConnectionResponse.md)
- [CreateConsoleUser](docs/CreateConsoleUser.md)
@@ -840,6 +850,7 @@ Class | Method | HTTP request | Description
- [CreatePayoutRequest](docs/CreatePayoutRequest.md)
- [CreateQuote](docs/CreateQuote.md)
- [CreateQuoteScopeInner](docs/CreateQuoteScopeInner.md)
+ - [CreateReportResponse](docs/CreateReportResponse.md)
- [CreateSigningKeyDto](docs/CreateSigningKeyDto.md)
- [CreateSigningKeyDtoProofOfOwnership](docs/CreateSigningKeyDtoProofOfOwnership.md)
- [CreateTagRequest](docs/CreateTagRequest.md)
@@ -856,6 +867,7 @@ Class | Method | HTTP request | Description
- [CreateWalletRequest](docs/CreateWalletRequest.md)
- [CreateWebhookRequest](docs/CreateWebhookRequest.md)
- [CreateWorkflowExecutionRequestParamsInner](docs/CreateWorkflowExecutionRequestParamsInner.md)
+ - [CreatedConnectedAccountItem](docs/CreatedConnectedAccountItem.md)
- [CustomRoutingDest](docs/CustomRoutingDest.md)
- [DAppAddressConfig](docs/DAppAddressConfig.md)
- [DVPSettlement](docs/DVPSettlement.md)
@@ -1047,6 +1059,7 @@ Class | Method | HTTP request | Description
- [InternalTransferDestination](docs/InternalTransferDestination.md)
- [InternalTransferResponse](docs/InternalTransferResponse.md)
- [InvalidParamaterValueError](docs/InvalidParamaterValueError.md)
+ - [IssueApiUserPairingTokenResponse](docs/IssueApiUserPairingTokenResponse.md)
- [JobCreated](docs/JobCreated.md)
- [LayerZeroAdapterCreateParams](docs/LayerZeroAdapterCreateParams.md)
- [LbtPaymentInfo](docs/LbtPaymentInfo.md)
@@ -1169,7 +1182,6 @@ Class | Method | HTTP request | Description
- [ParticipantRelationshipType](docs/ParticipantRelationshipType.md)
- [ParticipantsIdentification](docs/ParticipantsIdentification.md)
- [ParticipantsIdentificationPolicy](docs/ParticipantsIdentificationPolicy.md)
- - [ParticipantsIdentificationSupportedEndpoint](docs/ParticipantsIdentificationSupportedEndpoint.md)
- [PayeeAccount](docs/PayeeAccount.md)
- [PayeeAccountResponse](docs/PayeeAccountResponse.md)
- [PayeeAccountType](docs/PayeeAccountType.md)
@@ -1205,7 +1217,7 @@ Class | Method | HTTP request | Description
- [PolicyAndValidationResponse](docs/PolicyAndValidationResponse.md)
- [PolicyCheckResult](docs/PolicyCheckResult.md)
- [PolicyCurrency](docs/PolicyCurrency.md)
- - [PolicyMetadata](docs/PolicyMetadata.md)
+ - [PolicyMetadataEntry](docs/PolicyMetadataEntry.md)
- [PolicyOperator](docs/PolicyOperator.md)
- [PolicyResponse](docs/PolicyResponse.md)
- [PolicyRule](docs/PolicyRule.md)
@@ -1268,6 +1280,14 @@ Class | Method | HTTP request | Description
- [RenameConnectedAccountResponse](docs/RenameConnectedAccountResponse.md)
- [RenameCosigner](docs/RenameCosigner.md)
- [RenameVaultAccountResponse](docs/RenameVaultAccountResponse.md)
+ - [ReportConflictResponse](docs/ReportConflictResponse.md)
+ - [ReportJob](docs/ReportJob.md)
+ - [ReportJobLinks](docs/ReportJobLinks.md)
+ - [ReportJobResponse](docs/ReportJobResponse.md)
+ - [ReportListResponse](docs/ReportListResponse.md)
+ - [ReportOutputFormat](docs/ReportOutputFormat.md)
+ - [ReportStatus](docs/ReportStatus.md)
+ - [ReportType](docs/ReportType.md)
- [ResendByQueryRequest](docs/ResendByQueryRequest.md)
- [ResendByQueryResponse](docs/ResendByQueryResponse.md)
- [ResendFailedNotificationsJobStatusResponse](docs/ResendFailedNotificationsJobStatusResponse.md)
@@ -1385,6 +1405,7 @@ Class | Method | HTTP request | Description
- [SolanaConfig](docs/SolanaConfig.md)
- [SolanaInstruction](docs/SolanaInstruction.md)
- [SolanaInstructionWithValue](docs/SolanaInstructionWithValue.md)
+ - [SolanaRewardsBreakdown](docs/SolanaRewardsBreakdown.md)
- [SolanaSimpleCreateParams](docs/SolanaSimpleCreateParams.md)
- [SourceConfig](docs/SourceConfig.md)
- [SourceOfFunds](docs/SourceOfFunds.md)
@@ -1551,6 +1572,7 @@ Class | Method | HTTP request | Description
- [TransactionResponse](docs/TransactionResponse.md)
- [TransactionResponseContractCallDecodedData](docs/TransactionResponseContractCallDecodedData.md)
- [TransactionResponseDestination](docs/TransactionResponseDestination.md)
+ - [TransactionTag](docs/TransactionTag.md)
- [TransferConfigOperation](docs/TransferConfigOperation.md)
- [TransferOperationConfigParams](docs/TransferOperationConfigParams.md)
- [TransferOperationExecution](docs/TransferOperationExecution.md)
diff --git a/api/openapi.yaml b/api/openapi.yaml
index 2f2baa78..61b67fb4 100644
--- a/api/openapi.yaml
+++ b/api/openapi.yaml
@@ -15,77 +15,141 @@ servers:
- description: Fireblocks Sandbox Environment Base URL
url: https://sandbox-api.fireblocks.io/v1
paths:
- /vault/accounts:
- get:
- deprecated: true
- description: |-
- DEPRECATED - Please use `/vault/accounts_paged` endpoint instead.
- Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
- operationId: getVaultAccounts
+ /admin_quorum:
+ put:
+ description: Update admin quorum threshold
+ operationId: setAdminQuorumThreshold
parameters:
- - explode: true
- in: query
- name: namePrefix
- required: false
- schema:
- type: string
- style: form
- - explode: true
- in: query
- name: nameSuffix
- required: false
- schema:
- type: string
- style: form
- - explode: true
- in: query
- name: minAmountThreshold
- required: false
- schema:
- type: number
- style: form
- - explode: true
- in: query
- name: assetId
+ - description: "A unique identifier for the request. If the request is sent\
+ \ multiple times with the same idempotency key, the server will return the\
+ \ same response as the first request. The idempotency key is valid for 24\
+ \ hours."
+ explode: false
+ in: header
+ name: Idempotency-Key
required: false
schema:
type: string
- x-fb-entity: asset
- style: form
+ style: simple
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/SetAdminQuorumThresholdRequest"
+ required: true
responses:
- "200":
+ "202":
content:
application/json:
schema:
- $ref: "#/components/schemas/GetVaultAccountsResponse"
- description: A list of vault accounts
+ $ref: "#/components/schemas/SetAdminQuorumThresholdResponse"
+ description: OK
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Get vault accounts
+ summary: Update admin quorum threshold
tags:
- - Vaults
+ - Admin Quorum
x-internal: true
- x-rate-limit-category: high_compute
+ x-rate-limit-category: write
x-readme:
code-samples:
- language: python
- code: vault_accounts = fireblocks.get_vault_accounts()
+ code: result = fireblocks.set_admin_quorum_threshold(adminQuorumThreshold)
name: Fireblocks SDK Python example (Legacy)
- language: javascript
- code: const vaultAccounts = await fireblocks.getVaultAccounts();
+ code: const result = await fireblocks.setAdminQuorumThreshold(adminQuorumThreshold)
+ name: Fireblocks SDK Javascript example
+ x-content-type: application/json
+ x-accepts:
+ - application/json
+ /management/api_users:
+ get:
+ description: |-
+ List all API keys in your workspace.
+ - Please note that this endpoint is available only for API keys with Admin/Non Signing Admin permissions.
+ Endpoint Permission: Admin, Non-Signing Admin.
+ operationId: getApiUsers
+ responses:
+ "200":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/GetAPIUsersResponse"
+ description: got api users
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "401":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorResponse"
+ description: Unauthorized. Missing / invalid JWT token in Authorization
+ header.
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "403":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorResponse"
+ description: Lacking permissions.
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "5XX":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorResponse"
+ description: Internal error.
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ default:
+ $ref: "#/components/responses/Error"
+ summary: Get API Keys
+ tags:
+ - Api User
+ x-rate-limit-category: query
+ x-readme:
+ code-samples:
+ - language: javascript
+ code: const apiUsers = await fireblocks.getApiUsers();
name: Fireblocks SDK Javascript example
+ - language: python
+ code: apiUsers = fireblocks.get_api_users()
+ name: Fireblocks SDK Python example (Legacy)
+ - language: typescript
+ code: "const response: Promise>\
+ \ = fireblocks.apiUser.getApiUsers();"
+ name: Fireblocks SDK TypeScript example
+ - language: java
+ code: CompletableFuture> response = fireblocks.apiUser().getApiUsers();
+ name: Fireblocks SDK Java example
+ - language: python
+ code: response = fireblocks.api_user.get_api_users();
+ name: Fireblocks SDK Python example
+ x-codeSamples:
+ - lang: TypeScript
+ source: "const response: Promise>\
+ \ = fireblocks.apiUser.getApiUsers();"
+ - lang: Java
+ source: CompletableFuture> response = fireblocks.apiUser().getApiUsers();
+ - lang: Python
+ source: response = fireblocks.api_user.get_api_users();
x-accepts:
- application/json
post:
description: |-
- Creates a new vault account with the requested name.
- **Note: ** Vault account names should consist of ASCII characters only.
- Learn more about Fireblocks Vault Accounts in the following [guide](https://developers.fireblocks.com/reference/create-vault-account).
- Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
- operationId: createVaultAccount
+ Create a new API key in your workspace.
+ Learn more about Fireblocks API Keys management in the following [guide](https://developers.fireblocks.com/docs/manage-api-keys).
+ Endpoint Permission: Admin, Non-Signing Admin.
+ operationId: createApiUser
parameters:
- description: "A unique identifier for the request. If the request is sent\
\ multiple times with the same idempotency key, the server will return the\
@@ -102,298 +166,551 @@ paths:
content:
application/json:
schema:
- $ref: "#/components/schemas/CreateVaultAccountRequest"
- required: true
+ $ref: "#/components/schemas/CreateAPIUser"
responses:
"200":
+ description: User creation approval request has been sent
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "400":
+ description: bad request
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "401":
content:
application/json:
schema:
- $ref: "#/components/schemas/VaultAccount"
- description: A Vault Account object
+ $ref: "#/components/schemas/ErrorResponse"
+ description: Unauthorized. Missing / invalid JWT token in Authorization
+ header.
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "403":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorResponse"
+ description: Lacking permissions.
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "5XX":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorResponse"
+ description: Internal error.
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Create a new vault account
+ summary: Create API Key
tags:
- - Vaults
+ - Api User
x-rate-limit-category: write
x-readme:
code-samples:
- - language: python
- code: "vaultAccount = fireblocks.create_vault_account(name, hiddenOnUI,\
- \ customer_ref_id, auto_fueling)"
- name: Fireblocks SDK Python example (Legacy)
- language: javascript
- code: "const vaultAccount = await fireblocks.createVaultAccount(name, hiddenOnUI,\
- \ customerRefId, autoFueling);"
+ code: "const res = await fireblocks.createApiUser(name, role, csrForNewUser,\
+ \ coSignerType, isFirstUser);"
name: Fireblocks SDK Javascript example
+ - language: python
+ code: "res = fireblocks.create_api_user(name, role, csr_pem, co_signer_setup,\
+ \ co_signer_setup_is_first_user)"
+ name: Fireblocks SDK Python example (Legacy)
- language: typescript
- code: "const response: Promise> = fireblocks.vaults.createVaultAccount(vaultsApiCreateVaultAccountRequest);"
+ code: "const response: Promise> = fireblocks.apiUser.createApiUser(apiUserApiCreateApiUserRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response = fireblocks.vaults().createVaultAccount(createVaultAccountRequest,\
+ code: "CompletableFuture> response = fireblocks.apiUser().createApiUser(createAPIUser,\
\ idempotencyKey);"
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.create_vault_account(create_vault_account_request,\
+ code: "response = fireblocks.api_user.create_api_user(create_a_p_i_user,\
\ idempotency_key);"
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise> = fireblocks.vaults.createVaultAccount(vaultsApiCreateVaultAccountRequest);"
+ source: "const response: Promise> = fireblocks.apiUser.createApiUser(apiUserApiCreateApiUserRequest);"
- lang: Java
- source: "CompletableFuture> response = fireblocks.vaults().createVaultAccount(createVaultAccountRequest,\
+ source: "CompletableFuture> response = fireblocks.apiUser().createApiUser(createAPIUser,\
\ idempotencyKey);"
- lang: Python
- source: "response = fireblocks.vaults.create_vault_account(create_vault_account_request,\
+ source: "response = fireblocks.api_user.create_api_user(create_a_p_i_user,\
\ idempotency_key);"
x-content-type: application/json
x-accepts:
- application/json
- /vault/accounts_paged:
- get:
+ /management/api_users/{userId}/pairing_token:
+ post:
description: |-
- Gets all vault accounts in your workspace. This endpoint returns a limited amount of results with a quick response time.
- Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
- operationId: getPagedVaultAccounts
+ Issues a device pairing token for the given user and returns the user's info along with the token.
+ - The API user must be in PENDING_ACTIVATION status. If the user is already set up (enabled), the request is rejected with a 409 Conflict.
+ - Please note that this endpoint is available only for API keys with Owner/Admin/Non Signing Admin permissions.
+ Endpoint Permission: Owner, Admin, Non-Signing Admin.
+ operationId: issueApiUserPairingToken
parameters:
- - explode: true
- in: query
- name: namePrefix
- required: false
+ - description: The ID of the api user
+ explode: false
+ in: path
+ name: userId
+ required: true
schema:
type: string
- style: form
- - explode: true
- in: query
- name: nameSuffix
+ style: simple
+ - description: "A unique identifier for the request. If the request is sent\
+ \ multiple times with the same idempotency key, the server will return the\
+ \ same response as the first request. The idempotency key is valid for 24\
+ \ hours."
+ explode: false
+ in: header
+ name: Idempotency-Key
required: false
schema:
type: string
- style: form
- - description: "Specifying minAmountThreshold will filter accounts whose total\
- \ balance is greater than this value; otherwise, it returns all accounts.\
- \ The amount set in this parameter represents the native asset amount, not\
- \ its USD value."
+ style: simple
+ responses:
+ "201":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/IssueApiUserPairingTokenResponse"
+ description: Pairing token issued
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "401":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorSchema"
+ description: Unauthorized. Missing / invalid JWT token in Authorization
+ header.
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "403":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorSchema"
+ description: Lacking permissions.
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "404":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorSchema"
+ description: API user not found for the given userId.
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "409":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorSchema"
+ description: Conflict. The API user is not in PENDING_ACTIVATION status
+ (e.g. already set up / enabled).
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "5XX":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorSchema"
+ description: Internal error.
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ default:
+ $ref: "#/components/responses/Error"
+ summary: Issue API user pairing token
+ tags:
+ - Api User
+ x-rate-limit-category: write
+ x-readme:
+ code-samples:
+ - language: typescript
+ code: "const response: Promise>\
+ \ = fireblocks.apiUser.issueApiUserPairingToken(apiUserApiIssueApiUserPairingTokenRequest);"
+ name: Fireblocks SDK TypeScript example
+ - language: java
+ code: "CompletableFuture>\
+ \ response = fireblocks.apiUser().issueApiUserPairingToken(userId, idempotencyKey);"
+ name: Fireblocks SDK Java example
+ - language: python
+ code: "response = fireblocks.api_user.issue_api_user_pairing_token(user_id,\
+ \ idempotency_key);"
+ name: Fireblocks SDK Python example
+ x-codeSamples:
+ - lang: TypeScript
+ source: "const response: Promise>\
+ \ = fireblocks.apiUser.issueApiUserPairingToken(apiUserApiIssueApiUserPairingTokenRequest);"
+ - lang: Java
+ source: "CompletableFuture>\
+ \ response = fireblocks.apiUser().issueApiUserPairingToken(userId, idempotencyKey);"
+ - lang: Python
+ source: "response = fireblocks.api_user.issue_api_user_pairing_token(user_id,\
+ \ idempotency_key);"
+ x-accepts:
+ - application/json
+ /management/audit_logs:
+ get:
+ description: |-
+ Retrieve audit log events for the workspace with optional filtering, date range, sorting, and cursor-based pagination.
+
+ Filters within the same field are combined as OR (e.g. category=Administration&category=Security returns events in either category). Filters across different fields are combined as AND.
+
+ **Deprecated parameters:** `timePeriod` and `cursor` remain functional for backward compatibility but new integrations should use `startTime`/`endTime` and `pageCursor` instead.
+
+ Endpoint Permission: Admin, Non-Signing Admin, Auditor, Security Admin, Security Auditor.
+ operationId: getAuditLogs
+ parameters:
+ - description: Start of date range as epoch time in milliseconds. Takes precedence
+ over timePeriod when provided. Must be no more than 1 year before the current
+ time.
explode: true
in: query
- name: minAmountThreshold
+ name: startTime
required: false
schema:
- example: 10
- type: number
+ type: integer
style: form
- - explode: true
+ - description: End of date range as epoch time in milliseconds. Must be after
+ startTime. Defaults to now when omitted.
+ explode: true
in: query
- name: assetId
+ name: endTime
required: false
schema:
- type: string
- x-fb-entity: asset
+ type: integer
style: form
- - explode: true
+ - deprecated: true
+ description: Deprecated. Use startTime/endTime instead. Ignored when startTime
+ is provided. Defaults to DAY when neither timePeriod nor startTime is supplied.
+ explode: true
in: query
- name: orderBy
+ name: timePeriod
required: false
schema:
- default: DESC
enum:
- - ASC
- - DESC
+ - DAY
+ - WEEK
type: string
style: form
- - explode: true
+ - description: Filter by event category. Repeat the parameter for multiple values
+ (OR logic within field).
+ explode: true
in: query
- name: before
+ name: category
required: false
schema:
- type: string
+ items:
+ type: string
+ type: array
style: form
- - explode: true
+ - description: Filter by event subject. Repeat the parameter for multiple values.
+ explode: true
in: query
- name: after
+ name: subject
required: false
schema:
- type: string
+ items:
+ type: string
+ type: array
style: form
- - explode: true
+ - description: Filter by event type. Repeat the parameter for multiple values.
+ explode: true
in: query
- name: limit
+ name: event
required: false
schema:
- default: 200
- maximum: 500
- minimum: 1
- type: number
+ items:
+ type: string
+ type: array
style: form
- - deprecated: true
- description: DEPRECATED - use includeTagIds instead
+ - description: Filter by user name. Repeat the parameter for multiple values.
explode: true
in: query
- name: tagIds
+ name: user
required: false
schema:
items:
- format: uuid
type: string
- maxItems: 50
type: array
style: form
- - description: List of tag IDs to include. Vault accounts with any of these
- tags will be included
+ - description: Filter by user ID. Repeat the parameter for multiple values.
explode: true
in: query
- name: includeTagIds
+ name: userId
required: false
schema:
items:
- format: uuid
type: string
- maxItems: 50
type: array
style: form
- - description: List of tag IDs to exclude. Vault accounts with any of these
- tags will be filtered out
+ - description: Sort direction. Defaults to DESC.
explode: true
in: query
- name: excludeTagIds
+ name: order
required: false
schema:
- items:
- format: uuid
- type: string
- maxItems: 50
- type: array
+ default: DESC
+ enum:
+ - ASC
+ - DESC
+ type: string
+ style: form
+ - description: Number of results per page. Maximum 500. Defaults to 200.
+ explode: true
+ in: query
+ name: pageSize
+ required: false
+ schema:
+ default: 200
+ maximum: 500
+ minimum: 1
+ type: integer
+ style: form
+ - description: Cursor returned from the previous response to fetch the next
+ page.
+ explode: true
+ in: query
+ name: pageCursor
+ required: false
+ schema:
+ type: string
+ style: form
+ - deprecated: true
+ description: Deprecated. Use pageCursor instead.
+ explode: true
+ in: query
+ name: cursor
+ required: false
+ schema:
+ type: string
style: form
responses:
"200":
content:
application/json:
schema:
- $ref: "#/components/schemas/VaultAccountsPagedResponse"
- description: A VaultAccountsPagedResponse object
+ $ref: "#/components/schemas/GetAuditLogsResponse"
+ description: Audit log events matching the requested filters and date range
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
- summary: Get vault accounts (Paginated)
+ "400":
+ $ref: "#/components/responses/Error"
+ "403":
+ $ref: "#/components/responses/Error"
+ default:
+ $ref: "#/components/responses/Error"
+ summary: Get audit logs
tags:
- - Vaults
- x-rate-limit-category: external_query
+ - Audit Logs
+ x-rate-limit-category: query
x-readme:
code-samples:
- - language: python
- code: vault_accounts = fireblocks.get_vault_accounts_with_page_info(filters)
- name: Fireblocks SDK Python example (Legacy)
- - language: javascript
- code: const vaultAccounts = await fireblocks.getVaultAccountsWithPageInfo(filters);
- name: Fireblocks SDK Javascript example
- language: typescript
- code: "const response: Promise>\
- \ = fireblocks.vaults.getPagedVaultAccounts(vaultsApiGetPagedVaultAccountsRequest);"
+ code: "const response: Promise>\
+ \ = fireblocks.auditLogs.getAuditLogs(auditLogsApiGetAuditLogsRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response\
- \ = fireblocks.vaults().getPagedVaultAccounts(namePrefix, nameSuffix,\
- \ minAmountThreshold, assetId, orderBy, before, after, limit, tagIds,\
- \ includeTagIds, excludeTagIds);"
+ code: "CompletableFuture> response = fireblocks.auditLogs().getAuditLogs(startTime,\
+ \ endTime, timePeriod, category, subject, event, user, userId, order,\
+ \ pageSize, pageCursor, cursor);"
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.get_paged_vault_accounts(name_prefix,\
- \ name_suffix, min_amount_threshold, asset_id, order_by, before, after,\
- \ limit, tag_ids, include_tag_ids, exclude_tag_ids);"
+ code: "response = fireblocks.audit_logs.get_audit_logs(start_time, end_time,\
+ \ time_period, category, subject, event, user, user_id, order, page_size,\
+ \ page_cursor, cursor);"
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise>\
- \ = fireblocks.vaults.getPagedVaultAccounts(vaultsApiGetPagedVaultAccountsRequest);"
+ source: "const response: Promise>\
+ \ = fireblocks.auditLogs.getAuditLogs(auditLogsApiGetAuditLogsRequest);"
- lang: Java
- source: "CompletableFuture> response\
- \ = fireblocks.vaults().getPagedVaultAccounts(namePrefix, nameSuffix, minAmountThreshold,\
- \ assetId, orderBy, before, after, limit, tagIds, includeTagIds, excludeTagIds);"
+ source: "CompletableFuture> response = fireblocks.auditLogs().getAuditLogs(startTime,\
+ \ endTime, timePeriod, category, subject, event, user, userId, order, pageSize,\
+ \ pageCursor, cursor);"
- lang: Python
- source: "response = fireblocks.vaults.get_paged_vault_accounts(name_prefix,\
- \ name_suffix, min_amount_threshold, asset_id, order_by, before, after,\
- \ limit, tag_ids, include_tag_ids, exclude_tag_ids);"
+ source: "response = fireblocks.audit_logs.get_audit_logs(start_time, end_time,\
+ \ time_period, category, subject, event, user, user_id, order, page_size,\
+ \ page_cursor, cursor);"
x-accepts:
- application/json
- /vault/accounts/{vaultAccountId}:
+ /assets:
get:
- description: |-
- Get a vault account by its unique ID.
- Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
- operationId: getVaultAccount
+ description: |
+ Retrieves a paginated list of all assets supported by Fireblocks in your workspace
+
+ **Note:** We will continue to support and display the legacy ID (API ID). Since not all Fireblocks services fully support the new Assets UUID, please use only the legacy ID until further notice.
+ operationId: listAssets
parameters:
- - description: The ID of the vault account
+ - description: Blockchain id of the assets
+ example: 0f672204-a28b-464a-b318-a387abd3d3c7
+ explode: true
+ in: query
+ name: blockchainId
+ required: false
+ schema:
+ type: string
+ style: form
+ - description: Assets class
+ explode: true
+ in: query
+ name: assetClass
+ required: false
+ schema:
+ $ref: "#/components/schemas/AssetClass"
+ style: form
+ - description: Assets onchain symbol
+ example: ETH
+ explode: true
+ in: query
+ name: symbol
+ required: false
+ schema:
+ minLength: 1
+ type: string
+ style: form
+ - description: Scope of the assets
+ explode: true
+ in: query
+ name: scope
+ required: false
+ schema:
+ $ref: "#/components/schemas/AssetScope"
+ style: form
+ - description: Are assets deprecated
+ example: false
+ explode: true
+ in: query
+ name: deprecated
+ required: false
+ schema:
+ type: boolean
+ style: form
+ - description: A list of asset IDs (max 100)
+ example:
+ - 3ed32525-70df-45c8-bae3-e69ab56dc095
+ - 3a3b5f06-61e7-44f0-9962-4425b55795ff
+ - SHANI5_B75VRLGX_MUPA
+ explode: true
+ in: query
+ name: ids
+ required: false
+ schema:
+ items:
+ type: string
+ type: array
+ style: form
+ - description: Next page cursor to fetch
+ example: MjAyMy0xMi0xMyAyMDozNjowOC4zMDI=:MTEwMA==
+ explode: true
+ in: query
+ name: pageCursor
+ required: false
+ schema:
+ type: string
+ style: form
+ - description: Items per page
+ example: 500
+ explode: true
+ in: query
+ name: pageSize
+ required: false
+ schema:
+ default: 500
+ maximum: 1000
+ minimum: 100
+ type: number
+ style: form
+ - description: "A unique identifier for the request. If the request is sent\
+ \ multiple times with the same idempotency key, the server will return the\
+ \ same response as the first request. The idempotency key is valid for 24\
+ \ hours."
explode: false
- in: path
- name: vaultAccountId
- required: true
+ in: header
+ name: Idempotency-Key
+ required: false
schema:
- format: numeric
type: string
- x-fb-entity: vault_account
style: simple
responses:
"200":
content:
application/json:
schema:
- $ref: "#/components/schemas/VaultAccount"
- description: A Vault Account object
- headers:
- X-Request-ID:
- $ref: "#/components/headers/X-Request-ID"
+ $ref: "#/components/schemas/ListAssetsResponse"
+ description: List of assets
+ "500":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AssetInternalServerErrorResponse"
+ description: Error occurred while listing assets
default:
$ref: "#/components/responses/Error"
- summary: Get a vault account by ID
+ summary: List assets
tags:
- - Vaults
+ - Blockchains & assets
x-rate-limit-category: external_query
x-readme:
code-samples:
- language: python
- code: vault_account = fireblocks.get_vault_account(vault_account_id)
+ code: assets = fireblocks.listAssets(filters)
name: Fireblocks SDK Python example (Legacy)
- language: javascript
- code: const vaultAccount = await fireblocks.getVaultAccount(vault_account_id);
+ code: const assets = await fireblocks.listAssets(filters);
name: Fireblocks SDK Javascript example
- language: typescript
- code: "const response: Promise> = fireblocks.vaults.getVaultAccount(vaultsApiGetVaultAccountRequest);"
+ code: "const response: Promise> =\
+ \ fireblocks.blockchainsAssets.listAssets(blockchainsAssetsApiListAssetsRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: CompletableFuture> response = fireblocks.vaults().getVaultAccount(vaultAccountId);
+ code: "CompletableFuture> response = fireblocks.blockchainsAssets().listAssets(blockchainId,\
+ \ assetClass, symbol, scope, deprecated, ids, pageCursor, pageSize, idempotencyKey);"
name: Fireblocks SDK Java example
- language: python
- code: response = fireblocks.vaults.get_vault_account(vault_account_id);
+ code: "response = fireblocks.blockchains_&_assets.list_assets(blockchain_id,\
+ \ asset_class, symbol, scope, deprecated, ids, page_cursor, page_size,\
+ \ idempotency_key);"
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise> = fireblocks.vaults.getVaultAccount(vaultsApiGetVaultAccountRequest);"
+ source: "const response: Promise> =\
+ \ fireblocks.blockchainsAssets.listAssets(blockchainsAssetsApiListAssetsRequest);"
- lang: Java
- source: CompletableFuture> response = fireblocks.vaults().getVaultAccount(vaultAccountId);
+ source: "CompletableFuture> response = fireblocks.blockchainsAssets().listAssets(blockchainId,\
+ \ assetClass, symbol, scope, deprecated, ids, pageCursor, pageSize, idempotencyKey);"
- lang: Python
- source: response = fireblocks.vaults.get_vault_account(vault_account_id);
+ source: "response = fireblocks.blockchains_&_assets.list_assets(blockchain_id,\
+ \ asset_class, symbol, scope, deprecated, ids, page_cursor, page_size, idempotency_key);"
x-accepts:
- application/json
- put:
- description: |-
- Renames the requested vault account.
- Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver.
- operationId: updateVaultAccount
+ post:
+ description: |
+ Register a new asset to a workspace and return the newly created asset's details. Currently supported chains are:
+ - EVM based chains
+ - Stellar
+ - Algorand
+ - TRON
+ - NEAR
+ - Solana
+ - Sui
+ - TON
+ operationId: registerNewAsset
parameters:
- - description: The ID of the vault account to edit
- explode: false
- in: path
- name: vaultAccountId
- required: true
- schema:
- format: numeric
- type: string
- x-fb-entity: vault_account
- style: simple
- description: "A unique identifier for the request. If the request is sent\
\ multiple times with the same idempotency key, the server will return the\
\ same response as the first request. The idempotency key is valid for 24\
@@ -409,198 +726,207 @@ paths:
content:
application/json:
schema:
- $ref: "#/components/schemas/UpdateVaultAccountRequest"
- required: true
+ $ref: "#/components/schemas/RegisterNewAssetRequest"
responses:
- "201":
+ "200":
content:
application/json:
schema:
- $ref: "#/components/schemas/RenameVaultAccountResponse"
- description: OK
- headers:
- X-Request-ID:
- $ref: "#/components/headers/X-Request-ID"
+ $ref: "#/components/schemas/AssetResponse"
+ description: A new asset has been created successfully
+ "400":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AssetBadRequestErrorResponse"
+ description: |
+ - Listing an asset on the requested blockchain is not supported. Error code: 1000
+
+ - The asset address is invalid. Error code: 1003
+
+ - Self serve listing an asset on the requested blockchain is currently not supported, please contact support. Error code: 1004
+
+ - Blockchain is deprecated. Error code: 1006
+
+ - The asset's standard is not supported. Error code: 1007
+
+ - Unable to get expected metadata: decimals | name | symbol. Error code: 1010
+ "403":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AssetForbiddenErrorResponse"
+ description: |
+ - The asset creation quota reached. Error code: 1005
+
+ - Tenant is not allowed to create testnet assets. Error code: 1008
+
+ - Tenant is not allowed to create mainnet assets. Error code: 1009
+ "404":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/TokenInfoNotFoundErrorResponse"
+ description: |
+ - Invalid address, could not get asset information. Error code 1003
+ "409":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AssetConflictErrorResponse"
+ description: |
+ - The asset is already supported globally. Error code: 1001
+
+ - The asset has already been added to this workspace. Error code: 1002
+ "500":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AssetInternalServerErrorResponse"
+ description: Failed to create asset
default:
$ref: "#/components/responses/Error"
- summary: Rename a vault account
+ summary: Register an asset
tags:
- - Vaults
- x-rate-limit-category: write
+ - Blockchains & assets
+ x-rate-limit-category: high_compute
x-readme:
code-samples:
- language: python
- code: "vaultAccount = fireblocks.update_vault_account(vault_account_id,\
- \ name)"
+ code: "supportedAssets = fireblocks.register_new_asset(blockchainId, address,\
+ \ symbol)"
name: Fireblocks SDK Python example (Legacy)
- language: javascript
- code: "const vaultAccount = await fireblocks.updateVaultAccount(vautlAccountId,\
- \ name);"
+ code: "const supportedAssets = await fireblocks.registerNewAsset(blockchainId,\
+ \ address, symbol);"
name: Fireblocks SDK Javascript example
- language: typescript
- code: "const response: Promise>\
- \ = fireblocks.vaults.updateVaultAccount(vaultsApiUpdateVaultAccountRequest);"
+ code: "const response: Promise> = fireblocks.blockchainsAssets.registerNewAsset(blockchainsAssetsApiRegisterNewAssetRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response\
- \ = fireblocks.vaults().updateVaultAccount(updateVaultAccountRequest,\
- \ vaultAccountId, idempotencyKey);"
+ code: "CompletableFuture> response = fireblocks.blockchainsAssets().registerNewAsset(registerNewAssetRequest,\
+ \ idempotencyKey);"
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.update_vault_account(update_vault_account_request,\
- \ vault_account_id, idempotency_key);"
+ code: "response = fireblocks.blockchains_&_assets.register_new_asset(register_new_asset_request,\
+ \ idempotency_key);"
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise>\
- \ = fireblocks.vaults.updateVaultAccount(vaultsApiUpdateVaultAccountRequest);"
+ source: "const response: Promise> = fireblocks.blockchainsAssets.registerNewAsset(blockchainsAssetsApiRegisterNewAssetRequest);"
- lang: Java
- source: "CompletableFuture> response\
- \ = fireblocks.vaults().updateVaultAccount(updateVaultAccountRequest, vaultAccountId,\
+ source: "CompletableFuture> response = fireblocks.blockchainsAssets().registerNewAsset(registerNewAssetRequest,\
\ idempotencyKey);"
- lang: Python
- source: "response = fireblocks.vaults.update_vault_account(update_vault_account_request,\
- \ vault_account_id, idempotency_key);"
+ source: "response = fireblocks.blockchains_&_assets.register_new_asset(register_new_asset_request,\
+ \ idempotency_key);"
x-content-type: application/json
x-accepts:
- application/json
- /vault/asset_wallets:
+ /assets/{id}:
get:
- description: "Get all vault wallets of the vault accounts in your workspace.\
- \ \nA vault wallet is an asset in a vault account. \n\nThis method allows\
- \ fast traversal of all account balances.\nEndpoint Permission: Admin, Non-Signing\
- \ Admin, Signer, Approver, Editor, Viewer."
- operationId: getAssetWallets
+ description: |
+ Returns an asset by ID or legacyID.
+
+ **Note**:
+
+ - We will continue displaying and supporting the legacy ID (API ID). Since not all Fireblocks services fully support the new Assets UUID, please use only the legacy ID until further notice.
+ operationId: getAsset
parameters:
- - description: "When specified, only vault wallets with total balance greater\
- \ than this amount are returned."
- explode: true
- in: query
- name: totalAmountLargerThan
- required: false
- schema:
- type: number
- style: form
- - description: "When specified, only vault wallets with the specified ID are\
- \ returned."
- explode: true
- in: query
- name: assetId
- required: false
+ - description: The ID or legacyId of the asset
+ example: ETH
+ explode: false
+ in: path
+ name: id
+ required: true
schema:
type: string
x-fb-entity: asset
- style: form
- - explode: true
- in: query
- name: orderBy
- required: false
- schema:
- default: DESC
- enum:
- - ASC
- - DESC
- type: string
- style: form
- - description: "Fetches the next paginated response before this element. \n\
- This element is a cursor and is returned at the response of the previous\
- \ page.\n"
- explode: true
- in: query
- name: before
- required: false
- schema:
- type: string
- style: form
- - description: Fetches the next paginated response after this element. This
- element is a cursor and is returned at the response of the previous page.
- explode: true
- in: query
- name: after
+ style: simple
+ - description: "A unique identifier for the request. If the request is sent\
+ \ multiple times with the same idempotency key, the server will return the\
+ \ same response as the first request. The idempotency key is valid for 24\
+ \ hours."
+ explode: false
+ in: header
+ name: Idempotency-Key
required: false
schema:
type: string
- style: form
- - description: "The maximum number of vault wallets in a single response. \n\
- \nThe default is 200 and the maximum is 1000.\n"
- explode: true
- in: query
- name: limit
- required: false
- schema:
- default: 200
- maximum: 1000
- minimum: 1
- type: number
- style: form
+ style: simple
responses:
"200":
content:
application/json:
schema:
- $ref: "#/components/schemas/PaginatedAssetWalletResponse"
- description: A PaginatedAssetWalletResponse object
+ $ref: "#/components/schemas/Asset"
+ description: Asset with requested identification
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
- summary: Get vault wallets (Paginated)
+ "404":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AssetNotFoundErrorResponse"
+ description: |
+ - Asset with specified ID or legacy ID is not found. Error code 1504
+ "500":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AssetInternalServerErrorResponse"
+ description: Error occurred while getting an asset
+ default:
+ $ref: "#/components/responses/Error"
+ summary: Get an asset
tags:
- - Vaults
- x-rate-limit-category: query
+ - Blockchains & assets
+ x-rate-limit-category: external_query
x-readme:
code-samples:
- language: python
- code: vault_accounts = fireblocks.get_asset_wallets(filters)
+ code: asset = fireblocks.getAssetById(assetId)
name: Fireblocks SDK Python example (Legacy)
- language: javascript
- code: const vaultAccounts = await fireblocks.getAssetWallets(filters);
+ code: const asset = await fireblocks.getAssetById(assetId);
name: Fireblocks SDK Javascript example
- language: typescript
- code: "const response: Promise>\
- \ = fireblocks.vaults.getAssetWallets(vaultsApiGetAssetWalletsRequest);"
+ code: "const response: Promise> = fireblocks.blockchainsAssets.getAsset(blockchainsAssetsApiGetAssetRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response\
- \ = fireblocks.vaults().getAssetWallets(totalAmountLargerThan, assetId,\
- \ orderBy, before, after, limit);"
+ code: "CompletableFuture> response = fireblocks.blockchainsAssets().getAsset(id,\
+ \ idempotencyKey);"
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.get_asset_wallets(total_amount_larger_than,\
- \ asset_id, order_by, before, after, limit);"
+ code: "response = fireblocks.blockchains_&_assets.get_asset(id, idempotency_key);"
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise>\
- \ = fireblocks.vaults.getAssetWallets(vaultsApiGetAssetWalletsRequest);"
+ source: "const response: Promise> = fireblocks.blockchainsAssets.getAsset(blockchainsAssetsApiGetAssetRequest);"
- lang: Java
- source: "CompletableFuture> response\
- \ = fireblocks.vaults().getAssetWallets(totalAmountLargerThan, assetId,\
- \ orderBy, before, after, limit);"
+ source: "CompletableFuture> response = fireblocks.blockchainsAssets().getAsset(id,\
+ \ idempotencyKey);"
- lang: Python
- source: "response = fireblocks.vaults.get_asset_wallets(total_amount_larger_than,\
- \ asset_id, order_by, before, after, limit);"
+ source: "response = fireblocks.blockchains_&_assets.get_asset(id, idempotency_key);"
x-accepts:
- application/json
- /vault/accounts/{vaultAccountId}/hide:
- post:
+ patch:
description: |-
- Hides the requested vault account from the web console view.
- This operation is required when creating thousands of vault accounts to serve your end-users.
- Used for preventing the web console to be swamped with too much vault accounts.
- Learn more in the following [guide](https://developers.fireblocks.com/docs/create-direct-custody-wallets#hiding-vault-accounts).
- NOTE: Hiding the vault account from the web console will also hide all the related transactions to/from this vault.
- Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
- operationId: hideVaultAccount
+ Update the user’s metadata for an asset.
+
+ Endpoint Permission: Owner, Admin, Non-Signing Admin, NCW Admin, Signer, Editor.
+ operationId: updateAssetUserMetadata
parameters:
- - description: The vault account to hide
+ - description: The ID or legacyId of the asset
+ example: ETH
explode: false
in: path
- name: vaultAccountId
+ name: id
required: true
schema:
- format: numeric
type: string
- x-fb-entity: vault_account
+ x-fb-entity: asset
style: simple
- description: "A unique identifier for the request. If the request is sent\
\ multiple times with the same idempotency key, the server will return the\
@@ -613,70 +939,85 @@ paths:
schema:
type: string
style: simple
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/UpdateAssetUserMetadataRequest"
responses:
- "201":
+ "200":
content:
application/json:
schema:
- $ref: "#/components/schemas/VaultActionStatus"
- description: OK
+ $ref: "#/components/schemas/Asset"
+ description: Updated asset user metadata
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
+ "404":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AssetNotFoundErrorResponse"
+ description: |
+ - Asset with specified ID or legacy ID is not found. Error code 1504
+ "500":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AssetInternalServerErrorResponse"
+ description: Error occurred while updating asset user metadata
default:
$ref: "#/components/responses/Error"
- summary: Hide a vault account in the console
+ summary: Update the user’s metadata for an asset
tags:
- - Vaults
+ - Blockchains & assets
x-rate-limit-category: write
x-readme:
code-samples:
- language: python
- code: vaultAsset = fireblocks.hide_vault_account(vault_account_id)
+ code: "asset = fireblocks.update_asset_user_metadata(asset_id, update_asset_user_metadata_request)"
name: Fireblocks SDK Python example (Legacy)
- language: javascript
- code: const vaultAsset = await fireblocks.hideVaultAccount(vaultAccountId);
+ code: "const asset = await fireblocks.updateAssetUserMetadata(assetId, updateAssetUserMetadataRequest);"
name: Fireblocks SDK Javascript example
- language: typescript
- code: "const response: Promise> =\
- \ fireblocks.vaults.hideVaultAccount(vaultsApiHideVaultAccountRequest);"
+ code: "const response: Promise> = fireblocks.blockchainsAssets.updateAssetUserMetadata(blockchainsAssetsApiUpdateAssetUserMetadataRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response = fireblocks.vaults().hideVaultAccount(vaultAccountId,\
- \ idempotencyKey);"
+ code: "CompletableFuture> response = fireblocks.blockchainsAssets().updateAssetUserMetadata(id,\
+ \ updateAssetUserMetadataRequest, idempotencyKey);"
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.hide_vault_account(vault_account_id,\
- \ idempotency_key);"
+ code: "response = fireblocks.blockchains_&_assets.update_asset_user_metadata(id,\
+ \ update_asset_user_metadata_request, idempotency_key);"
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise> =\
- \ fireblocks.vaults.hideVaultAccount(vaultsApiHideVaultAccountRequest);"
+ source: "const response: Promise> = fireblocks.blockchainsAssets.updateAssetUserMetadata(blockchainsAssetsApiUpdateAssetUserMetadataRequest);"
- lang: Java
- source: "CompletableFuture> response = fireblocks.vaults().hideVaultAccount(vaultAccountId,\
- \ idempotencyKey);"
+ source: "CompletableFuture> response = fireblocks.blockchainsAssets().updateAssetUserMetadata(id,\
+ \ updateAssetUserMetadataRequest, idempotencyKey);"
- lang: Python
- source: "response = fireblocks.vaults.hide_vault_account(vault_account_id,\
- \ idempotency_key);"
+ source: "response = fireblocks.blockchains_&_assets.update_asset_user_metadata(id,\
+ \ update_asset_user_metadata_request, idempotency_key);"
+ x-content-type: application/json
x-accepts:
- application/json
- /vault/accounts/{vaultAccountId}/unhide:
+ /assets/prices/{id}:
post:
- description: |-
- Makes a hidden vault account visible in web console view.
- Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
- operationId: unhideVaultAccount
+ description: |
+ Set asset price for the given asset id. Returns the asset price response.
+ operationId: setAssetPrice
parameters:
- - description: The vault account to unhide
+ - description: The ID of the asset
+ example: ETH
explode: false
in: path
- name: vaultAccountId
+ name: id
required: true
schema:
- format: numeric
type: string
- x-fb-entity: vault_account
style: simple
- description: "A unique identifier for the request. If the request is sent\
\ multiple times with the same idempotency key, the server will return the\
@@ -689,457 +1030,494 @@ paths:
schema:
type: string
style: simple
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/SetAssetPriceRequest"
responses:
- "201":
+ "200":
content:
application/json:
schema:
- $ref: "#/components/schemas/VaultActionStatus"
- description: OK
- headers:
- X-Request-ID:
- $ref: "#/components/headers/X-Request-ID"
- default:
- $ref: "#/components/responses/Error"
- summary: Unhide a vault account in the console
- tags:
- - Vaults
+ $ref: "#/components/schemas/AssetPriceResponse"
+ description: Asset price has been set successfully.
+ "403":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AssetPriceForbiddenErrorResponse"
+ description: |
+ - Tenant is not allowed to set rate. Error code: 1002.
+ "404":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AssetPriceNotFoundErrorResponse"
+ description: |
+ - Currency not found. Error code 1001
+ default:
+ $ref: "#/components/responses/Error"
+ summary: Set asset price
+ tags:
+ - Blockchains & assets
x-rate-limit-category: write
x-readme:
code-samples:
- language: python
- code: vaultAsset = fireblocks.unhide_vault_account(vault_account_id)
+ code: "supportedAssets = fireblocks.set_asset_price(id, currency, price)"
name: Fireblocks SDK Python example (Legacy)
- language: javascript
- code: const vaultAsset = await fireblocks.unhideVaultAccount(vaultAccountId);
+ code: "const supportedAssets = await fireblocks.setAssetPrice(id, currency,\
+ \ price);"
name: Fireblocks SDK Javascript example
- language: typescript
- code: "const response: Promise> =\
- \ fireblocks.vaults.unhideVaultAccount(vaultsApiUnhideVaultAccountRequest);"
+ code: "const response: Promise> =\
+ \ fireblocks.blockchainsAssets.setAssetPrice(blockchainsAssetsApiSetAssetPriceRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response = fireblocks.vaults().unhideVaultAccount(vaultAccountId,\
- \ idempotencyKey);"
+ code: "CompletableFuture> response = fireblocks.blockchainsAssets().setAssetPrice(id,\
+ \ setAssetPriceRequest, idempotencyKey);"
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.unhide_vault_account(vault_account_id,\
+ code: "response = fireblocks.blockchains_&_assets.set_asset_price(id, set_asset_price_request,\
\ idempotency_key);"
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise> =\
- \ fireblocks.vaults.unhideVaultAccount(vaultsApiUnhideVaultAccountRequest);"
+ source: "const response: Promise> =\
+ \ fireblocks.blockchainsAssets.setAssetPrice(blockchainsAssetsApiSetAssetPriceRequest);"
- lang: Java
- source: "CompletableFuture> response = fireblocks.vaults().unhideVaultAccount(vaultAccountId,\
- \ idempotencyKey);"
+ source: "CompletableFuture> response = fireblocks.blockchainsAssets().setAssetPrice(id,\
+ \ setAssetPriceRequest, idempotencyKey);"
- lang: Python
- source: "response = fireblocks.vaults.unhide_vault_account(vault_account_id,\
+ source: "response = fireblocks.blockchains_&_assets.set_asset_price(id, set_asset_price_request,\
\ idempotency_key);"
+ x-content-type: application/json
x-accepts:
- application/json
- /vault/accounts/{vaultAccountId}/{assetId}/activate:
- post:
- description: "Initiates activation for a wallet in a vault account. \nActivation\
- \ is required for tokens that need an on-chain transaction for creation (XLM\
- \ tokens, SOL tokens etc).\nEndpoint Permission: Admin, Non-Signing Admin,\
- \ Signer, Approver, Editor."
- operationId: activateAssetForVaultAccount
+ /blockchains:
+ get:
+ description: |
+ Returns all blockchains supported by Fireblocks.
+ operationId: listBlockchains
parameters:
- - description: "The ID of the vault account to return, or 'default' for the\
- \ default vault account"
- explode: false
- in: path
- name: vaultAccountId
- required: true
+ - description: Blockchain protocol
+ example: SOL
+ explode: true
+ in: query
+ name: protocol
+ required: false
schema:
- format: numeric
type: string
- x-fb-entity: vault_account
- style: simple
- - description: The ID of the asset
- explode: false
- in: path
- name: assetId
- required: true
+ style: form
+ - description: Is blockchain deprecated
+ example: false
+ explode: true
+ in: query
+ name: deprecated
+ required: false
schema:
- type: string
- x-fb-entity: asset
- style: simple
- - description: "A unique identifier for the request. If the request is sent\
- \ multiple times with the same idempotency key, the server will return the\
- \ same response as the first request. The idempotency key is valid for 24\
- \ hours."
- explode: false
- in: header
- name: Idempotency-Key
+ type: boolean
+ style: form
+ - description: Is test blockchain
+ example: false
+ explode: true
+ in: query
+ name: test
required: false
schema:
- type: string
- style: simple
- - description: Optional immutable blockchain wallet type to store per tenant+vault
+ type: boolean
+ style: form
+ - description: A list of blockchain IDs (max 100)
+ example:
+ - 3ed32525-70df-45c8-bae3-e69ab56dc095
+ - 3a3b5f06-61e7-44f0-9962-4425b55795ff
+ - MANTRA
explode: true
in: query
- name: blockchainWalletType
+ name: ids
+ required: false
+ schema:
+ items:
+ type: string
+ type: array
+ style: form
+ - description: Page cursor to fetch
+ example: MjAyMy0xMi0xMyAyMDozNjowOC4zMDI=:MTEwMA==
+ explode: true
+ in: query
+ name: pageCursor
required: false
schema:
type: string
style: form
+ - description: Items per page (max 500)
+ example: 500
+ explode: true
+ in: query
+ name: pageSize
+ required: false
+ schema:
+ default: 500
+ maximum: 500
+ minimum: 1
+ type: number
+ style: form
responses:
"200":
content:
application/json:
schema:
- $ref: "#/components/schemas/CreateVaultAssetResponse"
- description: OK
- headers:
- X-Request-ID:
- $ref: "#/components/headers/X-Request-ID"
+ $ref: "#/components/schemas/ListBlockchainsResponse"
+ description: List of supported blockchains
+ "500":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AssetInternalServerErrorResponse"
+ description: Error occurred while listing blockchains
default:
$ref: "#/components/responses/Error"
- summary: Activate a wallet in a vault account
+ summary: List blockchains
tags:
- - Vaults
- x-rate-limit-category: write
+ - Blockchains & assets
+ x-rate-limit-category: external_query
x-readme:
code-samples:
+ - language: python
+ code: blockchains = fireblocks.listBlockchains(filters)
+ name: Fireblocks SDK Python example (Legacy)
+ - language: javascript
+ code: const blockchains = await fireblocks.listBlockchains(filters);
+ name: Fireblocks SDK Javascript example
- language: typescript
- code: "const response: Promise>\
- \ = fireblocks.vaults.activateAssetForVaultAccount(vaultsApiActivateAssetForVaultAccountRequest);"
+ code: "const response: Promise>\
+ \ = fireblocks.blockchainsAssets.listBlockchains(blockchainsAssetsApiListBlockchainsRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response\
- \ = fireblocks.vaults().activateAssetForVaultAccount(vaultAccountId, assetId,\
- \ blockchainWalletType, idempotencyKey);"
+ code: "CompletableFuture> response\
+ \ = fireblocks.blockchainsAssets().listBlockchains(protocol, deprecated,\
+ \ test, ids, pageCursor, pageSize);"
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.activate_asset_for_vault_account(vault_account_id,\
- \ asset_id, blockchain_wallet_type, idempotency_key);"
+ code: "response = fireblocks.blockchains_&_assets.list_blockchains(protocol,\
+ \ deprecated, test, ids, page_cursor, page_size);"
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise>\
- \ = fireblocks.vaults.activateAssetForVaultAccount(vaultsApiActivateAssetForVaultAccountRequest);"
+ source: "const response: Promise>\
+ \ = fireblocks.blockchainsAssets.listBlockchains(blockchainsAssetsApiListBlockchainsRequest);"
- lang: Java
- source: "CompletableFuture> response\
- \ = fireblocks.vaults().activateAssetForVaultAccount(vaultAccountId, assetId,\
- \ blockchainWalletType, idempotencyKey);"
+ source: "CompletableFuture> response\
+ \ = fireblocks.blockchainsAssets().listBlockchains(protocol, deprecated,\
+ \ test, ids, pageCursor, pageSize);"
- lang: Python
- source: "response = fireblocks.vaults.activate_asset_for_vault_account(vault_account_id,\
- \ asset_id, blockchain_wallet_type, idempotency_key);"
+ source: "response = fireblocks.blockchains_&_assets.list_blockchains(protocol,\
+ \ deprecated, test, ids, page_cursor, page_size);"
x-accepts:
- application/json
- /vault/accounts/{vaultAccountId}/set_customer_ref_id:
- post:
- description: "Assigns an AML/KYT customer reference ID for the vault account.\
- \ Learn more about Fireblocks AML management in the following [guide](https://developers.fireblocks.com/docs/define-aml-policies).\
- \ Endpoint Permission: Admin, Non-Signing Admin."
- operationId: setVaultAccountCustomerRefId
+ /blockchains/{id}:
+ get:
+ description: |
+ Returns a blockchain by ID or legacyID.
+ operationId: getBlockchain
parameters:
- - description: The vault account ID
+ - description: The ID or legacyId of the blockchain
+ example: ETH
explode: false
in: path
- name: vaultAccountId
+ name: id
required: true
- schema:
- format: numeric
- type: string
- x-fb-entity: vault_account
- style: simple
- - description: "A unique identifier for the request. If the request is sent\
- \ multiple times with the same idempotency key, the server will return the\
- \ same response as the first request. The idempotency key is valid for 24\
- \ hours."
- explode: false
- in: header
- name: Idempotency-Key
- required: false
schema:
type: string
style: simple
- requestBody:
- content:
- application/json:
- schema:
- $ref: "#/components/schemas/SetCustomerRefIdRequest"
- required: true
responses:
- "201":
+ "200":
content:
application/json:
schema:
- $ref: "#/components/schemas/VaultActionStatus"
- description: OK
+ $ref: "#/components/schemas/BlockchainResponse"
+ description: Blockchain with requested identification
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
+ "404":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/BlockchainNotFoundErrorResponse"
+ description: |
+ - Blockchain with specified ID or legacy ID is not found. Error code 1505
+ "500":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AssetInternalServerErrorResponse"
+ description: Error occurred while getting an blockchain
default:
$ref: "#/components/responses/Error"
- summary: Set an AML/KYT ID for a vault account
+ summary: Get a Blockchain by ID
tags:
- - Vaults
- x-rate-limit-category: write
+ - Blockchains & assets
+ x-rate-limit-category: external_query
x-readme:
code-samples:
- language: python
- code: "vaultAsset = fireblocks.set_vault_account_customer_ref_id(vault_account_id,\
- \ customer_ref_id)"
+ code: blockchain = fireblocks.getBlockchainById(blockchainId)
name: Fireblocks SDK Python example (Legacy)
- language: javascript
- code: "const vaultAsset = await fireblocks.setCustomerRefIdForVaultAccount(vaultAccountId,\
- \ customerRefId);"
+ code: const blockchain = await fireblocks.getBlockchainById(blockchainId);
name: Fireblocks SDK Javascript example
- language: typescript
- code: "const response: Promise> =\
- \ fireblocks.vaults.setVaultAccountCustomerRefId(vaultsApiSetVaultAccountCustomerRefIdRequest);"
+ code: "const response: Promise> =\
+ \ fireblocks.blockchainsAssets.getBlockchain(blockchainsAssetsApiGetBlockchainRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response = fireblocks.vaults().setVaultAccountCustomerRefId(setCustomerRefIdRequest,\
- \ vaultAccountId, idempotencyKey);"
+ code: CompletableFuture> response = fireblocks.blockchainsAssets().getBlockchain(id);
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.set_vault_account_customer_ref_id(set_customer_ref_id_request,\
- \ vault_account_id, idempotency_key);"
+ code: response = fireblocks.blockchains_&_assets.get_blockchain(id);
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise> =\
- \ fireblocks.vaults.setVaultAccountCustomerRefId(vaultsApiSetVaultAccountCustomerRefIdRequest);"
+ source: "const response: Promise> =\
+ \ fireblocks.blockchainsAssets.getBlockchain(blockchainsAssetsApiGetBlockchainRequest);"
- lang: Java
- source: "CompletableFuture> response = fireblocks.vaults().setVaultAccountCustomerRefId(setCustomerRefIdRequest,\
- \ vaultAccountId, idempotencyKey);"
+ source: CompletableFuture> response = fireblocks.blockchainsAssets().getBlockchain(id);
- lang: Python
- source: "response = fireblocks.vaults.set_vault_account_customer_ref_id(set_customer_ref_id_request,\
- \ vault_account_id, idempotency_key);"
- x-content-type: application/json
+ source: response = fireblocks.blockchains_&_assets.get_blockchain(id);
x-accepts:
- application/json
- /vault/accounts/{vaultAccountId}/set_auto_fuel:
- post:
- description: |-
- Toggles the auto fueling property of the vault account to enabled or disabled.
- Vault Accounts with 'autoFuel=true' are monitored and auto fueled by the Fireblocks Gas Station.
- Learn more about the Fireblocks Gas Station in the following [guide](https://developers.fireblocks.com/docs/work-with-gas-station).
- Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
- operationId: setVaultAccountAutoFuel
- parameters:
- - description: The vault account ID
- explode: false
- in: path
- name: vaultAccountId
- required: true
- schema:
- format: numeric
- type: string
- x-fb-entity: vault_account
- style: simple
- - description: "A unique identifier for the request. If the request is sent\
- \ multiple times with the same idempotency key, the server will return the\
- \ same response as the first request. The idempotency key is valid for 24\
- \ hours."
- explode: false
- in: header
- name: Idempotency-Key
- required: false
- schema:
- type: string
- style: simple
- requestBody:
- content:
- application/json:
- schema:
- $ref: "#/components/schemas/SetAutoFuelRequest"
- required: true
+ /supported_assets:
+ get:
+ description: |
+ **This legacy endpoint has not been deprecated but it should not be used in your operations. Instead, use the new [List assets](https://developers.fireblocks.com/reference/listassets) endpoint for better performance and to retrieve more detailed asset information.**
+
+ Retrieves all assets supported by Fireblocks in your workspace.
+
+ **Endpoint Permissions:** Admin, Non-Signing Admin, Signer, Approver, Editor.
+ operationId: getSupportedAssets
responses:
- "201":
+ "200":
content:
application/json:
schema:
- $ref: "#/components/schemas/VaultActionStatus"
- description: OK
+ $ref: "#/components/schemas/GetSupportedAssetsResponse"
+ description: A Transaction object
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Set auto fueling to on or off
+ summary: List assets (Legacy)
tags:
- - Vaults
- x-rate-limit-category: write
+ - Blockchains & assets
+ x-rate-limit-category: external_query
x-readme:
code-samples:
+ - language: python
+ code: supportedAssets = fireblocks.get_supported_assets()
+ name: Fireblocks SDK Python example (Legacy)
+ - language: javascript
+ code: const supportedAssets = await fireblocks.getSupportedAssets();
+ name: Fireblocks SDK Javascript example
- language: typescript
- code: "const response: Promise> =\
- \ fireblocks.vaults.setVaultAccountAutoFuel(vaultsApiSetVaultAccountAutoFuelRequest);"
+ code: "const response: Promise>\
+ \ = fireblocks.blockchainsAssets.getSupportedAssets();"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response = fireblocks.vaults().setVaultAccountAutoFuel(setAutoFuelRequest,\
- \ vaultAccountId, idempotencyKey);"
+ code: CompletableFuture>> response =
+ fireblocks.blockchainsAssets().getSupportedAssets();
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.set_vault_account_auto_fuel(set_auto_fuel_request,\
- \ vault_account_id, idempotency_key);"
+ code: response = fireblocks.blockchains_&_assets.get_supported_assets();
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise> =\
- \ fireblocks.vaults.setVaultAccountAutoFuel(vaultsApiSetVaultAccountAutoFuelRequest);"
+ source: "const response: Promise>\
+ \ = fireblocks.blockchainsAssets.getSupportedAssets();"
- lang: Java
- source: "CompletableFuture> response = fireblocks.vaults().setVaultAccountAutoFuel(setAutoFuelRequest,\
- \ vaultAccountId, idempotencyKey);"
+ source: CompletableFuture>> response =
+ fireblocks.blockchainsAssets().getSupportedAssets();
- lang: Python
- source: "response = fireblocks.vaults.set_vault_account_auto_fuel(set_auto_fuel_request,\
- \ vault_account_id, idempotency_key);"
- x-content-type: application/json
+ source: response = fireblocks.blockchains_&_assets.get_supported_assets();
x-accepts:
- application/json
- /vault/accounts/{vaultAccountId}/usdc_gateway:
+ /address_registry/legal_entities/{address}:
get:
- description: |-
- Returns the USDC Gateway wallet information associated with the given vault account.
- **Note:** This endpoint is currently in beta and might be subject to changes.
- Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
- operationId: getUsdcGatewayWalletInfoBeta
+ description: "Returns legal entity information for the given blockchain address\
+ \ (LEI data availability, LEI identifier, Travel Rule providers, contact email,\
+ \ and related fields — see response schema). URL-encode `{address}` when required."
+ operationId: getLegalEntityForAddress
parameters:
- - description: The ID of the vault account
+ - description: Blockchain address to look up
explode: false
in: path
- name: vaultAccountId
+ name: address
required: true
schema:
- format: numeric
+ example: 0x742d35cc6634c0532925a3b844bc9e7595f0beb0
type: string
- x-fb-entity: vault_account
style: simple
responses:
"200":
content:
application/json:
schema:
- $ref: "#/components/schemas/UsdcGatewayWalletInfoResponse"
- description: USDC Gateway wallet information
+ $ref: "#/components/schemas/AddressRegistryLegalEntity"
+ description: Legal entity found
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "400":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AddressRegistryError"
+ description: "Bad request — either request validation (path `{address}`\
+ \ empty or whitespace-only after trim, e.g. encoded spaces only; numeric\
+ \ code 4100), or the authenticated workspace is not opted in to the address\
+ \ registry (numeric code 2140). The `message` field describes the failure;\
+ \ use `code` to distinguish."
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "404":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AddressRegistryError"
+ description: "Not found (error code 2142) — unresolved address, no legal\
+ \ entity for a resolved address, or the same not-found outcome in other\
+ \ cases."
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Get USDC Gateway wallet info
+ summary: Look up legal entity by blockchain address
tags:
- - Vaults
- x-rate-limit-category: read
+ - Compliance
+ x-rate-limit-category: high_compute
x-readme:
code-samples:
- language: typescript
- code: "const response: Promise>\
- \ = fireblocks.vaults.getUsdcGatewayWalletInfoBeta(vaultsApiGetUsdcGatewayWalletInfoBetaRequest);"
+ code: "const response: Promise>\
+ \ = fireblocks.compliance.getLegalEntityForAddress(complianceApiGetLegalEntityForAddressRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: CompletableFuture> response
- = fireblocks.vaults().getUsdcGatewayWalletInfoBeta(vaultAccountId);
+ code: CompletableFuture> response
+ = fireblocks.compliance().getLegalEntityForAddress(address);
name: Fireblocks SDK Java example
- language: python
- code: response = fireblocks.vaults.get_usdc_gateway_wallet_info_beta(vault_account_id);
+ code: response = fireblocks.compliance.get_legal_entity_for_address(address);
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise>\
- \ = fireblocks.vaults.getUsdcGatewayWalletInfoBeta(vaultsApiGetUsdcGatewayWalletInfoBetaRequest);"
+ source: "const response: Promise>\
+ \ = fireblocks.compliance.getLegalEntityForAddress(complianceApiGetLegalEntityForAddressRequest);"
- lang: Java
- source: CompletableFuture> response
- = fireblocks.vaults().getUsdcGatewayWalletInfoBeta(vaultAccountId);
+ source: CompletableFuture> response
+ = fireblocks.compliance().getLegalEntityForAddress(address);
- lang: Python
- source: response = fireblocks.vaults.get_usdc_gateway_wallet_info_beta(vault_account_id);
+ source: response = fireblocks.compliance.get_legal_entity_for_address(address);
x-accepts:
- application/json
- /vault/accounts/{vaultAccountId}/usdc_gateway/activate:
- post:
- description: |-
- Activates the USDC Gateway wallet associated with the given vault account. If the wallet does not yet exist it is created in an activated state.
- **Note:** This endpoint is currently in beta and might be subject to changes.
- Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver.
- operationId: activateUsdcGatewayWalletBeta
- parameters:
- - description: The ID of the vault account
- explode: false
- in: path
- name: vaultAccountId
- required: true
- schema:
- format: numeric
- type: string
- x-fb-entity: vault_account
- style: simple
- - description: "A unique identifier for the request. If the request is sent\
- \ multiple times with the same idempotency key, the server will return the\
- \ same response as the first request. The idempotency key is valid for 24\
- \ hours."
- explode: false
- in: header
- name: Idempotency-Key
- required: false
- schema:
- type: string
- style: simple
+ /address_registry/tenant:
+ delete:
+ description: Opts the workspace out. No request body. Response uses the same
+ JSON shape as GET; status is OPTED_OUT.
+ operationId: optOutAddressRegistryTenant
responses:
"200":
content:
application/json:
schema:
- $ref: "#/components/schemas/UsdcGatewayWalletStatusResponse"
- description: USDC Gateway wallet activated successfully
+ $ref: "#/components/schemas/AddressRegistryTenantRegistryResponse"
+ description: Success; response body includes status OPTED_OUT
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Activate a USDC Gateway wallet
+ summary: Opt the workspace out of the address registry
tags:
- - Vaults
+ - Compliance
x-rate-limit-category: write
x-readme:
code-samples:
- language: typescript
- code: "const response: Promise>\
- \ = fireblocks.vaults.activateUsdcGatewayWalletBeta(vaultsApiActivateUsdcGatewayWalletBetaRequest);"
+ code: "const response: Promise>\
+ \ = fireblocks.compliance.optOutAddressRegistryTenant();"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response\
- \ = fireblocks.vaults().activateUsdcGatewayWalletBeta(vaultAccountId,\
- \ idempotencyKey);"
+ code: CompletableFuture>
+ response = fireblocks.compliance().optOutAddressRegistryTenant();
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.activate_usdc_gateway_wallet_beta(vault_account_id,\
- \ idempotency_key);"
+ code: response = fireblocks.compliance.opt_out_address_registry_tenant();
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise>\
- \ = fireblocks.vaults.activateUsdcGatewayWalletBeta(vaultsApiActivateUsdcGatewayWalletBetaRequest);"
+ source: "const response: Promise>\
+ \ = fireblocks.compliance.optOutAddressRegistryTenant();"
- lang: Java
- source: "CompletableFuture> response\
- \ = fireblocks.vaults().activateUsdcGatewayWalletBeta(vaultAccountId, idempotencyKey);"
+ source: CompletableFuture>
+ response = fireblocks.compliance().optOutAddressRegistryTenant();
- lang: Python
- source: "response = fireblocks.vaults.activate_usdc_gateway_wallet_beta(vault_account_id,\
- \ idempotency_key);"
+ source: response = fireblocks.compliance.opt_out_address_registry_tenant();
x-accepts:
- application/json
- /vault/accounts/{vaultAccountId}/usdc_gateway/deactivate:
- post:
- description: |-
- Deactivates the USDC Gateway wallet associated with the given vault account.
- **Note:** This endpoint is currently in beta and might be subject to changes.
- Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver.
- operationId: deactivateUsdcGatewayWalletBeta
- parameters:
- - description: The ID of the vault account
- explode: false
- in: path
- name: vaultAccountId
- required: true
- schema:
- format: numeric
- type: string
- x-fb-entity: vault_account
- style: simple
+ get:
+ description: Returns whether the workspace is `OPTED_IN` or `OPTED_OUT` of the
+ address registry.
+ operationId: getAddressRegistryTenantParticipationStatus
+ responses:
+ "200":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AddressRegistryTenantRegistryResponse"
+ description: Participation status in the response body
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ default:
+ $ref: "#/components/responses/Error"
+ summary: Get address registry participation status for the authenticated workspace
+ tags:
+ - Compliance
+ x-rate-limit-category: read
+ x-readme:
+ code-samples:
+ - language: typescript
+ code: "const response: Promise>\
+ \ = fireblocks.compliance.getAddressRegistryTenantParticipationStatus();"
+ name: Fireblocks SDK TypeScript example
+ - language: java
+ code: CompletableFuture>
+ response = fireblocks.compliance().getAddressRegistryTenantParticipationStatus();
+ name: Fireblocks SDK Java example
+ - language: python
+ code: response = fireblocks.compliance.get_address_registry_tenant_participation_status();
+ name: Fireblocks SDK Python example
+ x-codeSamples:
+ - lang: TypeScript
+ source: "const response: Promise>\
+ \ = fireblocks.compliance.getAddressRegistryTenantParticipationStatus();"
+ - lang: Java
+ source: CompletableFuture>
+ response = fireblocks.compliance().getAddressRegistryTenantParticipationStatus();
+ - lang: Python
+ source: response = fireblocks.compliance.get_address_registry_tenant_participation_status();
+ x-accepts:
+ - application/json
+ post:
+ description: Opts the workspace in. No request body. Response uses the same
+ JSON shape as GET; status is OPTED_IN.
+ operationId: optInAddressRegistryTenant
+ parameters:
- description: "A unique identifier for the request. If the request is sent\
\ multiple times with the same idempotency key, the server will return the\
\ same response as the first request. The idempotency key is valid for 24\
@@ -1156,252 +1534,183 @@ paths:
content:
application/json:
schema:
- $ref: "#/components/schemas/UsdcGatewayWalletStatusResponse"
- description: USDC Gateway wallet deactivated successfully
+ $ref: "#/components/schemas/AddressRegistryTenantRegistryResponse"
+ description: Success; response body includes status OPTED_IN
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Deactivate a USDC Gateway wallet
+ summary: Opt the workspace in to the address registry
tags:
- - Vaults
+ - Compliance
x-rate-limit-category: write
x-readme:
code-samples:
- language: typescript
- code: "const response: Promise>\
- \ = fireblocks.vaults.deactivateUsdcGatewayWalletBeta(vaultsApiDeactivateUsdcGatewayWalletBetaRequest);"
+ code: "const response: Promise>\
+ \ = fireblocks.compliance.optInAddressRegistryTenant(complianceApiOptInAddressRegistryTenantRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response\
- \ = fireblocks.vaults().deactivateUsdcGatewayWalletBeta(vaultAccountId,\
- \ idempotencyKey);"
+ code: CompletableFuture>
+ response = fireblocks.compliance().optInAddressRegistryTenant(idempotencyKey);
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.deactivate_usdc_gateway_wallet_beta(vault_account_id,\
- \ idempotency_key);"
+ code: response = fireblocks.compliance.opt_in_address_registry_tenant(idempotency_key);
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise>\
- \ = fireblocks.vaults.deactivateUsdcGatewayWalletBeta(vaultsApiDeactivateUsdcGatewayWalletBetaRequest);"
+ source: "const response: Promise>\
+ \ = fireblocks.compliance.optInAddressRegistryTenant(complianceApiOptInAddressRegistryTenantRequest);"
- lang: Java
- source: "CompletableFuture> response\
- \ = fireblocks.vaults().deactivateUsdcGatewayWalletBeta(vaultAccountId,\
- \ idempotencyKey);"
+ source: CompletableFuture>
+ response = fireblocks.compliance().optInAddressRegistryTenant(idempotencyKey);
- lang: Python
- source: "response = fireblocks.vaults.deactivate_usdc_gateway_wallet_beta(vault_account_id,\
- \ idempotency_key);"
+ source: response = fireblocks.compliance.opt_in_address_registry_tenant(idempotency_key);
x-accepts:
- application/json
- /vault/accounts/{vaultAccountId}/{assetId}:
- get:
- description: |-
- Returns a specific vault wallet balance information for a specific asset.
-
- Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor,
- Viewer.
- operationId: getVaultAccountAsset
- parameters:
- - description: The ID of the vault account to return
- explode: false
- in: path
- name: vaultAccountId
- required: true
- schema:
- format: numeric
- type: string
- x-fb-entity: vault_account
- style: simple
- - description: The ID of the asset
- explode: false
- in: path
- name: assetId
- required: true
- schema:
- type: string
- x-fb-entity: asset
- style: simple
+ /address_registry/vaults:
+ delete:
+ description: Removes all vault accounts from the workspace opt-out list.
+ operationId: removeAllAddressRegistryVaultOptOuts
responses:
"200":
content:
application/json:
schema:
- $ref: "#/components/schemas/VaultAsset"
- description: A VaultAsset object
+ $ref: "#/components/schemas/AddressRegistryRemoveAllVaultOptOutsResponse"
+ description: All opt-outs cleared; response body includes `removedCount`.
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Get the asset balance for a vault account
+ summary: Remove all vault-level address registry opt-outs for the workspace
tags:
- - Vaults
- x-rate-limit-category: read
+ - Compliance
+ x-rate-limit-category: write
x-readme:
code-samples:
- - language: python
- code: "vaultAsset = fireblocks.get_vault_account_asset(vault_account_id,\
- \ asset_id)"
- name: Fireblocks SDK Python example (Legacy)
- - language: javascript
- code: "const vaultAsset = await fireblocks.getVaultAccountAsset(vaultAccountId,\
- \ assetId);"
- name: Fireblocks SDK Javascript example
- language: typescript
- code: "const response: Promise> = fireblocks.vaults.getVaultAccountAsset(vaultsApiGetVaultAccountAssetRequest);"
+ code: "const response: Promise>\
+ \ = fireblocks.compliance.removeAllAddressRegistryVaultOptOuts();"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response = fireblocks.vaults().getVaultAccountAsset(vaultAccountId,\
- \ assetId);"
+ code: CompletableFuture>
+ response = fireblocks.compliance().removeAllAddressRegistryVaultOptOuts();
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.get_vault_account_asset(vault_account_id,\
- \ asset_id);"
+ code: response = fireblocks.compliance.remove_all_address_registry_vault_opt_outs();
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise> = fireblocks.vaults.getVaultAccountAsset(vaultsApiGetVaultAccountAssetRequest);"
+ source: "const response: Promise>\
+ \ = fireblocks.compliance.removeAllAddressRegistryVaultOptOuts();"
- lang: Java
- source: "CompletableFuture> response = fireblocks.vaults().getVaultAccountAsset(vaultAccountId,\
- \ assetId);"
+ source: CompletableFuture>
+ response = fireblocks.compliance().removeAllAddressRegistryVaultOptOuts();
- lang: Python
- source: "response = fireblocks.vaults.get_vault_account_asset(vault_account_id,\
- \ asset_id);"
+ source: response = fireblocks.compliance.remove_all_address_registry_vault_opt_outs();
x-accepts:
- application/json
- post:
- description: |-
- Creates a wallet for a specific asset in a vault account.
- Learn more about Fireblocks Vault Wallets in the following [guide](https://developers.fireblocks.com/reference/create-vault-wallet).
- Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
- operationId: createVaultAccountAsset
+ get:
+ description: "Lists vault accounts that are opted out of the address registry\
+ \ for this workspace. Pagination uses `next` and `prev` cursors from the response.\
+ \ If `pageSize` is omitted, **50** items are returned per page; allowed range\
+ \ is **1–100** per request."
+ operationId: listAddressRegistryVaultOptOuts
parameters:
- - description: "The ID of the vault account to return, or 'default' for the\
- \ default vault account"
- explode: false
- in: path
- name: vaultAccountId
- required: true
- schema:
- format: numeric
- type: string
- x-fb-entity: vault_account
- style: simple
- - description: The ID of the asset
- explode: false
- in: path
- name: assetId
- required: true
- schema:
- type: string
- x-fb-entity: asset
- style: simple
- - description: "A unique identifier for the request. If the request is sent\
- \ multiple times with the same idempotency key, the server will return the\
- \ same response as the first request. The idempotency key is valid for 24\
- \ hours."
- explode: false
- in: header
- name: Idempotency-Key
+ - description: Opaque cursor from a previous response (`next` or `prev`). Omit
+ for the first page.
+ explode: true
+ in: query
+ name: pageCursor
required: false
schema:
+ example: eyJvZmZzZXQiOjAsInBhZ2VTaXplIjoxMH0
type: string
- style: simple
- - description: Optional immutable blockchain wallet type to store per tenant+vault
+ style: form
+ - description: Page size. Default **50** if omitted; must be between **1** and
+ **100**.
explode: true
in: query
- name: blockchainWalletType
+ name: pageSize
required: false
schema:
- type: string
+ default: 50
+ example: 50
+ format: int32
+ maximum: 100
+ minimum: 1
+ type: integer
style: form
- requestBody:
- content:
- application/json:
- schema:
- $ref: "#/components/schemas/CreateAssetsRequest"
+ - description: Sort direction by vault account id. Omit for ascending; use the
+ enum value for descending.
+ explode: true
+ in: query
+ name: order
required: false
+ schema:
+ $ref: "#/components/schemas/AddressRegistryVaultListOrder"
+ style: form
responses:
"200":
content:
application/json:
schema:
- $ref: "#/components/schemas/CreateVaultAssetResponse"
- description: OK
+ $ref: "#/components/schemas/AddressRegistryListVaultOptOutsResponse"
+ description: Page of vault opt-out rows
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "400":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AddressRegistryError"
+ description: Validation error (e.g. invalid or malformed pageCursor)
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Create a new vault wallet
+ summary: List vault-level address registry opt-outs (paginated)
tags:
- - Vaults
- x-rate-limit-category: write
+ - Compliance
+ x-rate-limit-category: read
x-readme:
code-samples:
- - language: python
- code: "vaultAsset = fireblocks.create_vault_asset(vault_account_id, asset_id)"
- name: Fireblocks SDK Python example (Legacy)
- - language: javascript
- code: "const vaultAsset = await fireblocks.createVaultAsset(vaultAccountId,\
- \ assetId);"
- name: Fireblocks SDK Javascript example
- language: typescript
- code: "const response: Promise>\
- \ = fireblocks.vaults.createVaultAccountAsset(vaultsApiCreateVaultAccountAssetRequest);"
+ code: "const response: Promise>\
+ \ = fireblocks.compliance.listAddressRegistryVaultOptOuts(complianceApiListAddressRegistryVaultOptOutsRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response\
- \ = fireblocks.vaults().createVaultAccountAsset(vaultAccountId, assetId,\
- \ createAssetsRequest, blockchainWalletType, idempotencyKey);"
+ code: "CompletableFuture>\
+ \ response = fireblocks.compliance().listAddressRegistryVaultOptOuts(pageCursor,\
+ \ pageSize, order);"
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.create_vault_account_asset(vault_account_id,\
- \ asset_id, create_assets_request, blockchain_wallet_type, idempotency_key);"
+ code: "response = fireblocks.compliance.list_address_registry_vault_opt_outs(page_cursor,\
+ \ page_size, order);"
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise>\
- \ = fireblocks.vaults.createVaultAccountAsset(vaultsApiCreateVaultAccountAssetRequest);"
+ source: "const response: Promise>\
+ \ = fireblocks.compliance.listAddressRegistryVaultOptOuts(complianceApiListAddressRegistryVaultOptOutsRequest);"
- lang: Java
- source: "CompletableFuture> response\
- \ = fireblocks.vaults().createVaultAccountAsset(vaultAccountId, assetId,\
- \ createAssetsRequest, blockchainWalletType, idempotencyKey);"
+ source: "CompletableFuture>\
+ \ response = fireblocks.compliance().listAddressRegistryVaultOptOuts(pageCursor,\
+ \ pageSize, order);"
- lang: Python
- source: "response = fireblocks.vaults.create_vault_account_asset(vault_account_id,\
- \ asset_id, create_assets_request, blockchain_wallet_type, idempotency_key);"
- x-content-type: application/json
+ source: "response = fireblocks.compliance.list_address_registry_vault_opt_outs(page_cursor,\
+ \ page_size, order);"
x-accepts:
- application/json
- /vault/accounts/{vaultAccountId}/{assetId}/balance:
post:
- description: |-
- Updates the balance of a specific asset in a vault account.
-
- This API endpoint is subject to a strict rate limit.
- Should be used by clients in very specific scenarios.
-
- Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
- operationId: updateVaultAccountAssetBalance
+ description: Adds one or more vault account ids to the workspace opt-out list
+ for the address registry.
+ operationId: addAddressRegistryVaultOptOuts
parameters:
- - description: The ID of the vault account to return
- explode: false
- in: path
- name: vaultAccountId
- required: true
- schema:
- format: numeric
- type: string
- x-fb-entity: vault_account
- style: simple
- - description: The ID of the asset
- explode: false
- in: path
- name: assetId
- required: true
- schema:
- type: string
- x-fb-entity: asset
- style: simple
- description: "A unique identifier for the request. If the request is sent\
\ multiple times with the same idempotency key, the server will return the\
\ same response as the first request. The idempotency key is valid for 24\
@@ -1413,607 +1722,475 @@ paths:
schema:
type: string
style: simple
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AddressRegistryAddVaultOptOutsRequest"
+ required: true
responses:
"200":
content:
application/json:
schema:
- $ref: "#/components/schemas/VaultAsset"
- description: A VaultAsset object
+ $ref: "#/components/schemas/AddressRegistryAddVaultOptOutsResponse"
+ description: Opt-outs recorded; response body includes `acceptedCount`.
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "400":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AddressRegistryError"
+ description: Validation error (e.g. empty list or invalid vault ids)
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Refresh asset balance data
+ summary: Add vault accounts to the address registry opt-out list
tags:
- - Vaults
- x-rate-limit-category: high_compute
+ - Compliance
+ x-rate-limit-category: write
x-readme:
code-samples:
- - language: python
- code: "vaultAsset = fireblocks.refresh_vault_asset_balance(vault_account_id,\
- \ asset_id)"
- name: Fireblocks SDK Python example (Legacy)
- - language: javascript
- code: "const vaultAsset = await fireblocks.refreshVaultAssetBalance(vaultAccountId,\
- \ assetId);"
- name: Fireblocks SDK Javascript example
- language: typescript
- code: "const response: Promise> = fireblocks.vaults.updateVaultAccountAssetBalance(vaultsApiUpdateVaultAccountAssetBalanceRequest);"
+ code: "const response: Promise>\
+ \ = fireblocks.compliance.addAddressRegistryVaultOptOuts(complianceApiAddAddressRegistryVaultOptOutsRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response = fireblocks.vaults().updateVaultAccountAssetBalance(vaultAccountId,\
- \ assetId, idempotencyKey);"
+ code: "CompletableFuture>\
+ \ response = fireblocks.compliance().addAddressRegistryVaultOptOuts(addressRegistryAddVaultOptOutsRequest,\
+ \ idempotencyKey);"
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.update_vault_account_asset_balance(vault_account_id,\
- \ asset_id, idempotency_key);"
+ code: "response = fireblocks.compliance.add_address_registry_vault_opt_outs(address_registry_add_vault_opt_outs_request,\
+ \ idempotency_key);"
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise> = fireblocks.vaults.updateVaultAccountAssetBalance(vaultsApiUpdateVaultAccountAssetBalanceRequest);"
+ source: "const response: Promise>\
+ \ = fireblocks.compliance.addAddressRegistryVaultOptOuts(complianceApiAddAddressRegistryVaultOptOutsRequest);"
- lang: Java
- source: "CompletableFuture> response = fireblocks.vaults().updateVaultAccountAssetBalance(vaultAccountId,\
- \ assetId, idempotencyKey);"
+ source: "CompletableFuture>\
+ \ response = fireblocks.compliance().addAddressRegistryVaultOptOuts(addressRegistryAddVaultOptOutsRequest,\
+ \ idempotencyKey);"
- lang: Python
- source: "response = fireblocks.vaults.update_vault_account_asset_balance(vault_account_id,\
- \ asset_id, idempotency_key);"
+ source: "response = fireblocks.compliance.add_address_registry_vault_opt_outs(address_registry_add_vault_opt_outs_request,\
+ \ idempotency_key);"
+ x-content-type: application/json
x-accepts:
- application/json
- /vault/accounts/{vaultAccountId}/{assetId}/addresses:
- get:
- deprecated: true
- description: |-
- DEPRECATED!
-
- - If your application logic or scripts rely on the deprecated endpoint, you should update to account for GET/V1/vault/accounts/{vaultAccountId}/{assetId}/addresses_paginated before Mar 31,2024.
- - All workspaces created after Mar 31,2024. will have it disabled. If it is disabled for your workspace and you attempt to use it, you will receive the following error message: "This endpoint is unavailable.
- - Please use the GET /v1/vault/accounts/{vaultAccountId}/{assetId}/addresses_paginated endpoint to return all the wallet addresses associated with the specified vault account and asset in a paginated list.
-
- Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
- operationId: getVaultAccountAssetAddresses
+ /address_registry/vaults/{vaultAccountId}:
+ delete:
+ description: "Removes this vault account id from the workspace opt-out list\
+ \ if it is present; otherwise the call still succeeds. Response body matches\
+ \ GET (`optedOut` is `false` after success). To clear the whole list, use\
+ \ `DELETE /v1/address_registry/vaults`."
+ operationId: removeAddressRegistryVaultOptOut
parameters:
- - description: The ID of the vault account to return
+ - description: Vault account id (non-negative integer).
explode: false
in: path
name: vaultAccountId
required: true
schema:
- format: numeric
- type: string
- x-fb-entity: vault_account
- style: simple
- - description: The ID of the asset
- explode: false
- in: path
- name: assetId
- required: true
- schema:
- type: string
- x-fb-entity: asset
+ example: 10001
+ format: int32
+ minimum: 0
+ type: integer
style: simple
responses:
"200":
content:
application/json:
schema:
- $ref: "#/components/schemas/GetVaultAccountAssetAddressesResponse"
- description: A list of deposit addresses
+ $ref: "#/components/schemas/AddressRegistryRemoveVaultOptOutResponse"
+ description: Success; `optedOut` is false (list entry removed if it existed)
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "400":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AddressRegistryError"
+ description: Invalid path parameter (e.g. negative or out-of-range vault
+ account id)
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Get asset addresses
+ summary: Remove a single vault account from the address registry opt-out list
tags:
- - Vaults
- x-internal: true
- x-rate-limit-category: query
+ - Compliance
+ x-rate-limit-category: write
x-readme:
code-samples:
+ - language: typescript
+ code: "const response: Promise>\
+ \ = fireblocks.compliance.removeAddressRegistryVaultOptOut(complianceApiRemoveAddressRegistryVaultOptOutRequest);"
+ name: Fireblocks SDK TypeScript example
+ - language: java
+ code: CompletableFuture>
+ response = fireblocks.compliance().removeAddressRegistryVaultOptOut(vaultAccountId);
+ name: Fireblocks SDK Java example
- language: python
- code: "depositAddresses = fireblocks.get_deposit_addresses(vault_account_id,\
- \ asset_id)"
- name: Fireblocks SDK Python example (Legacy)
- - language: javascript
- code: "const depositAddresses = await fireblocks.getDepositAddresses(vaultAccountId,\
- \ assetId);"
- name: Fireblocks SDK Javascript example
+ code: response = fireblocks.compliance.remove_address_registry_vault_opt_out(vault_account_id);
+ name: Fireblocks SDK Python example
+ x-codeSamples:
+ - lang: TypeScript
+ source: "const response: Promise>\
+ \ = fireblocks.compliance.removeAddressRegistryVaultOptOut(complianceApiRemoveAddressRegistryVaultOptOutRequest);"
+ - lang: Java
+ source: CompletableFuture>
+ response = fireblocks.compliance().removeAddressRegistryVaultOptOut(vaultAccountId);
+ - lang: Python
+ source: response = fireblocks.compliance.remove_address_registry_vault_opt_out(vault_account_id);
x-accepts:
- application/json
- post:
- description: |-
- Creates a new deposit address for an asset of a vault account.
- Should be used for UTXO or Tag/Memo based assets ONLY.
-
- Requests with account based assets will fail.
-
- Endpoint Permission: Admin, Non-Signing Admin.
- operationId: createVaultAccountAssetAddress
+ get:
+ description: "Returns whether this vault account is on the workspace opt-out\
+ \ list (`optedOut` true or false). List, add, and clear-all are available\
+ \ on `/v1/address_registry/vaults`; this path reads or removes one vault."
+ operationId: getAddressRegistryVaultOptOut
parameters:
- - description: The ID of the vault account to return
+ - description: Vault account id (non-negative integer).
explode: false
in: path
name: vaultAccountId
required: true
schema:
- format: numeric
- type: string
- x-fb-entity: vault_account
- style: simple
- - description: The ID of the asset
- explode: false
- in: path
- name: assetId
- required: true
- schema:
- type: string
- x-fb-entity: asset
- style: simple
- - description: "A unique identifier for the request. If the request is sent\
- \ multiple times with the same idempotency key, the server will return the\
- \ same response as the first request. The idempotency key is valid for 24\
- \ hours."
- explode: false
- in: header
- name: Idempotency-Key
- required: false
- schema:
- type: string
+ example: 10001
+ format: int32
+ minimum: 0
+ type: integer
style: simple
- requestBody:
- content:
- application/json:
- schema:
- $ref: "#/components/schemas/CreateAddressRequest"
- required: false
responses:
"200":
content:
application/json:
schema:
- $ref: "#/components/schemas/CreateAddressResponse"
- description: The created address
- headers:
+ $ref: "#/components/schemas/AddressRegistryGetVaultOptOutResponse"
+ description: Current opt-out flag for the vault
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "400":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AddressRegistryError"
+ description: Invalid path parameter (e.g. negative or out-of-range vault
+ account id)
+ headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Create new asset deposit address
+ summary: Get whether a vault account is opted out of the address registry
tags:
- - Vaults
- x-rate-limit-category: write
+ - Compliance
+ x-rate-limit-category: read
x-readme:
code-samples:
- - language: python
- code: "address = fireblocks.generate_new_address(vault_account_id, asset_id,\
- \ description, customer_ref_id)"
- name: Fireblocks SDK Python example (Legacy)
- - language: javascript
- code: "const address = await fireblocks.generateNewAddress(vaultAccountId,\
- \ assetId, description, customerRefId);"
- name: Fireblocks SDK Javascript example
- language: typescript
- code: "const response: Promise>\
- \ = fireblocks.vaults.createVaultAccountAssetAddress(vaultsApiCreateVaultAccountAssetAddressRequest);"
+ code: "const response: Promise>\
+ \ = fireblocks.compliance.getAddressRegistryVaultOptOut(complianceApiGetAddressRegistryVaultOptOutRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response =\
- \ fireblocks.vaults().createVaultAccountAssetAddress(vaultAccountId, assetId,\
- \ createAddressRequest, idempotencyKey);"
+ code: CompletableFuture>
+ response = fireblocks.compliance().getAddressRegistryVaultOptOut(vaultAccountId);
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.create_vault_account_asset_address(vault_account_id,\
- \ asset_id, create_address_request, idempotency_key);"
+ code: response = fireblocks.compliance.get_address_registry_vault_opt_out(vault_account_id);
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise>\
- \ = fireblocks.vaults.createVaultAccountAssetAddress(vaultsApiCreateVaultAccountAssetAddressRequest);"
+ source: "const response: Promise>\
+ \ = fireblocks.compliance.getAddressRegistryVaultOptOut(complianceApiGetAddressRegistryVaultOptOutRequest);"
- lang: Java
- source: "CompletableFuture> response =\
- \ fireblocks.vaults().createVaultAccountAssetAddress(vaultAccountId, assetId,\
- \ createAddressRequest, idempotencyKey);"
+ source: CompletableFuture>
+ response = fireblocks.compliance().getAddressRegistryVaultOptOut(vaultAccountId);
- lang: Python
- source: "response = fireblocks.vaults.create_vault_account_asset_address(vault_account_id,\
- \ asset_id, create_address_request, idempotency_key);"
- x-content-type: application/json
+ source: response = fireblocks.compliance.get_address_registry_vault_opt_out(vault_account_id);
x-accepts:
- application/json
- /vault/accounts/{vaultAccountId}/{assetId}/addresses_paginated:
+ /counterparty_groups:
get:
- description: |-
- Returns a paginated response of the addresses for a given vault account and asset.
- Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
- operationId: getVaultAccountAssetAddressesPaginated
+ description: |
+ Returns a paginated list of counterparty groups.
+
+ **Endpoint Permissions:** Admin, Non-Signing Admin, Viewer.
+ operationId: listCounterpartyGroups
parameters:
- - description: The ID of the vault account to return
- explode: false
- in: path
- name: vaultAccountId
- required: true
- schema:
- format: numeric
- type: string
- x-fb-entity: vault_account
- style: simple
- - description: The ID of the asset
- explode: false
- in: path
- name: assetId
- required: true
- schema:
- type: string
- x-fb-entity: asset
- style: simple
- - explode: true
- in: query
- name: limit
- required: false
- schema:
- type: number
- style: form
- - explode: true
+ - description: Cursor of the required page
+ explode: true
in: query
- name: before
+ name: pageCursor
required: false
schema:
type: string
style: form
- - explode: true
+ - description: Maximum number of items in the page
+ explode: true
in: query
- name: after
+ name: pageSize
required: false
schema:
- type: string
+ default: 50
+ maximum: 100
+ minimum: 1
+ type: integer
style: form
responses:
"200":
content:
application/json:
schema:
- $ref: "#/components/schemas/PaginatedAddressResponse"
- description: "A paginated list of addresses, and pagination info."
+ $ref: "#/components/schemas/CounterpartyGroupsPaginatedResponse"
+ description: A paginated list of counterparty groups
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Get addresses (Paginated)
+ summary: List counterparty groups
tags:
- - Vaults
+ - Compliance
x-rate-limit-category: query
x-readme:
code-samples:
- - language: python
- code: "addresses = vault_accounts = fireblocks.get_paginated_addresses(\"\
- 0\",\"ETH_TEST3\")"
- name: Fireblocks SDK Python example (Legacy)
- - language: javascript
- code: "const addresses = await fireblocks.getPaginatedAddresses(\"0\",\"\
- ETH_TEST3\");"
- name: Fireblocks SDK Javascript example
- language: typescript
- code: "const response: Promise>\
- \ = fireblocks.vaults.getVaultAccountAssetAddressesPaginated(vaultsApiGetVaultAccountAssetAddressesPaginatedRequest);"
+ code: "const response: Promise>\
+ \ = fireblocks.compliance.listCounterpartyGroups(complianceApiListCounterpartyGroupsRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response\
- \ = fireblocks.vaults().getVaultAccountAssetAddressesPaginated(vaultAccountId,\
- \ assetId, limit, before, after);"
+ code: "CompletableFuture>\
+ \ response = fireblocks.compliance().listCounterpartyGroups(pageCursor,\
+ \ pageSize);"
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.get_vault_account_asset_addresses_paginated(vault_account_id,\
- \ asset_id, limit, before, after);"
+ code: "response = fireblocks.compliance.list_counterparty_groups(page_cursor,\
+ \ page_size);"
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise>\
- \ = fireblocks.vaults.getVaultAccountAssetAddressesPaginated(vaultsApiGetVaultAccountAssetAddressesPaginatedRequest);"
+ source: "const response: Promise>\
+ \ = fireblocks.compliance.listCounterpartyGroups(complianceApiListCounterpartyGroupsRequest);"
- lang: Java
- source: "CompletableFuture> response\
- \ = fireblocks.vaults().getVaultAccountAssetAddressesPaginated(vaultAccountId,\
- \ assetId, limit, before, after);"
+ source: "CompletableFuture>\
+ \ response = fireblocks.compliance().listCounterpartyGroups(pageCursor,\
+ \ pageSize);"
- lang: Python
- source: "response = fireblocks.vaults.get_vault_account_asset_addresses_paginated(vault_account_id,\
- \ asset_id, limit, before, after);"
+ source: "response = fireblocks.compliance.list_counterparty_groups(page_cursor,\
+ \ page_size);"
x-accepts:
- application/json
- /vault/accounts/{vaultAccountId}/{assetId}/max_spendable_amount:
- get:
+ post:
description: |
- **UTXO assets only.**
-
- Retrieve the maximum amount of the specified asset that can be spent in a single transaction from the specified vault account.
+ Creates a new counterparty group.
- **Endpoint Permissions:** Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
- operationId: getMaxSpendableAmount
+ **Endpoint Permissions:** Admin, Non-Signing Admin.
+ operationId: createCounterpartyGroup
parameters:
- - description: "The ID of the vault account, or 'default' for the default vault\
- \ account"
+ - description: "A unique identifier for the request. If the request is sent\
+ \ multiple times with the same idempotency key, the server will return the\
+ \ same response as the first request. The idempotency key is valid for 24\
+ \ hours."
explode: false
- in: path
- name: vaultAccountId
- required: true
+ in: header
+ name: Idempotency-Key
+ required: false
schema:
- format: numeric
type: string
- x-fb-entity: vault_account
style: simple
- - description: The ID of the asset
- explode: false
- in: path
- name: assetId
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/CreateCounterpartyGroupRequest"
required: true
- schema:
- type: string
- x-fb-entity: asset
- style: simple
- - description: False by default. The maximum number of inputs depends if the
- transaction will be signed by an automated co-signer server or on a mobile
- device.
- explode: true
- in: query
- name: manualSignging
- required: false
- schema:
- type: boolean
- style: form
responses:
- "200":
+ "201":
content:
application/json:
schema:
- $ref: "#/components/schemas/GetMaxSpendableAmountResponse"
- description: OK
+ $ref: "#/components/schemas/CounterpartyGroup"
+ description: Counterparty group created successfully
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Get max spendable amount in a transaction
+ summary: Create a counterparty group
tags:
- - Vaults
- x-rate-limit-category: read
+ - Compliance
+ x-rate-limit-category: write
x-readme:
code-samples:
- - language: python
- code: "address = fireblocks.set_address_description(vault_account_id, asset_id,\
- \ address, tag, description)"
- name: Fireblocks SDK Python example (Legacy)
- - language: javascript
- code: "const address = await fireblocks.setAddressDescription(vaultAccountId,\
- \ assetId, address, tag, description);"
- name: Fireblocks SDK Javascript example
- language: typescript
- code: "const response: Promise>\
- \ = fireblocks.vaults.getMaxSpendableAmount(vaultsApiGetMaxSpendableAmountRequest);"
+ code: "const response: Promise> =\
+ \ fireblocks.compliance.createCounterpartyGroup(complianceApiCreateCounterpartyGroupRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response\
- \ = fireblocks.vaults().getMaxSpendableAmount(vaultAccountId, assetId,\
- \ manualSignging);"
+ code: "CompletableFuture> response = fireblocks.compliance().createCounterpartyGroup(createCounterpartyGroupRequest,\
+ \ idempotencyKey);"
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.get_max_spendable_amount(vault_account_id,\
- \ asset_id, manual_signging);"
+ code: "response = fireblocks.compliance.create_counterparty_group(create_counterparty_group_request,\
+ \ idempotency_key);"
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise>\
- \ = fireblocks.vaults.getMaxSpendableAmount(vaultsApiGetMaxSpendableAmountRequest);"
+ source: "const response: Promise> =\
+ \ fireblocks.compliance.createCounterpartyGroup(complianceApiCreateCounterpartyGroupRequest);"
- lang: Java
- source: "CompletableFuture> response\
- \ = fireblocks.vaults().getMaxSpendableAmount(vaultAccountId, assetId, manualSignging);"
+ source: "CompletableFuture> response = fireblocks.compliance().createCounterpartyGroup(createCounterpartyGroupRequest,\
+ \ idempotencyKey);"
- lang: Python
- source: "response = fireblocks.vaults.get_max_spendable_amount(vault_account_id,\
- \ asset_id, manual_signging);"
+ source: "response = fireblocks.compliance.create_counterparty_group(create_counterparty_group_request,\
+ \ idempotency_key);"
+ x-content-type: application/json
x-accepts:
- application/json
- /vault/accounts/{vaultAccountId}/{assetId}/max_bip44_index_used:
- get:
- description: Retrieves the maximum BIP44 address index and change address index
- used for a specific asset in a vault account (BIP44 standard).
- operationId: getMaxBipIndexUsed
+ /counterparty_groups/{groupId}:
+ delete:
+ description: |
+ Permanently deletes a counterparty group.
+
+ **Endpoint Permissions:** Admin, Non-Signing Admin.
+ operationId: deleteCounterpartyGroup
parameters:
- - description: The ID of the vault account
- explode: false
- in: path
- name: vaultAccountId
- required: true
- schema:
- format: numeric
- type: string
- x-fb-entity: vault_account
- style: simple
- - description: The ID of the asset
+ - description: The unique identifier of the counterparty group
explode: false
in: path
- name: assetId
+ name: groupId
required: true
schema:
+ format: uuid
type: string
- x-fb-entity: asset
style: simple
responses:
- "200":
+ "204":
+ description: Counterparty group deleted successfully
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "404":
content:
application/json:
schema:
- $ref: "#/components/schemas/GetMaxBipIndexUsedResponse"
- description: OK
+ $ref: "#/components/schemas/ErrorSchema"
+ description: Counterparty group not found
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Get maximum BIP44 index used
+ summary: Delete a counterparty group
tags:
- - Vaults
- x-rate-limit-category: read
+ - Compliance
+ x-rate-limit-category: write
x-readme:
code-samples:
- language: typescript
- code: "const response: Promise>\
- \ = fireblocks.vaults.getMaxBipIndexUsed(vaultsApiGetMaxBipIndexUsedRequest);"
+ code: "const response: Promise> = fireblocks.compliance.deleteCounterpartyGroup(complianceApiDeleteCounterpartyGroupRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response\
- \ = fireblocks.vaults().getMaxBipIndexUsed(vaultAccountId, assetId);"
+ code: CompletableFuture> response = fireblocks.compliance().deleteCounterpartyGroup(groupId);
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.get_max_bip_index_used(vault_account_id,\
- \ asset_id);"
+ code: response = fireblocks.compliance.delete_counterparty_group(group_id);
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise>\
- \ = fireblocks.vaults.getMaxBipIndexUsed(vaultsApiGetMaxBipIndexUsedRequest);"
+ source: "const response: Promise> = fireblocks.compliance.deleteCounterpartyGroup(complianceApiDeleteCounterpartyGroupRequest);"
- lang: Java
- source: "CompletableFuture> response\
- \ = fireblocks.vaults().getMaxBipIndexUsed(vaultAccountId, assetId);"
+ source: CompletableFuture> response = fireblocks.compliance().deleteCounterpartyGroup(groupId);
- lang: Python
- source: "response = fireblocks.vaults.get_max_bip_index_used(vault_account_id,\
- \ asset_id);"
+ source: response = fireblocks.compliance.delete_counterparty_group(group_id);
x-accepts:
- application/json
- /vault/accounts/{vaultAccountId}/{assetId}/addresses/{addressId}:
- put:
- description: |-
- Updates the description of an existing address of an asset in a vault account.
- Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
- operationId: updateVaultAccountAssetAddress
+ get:
+ description: |
+ Returns the details of a specific counterparty group.
+
+ **Endpoint Permissions:** Admin, Non-Signing Admin, Viewer.
+ operationId: getCounterpartyGroup
parameters:
- - description: The ID of the vault account
- explode: false
- in: path
- name: vaultAccountId
- required: true
- schema:
- format: numeric
- type: string
- x-fb-entity: vault_account
- style: simple
- - description: The ID of the asset
- explode: false
- in: path
- name: assetId
- required: true
- schema:
- type: string
- x-fb-entity: asset
- style: simple
- - description: "The address for which to add a description. For XRP, use :,\
- \ for all other assets, use only the address"
+ - description: The unique identifier of the counterparty group
explode: false
in: path
- name: addressId
+ name: groupId
required: true
schema:
+ format: uuid
type: string
style: simple
- - description: "A unique identifier for the request. If the request is sent\
- \ multiple times with the same idempotency key, the server will return the\
- \ same response as the first request. The idempotency key is valid for 24\
- \ hours."
- explode: false
- in: header
- name: Idempotency-Key
- required: false
- schema:
- type: string
- style: simple
- requestBody:
- content:
- application/json:
- schema:
- $ref: "#/components/schemas/UpdateVaultAccountAssetAddressRequest"
- required: false
responses:
- "201":
+ "200":
content:
application/json:
schema:
- $ref: "#/components/schemas/VaultActionStatus"
- description: OK
+ $ref: "#/components/schemas/CounterpartyGroup"
+ description: A counterparty group object
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "404":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorSchema"
+ description: Counterparty group not found
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Update address description
+ summary: Get a counterparty group
tags:
- - Vaults
- x-rate-limit-category: write
+ - Compliance
+ x-rate-limit-category: read
x-readme:
code-samples:
- - language: python
- code: "address = fireblocks.set_address_description(vault_account_id, asset_id,\
- \ address, tag, description)"
- name: Fireblocks SDK Python example (Legacy)
- - language: javascript
- code: "const address = await fireblocks.setAddressDescription(vaultAccountId,\
- \ assetId, address, tag, description);"
- name: Fireblocks SDK Javascript example
- language: typescript
- code: "const response: Promise> =\
- \ fireblocks.vaults.updateVaultAccountAssetAddress(vaultsApiUpdateVaultAccountAssetAddressRequest);"
+ code: "const response: Promise> =\
+ \ fireblocks.compliance.getCounterpartyGroup(complianceApiGetCounterpartyGroupRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response = fireblocks.vaults().updateVaultAccountAssetAddress(vaultAccountId,\
- \ assetId, addressId, updateVaultAccountAssetAddressRequest, idempotencyKey);"
+ code: CompletableFuture> response = fireblocks.compliance().getCounterpartyGroup(groupId);
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.update_vault_account_asset_address(vault_account_id,\
- \ asset_id, address_id, update_vault_account_asset_address_request, idempotency_key);"
+ code: response = fireblocks.compliance.get_counterparty_group(group_id);
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise> =\
- \ fireblocks.vaults.updateVaultAccountAssetAddress(vaultsApiUpdateVaultAccountAssetAddressRequest);"
+ source: "const response: Promise> =\
+ \ fireblocks.compliance.getCounterpartyGroup(complianceApiGetCounterpartyGroupRequest);"
- lang: Java
- source: "CompletableFuture> response = fireblocks.vaults().updateVaultAccountAssetAddress(vaultAccountId,\
- \ assetId, addressId, updateVaultAccountAssetAddressRequest, idempotencyKey);"
+ source: CompletableFuture> response = fireblocks.compliance().getCounterpartyGroup(groupId);
- lang: Python
- source: "response = fireblocks.vaults.update_vault_account_asset_address(vault_account_id,\
- \ asset_id, address_id, update_vault_account_asset_address_request, idempotency_key);"
- x-content-type: application/json
+ source: response = fireblocks.compliance.get_counterparty_group(group_id);
x-accepts:
- application/json
- /vault/accounts/{vaultAccountId}/{assetId}/addresses/{addressId}/set_customer_ref_id:
- post:
- description: |-
- Sets an AML/KYT customer reference ID for a specific address.
- Endpoint Permission: Admin, Non-Signing Admin.
- operationId: setCustomerRefIdForAddress
+ patch:
+ description: |
+ Updates an existing counterparty group.
+
+ **Endpoint Permissions:** Admin, Non-Signing Admin.
+ operationId: updateCounterpartyGroup
parameters:
- - description: The ID of the vault account
- explode: false
- in: path
- name: vaultAccountId
- required: true
- schema:
- format: numeric
- type: string
- x-fb-entity: vault_account
- style: simple
- - description: The ID of the asset
- explode: false
- in: path
- name: assetId
- required: true
- schema:
- type: string
- x-fb-entity: asset
- style: simple
- - description: "The address for which to add a description. For XRP, use :,\
- \ for all other assets, use only the address"
+ - description: The unique identifier of the counterparty group
explode: false
in: path
- name: addressId
+ name: groupId
required: true
schema:
+ format: uuid
type: string
style: simple
- description: "A unique identifier for the request. If the request is sent\
@@ -2031,232 +2208,151 @@ paths:
content:
application/json:
schema:
- $ref: "#/components/schemas/SetCustomerRefIdForAddressRequest"
+ $ref: "#/components/schemas/UpdateCounterpartyGroupRequest"
required: true
responses:
- "201":
+ "200":
content:
application/json:
schema:
- $ref: "#/components/schemas/VaultActionStatus"
- description: OK
+ $ref: "#/components/schemas/CounterpartyGroup"
+ description: Counterparty group updated successfully
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "404":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorSchema"
+ description: Counterparty group not found
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Assign AML customer reference ID
+ summary: Update a counterparty group
tags:
- - Vaults
+ - Compliance
x-rate-limit-category: write
x-readme:
code-samples:
- - language: python
- code: "vaultAsset = fireblocks.set_customer_ref_id_for_address(vault_account_id,\
- \ asset_id, address_id, customer_ref_id)"
- name: Fireblocks SDK Python example (Legacy)
- - language: javascript
- code: "const vaultAsset = await fireblocks.setCustomerRefIdForAddress(vaultAccountId,\
- \ assetId, addressId, customerRefId);"
- name: Fireblocks SDK Javascript example
- language: typescript
- code: "const response: Promise> =\
- \ fireblocks.vaults.setCustomerRefIdForAddress(vaultsApiSetCustomerRefIdForAddressRequest);"
+ code: "const response: Promise> =\
+ \ fireblocks.compliance.updateCounterpartyGroup(complianceApiUpdateCounterpartyGroupRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response = fireblocks.vaults().setCustomerRefIdForAddress(setCustomerRefIdForAddressRequest,\
- \ vaultAccountId, assetId, addressId, idempotencyKey);"
+ code: "CompletableFuture> response = fireblocks.compliance().updateCounterpartyGroup(updateCounterpartyGroupRequest,\
+ \ groupId, idempotencyKey);"
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.set_customer_ref_id_for_address(set_customer_ref_id_for_address_request,\
- \ vault_account_id, asset_id, address_id, idempotency_key);"
+ code: "response = fireblocks.compliance.update_counterparty_group(update_counterparty_group_request,\
+ \ group_id, idempotency_key);"
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise> =\
- \ fireblocks.vaults.setCustomerRefIdForAddress(vaultsApiSetCustomerRefIdForAddressRequest);"
+ source: "const response: Promise> =\
+ \ fireblocks.compliance.updateCounterpartyGroup(complianceApiUpdateCounterpartyGroupRequest);"
- lang: Java
- source: "CompletableFuture> response = fireblocks.vaults().setCustomerRefIdForAddress(setCustomerRefIdForAddressRequest,\
- \ vaultAccountId, assetId, addressId, idempotencyKey);"
+ source: "CompletableFuture> response = fireblocks.compliance().updateCounterpartyGroup(updateCounterpartyGroupRequest,\
+ \ groupId, idempotencyKey);"
- lang: Python
- source: "response = fireblocks.vaults.set_customer_ref_id_for_address(set_customer_ref_id_for_address_request,\
- \ vault_account_id, asset_id, address_id, idempotency_key);"
+ source: "response = fireblocks.compliance.update_counterparty_group(update_counterparty_group_request,\
+ \ group_id, idempotency_key);"
x-content-type: application/json
x-accepts:
- application/json
- /vault/accounts/{vaultAccountId}/{assetId}/addresses/{addressId}/create_legacy:
- post:
+ /legal_entities:
+ get:
description: |-
- Converts an existing segwit address to the legacy format.
- Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
- operationId: createLegacyAddress
+ Returns legal entity registrations for the workspace with cursor-based pagination.
+ If query parameter vaultAccountId is used it returns the legal entity registration associated with a specific vault account. If no explicit mapping exists for the vault, the workspace default legal entity is returned. Returns an empty response if neither a vault mapping nor a default legal entity is configured.
+ Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
+ operationId: listLegalEntities
parameters:
- - description: The ID of the vault account
- explode: false
- in: path
+ - description: "The ID of the vault account. When provided, returns the legal\
+ \ entity associated with that vault account and pagination parameters are\
+ \ ignored."
+ explode: true
+ in: query
name: vaultAccountId
- required: true
+ required: false
schema:
format: numeric
type: string
x-fb-entity: vault_account
- style: simple
- - description: The ID of the asset
- explode: false
- in: path
- name: assetId
- required: true
- schema:
- type: string
- x-fb-entity: asset
- style: simple
- - description: The segwit address to translate
- explode: false
- in: path
- name: addressId
- required: true
- schema:
- type: string
- style: simple
- - description: "A unique identifier for the request. If the request is sent\
- \ multiple times with the same idempotency key, the server will return the\
- \ same response as the first request. The idempotency key is valid for 24\
- \ hours."
- explode: false
- in: header
- name: Idempotency-Key
+ style: form
+ - description: Cursor string returned in `next` or `prev` of a previous response.
+ Ignored when `vaultAccountId` is provided.
+ explode: true
+ in: query
+ name: pageCursor
required: false
schema:
type: string
- style: simple
- responses:
- "200":
- content:
- application/json:
- schema:
- $ref: "#/components/schemas/CreateAddressResponse"
- description: The created address
- headers:
- X-Request-ID:
- $ref: "#/components/headers/X-Request-ID"
- default:
- $ref: "#/components/responses/Error"
- summary: Convert a segwit address to legacy format
- tags:
- - Vaults
- x-rate-limit-category: write
- x-readme:
- code-samples:
- - language: typescript
- code: "const response: Promise>\
- \ = fireblocks.vaults.createLegacyAddress(vaultsApiCreateLegacyAddressRequest);"
- name: Fireblocks SDK TypeScript example
- - language: java
- code: "CompletableFuture> response =\
- \ fireblocks.vaults().createLegacyAddress(vaultAccountId, assetId, addressId,\
- \ idempotencyKey);"
- name: Fireblocks SDK Java example
- - language: python
- code: "response = fireblocks.vaults.create_legacy_address(vault_account_id,\
- \ asset_id, address_id, idempotency_key);"
- name: Fireblocks SDK Python example
- x-codeSamples:
- - lang: TypeScript
- source: "const response: Promise>\
- \ = fireblocks.vaults.createLegacyAddress(vaultsApiCreateLegacyAddressRequest);"
- - lang: Java
- source: "CompletableFuture> response =\
- \ fireblocks.vaults().createLegacyAddress(vaultAccountId, assetId, addressId,\
- \ idempotencyKey);"
- - lang: Python
- source: "response = fireblocks.vaults.create_legacy_address(vault_account_id,\
- \ asset_id, address_id, idempotency_key);"
- x-accepts:
- - application/json
- /vault/accounts/{vaultAccountId}/{assetId}/unspent_inputs:
- get:
- description: |-
- Returns unspent inputs information of an UTXO asset in a vault account.
-
- Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
- operationId: getUnspentInputs
- parameters:
- - description: The ID of the vault account
- explode: false
- in: path
- name: vaultAccountId
- required: true
- schema:
- format: numeric
- type: string
- x-fb-entity: vault_account
- style: simple
- - description: The ID of the asset
- explode: false
- in: path
- name: assetId
- required: true
+ style: form
+ - description: Maximum number of registrations to return. Ignored when `vaultAccountId`
+ is provided.
+ explode: true
+ in: query
+ name: pageSize
+ required: false
schema:
- type: string
- x-fb-entity: asset
- style: simple
+ default: 50
+ maximum: 100
+ minimum: 1
+ type: integer
+ style: form
responses:
"200":
content:
application/json:
schema:
- $ref: "#/components/schemas/GetUnspentInputsResponse"
- description: List of Unspent information per input
+ $ref: "#/components/schemas/ListLegalEntitiesResponse"
+ description: "A paginated list of legal entity registrations. When `vaultAccountId`\
+ \ is provided, `data` contains at most one item."
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Get UTXO unspent inputs information
+ summary: List legal entities (Paginated)
tags:
- - Vaults
- x-rate-limit-category: read
+ - Compliance
+ x-rate-limit-category: query
x-readme:
code-samples:
- - language: python
- code: "vaultAsset = fireblocks.get_unspent_inputs(vault_account_id, asset_id)"
- name: Fireblocks SDK Python example (Legacy)
- - language: javascript
- code: "const vaultAsset = await fireblocks.getUnspentInputs(vaultAccountId,\
- \ assetId);"
- name: Fireblocks SDK Javascript example
- language: typescript
- code: "const response: Promise>\
- \ = fireblocks.vaults.getUnspentInputs(vaultsApiGetUnspentInputsRequest);"
+ code: "const response: Promise>\
+ \ = fireblocks.compliance.listLegalEntities(complianceApiListLegalEntitiesRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture>> response\
- \ = fireblocks.vaults().getUnspentInputs(vaultAccountId, assetId);"
+ code: "CompletableFuture> response\
+ \ = fireblocks.compliance().listLegalEntities(vaultAccountId, pageCursor,\
+ \ pageSize);"
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.get_unspent_inputs(vault_account_id,\
- \ asset_id);"
+ code: "response = fireblocks.compliance.list_legal_entities(vault_account_id,\
+ \ page_cursor, page_size);"
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise>\
- \ = fireblocks.vaults.getUnspentInputs(vaultsApiGetUnspentInputsRequest);"
+ source: "const response: Promise>\
+ \ = fireblocks.compliance.listLegalEntities(complianceApiListLegalEntitiesRequest);"
- lang: Java
- source: "CompletableFuture>> response\
- \ = fireblocks.vaults().getUnspentInputs(vaultAccountId, assetId);"
+ source: "CompletableFuture> response\
+ \ = fireblocks.compliance().listLegalEntities(vaultAccountId, pageCursor,\
+ \ pageSize);"
- lang: Python
- source: "response = fireblocks.vaults.get_unspent_inputs(vault_account_id,\
- \ asset_id);"
+ source: "response = fireblocks.compliance.list_legal_entities(vault_account_id,\
+ \ page_cursor, page_size);"
x-accepts:
- application/json
- /vault/accounts/bulk:
post:
- description: "Create multiple vault accounts by running an async job. \n\
- - The HBAR, TON, SUI, TERRA, ALGO, and DOT blockchains are not supported.\n\
- - These endpoints are currently in beta and might be subject to changes.\n\
- - Limited to a maximum of 10,000 accounts per operation.\n\n**Endpoint Permissions:**\
- \ Admin, Non-Signing Admin, Signer, Approver, Editor.\n"
- operationId: createMultipleAccounts
+ description: |-
+ Registers a new legal entity for the workspace using its LEI (Legal Entity Identifier) code. The LEI is validated against the GLEIF registry. Each workspace can register multiple legal entities.
+ Endpoint Permission: Admin, Non-Signing Admin.
+ operationId: registerLegalEntity
parameters:
- description: "A unique identifier for the request. If the request is sent\
\ multiple times with the same idempotency key, the server will return the\
@@ -2273,183 +2369,235 @@ paths:
content:
application/json:
schema:
- $ref: "#/components/schemas/CreateMultipleAccountsRequest"
+ $ref: "#/components/schemas/RegisterLegalEntityRequest"
required: true
responses:
- "200":
+ "201":
content:
application/json:
schema:
- $ref: "#/components/schemas/JobCreated"
- description: A JobCreated object
+ $ref: "#/components/schemas/LegalEntityRegistration"
+ description: Legal entity registered successfully
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "400":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorSchema"
+ description: Invalid LEI or request parameters
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "404":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorSchema"
+ description: LEI not found in the GLEIF registry
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "409":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorSchema"
+ description: A legal entity with this LEI is already registered for the
+ workspace
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "500":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorSchema"
+ description: Internal Server Error
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Bulk creation of new vault accounts
+ summary: Register a new legal entity
tags:
- - Vaults
+ - Compliance
x-rate-limit-category: write
x-readme:
code-samples:
- language: typescript
- code: "const response: Promise> = fireblocks.vaults.createMultipleAccounts(vaultsApiCreateMultipleAccountsRequest);"
+ code: "const response: Promise>\
+ \ = fireblocks.compliance.registerLegalEntity(complianceApiRegisterLegalEntityRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response = fireblocks.vaults().createMultipleAccounts(createMultipleAccountsRequest,\
+ code: "CompletableFuture> response\
+ \ = fireblocks.compliance().registerLegalEntity(registerLegalEntityRequest,\
\ idempotencyKey);"
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.create_multiple_accounts(create_multiple_accounts_request,\
+ code: "response = fireblocks.compliance.register_legal_entity(register_legal_entity_request,\
\ idempotency_key);"
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise> = fireblocks.vaults.createMultipleAccounts(vaultsApiCreateMultipleAccountsRequest);"
+ source: "const response: Promise>\
+ \ = fireblocks.compliance.registerLegalEntity(complianceApiRegisterLegalEntityRequest);"
- lang: Java
- source: "CompletableFuture> response = fireblocks.vaults().createMultipleAccounts(createMultipleAccountsRequest,\
+ source: "CompletableFuture> response\
+ \ = fireblocks.compliance().registerLegalEntity(registerLegalEntityRequest,\
\ idempotencyKey);"
- lang: Python
- source: "response = fireblocks.vaults.create_multiple_accounts(create_multiple_accounts_request,\
+ source: "response = fireblocks.compliance.register_legal_entity(register_legal_entity_request,\
\ idempotency_key);"
x-content-type: application/json
x-accepts:
- application/json
- /vault/accounts/bulk/{jobId}:
- get:
- description: |
- Returns the current status of (or error for) the specified vault account bulk creation job.
-
- **Endpoint Permissions:** Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
- operationId: getCreateMultipleVaultAccountsJobStatus
+ /legal_entities/{legalEntityId}:
+ delete:
+ description: "Delete a legal entity will change the status of a legal entity\
+ \ registration to REVOKED. Endpoint Permission: Admin, Non-Signing Admin."
+ operationId: deleteLegalEntity
parameters:
- - description: The ID of the job to create addresses
- example: 019681b4-107d-7243-942d-4c3c30e36fae
+ - description: The unique ID of the legal entity registration to delete
explode: false
in: path
- name: jobId
+ name: legalEntityId
required: true
schema:
+ format: uuid
type: string
style: simple
responses:
- "200":
+ "204":
+ description: Legal entity deleted successfully
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "400":
content:
application/json:
schema:
- $ref: "#/components/schemas/CreateMultipleVaultAccountsJobStatus"
- description: A Job with status
+ $ref: "#/components/schemas/ErrorSchema"
+ description: Legal entity registration is not in deletable status (PENDING
+ or APPROVED)
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "404":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorSchema"
+ description: Legal entity registration not found
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Get job status of bulk creation of new vault accounts
+ summary: Delete a legal entity
tags:
- - Vaults
- x-rate-limit-category: async
+ - Compliance
+ x-rate-limit-category: write
x-readme:
code-samples:
- language: typescript
- code: "const response: Promise>\
- \ = fireblocks.vaults.getCreateMultipleVaultAccountsJobStatus(vaultsApiGetCreateMultipleVaultAccountsJobStatusRequest);"
+ code: "const response: Promise> = fireblocks.compliance.deleteLegalEntity(complianceApiDeleteLegalEntityRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: CompletableFuture>
- response = fireblocks.vaults().getCreateMultipleVaultAccountsJobStatus(jobId);
+ code: CompletableFuture> response = fireblocks.compliance().deleteLegalEntity(legalEntityId);
name: Fireblocks SDK Java example
- language: python
- code: response = fireblocks.vaults.get_create_multiple_vault_accounts_job_status(job_id);
+ code: response = fireblocks.compliance.delete_legal_entity(legal_entity_id);
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise>\
- \ = fireblocks.vaults.getCreateMultipleVaultAccountsJobStatus(vaultsApiGetCreateMultipleVaultAccountsJobStatusRequest);"
+ source: "const response: Promise> = fireblocks.compliance.deleteLegalEntity(complianceApiDeleteLegalEntityRequest);"
- lang: Java
- source: CompletableFuture>
- response = fireblocks.vaults().getCreateMultipleVaultAccountsJobStatus(jobId);
+ source: CompletableFuture> response = fireblocks.compliance().deleteLegalEntity(legalEntityId);
- lang: Python
- source: response = fireblocks.vaults.get_create_multiple_vault_accounts_job_status(job_id);
+ source: response = fireblocks.compliance.delete_legal_entity(legal_entity_id);
x-accepts:
- application/json
- /vault/accounts/addresses/bulk:
- post:
- description: |
- **For UTXO blockchains only.**
-
- Create multiple deposit addresses by running an async job.
- - The target Vault account should already have a UTXO asset wallet with a permanent address.
- - Limited to a maximum of 10,000 addresses per operation. Use multiple operations for the same Vault account/permanent address if needed.
-
- **Endpoint Permissions:** Admin, Non-Signing Admin.
- operationId: createMultipleDepositAddresses
+ get:
+ description: |-
+ Returns details of a specific legal entity registration, including GLEIF data when available.
+ Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
+ operationId: getLegalEntity
parameters:
- - description: "A unique identifier for the request. If the request is sent\
- \ multiple times with the same idempotency key, the server will return the\
- \ same response as the first request. The idempotency key is valid for 24\
- \ hours."
+ - description: The unique ID of the legal entity registration
explode: false
- in: header
- name: Idempotency-Key
- required: false
+ in: path
+ name: legalEntityId
+ required: true
schema:
+ format: uuid
type: string
style: simple
- requestBody:
- content:
- application/json:
- schema:
- $ref: "#/components/schemas/CreateMultipleDepositAddressesRequest"
- required: true
responses:
"200":
content:
application/json:
schema:
- $ref: "#/components/schemas/JobCreated"
- description: A JobCreated object
+ $ref: "#/components/schemas/LegalEntityRegistration"
+ description: Legal entity registration details
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "404":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorSchema"
+ description: Legal entity registration not found
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Bulk creation of new deposit addresses
+ summary: Get a legal entity
tags:
- - Vaults
- x-rate-limit-category: async
+ - Compliance
+ x-rate-limit-category: read
x-readme:
code-samples:
- language: typescript
- code: "const response: Promise> = fireblocks.vaults.createMultipleDepositAddresses(vaultsApiCreateMultipleDepositAddressesRequest);"
+ code: "const response: Promise>\
+ \ = fireblocks.compliance.getLegalEntity(complianceApiGetLegalEntityRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response = fireblocks.vaults().createMultipleDepositAddresses(createMultipleDepositAddressesRequest,\
- \ idempotencyKey);"
+ code: CompletableFuture> response =
+ fireblocks.compliance().getLegalEntity(legalEntityId);
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.create_multiple_deposit_addresses(create_multiple_deposit_addresses_request,\
- \ idempotency_key);"
+ code: response = fireblocks.compliance.get_legal_entity(legal_entity_id);
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise> = fireblocks.vaults.createMultipleDepositAddresses(vaultsApiCreateMultipleDepositAddressesRequest);"
+ source: "const response: Promise>\
+ \ = fireblocks.compliance.getLegalEntity(complianceApiGetLegalEntityRequest);"
- lang: Java
- source: "CompletableFuture> response = fireblocks.vaults().createMultipleDepositAddresses(createMultipleDepositAddressesRequest,\
- \ idempotencyKey);"
+ source: CompletableFuture> response =
+ fireblocks.compliance().getLegalEntity(legalEntityId);
- lang: Python
- source: "response = fireblocks.vaults.create_multiple_deposit_addresses(create_multiple_deposit_addresses_request,\
- \ idempotency_key);"
- x-content-type: application/json
+ source: response = fireblocks.compliance.get_legal_entity(legal_entity_id);
x-accepts:
- application/json
- /vault/accounts/attached_tags:
- post:
+ put:
description: |-
- Attach or detach one or more tags from the requested vault accounts.
- Endpoint Permission: For protected tags: Owner, Admin, Non-Signing Admin. For non protected tags: Owner, Admin, Non-Signing Admin, Signer, Editor, Approver.
- operationId: attachOrDetachTagsFromVaultAccounts
+ Updates the status of a legal entity registration. Setting isDefault to true marks the registration as the workspace default, which is applied to vault accounts that have no explicit legal entity mapping.
+ Endpoint Permission: Admin, Non-Signing Admin.
+ operationId: updateLegalEntity
parameters:
+ - description: The unique ID of the legal entity registration
+ explode: false
+ in: path
+ name: legalEntityId
+ required: true
+ schema:
+ format: uuid
+ type: string
+ style: simple
- description: "A unique identifier for the request. If the request is sent\
\ multiple times with the same idempotency key, the server will return the\
\ same response as the first request. The idempotency key is valid for 24\
@@ -2465,15 +2613,15 @@ paths:
content:
application/json:
schema:
- $ref: "#/components/schemas/VaultAccountsTagAttachmentOperationsRequest"
+ $ref: "#/components/schemas/UpdateLegalEntityRequest"
required: true
responses:
"200":
content:
application/json:
schema:
- $ref: "#/components/schemas/VaultAccountsTagAttachmentOperationsResponse"
- description: Tags were attached/detached successfully
+ $ref: "#/components/schemas/LegalEntityRegistration"
+ description: Updated legal entity registration
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
@@ -2482,10 +2630,7 @@ paths:
application/json:
schema:
$ref: "#/components/schemas/ErrorSchema"
- description: |
- - Invalid request parameters.
- - Same tag ID is provided in both tagIdsToAttach and tagIdsToDetach.
- - Vault accounts are archived.
+ description: Registration is not in APPROVED status
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
@@ -2494,724 +2639,682 @@ paths:
application/json:
schema:
$ref: "#/components/schemas/ErrorSchema"
- description: |
- - Tags with the requested ID not found.
- - Vault accounts with the requested ID not found.
+ description: Legal entity registration not found
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
- summary: Attach or detach tags from vault accounts
+ default:
+ $ref: "#/components/responses/Error"
+ summary: Update legal entity
tags:
- - Vaults
+ - Compliance
x-rate-limit-category: write
x-readme:
code-samples:
- language: typescript
- code: "const response: Promise>\
- \ = fireblocks.vaults.attachOrDetachTagsFromVaultAccounts(vaultsApiAttachOrDetachTagsFromVaultAccountsRequest);"
+ code: "const response: Promise>\
+ \ = fireblocks.compliance.updateLegalEntity(complianceApiUpdateLegalEntityRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture>\
- \ response = fireblocks.vaults().attachOrDetachTagsFromVaultAccounts(vaultAccountsTagAttachmentOperationsRequest,\
- \ idempotencyKey);"
+ code: "CompletableFuture> response\
+ \ = fireblocks.compliance().updateLegalEntity(updateLegalEntityRequest,\
+ \ legalEntityId, idempotencyKey);"
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.attach_or_detach_tags_from_vault_accounts(vault_accounts_tag_attachment_operations_request,\
- \ idempotency_key);"
+ code: "response = fireblocks.compliance.update_legal_entity(update_legal_entity_request,\
+ \ legal_entity_id, idempotency_key);"
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise>\
- \ = fireblocks.vaults.attachOrDetachTagsFromVaultAccounts(vaultsApiAttachOrDetachTagsFromVaultAccountsRequest);"
+ source: "const response: Promise>\
+ \ = fireblocks.compliance.updateLegalEntity(complianceApiUpdateLegalEntityRequest);"
- lang: Java
- source: "CompletableFuture>\
- \ response = fireblocks.vaults().attachOrDetachTagsFromVaultAccounts(vaultAccountsTagAttachmentOperationsRequest,\
- \ idempotencyKey);"
+ source: "CompletableFuture> response\
+ \ = fireblocks.compliance().updateLegalEntity(updateLegalEntityRequest,\
+ \ legalEntityId, idempotencyKey);"
- lang: Python
- source: "response = fireblocks.vaults.attach_or_detach_tags_from_vault_accounts(vault_accounts_tag_attachment_operations_request,\
- \ idempotency_key);"
+ source: "response = fireblocks.compliance.update_legal_entity(update_legal_entity_request,\
+ \ legal_entity_id, idempotency_key);"
x-content-type: application/json
x-accepts:
- application/json
- /vault/accounts/addresses/bulk/{jobId}:
+ /legal_entities/{legalEntityId}/vaults:
get:
- description: |
- Returns the current status of (or an error for) the specified deposit addresss bulk creation job.
-
- **Endpoint Permissions:** Admin, Non-Signing Admin, Signer, Approver, Editor, and Viewer.
- operationId: getCreateMultipleDepositAddressesJobStatus
+ description: |-
+ Returns vault account IDs explicitly assigned to a specific legal entity registration, with cursor-based pagination.
+ Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.
+ operationId: listVaultsForLegalEntity
parameters:
- - description: The ID of the job to create addresses
- example: 019681b4-107d-7243-942d-4c3c30e36fae
+ - description: The unique ID of the legal entity registration
explode: false
in: path
- name: jobId
+ name: legalEntityId
required: true
schema:
+ format: uuid
type: string
style: simple
+ - description: Cursor string returned in `next` or `prev` of a previous response
+ explode: true
+ in: query
+ name: pageCursor
+ required: false
+ schema:
+ type: string
+ style: form
+ - description: Maximum number of registrations to return
+ explode: true
+ in: query
+ name: pageSize
+ required: false
+ schema:
+ default: 50
+ maximum: 100
+ minimum: 1
+ type: integer
+ style: form
responses:
"200":
content:
application/json:
schema:
- $ref: "#/components/schemas/CreateMultipleDepositAddressesJobStatus"
- description: A Job with status
+ $ref: "#/components/schemas/ListVaultsForRegistrationResponse"
+ description: Paginated list of vault account IDs assigned to the legal entity
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "404":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorSchema"
+ description: Legal entity registration not found
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Get the job status of the bulk deposit address creation
+ summary: List vault accounts for a legal entity (Paginated)
tags:
- - Vaults
+ - Compliance
x-rate-limit-category: read
x-readme:
code-samples:
- language: typescript
- code: "const response: Promise>\
- \ = fireblocks.vaults.getCreateMultipleDepositAddressesJobStatus(vaultsApiGetCreateMultipleDepositAddressesJobStatusRequest);"
+ code: "const response: Promise>\
+ \ = fireblocks.compliance.listVaultsForLegalEntity(complianceApiListVaultsForLegalEntityRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: CompletableFuture>
- response = fireblocks.vaults().getCreateMultipleDepositAddressesJobStatus(jobId);
+ code: "CompletableFuture>\
+ \ response = fireblocks.compliance().listVaultsForLegalEntity(legalEntityId,\
+ \ pageCursor, pageSize);"
name: Fireblocks SDK Java example
- language: python
- code: response = fireblocks.vaults.get_create_multiple_deposit_addresses_job_status(job_id);
+ code: "response = fireblocks.compliance.list_vaults_for_legal_entity(legal_entity_id,\
+ \ page_cursor, page_size);"
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise>\
- \ = fireblocks.vaults.getCreateMultipleDepositAddressesJobStatus(vaultsApiGetCreateMultipleDepositAddressesJobStatusRequest);"
+ source: "const response: Promise>\
+ \ = fireblocks.compliance.listVaultsForLegalEntity(complianceApiListVaultsForLegalEntityRequest);"
- lang: Java
- source: CompletableFuture>
- response = fireblocks.vaults().getCreateMultipleDepositAddressesJobStatus(jobId);
+ source: "CompletableFuture>\
+ \ response = fireblocks.compliance().listVaultsForLegalEntity(legalEntityId,\
+ \ pageCursor, pageSize);"
- lang: Python
- source: response = fireblocks.vaults.get_create_multiple_deposit_addresses_job_status(job_id);
+ source: "response = fireblocks.compliance.list_vaults_for_legal_entity(legal_entity_id,\
+ \ page_cursor, page_size);"
x-accepts:
- application/json
- /vault/public_key_info:
- get:
+ post:
description: |-
- Gets the public key information based on derivation path and signing algorithm.
+ Assigns one or more vault accounts to a specific legal entity registration. Explicitly mapped vault accounts take precedence over the workspace default legal entity.
Endpoint Permission: Admin, Non-Signing Admin.
- operationId: getPublicKeyInfo
+ operationId: assignVaultsToLegalEntity
parameters:
- - explode: true
- in: query
- name: derivationPath
- required: true
- schema:
- type: string
- style: form
- - explode: true
- in: query
- name: algorithm
+ - description: The unique ID of the legal entity registration
+ explode: false
+ in: path
+ name: legalEntityId
required: true
schema:
+ format: uuid
type: string
- style: form
- - explode: true
- in: query
- name: compressed
+ style: simple
+ - description: "A unique identifier for the request. If the request is sent\
+ \ multiple times with the same idempotency key, the server will return the\
+ \ same response as the first request. The idempotency key is valid for 24\
+ \ hours."
+ explode: false
+ in: header
+ name: Idempotency-Key
required: false
schema:
- type: boolean
- style: form
+ type: string
+ style: simple
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/AssignVaultsToLegalEntityRequest"
+ required: true
responses:
- "200":
+ "201":
content:
application/json:
schema:
- $ref: "#/components/schemas/PublicKeyInformation"
- description: Public key information
+ $ref: "#/components/schemas/AssignVaultsToLegalEntityResponse"
+ description: Vault accounts assigned successfully
+ headers:
+ X-Request-ID:
+ $ref: "#/components/headers/X-Request-ID"
+ "404":
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/ErrorSchema"
+ description: Legal entity registration not found
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
default:
$ref: "#/components/responses/Error"
- summary: Get the public key for a derivation path
+ summary: Assign vault accounts to a legal entity
tags:
- - Vaults
- x-rate-limit-category: read
+ - Compliance
+ x-rate-limit-category: write
x-readme:
code-samples:
- - language: python
- code: "pubKey = fireblocks.get_public_key_info(algorithm, derivation_path,\
- \ compressed)"
- name: Fireblocks SDK Python example (Legacy)
- - language: javascript
- code: |
- const PublicKeyInfoArgs = { algorithm: 'MPC_ECDSA_SECP256K1', derivationPath: '[44,0,0,0,0]' } const pubKey = await fireblocks.getPublicKeyInfo(PublicKeyInfoArgs);
- name: Fireblocks SDK Javascript example
- language: typescript
- code: "const response: Promise>\
- \ = fireblocks.vaults.getPublicKeyInfo(vaultsApiGetPublicKeyInfoRequest);"
+ code: "const response: Promise>\
+ \ = fireblocks.compliance.assignVaultsToLegalEntity(complianceApiAssignVaultsToLegalEntityRequest);"
name: Fireblocks SDK TypeScript example
- language: java
- code: "CompletableFuture> response = fireblocks.vaults().getPublicKeyInfo(derivationPath,\
- \ algorithm, compressed);"
+ code: "CompletableFuture>\
+ \ response = fireblocks.compliance().assignVaultsToLegalEntity(assignVaultsToLegalEntityRequest,\
+ \ legalEntityId, idempotencyKey);"
name: Fireblocks SDK Java example
- language: python
- code: "response = fireblocks.vaults.get_public_key_info(derivation_path,\
- \ algorithm, compressed);"
+ code: "response = fireblocks.compliance.assign_vaults_to_legal_entity(assign_vaults_to_legal_entity_request,\
+ \ legal_entity_id, idempotency_key);"
name: Fireblocks SDK Python example
x-codeSamples:
- lang: TypeScript
- source: "const response: Promise>\
- \ = fireblocks.vaults.getPublicKeyInfo(vaultsApiGetPublicKeyInfoRequest);"
+ source: "const response: Promise>\
+ \ = fireblocks.compliance.assignVaultsToLegalEntity(complianceApiAssignVaultsToLegalEntityRequest);"
- lang: Java
- source: "CompletableFuture