GET

/api/public/forecast-availability

Check whether Quotient already has a market forecast

Auth x-quotient-api-key or x402

Parameters

NameInTypeDescription
market_keyquerystringPreferred canonical marketKey. Mutually exclusive with market_id and slug; do not also provide venue.
market_idquerystringVenue-native market ID. Mutually exclusive with market_key and slug; venue is required.
slugquerystringMarket slug. Mutually exclusive with market_key and market_id; venue defaults to polymarket.
venuequery"polymarket" | "polymarket_us" | "kalshi" | "limitless"Optional prediction-market venue filter. Omit it on catalog/feed routes to include every covered venue. On legacy slug or condition-ID lookups, omission retains the Polymarket namespace; prefer marketKey for collision-safe cross-venue lookup.

Response fields

FieldTypeMeaning
trackedbooleanWhether the market identity currently resolves to a Quotient Market row.
availablebooleanWhether a committed stored forecast exists. This check is free.
marketCanonicalMarketWithRelationships
questionstring
latestForecastobjectExistence metadata only. Probability and research remain in the paid forecast response.
readobject
generationobject

Billing and limits

Calls are billed to prepaid credits, or per call over x402. The price above is the reference price; the 402 challenge returned at request time is what a call actually costs.

One request may be in flight at a time, and request starts must be at least one second apart. A rejected 429 is not billed. See rate limits.

curl
curl -H "x-quotient-api-key: qt_…" \
  "https://quotient-api-gateway.onrender.com/api/public/forecast-availability"
200 · application/json
{
  "tracked": false,
  "available": false,
  "market": {
    "venue": "polymarket",
    "nativeMarketId": "…",
    "nativeEventId": "…",
    "seriesTicker": "…",
    "marketKey": "…",
    "slug": "…",
    "marketUrl": "…",
    "sourceUrl": "…",
    "relationships": {
      "assets": [
        {}
      ],
      "markets": [
        {}
      ],
      "signals": [
        {}
      ],
      "truncated": {
        "assets": false,
        "markets": false,
        "signals": false
      }
    }
  },
  "question": "…",
  "latestForecast": {
    "id": "…",
    "createdAt": "…",
    "relationships": {
      "assets": [
        {}
      ],
      "markets": [
        {}
      ],
      "signals": [
        {}
      ],
      "truncated": {
        "assets": false,
        "markets": false,
        "signals": false
      }
    }
  },
  "read": {
    "method": "…",
    "endpoint": "…",
    "paid": false
  },
  "generation": {
    "method": "…",
    "endpoint": "…",
    "authentication": "…",
    "idempotencyKeyRequired": false,
    "body": {
      "kind": "…",
      "venue": "polymarket",
      "market_id": "…"
    }
  }
}