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.
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
Vilna extends CAIP standards to provide transaction identification.
<blockchain_gid>:<transaction_hash>- blockchain_gid: CAIP-2 blockchain identifier
- transaction_hash: Native transaction hash
eip155:1:0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef- Ethereum transactioneip155:56:0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890- BSC transactionsolana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp:3Ux7YJz3Fqx8hKzJH...- Solana transaction
- Universal Identification: One format works across all blockchains
- No Ambiguity: Each identifier is globally unique
- Human Readable: Easy to understand and debug
- Tool Agnostic: Works with any blockchain tool or service
- Future Proof: Extensible for new blockchains and asset types
CAIP standards ensure consistent asset identification across all supported blockchains.