Supported Networks and Providers
Discover xPath networks, feature support, tokens, and route providers dynamically.
xPath exposes network and token capabilities through its API. Applications should discover support at runtime instead of maintaining a static list.
Discover Supported Networks
Call GET /supported-chains:
const response = await fetch('https://api.xpath.rath.fi/supported-chains', {
headers: { 'api-key': process.env.XPATH_API_KEY! },
})
const { data: chains } = await response.json()Each chain includes:
- numeric chain ID and display name
- chain type and testnet flag
- explorer and public RPC URLs
- native token metadata
- xPath contract address
- feature flags for cross-chain routing, gasless swaps, and Permit2
Current Documented Networks
The current API specification documents:
| Network | Chain ID | Native token | Cross-chain | Gasless | Permit2 |
|---|---|---|---|---|---|
| Base | 8453 | ETH | Yes | Yes | Yes |
| Arbitrum One | 42161 | ETH | Yes | Yes | Yes |
| HyperEVM | 999 | HYPE | Yes | Yes | Yes |
The live /supported-chains response is authoritative. Network support and feature flags can change independently of this page.
Discover Tokens
Use:
GET /tokensto list tokens for a chain or across supported chainsGET /search-tokento search by symbol, name, or address
Store token identity as (chainId, address), not symbol alone. The same symbol can represent unrelated assets or different contract deployments.
Provider Discovery
xPath selects DEX and bridge providers per quote. A route response exposes:
{
"routeKind": "swapBridge",
"providers": [
{
"name": "provider-key",
"type": "bridge"
}
],
"path": [
{
"type": "bridge",
"provider": {
"name": "provider-key",
"type": "bridge"
}
}
]
}Provider availability is route-dependent. It can change based on:
- source and destination chains
- token pair and amount
- liquidity and bridge availability
- route mode
- provider health
- explicit include or exclude filters
Provider Policies
Use quote filters when your application has compliance, reliability, or UX constraints:
const params = new URLSearchParams({
fromChain: '8453',
toChain: '42161',
fromToken,
toToken,
amount,
sender,
routeMode: 'suggested',
})
params.append('includeProvider', 'approved-provider')
params.append('excludeProvider', 'blocked-provider')Do not hardcode a provider-specific execution payload. Always execute the transaction returned by xPath for the selected route.
Capability Checks
Before presenting a flow:
- Confirm both chains are returned by
/supported-chains. - Check the required feature flags.
- Confirm the input and output tokens through
/tokensor/search-token. - Request a quote to verify live route availability.
- Display the selected providers and route kind before execution.
See the Supported Chains API for the complete response schema.