---
title: "Get Prediction Market Event Screener"
method: POST
path: "/api/v1/prediction-market/event-screener"
tags: ["Prediction Markets"]
---

# Get Prediction Market Event Screener

`POST /api/v1/prediction-market/event-screener`

Browse and filter Polymarket events (groups of related markets). Includes aggregated
volume, liquidity, and trader counts across all markets in each event.

**What it helps to answer:**

1. **What are the most popular prediction market events?**
2. **How much total volume does an event have across all its markets?**
3. **Which events have the most active trading?**

## Request body

- EventScreenerRequest — Request for event screener endpoint.
  - `order_by` SortOrderScreenerSortField[] — Sort order
    - `field` 'volume_24hr' | 'volume' | 'volume_1wk' | 'volume_1mo' | 'liquidity' | 'open_interest' | 'unique_traders_24h' | 'age_hours', required — Valid sort fields for screener endpoints.
    - `direction` 'ASC' | 'DESC', required — Enum for sort directions.
  - `sort_by` 'volume_24hr' | 'volume' | 'volume_1wk' | 'volume_1mo' | 'liquidity' | 'open_interest' | 'unique_traders_24h' | 'age_hours' — Valid sort fields for screener endpoints.
  - `query` string — Search query to filter results
  - `status` 'active' | 'closed' | '' — Valid status filters for screener endpoints.
  - `tags` string[] — Filter by tags
  - `min_liquidity` number — Minimum liquidity filter (-1 = no filter)
  - `max_liquidity` number — Maximum liquidity filter (-1 = no limit)
  - `max_unique_traders_24h` integer — Maximum unique traders in 24h (-1 = no limit)
  - `min_volume_24hr` number — Minimum 24h volume filter (-1 = no filter)
  - `neg_risk` boolean — Filter by neg-risk framework (null = no filter)
  - `min_open_interest` number — Minimum open interest filter (-1 = no filter)
  - `max_open_interest` number — Maximum open interest filter (-1 = no limit)
  - `end_date_before` string — Filter markets ending before this datetime (ISO 8601)
  - `end_date_after` string — Filter markets ending after this datetime (ISO 8601)
  - `pagination` PaginationRequest — Pagination parameters for API requests.
    - `page` integer — Page number (1-based)
    - `per_page` integer — Number of records per page (max 1000)

## Response `200`

Event screener data

- EventScreenerResponse — Response for event screener endpoint.
  - `pagination` PaginationInfo — Pagination information for API responses.
    - `page` integer — Current page number
    - `per_page` integer — Number of records per page
    - `is_last_page` boolean — Whether this is the last page
  - `data` EventScreenerItem[], required — List of event screener records
    - `event_id` string, required — Event ID
    - `event_title` string — Event title
    - `tags` string[] — Event tags
    - `neg_risk` boolean — Uses neg-risk framework
    - `market_count` integer — Number of markets
    - `total_volume` number — Total volume (USD)
    - `total_volume_24hr` number — Total 24h volume (USD)
    - `total_volume_1wk` number — Total 1 week volume (USD)
    - `total_volume_1mo` number — Total 1 month volume (USD)
    - `total_liquidity` number — Total liquidity (USD)
    - `total_open_interest` number — Total open interest (USD)
    - `total_volume_change_pct` number — Total volume change percentage
    - `total_traders_24h` integer — Total unique traders in 24h
    - `max_age_hours` number — Max market age in hours
    - `top_market_id` string — Top market by 24h volume
    - `top_market_question` string — Top market question
    - `top_market_volume_24hr` number — Top market 24h volume
    - `markets` EventScreenerMarket[] — Nested market data
      - `market_id` string, required
      - `question` string, required
      - `volume_24hr` number
      - `open_interest` number
      - `best_bid` number
      - `best_ask` number
      - `last_trade_price` number
      - `one_day_price_change` number
      - `volume_change_pct` number
      - `unique_traders_24h` integer
      - `end_date` string, date-time

## Other responses

- `400` — Bad Request - Invalid request parameters or malformed request
- `401` — Authentication error - No API key found in request
- `402` — Payment Required - This endpoint supports pay-per-request via x402 and MPP. x402 responses advertise payment options in `Payment-Required`; MPP responses advertise a fresh `WWW-Authenticate: Payment ...` challenge. Successful MPP responses may include `Payment-Receipt`.
- `403` — Forbidden - User does not have required subscription tier or has exceeded credit limit
- `404` — Not Found - The requested resource was not found
- `422` — Validation error - Invalid request parameters
- `429` — Too Many Requests - Rate limit exceeded
- `500` — Internal Server Error - An unexpected error occurred

---

[API](https://skmtc.net/nansen/apis/nansen-api.md) · [All operations](https://skmtc.net/nansen/apis/nansen-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/nansen/nansen-api/revisions/02a4d2e7d827/schema)
