Skip to main content
GET
/
api
/
search
Search events
curl --request GET \
  --url http://localhost:8000/api/search \
  --header 'Authorization: Bearer <token>'
{
  "data": [
    {
      "id": "pear_a1b2c3d4",
      "slug": "bitcoin-100k-2025",
      "title": "Bitcoin to reach $100K in 2025",
      "description": "Will Bitcoin reach $100,000 at any point during 2025?",
      "category": "Crypto",
      "source_type": "matched",
      "venue_event_ids": {
        "kalshi": "BTC-100K-2025",
        "polymarket": "0xbtc100k"
      }
    },
    {
      "id": "pear_e5f6g7h8",
      "slug": "bitcoin-etf-inflows-q1",
      "title": "Bitcoin ETF Net Inflows Q1 2025",
      "description": "Total net inflows into spot Bitcoin ETFs during Q1 2025.",
      "category": "Crypto",
      "source_type": "kalshi_only",
      "venue_event_ids": {
        "kalshi": "BTC-ETF-Q1"
      }
    }
  ],
  "total_count": 2
}

Authorizations

Authorization
string
header
required

Use your API key as a Bearer token. Example: Authorization: Bearer mk_live_...

Query Parameters

q
string
required

Search query string. Matches against event titles and descriptions.

Minimum string length: 1
Example:

"bitcoin"

venue
enum<string>

Filter results to events available on a specific venue.

Available options:
kalshi,
polymarket
category
string

Filter results by event category.

Example:

"Crypto"

limit
integer
default:20

Maximum number of results to return.

Required range: 1 <= x <= 200

Response

Search results matching the query.

data
object[]
total_count
integer

Total number of matching events.