Configure Routing
Control which venues, providers, and route shapes Titan uses when computing swap quotes.
Titan routes through Argos across all available venues and providers by default. You can restrict or filter routing using the parameters below — all go into the swap or transaction object of your request.
Routing parameters
These fields are part of SwapParams:
dexes(string[]) — Only route through these venues. Venues are on-chain liquidity sources — Raydium, Phoenix, Meteora, Orca, Whirlpool, PumpFun, and others.excludeDexes(string[]) — Exclude these venues from routing. All other venues remain available.venueAllowlist(Pubkey[]) — Constrain quotes to routes that only use venues (pools) whose address is in this list. Filters by individual venue address, unlikedexes/excludeDexeswhich filter by venue label.venueBanlist(Pubkey[]) — Exclude any route that uses a venue (pool) whose address is in this list. The banlist overridesvenueAllowlist— a venue in both lists is always excluded.noVoteAccounts(bool) — Exclude a server-configured set of market-maker venues from routing. When absent or false, those venues are included as normal.providers(string[]) — Only use these quote providers. Providers are the quote sources that compete to give you the best price —Titan,Metis,Okx, and others.onlyDirectRoutes(bool) — Skip multi-hop routes. Useful when you want predictable gas costs or need to avoid complex route topologies.addSizeConstraint(bool) — If true, only quotes with transactions that fit within the size constraint are returned.sizeConstraint(u32) — Maximum transaction size in bytes whenaddSizeConstraintis set. Values are clamped to the requested format's maximum: 1232 bytes for V0 and 4096 bytes for V1.accountsLimitTotal(u16) — Max total accounts per route. Transaction V1 supports at most 64 addresses; higher values are clamped.accountsLimitWritable(u16) — Max writable accounts per route. If not set, any number that still allows an executable transaction is allowed (currently 64).
The transaction format is selected with transaction.transactionFormat: 0 for V0 (the default) or 1 for Transaction V1. See NewSwapQuoteStream → Transaction format for compatibility and activation requirements.
Example: combining multiple filters
List available venues and providers
Query the server at runtime to discover which venues and providers are currently active.
Related pages
Stream & Execute a Swap — full guide with transaction building and error handling
Fee Collection — add platform fees to swap transactions
Types Reference —
SwapParams,TransactionParams, and all type definitionsGetVenues / ListProviders Reference — complete response schemas
Last updated

