{
  "openapi": "3.0.1",
  "info": {
    "title": "Polymarket Weather Markets API — Daily Temperature Odds",
    "description": "Live odds for every Polymarket daily high and low temperature market in 51 cities, bracket by bracket: bid/ask, implied probability, volume, the exact settlement station (ICAO), unit and results, plus the running METAR high/low at that station. No login, no API key. From $1 per 1,000 brackets.",
    "version": "0.1",
    "x-build-id": "UWZYLxmUT9ePJTFhL"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/bigdavidson~polymarket-weather-markets/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-bigdavidson-polymarket-weather-markets",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/bigdavidson~polymarket-weather-markets/runs": {
      "post": {
        "operationId": "runs-sync-bigdavidson-polymarket-weather-markets",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/bigdavidson~polymarket-weather-markets/run-sync": {
      "post": {
        "operationId": "run-sync-bigdavidson-polymarket-weather-markets",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "cities": {
            "title": "Cities",
            "type": "array",
            "description": "City names as Polymarket titles them (NYC, London, Seoul, Hong Kong, Tokyo, ...), common aliases (New York, LA, SF, HK, KL, CDMX), settlement station ids (KLGA, EGLC) or series slugs. Case, accents and extra spaces are ignored. Use \"all\" for every city (51 as of Sep 2026, about 2,800-3,200 live brackets, about $2.90-3.30 per run). Unknown names are skipped with a free notice row listing valid cities. Default: NYC.",
            "default": [
              "NYC"
            ],
            "items": {
              "type": "string"
            }
          },
          "metric": {
            "title": "Metric",
            "enum": [
              "both",
              "high",
              "low"
            ],
            "type": "string",
            "description": "high = 'Highest temperature in <city> on <date>?' markets, low = 'Lowest temperature ...' markets, both = both.",
            "default": "both"
          },
          "mode": {
            "title": "Mode",
            "enum": [
              "live",
              "settled",
              "both"
            ],
            "type": "string",
            "description": "live = markets still open (usually today plus 1-2 days ahead) with the live order book. settled = closed markets with the winning bracket, for the lookback window or dateFrom/dateTo (about 1,100 brackets per day for all cities). both = live then settled.",
            "default": "live"
          },
          "lookbackDays": {
            "title": "Lookback days (settled mode)",
            "type": "integer",
            "description": "Settled/both mode only, when dateFrom/dateTo are empty: how many days back from today to pull closed markets. 1-120 (out-of-range values are clamped). Cost hint: all cities = about 1,100 brackets (~$1.10) per day; one city = about 22 brackets per day.",
            "default": 7
          },
          "dateFrom": {
            "title": "Date from (optional)",
            "type": "string",
            "description": "Earliest event date (station-local calendar day). YYYY-MM-DD, today, tomorrow, yesterday or +/-Nd (e.g. -3d). Filters live and settled rows."
          },
          "dateTo": {
            "title": "Date to (optional)",
            "type": "string",
            "description": "Latest event date, same formats as dateFrom. Set dateFrom = dateTo for a single day."
          },
          "includeObservation": {
            "title": "Include METAR running high/low proxy",
            "type": "boolean",
            "description": "For unresolved markets whose local day has started, fetch METAR observations at the exact settlement station and add the running high/low plus a per-bracket status (dead / leading / alive / final_proxy_win / final_proxy_loss). Also adds one station_observation row per station-day ($0.002 each). Proxy only, not the official value. Not available for Hong Kong (HKO) or Jinan.",
            "default": true
          },
          "liveOrderBook": {
            "title": "Refresh prices from the live order book",
            "type": "boolean",
            "description": "Read best bid/ask, sizes and last trade from Polymarket's live CLOB order book (a few extra fast requests). Off = Gamma catalog prices, which can be up to 5 minutes old.",
            "default": true
          },
          "maxRecords": {
            "title": "Max market records",
            "type": "integer",
            "description": "Upper limit on charged market rows per run (1-100000, default 5000; 0 = no cap, i.e. 100000). Free notice rows do not count. Use it to cap cost: $0.001 per row.",
            "default": 5000
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}