{"schema":"bittuitive-l402-manifest/1","name":"BitTuitive","description":"BitTuitive: One Lightning payment, any verified data API, routed to the highest-rated source with automatic fallback. Reliable data for AI agents, paid per call over Lightning (L402): the router buys any scoreboard-verified L402 data API for you (crypto, stocks, weather, traffic and more) with one payment, ranked by quality score and latency; plus BitTuitive's own data feeds (Bitcoin: price, on-chain, fees, Lightning, mining and market signals) and a free quality scoreboard of paid agent APIs. Pay per call (one payment = one fresh response) or buy a 30-day subscription. No API keys, no accounts, no KYC. Free status checks before paying. US stock fundamentals and filings from SEC EDGAR (stock_fundamentals 25 sats, stock_filings 10 sats; cite the SEC, no endorsement). Stock prices are routed only through vetted L402 APIs with a disclosed redistributable source; first-party FMP quotes stay off until licensed.","version":"0.2.5","base_url":"https://api.bittuitive.ai","protocol":"L402","payment":{"network":"bitcoin-lightning","currency":"sats","challenge_header":"WWW-Authenticate","challenge_format":"L402 macaroon=\"<base64 macaroon>\", invoice=\"<bolt11>\"","authorization_format":"Authorization: L402 <base64 macaroon>:<preimage_hex>","macaroon":{"format":"libmacaroons V2 binary, standard base64","identifier":"uint16 version (0) || payment_hash (32 bytes) || token_id (32 bytes)","caveats":["services=bittuitive:0","bittuitive_capabilities=<endpoint>"]},"invalid_credential_status":402,"spec":"https://github.com/lightninglabs/L402","steps":["Request a paid endpoint without credentials; the server answers HTTP 402.","Read the WWW-Authenticate header: L402 macaroon=\"<base64 macaroon>\", invoice=\"<bolt11>\" (a legacy LSAT challenge follows it; macaroon and invoice are also in the JSON body, invoice in X-Invoice).","Pay the BOLT11 invoice with any Lightning wallet (it expires after 8 minutes); keep the 32-byte preimage (64 hex chars). Alby, Phoenix and Zeus show the preimage after it settles.","Retry the same request with header Authorization: L402 <base64 macaroon>:<preimage_hex> (LSAT prefix also accepted) within 10 minutes of the 402. Each payment buys exactly one successful data response; the next call needs a new payment (or a subscription).","Or pay and retry in one step with Lightning Labs lnget: `lnget https://api.bittuitive.ai/api/v1/data/btc_price`. The aperture L402 client works the same way.","To pay with NWC (Alby SDK): `const { preimage } = await nwc.sendPayment(invoice)` then retry with Authorization: L402 <macaroon>:<preimage>."]},"endpoints":[{"name":"btc_price","url":"https://api.bittuitive.ai/api/v1/data/btc_price","path":"/api/v1/data/btc_price","method":"GET","price":{"amount":10,"currency":"sats","model":"per-request","single_use":true,"credential_valid_seconds":600},"subscription_plans":["basic","pro"],"description":"Bitcoin price only (USD/EUR). Lightweight, fast.","category":"crypto","content_type":"application/json","free_status_check":"https://api.bittuitive.ai/api/v1/status/btc_price","response":{"status":"success","endpoint":"string","data":{"price_usd":"number","price_eur":"number|null","change_24h_percent":"number|null","cross_check":{"sources_compared":"integer","max_deviation_percent":"number|null","consistent":"boolean|null"},"stale":"boolean","timestamp":"string (ISO 8601)"},"metadata":{"category":"string","source":"string","timestamp":"string","agent_id":"string|null","cost_sats":"integer","cache":{"served_from_cache":"boolean","served_as_stale":"boolean","stale_age_seconds":"number"},"sources":["string (upstream data sources used)"]},"attribution":{"text":"string|null (credit line required by the sources)","sources":[{"name":"string","url":"string","notice":"string","required":"boolean"}],"page":"https://api.bittuitive.ai/attributions"}}},{"name":"btc_oracle","url":"https://api.bittuitive.ai/api/v1/data/btc_oracle","path":"/api/v1/data/btc_oracle","method":"GET","price":{"amount":50,"currency":"sats","model":"per-request","single_use":true,"credential_valid_seconds":600},"subscription_plans":["basic","pro"],"description":"Full BTC Oracle: Price, Hash Rate, Mempool, Difficulty, Fees, Block Height.","category":"crypto","content_type":"application/json","free_status_check":"https://api.bittuitive.ai/api/v1/status/btc_oracle","response":{"status":"success","endpoint":"string","data":{"market":{"price_usd":"number","price_eur":"number|null","change_24h_percent":"number|null","cross_check":{"sources_compared":"integer","max_deviation_percent":"number|null","consistent":"boolean|null"},"stale":"boolean"},"on_chain":{"hash_rate_eh":"number","mempool_size_tx":"integer","difficulty":"number","block_height":"integer"},"fees":{"avg_fee_sat_vbyte":"integer","fast_fee_sat_vbyte":"integer","slow_fee_sat_vbyte":"integer"},"metadata":{"timestamp":"string","fallback_used":"boolean","cached":"boolean"}},"metadata":{"category":"string","source":"string","timestamp":"string","agent_id":"string|null","cost_sats":"integer","cache":{"served_from_cache":"boolean","served_as_stale":"boolean","stale_age_seconds":"number"},"sources":["string (upstream data sources used)"]},"attribution":{"text":"string|null (credit line required by the sources)","sources":[{"name":"string","url":"string","notice":"string","required":"boolean"}],"page":"https://api.bittuitive.ai/attributions"}}},{"name":"btc_pro","url":"https://api.bittuitive.ai/api/v1/data/btc_pro","path":"/api/v1/data/btc_pro","method":"GET","price":{"amount":100,"currency":"sats","model":"per-request","single_use":true,"credential_valid_seconds":600},"subscription_plans":["pro"],"description":"Pro Tier: All Oracle data + Lightning Network + Mining Revenue.","category":"crypto","content_type":"application/json","free_status_check":"https://api.bittuitive.ai/api/v1/status/btc_pro","response":{"status":"success","endpoint":"string","data":{"market":{"price_usd":"number","price_eur":"number|null","change_24h_percent":"number|null","cross_check":{"sources_compared":"integer","max_deviation_percent":"number|null","consistent":"boolean|null"},"stale":"boolean"},"on_chain":{"hash_rate_eh":"number","mempool_size_tx":"integer","difficulty":"number","block_height":"integer"},"fees":{"avg_fee_sat_vbyte":"integer","fast_fee_sat_vbyte":"integer","slow_fee_sat_vbyte":"integer"},"lightning":{"capacity_btc":"number","channel_count":"integer","node_count":"integer","avg_channel_size_btc":"number"},"mining":{"daily_subsidy_btc":"number","daily_fees_btc":"number","daily_revenue_btc":"number","daily_revenue_usd":"number"},"metadata":{"timestamp":"string","fallback_used":"boolean","cached":"boolean"}},"metadata":{"category":"string","source":"string","timestamp":"string","agent_id":"string|null","cost_sats":"integer","cache":{"served_from_cache":"boolean","served_as_stale":"boolean","stale_age_seconds":"number"},"sources":["string (upstream data sources used)"]},"attribution":{"text":"string|null (credit line required by the sources)","sources":[{"name":"string","url":"string","notice":"string","required":"boolean"}],"page":"https://api.bittuitive.ai/attributions"}}},{"name":"btc_signals","url":"https://api.bittuitive.ai/api/v1/data/btc_signals","path":"/api/v1/data/btc_signals","method":"GET","price":{"amount":200,"currency":"sats","model":"per-request","single_use":true,"credential_valid_seconds":600},"subscription_plans":["pro"],"description":"Signals tier: Fear & Greed, BTC/gold ratio, % from ATH, momentum score, volatility regime, 24 h transaction count. BTC dominance, NVT and active addresses return null (no source with a commercial licence).","category":"crypto","content_type":"application/json","free_status_check":"https://api.bittuitive.ai/api/v1/status/btc_signals","response":{"status":"success","endpoint":"string","data":{"sentiment":{"fear_greed_index":"integer (0-100)","fear_greed_classification":"string","attribution":{"notice":"string","url":"string"}},"market":{"btc_price_usd":"number","btc_dominance_percent":"number|null","gold_ratio":{"gold_price_usd":"number","btc_gold_ratio":"number","gold_source":"string"},"attribution":{"notice":"string","url":"string"}},"network_activity":{"active_addresses_24h":"integer|null","active_addresses_7d_avg":"integer|null","transactions_24h":"integer|null","transactions_24h_blocks":"integer|null"},"valuation":{"ath_usd":"number|null","ath_date":"string|null","percent_from_ath":"number|null","nvt_ratio":"number|null","nvt_basis":"string|null"},"technicals":{"momentum_score":"integer (0-100)","momentum":{"score":"integer","label":"string","return_7d_percent":"number","return_30d_percent":"number","price_vs_sma20_percent":"number"},"volatility_regime":"string","volatility":{"regime":"string","realized_vol_30d_annualized_percent":"number"}},"metadata":{"timestamp":"string","cached":"boolean","signals_available":"string"}},"metadata":{"category":"string","source":"string","timestamp":"string","agent_id":"string|null","cost_sats":"integer","cache":{"served_from_cache":"boolean","served_as_stale":"boolean","stale_age_seconds":"number"},"sources":["string (upstream data sources used)"]},"attribution":{"text":"string|null (credit line required by the sources)","sources":[{"name":"string","url":"string","notice":"string","required":"boolean"}],"page":"https://api.bittuitive.ai/attributions"}}},{"name":"stock_fundamentals","url":"https://api.bittuitive.ai/api/v1/data/stock_fundamentals","path":"/api/v1/data/stock_fundamentals","parameters":[{"name":"symbol","in":"query","required":true,"enum":null}],"example":"https://api.bittuitive.ai/api/v1/data/stock_fundamentals?symbol=NVDA","method":"GET","price":{"amount":25,"currency":"sats","model":"per-request","single_use":true,"credential_valid_seconds":600},"subscription_plans":["pro"],"description":"SEC EDGAR company facts for one ticker (?symbol=NVDA): revenue, net income, EPS, shares outstanding, cash and debt as reported, plus the ticker-to-CIK map. Any ticker in the SEC company_tickers.json file is accepted. Cached 12-24 hours. Source: U.S. Securities and Exchange Commission (EDGAR).","category":"stocks","content_type":"application/json","free_status_check":"https://api.bittuitive.ai/api/v1/status/stock_fundamentals","response":{"status":"success","endpoint":"string","data":{"company":{"ticker":"string","cik":"string","name":"string","entity_name":"string","companyfacts_url":"string","submissions_url":"string","sec_company_url":"string"},"metrics":{"revenue":"object|null","net_income":"object|null","eps":"object|null","shares_outstanding":"object|null","cash":"object|null","debt":"object|null"},"attribution":"string","disclaimer":"string"},"metadata":{"category":"string","source":"string","timestamp":"string","agent_id":"string|null","cost_sats":"integer","cache":{"served_from_cache":"boolean","served_as_stale":"boolean","stale_age_seconds":"number"},"sources":["string (upstream data sources used)"]},"attribution":{"text":"string|null (credit line required by the sources)","sources":[{"name":"string","url":"string","notice":"string","required":"boolean"}],"page":"https://api.bittuitive.ai/attributions"}}},{"name":"stock_filings","url":"https://api.bittuitive.ai/api/v1/data/stock_filings","path":"/api/v1/data/stock_filings","parameters":[{"name":"symbol","in":"query","required":true,"enum":null}],"example":"https://api.bittuitive.ai/api/v1/data/stock_filings?symbol=NVDA","method":"GET","price":{"amount":10,"currency":"sats","model":"per-request","single_use":true,"credential_valid_seconds":600},"subscription_plans":["pro"],"description":"Latest SEC EDGAR filings (10-K, 10-Q, 8-K, with amendments and document links) for one ticker (?symbol=NVDA). Any ticker in the SEC company_tickers.json file is accepted. Cached 15-60 minutes. Source: U.S. Securities and Exchange Commission (EDGAR).","category":"stocks","content_type":"application/json","free_status_check":"https://api.bittuitive.ai/api/v1/status/stock_filings","response":{"status":"success","endpoint":"string","data":{"company":{"ticker":"string","cik":"string","name":"string","entity_name":"string","exchanges":["string"],"sic":"string","sic_description":"string","companyfacts_url":"string","submissions_url":"string","sec_company_url":"string"},"filings":[{"form":"string","filed":"string","report_date":"string","accession":"string","primary_document":"string","description":"string","document_url":"string","index_url":"string"}],"forms":["string"],"count":"integer","attribution":"string","disclaimer":"string"},"metadata":{"category":"string","source":"string","timestamp":"string","agent_id":"string|null","cost_sats":"integer","cache":{"served_from_cache":"boolean","served_as_stale":"boolean","stale_age_seconds":"number"},"sources":["string (upstream data sources used)"]},"attribution":{"text":"string|null (credit line required by the sources)","sources":[{"name":"string","url":"string","notice":"string","required":"boolean"}],"page":"https://api.bittuitive.ai/attributions"}}}],"pricing_model":{"pay_per_call":{"single_use":true,"credential_valid_seconds":600,"invoice_expiry_seconds":480,"description":"One payment = one successful data response, redeemable within 10 minutes of the 402. Reuse returns 402 (error credential_already_used) with a fresh challenge. Failed upstream fetches do not consume the credential."},"subscription":{"description":"Lightning has no recurring billing: GET /api/v1/subscribe/{plan} returns an L402 challenge; one payment buys a credential valid on the plan's endpoints for N days from payment with a daily call quota (429 + Retry-After when used up; 402 with a renew link when expired; 403 for endpoints outside the plan).","status_url":"https://api.bittuitive.ai/api/v1/subscription/status","plans_url":"https://api.bittuitive.ai/api/v1/subscriptions","sold_out_status":503},"limits":{"invoice_challenges_per_ip_per_minute":60,"rate_limited_status":429,"data_cache_seconds":{"btc_price":60,"btc_oracle":60,"btc_pro":300,"btc_signals":300,"stock_fundamentals":43200,"stock_filings":1800}}},"subscriptions":[{"plan":"basic","price":{"amount":5000,"currency":"sats","model":"subscription"},"days":30,"daily_quota":100,"quota_reset":"00:00 UTC","max_active_subscriptions":10,"endpoints":["btc_price","btc_oracle"],"description":"btc_price + btc_oracle, 100 calls/day for 30 days","subscribe_url":"https://api.bittuitive.ai/api/v1/subscribe/basic"},{"plan":"pro","price":{"amount":25000,"currency":"sats","model":"subscription"},"days":30,"daily_quota":250,"quota_reset":"00:00 UTC","max_active_subscriptions":10,"endpoints":["btc_price","btc_oracle","btc_pro","btc_signals","stock_fundamentals","stock_filings"],"description":"All Bitcoin tiers + stock_fundamentals and stock_filings (SEC EDGAR), 250 calls/day for 30 days","subscribe_url":"https://api.bittuitive.ai/api/v1/subscribe/pro"}],"router":{"headline":"One Lightning payment, any verified data API, routed to the highest-rated source with automatic fallback.","description":"Pay BitTuitive once; it pays the highest-rated scoreboard-verified L402 data API for you and returns the data, falling back to the next-best automatically.","ranking":"rank = 0.8 x scoreboard score + 0.2 x latency score (from probe p50 latency)","excluded":"generic URL fetchers, scrapers and LLM / chat-completion endpoints","timeout":{"answer_within_seconds":75,"still_running":"HTTP 202: repeat the same request with the same Authorization to collect the result (never charged twice)","async":"send 'Prefer: respond-async' to get the 202 at once and poll"},"routes":[{"path":"/api/v1/route/{endpoint_id}","method":"GET"},{"path":"/api/v1/route","method":"GET","query":["data_type","q"]}],"price":{"model":"upstream_price_plus_fee","fee_pct":25.0,"fee_min_sats":5,"currency":"sats","single_use":true},"caps":{"max_upstream_sats_per_call":200},"routable_endpoints":"https://api.bittuitive.ai/api/v1/route/endpoints","status":"https://api.bittuitive.ai/api/v1/route/status","failure":"retry once, then next-best endpoint of the same data type; else HTTP 502 with a 24 h credit token (Authorization: Credit <token>)"},"preview_endpoints":[{"path":"/api/v1/discover","method":"POST","price":{"amount":500,"currency":"sats"},"description":"Endpoint discovery (preview; currently returns the endpoint list). Single use."}],"free_routes":[{"method":"GET","path":"/","description":"Landing page (HTML) / service summary (JSON)"},{"method":"GET","path":"/api/v1/endpoints","description":"List paid endpoints, prices and pricing model (JSON)"},{"method":"GET","path":"/api/v1/subscriptions","description":"Subscription plans (price, days, daily quota, covered endpoints)"},{"method":"GET","path":"/api/v1/subscription/status","description":"With your L402 Authorization header: plan, expiry, calls used/remaining today (free, never consumes a call)"},{"method":"GET","path":"/api/v1/status/{endpoint}","description":"Free pre-flight check: availability, freshness, coverage"},{"method":"GET","path":"/api/v1/cache/stats","description":"Cache statistics"},{"method":"GET","path":"/scoreboard","description":"Free quality scoreboard of paid agent APIs, grouped by data type (HTML; ?type=bitcoin|crypto|stocks|weather|traffic|other)"},{"method":"GET","path":"/api/v1/scoreboard","description":"Scoreboard JSON (filters: data_type, protocol, category, segment, min_score, q, sort)"},{"method":"GET","path":"/.well-known/agent-card.json","description":"A2A agent card (skills, L402 security scheme)"},{"method":"GET","path":"/.well-known/x402","description":"x402 notice: L402 only for now (points to /.well-known/l402.json)"},{"method":"POST","path":"/mcp","description":"Remote MCP server (Streamable HTTP): scoreboard tools free; paid tools return isError=true with an L402 invoice"},{"method":"GET","path":"/mcp","description":"How to call the MCP server (JSON); SSE info event if Accept: text/event-stream"},{"method":"GET","path":"/mcp/server-card","description":"MCP server card (SEP-2127); domain catalog at /.well-known/ai-catalog.json"},{"method":"GET","path":"/health","description":"Liveness: {status: ok} (also at /api/v1/health)"},{"method":"GET","path":"/.well-known/security.txt","description":"Security contact (hello@bittuitive.ai)"},{"method":"GET","path":"/api/v1/health/upstreams","description":"Usage of BitTuitive's free upstream data sources vs. their published limits (aggregates)"},{"method":"GET","path":"/api/v1/stats/paid","description":"Paid-usage totals: paid calls, sats, by tier, active subscriptions, last 20 payments (aggregates only)"},{"method":"GET","path":"/api/v1/insights/demand","description":"What agents ask for (7/30-day aggregates) and paid-API directory growth by category"},{"method":"GET","path":"/api/v1/scoreboard/categories","description":"Scoreboard data types (bitcoin, crypto, stocks, weather, traffic, other) with counts and top endpoints"},{"method":"GET","path":"/api/v1/scoreboard/{id}","description":"One service's score and probe history"},{"method":"GET","path":"/api/v1/scoreboard/methodology","description":"How scores are computed"},{"method":"GET","path":"/api/v1/route/endpoints","description":"Router: every scoreboard-verified L402 API BitTuitive can call for you, with all-in prices"},{"method":"GET","path":"/api/v1/route/status","description":"Router: on/off, caps, today's upstream budget use"},{"method":"GET","path":"/attributions","description":"Data sources, the attribution each one asks for, and their terms (HTML; JSON at /attributions.json)"},{"method":"GET","path":"/openapi.json","description":"OpenAPI 3 spec"},{"method":"GET","path":"/docs","description":"Interactive API docs"},{"method":"GET","path":"/llms.txt","description":"LLM-oriented summary"},{"method":"GET","path":"/.well-known/l402.json","description":"Service manifest"},{"method":"GET","path":"/.well-known/l402-services","description":"L402 capability manifest (ngx_l402 / 402index format)"}],"links":{"docs":"https://api.bittuitive.ai/docs","openapi":"https://api.bittuitive.ai/openapi.json","llms_txt":"https://api.bittuitive.ai/llms.txt","scoreboard":"https://api.bittuitive.ai/scoreboard","scoreboard_categories":"https://api.bittuitive.ai/api/v1/scoreboard/categories","agent_card":"https://api.bittuitive.ai/.well-known/agent-card.json","x402":"https://api.bittuitive.ai/.well-known/x402","mcp":"https://api.bittuitive.ai/mcp","mcp_server_card":"https://api.bittuitive.ai/mcp/server-card","ai_catalog":"https://api.bittuitive.ai/.well-known/ai-catalog.json","icon":"https://api.bittuitive.ai/icon-512.png","homepage":"https://api.bittuitive.ai/","satring":"https://satring.com/services/bittuitive","attributions":"https://api.bittuitive.ai/attributions"},"contact":{"url":"https://api.bittuitive.ai/"},"updated":"2026-11-15T17:47:01Z"}