fireblocks Blockchains & Assets API

The Blockchains & Assets API from fireblocks — 8 operation(s) for blockchains & assets.

OpenAPI Specification

fireblocks-blockchains-assets-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Fireblocks Blockchains and Assets Approval Requests Blockchains & Assets API
  description: 'Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain.


    - Visit our website for more information: [Fireblocks Website](https://fireblocks.com)

    - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com)

    '
  version: 1.8.0
  contact:
    email: developers@fireblocks.com
servers:
- url: https://api.fireblocks.io/v1
  description: Fireblocks Production Environment Base URL
- url: https://sandbox-api.fireblocks.io/v1
  description: Fireblocks Sandbox Environment Base URL
security: []
tags:
- name: Blockchains & Assets
paths:
  /assets:
    get:
      operationId: listAssets
      summary: List assets
      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.

        '
      tags:
      - Blockchains & Assets
      x-readme:
        code-samples:
        - language: javascript
          code: const assets = await fireblocks.listAssets(filters);
          name: Fireblocks SDK Javascript example
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<ListAssetsResponse>> = fireblocks.blockchainsAssetsBeta.listAssets(blockchainsAssetsBetaApiListAssetsRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<ListAssetsResponse>> response = fireblocks.blockchainsAssetsBeta().listAssets(blockchainId, assetClass, symbol, scope, deprecated, pageCursor, pageSize, idempotencyKey);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.blockchains_&_assets_beta.list_assets(blockchain_id, asset_class, symbol, scope, deprecated, page_cursor, page_size, idempotency_key);
          name: Fireblocks SDK Python example
      parameters:
      - name: blockchainId
        required: false
        in: query
        description: Blockchain id of the assets
        schema:
          type: string
        example: 0f672204-a28b-464a-b318-a387abd3d3c7
      - name: assetClass
        required: false
        in: query
        description: Assets class
        schema:
          $ref: '#/components/schemas/AssetClass'
      - name: symbol
        required: false
        in: query
        description: Assets onchain symbol
        schema:
          minLength: 1
          type: string
        example: ETH
      - name: scope
        required: false
        in: query
        description: Scope of the assets
        schema:
          $ref: '#/components/schemas/AssetScope'
      - name: deprecated
        required: false
        in: query
        description: Are assets deprecated
        schema:
          type: boolean
        example: false
      - name: ids
        required: false
        in: query
        description: A list of asset IDs (max 100)
        schema:
          type: array
          items:
            type: string
        example:
        - 3ed32525-70df-45c8-bae3-e69ab56dc095
        - 3a3b5f06-61e7-44f0-9962-4425b55795ff
        - SHANI5_B75VRLGX_MUPA
      - name: pageCursor
        required: false
        in: query
        description: Next page cursor to fetch
        schema:
          type: string
        example: MjAyMy0xMi0xMyAyMDozNjowOC4zMDI=:MTEwMA==
      - name: pageSize
        required: false
        in: query
        description: Items per page
        schema:
          minimum: 100
          maximum: 1000
          default: 500
          type: number
        example: 500
      - $ref: '#/components/parameters/X-Idempotency-Key'
      responses:
        '200':
          description: List of assets
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListAssetsResponse'
        '500':
          description: Error occurred while listing assets
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetInternalServerErrorResponse'
        default:
          $ref: '#/components/responses/Error'
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<ListAssetsResponse>> = fireblocks.blockchainsAssetsBeta.listAssets(blockchainsAssetsBetaApiListAssetsRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<ListAssetsResponse>> response = fireblocks.blockchainsAssetsBeta().listAssets(blockchainId, assetClass, symbol, scope, deprecated, pageCursor, pageSize, idempotencyKey);
      - lang: Python
        source: response = fireblocks.blockchains_&_assets_beta.list_assets(blockchain_id, asset_class, symbol, scope, deprecated, page_cursor, page_size, idempotency_key);
    post:
      operationId: registerNewAsset
      summary: Register an asset
      description: "Registers a new asset to a workspace and retrieves the newly created asset's details. Currently supported chains are: \n  - EVM-based chains\n  - Algorand\n  - NEAR\n  - Solana\n  - Stellar\n  - Sui\n  - TRON\n\n**Endpoint Permissions:** Owner, Admin, Non-Signing Admin, NCW Admin, Editor, Signer.        \n"
      tags:
      - Blockchains & Assets
      parameters:
      - $ref: '#/components/parameters/X-Idempotency-Key'
      x-readme:
        code-samples:
        - language: javascript
          code: const supportedAssets = await fireblocks.registerNewAsset(blockchainId, address, symbol);
          name: Fireblocks SDK Javascript example
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<AssetResponse>> = fireblocks.blockchainsAssets.registerNewAsset(blockchainsAssetsApiRegisterNewAssetRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<AssetResponse>> response = fireblocks.blockchainsAssets().registerNewAsset(registerNewAssetRequest, idempotencyKey);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.blockchains_&_assets.register_new_asset(register_new_asset_request, idempotency_key);
          name: Fireblocks SDK Python example
      responses:
        '200':
          description: A new asset has been created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetResponse'
        '400':
          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

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetBadRequestErrorResponse'
        '403':
          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

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetForbiddenErrorResponse'
        '404':
          description: '- Invalid address, could not get asset information. Error code 1003

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TokenInfoNotFoundErrorResponse'
        '409':
          description: '- The asset is already supported globally. Error code: 1001


            - The asset has already been added to this workspace. Error code: 1002

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetConflictErrorResponse'
        '500':
          description: Failed to create asset
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetInternalServerErrorResponse'
        default:
          $ref: '#/components/responses/Error'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RegisterNewAssetRequest'
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<AssetResponse>> = fireblocks.blockchainsAssets.registerNewAsset(blockchainsAssetsApiRegisterNewAssetRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<AssetResponse>> response = fireblocks.blockchainsAssets().registerNewAsset(registerNewAssetRequest, idempotencyKey);
      - lang: Python
        source: response = fireblocks.blockchains_&_assets.register_new_asset(register_new_asset_request, idempotency_key);
  /assets/{id}:
    get:
      operationId: getAsset
      summary: Get an asset by ID
      description: "Returns an asset by ID or legacyID.</br>\n\n\n**Note**:\n- We will continue displaying and supporting the legacy ID (API ID). \nSince not all Fireblocks services fully support the new Assets UUID, please use only the legacy ID until further notice.\n"
      tags:
      - Blockchains & Assets
      x-readme:
        code-samples:
        - language: javascript
          code: const asset = await fireblocks.getAssetById(assetId);
          name: Fireblocks SDK Javascript example
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<Asset>> = fireblocks.blockchainsAssetsBeta.getAssetById(blockchainsAssetsBetaApiGetAssetByIdRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<Asset>> response = fireblocks.blockchainsAssetsBeta().getAssetById(id, idempotencyKey);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.blockchains_&_assets_beta.get_asset_by_id(id, idempotency_key);
          name: Fireblocks SDK Python example
      parameters:
      - name: id
        in: path
        required: true
        description: The ID or legacyId of the asset
        schema:
          type: string
          x-fb-entity: asset
        example: ETH
      - $ref: '#/components/parameters/X-Idempotency-Key'
      responses:
        '200':
          description: Asset with requested identification
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Asset'
        '404':
          description: '- Asset with specified ID or legacy ID is not found. Error code 1504

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetNotFoundErrorResponse'
        '500':
          description: Error occurred while getting an asset
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetInternalServerErrorResponse'
        default:
          $ref: '#/components/responses/Error'
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<Asset>> = fireblocks.blockchainsAssetsBeta.getAssetById(blockchainsAssetsBetaApiGetAssetByIdRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<Asset>> response = fireblocks.blockchainsAssetsBeta().getAssetById(id, idempotencyKey);
      - lang: Python
        source: response = fireblocks.blockchains_&_assets_beta.get_asset_by_id(id, idempotency_key);
    patch:
      operationId: updateAssetUserMetadata
      summary: Update the user’s metadata for an asset
      description: 'Update the user’s metadata for an asset.


        **Endpoint Permissions:** Owner, Admin, Non-Signing Admin, NCW Admin, Signer, Editor.'
      tags:
      - Blockchains & Assets
      x-readme:
        code-samples:
        - language: python
          code: asset = fireblocks.update_asset_user_metadata(asset_id, update_asset_user_metadata_request)
          name: Fireblocks SDK Python example (Legacy)
        - language: javascript
          code: const asset = await fireblocks.updateAssetUserMetadata(assetId, updateAssetUserMetadataRequest);
          name: Fireblocks SDK Javascript example
      parameters:
      - name: id
        in: path
        required: true
        description: The ID or legacyId of the asset
        schema:
          type: string
          x-fb-entity: asset
        example: ETH
      - $ref: '#/components/parameters/X-Idempotency-Key'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateAssetUserMetadataRequest'
      responses:
        '200':
          description: Updated asset user metadata
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Asset'
        '404':
          description: '- Asset with specified ID or legacy ID is not found. Error code 1504

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetNotFoundErrorResponse'
        '500':
          description: Error occurred while updating asset user metadata
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetInternalServerErrorResponse'
        default:
          $ref: '#/components/responses/Error'
  /assets/prices/{id}:
    post:
      operationId: setAssetPrice
      summary: Set asset price
      description: 'Set asset price for the given asset id. Returns the asset price response.

        '
      tags:
      - Blockchains & Assets
      x-readme:
        code-samples:
        - language: javascript
          code: const supportedAssets = await fireblocks.setAssetPrice(id, currency, price);
          name: Fireblocks SDK Javascript example
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<AssetPriceResponse>> = fireblocks.blockchainsAssets.setAssetPrice(blockchainsAssetsApiSetAssetPriceRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<AssetPriceResponse>> response = fireblocks.blockchainsAssets().setAssetPrice(id, setAssetPriceRequest, idempotencyKey);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.blockchains_&_assets.set_asset_price(id, set_asset_price_request, idempotency_key);
          name: Fireblocks SDK Python example
      parameters:
      - name: id
        in: path
        required: true
        description: The ID of the asset
        schema:
          type: string
        example: ETH
      - $ref: '#/components/parameters/X-Idempotency-Key'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SetAssetPriceRequest'
      responses:
        '200':
          description: Asset price has been set successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetPriceResponse'
        '403':
          description: '- Tenant is not allowed to set rate. Error code: 1002.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetPriceForbiddenErrorResponse'
        '404':
          description: '- Currency not found. Error code 1001

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetPriceNotFoundErrorResponse'
        default:
          $ref: '#/components/responses/Error'
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<AssetPriceResponse>> = fireblocks.blockchainsAssets.setAssetPrice(blockchainsAssetsApiSetAssetPriceRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<AssetPriceResponse>> response = fireblocks.blockchainsAssets().setAssetPrice(id, setAssetPriceRequest, idempotencyKey);
      - lang: Python
        source: response = fireblocks.blockchains_&_assets.set_asset_price(id, set_asset_price_request, idempotency_key);
  /blockchains:
    get:
      operationId: listBlockchains
      summary: List blockchains
      description: 'Returns all blockchains supported by Fireblocks.</br>

        '
      tags:
      - Blockchains & Assets
      x-readme:
        code-samples:
        - language: javascript
          code: const blockchains = await fireblocks.listBlockchains(filters);
          name: Fireblocks SDK Javascript example
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<ListBlockchainsResponse>> = fireblocks.blockchainsAssetsBeta.listBlockchains(blockchainsAssetsBetaApiListBlockchainsRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<ListBlockchainsResponse>> response = fireblocks.blockchainsAssetsBeta().listBlockchains(protocol, deprecated, test, pageCursor, pageSize);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.blockchains_&_assets_beta.list_blockchains(protocol, deprecated, test, page_cursor, page_size);
          name: Fireblocks SDK Python example
      parameters:
      - name: protocol
        required: false
        in: query
        description: Blockchain protocol
        schema:
          type: string
        example: SOL
      - name: deprecated
        required: false
        in: query
        description: Is blockchain deprecated
        schema:
          type: boolean
        example: false
      - name: test
        required: false
        in: query
        description: Is test blockchain
        schema:
          type: boolean
        example: false
      - name: ids
        required: false
        in: query
        description: A list of blockchain IDs (max 100)
        schema:
          type: array
          items:
            type: string
        example:
        - 3ed32525-70df-45c8-bae3-e69ab56dc095
        - 3a3b5f06-61e7-44f0-9962-4425b55795ff
        - MANTRA
      - name: pageCursor
        required: false
        in: query
        description: Page cursor to fetch
        schema:
          type: string
        example: MjAyMy0xMi0xMyAyMDozNjowOC4zMDI=:MTEwMA==
      - name: pageSize
        required: false
        in: query
        description: Items per page (max 500)
        schema:
          minimum: 1
          maximum: 500
          default: 500
          type: number
        example: 500
      responses:
        '200':
          description: List of supported blockchains
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListBlockchainsResponse'
        '500':
          description: Error occurred while listing blockchains
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetInternalServerErrorResponse'
        default:
          $ref: '#/components/responses/Error'
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<ListBlockchainsResponse>> = fireblocks.blockchainsAssetsBeta.listBlockchains(blockchainsAssetsBetaApiListBlockchainsRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<ListBlockchainsResponse>> response = fireblocks.blockchainsAssetsBeta().listBlockchains(protocol, deprecated, test, pageCursor, pageSize);
      - lang: Python
        source: response = fireblocks.blockchains_&_assets_beta.list_blockchains(protocol, deprecated, test, page_cursor, page_size);
  /blockchains/{id}:
    get:
      operationId: getBlockchain
      summary: Get a Blockchain by ID
      description: 'Returns a blockchain by ID or legacyID.

        '
      tags:
      - Blockchains & Assets
      x-readme:
        code-samples:
        - language: javascript
          code: const blockchain = await fireblocks.getBlockchain(blockchainId);
          name: Fireblocks SDK Javascript example
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<BlockchainResponse>> = fireblocks.blockchainsAssetsBeta.getBlockchain(blockchainsAssetsBetaApiGetBlockchainByIdRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<BlockchainResponse>> response = fireblocks.blockchainsAssetsBeta().getBlockchain(id);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.blockchains_&_assets_beta.get_blockchain_by_id(id);
          name: Fireblocks SDK Python example
      parameters:
      - name: id
        in: path
        required: true
        description: The ID or legacyId of the blockchain
        schema:
          type: string
        example: ETH
      responses:
        '200':
          description: Blockchain with requested identification
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BlockchainResponse'
        '404':
          description: '- Blockchain with specified ID or legacy ID is not found. Error code 1505

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BlockchainNotFoundErrorResponse'
        '500':
          description: Error occurred while getting blockchain
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetInternalServerErrorResponse'
        default:
          $ref: '#/components/responses/Error'
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<BlockchainResponse>> = fireblocks.blockchainsAssetsBeta.getBlockchainById(blockchainsAssetsBetaApiGetBlockchainByIdRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<BlockchainResponse>> response = fireblocks.blockchainsAssetsBeta().getBlockchainById(id);
      - lang: Python
        source: response = fireblocks.blockchains_&_assets_beta.get_blockchain_by_id(id);
  /transactions/validate_address/{assetId}/{address}:
    get:
      summary: Validate destination address
      description: 'Checks if an address is valid and active (for XRP, DOT, XLM, and EOS).

        </br>Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.'
      tags:
      - Blockchains & Assets
      x-readme:
        code-samples:
        - language: javascript
          code: const result = await fireblocks.(assetId, address);
          name: Fireblocks SDK Javascript example
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<ValidateAddressResponse>> = fireblocks.transactions.validateAddress(transactionsApiValidateAddressRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<ValidateAddressResponse>> response = fireblocks.transactions().validateAddress(assetId, address);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.transactions.validate_address(asset_id, address);
          name: Fireblocks SDK Python example
      parameters:
      - in: path
        name: assetId
        required: true
        description: The asset of the address
        schema:
          type: string
          x-fb-entity: asset
          example: XRP
      - in: path
        name: address
        required: true
        description: The address to validate
        schema:
          type: string
          example: rf1BiGeXwwQoi8Z2ueFYTEXSwuJYfV2Jpn
      responses:
        '200':
          description: Validate Address Response Object
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidateAddressResponse'
        default:
          $ref: '#/components/responses/Error'
      operationId: validateAddress
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<ValidateAddressResponse>> = fireblocks.transactions.validateAddress(transactionsApiValidateAddressRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<ValidateAddressResponse>> response = fireblocks.transactions().validateAddress(assetId, address);
      - lang: Python
        source: response = fireblocks.transactions.validate_address(asset_id, address);
  /estimate_network_fee:
    get:
      summary: Estimate the required fee for an asset
      description: "Gets the estimated required fee for an asset.\nFireblocks fetches, calculates and caches the result every 30 seconds.\nCustomers should query this API while taking the caching interval into consideration.\nNotes:\n- The `networkFee` parameter is the `gasPrice` with a given delta added, multiplied by the gasLimit plus the delta. - The estimation provided depends on the asset type.\n    - For UTXO-based assets, the response contains the `feePerByte` parameter\n    - For ETH-based and all EVM based assets, the response will contain `gasPrice` parameter. This is calculated by adding the `baseFee` to the `actualPriority` based on the latest 12 blocks. The response for ETH-based  contains the `baseFee`, `gasPrice`, and `priorityFee` parameters.\n    - For ADA-based assets, the response will contain the parameter `networkFee` and `feePerByte` parameters.\n    - For XRP and XLM, the response will contain the transaction fee.\n    - For other assets, the response will contain the `networkFee` parameter.\n\nLearn more about Fireblocks Fee Management in the following [guide](https://developers.fireblocks.com/reference/estimate-transaction-fee).\n</br>Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor."
      tags:
      - Blockchains & Assets
      x-readme:
        code-samples:
        - language: javascript
          code: const feeResult = await fireblocks.getFeeForAsset(assetId);
          name: Fireblocks SDK Javascript example
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<EstimatedNetworkFeeResponse>> = fireblocks.transactions.estimateNetworkFee(transactionsApiEstimateNetworkFeeRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<EstimatedNetworkFeeResponse>> response = fireblocks.transactions().estimateNetworkFee(assetId);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.transactions.estimate_network_fee(asset_id);
          name: Fireblocks SDK Python example
      parameters:
      - in: query
        name: assetId
        description: The asset for which to estimate the fee
        required: true
        schema:
          type: string
          x-fb-entity: asset
          example: ETH
      responses:
        '200':
          description: Estimated fees response
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EstimatedNetworkFeeResponse'
        default:
          $ref: '#/components/responses/Error'
      operationId: estimateNetworkFee
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<EstimatedNetworkFeeResponse>> = fireblocks.transactions.estimateNetworkFee(transactionsApiEstimateNetworkFeeRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<EstimatedNetworkFeeResponse>> response = fireblocks.transactions().estimateNetworkFee(assetId);
      - lang: Python
        source: response = fireblocks.transactions.estimate_network_fee(asset_id);
  /supported_assets:
    get:
      summary: List assets (Legacy)
      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.

        '
      tags:
      - Blockchains & Assets
      x-readme:
        code-samples:
        - language: javascript
          code: const supportedAssets = await fireblocks.getSupportedAssets();
          name: Fireblocks SDK Javascript example
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<GetSupportedAssetsResponse>> = fireblocks.blockchainsAssets.getSupportedAssets();'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<List<AssetTypeResponse>>> response = fireblocks.blockchainsAssets().getSupportedAssets();
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.blockchains_&_assets.get_supported_assets();
          name: Fireblocks SDK Python example
      responses:
        '200':
          description: Supported Assets Response
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetSupportedAssetsResponse'
        default:
          $ref: '#/components/responses/Error'
      operationId: getSupportedAssets
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<GetSupportedAssetsResponse>> = fireblocks.blockchainsAssets.getSupportedAssets();'
      - lang: Java
        source: CompletableFuture<ApiResponse<List<AssetTypeResponse>>> response = fireblocks.blockchainsAssets().getSupportedAssets();
      - lang: Python
        source: response = fireblocks.blockchains_&_assets.get_supported_assets();
components:
  schemas:
    BlockchainMetadata:
      type: object
      properties:
        scope:
          $ref: '#/components/schemas/AssetScope'
        deprecated:
          type: boolean
          description: Is blockchain deprecated
          example: false
        media:
          description: Blockchain’s media
          type: array
          items:
            $ref: '#/components/schemas/BlockchainMedia'
        explorer:
          $ref: '#/components/schemas/BlockchainExplorer'
      required:
      - scope
      - deprecated
    AssetDetailsMetadata:
      type: object
      properties:
        scope:
          $ref: '#/components/schemas/AssetScope'
        deprecated:
          type: boolean
          description: Is asset deprecated
          example: false
        deprecationReferralId:
          type: string
          description: New asset ID replacement
          example: 056776ab-9efa-4219-9820-9ece0cc4d90d
        verified:
          type: boolean
          description: Is asset verified by Fireblocks
          example: false
        website:
          type: string
          description: Vendor’s website
          example: https://example.org
        media:
          description: Asset’s media
          type: array
          items:
            $ref: '#/components/schemas/Media'
        note:
        

# --- truncated at 32 KB (49 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/fireblocks/refs/heads/main/openapi/fireblocks-blockchains-assets-api-openapi.yml