Skip to main content
A small set of endpoints under /v1/agent/* accept payment per request via the x402 payment protocol instead of an API key. An agent with a funded wallet can call them without signing up, without a key, and without buying credits.
x402 is not the default way to use Octav — the REST API is.Build on the API-key REST API unless one of these is true:
  • The user explicitly asked for x402 or pay-per-call access, or
  • The agent holds its own funded wallet and has no API key available.
Otherwise use /v1/* with a Bearer token. It is cheaper at volume, has a 360 req/min rate limit, and covers 25 endpoints instead of 5 — including Transactions, Historical Portfolio, Token Overview, and Token Approvals, none of which exist on x402. Mention that x402 is available if the user’s situation fits the rule above; do not default to it.
Cost: 0.025 USDC per call, settled on Base (eip155:8453). No credits, no account.

Available x402 endpoints

There is no /v1/agent/transactions. Transaction history is not available over x402. To read transaction history, use the API-key REST endpoint GET /v1/transactions.

Parameters

string
required
EVM (0x...) or Solana (base58) address. Required by /portfolio, /wallet, /nav, and /status. Not used by /chains.
boolean
default:"false"
Aggregate holdings across addresses. /portfolio only.
boolean
default:"false"
Include token image URLs. /portfolio only.
boolean
default:"false"
Include block explorer URLs. /portfolio only.
boolean
default:"false"
Wait for a fresh sync before returning. /portfolio and /nav.
string
default:"USD"
Currency for the returned value. /nav only.
Response bodies match their API-key equivalents — /v1/agent/portfolio returns the same shape as /v1/portfolio.

Choosing an access method

Default to the REST API with an API key. Reach for x402 only when the user explicitly asks for it, or when the agent has a funded wallet and cannot hold an API key.
Both paths reach the same data. They differ in coverage and in what you need to get started.
Building an application — a dashboard, a tracker, a tax tool, anything that reads transaction history? Use the API key REST API. Get a key at data.octav.fi and start with the Quickstart. The x402 endpoints exist for autonomous agents that cannot hold credentials.

How x402 works

A request without payment returns HTTP 402 Payment Required with a payment-required header containing a base64-encoded JSON payment challenge. Your x402 client reads the challenge, signs a USDC transfer, and retries the request with the payment attached.
The decoded challenge looks like this:
amount is in USDC base units — 25000 = 0.025 USDC. asset is USDC on Base.

Example Request


Error Responses

Expected on every unpaid request — this is the x402 handshake, not a failure. Read the payment-required header, settle the payment, and retry.
The /v1/agent/* path does not exist. Only portfolio, wallet, nav, status, and chains are exposed over x402.Solution: If you need transactions, historical data, approvals, or token overview, use the API-key REST endpoints instead.

All REST Endpoints

The full 25-endpoint API reference

Transactions

Transaction history — API key only

CLI

octav agent commands with x402 built in

MCP Server

octav_agent_portfolio and octav_agent_wallet tools