Vilna API implements Chain Agnostic Improvement Proposals (CAIP) for consistent cross-chain identification. These standards provide a universal way to identify blockchains, accounts, and assets across different blockchain ecosystems. To see how CAIP identifiers are used in practice across API requests and responses, see Core Concepts.
Provides a way to identify any blockchain in a human-readable, developer-friendly format.
<namespace>:<reference>- namespace: Identifies the blockchain namespace (e.g.,
eip155for EVM chains,bip122for Bitcoin) - reference: Chain-specific identifier (chain ID for EVM, genesis block hash for Bitcoin)
eip155:1- Ethereum Mainneteip155:56- BNB Smart Chain (BSC)eip155:137- Polygoneip155:43114- Avalanche C-Chaineip155:42161- Arbitrum Oneeip155:10- Optimism
bip122:000000000019d6689c085ae165831e93- Bitcoin Mainnetbip122:00000000001a91e3dace36e2be3bf030- Dogecoincosmos:cosmoshub-4- Cosmos Hubsolana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp- Solana Mainnet
Identifies blockchain accounts across different chains with a unified format.
<blockchain_gid>:<account_address>- blockchain_gid: CAIP-2 blockchain identifier
- account_address: Chain-specific address format
eip155:1:0x742d35Cc6634C0532925a3b844Bc9e7595f7B123bip122:000000000019d6689c085ae165831e93:1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNasolana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp:9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWMProvides a universal way to identify any digital asset on any blockchain.
<blockchain_gid>/<asset_namespace>:<asset_reference>- blockchain_gid: CAIP-2 blockchain identifier
- asset_namespace: Type of asset (
slip44for native,erc20/erc721for tokens) - asset_reference: Asset-specific identifier
Use slip44 namespace with the coin type from SLIP-44 registry:
<blockchain_gid>/slip44:<coin_type>Examples:
eip155:1/slip44:60- ETH on Ethereumeip155:56/slip44:60- BNB on BSCeip155:137/slip44:60- MATIC on Polygonbip122:000000000019d6689c085ae165831e93/slip44:0- BTC on Bitcoin
Use erc20 namespace with the contract address:
<blockchain_gid>/erc20:<contract_address>Examples:
eip155:1/erc20:0xdAC17F958D2ee523a2206206994597C13D831ec7- USDT on Ethereumeip155:1/erc20:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48- USDC on Ethereumeip155:56/erc20:0x55d398326f99059fF775485246999027B3197955- USDT on BSC
Use erc721 namespace with the contract address and token ID:
<blockchain_gid>/erc721:<contract_address>/<token_id>Example:
eip155:1/erc721:0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D/101- BAYC #101