Fireblocks Tokenization API

Deploy, mint, burn, and manage tokens across the chains supported by Fireblocks Tokenization Engine. Covers ERC-20 fungible tokens, multichain stablecoins, asset tokenization, smart contract management, and the full token lifecycle. Pricing is 3-30 basis points on Assets Under Custody.

OpenAPI Specification

fireblocks-tokenization-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Fireblocks Blockchains and Assets Approval Requests Tokenization 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: Tokenization
paths:
  /tokenization/tokens:
    post:
      operationId: issueNewToken
      summary: Issue a new token
      description: 'Facilitates the creation of a new token, supporting both EVM-based and Stellar/Ripple platforms. For EVM, it deploys the corresponding contract template to the blockchain and links the token to the workspace. For Stellar/Ripple, it links a newly created token directly to the workspace without deploying a contract. Returns the token link with status "PENDING" until the token is deployed or "SUCCESS" if no deployment is needed.

        </br>Endpoint Permission: Owner, Admin, Non-Signing Admin, Signer, and Editor.'
      parameters:
      - $ref: '#/components/parameters/X-Idempotency-Key'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateTokenRequestDto'
      x-readme:
        code-samples:
        - language: javascript
          code: const token = await fireblocks.issueNewToken(payload);
          name: Fireblocks SDK Javascript example
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<TokenLinkDto>> = fireblocks.tokenization.issueNewToken(tokenizationApiIssueNewTokenRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<TokenLinkDto>> response = fireblocks.tokenization().issueNewToken(createTokenRequestDto, idempotencyKey);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.tokenization.issue_new_token(create_token_request_dto, idempotency_key);
          name: Fireblocks SDK Python example
      responses:
        '201':
          description: Token was created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TokenLinkDto'
        '409':
          description: Asset already exists
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetAlreadyExistHttpError'
      tags:
      - Tokenization
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<TokenLinkDto>> = fireblocks.tokenization.issueNewToken(tokenizationApiIssueNewTokenRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<TokenLinkDto>> response = fireblocks.tokenization().issueNewToken(createTokenRequestDto, idempotencyKey);
      - lang: Python
        source: response = fireblocks.tokenization.issue_new_token(create_token_request_dto, idempotency_key);
    get:
      operationId: getLinkedTokens
      summary: List all linked tokens
      description: 'Return all linked tokens (paginated).


        </br>Endpoint Permission: Admin, Non-Signing Admin.'
      parameters:
      - name: pageCursor
        required: false
        in: query
        description: Page cursor to get the next page
        example: MjAyMy0xMi0xMyAyMDozNjowOC4zMDI=:MTEwMA==
        schema:
          type: string
      - name: pageSize
        required: false
        in: query
        description: Number of items per page, requesting more then max will return max items
        example: 10
        schema:
          minimum: 1
          maximum: 100
          type: number
      - name: status
        required: false
        in: query
        description: A comma separated list of statuses to filter. Default is "COMPLETED"
        example: COMPLETED
        schema: {}
      x-readme:
        code-samples:
        - language: javascript
          code: const linkedTokens = await fireblocks.getLinkedTokens(payload);
          name: Fireblocks SDK Javascript example
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<TokensPaginatedResponse>> = fireblocks.tokenization.getLinkedTokens(tokenizationApiGetLinkedTokensRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<TokensPaginatedResponse>> response = fireblocks.tokenization().getLinkedTokens(pageCursor, pageSize, status);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.tokenization.get_linked_tokens(page_cursor, page_size, status);
          name: Fireblocks SDK Python example
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TokensPaginatedResponse'
        default:
          $ref: '#/components/responses/Error'
      tags:
      - Tokenization
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<TokensPaginatedResponse>> = fireblocks.tokenization.getLinkedTokens(tokenizationApiGetLinkedTokensRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<TokensPaginatedResponse>> response = fireblocks.tokenization().getLinkedTokens(pageCursor, pageSize, status);
      - lang: Python
        source: response = fireblocks.tokenization.get_linked_tokens(page_cursor, page_size, status);
  /tokenization/tokens/link:
    post:
      operationId: link
      summary: Link a contract
      description: 'Link a contract.

        </br>Endpoint Permission: Owner, Admin, Non-Signing Admin, and Signer.'
      parameters:
      - $ref: '#/components/parameters/X-Idempotency-Key'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TokenLinkRequestDto'
      responses:
        '200':
          description: Token linked successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TokenLinkDto'
        '201':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TokenLinkDto'
        '404':
          description: Could not find the underlying contract to link to
        '409':
          description: Token link for {refId} already exists
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TokenLinkExistsHttpError'
        default:
          $ref: '#/components/responses/Error'
      tags:
      - Tokenization
      x-readme:
        code-samples:
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<TokenLinkDto>> = fireblocks.tokenization.link(tokenizationApiLinkRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<TokenLinkDto>> response = fireblocks.tokenization().link(tokenLinkRequestDto, idempotencyKey);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.tokenization.link(token_link_request_dto, idempotency_key);
          name: Fireblocks SDK Python example
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<TokenLinkDto>> = fireblocks.tokenization.link(tokenizationApiLinkRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<TokenLinkDto>> response = fireblocks.tokenization().link(tokenLinkRequestDto, idempotencyKey);
      - lang: Python
        source: response = fireblocks.tokenization.link(token_link_request_dto, idempotency_key);
  /tokenization/collections:
    post:
      operationId: createNewCollection
      summary: Create a new collection
      description: 'Create a new collection and link it as a token.

        </br>Endpoint Permission: Owner, Admin, Non-Signing Admin, Signer, and Editor.'
      parameters:
      - $ref: '#/components/parameters/X-Idempotency-Key'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CollectionDeployRequestDto'
      responses:
        '201':
          description: Collection was created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CollectionLinkDto'
        default:
          $ref: '#/components/responses/Error'
      tags:
      - Tokenization
      x-readme:
        code-samples:
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<CollectionLinkDto>> = fireblocks.tokenization.createNewCollection(tokenizationApiCreateNewCollectionRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<CollectionLinkDto>> response = fireblocks.tokenization().createNewCollection(collectionDeployRequestDto, idempotencyKey);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.tokenization.create_new_collection(collection_deploy_request_dto, idempotency_key);
          name: Fireblocks SDK Python example
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<CollectionLinkDto>> = fireblocks.tokenization.createNewCollection(tokenizationApiCreateNewCollectionRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<CollectionLinkDto>> response = fireblocks.tokenization().createNewCollection(collectionDeployRequestDto, idempotencyKey);
      - lang: Python
        source: response = fireblocks.tokenization.create_new_collection(collection_deploy_request_dto, idempotency_key);
    get:
      operationId: getLinkedCollections
      summary: Get collections
      description: 'Get collections (paginated).

        </br>Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.'
      parameters:
      - name: pageCursor
        required: false
        in: query
        description: Page cursor to get the next page, for example - "MjAyMy0xMi0xMyAyMDozNjowOC4zMDI=:MTEwMA=="
        schema:
          type: string
      - name: pageSize
        required: false
        in: query
        description: Number of items per page (max 100), requesting more then 100 will return 100 items
        example: 10
        schema:
          minimum: 1
          maximum: 100
          default: 100
          type: number
      - name: status
        required: false
        in: query
        description: A comma separated list of statuses to filter. Default is "COMPLETED"
        example: COMPLETED
        schema: {}
      responses:
        '200':
          description: Collection fetched successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetLinkedCollectionsPaginatedResponse'
        default:
          $ref: '#/components/responses/Error'
      tags:
      - Tokenization
      x-readme:
        code-samples:
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<GetLinkedCollectionsPaginatedResponse>> = fireblocks.tokenization.getLinkedCollections(tokenizationApiGetLinkedCollectionsRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<GetLinkedCollectionsPaginatedResponse>> response = fireblocks.tokenization().getLinkedCollections(pageCursor, pageSize, status);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.tokenization.get_linked_collections(page_cursor, page_size, status);
          name: Fireblocks SDK Python example
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<GetLinkedCollectionsPaginatedResponse>> = fireblocks.tokenization.getLinkedCollections(tokenizationApiGetLinkedCollectionsRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<GetLinkedCollectionsPaginatedResponse>> response = fireblocks.tokenization().getLinkedCollections(pageCursor, pageSize, status);
      - lang: Python
        source: response = fireblocks.tokenization.get_linked_collections(page_cursor, page_size, status);
  /tokenization/collections/{id}:
    get:
      operationId: getCollectionById
      summary: Get a collection by id
      description: 'Get a collection by id.

        </br>Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.'
      parameters:
      - name: id
        required: true
        in: path
        description: The token link id
        example: fbfbfbfb-fbfb-fbfb-fbfb-fbfbfbfbfbfb
        schema:
          type: string
      responses:
        '200':
          description: Collection fetched successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CollectionLinkDto'
        default:
          $ref: '#/components/responses/Error'
      tags:
      - Tokenization
      x-readme:
        code-samples:
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<CollectionLinkDto>> = fireblocks.tokenization.getCollectionById(tokenizationApiGetCollectionByIdRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<CollectionLinkDto>> response = fireblocks.tokenization().getCollectionById(id);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.tokenization.get_collection_by_id(id);
          name: Fireblocks SDK Python example
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<CollectionLinkDto>> = fireblocks.tokenization.getCollectionById(tokenizationApiGetCollectionByIdRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<CollectionLinkDto>> response = fireblocks.tokenization().getCollectionById(id);
      - lang: Python
        source: response = fireblocks.tokenization.get_collection_by_id(id);
    delete:
      operationId: unlinkCollection
      summary: Delete a collection link
      description: 'Delete a collection link.

        </br>Endpoint Permission: Owner, Admin, Non-Signing Admin, Signer, and Editor.'
      parameters:
      - name: id
        required: true
        in: path
        description: The token link id
        example: fbfbfbfb-fbfb-fbfb-fbfb-fbfbfbfbfbfb
        schema:
          type: string
      responses:
        '204':
          description: Collection unlinked successfully
        '404':
          description: Link for collection does not exist
        default:
          $ref: '#/components/responses/Error'
      tags:
      - Tokenization
      x-readme:
        code-samples:
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<void>> = fireblocks.tokenization.unlinkCollection(tokenizationApiUnlinkCollectionRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<Void>> response = fireblocks.tokenization().unlinkCollection(id);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.tokenization.unlink_collection(id);
          name: Fireblocks SDK Python example
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<void>> = fireblocks.tokenization.unlinkCollection(tokenizationApiUnlinkCollectionRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<Void>> response = fireblocks.tokenization().unlinkCollection(id);
      - lang: Python
        source: response = fireblocks.tokenization.unlink_collection(id);
  /tokenization/collections/{id}/tokens/{tokenId}:
    get:
      operationId: fetchCollectionTokenDetails
      summary: Get collection token details
      description: 'Get collection token details by id.

        </br>Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.'
      parameters:
      - name: id
        required: true
        in: path
        description: The collection link id
        example: fbfbfbfb-fbfb-fbfb-fbfb-fbfbfbfbfbfb
        schema:
          type: string
      - name: tokenId
        required: true
        in: path
        description: The tokenId as it appears on the blockchain
        example: '1'
        schema:
          type: string
      responses:
        '200':
          description: Collection token details were fetched successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CollectionLinkDto'
        default:
          $ref: '#/components/responses/Error'
      tags:
      - Tokenization
      x-readme:
        code-samples:
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<CollectionLinkDto>> = fireblocks.tokenization.fetchCollectionTokenDetails(tokenizationApiFetchCollectionTokenDetailsRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<CollectionLinkDto>> response = fireblocks.tokenization().fetchCollectionTokenDetails(id, tokenId);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.tokenization.fetch_collection_token_details(id, token_id);
          name: Fireblocks SDK Python example
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<CollectionLinkDto>> = fireblocks.tokenization.fetchCollectionTokenDetails(tokenizationApiFetchCollectionTokenDetailsRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<CollectionLinkDto>> response = fireblocks.tokenization().fetchCollectionTokenDetails(id, tokenId);
      - lang: Python
        source: response = fireblocks.tokenization.fetch_collection_token_details(id, token_id);
  /tokenization/collections/{id}/tokens/mint:
    post:
      operationId: mintCollectionToken
      summary: Mint tokens
      description: 'Mint tokens and upload metadata. This endpoint only works for NFTs using the ERC721f and ERC1155f standards.

        </br>Endpoint Permission: Owner, Admin, Non-Signing Admin, Signer, Editor.'
      parameters:
      - name: id
        required: true
        in: path
        description: The token link id
        example: fbfbfbfb-fbfb-fbfb-fbfb-fbfbfbfbfbfb
        schema:
          type: string
      - $ref: '#/components/parameters/X-Idempotency-Key'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CollectionMintRequestDto'
      responses:
        '202':
          description: Tokens minted successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CollectionMintResponseDto'
        default:
          $ref: '#/components/responses/Error'
      tags:
      - Tokenization
      x-readme:
        code-samples:
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<CollectionMintResponseDto>> = fireblocks.tokenization.mintCollectionToken(tokenizationApiMintCollectionTokenRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<CollectionMintResponseDto>> response = fireblocks.tokenization().mintCollectionToken(collectionMintRequestDto, id, idempotencyKey);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.tokenization.mint_collection_token(collection_mint_request_dto, id, idempotency_key);
          name: Fireblocks SDK Python example
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<CollectionMintResponseDto>> = fireblocks.tokenization.mintCollectionToken(tokenizationApiMintCollectionTokenRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<CollectionMintResponseDto>> response = fireblocks.tokenization().mintCollectionToken(collectionMintRequestDto, id, idempotencyKey);
      - lang: Python
        source: response = fireblocks.tokenization.mint_collection_token(collection_mint_request_dto, id, idempotency_key);
  /tokenization/collections/{id}/tokens/burn:
    post:
      operationId: burnCollectionToken
      summary: Burn tokens
      description: 'Burn tokens in a collection.

        </br>Endpoint Permission: Owner, Admin, Non-Signing Admin, Signer, and Editor.'
      parameters:
      - name: id
        required: true
        in: path
        description: The collection link id
        example: fbfbfbfb-fbfb-fbfb-fbfb-fbfbfbfbfbfb
        schema:
          type: string
      - $ref: '#/components/parameters/X-Idempotency-Key'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CollectionBurnRequestDto'
      responses:
        '202':
          description: Tokens burned successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CollectionBurnResponseDto'
        default:
          $ref: '#/components/responses/Error'
      tags:
      - Tokenization
      x-readme:
        code-samples:
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<CollectionBurnResponseDto>> = fireblocks.tokenization.burnCollectionToken(tokenizationApiBurnCollectionTokenRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<CollectionBurnResponseDto>> response = fireblocks.tokenization().burnCollectionToken(collectionBurnRequestDto, id, idempotencyKey);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.tokenization.burn_collection_token(collection_burn_request_dto, id, idempotency_key);
          name: Fireblocks SDK Python example
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<CollectionBurnResponseDto>> = fireblocks.tokenization.burnCollectionToken(tokenizationApiBurnCollectionTokenRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<CollectionBurnResponseDto>> response = fireblocks.tokenization().burnCollectionToken(collectionBurnRequestDto, id, idempotencyKey);
      - lang: Python
        source: response = fireblocks.tokenization.burn_collection_token(collection_burn_request_dto, id, idempotency_key);
  /tokenization/tokens/{id}:
    delete:
      operationId: unlink
      summary: Unlink a token
      description: 'Unlink a token. The token will be unlinked from the workspace. The token will not be deleted on chain nor the refId, only the link to the workspace will be removed.

        </br>Endpoint Permission: Owner, Admin, Non-Signing Admin, Signer, and Editor.'
      parameters:
      - name: id
        required: true
        in: path
        description: The token link id
        example: fbfbfbfb-fbfb-fbfb-fbfb-fbfbfbfbfbfb
        schema:
          type: string
      x-readme:
        code-samples:
        - language: javascript
          code: const token = await fireblocks.unlinkToken(tokenId);
          name: Fireblocks SDK Javascript example
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<void>> = fireblocks.tokenization.unlink(tokenizationApiUnlinkRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<Void>> response = fireblocks.tokenization().unlink(id);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.tokenization.unlink(id);
          name: Fireblocks SDK Python example
      responses:
        '200':
          description: Token unlinked successfully
          content: {}
        '204':
          description: ''
          content: {}
        '404':
          description: Link did not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundException'
        default:
          $ref: '#/components/responses/Error'
      tags:
      - Tokenization
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<void>> = fireblocks.tokenization.unlink(tokenizationApiUnlinkRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<Void>> response = fireblocks.tokenization().unlink(id);
      - lang: Python
        source: response = fireblocks.tokenization.unlink(id);
    get:
      operationId: getLinkedToken
      summary: Return a linked token
      description: 'Return a linked token, with its status and metadata.


        </br>Endpoint Permission: Admin, Non-Signing Admin.'
      parameters:
      - name: id
        required: true
        in: path
        description: The token link id
        example: fbfbfbfb-fbfb-fbfb-fbfb-fbfbfbfbfbfb
        schema:
          type: string
      x-readme:
        code-samples:
        - language: javascript
          code: const token = await fireblocks.getLinkedToken(tokenId);
          name: Fireblocks SDK Javascript example
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<TokenLinkDto>> = fireblocks.tokenization.getLinkedToken(tokenizationApiGetLinkedTokenRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<TokenLinkDto>> response = fireblocks.tokenization().getLinkedToken(id);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.tokenization.get_linked_token(id);
          name: Fireblocks SDK Python example
      responses:
        '200':
          description: Token fetched successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TokenLinkDto'
        default:
          $ref: '#/components/responses/Error'
      tags:
      - Tokenization
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<TokenLinkDto>> = fireblocks.tokenization.getLinkedToken(tokenizationApiGetLinkedTokenRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<TokenLinkDto>> response = fireblocks.tokenization().getLinkedToken(id);
      - lang: Python
        source: response = fireblocks.tokenization.get_linked_token(id);
components:
  schemas:
    CollectionDeployRequestDto:
      type: object
      properties:
        baseAssetId:
          type: string
          example: ETH
          description: The blockchain base assetId
        vaultAccountId:
          type: string
          example: '0'
          description: The id of the vault account that initiated the request to issue the token
        type:
          allOf:
          - $ref: '#/components/schemas/CollectionType'
          example: NON_FUNGIBLE_TOKEN
        name:
          type: string
          example: DigitalArtTokens
          description: A string that represents the name of the collection
        symbol:
          type: string
          example: DAT
          description: A string that represents the symbol of the collection
        adminAddress:
          type: string
          example: '0x5503766D27d1ED4525f5053222E18b29C38eDdB2'
          description: The EVM address of the user that will be set as the admin user of the collection
        displayName:
          type: string
          example: DigitalArtTokens
          description: A string to display as a name of the collection
      required:
      - baseAssetId
      - vaultAccountId
      - type
      - name
      - symbol
      - adminAddress
    CollectionTokenMetadataDto:
      type: object
      properties:
        name:
          type: string
          description: Token's name
          example: DigitalArtTokens
        description:
          type: string
          description: Token's description
          example: Digital representation of a piece of art
        image:
          type: string
          description: Token's image URL
          example: https://some_domain.com/image_filepath
        animation_url:
          type: string
          description: Token's animation URL
          example: https://some_domain.com/gif_filepath
        external_url:
          type: string
          description: Token's external URL
          example: https://some_domain.com/blob_filepath
        attributes:
          description: Token's metadata attributes
          type: array
          items:
            $ref: '#/components/schemas/CollectionTokenMetadataAttributeDto'
      required:
      - name
      - description
    CollectionMintRequestDto:
      type: object
      properties:
        vaultAccountId:
          type: string
          description: The id of the vault account that initiates the mint function.
          example: '0'
        to:
          type: string
          example: '0x5503766D27d1ED4525f5053222E18b29C38eDdB2'
          description: 'The EVM address to mint to '
        tokenId:
          type: string
          description: The token id, recommended to have numerical format and in sequential order
          example: '1'
        amount:
          type: string
          description: For ERC721, amount is optional or should always be 1 and for ERC1155, amount should be 1 or greater
          example: '1'
        metadataURI:
          type: string
          description: URL of metadata uploaded, skip uploading to IPFS if this field is provided with any value
          example: ipfs://QmP4P6f7mDHzikhdwLBVSCxCPEgmjwcWSVBHbtSyfBYzBC
        metadata:
          description: Metadata to upload
          example:
            name: MYTOKEN
            description: description of MYTOKEN
          allOf:
          - $ref: '#/components/schemas/CollectionTokenMetadataDto'
      required:
      - vaultAccountId
      - to
      - tokenId
    CollectionLinkDto:
      type: object
      properties:
        id:
          type: string
          description: The collection id
          example: fbfbfbfb-fbfb-fbfb-fbfb-fbfbfbfbfbfb
        status:
          enum:
          - PENDING
          - COMPLETED
          type: string
          description: The collection status
          example: COMPLETED
        type:
          allOf:
          - $ref: '#/components/schemas/CollectionType'
          example: NON_FUNGIBLE_TOKEN
        displayName:
          type: string
          description: The display name of the collection. If was not provided, would be taken from the contract template
          example: My Simple ERC721 Collection
        collectionMetadata:
          description: The collection's metadata
          allOf:
          - $ref: '#/components/schemas/CollectionMetadataDto'
      required:
      - id
      - status
      - type
    CreateTokenRequestDto:
      type: object
      properties:
        blockchainId:
          type: string
          example: B7QG017M
          description: The id of the blockchain the request was initiated on
        assetId:
          type: string
          example: ETH_TEST5
          description: The base asset identifier of the blockchain you want to deploy to
        vaultAccountId:
          type: string
          example: '0'
          description: The id of the vault account that initiated the request to issue the token
        createParams:
          oneOf:
          - $ref: '#/components/schemas/EVMTokenCreateParamsDto'
          - $ref: '#/compo

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