Unified API for full portfolio coverage
Unified API for full portfolio coverage
Unified API for full portfolio coverage
Access wallets, DeFi positions, and labeled transactions across chains and protocols with one lightweight endpoint.
Access wallets, DeFi positions, and labeled transactions across chains and protocols with one lightweight endpoint.
Access wallets, DeFi positions, and labeled transactions across chains and protocols with one lightweight endpoint.
Trusted by 200+
Leading Digital
Asset Managers
Trusted by 200+
Leading Digital
Asset Managers
Get portfolio and
transaction data in one call
Hedge Funds
Deliver an enhanced user experience with seamless wallet and transaction insights. Octav enables protocols to:
Monitor Portfolio Performance
Ensure Compliance & Reporting


Hedge Funds
Deliver an enhanced user experience with seamless wallet and transaction insights. Octav enables protocols to:
Monitor Portfolio Performance
Ensure Compliance & Reporting


Hedge Funds
Deliver an enhanced user experience with seamless wallet and transaction insights. Octav enables protocols to:
Monitor Portfolio Performance
Ensure Compliance & Reporting


Hedge Funds
Deliver an enhanced user experience with seamless wallet and transaction insights. Octav enables protocols to:
Monitor Portfolio Performance
Ensure Compliance & Reporting


Point-in-time NAV, done for you
Subscribe an address to get daily snapshots at 00:00 UTC for a year (1,200 credits/address). Perfect for fund statements and audits.
Exportable history for CFO/accounting workflows.

Point-in-time NAV, done for you
Subscribe an address to get daily snapshots at 00:00 UTC for a year (1,200 credits/address). Perfect for fund statements and audits.
Exportable history for CFO/accounting workflows.

Point-in-time NAV, done for you
Subscribe an address to get daily snapshots at 00:00 UTC for a year (1,200 credits/address). Perfect for fund statements and audits.
Exportable history for CFO/accounting workflows.

Point-in-time NAV, done for you
Subscribe an address to get daily snapshots at 00:00 UTC for a year (1,200 credits/address). Perfect for fund statements and audits.
Exportable history for CFO/accounting workflows.

Try it live
Call our API to receive current NAV in seconds.

Try it live
Call our API to receive current NAV in seconds.

Try it live
Call our API to receive current NAV in seconds.

Try it live
Call our API to receive current NAV in seconds.

Get started in 4 steps
Get Started in 4 steps
No SDKs to install. No complex setup. Just clean REST endpoints that work.
No SDKs to install. No complex setup. Just clean REST endpoints that work.
Step 1
Get your API Keys
Sign up and grab your key in 30 seconds. No credit card required.




Step 2
Make Your First Request
Follow our Quickstart Guide to make your first API call.




Step 3
Explore Endpoints
Browse the API Reference to see all available endpoints.




Step 4
Monitor Usage
Track your credit usage and manage your account at the Dev Portal.




Why Octav API?
Multi-Chain Support
Support for 50+ blockchain networks including Ethereum, Arbitrum, Base, Solana, and more.
Real-Time Data
Fresh data and on-demand sync capabilities.
DeFi Protocol Coverage
Track positions across thousands of DeFi protocols automatically.
Credit-Based Pricing
Pay only for what you use with our flexible credit system.
SOC 2 Compliant
Enterprise-grade security and compliance standards.
Production Ready
Rate limiting, error handling, 99.9% uptime and status monitoring built-in.
Key APIs to Explore
Portfolio tracking
Net worth, balances, protocol positions
Javascript
Python
cURL
const address = '0x2efc4931f2e64b38d6ae3d714466840fbc951f56'; const url = `https://api.octav.fi/v1/portfolio?addresses=${address}`; const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); }
Javascript
Python
cURL
const address = '0x2efc4931f2e64b38d6ae3d714466840fbc951f56'; const url = `https://api.octav.fi/v1/portfolio?addresses=${address}`; const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); }
Javascript
Python
cURL
const address = '0x2efc4931f2e64b38d6ae3d714466840fbc951f56'; const url = `https://api.octav.fi/v1/portfolio?addresses=${address}`; const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); }
Javascript
Python
cURL
const address = '0x2efc4931f2e64b38d6ae3d714466840fbc951f56'; const url = `https://api.octav.fi/v1/portfolio?addresses=${address}`; const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); }
Transaction history
Filter by chain, type, assets and protocols
Javascript
Python
cURL
const address = '0x2efc4931f2e64b38d6ae3d714466840fbc951f56'; const limit = 10; const offset = 0; const url = `https://api.octav.fi/v1/transactions?&addresses=${address}&limit=${limit}&offset=${offset}`; const options = { method: 'GET', headers: { Authorization: 'Bearer <token>' } }; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); }
Javascript
Python
cURL
const address = '0x2efc4931f2e64b38d6ae3d714466840fbc951f56'; const limit = 10; const offset = 0; const url = `https://api.octav.fi/v1/transactions?&addresses=${address}&limit=${limit}&offset=${offset}`; const options = { method: 'GET', headers: { Authorization: 'Bearer <token>' } }; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); }
Javascript
Python
cURL
const address = '0x2efc4931f2e64b38d6ae3d714466840fbc951f56'; const limit = 10; const offset = 0; const url = `https://api.octav.fi/v1/transactions?&addresses=${address}&limit=${limit}&offset=${offset}`; const options = { method: 'GET', headers: { Authorization: 'Bearer <token>' } }; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); }
Javascript
Python
cURL
const address = '0x2efc4931f2e64b38d6ae3d714466840fbc951f56'; const limit = 10; const offset = 0; const url = `https://api.octav.fi/v1/transactions?&addresses=${address}&limit=${limit}&offset=${offset}`; const options = { method: 'GET', headers: { Authorization: 'Bearer <token>' } }; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); }
Token analytics
Token distribution tracking & analysis
Javascript
Python
cURL
const address = '0x2efc4931f2e64b38d6ae3d714466840fbc951f56'; const url = `https://api.octav.fi/v1/token-overview?addresses=${address}`; const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); }
Javascript
Python
cURL
const address = '0x2efc4931f2e64b38d6ae3d714466840fbc951f56'; const url = `https://api.octav.fi/v1/token-overview?addresses=${address}`; const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); }
Javascript
Python
cURL
const address = '0x2efc4931f2e64b38d6ae3d714466840fbc951f56'; const url = `https://api.octav.fi/v1/token-overview?addresses=${address}`; const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); }
Javascript
Python
cURL
const address = '0x2efc4931f2e64b38d6ae3d714466840fbc951f56'; const url = `https://api.octav.fi/v1/token-overview?addresses=${address}`; const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); }
Historical data
Time-based portfolio snapshots via API
Javascript
Python
cURL
const address = '0x2efc4931f2e64b38d6ae3d714466840fbc951f56'; const date = '2024-11-01'; const url = `https://api.octav.fi/v1/portfolio?addresses=${address}&date=${date}`; const options = { method: 'GET', headers: { Authorization: 'Bearer <token>' } }; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); }
Javascript
Python
cURL
const address = '0x2efc4931f2e64b38d6ae3d714466840fbc951f56'; const date = '2024-11-01'; const url = `https://api.octav.fi/v1/portfolio?addresses=${address}&date=${date}`; const options = { method: 'GET', headers: { Authorization: 'Bearer <token>' } }; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); }
Javascript
Python
cURL
const address = '0x2efc4931f2e64b38d6ae3d714466840fbc951f56'; const date = '2024-11-01'; const url = `https://api.octav.fi/v1/portfolio?addresses=${address}&date=${date}`; const options = { method: 'GET', headers: { Authorization: 'Bearer <token>' } }; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); }
Javascript
Python
cURL
const address = '0x2efc4931f2e64b38d6ae3d714466840fbc951f56'; const date = '2024-11-01'; const url = `https://api.octav.fi/v1/portfolio?addresses=${address}&date=${date}`; const options = { method: 'GET', headers: { Authorization: 'Bearer <token>' } }; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); }
Credit-packs explainer
Simple credit-based pricing: 1 credit per API call, 1 credit per 250 transactions indexed.
/status
and
/credits
are always free.
Institutional
ENTERPRISE
$20,000
/ $0.020 per credit
1,000,000 credits
Best value for high-volume usage
Institutional
ENTERPRISE
$20,000
/ $0.020 per credit
1,000,000 credits
Best value for high-volume usage
Institutional
ENTERPRISE
$20,000
/ $0.020 per credit
1,000,000 credits
Best value for high-volume usage
Institutional
ENTERPRISE
$20,000
/ $0.020 per credit
1,000,000 credits
Best value for high-volume usage
Frequently Asked Questions
Frequently Asked
Questions
Do you only support EVM chains?
No, we support EVM but also Solana, Starknet and custom implementations like Hyperliquid and Lighther.
Can I have custom integration?
Yes, we do custom integration for multiple existing clients. Contract our sales to discuss your integration.
Can I have my historical portfolio from last year?
Yes, but you have to have to take the snapshot package as soon as possible.
Do you only support EVM chains?
No, we support EVM but also Solana, Starknet and custom implementations like Hyperliquid and Lighther.
Can I have custom integration?
Yes, we do custom integration for multiple existing clients. Contract our sales to discuss your integration.
Can I have my historical portfolio from last year?
Yes, but you have to have to take the snapshot package as soon as possible.
Do you only support EVM chains?
No, we support EVM but also Solana, Starknet and custom implementations like Hyperliquid and Lighther.
Can I have custom integration?
Yes, we do custom integration for multiple existing clients. Contract our sales to discuss your integration.
Can I have my historical portfolio from last year?
Yes, but you have to have to take the snapshot package as soon as possible.
Do you only support EVM chains?
No, we support EVM but also Solana, Starknet and custom implementations like Hyperliquid and Lighther.
Can I have custom integration?
Yes, we do custom integration for multiple existing clients. Contract our sales to discuss your integration.
Can I have my historical portfolio from last year?
Yes, but you have to have to take the snapshot package as soon as possible.
Ready to start monitoring?
Ready to start monitoring?
Get started for free and start monitoring your portfolio now.

SOC 2 Type 1
Design Compliance
Security controls properly designed
SOC 2 Type 2
Operational Compliance
Security controls operating effectively over time
© 2025 Octav. All rights reserved.
© 2025 Octav. All rights reserved.