Events
An event is a single real-world question that resolves at a point in time (the `strikeDate`). An event groups one or more markets. When `mutuallyExclusive` is true, only one sibling market can resolve YES; settlement rejects a second YES resolution while still allowing sibling NO or INVALID outcomes.
List events
Public/api/eventsReturns a cursor-paginated list of events. Filter by series or status, and optionally inline each event's markets.
Query parameters
series_tickerstringqueryoptionalOnly return events belonging to this series.
statusstringqueryoptionalFilter by event status.
ACTIVECLOSEDRESOLVEDwith_nested_marketsbooleanqueryoptionaldefault: falseWhen true, include a `markets` array on each event.
with_analyticsbooleanqueryoptionaldefault: falseWhen true, include event-level market counts, volume, liquidity, and YES-price rollups.
limitintegerqueryoptionaldefault: 20Page size. Max 100.
cursorstringqueryoptionalOpaque cursor from the previous page.
Request
curl "https://api.majjha.fun/api/events"Response
{
"cursor": null,
"events": [
{
"id": "evt_btc5m_1717459200",
"eventTicker": "BTC-5MIN-25JUN04T0900",
"seriesTicker": "BTC-5MIN",
"title": "BTC above $68,500 at 09:05?",
"mutuallyExclusive": true,
"strikeDate": "2026-06-04T09:05:00Z",
"description": "Resolves YES if BTC/USD is at or above the strike at 09:05 UTC.",
"status": "ACTIVE",
"createdAt": "2026-06-04T09:00:00Z",
"updatedAt": "2026-06-04T09:00:00Z"
}
]
}List events (Gamma shape)
Public/eventsReturns events as a bare array using the current Gamma SDK response shape. Use `/events/keyset` when cursor pagination is preferred.
Query parameters
activebooleanqueryoptionaldefault: trueWhen true, returns active events. Set false with `closed=true` for inactive events.
closedbooleanqueryoptionaldefault: falseWhen false, returns active events. When true, returns non-active events.
archivedbooleanqueryoptionalArchived event filter. PredictMax has no archived Gamma events yet, so `true` returns no rows.
featuredbooleanqueryoptionalFeatured event filter. PredictMax has no featured Gamma events yet, so `true` returns no rows.
cyombooleanqueryoptionalCreate-your-own-market event filter. PredictMax has no CYOM events, so `true` returns no rows.
include_chatbooleanqueryoptionalAccepted for Gamma compatibility; chat payloads are not embedded in event rows.
include_templatebooleanqueryoptionalAccepted for Gamma compatibility; PredictMax has no template event rows.
limitintegerqueryoptionaldefault: 20Page size. Max 100.
offsetintegerqueryoptionaldefault: 0Rows to skip. Max scan window is 10,000 rows.
series_tickerstringqueryoptionalOptional event series filter. Alias: `seriesTicker`.
recurrencestringqueryoptionalOptional series recurrence/frequency filter, e.g. `5m`, `daily`, `weekly`, or `monthly`.
slugstringqueryoptionalOptional repeated or comma-separated event ticker/slug filter.
idstringqueryoptionalOptional repeated or comma-separated event id/ticker filter.
tag_idstringqueryoptionalOptional repeated or comma-separated tag id filter. Slugs are also accepted for compatibility. Alias: `tagId`.
tag_slugstringqueryoptionalOptional repeated or comma-separated tag slug filter. Alias: `tagSlug`.
exclude_tag_idstringqueryoptionalOptional repeated or comma-separated tag ids/slugs to exclude. Alias: `excludeTagId`.
related_tagsbooleanqueryoptionaldefault: falseWhen true, expands the include tag filter to tags related to the provided tag id/slug filters. Alias: `relatedTags`.
liquidity_minnumberqueryoptionalMinimum event liquidity/open-interest aggregate. Aliases: `liquidityMin`, `liquidity_num_min`, `liquidityNumMin`.
liquidity_maxnumberqueryoptionalMaximum event liquidity/open-interest aggregate. Aliases: `liquidityMax`, `liquidity_num_max`, `liquidityNumMax`.
volume_minnumberqueryoptionalMinimum event volume aggregate. Aliases: `volumeMin`, `volume_num_min`, `volumeNumMin`.
volume_maxnumberqueryoptionalMaximum event volume aggregate. Aliases: `volumeMax`, `volume_num_max`, `volumeNumMax`.
start_date_minstringqueryoptionalMinimum event start/creation time. Accepts RFC3339, `YYYY-MM-DD HH:mm:ss`, or `YYYY-MM-DD`. Alias: `startDateMin`.
start_date_maxstringqueryoptionalMaximum event start/creation time. Accepts RFC3339, `YYYY-MM-DD HH:mm:ss`, or `YYYY-MM-DD`. Alias: `startDateMax`.
end_date_minstringqueryoptionalMinimum event end/strike time. Accepts RFC3339, `YYYY-MM-DD HH:mm:ss`, or `YYYY-MM-DD`. Alias: `endDateMin`.
end_date_maxstringqueryoptionalMaximum event end/strike time. Accepts RFC3339, `YYYY-MM-DD HH:mm:ss`, or `YYYY-MM-DD`. Alias: `endDateMax`.
orderstringqueryoptionaldefault: createdAtSort key. Accepts first key from comma-separated SDK values such as `id`, `ticker`, `slug`, `title`, `createdAt`, `start_date`, `updatedAt`, `endDate`, `volume`, `volume_24hr`, `liquidity`, `openInterest`, `closed_time`, or `competitive`.
ascendingbooleanqueryoptionaldefault: falseSort ascending instead of descending.
Request
curl "https://api.majjha.fun/events"Response
[
{
"id": "evt_btc5m_1717459200",
"ticker": "BTC-5MIN-25JUN04T0900",
"slug": "BTC-5MIN-25JUN04T0900",
"title": "BTC above $68,500 at 09:05?",
"description": "Resolves YES if BTC/USD is at or above the strike at 09:05 UTC.",
"startDate": "2026-06-04T09:00:00+00:00",
"creationDate": "2026-06-04T09:00:00+00:00",
"endDate": "2026-06-04T09:05:00+00:00",
"active": true,
"closed": false,
"archived": false,
"commentsEnabled": true,
"enableOrderBook": true,
"negRisk": true,
"enableNegRisk": true,
"eventDate": "2026-06-04",
"seriesSlug": "BTC-5MIN",
"live": true,
"ended": false
}
]- →Compatibility alias: `/api/gamma/events`.
- →Native PredictMax cursor envelopes remain under `/api/events`.
List events (Gamma keyset)
Public/events/keysetReturns events in the current Gamma SDK keyset shape. The native PredictMax event envelope remains under `/api/events`.
Query parameters
closedbooleanqueryoptionaldefault: falseWhen false, returns active events. When true, returns non-active events.
livebooleanqueryoptionalCurrent Gamma alias for active/live events.
after_cursorstringqueryoptionalOpaque cursor from the previous page's `next_cursor` field.
limitintegerqueryoptionaldefault: 20Page size. Max 500.
orderstringqueryoptionalSort key. Supports official aliases such as `id`, `slug`, `title`, `createdAt`, `updatedAt`, `endDate`, `volume`, and `liquidity`.
ascendingbooleanqueryoptionaldefault: trueSort direction when `order` is supplied.
offsetintegerqueryoptionalRejected for keyset pagination; use `after_cursor` instead.
series_tickerstringqueryoptionalOptional event series filter. Alias: `seriesTicker`.
series_idstringqueryoptionalCurrent Gamma series-id filter. Local PredictMax events use ticker-backed series, so unmatched numeric ids return an empty set.
game_idstringqueryoptionalCurrent Gamma game-id filter accepted for compatibility; local non-game events return an empty set when it is supplied.
recurrencestringqueryoptionalOptional series recurrence/frequency filter, e.g. `5m`, `daily`, `weekly`, or `monthly`.
title_searchstringqueryoptionalCase-insensitive search across event title and ticker.
slugstringqueryoptionalOptional repeated or comma-separated event ticker/slug filter.
idstringqueryoptionalOptional repeated or comma-separated event id/ticker filter.
tag_idstringqueryoptionalOptional repeated or comma-separated tag id filter. Slugs are also accepted for compatibility. Alias: `tagId`.
tag_slugstringqueryoptionalOptional repeated or comma-separated tag slug filter. Alias: `tagSlug`.
exclude_tag_idstringqueryoptionalOptional repeated or comma-separated tag ids/slugs to exclude. Alias: `excludeTagId`.
related_tagsbooleanqueryoptionaldefault: falseWhen true, expands the include tag filter to tags related to the provided tag id/slug filters. Alias: `relatedTags`.
liquidity_minnumberqueryoptionalMinimum event liquidity/open-interest aggregate. Aliases: `liquidityMin`, `liquidity_num_min`, `liquidityNumMin`.
liquidity_maxnumberqueryoptionalMaximum event liquidity/open-interest aggregate. Aliases: `liquidityMax`, `liquidity_num_max`, `liquidityNumMax`.
volume_minnumberqueryoptionalMinimum event volume aggregate. Aliases: `volumeMin`, `volume_num_min`, `volumeNumMin`.
volume_maxnumberqueryoptionalMaximum event volume aggregate. Aliases: `volumeMax`, `volume_num_max`, `volumeNumMax`.
event_datestringqueryoptionalCurrent Gamma event-date filter; maps to the event start-time day locally.
event_weekintegerqueryoptionalCurrent Gamma sports-week filter accepted for compatibility; local non-weekly events return an empty set when it is supplied.
featured_orderbooleanqueryoptionalCurrent Gamma ordering hint accepted for compatibility.
created_bystringqueryoptionalCurrent Gamma creator-id filter accepted for compatibility; local events return an empty set when supplied.
parent_event_idintegerqueryoptionalCurrent Gamma parent-event filter accepted for compatibility; local events return an empty set when supplied.
include_childrenbooleanqueryoptionalCurrent Gamma child-event expansion flag accepted for compatibility.
partner_slugstringqueryoptionalCurrent Gamma partner enrichment filter accepted for compatibility.
include_best_linesbooleanqueryoptionalCurrent Gamma best-lines enrichment flag accepted for compatibility.
tag_matchstringqueryoptionalCurrent Gamma tag-match mode accepted for compatibility.
localestringqueryoptionalCurrent Gamma locale parameter accepted for compatibility.
start_date_minstringqueryoptionalMinimum event start/creation time. Alias: `startDateMin`.
start_date_maxstringqueryoptionalMaximum event start/creation time. Alias: `startDateMax`.
start_time_minstringqueryoptionalMinimum event start-time/strike timestamp.
start_time_maxstringqueryoptionalMaximum event start-time/strike timestamp.
end_date_minstringqueryoptionalMinimum event end/strike time. Alias: `endDateMin`.
end_date_maxstringqueryoptionalMaximum event end/strike time. Alias: `endDateMax`.
Request
curl "https://api.majjha.fun/events/keyset"Response
{
"events": [
{
"id": "evt_btc5m_1717459200",
"ticker": "BTC-5MIN-25JUN04T0900",
"slug": "BTC-5MIN-25JUN04T0900",
"title": "BTC above $68,500 at 09:05?",
"description": "Resolves YES if BTC/USD is at or above the strike at 09:05 UTC.",
"startDate": "2026-06-04T09:00:00+00:00",
"endDate": "2026-06-04T09:05:00+00:00",
"active": true,
"closed": false,
"createdAt": "2026-06-04T09:00:00+00:00",
"updatedAt": "2026-06-04T09:00:00+00:00",
"enableOrderBook": true,
"negRisk": true,
"seriesSlug": "BTC-5MIN"
}
],
"next_cursor": null
}- →Compatibility aliases: `/api/gamma/events/keyset`, `/events/{id}`, `/events/slug/{slug}`, and `/events/{id}/tags`.
List events (Gamma pagination)
Public/events/paginationReturns the current Gamma-compatible pagination envelope `{ data, pagination }` with the same filters as `/events`.
Query parameters
activebooleanqueryoptionaldefault: trueWhen true, returns active events. Set false with `closed=true` for inactive events.
closedbooleanqueryoptionaldefault: falseWhen false, returns active events. When true, returns non-active events.
archivedbooleanqueryoptionalArchived event filter. PredictMax has no archived Gamma events yet, so `true` returns no rows.
featuredbooleanqueryoptionalFeatured event filter. PredictMax has no featured Gamma events yet, so `true` returns no rows.
cyombooleanqueryoptionalCreate-your-own-market event filter. PredictMax has no CYOM events, so `true` returns no rows.
include_chatbooleanqueryoptionalAccepted for Gamma compatibility; chat payloads are not embedded in event rows.
include_templatebooleanqueryoptionalAccepted for Gamma compatibility; PredictMax has no template event rows.
limitintegerqueryoptionaldefault: 20Page size. Max 100.
offsetintegerqueryoptionaldefault: 0Rows to skip. Max scan window is 10,000 rows.
series_tickerstringqueryoptionalOptional event series filter. Alias: `seriesTicker`.
recurrencestringqueryoptionalOptional series recurrence/frequency filter, e.g. `5m`, `daily`, `weekly`, or `monthly`.
slugstringqueryoptionalOptional repeated or comma-separated event ticker/slug filter.
idstringqueryoptionalOptional repeated or comma-separated event id/ticker filter.
tag_idstringqueryoptionalOptional repeated or comma-separated tag id filter. Alias: `tagId`.
tag_slugstringqueryoptionalOptional repeated or comma-separated tag slug filter. Alias: `tagSlug`.
exclude_tag_idstringqueryoptionalOptional repeated or comma-separated tag ids/slugs to exclude. Alias: `excludeTagId`.
related_tagsbooleanqueryoptionaldefault: falseWhen true, expands the include tag filter to related tags. Alias: `relatedTags`.
liquidity_minnumberqueryoptionalMinimum event liquidity/open-interest aggregate. Aliases: `liquidityMin`, `liquidity_num_min`, `liquidityNumMin`.
liquidity_maxnumberqueryoptionalMaximum event liquidity/open-interest aggregate. Aliases: `liquidityMax`, `liquidity_num_max`, `liquidityNumMax`.
volume_minnumberqueryoptionalMinimum event volume aggregate. Aliases: `volumeMin`, `volume_num_min`, `volumeNumMin`.
volume_maxnumberqueryoptionalMaximum event volume aggregate. Aliases: `volumeMax`, `volume_num_max`, `volumeNumMax`.
start_date_minstringqueryoptionalMinimum event start/creation time. Accepts RFC3339, `YYYY-MM-DD HH:mm:ss`, or `YYYY-MM-DD`. Alias: `startDateMin`.
start_date_maxstringqueryoptionalMaximum event start/creation time. Accepts RFC3339, `YYYY-MM-DD HH:mm:ss`, or `YYYY-MM-DD`. Alias: `startDateMax`.
end_date_minstringqueryoptionalMinimum event end/strike time. Accepts RFC3339, `YYYY-MM-DD HH:mm:ss`, or `YYYY-MM-DD`. Alias: `endDateMin`.
end_date_maxstringqueryoptionalMaximum event end/strike time. Accepts RFC3339, `YYYY-MM-DD HH:mm:ss`, or `YYYY-MM-DD`. Alias: `endDateMax`.
orderstringqueryoptionaldefault: createdAtSort key. Accepts the same safe aliases as `/events`.
ascendingbooleanqueryoptionaldefault: falseSort ascending instead of descending.
Request
curl "https://api.majjha.fun/events/pagination"Response
{
"data": [
{
"id": "evt_btc5m_1717459200",
"ticker": "BTC-5MIN-25JUN04T0900",
"slug": "BTC-5MIN-25JUN04T0900",
"title": "BTC above $68,500 at 09:05?",
"active": true,
"closed": false,
"ended": false
}
],
"pagination": {
"hasMore": false,
"totalResults": 1
}
}- →Compatibility alias: `/api/gamma/events/pagination`.
List event results (Gamma shape)
Public/events/resultsReturns resolved/ended events as a bare Gamma-compatible array. It accepts the same id, slug, tag, series, offset, and sort filters as `/events`.
Query parameters
limitintegerqueryoptionaldefault: 20Page size. Max 100.
offsetintegerqueryoptionaldefault: 0Rows to skip. Max scan window is 10,000 rows.
series_tickerstringqueryoptionalOptional event series filter. Alias: `seriesTicker`.
slugstringqueryoptionalOptional repeated or comma-separated event ticker/slug filter.
idstringqueryoptionalOptional repeated or comma-separated event id/ticker filter.
tag_idstringqueryoptionalOptional repeated or comma-separated tag id filter. Slugs are also accepted for compatibility. Alias: `tagId`.
tag_slugstringqueryoptionalOptional repeated or comma-separated tag slug filter. Alias: `tagSlug`.
exclude_tag_idstringqueryoptionalOptional repeated or comma-separated tag ids/slugs to exclude. Alias: `excludeTagId`.
related_tagsbooleanqueryoptionaldefault: falseWhen true, expands the include tag filter to related tags. Alias: `relatedTags`.
orderstringqueryoptionaldefault: createdAtSort key. Accepts the same safe aliases as `/events`.
ascendingbooleanqueryoptionaldefault: falseSort ascending instead of descending.
Request
curl "https://api.majjha.fun/events/results"Response
[
{
"id": "evt_btc5m_1717459200",
"ticker": "BTC-5MIN-25JUN04T0900",
"slug": "BTC-5MIN-25JUN04T0900",
"title": "BTC above $68,500 at 09:05?",
"closed": true,
"ended": true,
"active": false,
"endDate": "2026-06-04T09:05:00+00:00",
"closedTime": "2026-06-04T09:05:00+00:00"
}
]- →Compatibility alias: `/api/gamma/events/results`.
Get event (Gamma shape)
Public/events/{id}Returns one event by id or ticker as a bare Gamma-compatible event object, including current event-level analytics when available.
Path parameters
idstringpathrequiredEvent id or ticker.
Request
curl "https://api.majjha.fun/events/{id}"Response
{
"id": "evt_btc5m_1717459200",
"ticker": "BTC-5MIN-25JUN04T0900",
"slug": "BTC-5MIN-25JUN04T0900",
"title": "BTC above $68,500 at 09:05?",
"description": "Resolves YES if BTC/USD is at or above the strike at 09:05 UTC.",
"startDate": "2026-06-04T09:00:00+00:00",
"creationDate": "2026-06-04T09:00:00+00:00",
"endDate": "2026-06-04T09:05:00+00:00",
"active": true,
"closed": false,
"archived": false,
"liquidity": "14600.00",
"volume": "72400.00",
"openInterest": "14600.00",
"createdAt": "2026-06-04T09:00:00+00:00",
"updatedAt": "2026-06-04T09:00:00+00:00",
"commentsEnabled": true,
"enableOrderBook": true,
"liquidityClob": "14600.00",
"negRisk": true,
"enableNegRisk": true,
"eventDate": "2026-06-04",
"startTime": "2026-06-04T09:05:00+00:00",
"seriesSlug": "BTC-5MIN",
"live": true,
"ended": false,
"series": [
{
"id": "BTC-5MIN",
"ticker": "BTC-5MIN",
"slug": "BTC-5MIN",
"title": "BTC-5MIN",
"active": true,
"closed": false,
"archived": false
}
]
}Get event by slug (Gamma shape)
Public/events/slug/{slug}Returns one event by slug/ticker as a bare Gamma-compatible event object, including current event-level analytics when available.
Path parameters
slugstringpathrequiredEvent slug or ticker.
Request
curl "https://api.majjha.fun/events/slug/{slug}"Response
{
"id": "evt_btc5m_1717459200",
"ticker": "BTC-5MIN-25JUN04T0900",
"slug": "BTC-5MIN-25JUN04T0900",
"title": "BTC above $68,500 at 09:05?",
"description": "Resolves YES if BTC/USD is at or above the strike at 09:05 UTC.",
"active": true,
"closed": false,
"liquidity": "14600.00",
"volume": "72400.00",
"openInterest": "14600.00",
"commentsEnabled": true,
"enableOrderBook": true,
"negRisk": true,
"seriesSlug": "BTC-5MIN",
"live": true,
"ended": false
}Get event tweet count (Gamma shape)
Public/events/{id}/tweet-countReturns the current Gamma-compatible event tweet-count envelope. PredictMax returns zero until an X/Twitter provider is configured.
Path parameters
idstringpathrequiredEvent id or ticker.
Request
curl "https://api.majjha.fun/events/{id}/tweet-count"Response
{
"tweetCount": 0
}- →Compatibility alias: `/api/gamma/events/{id}/tweet-count`.
Get event comment count (Gamma shape)
Public/events/{id}/comments/countReturns the count of visible comments across markets in the event, using the current Gamma-compatible `{ count }` envelope.
Path parameters
idstringpathrequiredEvent id or ticker.
Request
curl "https://api.majjha.fun/events/{id}/comments/count"Response
{
"count": 42
}- →Compatibility alias: `/api/gamma/events/{id}/comments/count`.
List event creators (Gamma shape)
Public/events/creatorsReturns public creator rows derived from market creator accounts in the current Gamma-compatible creator shape.
Query parameters
creatorNamestringqueryoptionalFilter by creator display name. Alias: `creator_name`.
creatorHandlestringqueryoptionalFilter by creator username/handle. Alias: `creator_handle`.
creator_namestringqueryoptionalSnake_case creator display-name filter accepted by current Gamma SDKs.
creator_handlestringqueryoptionalSnake_case creator handle filter accepted by current Gamma SDKs.
orderstringqueryoptionaldefault: updatedAtSort field. Supports `id`, `creatorName`, `creatorHandle`, `createdAt`, and `updatedAt` aliases.
ascendingbooleanqueryoptionaldefault: falseSort ascending instead of descending.
limitintegerqueryoptionaldefault: 20Page size. Max 100.
offsetintegerqueryoptionaldefault: 0Rows to skip. Max scan window is 10,000 rows.
Request
curl "https://api.majjha.fun/events/creators"Response
[
{
"id": "usr_creator_1",
"creatorName": "Ari",
"creatorHandle": "ari",
"creatorUrl": "/u/ari",
"creatorImage": null,
"createdAt": "2026-06-04T09:00:00+00:00",
"updatedAt": "2026-06-04T09:00:00+00:00"
}
]- →Compatibility alias: `/api/gamma/events/creators`.
Get event creator (Gamma shape)
Public/events/creators/{id}Returns one public event creator row by user id.
Path parameters
idstringpathrequiredCreator user id.
Request
curl "https://api.majjha.fun/events/creators/{id}"Response
{
"id": "usr_creator_1",
"creatorName": "Ari",
"creatorHandle": "ari",
"creatorUrl": "/u/ari",
"creatorImage": null,
"createdAt": "2026-06-04T09:00:00+00:00",
"updatedAt": "2026-06-04T09:00:00+00:00"
}- →Compatibility alias: `/api/gamma/events/creators/{id}`.
Get event
Public/api/events/{event_ticker}Returns a single event by ticker. Optionally inline its markets.
Path parameters
event_tickerstringpathrequiredThe event ticker.
Query parameters
with_nested_marketsbooleanqueryoptionaldefault: falseWhen true, include a `markets` array alongside the event.
with_analyticsbooleanqueryoptionaldefault: trueInclude event-level market counts, volume, liquidity, outcome counts, and YES-price rollups.
Request
curl "https://api.majjha.fun/api/events/{event_ticker}"Response
{
"event": {
"id": "evt_btc5m_1717459200",
"eventTicker": "BTC-5MIN-25JUN04T0900",
"seriesTicker": "BTC-5MIN",
"title": "BTC above $68,500 at 09:05?",
"mutuallyExclusive": true,
"strikeDate": "2026-06-04T09:05:00Z",
"description": "Resolves YES if BTC/USD is at or above the strike at 09:05 UTC.",
"status": "ACTIVE",
"createdAt": "2026-06-04T09:00:00Z",
"updatedAt": "2026-06-04T09:00:00Z"
},
"markets": [
{
"id": "mkt_btc5m_a1",
"ticker": "BTC-5MIN-25JUN04T0900-Y",
"eventTicker": "BTC-5MIN-25JUN04T0900",
"title": "BTC above $68,500 at 09:05?",
"status": "ACTIVE",
"lastYesPrice": "0.54",
"lastNoPrice": "0.46",
"volume": "12840.00",
"liquidity": "3200.00"
}
],
"analytics": {
"marketCount": 5,
"activeCount": 5,
"closedCount": 0,
"resolvedCount": 0,
"unresolvedCount": 5,
"resolvedYesCount": 0,
"resolvedNoCount": 0,
"invalidCount": 0,
"totalVolume": "72400.00",
"totalLiquidity": "14600.00",
"yesPriceSum": "1.01",
"avgYesPrice": "0.202",
"minYesPrice": "0.04",
"maxYesPrice": "0.54"
}
}