API Reference
Base URL
Production: https://api.shards.tv/v1
Development: https://dev-api.shards.tv/v1
Authentication
All API requests require authentication using an API key. Include your API key in the request header:
Authorization: Bearer YOUR_API_KEYRate Limits
Free
10
10,000
1
Basic
100
100,000
5
Pro
1,000
1,000,000
20
Enterprise
Custom
Unlimited
Unlimited
REST API Endpoints
Oracle Data
Get Current Price
Retrieve the latest price for a specific asset from aggregated oracle sources.
Parameters:
symbol(path, required): Asset symbol (e.g., "SOL", "BTC", "ETH")source(query, optional): Specific oracle source ("pyth", "chainlink", "switchboard", "aggregated")confidence(query, optional): Include confidence intervals (boolean)
Response:
Get Historical Prices
Retrieve historical price data for a specific time range.
Parameters:
symbol(path, required): Asset symbolfrom(query, required): Start timestamp (Unix epoch)to(query, required): End timestamp (Unix epoch)resolution(query, optional): Data resolution ("1m", "5m", "15m", "1h", "1d")source(query, optional): Specific oracle source
Response:
Batch Price Request
Retrieve prices for multiple assets in a single request.
Request Body:
Response:
RPC Data Access
Get Account Info
Retrieve detailed information about a Solana account.
Parameters:
address(path, required): Solana account addressencoding(query, optional): Data encoding ("base58", "base64", "jsonParsed")commitment(query, optional): Commitment level ("processed", "confirmed", "finalized")
Response:
Get Program Accounts
Retrieve all accounts owned by a specific program.
Parameters:
programId(path, required): Solana program IDfilters(query, optional): JSON-encoded filterslimit(query, optional): Maximum number of accounts (default: 100, max: 1000)offset(query, optional): Pagination offset
LLM Interface
Natural Language Query
Process natural language queries to retrieve oracle data.
Request Body:
Response:
WebSocket API
Connection
Subscription Messages
Subscribe to Price Updates
Subscribe to Account Changes
Message Format
Price Update Message
GraphQL API
Endpoint
Schema Examples
Query Current Prices
Query Historical Data
Subscription for Real-time Updates
Error Handling
Error Response Format
Common Error Codes
INVALID_API_KEY
401
Invalid or missing API key
RATE_LIMIT_EXCEEDED
429
Too many requests
INVALID_SYMBOL
400
Requested symbol not supported
DATA_NOT_AVAILABLE
404
No data available for request
INVALID_PARAMETERS
400
Invalid request parameters
INTERNAL_ERROR
500
Internal server error
SERVICE_UNAVAILABLE
503
Service temporarily unavailable
SDK Examples
JavaScript/TypeScript
Python
Webhooks
Configuration
Register webhook endpoints to receive push notifications for specific events.
Request Body:
Webhook Payload
Last updated
