{
  "schemaVersion": "vultax-public-research-data-v1",
  "articleUrl": "https://vultax.com/research/polymarket-api-python-tutorial",
  "datasets": [
    {
      "title": "Three requests and no key: what the Polymarket API gives you",
      "columns": [
        {
          "name": "Service",
          "unit": null
        },
        {
          "name": "Ask it for",
          "unit": null
        },
        {
          "name": "What comes back",
          "unit": null
        }
      ],
      "rows": [
        [
          "Gamma, gamma-api.polymarket.com",
          "One market, by its exact slug",
          "Market and condition IDs, labelled outcomes with their token IDs, a summary price per outcome, open or closed, and the market's own fee settings"
        ],
        [
          "CLOB, clob.polymarket.com",
          "One order book, by an outcome's token ID",
          "Every bid and ask with its size, and the time the book was produced"
        ],
        [
          "Vultax research exports",
          "One published table, by article and dataset ID",
          "A historical table with its observation window, population, sources and a version that changes only when the table does"
        ]
      ],
      "measurementContext": "Responsibilities checked against Polymarket's documentation and live responses on 20 September 2026 UTC. The three sources are read one after another and are not one synchronized dataset.",
      "sources": [
        {
          "label": "Polymarket: market data overview",
          "url": "https://docs.polymarket.com/market-data/overview",
          "note": "Events, markets, outcomes and token IDs; checked 20 September 2026 UTC."
        },
        {
          "label": "Polymarket: discover markets",
          "url": "https://docs.polymarket.com/market-data/discover-markets",
          "note": "Official market discovery and pagination reference."
        },
        {
          "label": "Polymarket: market details",
          "url": "https://docs.polymarket.com/market-data/market-details",
          "note": "Outcome identity, market state and the fee fields feesEnabled and feeSchedule."
        },
        {
          "label": "Polymarket: prices and order books",
          "url": "https://docs.polymarket.com/market-data/prices-order-books",
          "note": "Official order-book reference."
        },
        {
          "label": "Polymarket: fees",
          "url": "https://docs.polymarket.com/trading/fees",
          "note": "The taker fee formula, published category rates and five-decimal rounding; checked 20 September 2026 UTC."
        },
        {
          "label": "Vultax: fee settings of the 1,000 most-traded open markets",
          "url": "https://vultax.com/tools/polymarket-fee-calculator#what-markets-charge",
          "note": "One read on 20 September 2026 at 20:53 UTC, with CSV, JSON and the script that produced it."
        },
        {
          "label": "Vultax trader research and published data",
          "url": "https://vultax.com/research/best-polymarket-traders-leaderboards",
          "note": "A separate historical research population, not a join to the selected market."
        }
      ],
      "measurement": {
        "kind": "reference",
        "temporalCoverage": "2026-09-20",
        "population": null,
        "methodology": "Read one exact market, the order book of one of its outcomes and one published research export; keep each source, its identifiers and its timestamps separate."
      },
      "id": "start-table",
      "kind": "published-table",
      "description": "A standard-library Python script reads one Polymarket market, the order book for one outcome and the fee that market charges, in three public requests with no key. Read this way, 309 of the 1,000 most-traded open markets charged takers nothing on 20 September 2026.",
      "articleUrl": "https://vultax.com/research/polymarket-api-python-tutorial",
      "sectionUrl": "https://vultax.com/research/polymarket-api-python-tutorial#start",
      "publishedAt": "2026-09-22",
      "modifiedAt": "2026-09-22",
      "version": "666281ea8a7cfa28f7a385be44080a2a8fdf64f5969df907cbb929c0f632b43d",
      "isLive": false,
      "limitations": "Published research snapshots and calculations; these exports do not contain current quotes or live account data. Observation windows and populations are stated in the source captions and methodology. Missing metadata is unknown, not zero. A teaching example built on public data: it does not trade, and provider responses can change without notice. Not financial advice.",
      "downloads": {
        "json": "https://vultax.com/research/polymarket-api-python-tutorial/data.json?dataset=start-table",
        "csv": "https://vultax.com/research/polymarket-api-python-tutorial/data.csv?dataset=start-table"
      }
    },
    {
      "title": "When it stops, it says why",
      "columns": [
        {
          "name": "What you see",
          "unit": null
        },
        {
          "name": "Why",
          "unit": null
        },
        {
          "name": "What to do",
          "unit": null
        }
      ],
      "rows": [
        [
          "'…' is an event with 4 markets, not one market",
          "The slug names an event, which groups several markets",
          "Pass one of the market slugs the message lists"
        ],
        [
          "No market has the exact slug '…'",
          "A typing slip, or the market has been removed",
          "Run --list 10 and copy a slug from the output"
        ],
        [
          "--outcome 'Maybe' does not name exactly one outcome",
          "The label is not one of this market's outcomes",
          "Use one of the labels the message prints"
        ],
        [
          "Order book: unavailable",
          "The market is closed or not accepting orders, or the reply failed an identity check",
          "Read the reason stored under receipts in snapshot.json"
        ],
        [
          "HTTP 429 from the address requested",
          "Requests are arriving too quickly",
          "Wait, for as long as the message says when it gives a time, before running it again"
        ],
        [
          "Output directory already exists",
          "A folder of that name is already there",
          "Pass a new --output path"
        ]
      ],
      "measurementContext": "Messages shortened. Each was produced by running the script on 20 September 2026 UTC, except HTTP 429, which did not occur.",
      "sources": [
        {
          "label": "Polymarket: market data overview",
          "url": "https://docs.polymarket.com/market-data/overview",
          "note": "Events, markets, outcomes and token IDs; checked 20 September 2026 UTC."
        },
        {
          "label": "Polymarket: discover markets",
          "url": "https://docs.polymarket.com/market-data/discover-markets",
          "note": "Official market discovery and pagination reference."
        },
        {
          "label": "Polymarket: market details",
          "url": "https://docs.polymarket.com/market-data/market-details",
          "note": "Outcome identity, market state and the fee fields feesEnabled and feeSchedule."
        },
        {
          "label": "Polymarket: prices and order books",
          "url": "https://docs.polymarket.com/market-data/prices-order-books",
          "note": "Official order-book reference."
        },
        {
          "label": "Polymarket: fees",
          "url": "https://docs.polymarket.com/trading/fees",
          "note": "The taker fee formula, published category rates and five-decimal rounding; checked 20 September 2026 UTC."
        },
        {
          "label": "Vultax: fee settings of the 1,000 most-traded open markets",
          "url": "https://vultax.com/tools/polymarket-fee-calculator#what-markets-charge",
          "note": "One read on 20 September 2026 at 20:53 UTC, with CSV, JSON and the script that produced it."
        },
        {
          "label": "Vultax trader research and published data",
          "url": "https://vultax.com/research/best-polymarket-traders-leaderboards",
          "note": "A separate historical research population, not a join to the selected market."
        }
      ],
      "measurement": {
        "kind": "reference",
        "temporalCoverage": "2026-09-20",
        "population": null,
        "methodology": "Run the published script with an event slug, an unknown slug, a wrong outcome label, a closed market and an existing output path."
      },
      "id": "errors-table",
      "kind": "published-table",
      "description": "A standard-library Python script reads one Polymarket market, the order book for one outcome and the fee that market charges, in three public requests with no key. Read this way, 309 of the 1,000 most-traded open markets charged takers nothing on 20 September 2026.",
      "articleUrl": "https://vultax.com/research/polymarket-api-python-tutorial",
      "sectionUrl": "https://vultax.com/research/polymarket-api-python-tutorial#errors",
      "publishedAt": "2026-09-22",
      "modifiedAt": "2026-09-22",
      "version": "bd84e3db48b200a4c6ccb56edca3bdeff16108e5eaed6409ad8b68de0aea8112",
      "isLive": false,
      "limitations": "Published research snapshots and calculations; these exports do not contain current quotes or live account data. Observation windows and populations are stated in the source captions and methodology. Missing metadata is unknown, not zero. A teaching example built on public data: it does not trade, and provider responses can change without notice. Not financial advice.",
      "downloads": {
        "json": "https://vultax.com/research/polymarket-api-python-tutorial/data.json?dataset=errors-table",
        "csv": "https://vultax.com/research/polymarket-api-python-tutorial/data.csv?dataset=errors-table"
      }
    }
  ]
}
