Massive Data Feed Skill
Massive provides three access methods for market data:
| Method | Best For |
|---|---|
| REST API | On-demand queries — quotes, OHLCV bars, historical records |
| WebSocket API | Real-time streaming — live trades, quotes, minute bars |
| Flat Files | Bulk historical downloads — backtesting, ML datasets |
Setup
First-time only:
bash scripts/setup.sh
Required env vars:
MASSIVE_API_KEY=your_api_key_here
# Only needed for Flat Files:
MASSIVE_S3_ACCESS_KEY=your_s3_access_key
MASSIVE_S3_SECRET_KEY=your_s3_secret_key
Get your API key and S3 credentials at: https://massive.com/dashboard/keys
SDK Initialization (REST)
import os
from massive import Client # massive-python-client
client = Client(api_key=os.environ["MASSIVE_API_KEY"])
Authentication (REST — Alternative: Raw HTTP)
Include your API key either as a query parameter or header:
import requests
API_KEY = os.environ["MASSIVE_API_KEY"]
BASE_URL = "https://api.massive.com/v1"
# Option A: query parameter
resp = requests.get(f"{BASE_URL}/stocks/trades", params={"apiKey": API_KEY, "ticker": "AAPL"})
# Option B: authorization header
resp = requests.get(f"{BASE_URL}/stocks/trades",
headers={"Authorization": f"Bearer {API_KEY}"},
params={"ticker": "AAPL"})
Reference Files — Read the relevant one before proceeding
| Task | Read |
|---|---|
| Stock quotes, trades, OHLCV bars, fundamentals | references/stocks.md |
| Options chains, Greeks, trades, quotes | references/options.md |
| Futures prices and historical bars | references/futures.md |
| Crypto prices, trades, OHLCV | references/crypto.md |
| Real-time streaming via WebSocket | references/websocket.md |
| Bulk historical CSV downloads | references/flat-files.md |
Response Format
All REST endpoints return JSON with a consistent structure:
{
"status": "OK",
"count": 10,
"request_id": "abc123",
"results": [ ... ]
}
Always check status == "OK" before using results.
Important Constraints
- 15-minute delayed data is available on free plans. Real-time requires a paid plan.
- Rate limits apply on free plans (5 requests/minute REST). Paid plans have higher limits.
- WebSocket: one concurrent connection per asset class by default. Contact support for more.
- Flat Files data for each trading day is available by ~11:00 AM ET the following day.
- Massive does not execute trades — pair this skill with the
snaptrade-tradingskill for execution.