Polymarket Subgraph (2026): GraphQL Endpoints and What Replaced Them

The Short Answer
Polymarket's hosted subgraphs no longer serve data. Polymarket open-sourced subgraphs that index its Polygon contracts, and as late as October 2025 its docs listed five public GraphQL endpoints hosted by Goldsky, for orders, positions, activity, open interest and PnL. In our checks on 3 October 2026, all five answered with an ENDPOINT_DEPRECATED error saying the endpoint is "paused and deprecated" after Polymarket's migration to V2 and that "the data is stale and incorrect". The subgraph page is gone from Polymarket's docs. For the same data today, use Polymarket's Data API v2, which needs no key, or index the V2 exchange contracts yourself.
Key Takeaways
- Polymarket's docs listed five Goldsky-hosted subgraphs: orders, positions, activity, open interest and PnL.
- On 3 October 2026 every one returned
ENDPOINT_DEPRECATEDwith HTTP status 429, and the error calls the data stale and incorrect. - The open-source repository is still public, but its config targets the exchange contracts and events from before the V2 upgrade.
- Polymarket's Data API v2 covers the same ground without a key: trades, activity, positions with PnL, holders and open interest.
- Data API v1 retires on 24 October 2026, so new code should start on the
/v2routes.
What is the Polymarket subgraph?
It is a set of subgraphs, indexers that run on The Graph's graph-node, which Polymarket wrote to turn its Polygon contract events into a GraphQL API. Polymarket's docs described them as providing "useful aggregate calculations and event indexing for things like volume, user position, market and liquidity data". The code lives in Polymarket's public polymarket-subgraph repository, which holds eight subgraphs:
| Subgraph | What it indexed |
|---|---|
orderbook-subgraph | Every OrderFilled and OrdersMatched event, plus trade counts and volume per token |
activity-subgraph | Splits, merges, redemptions and neg-risk conversions |
oi-subgraph | Open interest per market and across the platform |
pnl-subgraph | Each wallet's position per token, with average price, realized PnL and total bought |
fpmm-subgraph | The legacy FPMM market maker pools, their funding and their trades |
sports-oracle-subgraph | Games and markets created through the UMA sports oracle |
fee-module-subgraph | Fee refund events |
wallet-subgraph | Wallets and a global USDC balance |
What were the Polymarket subgraph GraphQL endpoints?
The public endpoints were never Polymarket's own servers. Its docs said the subgraphs were "hosted and made publicly available by a 3rd party provider, Goldsky", and as late as October 2025 they listed five endpoints, each under api.goldsky.com/api/public/project_cl6mb8i9h0003e201j6li0diw/subgraphs/:
| Subgraph | Endpoint path | Status on 3 Oct 2026 |
|---|---|---|
| Orders | orderbook-subgraph/0.0.1/gn | Deprecated |
| Positions | positions-subgraph/0.0.7/gn | Deprecated |
| Activity | activity-subgraph/0.0.4/gn | Deprecated |
| Open Interest | oi-subgraph/0.0.6/gn | Deprecated |
| PNL | pnl-subgraph/0.0.14/gn | Deprecated |
By February 2026 the endpoint list was gone from that page, and by October 2026 the page itself returned a 404. Polymarket's current docs, which we searched in full on 3 October 2026, no longer mention a GraphQL subgraph.
Do the Polymarket subgraph endpoints still work?
No. We sent each endpoint a _meta query, which asks a subgraph for its latest indexed block:
curl -s -X POST "https://api.goldsky.com/api/public/project_cl6mb8i9h0003e201j6li0diw/subgraphs/orderbook-subgraph/0.0.1/gn" \
-H "Content-Type: application/json" \
-d '{"query":"{ _meta { block { number timestamp } hasIndexingErrors } }"}'
{
"errors": [
{
"message": "This Polymarket subgraph endpoint is paused and deprecated following Polymarket's migration to V2 ...",
"extensions": { "code": "ENDPOINT_DEPRECATED" }
}
]
}
All five endpoints, and every other version tag we tried under the same project, returned this error with HTTP status 429. We trimmed the message here. In full, it says the data is stale and incorrect, tells users to stop using the endpoint, and points to Goldsky's newer data products. A script that only checks the status code will read 429 as rate limiting and keep retrying, so check for the ENDPOINT_DEPRECATED code instead.
Can you still run the Polymarket subgraph yourself?
The code is public, and its README covers deploying to a local graph-node or to Goldsky. The catch is what it indexes. The repository's Polygon config still points at the exchange contracts 0x4bFb41d5B3570DeFd03C39a9A4D8dE6Bd8B8982E and 0xC5d563A36AE78145C45a50134d48A1215220f80a, the neg risk adapter that Polymarket's contracts page now marks deprecated, and USDC.e. Polymarket's V2 upgrade on 28 April 2026 brought new exchange contracts, a new order struct and pUSD collateral, while the latest commit on the repository's main branch is dated 8 January 2026.
The chain shows the gap. Across 1,000 Polygon blocks on 3 October 2026, about 25 minutes, the two exchanges in the subgraph's config emitted no OrderFilled or OrdersMatched events at all, only token registrations. The CTF Exchange and Neg Risk CTF Exchange on Polymarket's contracts page emitted more than 5,600 events in just 50 of those blocks. None of the three most common event signatures on the V2 exchanges matched the OrderFilled, OrdersMatched or TokenRegistered signatures the orderbook subgraph listens for. A self-hosted copy therefore needs new addresses, new ABIs and updated handlers before it tracks current trading. The current addresses are in our Polymarket contract addresses guide.
What replaced the Polymarket subgraph?
Polymarket's Data API v2, served from https://data-api.polymarket.com/v2. Its docs say "No API key or authentication is required". Every route shares one response envelope, and list routes page with cursors. Most of what the hosted subgraphs offered maps onto a route:
| What the subgraph tracked | Data API v2 route |
|---|---|
| Fills from the orders subgraph | GET /v2/trades |
| Wallet positions | GET /v2/positions, with a status filter such as OPEN or CLOSED |
| Splits, merges and redemptions | GET /v2/activity, per wallet |
| Open interest | GET /v2/oi |
| PnL | GET /v2/user-pnl, plus avg_price, realized_pnl and unrealized_pnl on each position |
| Largest holders | GET /v2/holders |
Open interest is the simplest swap. Called with no parameters, the route returns one global figure:
curl -s "https://data-api.polymarket.com/v2/oi"
{"data":[{"condition_id":"GLOBAL","value":336211932.8130679}]}
That was about 336 million USDC of priced gross open interest on 3 October 2026. Add ?condition= with up to 20 comma-separated condition IDs to get one row per market instead. The route is not paginated, so the response has data and no pagination object.
The subgraphs exposed sync state through _meta. The Data API's equivalent is GET /v2/status, which reports how far behind chain head its data is. In our check it showed two seconds of serving lag and its 175 Polygon crawl cursors at most one block behind. One deadline matters: Polymarket retires Data API v1 on 24 October 2026, so code still calling routes such as /positions or /trades without the /v2 prefix needs to move. The routes are covered in depth in the Polymarket Data API guide.
How do you query Polymarket wallets across venues?
If the PnL and positions subgraphs were your way into wallet analysis, the Predictefy API adds Polymarket wallet profiles, holders and leaderboards, plus a smart-money feed that scores trades from 0 to 100 by wallet score, size, entry and timing. It serves Polymarket in the same normalized schema it uses for 15+ venues, so trades, books and history read the same way on each.
Frequently Asked Questions
Does Polymarket have a subgraph?
Polymarket wrote and open-sourced subgraphs for orders, activity, open interest, PnL and more, and the code is still public. The hosted endpoints its docs used to list are deprecated, and as of October 2026 its docs no longer describe a subgraph.
What is the Polymarket subgraph endpoint?
Polymarket's docs used to list five Goldsky-hosted endpoints under api.goldsky.com, such as orderbook-subgraph/0.0.1 and pnl-subgraph/0.0.14. On 3 October 2026 all five answered with an ENDPOINT_DEPRECATED error and HTTP status 429.
Why is the Polymarket subgraph deprecated?
The error ties it to Polymarket's migration to V2, which on 28 April 2026 moved trading to new exchange contracts with a new order struct and pUSD collateral. The subgraphs index the earlier contracts and events, and the error says their data is stale and incorrect.
What replaced the Polymarket subgraph?
Polymarket's Data API v2 at data-api.polymarket.com/v2, which needs no key. It serves trades, wallet activity, positions with average price and PnL, holders, open interest and a PnL series, all with cursor pagination.
Can I host the Polymarket subgraph myself?
The repository is open source with instructions for a local graph-node, but its config still targets the exchange contracts and event signatures from before V2, along with USDC.e. It needs new addresses, ABIs and handlers before it can track current trading.
How do I get Polymarket open interest without the subgraph?
Call GET /v2/oi on the Data API. With no parameters it returns the global figure, and with ?condition= it returns one row per market for up to 20 condition IDs. On 3 October 2026 it reported about 336 million USDC of priced gross open interest.