{
  "openapi": "3.0.1",
  "info": {
    "title": "Eventbrite Scraper — Events, Search & Organizers",
    "description": "Scrape Eventbrite events by country and city, keyword, category, or format. Export dates, venues, GPS, ticket prices, cover images, and organizer websites. Optional profiles add social links, follower counts, and events hosted.",
    "version": "0.1",
    "x-build-id": "TcYVDwPZWa2TAyVdm"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/crawloop~eventbrite-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-crawloop-eventbrite-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/crawloop~eventbrite-scraper/runs": {
      "post": {
        "operationId": "runs-sync-crawloop-eventbrite-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/crawloop~eventbrite-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-crawloop-eventbrite-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": {
          "country": {
            "title": "Country",
            "type": "string",
            "description": "Country slug, e.g. spain, germany, united-states. Combined with City. Ignored when Location slug is set."
          },
          "city": {
            "title": "City",
            "type": "string",
            "description": "City name, e.g. barcelona, berlin, new york. Ignored when Location slug is set."
          },
          "location": {
            "title": "Location slug",
            "type": "string",
            "description": "Optional Eventbrite place slug from a /d/ URL, e.g. ny--new-york, germany--berlin, online. Overrides Country and City."
          },
          "searchQueries": {
            "title": "Search queries",
            "type": "array",
            "description": "Keywords combined with location (e.g. music, conference, startup).",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "startUrls": {
            "title": "Start URLs",
            "type": "array",
            "description": "Event (/e/), organizer (/o/), or destination (/d/…/all-events/) URLs. Auto-detected.",
            "default": [],
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "eventUrls": {
            "title": "Event URLs",
            "type": "array",
            "description": "Direct event pages such as https://www.eventbrite.com/e/example-tickets-123.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "organizerUrls": {
            "title": "Organizer URLs",
            "type": "array",
            "description": "Public organizer profiles (/o/slug-id). Upcoming events on the page are collected.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "dateFilter": {
            "title": "Date filter",
            "enum": [
              "",
              "current_future",
              "today",
              "tomorrow",
              "this_week",
              "this_weekend",
              "next_week",
              "this_month",
              "next_month"
            ],
            "type": "string",
            "description": "Eventbrite search date bucket. Empty means today through the next 7 days. Use startDate/endDate for a custom window.",
            "default": ""
          },
          "startDate": {
            "title": "Start date (YYYY-MM-DD)",
            "type": "string",
            "description": "Optional custom range start (YYYY-MM-DD). Overrides the date bucket. If End date is empty, the window runs for one year from this date.",
            "default": ""
          },
          "endDate": {
            "title": "End date (YYYY-MM-DD)",
            "type": "string",
            "description": "Optional custom range end (YYYY-MM-DD). If Start date is empty, the window starts today.",
            "default": ""
          },
          "category": {
            "title": "Category",
            "enum": [
              "",
              "business",
              "science-and-tech",
              "music",
              "film-and-media",
              "performing-and-visual-arts",
              "fashion",
              "health",
              "sports-and-fitness",
              "travel-and-outdoor",
              "food-and-drink",
              "charity-and-causes",
              "government",
              "community",
              "spirituality",
              "family-and-education",
              "holiday",
              "home-and-lifestyle",
              "auto-boat-and-air",
              "hobbies",
              "school-activities",
              "other"
            ],
            "type": "string",
            "description": "Eventbrite category slug. Empty = all. Numeric ids such as 103 still work.",
            "default": ""
          },
          "eventFormat": {
            "title": "Format",
            "enum": [
              "",
              "conference",
              "seminar",
              "tradeshow",
              "convention",
              "festival",
              "concert",
              "screening",
              "dinner",
              "class",
              "networking",
              "party",
              "game",
              "race",
              "tour",
              "attraction",
              "camp",
              "appearance"
            ],
            "type": "string",
            "description": "Event format. Empty = all. Examples: conference, festival, networking, concert, class, party.",
            "default": ""
          },
          "price": {
            "title": "Price",
            "enum": [
              "",
              "free",
              "paid"
            ],
            "type": "string",
            "description": "Keep free or paid listings only.",
            "default": ""
          },
          "onlineOnly": {
            "title": "Online events only",
            "type": "boolean",
            "description": "Restrict search to online events.",
            "default": false
          },
          "scrapeDetails": {
            "title": "Scrape event page details",
            "type": "boolean",
            "description": "Fetch each event page for venue GPS fallback, organizer attendee counts, description, and offer price range. Extra request per event. Event URLs always include details.",
            "default": false
          },
          "enrichOrganizers": {
            "title": "Enrich organizers",
            "type": "boolean",
            "description": "Load each unique organizer profile once: website, social links, follower count, events hosted, and years on Eventbrite. Billed per organizer, not per event. No email addresses.",
            "default": false
          },
          "includeDescriptionHtml": {
            "title": "Include description HTML",
            "type": "boolean",
            "description": "Add descriptionHtml when details are scraped.",
            "default": false
          },
          "maxItems": {
            "title": "Max events",
            "minimum": 0,
            "type": "integer",
            "description": "Hard cap across all inputs. 0 = unlimited (still ~10k per search query).",
            "default": 50
          },
          "maxPages": {
            "title": "Max search pages per query",
            "minimum": 0,
            "type": "integer",
            "description": "Each page is 20 events. 0 = Eventbrite search cap (~49 pages / 10k).",
            "default": 0
          },
          "monitorMode": {
            "title": "Monitor mode (only new & changed)",
            "type": "boolean",
            "description": "Remember events between runs and emit only NEW or CHANGED rows (price, sold-out, dates, name).",
            "default": false
          },
          "monitorKey": {
            "title": "Monitor memory key",
            "type": "string",
            "description": "Distinct key per saved search so monitors do not share state.",
            "default": "default"
          },
          "requestDelaySecs": {
            "title": "Request delay (seconds)",
            "minimum": 0,
            "type": "number",
            "description": "Throttle between HTTP requests.",
            "default": 0.2
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Public search and event pages usually work without a proxy. Enable Apify Proxy only if you hit HTTP 401/403/429.",
            "default": {
              "useApifyProxy": false
            }
          }
        }
      },
      "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}