Gamma API
The Gamma API (https://gamma-api.polymarket.com) is Polymarket’s read-only
metadata layer. It serves markets, events, search, tags, series, sports
metadata, comments, and public profiles. No authentication required.
Polygolem wraps Gamma in two places:
internal/gamma— full typed HTTP client, used by every CLI command.pkg/gamma— the public read-only surface that downstream Go consumers can import. Gamma response and query DTOs are exported frompkg/types.
The polygolem discover family is the CLI interface to Gamma:
polygolem discover search --query "btc 5m" --limit 10polygolem discover markets --limit 20 --activepolygolem discover market --id 0xbd31dc8a...polygolem discover market --slug will-btc-be-abovepolygolem discover enrich --id 0xbd31dc8a... # joins Gamma + CLOBpolygolem discover tags --limit 100polygolem discover series --limit 20polygolem discover comments --entity-id 123 --entity-type marketEndpoint categories
| Category | Endpoints |
|---|---|
| Markets | List, by ID, by slug, by token ID |
| Events | List, by ID, by slug, keyset pagination |
| Search | Cross-entity (markets, events, profiles, tags) |
| Tags | List, by ID, by slug, related |
| Series | List, by ID |
| Sports | Teams, market types |
| Comments | List, by ID, by user |
| Profiles | Public profile by wallet |
REST Mapping
| Polygolem method | REST path | Auth | Notes |
|---|---|---|---|
HealthCheck | GET / | Public | Reachability check |
Markets, ActiveMarkets | GET /markets | Public | Offset pagination and filters such as active, closed, tag_id, slug, condition_ids, clob_token_ids |
MarketByID, MarketBySlug | GET /markets/{id-or-slug} | Public | Gamma accepts both ID and slug in the wrapped route |
MarketByToken | GET /markets/token/{token_id} | Public | Gamma token lookup exposed through pkg/gamma and pkg/universal |
MarketsKeyset | GET /markets-keyset | Public | Keyset pagination with keyset_id |
Events | GET /events | Public | Offset pagination and filters such as closed, tag_id, slug |
EventByID | GET /events/{id} | Public | One event by Gamma ID |
EventBySlug | GET /events?slug=...&limit=1 | Public | Polygolem resolves slug through the list endpoint |
EventsKeyset | GET /events-keyset | Public | Keyset pagination with keyset_id |
Series, SeriesByID | GET /series, GET /series/{id} | Public | Market series metadata |
Search | GET /public-search | Public | Cross-entity public search |
Tags, TagByID, TagBySlug | GET /tags, GET /tags/{id-or-slug} | Public | Tag taxonomy |
RelatedTagsByID, RelatedTagsBySlug | GET /tags/{id-or-slug}/related | Public | Relationship rows returned by Gamma |
Teams | GET /teams | Public | Sports teams with league/name filters |
SportsMetadata | GET /sports-metadata | Public | Sports metadata catalog |
SportsMarketTypes | GET /sports-market-types | Public | Current sports market-type catalog |
Comments, CommentByID, CommentsByUser | GET /comments, GET /comments/{id} | Public | Comment reads by entity or user |
PublicProfile | GET /profiles/{wallet} | Public | Public profile by wallet address |
Current Gaps
| Gap | Current state |
|---|---|
| Gamma write APIs | Not wrapped; polygolem treats Gamma as read-only |
| Full sports game endpoints | Only teams, sports metadata, and sports market types are wrapped |
| Profile mutation | Not wrapped |
Upstream
- Polymarket public docs: docs.polymarket.com
- Base URL:
https://gamma-api.polymarket.com
Related
- Market Discovery — task-oriented walkthrough
- Markets, Events & Tokens — data model
- Polymarket API Overview — every API in one place