Identifiers
How Yutai writes every identifier a distributor sends or reads: chains, instruments, companies' shares, wallet addresses, quantities, instants and the ids Yutai gives its own records. The values on this page are read from Yutai's own rules when the site is built, so they cannot drift from them.
Yutai does not serve the distributor interface yet. These are the formats its records and its interface description already use, so what you build against them now stays the same.
Chains
A chain is written as its CAIP-2 id, namespace:reference: eip155 and the decimal chain id for an EVM chain, solana and the first 32 characters of the genesis hash for Solana. The chains below are the live chains the product supports. A chain whose plain name is not confirmed yet is shown by its id with the note (name to confirm), never a guessed name.
eip155:1- Ethereum mainnet
eip155:10- eip155:10 (name to confirm)
eip155:56- BNB Smart Chain mainnet
eip155:196- eip155:196 (name to confirm)
eip155:999- eip155:999 (name to confirm)
eip155:4663- Robinhood Chain mainnet
eip155:5000- eip155:5000 (name to confirm)
eip155:8453- Base mainnet
eip155:42161- Arbitrum One
eip155:57073- eip155:57073 (name to confirm)
solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp- Solana mainnet
Instruments
An on-chain share is written as its CAIP-19 id: the chain's CAIP-2 id, a slash, then the asset namespace and the contract address, chain/namespace:address. The namespace follows the chain family: erc20 on an EVM chain, token on Solana.
- EVM
eip155:1/erc20:0x5aAeb6053F3E94C9b9A09f33669435E7Ef1BeAed- Solana
solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp/token:BPRAnfLMc5VxDMdQsAYK44F3kRamLDsy25q6oT9Rrr8w
Companies' shares
A company's share is named by its ISIN: twelve characters, two capital letters for the country, nine capital letters or digits, then one check digit. Yutai groups every on-chain share of one company under that ISIN, for example US0378331005.
Wallet addresses
A wallet is written the way its chain family writes it.
- EVM
- 0x and 40 hex characters. Mixed case must match the EIP-55 checksum; one case is accepted too. Two EVM addresses compare in lower case. For example
0x5aAeb6053F3E94C9b9A09f33669435E7Ef1BeAed. - Solana
- Base58, 32 to 44 characters, decoding to exactly 32 bytes. Solana addresses compare exactly, case included. For example
4Nd1mBQ6MJ6ViN5jM2Z4atPozHvGvQtME5hkmZjpSXRV.
Quantities
Every quantity travels as a decimal string, never as a JSON number and never as a float, so no digit is lost or rounded. A quantity of shares has no sign, no leading zero before a whole number and no trailing zero after the point. An amount in base units, the whole number a chain answers, is a string too: below, the same 12.5 shares at 18 decimals.
{
"quantity": "12.5",
"amount": "12500000000000000000"
}Instants
Every instant is an ISO 8601 string in UTC, for example 2026-10-08T09:30:00Z. It is never a number of seconds.
Prefixed ids
Yutai's own records carry a prefix that says what they are, then a 26-character ULID. Treat the whole id as opaque text.
apk_- An API key's record. It names the key so you can tell keys apart; it is not the key, which is shown to you once when it is issued. For example
apk_01J9ZQ4V8W7X6Y5Z4A3B2C1D0E. whs_- A webhook subscription: the one address your webhooks go to and the kinds of change you asked for. For example
whs_01J9ZQ5B7C8D9E0F1G2H3J4K5M. whd_- One signed webhook delivery of one change to your address. A retry keeps the same id, so you can tell a repeat from a new change. For example
whd_01J9ZQ6N8P9Q0R1S2T3V4W5X6Y.
Where these are used
The API reference lists the calls that take these formats.
Errors and limits says what a refused value answers.
The Example wallet runs a whole read with values in these formats.