> ## Documentation Index
> Fetch the complete documentation index at: https://sdk.avantisfi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Migrating from v1

> Avantis v2 is live as of August 12, 2026. What changed, what carries over, and how to move your integration.

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:

|                            |                                                                                                                    |
| -------------------------- | ------------------------------------------------------------------------------------------------------------------ |
| Contract addresses         | **Unchanged.** All state lives at the existing proxy addresses; only the implementations behind them are upgraded. |
| Open positions             | **Carry over automatically.** No action needed; collateral, TP/SL, and open limit orders are preserved.            |
| Funds and USDC approvals   | **Carry over automatically.** Existing allowances against the trading contracts remain valid.                      |
| Trading                    | **Paused briefly** during the upgrade window while state is verified, then unpaused.                               |
| Event ABIs and write paths | **Change.** This is where integrations break; see the guides below.                                                |

<Note>
  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.
</Note>

## 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](/migration/direct-integrators).

## Pick your guide

<CardGroup cols={2}>
  <Card title="Python SDK users" icon="python" href="/migration/sdk-migration">
    You use `avantis-trader-sdk` 0.x (`TraderClient`). Method-by-method
    mapping to the 2.x client, with before/after code.
  </Card>

  <Card title="Direct integrators" icon="file-signature" href="/migration/direct-integrators">
    You call the contracts or decode their events yourself: MMs with
    custom stacks, indexers, keepers, risk engines. Full breaking-change
    inventory.
  </Card>
</CardGroup>

## 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](https://delegate.avantisfi.com/)
   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](https://discord.gg/avantisfi). For deep contract-level questions
(exact event field layouts, struct changes), a field-accurate v1→v2 delta
reference is available on request.
