Skip to main content
Avantis upgraded the live Base deployment from v1 to v2 on August 12, 2026. This section is for market makers, trading bots, indexers, and every other third-party integrator that builds against v1. It tells you what changed on migration day, what breaks, and exactly how to move.

What happened on migration day

The migration is an in-place proxy upgrade, not a new deployment:
Traders using the Avantis web app don’t need to do anything. This section exists because programmatic integrations (SDK scripts, market-making systems, indexers, keepers) interact with surfaces that change shape in v2.

What v2 changes for integrators

v1 integrations talk to the contracts directly: vendored ABIs, an RPC node, self-built transactions, multicall reads. v2 is API-first and intent-based:
  • Signed intents instead of self-broadcast transactions. You sign an EIP-712 order intent locally; the Avantis relayer puts it on-chain. No gas, no ETH, no node. (Self-broadcasting via your own RPC remains fully supported for those who want it.)
  • API keys (delegates). A separate signing key registered to your wallet with one signature. It can trade but can never withdraw funds, which is the right shape for bots and MM systems.
  • Read APIs instead of multicall fan-outs. Positions with liquidation prices, the full pair catalog, funding/spread state, history with fee breakdowns, all served over HTTP.
  • New order surface. Coin-sized orders, Upside markets (separate _UPSIDE pairs with profit share instead of fixed fees), position size increases, partial TP/SL triggers, TWAP, and builder codes are new in v2.
  • Reshaped on-chain surface. Funding fees, spread on close, maker/taker close fees, new and re-shaped events. If you decode logs or call the contracts directly, you must update; see the direct integrators guide.

Pick your guide

Python SDK users

You use avantis-trader-sdk 0.x (TraderClient). Method-by-method mapping to the 2.x client, with before/after code.

Direct integrators

You call the contracts or decode their events yourself: MMs with custom stacks, indexers, keepers, risk engines. Full breaking-change inventory.

Checklist

If you haven’t migrated yet:
  1. Read the guide for your integration type (above) and inventory what you touch: methods, events, read paths.
  2. Build against v2 on testnet first if you want a safe rehearsal. Set AVANTIS_NETWORK=testnet to point the SDK at it; direct integrators can exercise the full v2 surface there.
  3. Create an API key with the Avantis API Key Generator if you plan to use the gasless relayer path (recommended for most trading systems).
  4. If you index events: rebuild decoding from v2 ABIs and topic filters, and schema-version any time series that spans the upgrade.
Cutting over:
  1. Stop submitting v1-shaped transactions — against the upgraded contracts they revert.
  2. Switch to your v2 code path (SDK 2.x, or your updated direct integration).
  3. Verify your positions via client.account.positions() or the positions API. Everything you had open before the upgrade pause should be there.

Getting help

If anything in your integration doesn’t map cleanly, reach out to the Avantis team through your existing integration channel or the community Discord. For deep contract-level questions (exact event field layouts, struct changes), a field-accurate v1→v2 delta reference is available on request.