Nine composed real-time endpoints. Paid per call in USDC, settled in seconds on Base. One bearer token works here and on TensorFeed.
CANONICAL FOR AGENTS USDC ON BASE HTTP BEARER AUTHIf you are building an AI agent, an autonomous trading bot, a research tool, or any application that needs real-time multi-source data, this page is your shortcut. Nine endpoints behind /api/pro/* compose 4 to 14 upstream sources each into a single bearer-authenticated HTTP call. Pay per call in USDC on Base mainnet. No subscription. No KYC. No human in the loop.
| If you DIY | What we absorb for you |
|---|---|
| Sign up for 5 to 15 separate API keys (Finnhub, FRED, Etherscan, Frankfurter, Binance, mempool.space, Polygon, etc.) | One bearer token. We hold the upstream keys. You authenticate once. |
| Pay paid-tier prices on the data sources that gate behind keys (Finnhub, Etherscan) | Absorbed in the per-call price. $0.02 to $0.06 per composed payload. |
| Manage 5 to 15 separate rate-limit pools and back off when any one trips | One rate limit, one set of failure modes. We handle backoff client-side to upstreams. |
| Get a 5xx mid-decision when an upstream is degraded | Stale-cache-on-failure means you always get a 200 with usable data. Never break an agent reasoning chain. |
| Manage Stripe / credit card / KYC for your bot's API access | USDC on Base. The bot pays. No human in the loop. |
| Reconcile schemas across 15 different upstream response shapes | One schema per endpoint. Documented in /openapi.json with type unions. |
| Endpoint | Cost | Composes |
|---|---|---|
| /api/pro/briefing | 1 cr / $0.02 | BTC + Fear & Greed + earthquakes + HN + Polymarket + ISS |
| /api/pro/macro | 2 cr / $0.04 | FRED (5 series) + forex (4 USD pairs) + commodities + indices + VIX |
| /api/pro/crypto-deep | 2 cr / $0.04 | top 50 coins + Binance top 20 + mempool.space + Etherscan gas |
| /api/pro/agent-context | 2 cr / $0.04 | 13 sources + paste-ready ~350-token system_prompt for LLM context |
| /api/pro/sentiment | 2 cr / $0.04 | F&G + VIX + trending tickers (HN/Reddit/news) + Polymarket signals |
| /api/pro/world-deltas | 2 cr / $0.04 | time-sorted event stream: quakes + HN + Polymarket + launches |
| /api/pro/correlation-matrix | 2 cr / $0.04 | 30-day Pearson correlations across 10 assets |
| /api/pro/whales | 2 cr / $0.04 | BTC mempool >=10 BTC + ETH last 3 blocks >=100 ETH |
| /api/pro/exchange-flows | 2 cr / $0.04 | ETH net inflow/outflow against 7 CEX hot wallets |
Full schemas, request parameters, response shapes, and 402 reason codes documented in /openapi.json (OpenAPI 3.1.0). Pre-baked OpenAI and Anthropic function-calling tool definitions at /api/llm-tools (free).
# 1. Buy credits
curl -X POST https://terminalfeed.io/api/payment/buy-credits \
-H "Content-Type: application/json" \
-d '{"amount_usd": 1.00}'
# 2. Send USDC on Base mainnet to the returned wallet, with the returned memo
# 3. Confirm the payment
curl -X POST https://terminalfeed.io/api/payment/confirm \
-H "Content-Type: application/json" \
-d '{"tx_hash": "0xabc...", "nonce": "tf-..."}'
# 4. Call any premium endpoint
curl https://terminalfeed.io/api/pro/macro \
-H "Authorization: Bearer tf_live_<64-char-hex>"
import requests
quote = requests.post(
"https://terminalfeed.io/api/payment/buy-credits",
json={"amount_usd": 1.00},
).json()
# Send USDC on Base to quote["wallet"] with memo quote["memo"]
confirmed = requests.post(
"https://terminalfeed.io/api/payment/confirm",
json={"tx_hash": "0xabc...", "nonce": quote["memo"]},
).json()
TOKEN = confirmed["token"]
macro = requests.get(
"https://terminalfeed.io/api/pro/macro",
headers={"Authorization": f"Bearer {TOKEN}"},
).json()
print(macro["economic"]["fed_rate"], macro["markets"]["vix"])
const quote = await fetch("https://terminalfeed.io/api/payment/buy-credits", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ amount_usd: 1.00 }),
}).then(r => r.json());
// Send USDC on Base to quote.wallet with memo quote.memo
const { token } = await fetch("https://terminalfeed.io/api/payment/confirm", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ tx_hash: "0xabc...", nonce: quote.memo }),
}).then(r => r.json());
const macro = await fetch("https://terminalfeed.io/api/pro/macro", {
headers: { Authorization: `Bearer ${token}` },
}).then(r => r.json());
Tokens minted on terminalfeed.io work on tensorfeed.ai and vice versa. Buy 50 credits once, spend them across both real-time data (TerminalFeed) and AI model intelligence (TensorFeed). Same wallet (0x549c82e6bfc54bdae9a2073744cbc2af5d1fc6d1), same chain (Base mainnet), shared credit pool.
Mainnet validation: tx hash 0x6aa3...614c on Base, $1 USDC sent, 50 credits minted, /api/pro/macro called successfully on first try.