Skip to main content
Get a portfolio for a single Ethereum address with every balance and price pinned to a specific historical block, instead of the current state.
The Portfolio at Block endpoint is an add-on, billed at a set monthly fee separate from your API credit pool, plus 1 credit per call. Contact sales to enable Portfolio at Block access for your account.
Cost: Set monthly fee under the Portfolio at Block add-on, plus 1 credit per call.
Rate limit: 100 requests/min, on a dedicated bucket (does not count against your portfolio rate limit).

Endpoint


Parameters

string
required
A single EVM wallet address to retrieve portfolio data for. Only one address is accepted per call.
string
required
The chain the block belongs to. Currently only ethereum is supported.
integer
required
The block number to value the portfolio at. Must be a positive integer.

Response

Returns the same Portfolio shape, with every asset balance and price valued as of blockNumber, plus a top-level blockNumber field. This endpoint does not accept includeImages, includeExplorerUrls, or includeNFTs — image, explorer URL, and NFT fields are never included in the response.
string
The block number the portfolio was valued at (echoes the blockNumber query parameter, returned as a string)
string
The wallet address
string
Total portfolio net worth in USD, valued at blockNumber
string
Available cash balance at blockNumber
object
Assets organized by protocol (wallet, lending, staking, etc.), keyed by protocol identifier — same structure as the Portfolio endpoint, valued at blockNumber.
object
Per-chain totals, keyed by chain identifier — only ethereum is present, since block-pinning is Ethereum-only.

Example Request


Example Response


Use Cases

Value a wallet exactly as it stood at a known block — useful for tax lot reconstruction, snapshot audits, or governance-vote eligibility checks:

Error Responses

Input validation failed (Joi structured error).
Common causes:
  • Missing addresses, chainKey, or blockNumber
  • chainKey is not ethereum (the only currently supported chain)
  • blockNumber is not a positive integer
  • addresses is not a single valid EVM address
Missing/invalid API key, or your key does not have the Portfolio at Block add-on enabled.
Solution: Check your API key in the Authorization header. If the key is valid, contact sales to enable the Portfolio at Block add-on.
Rate limit exceeded (100 requests/min on this endpoint’s dedicated bucket).
Solution: Wait for the specified time or implement retry logic.
Insufficient credits.
Solution: Purchase more credits at data.octav.fi
Upstream failure fetching Portfolio at Block data.

Portfolio

Current portfolio state

Historical Portfolio

Portfolio snapshot for a specific calendar date

Chains

List all supported blockchain networks

Status

Check when portfolio was last synced