> **For coding agents and LLMs:** This is one Social Fetch marketing page (markdown export). For API orientation start with [`/llms.txt`](https://www.socialfetch.dev/llms.txt); for auth and crawl rules use [`/agents.txt`](https://www.socialfetch.dev/agents.txt); for every operation use [`/llms-endpoints.txt`](https://www.socialfetch.dev/llms-endpoints.txt).

## This page

- **On-site (HTML):** <https://www.socialfetch.dev/platforms/polymarket/tags>
- **Markdown (.mdx) URL:** <https://www.socialfetch.dev/platforms/polymarket/tags.mdx>

---

# Polymarket Tags API

The topic tags attached to events and markets, with ids and slugs.

`GET /v1/polymarket/tags` returns a page of tags in `data.tags`. Each tag has `id`, `label` (for example Politics), `slug`, `createdAt` and `updatedAt`. Use the numeric `id` with the markets list's `tagId` filter, or pass the `slug` to `GET /v1/polymarket/tags/{idOrSlug}`.

`limit` is 1 to 100 and defaults to 100. `data.page` continues the list with an opaque cursor. Tags are the stable way to group events and markets without parsing titles.

## Request

- **Endpoint:** `GET /v1/polymarket/tags`
- **Credits:** 1 credit
Failed requests are free
- **Input:** by page
- **Full reference:** [docs](https://www.socialfetch.dev/docs/api/v1/polymarket/tags/get)
- **Platform page:** [/platforms/polymarket](https://www.socialfetch.dev/platforms/polymarket)

## FAQ

### Should I filter markets by tag id or slug?

The markets list takes a numeric tagId. The single tag route accepts an id or a slug. Use data.tags[].id from this list for filtering, and the slug for a readable lookup.

### How many tags are there?

The list is paged, with up to 100 tags per request and an opaque cursor for the next page. Follow data.page.nextCursor while data.page.hasMore is true.

### Can I see related tags?

Call GET /v1/polymarket/tags/{idOrSlug} with include=related to add related tags, closest first, each with activeEvents. The list route does not include related tags.

### What does lookupStatus mean on this route?

found means the object or list was returned. not_found means no matching object exists. HTTP 200 only means the request finished, so branch on data.lookupStatus before storing a row.

### How much does this route cost?

Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged: that field is the billing source of truth.
