> ## Documentation Index
> Fetch the complete documentation index at: https://docs.asksurf.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Polymarket Event Search



## OpenAPI

````yaml openapi.json GET /gateway/v1/search/polymarket
openapi: 3.1.0
info:
  title: Hermod
  version: 0.0.1
servers:
  - url: https://api.asksurf.ai
security: []
paths:
  /gateway/v1/search/polymarket:
    get:
      tags:
        - Search
      summary: Polymarket Event Search
      description: >-
        Searches Polymarket events by keyword, tags, and/or category.


        **Filters:**

        - Keyword matching market question, event title, or description

        - Comma-separated tag labels

        - Surf-curated category


        At least one of `q`, `tags`, or `category` is required. Returns events
        with nested markets ranked by volume.


        **Data refresh:** ~30 minutes
      operationId: search-polymarket
      parameters:
        - description: Search keyword matching market question, event title, or description
          explode: false
          in: query
          name: q
          schema:
            description: >-
              Search keyword matching market question, event title, or
              description
            examples:
              - bitcoin
            maxLength: 200
            type: string
        - description: >-
            Comma-separated tag labels to filter by (matches any). Commonly used
            tags: `Crypto`, `Politics`, `Sports`, `Science`, `Pop Culture`
          explode: false
          in: query
          name: tags
          schema:
            description: >-
              Comma-separated tag labels to filter by (matches any). Commonly
              used tags: `Crypto`, `Politics`, `Sports`, `Science`, `Pop
              Culture`
            examples:
              - politics
            maxLength: 500
            type: string
        - description: Filter by Surf-curated category
          explode: false
          in: query
          name: category
          schema:
            description: Filter by Surf-curated category
            enum:
              - crypto
              - culture
              - early_polymarket_trades
              - economics
              - financials
              - politics
              - stem
              - sports
              - unknown
            examples:
              - politics
            type: string
        - description: >-
            Market status filter: `active`, `finalized`, `ended`, `initialized`,
            or `closed`
          explode: false
          in: query
          name: status
          schema:
            default: active
            description: >-
              Market status filter: `active`, `finalized`, `ended`,
              `initialized`, or `closed`
            enum:
              - active
              - finalized
              - ended
              - initialized
              - closed
            examples:
              - active
            type: string
        - description: Results per page
          explode: false
          in: query
          name: limit
          schema:
            default: 20
            description: Results per page
            examples:
              - 20
            format: int64
            maximum: 100
            minimum: 1
            type: integer
        - description: Pagination offset
          explode: false
          in: query
          name: offset
          schema:
            default: 0
            description: Pagination offset
            examples:
              - 0
            format: int64
            minimum: 0
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataResponsePolymarketEvent'
          description: OK
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataAPIError'
          description: Error
      security:
        - AccessToken: []
components:
  schemas:
    DataResponsePolymarketEvent:
      additionalProperties: false
      properties:
        $schema:
          description: A URL to the JSON Schema for this object.
          examples:
            - https://example.com/schemas/DataResponsePolymarketEvent.json
          format: uri
          readOnly: true
          type: string
        data:
          items:
            $ref: '#/components/schemas/PolymarketEvent'
          type:
            - array
            - 'null'
        meta:
          $ref: '#/components/schemas/OffsetMeta'
      required:
        - data
        - meta
      type: object
    DataAPIError:
      additionalProperties: false
      properties:
        $schema:
          description: A URL to the JSON Schema for this object.
          examples:
            - https://example.com/schemas/DataAPIError.json
          format: uri
          readOnly: true
          type: string
        error:
          $ref: '#/components/schemas/DataAPIErrorDetail'
      required:
        - error
      type: object
    PolymarketEvent:
      additionalProperties: false
      properties:
        category:
          description: Surf curated event category
          type: string
        description:
          description: Event description
          type: string
        end_time:
          description: Event end time (Unix seconds)
          format: int64
          type: integer
        event_slug:
          description: Event identifier slug
          type: string
        image:
          description: Event image URL
          type: string
        market_count:
          description: Number of markets in this event
          format: int64
          type: integer
        markets:
          description: Markets within this event
          items:
            $ref: '#/components/schemas/PolymarketMarketItem'
          type:
            - array
            - 'null'
        settlement_sources:
          description: Resolution source URL
          type: string
        start_time:
          description: Event start time (Unix seconds)
          format: int64
          type: integer
        status:
          description: >-
            Event status: `open` if any market is open, `closed` if all markets
            are closed
          type: string
        subcategory:
          description: Surf curated event subcategory
          type: string
        tags:
          description: Event tags
          items:
            type: string
          type:
            - array
            - 'null'
        title:
          description: Event title
          type: string
        volume_total:
          description: Total event volume across all markets (USD)
          format: double
          type: number
      required:
        - event_slug
        - title
        - status
        - volume_total
        - market_count
        - markets
      type: object
    OffsetMeta:
      additionalProperties: false
      properties:
        cached:
          description: Whether this response was served from cache
          type: boolean
        credits_used:
          description: Credits deducted for this request
          format: int64
          type: integer
        limit:
          description: Maximum number of items returned in this response
          format: int64
          type: integer
        offset:
          description: Number of items skipped (pagination offset)
          format: int64
          type: integer
        total:
          description: >-
            Total number of matching items (before pagination). Omitted when
            total is unknown.
          format: int64
          type: integer
      required:
        - limit
        - offset
        - credits_used
        - cached
      type: object
    DataAPIErrorDetail:
      additionalProperties: false
      properties:
        code:
          type: string
        message:
          type: string
      required:
        - code
        - message
      type: object
    PolymarketMarketItem:
      additionalProperties: false
      properties:
        category:
          description: Surf curated market category
          type: string
        close_time:
          description: Market close time (Unix seconds)
          format: int64
          type: integer
        completed_time:
          description: Resolution time (Unix seconds)
          format: int64
          type: integer
        condition_id:
          description: Unique condition identifier
          type: string
        description:
          description: Market description
          type: string
        end_time:
          description: Market end time (Unix seconds)
          format: int64
          type: integer
        event_slug:
          description: Event identifier slug
          type: string
        game_start_time:
          description: Game start time for sports markets (Unix seconds)
          format: int64
          type: integer
        image:
          description: Market image URL
          type: string
        market_slug:
          description: Market identifier slug
          type: string
        negative_risk_id:
          description: Negative risk market identifier
          type: string
        polymarket_link:
          description: Link to Polymarket page
          type: string
        resolution_source:
          description: URL to resolution data source
          type: string
        side_a:
          $ref: '#/components/schemas/PolymarketMarketSide'
          description: First outcome
        side_b:
          $ref: '#/components/schemas/PolymarketMarketSide'
          description: Second outcome
        start_time:
          description: Market start time (Unix seconds)
          format: int64
          type: integer
        status:
          description: 'Market status: `open` or `closed`'
          type: string
        subcategory:
          description: Surf curated market subcategory
          type: string
        tags:
          description: Market tags
          items:
            type: string
          type:
            - array
            - 'null'
        title:
          description: Market title
          type: string
        volume_1_month:
          description: Trading volume in the past month (USD)
          format: double
          type: number
        volume_1_week:
          description: Trading volume in the past week (USD)
          format: double
          type: number
        volume_1_year:
          description: Trading volume in the past year (USD)
          format: double
          type: number
        volume_total:
          description: Total trading volume (USD)
          format: double
          type: number
        winning_side:
          description: Winning outcome label, if resolved
          type: string
      required:
        - market_slug
        - condition_id
        - title
        - volume_1_week
        - volume_1_month
        - volume_1_year
        - volume_total
        - status
      type: object
    PolymarketMarketSide:
      additionalProperties: false
      properties:
        id:
          description: Token identifier for this outcome
          type: string
        label:
          description: Outcome label
          type: string
      required:
        - id
        - label
      type: object

````