Skip to main content
Subscribe addresses to receive daily portfolio snapshots, enabling you to retrieve historical portfolio data starting from the subscription date.
Cost: 1200 credits per address per year ($30)

Endpoint

POST https://api.octav.fi/v1/subscribe-snapshot

Request Body

addresses
array
required
Array of address objects to subscribe for snapshotsEach object contains:
  • address (string, required): EVM or SOL wallet address
  • description (string, optional): Label or description for the address
{
  "addresses": [
    {
      "address": "0x6426af179aabebe47666f345d69fd9079673f6cd",
      "description": "Main Treasury"
    },
    {
      "address": "0x1234567890abcdef1234567890abcdef12345678",
      "description": ""
    }
  ]
}
Addresses must be valid and unique within the request. Duplicate addresses will be rejected.

Example

curl -X POST "https://api.octav.fi/v1/subscribe-snapshot" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "addresses": [
      {
        "address": "0x6426af179aabebe47666f345d69fd9079673f6cd",
        "description": "Main Treasury"
      }
    ]
  }'

How It Works

1

Subscribe Addresses

Call this endpoint with the addresses you want to track historically.
2

Daily Snapshots

Starting from the subscription date, daily portfolio snapshots are automatically captured for each subscribed address.
3

Query Historical Data

Use the Historical Portfolio endpoint to retrieve portfolio data from any date after subscription.

Use Cases

Subscribe addresses to track portfolio performance over time:
async function setupPortfolioTracking(addresses) {
  // Subscribe addresses for snapshots
  await fetch('https://api.octav.fi/v1/subscribe-snapshot', {
    method: 'POST',
    headers: {
      'Authorization': `Bearer ${apiKey}`,
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({
      addresses: addresses.map(addr => ({
        address: addr,
        description: `Tracked wallet ${addr.slice(0, 8)}...`
      }))
    })
  });

  console.log('Addresses subscribed! Historical data will be available starting tomorrow.');
}

Best Practices

Historical data is only available from the subscription date forward. Subscribe addresses as soon as you need historical tracking to maximize data availability.
Add meaningful descriptions to addresses for easier identification when querying historical data or managing subscriptions.
The endpoint validates that all addresses in a request are unique. Check your existing subscriptions before adding new addresses.