Free real-time data API. No auth. No API key. No signup. Just fetch.
FREE CORS ENABLED 100K REQUESTS/DAYBase URL: https://terminalfeed.io/api
All responses are JSON. CORS is enabled — call from any domain, any app, any AI agent. Please keep individual endpoint calls to 1 per 30 seconds.
Fetch a world briefing in one call:
fetch('https://terminalfeed.io/api/briefing')
.then(res => res.json())
.then(data => console.log(data));
That's it. No signup, no key, no auth headers.
| Endpoint | Description | Cache |
|---|---|---|
| /api/briefing | One-call world snapshot — crypto, stocks, quakes, news, status | 60s |
| /api/btc-price | Bitcoin price with 24h stats | 30s |
| /api/stocks | Top US stocks — gainers, losers, indices | 15s |
| /api/crypto-movers | Top 15 cryptos by 24h movement | 30s |
| /api/fear-greed | Crypto Fear & Greed Index (0-100) | 5m |
| /api/forex | Currency exchange rates (USD base) | 5m |
| /api/earthquake | Recent global earthquakes M2.5+ | 2m |
| /api/disaster-alerts | GDACS global disaster alerts | 5m |
| /api/hackernews | Trending Hacker News stories | 60s |
| /api/predictions | Polymarket prediction markets | 60s |
| /api/service-status | GitHub, Cloudflare, OpenAI, etc. status | 60s |
| /api/weather | Weather by coordinates (?lat=&lon=) | 10m |
| /api/launches | Upcoming space launches | 10m |
| /api/humans-in-space | People currently in orbit | 1h |
| /api/github-trending | Trending GitHub repositories | 5m |
| /api/cyber-threats | Malware URLs & threat intel | 60s |
| /api/economic-data | Fed rates, CPI, unemployment, treasury yields | 1h |
| /api/steam | Top Steam games by concurrent players | 10m |
| /api/internet-pulse | Global latency — ping times to 6 regions | 60s |
| /api/ai-stats | TerminalFeed API usage statistics | 30s |
The one-call world snapshot. Returns a human-readable summary plus structured data across crypto, stocks, earthquakes, predictions, news, and service status. Best endpoint for AI agents.
Cache: 60 seconds
{
"source": "terminalfeed.io",
"generated_at": "2026-03-15T09:34:42.362Z",
"summary": "BTC at $71,828 (+1.8% 24h). Fear & Greed: 15 (Extreme Fear). 4 recent earthquakes, largest M4.8 near Guatemala. All major services operational.",
"sections": {
"crypto": { ... },
"fear_greed": { ... },
"earthquakes": { ... },
"predictions": [ ... ],
"news": [ ... ],
"services": [ ... ]
}
}
Current Bitcoin price with 24-hour high, low, volume, and percentage change.
Cache: 30 seconds
{
"source": "terminalfeed.io",
"endpoint": "btc-price",
"updated_at": "2026-03-15T09:34:42.362Z",
"data": {
"price_usd": 71828,
"change_24h_percent": 1.765,
"high_24h": 71940.49,
"low_24h": 70389.08,
"volume_24h_usd": 836157337.95
}
}
Top US stocks sorted by daily price movement. Returns biggest gainers, losers, and major indices (SPY, QQQ, DIA).
Cache: 15 seconds
{
"data": {
"gainers": [
{ "symbol": "NVDA", "price": 180.25, "change_percent": 4.32 }
],
"losers": [
{ "symbol": "TSLA", "price": 391.20, "change_percent": -3.15 }
],
"indices": [
{ "symbol": "SPY", "price": 662.29, "change_percent": 0.67 }
]
}
}
Top 15 cryptocurrencies by market cap, sorted by biggest 24-hour price movements. Includes symbol, name, price, and change percentage.
Cache: 30 seconds
Crypto Fear & Greed Index. 0 = Extreme Fear, 100 = Extreme Greed.
Cache: 5 minutes
{
"data": {
"value": 15,
"label": "Extreme Fear"
}
}
Currency exchange rates with USD as base. Covers EUR, GBP, JPY, CAD, AUD, CHF, and more.
Cache: 5 minutes
{
"data": {
"base": "USD",
"date": "2026-03-14",
"rates": {
"EUR": 0.9158,
"GBP": 0.7731,
"JPY": 148.52
}
}
}
Recent global earthquakes magnitude 2.5 and above from USGS. Includes magnitude, location, depth, and time.
Cache: 2 minutes
{
"data": {
"count": 15,
"earthquakes": [
{
"magnitude": 4.8,
"location": "1 km SW of Colotenango, Guatemala",
"time": "2026-03-15T08:12:00.000Z",
"depth_km": 35.2
}
]
}
}
Weather for any coordinates on Earth. Returns temperature (Fahrenheit), weather code, wind speed (mph), and humidity.
lat (required) — latitude
lon (required) — longitude
Cache: 10 minutes per location
Top Polymarket prediction markets with current yes/no probabilities and trading volume in USD.
Cache: 60 seconds
{
"data": [
{
"question": "Will the Fed cut rates in June 2026?",
"yes_percent": 62,
"no_percent": 38,
"volume_usd": 4500000
}
]
}
Trending Hacker News stories with scores, comment counts, and URLs.
Cache: 60 seconds
Operational status of major tech services — GitHub, Cloudflare, Discord, OpenAI, Vercel, npm, Reddit, Atlassian.
Cache: 60 seconds
{
"data": [
{ "name": "GitHub", "status": "operational", "description": "All Systems Operational" },
{ "name": "OpenAI", "status": "minor", "description": "Minor Service Outage" }
]
}
Upcoming space launches with name, provider, status, and scheduled time.
Cache: 10 minutes
Every human currently in orbit — names and spacecraft.
Cache: 1 hour
{
"data": {
"count": 7,
"people": [
{ "name": "Oleg Kononenko", "craft": "ISS" }
]
}
}
Recent malware URLs, indicators of compromise, and threat intelligence from abuse.ch and ThreatFox.
Cache: 60 seconds
Global disaster alerts from GDACS (UN/EU) — cyclones, floods, earthquakes, wildfires, volcanoes.
Cache: 5 minutes
Trending GitHub repositories by recent star activity.
Cache: 5 minutes
US Federal Reserve economic indicators — fed funds rate, CPI inflation, unemployment, 10-year treasury yield, 30-year mortgage rate.
Cache: 1 hour
Top Steam games by current concurrent players with today's peak.
Cache: 10 minutes
Global latency check — ping times to 6 endpoints across US East, US West, Europe, Asia, Cloudflare, and Google. Latency in milliseconds, -1 means the endpoint is unreachable.
Cache: 60 seconds
{
"source": "terminalfeed.io",
"endpoint": "internet-pulse",
"updated_at": "2026-03-15T09:34:42.362Z",
"data": [
{ "name": "US East", "latency_ms": 24 },
{ "name": "US West", "latency_ms": 67 },
{ "name": "Europe", "latency_ms": 112 },
{ "name": "Asia", "latency_ms": 185 },
{ "name": "Cloudflare", "latency_ms": 8 },
{ "name": "Google", "latency_ms": 12 }
]
}
TerminalFeed API usage statistics — total hits, unique AI agents, recent API calls.
Cache: 30 seconds
Every endpoint returns a consistent JSON structure:
{
"source": "terminalfeed.io",
"endpoint": "endpoint-name",
"updated_at": "ISO-8601 timestamp",
"data": { ... }
}
| Field | Description |
|---|---|
| source | Always "terminalfeed.io" for attribution |
| endpoint | Which endpoint was called |
| updated_at | When data was last refreshed from the upstream source |
| data | The actual payload (structure varies per endpoint) |
// Get BTC price
const btc = await fetch('https://terminalfeed.io/api/btc-price').then(r => r.json());
console.log(`Bitcoin: $${btc.data.price_usd}`);
// Get Fear & Greed
const fg = await fetch('https://terminalfeed.io/api/fear-greed').then(r => r.json());
console.log(`Fear & Greed: ${fg.data.value} (${fg.data.label})`);
// Get everything at once
const briefing = await fetch('https://terminalfeed.io/api/briefing').then(r => r.json());
console.log(briefing.summary);
import requests
# Get BTC price
btc = requests.get('https://terminalfeed.io/api/btc-price').json()
print(f"Bitcoin: ${btc['data']['price_usd']:,.2f}")
# Get earthquakes
quakes = requests.get('https://terminalfeed.io/api/earthquake').json()
for q in quakes['data']['earthquakes'][:5]:
print(f"M{q['magnitude']} - {q['location']}")
# Get the full world briefing
briefing = requests.get('https://terminalfeed.io/api/briefing').json()
print(briefing['summary'])
curl https://terminalfeed.io/api/btc-price
curl https://terminalfeed.io/api/briefing
curl "https://terminalfeed.io/api/weather?lat=34.0&lon=-118.2"
import { useState, useEffect } from 'react';
const BtcPrice = () => {
const [price, setPrice] = useState(null);
useEffect(() => {
const fetchPrice = async () => {
const res = await fetch('https://terminalfeed.io/api/btc-price');
const data = await res.json();
setPrice(data.data.price_usd);
};
fetchPrice();
const interval = setInterval(fetchPrice, 30000);
return () => clearInterval(interval);
}, []);
return <div>BTC: ${price?.toLocaleString()}</div>;
};
Discovery file: https://terminalfeed.io/llms.txt
OpenAPI spec: https://terminalfeed.io/openapi.json
Best endpoint for AI: /api/briefing — one call, complete world snapshot with a pre-formatted summary string.
100,000 requests per day across all endpoints. Keep individual endpoint calls to a maximum of 1 request per 30 seconds. If you exceed limits, you'll receive a 429 status code. There is no penalty — just back off and retry.
Data is cached server-side at the intervals listed above. Calling more frequently than the cache interval will return the same data, so there's no benefit to polling faster.
Questions, bugs, or feature requests: hello@terminalfeed.io
Built by Ripper. terminalfeed.io