{
  "openapi": "3.0.1",
  "info": {
    "title": "Eventbrite Events Scraper — Search, Venue, Organizer & Tickets",
    "description": "Scrape Eventbrite events by URL, city, category, date, or free-text search. Returns 30+ fields per event: title, ISO dates, venue with GPS coords, organizer, ticket prices, tags, images. Three input modes, pagination to ~1K events. MCP-ready, auth-free.",
    "version": "0.4",
    "x-build-id": "lvVTTK9Ne3iP1ShDP"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/khadinakbar~eventbrite-events-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-khadinakbar-eventbrite-events-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/khadinakbar~eventbrite-events-scraper/runs": {
      "post": {
        "operationId": "runs-sync-khadinakbar-eventbrite-events-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/khadinakbar~eventbrite-events-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-khadinakbar-eventbrite-events-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "searchQuery": {
            "title": "Search query",
            "type": "string",
            "description": "Free-text keyword to search Eventbrite (e.g., 'tech conference', 'jazz concert', 'startup meetup'). Combined with location and date filters when provided. Leave empty when using startUrls or browsing by category alone. NOT an event ID and NOT an Eventbrite URL — for those use startUrls instead."
          },
          "location": {
            "title": "Location",
            "type": "string",
            "description": "City or country slug used by Eventbrite (e.g., 'ny--new-york', 'ca--san-francisco', 'united-kingdom--london', 'united-states', 'online'). Format is two letters for state/region, double hyphen, then city name in lowercase with hyphens. Defaults to 'united-states' when omitted. NOT a free-text city name — must be the URL slug."
          },
          "category": {
            "title": "Category",
            "enum": [
              "",
              "music",
              "business",
              "food-and-drink",
              "community",
              "arts",
              "film-and-media",
              "sports-and-fitness",
              "health",
              "science-and-tech",
              "travel-and-outdoor",
              "charity-and-causes",
              "spirituality",
              "family-and-education",
              "seasonal",
              "government",
              "fashion",
              "home-and-lifestyle",
              "auto-boat-and-air",
              "hobbies",
              "school-activities",
              "other"
            ],
            "type": "string",
            "description": "Eventbrite category slug to filter results (e.g., 'music', 'business', 'food-and-drink', 'health', 'arts', 'sports-and-fitness'). Leave empty for all categories. NOT a custom keyword — use searchQuery for that. See https://www.eventbrite.com/d/online/all-events/ for full list."
          },
          "dateFilter": {
            "title": "Date filter",
            "enum": [
              "",
              "today",
              "tomorrow",
              "this-weekend",
              "this-week",
              "next-week",
              "this-month",
              "next-month"
            ],
            "type": "string",
            "description": "Date-range filter applied on top of search results. One of the predefined Eventbrite ranges (e.g., 'today', 'this-weekend', 'next-month'). Leave empty to include all upcoming events. NOT a YYYY-MM-DD date — Eventbrite browse pages only support predefined ranges."
          },
          "format": {
            "title": "Event format",
            "enum": [
              "",
              "class",
              "conference",
              "festival",
              "performance",
              "screening",
              "seminar",
              "tournament",
              "convention",
              "expo",
              "game",
              "party",
              "rally",
              "tour",
              "race",
              "attraction",
              "camp-trip-or-retreat",
              "dinner-or-gala",
              "networking",
              "appearance-or-signing",
              "other"
            ],
            "type": "string",
            "description": "Event format filter (e.g., 'conference', 'festival', 'class', 'networking'). Combined with category and location filters. Leave empty to include all formats. NOT an online-only flag — use the 'onlineOnly' boolean for that."
          },
          "priceFilter": {
            "title": "Price filter",
            "enum": [
              "",
              "free",
              "paid"
            ],
            "type": "string",
            "description": "Filter by free or paid events only. Leave empty to include both. NOT a numeric price range — Eventbrite browse pages do not support arbitrary price ranges."
          },
          "onlineOnly": {
            "title": "Online events only",
            "type": "boolean",
            "description": "Restrict results to virtual/online events. When true, location is ignored. Defaults to false (both in-person and online included).",
            "default": false
          },
          "startUrls": {
            "title": "Start URLs (advanced)",
            "type": "array",
            "description": "Direct Eventbrite browse URLs or event page URLs to scrape. Use this for custom search filters not exposed by this Actor's inputs, or to scrape specific event detail pages. Any URL parameters are preserved (e.g., '?page=2'). Mutually exclusive with searchQuery and location — provide either startUrls OR the filter inputs, not both.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "maxResults": {
            "title": "Max results",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Maximum number of events to return. Eventbrite browse pages return 20 events per page with up to 49 pages per query (~1,000 events max per filter combination). Default 50 keeps run cost low for typical agent calls. Set higher for bulk extraction.",
            "default": 50
          },
          "includeDetails": {
            "title": "Include detail-page enrichment",
            "type": "boolean",
            "description": "Fetch each event's detail page to extract full description, organizer name and profile URL, ticket tiers with prices, and structured pricing currency. When false, returns only browse-page fields (still 25+ fields). Adds one HTTP request per event but no extra event charge.",
            "default": true
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Apify proxy settings. Defaults to RESIDENTIAL group for reliability against Cloudflare image CDN. Datacenter works for low-volume runs but may get rate-limited at scale.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ]
            }
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}