The three-step pattern
Trigger
POST /v1/markets/{platform}/{market_id}/analyzeReturns 202 Accepted immediately with an analysis_id and poll_url.Poll
GET /v1/markets/{platform}/{market_id}/analyze/{analysis_id}/statusPoll every 5 seconds until status changes to "complete" or "error".Retrieve
GET /v1/markets/{platform}/{market_id}/analysisReturns the full Analysis object with probability, confidence, edge, recommendation, and optional expansions.Complete example
The Analysis object
| Field | Type | Description |
|---|---|---|
probability | float (0-1) | Rekko’s estimated true probability |
confidence | float (0-1) | Confidence in the estimate |
edge | float | probability - market_price (positive = underpriced YES) |
recommendation | string | "BUY_YES", "BUY_NO", or "NO_TRADE" |
risk_rating | string | "low", "medium", or "high" |
summary | string | Executive summary |
key_factors | string[] | Top probability drivers |
risks | string[] | Ways the analysis could be wrong |
source_count | integer | Number of sources analyzed |
freshness | string | "fresh" (<24h), "stale" (24-72h), "expired" (>72h) |
Caching and freshness
Analyses are cached. Thefreshness field tells you how stale the result is:
| Freshness | Age | Meaning |
|---|---|---|
fresh | < 24 hours | Recent, likely still accurate |
stale | 24-72 hours | May have drifted, consider re-triggering |
expired | > 72 hours | Likely outdated, re-trigger recommended |
?force=true on the trigger endpoint.
Expandable fields
Add?expand=scenarios,causal,meta to the retrieve step for deeper data:
| Expansion | What it adds |
|---|---|
scenarios | Bull/base/bear scenario assessments with probabilities and triggers |
causal | Causal factor decomposition — Rekko’s key differentiator |
meta | Pipeline metadata: what would change our mind, edge assessment, duration |