Supported Chains
10 active-vault chains, plus Linea asset-registry coverage, with chain IDs and finality confirmation depths.
Philidor tracks vaults across 10 active networks (10 chains). Chain coverage is no longer EVM-only: the API's chain identity model is namespace-aware (see Chain identifiers below), and Solana support is registered and rolling out.
Linea (59144) is additionally supported for asset-registry and scoring lookups. It is not counted in the active-vault total until Philidor indexes an active Linea vault.
| Chain | Chain ID | Native Currency | Explorer | Finality Depth |
|---|---|---|---|---|
| Ethereum | 1 | ETH | etherscan.io | 64 blocks (~13 min) |
| Base | 8453 | ETH | basescan.org | 0 (L2, finality via L1) |
| Arbitrum | 42161 | ETH | arbiscan.io | 0 (L2, finality via L1) |
| Polygon | 137 | MATIC | polygonscan.com | 128 blocks (~4 min) |
| Optimism | 10 | ETH | optimistic.etherscan.io | 0 (L2, finality via L1) |
| Avalanche | 43114 | AVAX | snowtrace.io | 1 block (sub-second) |
| Monad | 143 | MON | monadvision.com | 1 block (sub-second) |
| Plume | 98866 | PLUME | explorer.plume.org | 0 (L2, finality via L1) |
| Stable | 988 | USDT0 | stablescan.xyz | 0 (inclusion-based) |
| Plasma | 9745 | XPL | plasmascan.to | 1 block (sub-second) |
Rollout Coverage
| Chain | Chain ID | CAIP-2 | Native Currency | Explorer |
|---|---|---|---|---|
| Solana | 1399811149 | solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp | SOL | solscan.io |
Solana is registered in the chain registry and accepted by every chain
filter and address route today. Kamino vault data goes live with the
staged rollout gate; until then, ?chain=solana validly returns an
empty list. The 1399811149 integer is a Philidor-assigned synthetic id
(Solana has no EIP-155 chain id) — integrators who want a standards-based
key should use the registry caip2 identifier
(solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp), which /v1/chains serves
alongside Solana's row once its first vault rows are public.
Chain identifiers and address formats
Every chain carries three identifiers. GET /v1/chains serves them for
every chain with active vaults; chains still rolling out (like Solana
today) carry the same identifiers in the registry but appear in the
endpoint only once their first vault rows are public:
id— the integer used inchain_idfields and path segments. For EVM chains this is the EIP-155 chain id; for non-EVM chains it is a Philidor-assigned synthetic integer (stable, but not a standard).slug— the URL-safe name accepted by?chain=filters and/v1/vault/{network}/{address}paths (ethereum,base,solana). Filters accept the integer id or the slug interchangeably.caip2— the CAIP-2 identifier (eip155:1,solana:…). The standards-based way to key on a chain across namespaces.
Address formats are per-namespace and validation is strict:
- eip155 (EVM):
0x-prefixed hex, 40 hex characters (20 bytes) or 64 for bytes32-keyed rows. Case-insensitive on input; canonical form is lowercase. - solana: base58, 32–44 characters decoding to 32 bytes. Case-sensitive — two addresses differing only in letter case are different accounts, so Philidor never case-folds them and neither should you.
A base58 address on an EVM chain (or a hex address on Solana) is
rejected with 400, never coerced.
Additional Asset Coverage
| Chain | Chain ID | Native Currency | Explorer | Finality Depth |
|---|---|---|---|---|
| Linea | 59144 | ETH | lineascan.build | 0 (L2, finality via L1) |
Finality Depths
Philidor only reads finalized blocks to prevent data corruption from chain reorganizations:
- Ethereum (64 blocks): 2 epochs post-Merge. Provides economic finality.
- Polygon (128 blocks): Heimdall checkpoint-based finality.
- Avalanche (1 block): Avalanche consensus provides sub-second finality.
- Monad (1 block): High-throughput L1 with sub-second block finality.
- Plasma (1 block): Tether-backed stablecoin L1 (PlasmaBFT), sub-second finality.
- Stable (0 blocks): Immediate inclusion finality in the chain registry.
- L2s (0 blocks): L2 sequencers provide ordering; finality is inherited from L1 batch posting (Base, Arbitrum, Optimism, Plume, Linea).
See Data Integrity for how finality is enforced.
Using Chain Filters
Filter vaults by chain using the chain parameter:
curl "https://api.philidor.io/v1/vaults?chain=ethereum"
curl "https://api.philidor.io/v1/vaults?chain=ethereum,base"
curl "https://api.philidor.io/v1/vaults?chain=solana"