Latest Sealed BTC Forecast
Latest Sealed BTC Forecast. Latest sealed five-minute LUMI, TENNA, and consensus forecast from TENNA Observatory, including English commentary, recent accuracy, and eligible live edge-node consensus. Reuses existing app.tenna.ai output with no extra AI call. Eligible external wallets may receive one zero-budget preview per UTC day; 0.01 USDC is the fallback rate because ACP cannot list a zero price. Experimental forecast with no demonstrated edge.
Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.
Endpoint
POST https://app.tenna.ai/api/x402/tenna/tenna_observatory_round_preview
| Category | Market data |
|---|---|
| Provider host | app.tenna.ai |
| Networks | eip155:8453 |
| Payment schemes | exact |
| Self-reported calls, 30 days | 1 from 1 payers (the provider's figure, not ours) |
Our checks, last 30 days
| Day | Result | HTTP | Asked | Time |
|---|---|---|---|---|
| 2026-09-24 | valid payment request | 402 | $0.01 | 152 ms |
Example input (from the provider)
{
"body": {
"offering": "observatory_round_preview"
},
"bodyType": "json",
"method": "POST",
"type": "http"
}
Promised output schema (from the provider)
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"body": {
"additionalProperties": false,
"description": "No inputs; returns the latest already-sealed Observatory round.",
"properties": {
"offering": {
"const": "observatory_round_preview",
"description": "Offering identifier. Must be exactly 'observatory_round_preview'.",
"type": "string"
}
},
"required": [
"offering"
],
"type": "object"
},
"bodyType": {
"enum": [
"json"
],
"type": "string"
},
"method": {
"enum": [
"POST"
],
"type": "string"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method",
"bodyType",
"body"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"additionalProperties": true,
"properties": {
"access": {
"description": "Actual contract budget and campaign mode added by the listener.",
"type": "object"
},
"accessPolicy": {
"description": "Free-preview quota and fallback-price policy.",
"type": "object"
},
"additionalAiCalls": {
"description": "Additional AI calls caused by this job.",
"type": "integer"
},
"agentTimeframeContext": {
"description": "Separates the round settlement horizon from heterogeneous upstream per-agent timeframe labels and groups the affected rows.",
"type": "object"
},
"agents": {
"description": "Sanitized sealed-round forecast rows. Each row declares its sealed source scope; raw-to-calibrated comments carry machine-readable calibration boundaries without inventing an upstream rule. pipelineStage and decisionScope distinguish raw/components from consensus/final rows.",
"items": {
"type": "object"
},
"type": "array"
},
"appUrl": {
"description": "English Observatory product page.",
"type": "string"
},
"availabilitySummary": {
"description": "Headline availability for the sealed forecast and live edge, including the live-edge reason and directional relationship so partial or divergent delivery is visible before the detailed edge block.",
"type": "object"
},
"contentBoundaryEn": {
"description": "States that directional agent prose is experimental forecast description rather than advice or instruction.",
"type": "string"
},
"dataState": {
"description": "COMPLETE when the sealed forecast and live edge are both available and not directionally divergent; COMPLETE_WITH_DIVERGENT_SIGNALS when both are available but point in different directions; COMPLETE_WITHOUT_LIVE_EDGE when the sealed forecast is complete but the delivery-time live edge is unavailable; otherwise UNAVAILABLE.",
"type": "string"
},
"edge": {
"description": "Live local edge consensus or explicit unavailable reason, including the upstream source generation time, round, sequence, and each delivery-time node's relationship to the matching sealed EDGE_NN component at prediction cutoff.",
"type": "object"
},
"lastCompletedRound": {
"description": "Most recent settlement summary.",
"type": [
"object",
"null"
]
},
"limitations": {
"description": "Coverage limits and missing data, always disclosed.",
"items": {
"type": "string"
},
"type": "array"
},
"offering": {
"const": "observatory_round_preview",
"description": "Offering that produced this result.",
"type": "string"
},
"pipelineDecisionContext": {
"description": "Separates EDGE_RAW, calibrated EDGE components, PRE_STACK, coordination, and FINAL_CALIBRATED directions without inventing an upstream weighting rule. Carries `doNotReconcile`, a machine-readable list of field pairs that describe different populations or times and must not be cross-tallied; a difference between such a pair is expected and is not an arithmetic error.",
"type": "object"
},
"provenance": {
"description": "Reproducibility metadata so another agent can audit this.",
"properties": {
"auditedDeliverableHash": {
"description": "Explicit alias for resultHash on deliverable-audit results; hashes the buyer-supplied input, not the audit envelope.",
"type": [
"string",
"null"
]
},
"generatedAt": {
"description": "Unix seconds.",
"type": "integer"
},
"ledgerLaunchCount": {
"description": "Launches in the ledger. Null when the offering is not derived from the launch ledger \u2014 this means not applicable, not collection failure.",
"type": [
"integer",
"null"
]
},
"ledgerSpanHours": {
"description": "Hours of history covered. Null when t