Complete Solana API Specification
View the full OpenAPI documentation with all available fields, filters, and
detailed schemas →
Base URL
All Portal requests are made to:{network} with your target blockchain (e.g., solana-mainnet).
Core Endpoints
POST /stream
Stream blockchain data with filters. Includes unfinalized blocks.
POST /finalized-stream
Stream only finalized blocks. Use for production pipelines requiring
certainty.
GET /metadata
Get dataset information: slot range, finality rules, and network details.
Installation
Quick Start Examples
Available Fields
Block Fields
Select which block header fields to retrieve:Transaction Fields
Select transaction data fields:Instruction Fields
Select instruction data fields:Log Fields
Select log message fields:Token Balance Fields
Select token balance fields:Balance Fields
Select SOL balance fields:Reward Fields
Select reward fields:Filtering Options
Instruction Filters
Filter instructions by program, discriminator, or accounts:- Multiple program IDs in one object = OR
- Multiple discriminators in one object = OR
- Multiple filter objects = OR
Transaction Filters
Filter transactions by fee payer:Log Filters
Filter logs by program and kind:Token Balance Filters
Filter token balances by mint or account:Network Selection
Specify the Solana network when creating the data source:View All Networks
See complete list of supported Solana networks
Query Patterns
Pattern 1: Range Query
Query a specific slot range:Pattern 2: Batch Processing
Process large ranges in batches:Pattern 3: Multi-Program Query
Query multiple programs simultaneously:Performance Optimization
1. Request Only Needed Fields
2. Use Specific Filters
3. Optimal Batch Sizes
4. Parallel Queries
Error Handling
Common Use Cases
Use Case 1: Instruction Monitoring
Monitor specific program instructions:Use Case 2: Transaction Tracking
Track transactions from/to specific addresses:Use Case 3: Analytics Pipeline
Build analytics on blockchain data:Request Structure Reference
Every Portal request follows this structure:Response Format
Portal returns newline-delimited JSON (NDJSON), with one block per line:Common Patterns
Batch Processing
Batch Processing
Process large slot ranges by splitting into manageable chunks:
Real-time Streaming
Real-time Streaming
Stream new blocks as they arrive using /finalized-stream:
Error Handling
Error Handling
Handle rate limits and network errors gracefully:
Complete API Specification
For the complete OpenAPI specification with all available fields, options, and detailed schemas:Full Solana API Specification
View complete OpenAPI documentation with all endpoints, fields, and options →

