Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.polymarket.us/llms.txt

Use this file to discover all available pages before exploring further.

The Events resource provides access to event data. Events contain one or more markets and represent the underlying question or competition being predicted.

Methods

MethodEndpointDescription
list(params?)GET /v1/eventsList events with filtering
retrieve(id)GET /v1/events/{id}Get event by ID
retrieveBySlug(slug)GET /v1/events/slug/{slug}Get event by URL slug

list

Fetch a paginated list of events with optional filters.
const events = await client.events.list({
  limit: 10,
  offset: 0,
  active: true,
  categories: ['sports', 'crypto'],
});

for (const event of events.events) {
  console.log(`${event.title} - ${event.markets?.length ?? 0} markets`);
}

Parameters

ParameterTypeDescription
limitnumberMaximum results to return (default: 100)
offsetnumberNumber of results to skip for pagination
activebooleanFilter by active events
closedbooleanFilter by closed events
archivedbooleanFilter by archived events
featuredbooleanFilter featured events only
categoriesstring[]Filter by category slugs
seriesIdnumber[]Filter by series IDs
livebooleanFilter live sports events
endedbooleanFilter ended sports events

Response Fields

FieldTypeDescription
idnumberUnique event identifier
slugstringURL-friendly identifier
titlestringEvent title
descriptionstringEvent description
categorystringPrimary category
activebooleanWhether event is active for trading
closedbooleanWhether event is closed
marketsarrayAssociated markets

retrieve

Get a single event by its numeric ID.
const event = await client.events.retrieve(12345);

console.log(`Title: ${event.title}`);
console.log(`Category: ${event.category}`);
console.log(`Markets: ${event.markets?.length ?? 0}`);

Parameters

ParameterTypeDescription
idnumberEvent ID

retrieveBySlug

Get an event by its URL slug. Useful when you have the slug from a URL or API response.
const event = await client.events.retrieveBySlug('super-bowl-2025');

console.log(`Title: ${event.title}`);
for (const market of event.markets ?? []) {
  console.log(`  - ${market.title}: ${market.slug}`);
}

Parameters

ParameterTypeDescription
slugstringEvent URL slug

Sports Event Fields

Sports events include additional real-time data:
FieldTypeDescription
gameIdstringSports provider game ID
livebooleanWhether game is in progress
endedbooleanWhether game has ended
scoreobjectCurrent score
periodstringCurrent period/quarter/half
participantsarrayTeams or players
const events = await client.events.list({ live: true, categories: ['sports'] });

for (const event of events.events) {
  if (event.live) {
    console.log(`${event.title}: ${JSON.stringify(event.score)}`);
  }
}