Facebook Events
GET /v1/facebook/event-search

Facebook Event Search API

Search Facebook events by topic and city — local startDate/timezone, venue. 2 credits.

2 credits per request
TL;DR
Search Facebook events by topic and city — local startDate/timezone, venue. 2 credits. The Facebook Event Search API (Facebook Events) is a single authenticated GET request to /v1/facebook/event-search that responds with clean JSON and costs 2 credits. Pass cache=true for a free 24h cache hit; default is always fresh. Start with 100 free credits — no credit card.

What is the Facebook Event Search API?

Search public Facebook events with a topic query (e.g. comedy) and optional location / from / to / upcoming filters. Each result uses the same Event shape as Event Details and Profile Events — every field present, null when Facebook omits it: startDate/endDate as ISO with the host timezone offset (calendar day matches startTime — evening CDT events do not roll to the next UTC day), IANA timezone (from venue lat/lng when present — never Etc/*), startTime (always includes the year), isPast, eventType (discovery category, e.g. Comedy), visibility (public|private|friends|… from Facebook's *_TYPE), location{name,city,latitude,longitude,countryCode} (all five keys always — null when unknown), description, image, organizers, ticketsUrl, categories, and usersGoing/usersInterested when exposed. Relative labels like "Happening now" are never returned as startTime. Billing: flat 2 credits on every successful call — check source / x-captapi-source (native|extended). Envelope timings{serpMs,hydrateMs,hydrateAttempts,discoveryMs,totalMs,path} exposes per-stage latency. Set client timeouts ≥130s until typical searches stay under 60s.

What you get

  • Ranked, structured result list
  • Title, URL, author, and thumbnail per result when available
  • Engagement metrics where the platform exposes them
  • Configurable result limit

Platform limits

Honest ceilings from the upstream platform surface — not Captapi bugs. Unexpected truncation here is usually the platform, not us.

  • Facebook/SERP discovery can return past events. Use upcoming=true (sets from=today UTC) or from=YYYY-MM-DD for a forward window, or filter client-side on isPast — same pattern as playCount absence on Spotify search.
  • timezone is a real IANA zone or null — never Etc/GMT. Prefer location.latitude/longitude → IANA when coords exist.
  • location is a geo filter (timezone / city / coords near the place) — not a required substring of the event title. Most London venues do not contain "London" in their name.
  • Client timeouts ≥130s recommended — native path hydrates event pages (timings.hydrateMs is usually the dominant stage).

Try it

Open in Playground

Fill in the parameters below and copy a ready-to-run request, or open the live Playground to run it against your account (no API key paste).

Parameters

Sign in to run live
curl "https://api.captapi.com/v1/facebook/event-search?q=comedy%20Chicago" \
  -H "Authorization: Bearer capt_live_..."
# or: -H "x-api-key: capt_live_..."

Edit the parameters and the code updates instantly. Switch languages and hit copy.

Example response

{
  "success": true,
  "data": {
    "query": "comedy Chicago",
    "location": "Chicago",
    "totalReturned": 5,
    "events": [
      {
        "platform": "facebook",
        "id": "1501904507609251",
        "url": "https://www.facebook.com/events/1501904507609251/",
        "name": "The Best of Chicago Comedy Showcase at Zanies Rosemont",
        "description": "Get ready for an unforgettable evening of laughter as Chicago's comedy scene brings its A-game to the stage! \"The Best of Chicago Showcase\" features a dynamic lineup of the city's funniest stand-up comedians, delivering a blend of fresh, cutting-edge material and beloved, time-tested jokes.",
        "startDate": "2026-08-19T19:00:00-05:00",
        "endDate": "2026-08-19T20:30:00-05:00",
        "timezone": "America/Chicago",
        "startTime": "Wednesday 19 August 2026 from 19:00-20:30 CDT",
        "duration": "1 hr 30 min",
        "durationSeconds": 5400,
        "eventType": "Comedy",
        "isOnline": false,
        "isPast": false,
        "isCanceled": false,
        "address": "5437 Park Pl, Des Plaines, IL 60018-3732, United States",
        "image": "https://lookaside.fbsbx.com/lookaside/crawler/media/?media_id=1501904507609251",
        "location": {
          "name": "5437 Park Place, Rosemont, IL, United States, Illinois 60018",
          "city": "Rosemont, IL",
          "latitude": 41.97826,
          "longitude": -87.86738,
          "countryCode": "US"
        },
        "organizers": [
          {
            "id": "100064546187809",
            "name": "Zanies Rosemont Comedy Club",
            "url": "https://www.facebook.com/RosemontZanies",
            "verified": false
          }
        ],
        "ticketsUrl": "https://www.etix.com/ticket/p/74170542/the-best-of-chicago-showcase-rosemont-zanies-rosemont",
        "categories": [
          {
            "label": "Comedy",
            "url": "https://www.facebook.com/events/search/?filters=eyJmaWx0ZXJfZXZlbnRzX2NhdGVnb3J5OjAiOiJ7XCJuYW1lXCI6XCJmaWx0ZXJfZXZlbnRzX2NhdGVnb3J5XCIsXCJhcmdzXCI6XCI2NjAwMzI2MTc1MzYzNzNcIn0ifQ%3D%3D&q=Comedy"
          }
        ]
      },
      {
        "platform": "facebook",
        "id": "1345542687414105",
        "url": "https://www.facebook.com/events/1345542687414105/",
        "name": "Anthony Mrocka at Zanies Rosemont",
        "startDate": "2026-08-05T19:00:00-05:00",
        "timezone": "America/Chicago",
        "startTime": "Wed, Aug 5 at 7:00 PM CDT",
        "eventType": "PUBLIC_TYPE",
        "isPast": false,
        "isCanceled": false,
        "location": {
          "name": "5437 Park Place, Rosemont, IL, United States, Illinois 60018",
          "city": "Rosemont, IL",
          "countryCode": "US"
        },
        "organizers": [
          {
            "id": "100064546187809",
            "name": "Zanies Rosemont Comedy Club",
            "url": "https://www.facebook.com/RosemontZanies",
            "verified": false
          }
        ]
      }
    ]
  }
}

Billing metadata is returned in response headers: X-Captapi-Credits (credits charged), X-Captapi-Cache (hit or miss), and X-Captapi-Source. Failed requests (4xx/5xx) are never charged. See the full list of error codes in the error reference.

Response structure

A successful call returns success, cached, creditsUsed, and a data object with the following fields:

Top-level fields

  • queryThe search query you sent.
  • locationVenue block {name, city, latitude, longitude, countryCode} — all five keys always.
  • totalReturnedNumber of items returned in this response.

Events

Each item in events contains:

  • platformPlatform identifier for this response (matches the endpoint's platform).
  • idStable platform ID for the item.
  • urlCanonical URL of the item.
  • nameName of the item or account. On profile endpoints: deprecated alias of displayName (one release).
  • descriptionDescription text.
  • startDateEvent start as ISO-8601 with the host timezone offset (e.g. 2026-07-27T19:45:00-05:00). Calendar day matches startTime — not UTC midnight.
  • endDateEvent end as ISO-8601 with the same host timezone offset when available (null when unknown).
  • timezoneIANA timezone from venue coords or the startTime abbreviation (e.g. America/Chicago for CDT).
  • startTimeAbsolute local schedule sentence that always includes the year — never relative labels like Happening now.
  • durationHuman duration when start/end are known; null otherwise.
  • durationSecondsLength in seconds for this item (full media length, or a segment span when the endpoint documents a start/end).
  • eventTypeDiscovery category (e.g. Comedy). Null when unknown — never PUBLIC_TYPE.
  • isOnlineIs online. Example: false.
  • isPastWhether the event start is in the past.
  • isCanceledIs canceled. Example: false.
  • addressAddress.
  • imageImage URL.
  • locationVenue block {name, city, latitude, longitude, countryCode} — all five keys always.
  • organizersArray of objects with id, name, url, verified.
  • ticketsUrlTickets url URL.
  • categoriesArray of objects with label, url.

Parameters

NameTypeRequiredDescription
qstringYesTopic keyword, e.g. 'comedy'. Pair with location for city-scoped results.
locationstringNoCity/place geo filter (e.g. London). Matches timezone, location.city, or coords near the city — not a title substring.
fromstringNoInclusive local start date filter YYYY-MM-DD. Use for upcoming-only windows — Facebook/SERP may return past events.
tostringNoInclusive local start date filter YYYY-MM-DD.
upcomingbooleanNoWhen true and from is omitted, sets from to today's UTC date so past events are dropped.
limitintegerNoMax items to return (default 20, max 200). Flat 2 credits per call. Response `source` is native or extended (fetch path — not a price change).
cachebooleanNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits.

Authentication: send your key as Authorization: Bearer capt_live_.... A typical call costs 2 credits. Pass cache=true for a free 24h cache hit; default is always fresh.

Using an AI agent? This endpoint is the MCP tool facebook_event_search via @captapi/mcp. Set it up →

How it works

  1. 1. Sign up — get 100 free credits, no card required.
  2. 2. Create a key from your dashboard.
  3. 3. Send one request to /v1/facebook/event-search and parse the JSON response.

Use cases

Local Discovery

Find public events by topic + city (comedy Chicago) for weekend guides.

Date-Window Ingest

Filter with from/to on local startDate for this-week calendars.

Venue Research

Collect going/interested signals when Facebook exposes them.

Frequently asked questions

What does the Facebook Event Search API do?+

The Facebook Event Search API lets you search and return matching results from a public Facebook Events query using one GET request to /v1/facebook/event-search. It returns clean JSON — no OAuth or infrastructure setup required.

How many credits does the Facebook Event Search API cost?+

Each successful call costs 2 credits. Pass cache=true to serve from the 24h cache (0 credits on hit); default is always fresh. Hits include cached + cachedAt. Selected profile endpoints also accept cacheMaxAge=1d|3d|7d|14d|30d. Failed or empty results are never charged.

Do I need a Facebook Events API key or OAuth?+

No. A single Captapi key works across every platform Captapi supports — YouTube, TikTok, Instagram, Facebook, Twitter/X, Reddit, Threads, Bluesky, Pinterest, LinkedIn, Rumble, Spotify, Kwai, and more. We handle proxies, rate limits, retries, and authentication for you.

Is the Facebook Event Search API suitable for production use?+

Yes. It is a stable REST endpoint with predictable JSON and automatic retries. Pass cache=true to serve from the 24h cache (0 credits on hit); default is always fresh. Hits include cached + cachedAt. Selected profile endpoints also accept cacheMaxAge=1d|3d|7d|14d|30d. Use it for analytics, monitoring, and content automation.

More Facebook Events APIs

Ready to use the Facebook Event Search API?

Sign up, grab your key, and make your first call in 60 seconds.