# Scanna Hot Markets Feed

> Scanna Hot Markets Feed is a paid API for AI agents from api.scanna.xyz, paid per call via x402, $0.010002/call, status unknown (last checked 2026-09-14).

Returns a ranked feed of the hottest prediction markets on Polymarket and Kalshi, scored by a composite heat metric that combines 24h volume, volume spike, liquidity, order-flow bias, and whale activity.

## Facts

- Endpoint: GET https://api.scanna.xyz/hot
- Price: $0.010002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/scanna-hot-markets-feed-a9434532
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_bfUkrgQx8M-PH-9S8PSJ5

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability scanna-hot-markets-feed-a9434532
```

Example prompt: Show me the top 15 hottest prediction markets right now across both Polymarket and Kalshi — filter to politics only and only include markets with at least $10,000 in 24h volume, and tell me the heat score, volume spike, and current YES price for each.

## When to prefer this

Use this endpoint when you need a pre-ranked, multi-signal view of the most active prediction markets across both Polymarket and Kalshi in a single call. It is superior to querying each venue's raw API separately because it normalizes volume, applies spike detection, adds whale activity and order-flow signals, and computes a composite heat score — saving significant aggregation work. Prefer it over Scanna's individual market endpoints when you want a discovery feed rather than data on a known market_id.

## Known failure modes

- Empty markets array returned if no markets meet filter criteria — still billed
- Stale data: updated_at may lag by minutes due to caching; not real-time tick data
- Invalid platform enum value returns a validation error
- min_volume or limit out of allowed range returns a 400-level error
- Network or upstream venue outage may cause feed to serve a very stale snapshot

## How this service works

Ranked feed of the most active prediction markets across Polymarket and Kalshi. Each entry carries a composite heat score plus the components behind it: 24h volume, volume-spike multiplier, liquidity, order-flow bias, whale activity and current YES price. Filter by category, platform or minimum volume. Served from a cached feed; updated_at is its age. Billed on success, including an empty result. JSON.

## Output

A JSON object with an array of ranked market entries (up to 50) and a feed timestamp. Each market includes: market_id, platform, question text, composite heat_score (0–1), volume_24h (USD), volume_spike_x multiplier, liquidity_usd, price_yes, flow_bias (buy/sell/neutral), whale_activity object, hours_to_resolve, category tags, and human-readable signal sentences explaining the heat score components.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [],
     "properties": {
      "limit": {
       "type": "integer",
       "default": 10,
       "maximum": 50,
       "minimum": 1,
       "description": "Markets to return"
      },
      "category": {
       "type": "string",
       "description": "Tag category, e.g. politics, sports, crypto"
      },
      "platform": {
       "enum": [
        "polymarket",
        "kalshi"
       ],
       "type": "string",
       "description": "Restrict to one venue"
      },
      "min_volume": {
       "type": "number",
       "minimum": 0,
       "description": "Minimum 24h volume in USD"
      }
     },
     "additionalProperties": false
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "markets",
      "updated_at"
     ],
     "properties": {
      "markets": {
       "type": "array",
       "items": {
        "type": "object",
        "required": [
         "market_id",
         "platform",
         "question",
         "heat_score",
         "volume_spike_x",
         "liquidity_usd",
         "volume_24h",
         "price_yes",
         "flow_bias",
         "tags",
         "signals"
        ],
        "properties": {
         "tags": {
          "type": "array",
          "items": {
           "type": "string"
          }
         },
         "signals": {
          "type": "array",
          "items": {
           "type": "string"
          },
          "description": "Human-readable signal sentences, not machine tokens"
         },
         "platform": {
          "enum": [
           "polymarket",
           "kalshi"
          ],
          "type": "string"
         },
         "question": {
          "type": "string"
         },
         "flow_bias": {
          "enum": [
           "buy",
           "sell",
           "neutral"
          ],
          "type": "string"
         },
         "market_id": {
          "type": "string"
     
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/scanna-hot-markets-feed-a9434532/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.scanna.xyz](https://www.zero.xyz/host/api.scanna.xyz/llms.txt)
