Skip to main content

Base URL

https://api.rekko.ai/v1

Authentication

All endpoints require a Bearer token. See Authentication for details.
Authorization: Bearer rk_free_your_key_here

Endpoint tiers

Each endpoint requires a minimum subscription tier.
TierEndpointsPer-call cost
LISTINGMarkets, prices, history$0.01
INSIGHTAnalysis, screening, resolution$0.10
STRATEGYSignals, execution, portfolio$2.00
DEEPArbitrage, correlation, webhooks, streaming$5.00

Request format

  • All request bodies are JSON (Content-Type: application/json)
  • Query parameters use standard URL encoding
  • Market identifiers follow the pattern: {platform}/{market_id} where platform is kalshi, polymarket, or robinhood

Response format

All responses are JSON. Successful responses return 200 OK or 202 Accepted (for async operations).

Error responses

StatusMeaning
400Bad request — invalid parameters
401Unauthorized — missing or invalid API key
403Forbidden — tier too low for this endpoint
404Not found — market or resource doesn’t exist
429Too many requests — rate limit or quota exceeded
502Bad gateway — upstream platform unavailable
Error body:
{
  "detail": "Human-readable error message"
}

Async analysis pattern

Analysis endpoints use an async pattern because research pipelines run 30-90 seconds:
  1. Trigger: POST /v1/markets/{platform}/{market_id}/analyze returns 202 with analysis_id
  2. Poll: GET .../analyze/{analysis_id}/status until status is "complete"
  3. Retrieve: GET /v1/markets/{platform}/{market_id}/analysis for the full result

Expandable fields

Many endpoints support ?expand= to include additional nested data:
ExpansionAvailable onDescription
causalAnalysis, signalsCausal factor decomposition
scenariosAnalysisOutcome scenario breakdown
metaAnalysisMethodology metadata
historyAnalysis, marketsPrice history
scoringArbitrageSpread quality scoring breakdown