Tokenization

Issue a new token

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. Endpoint Permission: Owner, Admin, Non-Signing Admin, Signer, and Editor.

post/tokenization/tokens

Request

Headers

Idempotency-Keystring

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.

Request body

blockchainIdstring

The id of the blockchain the request was initiated on

assetIdstring

The base asset identifier of the blockchain you want to deploy to

vaultAccountIdstring required

The id of the vault account that initiated the request to issue the token

displayNamestring
useGaslessboolean

Indicates whether the token should be created in a gasless manner, utilizing the ERC-2771 standard. When set to true, the transaction will be relayed by a designated relayer. The workspace must be configured to use Fireblocks gasless relay.

feestring

Max fee amount for the write function transaction. interchangeable with the 'feeLevel' field

feeLevel'LOW' | 'MEDIUM' | 'HIGH'

Fee level for the write function transaction. interchangeable with the 'fee' field

txNotestring

Custom note that describes the transaction at your Fireblocks workspace. This note will be visible in the Fireblocks UI and in the transaction details and not on the blockchain.

externalIdstring

External id that can be used to identify the transaction in your system. The unique identifier of the transaction outside of Fireblocks with max length of 255 characters

Example request

{
  "blockchainId": "B7QG017M",
  "assetId": "ETH_TEST5",
  "vaultAccountId": "0",
  "createParams": {
    "contractId": "b70701f4-d7b1-4795-a8ee-b09cdb5b850d",
    "deployFunctionParams": [
      {
        "internalType": "string",
        "name": "name",
        "type": "string",
        "value": "name"
      },
      {
        "internalType": "string",
        "name": "symbol",
        "type": "string",
        "value": "symbol"
      },
      {
        "components": [
          {
            "internalType": "bool",
            "name": "_isMintable",
            "type": "bool"
          }
        ],
        "internalType": "struct MyStruct",
        "name": "customConfigProps",
        "type": "tuple",
        "value": [
          {
            "internalType": "bool",
            "name": "_isMintable",
            "type": "bool",
            "value": false
          }
        ]
      }
    ]
  },
  "fee": "2000",
  "feeLevel": "MEDIUM",
  "txNote": "Token creation transaction for new stablecoin",
  "externalId": "0192e4f5-924e-7bb9-8e5b-c748270feb38"
}

Response

Token was created successfully

idstring required

The token link id

status'PENDING' | 'COMPLETED' required

The token status

type'FUNGIBLE_TOKEN' | 'NON_FUNGIBLE_TOKEN' | 'TOKEN_UTILITY' | 'TOKEN_EXTENSION'

The type of token

refIdstring

The Fireblocks' reference id

displayNamestring

The token display name. If was not provided, would be taken from the contract template

Example response

{
  "id": "fbfbfbfb-fbfb-fbfb-fbfb-fbfbfbfbfbfb",
  "status": "COMPLETED",
  "type": "NON_FUNGIBLE_TOKEN",
  "refId": "BQ5R_MY_TOKEN",
  "displayName": "My Simple ERC20 Token",
  "tokenMetadata": {
    "assetId": "BQ5R_MY_TOKEN",
    "name": "MyToken",
    "symbol": "MYT",
    "networkProtocol": "ETH",
    "totalSupply": "1000000000000000",
    "type": "ERC20",
    "contractAddress": "0x1234567890abcdef1234567890abcdef12345678",
    "issuerAddress": "rGyXjc5d7s17vvt3NtKKascvJrnSxV21kQ",
    "testnet": true,
    "blockchain": "ETH_TEST5",
    "decimals": 18,
    "vaultAccountId": "0"
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.