Skip to content

Supported Chains

Trident uses Circle CCTP domains as chain identifiers. Query available deployments at runtime:

let client = TridentClientBuilder::new(endpoint).connect().await?;
// Deployments are fetched automatically during connect()

Current mainnet domains include:

DomainChain
0Ethereum
1Avalanche
2Optimism
3Arbitrum
6Base
7Polygon

Use the querier’s ListEvmDeployments RPC to get the canonical list with contract addresses.

use tonic::transport::Endpoint;
use trident_proto_types::querier_v1;
use trident_proto_types::querier_v1::querier_service_client::QuerierServiceClient;
let channel = Endpoint::from_static("http://your-attester-endpoint:9000")
.connect()
.await?;
let mut querier = QuerierServiceClient::new(channel);
let deployments = querier
.list_evm_deployments(querier_v1::ListEvmDeploymentsRequest {})
.await?
.into_inner();

Use GetTokenRepresentations to discover cross-chain token mappings — which tokens on different domains represent the same underlying asset.