Skip to content

Releases: fireblocks/py-sdk

v17.0.0

20 Apr 14:16

Choose a tag to compare

Changelog

2026-04-20

Breaking Change

Change otherNames items type in GleifData from string to object

Products: Compliance

Scope: API + SDKs

  • What's new
    The otherNames array items in the GleifData schema have changed from plain strings to objects containing name and language fields (both required). This provides richer context for alternative legal entity names by including the associated language code.

  • Impact
    Update client code that reads otherNames from GLEIF data — values are now objects {name: string, language: string} instead of plain strings.

Affected endpoints:

  1. Register a new legal entity
  2. List legal entities (Paginated)
  3. Get a legal entity
  4. Update legal entity

Trading API — PII identification policy + provider-by-ID alignment

Products: Trading (Beta)

Scope: API + SDKs

  • What's new
    Adds optional manifest.participantsIdentificationPolicy on Manifest (shared manifest model; list and detail use the same provider + manifest schemas when the backend includes the field), so providers can publish a default plus override PII rules with multi-dimensional matching (asset, rail, flowDirection). Each active rule is a JSON Schema (draft-07) string that validates participantsIdentification. GET /trading/providers/{providerId} is aligned with unified-order-api: the 200 body is TradingProvider (same polymorphic shape as the list), not a separate TradingProviderDetails / details-only tree. Dependencies: builds on / stays in sync with unified-order-api (same trading provider + manifest semantics). Reference: https://gitlab.com/fireblocks/shell/common/unified-order-api/-/merge_requests/67. Related groundwork: FA-5457 (manifest / providers), as applicable to this stack. Covered by tests / spec validation (e.g. yarn api-spec-lint); aligned with API standards; ready for production (with comms on breaking response shape). Closes FA-5823.

  • Impact
    Consume manifest.participantsIdentificationPolicy from provider payloads when present; use supportedEndpoints and the resolved schema (defaultSchema or winning override schema) for participantsIdentification on in-scope flows. Regenerate or update SDKs so getTradingProviderById uses TradingProvider. Update clients that reference removed provider-details types or outdated TransferRail enum values.

Affected endpoints:

  1. Get trading provider by ID

Replace 403 with 400 for Address Registry opt-in errors

Products: Compliance

Scope: API + SDKs

  • What's new
    The 403 Forbidden response for workspace opt-in failures has been removed from the Address Registry endpoints, with the 400 Bad Request response updated to cover this case (error code 2140). This aligns the documented API contract with the actual server behavior on production environments.

  • Impact
    Clients that currently handle 403 for the "workspace not opted in" scenario must update their error handling to expect 400 with error code 2140 instead.

Affected endpoints:

  1. Look up legal entity by blockchain address
  2. [Deprecated] Look up legal entity by address (query parameter)

Remove slip44 from TRLinkAssetFormat and rename amount schemas

Products: TRLink

Scope: API + SDKs

  • What's new
    The slip44 value has been removed from the TRLinkAssetFormat enum, and the TRLinkAmountRange and TRLinkCurrency schemas have been renamed to ScreeningPolicyAmountRange and ScreeningPolicyCurrency. These changes affect Travel Rule Message creation, retrieval, and TRLink policy endpoints.

  • Impact
    Update SDK code that references TRLinkAmountRange or TRLinkCurrency types to use ScreeningPolicyAmountRange and ScreeningPolicyCurrency, and remove any handling of the slip44 asset format value.

Affected endpoints:

  1. Create Travel Rule Message
  2. Get TRM by ID
  3. Get TRLink policy

Remove sortBy, order, and prev from legal entity endpoints

Products: Compliance

Scope: API + SDKs

  • What's new
    The sortBy and order query parameters have been removed from the List legal entities endpoint, and the prev pagination cursor field has been removed from ListLegalEntitiesResponse and ListVaultsForRegistrationResponse. Clients relying on these fields for sorting or backward pagination must update their integrations.

  • Impact
    Remove any usage of the sortBy and order query parameters when calling the list legal entities endpoint, and stop reading the prev field from paginated responses for both legal entity and vault assignment listing.

Affected endpoints:

  1. List legal entities (Paginated)
  2. List vault accounts for a legal entity (Paginated)

Remove deprecated GET /v1/address_registry/legal_entity endpoint

Products: Compliance

Scope: API + SDKs

  • What's new
    The deprecated GET /v1/address_registry/legal_entity endpoint and its associated AddressRegistryLegalEntityLegacy response schema have been removed from the OpenAPI specification. Clients should migrate to GET /v1/address_registry/legal_entities/{address}, which provides a richer response including verification status, LEI, Travel Rule providers, and contact email.

  • Impact
    Clients relying on the removed endpoint will no longer find it in the spec; update integrations to use GET /v1/address_registry/legal_entities/{address} instead.

Affected endpoints:

  1. [Deprecated] Look up legal entity by address (query parameter)

Added

Add approveTermsOfService endpoint for earn providers

Products: Earn (Beta)

Scope: API + SDKs

  • What's new
    A new POST endpoint at /earn/providers/{providerId}/approve_terms_of_service enables workspaces to approve a lending provider's terms of service. This must be called once per workspace for each provider where isTermsApprovalRequired is true, before creating or executing any earn actions with that provider.

  • Impact
    Integrate this endpoint into your earn onboarding flow — call it once per eligible provider before initiating earn actions; no changes are required for existing integrations.

Affected endpoints:

  1. Approve earn provider terms of service

Add optional legalNameLanguage field to GleifData schema

Products: Compliance

Scope: API + SDKs

  • What's new
    A new optional legalNameLanguage field has been added to the GleifData schema, representing the two-letter ISO 639-1 language code for the entity's legal name. This enriches GLEIF data returned across legal entity endpoints with language context for the official legal name.

  • Impact
    No action required; client code will continue to work as-is and can optionally read the new legalNameLanguage field from GLEIF data responses.

Affected endpoints:

  1. Register a new legal entity
  2. List legal entities (Paginated)
  3. Get a legal entity
  4. Update legal entity

Add optional utxoSelectionParams to TransactionRequest

Products: Transactions

Scope: API + SDKs

  • What's new
    A new optional utxoSelectionParams field has been added to the TransactionRequest schema, enabling fine-grained UTXO filtering and explicit input selection for UTXO-based blockchain transactions. Thi...
Read more

v16.0.0

06 Apr 09:58

Choose a tag to compare

Changelog

2026-04-06

Breaking Change

Add required autoDeposit field to InteracAddress schema

Products: Trading (Beta)

Scope: API + SDKs

  • What's new
    The autoDeposit boolean field has been added as a required field in the InteracAddress schema. This field indicates whether funds are deposited directly into the recipient's bank account without a security question.

  • Impact
    Clients consuming Interac payment instructions in order responses must update their models and schema validation to account for the always-present autoDeposit field.

Affected endpoints:

  1. Create an order
  2. Get order details

Remove UNSTAKE and WITHDRAW from GetTransactionOperation enum

Products: Transactions

Scope: API + SDKs

  • What's new
    The UNSTAKE and WITHDRAW values have been removed from the GetTransactionOperation enum as they were not supported operation types. Clients referencing these values in transaction operation fields should update their implementations accordingly.

  • Impact
    SDK clients that depend on UNSTAKE or WITHDRAW as valid operation field values in transaction responses must remove those references, as they are no longer part of the spec.

Affected endpoints:

  1. Get transaction history
  2. Get a specific transaction by Fireblocks transaction ID
  3. Get a specific transaction by external transaction ID

Change ScreeningRiskLevelEnum to provider-specific free-form values

Products: Compliance, Transactions

Scope: API + SDKs

  • What's new
    The fixed enum constraint on ScreeningRiskLevelEnum (previously VERY_HIGH, SEVERE, HIGH, MEDIUM, LOW, UNKNOWN) has been removed; the field is now a free-form string whose values are provider-dependent. Known current values include Chainalysis (severeRisk, highRisk, mediumRisk, lowRisk, noRiskInfo) and Elliptic (noRiskDetected), while legacy SCREAMING_SNAKE_CASE values may still appear on older transactions.

  • Impact
    Strict enum validation against the old fixed values will break. Update client code to treat the risk field as an open-ended string and handle provider-specific formats.

Affected endpoints:

  1. Get transaction history
  2. Get a specific transaction by Fireblocks transaction ID
  3. Get a specific transaction by external transaction ID
  4. Provides all the compliance details for the given screened transaction.

Add SECURITY_ADMIN and SECURITY_AUDITOR to UserRole enum

Products: Api User, Console User

Scope: API + SDKs

  • What's new
    Two new role values, SECURITY_ADMIN and SECURITY_AUDITOR, have been added to the UserRole enum schema. These roles now appear in API key and console user list responses when workspace members are assigned these security-focused roles.

  • Impact
    Update client code that strictly validates the role field in user list responses to handle the new SECURITY_ADMIN and SECURITY_AUDITOR values.

Affected endpoints:

  1. Get API Keys
  2. Get console users

Redesign Manifest schema and remove it from AccountBasedAccessProvider in GET /providers

Products: Trading (Beta)

Scope: API + SDKs

  • What's new
    The Manifest schema has been redesigned: the previous assetTypes and capabilities arrays are replaced by structured order, quote, and rate objects, each with a supported flag. The order object includes executionTypes (MARKET, QUOTE) and optional settlementTypes (DVP, PREFUNDED); quote includes optional settlementTypes; rate is a base object with just supported. The manifest field has been moved from AccountBasedAccessProvider to BaseProvider, making it present on all provider types in the list response with the new structure. The old AssetTypeEnum and Capability schemas have been removed.

  • Impact
    Update any code reading manifest.assetTypes or manifest.capabilities from provider objects in GET /providers to use the new manifest.order, manifest.quote, and manifest.rate structure. Account-based provider clients that previously accessed manifest on those objects will continue to find it, but with the new schema.

Affected endpoints:

  1. Get providers

Added

Add Legal Entities management endpoints

Products: Legal Entities

Scope: API + SDKs

  • What's new
    Seven new endpoints have been added under /legal_entities to support registering, retrieving, and managing legal entity records validated against the GLEIF registry. These endpoints enable workspaces to assign vault accounts to legal entities, set a default legal entity, and paginate through registrations and vault mappings.

  • Impact
    Use the new Legal Entities endpoints to programmatically manage LEI-based legal entity registrations and their vault account associations within your workspace.

Affected endpoints:

  1. Register a new legal entity
  2. List legal entities (Paginated)
  3. Get a legal entity
  4. Set default legal entity
  5. Assign vault accounts to a legal entity
  6. List vault accounts for a legal entity (Paginated)
  7. Get the legal entity for a vault account

Add address registry legal entity, tenant, and vault opt-out endpoints

Products: Compliance

Scope: API + SDKs

  • What's new
    New endpoints are available under /v1/address_registry for resolving enriched legal entity data by blockchain address, managing workspace-level opt-in/opt-out participation in the address registry, and controlling vault-level exclusions with cursor-based pagination. These give compliance teams full programmatic control over address registry participation and Travel Rule entity resolution.

  • Impact
    Use the new endpoints to look up enriched legal entity data (including verification status, LEI, and Travel Rule providers), manage workspace and vault-level address registry participation, and paginate through opted-out vault accounts.

Affected endpoints:

  1. Look up legal entity by blockchain address
  2. Get address registry participation status for the authenticated workspace
  3. Opt the workspace in to the address registry
  4. Opt the workspace out of the address registry
  5. List vault-level address registry opt-outs (paginated)
  6. Add vault accounts to the address registry opt-out list
  7. Remove all vault-level address registry opt-outs for the workspace
  8. Get whether a vault account is opted out of the address registry
  9. Remove a single vault account from the address registry opt-out list

Add securityQuestion and securityAnswer fields to InteracAddress

Products: Trading (Beta)

Scope: API + SDKs

  • What's new
    The optional securityQuestion and securityAnswer s...
Read more

v15.0.0

15 Mar 14:07

Choose a tag to compare

Changes

🚀 Features

  • Introduced getWorkspace endpoint in Workspace API
  • Extended createQuote with optional baseAssetRail and quoteAssetRail fields in Trading API
  • Introduced consolidate endpoint in Staking API
  • Added blockchainWalletType field to getVaultAccountAsset, createVaultAccountAsset, and activateAssetForVaultAccount in Vault API
  • Added support for new payment rails in createOrder in Trading API and addAssetToExternalWallet in External Wallets API

🧰 Maintenance - Breaking Changes

  • Updated schemas for createQuote request schema and ExecutionRequestBaseDetails in Trading API

🧰 Maintenance

  • Fixed ExtraParameters schema to properly handle null values in Transactions API
  • Fixed createMultipleAccounts endpoint description in Vault API

v14.1.0

26 Feb 10:59

Choose a tag to compare

Changes

🚀 Features

  • Introduce Address Registry legal entity lookup endpoint in Compliance API
  • Introduce PersonalIdentificationType enum with expanded identification document types in Trading beta API
  • Introduce quote failure tracking in Trading beta API
  • Added additional fields to PersonalIdentification schema in Trading API
  • Added additional fields to CreateTokenRequestDto in Tokenization API
  • Added CRONOS and CRONOS_TEST blockchain support to NFT collection/token schemas in NFTs API

🧰 Maintenance

  • Fixed FeeBreakdown schema
  • Updated summaries and descriptions for consistent grammar

v14.0.0

03 Feb 15:04

Choose a tag to compare

Changes

🚀 Features

  • Introduce Trust Network Proof of Address endpoints in Screening API
  • Introduce TRLink Travel Rule compliance API with customer/partner management, integration management, VASP/Asset discovery, and TRM lifecycle operations
  • Introduce tokenization on-chain data endpoints for balance history, transactions, roles, and total supply in Deployed Contracts API
  • Introduce new NCW endpoints: paginated devices, wallet setup status, device status, enable wallet/device, and assign wallet
  • Introduce rename connected accounts endpoint in Connected Accounts API
  • Introduce disconnect account route in Connected Accounts API
  • Introduce tagging approval requests API with cancel operation in Tags API
  • Introduce max BIP44 index used endpoint in Vault API

🧰 Maintenance - Breaking Changes

  • Removed Batch APIs
  • Removed transactions rescan endpoint in Transactions API
  • Removed createAssetsBulk in Vault API
  • Removed deprecated vault account attach/detach tag endpoints in Vault API
  • Updated Trading API schemas to align with unified API specification
  • Updated Staking API with ETH Pectra changes and schema updates
  • Updated systemMessage datatype in Transaction response schemas
  • Renamed IVMS property to IVMS101 in TRLink create TRM request

🧰 Maintenance

  • Added includeTagIds and excludeTagIds filters to vault accounts paged endpoint in Vault API
  • Added blockchain destination address for payment instructions in Trading API
  • Added TON blockchain support to asset self-listing in Assets API
  • Added virtual assets to Asset schema in Assets API
  • Added optional decimals field for FIAT assets in Assets API
  • Added rebate fee type to order fee properties in Trading API
  • Added phone and email to PII identification schemas in Trading API
  • Added Coinbase International trading account type in Exchange Accounts API
  • Added TRLink travel rule message ID support to transaction response in Transactions API
  • Updated createTag and getTags in Tags API
  • Updated error responses alignment for Trading API

v13.0.0

13 Nov 12:36

Choose a tag to compare

Changes

🚀 Features

  • Introduce new attach/detach tags bulk operation in Vaults API
  • Introduce get metrics operation in Webhooks V2 API

🧰 Maintenance - Breaking Changes

  • Updated Compliance result schema in Compliance API

🧰 Maintenance

  • Added UpdateCompleted to Compliance result statuses enum in Compliance API
  • Added prev, next query properties to list transactions operation in Transaction API
  • Added SUI blockchain support in Blockchains & Assets API
  • Updated schemas in Trading (Beta) API
  • Updated Policy schemas in Policy Editor V2 (Beta)

v12.1.2

22 Oct 06:58

Choose a tag to compare

Changes

🧰 Maintenance

  • Added 'keyPrefix' query parameter to getSigningKeysList method in Key Link (Beta) API
  • Add external Idempotency ('externalId') key to mint and burn methods in Tokenization API
  • Added UpdateCompleted enum value to ComplianceResultStatusesEnum in Transaction API

v12.1.1

29 Sep 14:41

Choose a tag to compare

Changes

🧰 Maintenance

  • Fixed 'balance' and 'lockedAmount' type from string to number at ExternalWalletAsset schema in Contracts API and External wallets API
  • Updated missing fields at TransactionResponse schema in Transaction API
  • Fixed getPagedExchangeAccounts response schema in Exchange accounts API
  • Added 'sortBy' and 'order' query fields at searchTickets operation in Smart Transfer API

v12.1.0

09 Sep 13:52

Choose a tag to compare

Changes

🚀 Features

  • Introduce Connected Accounts (Beta) API
  • Introduce Trading (Beta) API (instead of Swap (Beta) API)

🧰 Maintenance

  • Added 'features' to asset metadata in Blockchains & Assets API
  • Added mapping fields to api balance response in Exchange accounts API

v12.0.0

01 Sep 08:09

Choose a tag to compare

Changes

🚀 Features

  • Introduce Policy Editor V2 (Beta) API
  • Introduce setAmlVerdict operation in Compliance API

🧰 Maintenance - Breaking Changes

  • Updated TAP endpoints with legacy suffix and updated schema names
  • Updated addAssetToExternalWallet request schema to support addressing systems in External wallets API

🧰 Maintenance

  • Added filters in request and 'total' property in response of getNotifications operation in Webhook V2 API