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

# Upgrading from Agent API v2

> Your RPC URLs and keys keep serving; the v2 management API is retired, and the same secret works on the account API

# Upgrading from Agent API v2

Every RPC URL and key secret issued under Agent API v2 keeps serving. The v2
management API is retired: its routes answer `410 gone` with a `next_action`
naming the account API operation to use, and the same management secret works
there. Use this page to move an integration from `/api/v1/management` to the
account API.

```bash theme={null}
curl -sS https://lasso.sh/api/v1/agents/current \
  -H "authorization: Bearer $LASSO_MANAGEMENT_TOKEN"
```

## What keeps working

| v2 surface | Now |
| - | - |
| RPC URLs: `/rpc/k/<key>/…`, `/rpc/profile/<slug>/…`, header-auth and provider pins | Serve as before; they're the current URL grammar |
| RPC key secrets, including `lasso_ak_` keys | Keep working, with their prefix |
| v2 management tokens | Authenticate as agents of their account on the account API |
| v2 RPC headers (`x-lasso-profile`, `x-lasso-downgraded`, `x-lasso-balance-warning`, `x-lasso-rate-limit-*`) and RPC `error_type` | Still sent on v2 URL forms, alongside the new signals |

## What's retired

| v2 surface | Now |
| - | - |
| `/api/v1/management/*`, `/api/v1/me`, `/api/v1/account/management-credentials` | `410 gone`, with `next_action` naming the account API operation |
| v2 claim links issued before accounts went live | Not supported; request a new link from the account API |
| The v2 fields in `agent.json` and the v2 paths in `openapi.json` | Removed; read `endpoints.account_resources` |

## Where each v2 operation moved

| Agent API v2 | Account API |
| - | - |
| `POST /api/v1/management/keys` | `POST /api/v1/keys` |
| `GET`, `PATCH /api/v1/management/keys/{id}` | `GET`, `PATCH /api/v1/keys/{id}` |
| `POST /api/v1/management/keys/{id}/rotate` | `POST /api/v1/keys/{id}/rotate` |
| `POST /api/v1/management/keys/{id}/credit` | `POST /api/v1/accounts/{id}/credit` |
| `POST /api/v1/management/keys/{id}/custom-access` | `POST /api/v1/accounts/{id}/custom-access` |
| `POST /api/v1/management/keys/{id}/claim-link` | `POST /api/v1/accounts/current/claim-link` |
| `GET /api/v1/management/me` | `GET /api/v1/agents/current` |
| `/api/v1/management/connections` | `/api/v1/connections` |
| `/api/v1/management/profiles/{slug}` | `/api/v1/profiles/{slug}` |
| `GET /api/v1/management/configuration-schema` | `GET /api/v1/configuration-schema` |
| `GET /api/v1/management/purchases/{id}` | `GET /api/v1/purchases/{id}` |

## What changed in meaning

* **Balances belong to accounts, not keys.** Every key of an account draws on
  one USD balance. Payments addressed to a v2 key ID credit that key's
  account.
* **Keys reach every profile of their account.** A v2 key pinned to one Custom
  profile keeps that profile as its default and is scoped to it.
* **Running out of money doesn't stop a paying app.** Accounts that have paid
  fall back to public providers for 30 days instead of failing.
* **Usage is counted per method.** Requests are sized in per-method CU and
  priced in USD; free allowances and Pro included usage are restated in
  per-method CU.
* **Agent-created keys share one rate limit per account** instead of 50 RPS
  each.
* **A claim link comes from the agent, not the RPC key**, so an exposed key
  can't hand over a funded account. Keys from before agents existed still
  claim with their RPC key.

## Older keys without an agent

A key created before agents existed has its own provisional account with no
agent. Its RPC key can request that account's claim link, since it's the
account's only credential:

```http theme={null}
POST https://lasso.sh/api/v1/accounts/current/claim-link
Authorization: Bearer <rpc key>
```

## Older URL forms

These forms serve until 30 days pass with no traffic on them:

| Form | Served as |
| - | - |
| `round-robin` strategy segment | `load-balanced` |
| `/rpc/<chain>/<provider>` | The provider pin |
| `?key=` query parameter | The key |

## Next

* [Keys, URLs and profiles](/cloud/keys-and-profiles): the URL grammar.
* [Accounts, people and agents](/cloud/accounts-and-agents): what an account
  owns.
* [Response signals and errors](/cloud/reference/signals-and-errors): the new
  headers and codes.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.