{
  "data": {
    "id": "YIZcGf6vV9scjnndX",
    "actId": "Qz84xhu3gEOfly0MW",
    "userId": "NL4ThgItAwaoBlffQ",
    "startedAt": "2026-11-07T18:01:07.116Z",
    "finishedAt": "2026-11-07T18:01:30.214Z",
    "status": "SUCCEEDED",
    "meta": {
      "origin": "CLI"
    },
    "stats": {
      "durationMillis": 22901,
      "runTimeSecs": 22.901,
      "computeUnits": 0.025445555555555555,
      "imageSizeBytes": 358159872
    },
    "options": {
      "useCache": true,
      "betaPackages": false,
      "memoryMbytes": 4096,
      "diskMbytes": 8192
    },
    "createdByOrganizationMemberUserId": "zifX0mkAFMHe8CatY",
    "exitCode": 0,
    "inputSchema": "{\n  \"title\": \"Ticketmaster Event Finder Input\",\n  \"description\": \"Choose what to collect — keyword results, a category, an artist calendar, a venue calendar, exact events or name suggestions — then filter and enrich the records.\",\n  \"type\": \"object\",\n  \"schemaVersion\": 1,\n  \"properties\": {\n    \"mode\": {\n      \"title\": \"What to collect\",\n      \"type\": \"string\",\n      \"description\": \"Pick the lookup path. `Search` uses a keyword; `Category` browses one or more top-level categories; `Artist` and `Venue` read their public calendars; `Event` returns full detail for exact IDs/URLs; `Suggestions` returns matching artists and venues.\",\n      \"editor\": \"select\",\n      \"sectionCaption\": \"What to scrape\",\n      \"enum\": [\n        \"search\",\n        \"category\",\n        \"artist\",\n        \"venue\",\n        \"event\",\n        \"suggestions\"\n      ],\n      \"enumTitles\": [\n        \"Search by keyword\",\n        \"Browse by category\",\n        \"Artist calendar\",\n        \"Venue calendar\",\n        \"Event details by ID or URL\",\n        \"Name suggestions\"\n      ],\n      \"default\": \"search\",\n      \"prefill\": \"search\"\n    },\n    \"searchQuery\": {\n      \"title\": \"Search query\",\n      \"type\": \"string\",\n      \"description\": \"Artist, team, show, genre or a combined phrase such as `taylor swift`, `lakers` or `comedy austin`. Used by `Search` and `Suggestions` modes. Legacy tasks that send `keyword` still work.\",\n      \"editor\": \"textfield\",\n      \"default\": \"\",\n      \"prefill\": \"concerts\"\n    },\n    \"categories\": {\n      \"title\": \"Categories\",\n      \"type\": \"array\",\n      \"description\": \"Top-level Ticketmaster categories. In `Category` mode each selected value is browsed; in `Search`, `Artist` and `Venue` modes the results are filtered to these categories.\",\n      \"editor\": \"select\",\n      \"items\": {\n        \"type\": \"string\",\n        \"enum\": [\n          \"concerts\",\n          \"sports\",\n          \"arts-theater\",\n          \"family\",\n          \"film\",\n          \"miscellaneous\"\n        ]\n      },\n      \"default\": []\n    },\n    \"artistIds\": {\n      \"title\": \"Artist IDs or URLs\",\n      \"type\": \"array\",\n      \"description\": \"Artist/attraction IDs or Ticketmaster artist URLs, e.g. `735585` or `https://www.ticketmaster.com/barry-manilow-tickets/artist/735585` (mode=artist).\",\n      \"editor\": \"stringList\",\n      \"default\": []\n    },\n    \"venueIds\": {\n      \"title\": \"Venue IDs or URLs\",\n      \"type\": \"array\",\n      \"description\": \"Venue IDs or Ticketmaster venue URLs, e.g. `107143` or `https://www.ticketmaster.com/hertz-arena-tickets-estero/venue/107143` (mode=venue).\",\n      \"editor\": \"stringList\",\n      \"default\": []\n    },\n    \"eventIds\": {\n      \"title\": \"Event IDs or URLs\",\n      \"type\": \"array\",\n      \"description\": \"Event IDs, discovery IDs or Ticketmaster event URLs, e.g. `0D00632F271D385A` or `https://www.ticketmaster.com/event/0D00632F271D385A` (mode=event).\",\n      \"editor\": \"stringList\",\n      \"default\": []\n    },\n    \"startUrls\": {\n      \"title\": \"Start URLs (optional)\",\n      \"type\": \"array\",\n      \"description\": \"Ticketmaster search, artist, venue, event or category URLs to process instead of the mode targets. Each URL is routed automatically, and several can be mixed in one run.\",\n      \"editor\": \"stringList\",\n      \"default\": []\n    },\n    \"dateFrom\": {\n      \"title\": \"Events from\",\n      \"type\": \"string\",\n      \"description\": \"Only keep events on or after this date (`YYYY-MM-DD`). Leave empty for no lower bound. In Category and Event modes the filter is applied to the returned rows.\",\n      \"editor\": \"textfield\",\n      \"sectionCaption\": \"Filters\",\n      \"pattern\": \"^\\\\d{4}-\\\\d{2}-\\\\d{2}$\",\n      \"nullable\": true\n    },\n    \"dateTo\": {\n      \"title\": \"Events until\",\n      \"type\": \"string\",\n      \"description\": \"Only keep events on or before this date (`YYYY-MM-DD`). Leave empty for no upper bound.\",\n      \"editor\": \"textfield\",\n      \"pattern\": \"^\\\\d{4}-\\\\d{2}-\\\\d{2}$\",\n      \"nullable\": true\n    },\n    \"sort\": {\n      \"title\": \"Sort order\",\n      \"type\": \"string\",\n      \"description\": \"`Relevance` keeps Ticketmaster's search ranking; `Date` orders by the soonest event first. Legacy sorts such as `date,asc` are mapped to Date.\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"relevance\",\n        \"date\",\n        \"date,asc\",\n        \"date,desc\",\n        \"name,asc\",\n        \"name,desc\",\n        \"venueName,asc\",\n        \"random\"\n      ],\n      \"enumTitles\": [\n        \"Relevance (default)\",\n        \"Date (soonest first)\",\n        \"Date ascending (legacy — same as Date)\",\n        \"Date descending (legacy — soonest first)\",\n        \"Name A-Z (legacy — relevance)\",\n        \"Name Z-A (legacy — relevance)\",\n        \"Venue name (legacy — relevance)\",\n        \"Random (legacy — relevance)\"\n      ],\n      \"default\": \"relevance\",\n      \"prefill\": \"relevance\"\n    },\n    \"maxResults\": {\n      \"title\": \"Maximum records\",\n      \"type\": \"integer\",\n      \"description\": \"Hard cap on records emitted across every target in the run. Ticketmaster serves 20 events per page and stops at 980 rows per query; use a narrower date range or more categories to go wider.\",\n      \"default\": 20,\n      \"prefill\": 3,\n      \"minimum\": 1,\n      \"maximum\": 1000\n    },\n    \"skipSoldOut\": {\n      \"title\": \"Skip sold-out events\",\n      \"type\": \"boolean\",\n      \"description\": \"Drop events Ticketmaster flags as sold out.\",\n      \"default\": false,\n      \"prefill\": false\n    },\n    \"skipCancelled\": {\n      \"title\": \"Skip cancelled / postponed\",\n      \"type\": \"boolean\",\n      \"description\": \"Drop cancelled, postponed and rescheduled events.\",\n      \"default\": true,\n      \"prefill\": true\n    },\n    \"usOnly\": {\n      \"title\": \"United States only\",\n      \"type\": \"boolean\",\n      \"description\": \"Keep only events at US venues. Turn this off to include international results that Ticketmaster returns alongside US listings.\",\n      \"default\": true,\n      \"prefill\": true\n    },\n    \"includeDetails\": {\n      \"title\": \"Include full event details\",\n      \"type\": \"boolean\",\n      \"description\": \"Fetch each event's detail record and primary price levels: description, genre/classification, doors time, images, seat map, venue address and min/max price. Adds up to two requests per event. Leave off for the fastest, cheapest run.\",\n      \"sectionCaption\": \"Detail enrichment\",\n      \"default\": true,\n      \"prefill\": false\n    }\n  },\n  \"required\": []\n}",
    "readme": "# Ticketmaster US Event & On-Sale Date Finder\n\nCollect upcoming Ticketmaster events in the United States and turn them into clean, structured records: event and on-sale dates, presale windows, venue address and coordinates, performers, genre, images, sale status, and — when Ticketmaster publishes them — primary price levels.\n\nRun it without an API key, login, cookie, or proxy setup. It reads Ticketmaster's own public event endpoints and returns one row per event (or one row per name suggestion in Suggestions mode).\n\n## What you can collect\n\n| Mode | What it does | What to provide |\n|---|---|---|\n| **Search by keyword** | Artist, team, show, genre or a combined phrase such as `taylor swift`, `lakers`, `comedy austin` | `searchQuery` |\n| **Browse by category** | Music, Sports, Arts & Theatre, Family, Film or Miscellaneous | one or more `categories` |\n| **Artist calendar** | Every upcoming event for an artist or attraction | `artistIds` (IDs or Ticketmaster artist URLs) |\n| **Venue calendar** | Every upcoming event at a venue | `venueIds` (IDs or Ticketmaster venue URLs) |\n| **Event details** | Full record for exact events | `eventIds` (IDs, discovery IDs or Ticketmaster event URLs) |\n| **Name suggestions** | Matching artists, venues and events with counts | `searchQuery` |\n\nYou can also paste any Ticketmaster search, artist, venue, event or category URL into `startUrls`; the actor routes each URL automatically and can mix several URL types in one run.\n\n## Filters\n\n- **Date window** — `dateFrom` / `dateTo` (`YYYY-MM-DD`). Applied by Ticketmaster for search, artist and venue modes; applied to the returned rows for category and event modes.\n- **Categories** — filter keyword, artist and venue results to one or more top-level categories.\n- **Sort** — relevance or soonest first.\n- **United States only** — on by default; turn it off to include the international listings Ticketmaster mixes into US results.\n- **Status cleanup** — optionally drop sold-out, cancelled, postponed or rescheduled events.\n- **Maximum records** — 1 to 1,000 per run.\n\n## Input\n\n| Field | Type | Default | Description |\n|---|---|---|---|\n| `mode` | select | `search` | `search`, `category`, `artist`, `venue`, `event` or `suggestions`. |\n| `searchQuery` | string | – | Artist, team, show or phrase. Used by Search and Suggestions. Legacy tasks that send `keyword` keep working. |\n| `categories` | multi-select | – | `concerts`, `sports`, `arts-theater`, `family`, `film`, `miscellaneous`. Targets in Category mode, filters elsewhere. |\n| `artistIds` | string list | – | Artist IDs or Ticketmaster artist URLs (mode=artist). |\n| `venueIds` | string list | – | Venue IDs or Ticketmaster venue URLs (mode=venue). |\n| `eventIds` | string list | – | Event IDs, discovery IDs or Ticketmaster event URLs (mode=event). |\n| `startUrls` | string list | – | Ticketmaster search/artist/venue/event/category URLs. Overrides `mode` targets. |\n| `dateFrom` / `dateTo` | string | – | Inclusive event-date window (`YYYY-MM-DD`). |\n| `sort` | select | `relevance` | `relevance` or `date` (soonest first). Legacy values such as `date,asc` are still accepted and mapped. |\n| `maxResults` | integer | `20` | 1–1,000 records across all targets. |\n| `skipSoldOut` | boolean | `false` | Drop sold-out events. |\n| `skipCancelled` | boolean | `true` | Drop cancelled, postponed and rescheduled events. |\n| `usOnly` | boolean | `true` | Keep only US-venue events. |\n| `includeDetails` | boolean | `true` | Add description, genre, doors time, images, seat map, venue address and price levels (up to two extra requests per event). |\n\n### Examples\n\nSearch with a date window and full details:\n\n```json\n{\n  \"mode\": \"search\",\n  \"searchQuery\": \"taylor swift\",\n  \"dateFrom\": \"2026-12-01\",\n  \"dateTo\": \"2027-12-31\",\n  \"sort\": \"date\",\n  \"maxResults\": 60,\n  \"includeDetails\": true\n}\n```\n\nBrowse sports events in a category:\n\n```json\n{\n  \"mode\": \"category\",\n  \"categories\": [\"sports\"],\n  \"maxResults\": 40\n}\n```\n\nArtist calendar by URL:\n\n```json\n{\n  \"mode\": \"artist\",\n  \"artistIds\": [\"https://www.ticketmaster.com/barry-manilow-tickets/artist/735585\"],\n  \"maxResults\": 30\n}\n```\n\nExact events:\n\n```json\n{\n  \"mode\": \"event\",\n  \"eventIds\": [\n    \"0D00632F271D385A\",\n    \"https://www.ticketmaster.com/event/1E00648A835556FD\"\n  ]\n}\n```\n\nMixed start URLs:\n\n```json\n{\n  \"startUrls\": [\n    \"https://www.ticketmaster.com/search?q=comedy&startDate=2026-12-01&endDate=2026-12-31\",\n    \"https://www.ticketmaster.com/hertz-arena-tickets-estero/venue/107143\",\n    \"https://www.ticketmaster.com/event/0D00632F271D385A\"\n  ],\n  \"maxResults\": 50\n}\n```\n\n## Output\n\nOne record per event. Empty fields are omitted — the actor never emits `null`, empty strings or sentinel values.\n\n| Field | Description |\n|---|---|\n| `recordType` | `event` or `suggestion`. |\n| `id` / `discoveryId` | Ticketmaster event identifiers. |\n| `title` | Event name. |\n| `url` / `sourceUrl` | Event page URL. |\n| `startDate` / `endDate` | Event start and end timestamps from Ticketmaster. |\n| `onsaleDate` / `offsaleDate` | Public on-sale and off-sale timestamps. |\n| `doorsDate` | Doors-open timestamp when published. |\n| `timezone` | Venue IANA time zone. |\n| `dateDisplay` / `spanMultipleDays` | How the date is displayed and whether the event spans days. |\n| `presaleDates` | `[{name, startDateTime, endDateTime}]` presale windows. |\n| `isCancelled` / `isPostponed` / `isRescheduled` / `isTBA` / `isVirtual` / `isSoldOut` / `limitedAvailability` | Sale and schedule flags. |\n| `ticketingStatus` / `eventChangeStatus` | Raw Ticketmaster status tokens. |\n| `eventType` / `productType` / `isGA` | Event type, product type and general-admission flag. |\n| `isResaleEnabled` / `faceValueResaleEnabled` / `transferDisabled` | Ticket transfer and resale flags. |\n| `venue` | Nested venue object: name, city, state, country, address, postal code, URL, image, coordinates, ID. |\n| `venueName` / `venueCity` / `venueState` / `venueCountry` / `venueCountryName` / `venueAddress` / `venuePostalCode` / `venueUrl` / `venueImageUrl` / `latitude` / `longitude` | Flattened venue fields for tables, maps and filters. |\n| `artists` | `[{name, url, imageUrl, id, discoveryId, rank}]`. |\n| `artistCount` / `performerNames` | Derived lineup counts and a comma-separated lineup. |\n| `classifications` | `[{segment, genre, subGenre, type, subType}]` from the event detail. |\n| `primaryCategory` / `subCategory` / `majorCategory` / `majorCategoryId` | Human-readable category and genre labels plus the ticketmaster category ID. |\n| `lowestPrice` / `highestPrice` / `priceCurrency` / `priceOfferCount` / `priceOffers` / `lowestResalePrice` | Primary price levels (base ticket price before fees) when Ticketmaster publishes offers. Protected access-code offers are ignored. |\n| `imageUrl` / `seatMapUrl` / `staticMapUrl` | Event image and seat-map URLs. |\n| `description` | Event notes when the organizer publishes them. |\n| `currency` / `marketCode` / `sourceName` | Currency and marketplace metadata. |\n| `local` / `sameRegion` / `partnerEvent` / `isPartner` | Region and partner-listing flags. |\n| `daysUntilEvent` | Whole days from now to the event start. Negative for past events. |\n| `scrapedAt` | ISO-8601 timestamp of the run. |\n\n### Sample record\n\n```json\n{\n  \"recordType\": \"event\",\n  \"id\": \"0D00632F271D385A\",\n  \"discoveryId\": \"vvG1VZbwHE6K-Q\",\n  \"title\": \"Manilow: The Last Estero Concerts\",\n  \"url\": \"https://www.ticketmaster.com/manilow-the-last-estero-concerts-estero-florida-01-16-2027/event/0D00632F271D385A\",\n  \"startDate\": \"2027-01-17T00:00:00Z\",\n  \"onsaleDate\": \"2025-09-26T14:00:00Z\",\n  \"timezone\": \"America/New_York\",\n  \"venueName\": \"Hertz Arena\",\n  \"venueCity\": \"Estero\",\n  \"venueState\": \"FL\",\n  \"venueCountry\": \"US\",\n  \"majorCategory\": \"concerts\",\n  \"classifications\": [\n    {\n      \"segment\": \"Music\",\n      \"genre\": \"Pop\",\n      \"subGenre\": \"Adult Contemporary\"\n    }\n  ],\n  \"artists\": [\n    {\n      \"name\": \"Barry Manilow\",\n      \"url\": \"https://www.ticketmaster.com/barry-manilow-tickets/artist/735585\",\n      \"id\": \"735585\"\n    }\n  ],\n  \"artistCount\": 1,\n  \"lowestPrice\": 110.0,\n  \"highestPrice\": 354.0,\n  \"priceCurrency\": \"USD\",\n  \"priceOfferCount\": 14,\n  \"description\": \"The Event Organizer has had to postpone your event...\",\n  \"scrapedAt\": \"2026-11-07T16:23:11+00:00\"\n}\n```\n\nSuggestion records use `recordType: \"suggestion\"` with `id`, `title`, `url`, `suggestionType`, `count`, `imageUrl`, and location fields when Ticketmaster provides them.\n\n## Use cases\n\n- Watch on-sale and presale windows for artists on a tour.\n- Build city or venue event calendars without visiting Ticketmaster.\n- Track sold-out, postponed and rescheduled events for alerts.\n- Enrich event datasets with venue coordinates, categories and price levels.\n- Research touring patterns and pricing across a date range.\n- Power event-discovery apps, newsletters and research notebooks.\n\n## FAQ\n\n**Do I need an API key or a Ticketmaster account?**\nNo. The actor reads Ticketmaster's publicly served event data. There is no login, cookie, token or API-key input.\n\n**Do I need to configure a proxy?**\nNo. The actor chooses its network path automatically; there is nothing to set up.\n\n**Why is a price missing for some events?**\nTicketmaster only publishes primary price levels for events with open inventory. Partner listings (TicketWeb, Universe) and some add-on products have no ticket offers, so price fields are omitted rather than estimated. The actor never invents a price.\n\n**Are prices the final checkout price?**\nNo. Price fields are Ticketmaster's published base ticket prices before service and processing fees. The event page adds those fees at checkout, so use the values to compare price levels rather than as a final quote.\n\n**Why did the run stop before `maxResults`?**\nTicketmaster serves 20 events per page and stops at page 48, so one query tops out at 980 rows. Narrow the date window, use more categories, or run separate queries to collect more. A page that Ticketmaster keeps rejecting is retried automatically; if it still fails, the run's status message says the query stopped early so you can rerun it.\n\n**Why are details missing for a specific event?**\nSome events are hosted by partner ticketing sites. Ticketmaster's public event detail endpoint does not return those records, so the actor keeps the search-level fields it can verify and omits the rest.\n\n**Does it return international events?**\nThe actor is positioned for the US market and keeps US venues by default. Turn off `usOnly` to include the international listings Ticketmaster returns on the US site.\n\n**What happens with duplicate IDs or mixed URLs?**\nDuplicates are removed by event ID across all targets, and mixed `startUrls` are merged into one dataset. With several targets, `maxResults` is split evenly and any unused share rolls over to the next target.\n\n**Are old tasks still compatible?**\nYes. Legacy inputs using `keyword`, `dateFrom`, `dateTo`, `categories`, `sort` values such as `date,asc`, `skipSoldOut`, `skipCancelled` and `maxResults` keep running; renamed keys are mapped inside the actor.\n\n## Limitations\n\n- 980 rows per query (Ticketmaster's page ceiling). Split by date range or category to go wider.\n- Price levels are base prices before fees, available only when Ticketmaster publishes ticket offers; partner events do not expose detail.\n- A page that keeps failing after automatic retries can end a query early; the run says so and a rerun resumes with fresh proxy sessions.\n- Seat-level and resale listings, and artist reviews, are not part of this actor.\n- US-market focus; other Ticketmaster country sites are out of scope.\n- Ticketmaster can change its public endpoints or markup at any time. The actor fails cleanly with a status message instead of emitting placeholder data.\n\n## Notes\n\nThis is an independent data tool. It is not affiliated with, endorsed by, or operated by Ticketmaster or Live Nation. Ticketmaster and Live Nation are trademarks of their respective owners.\n",
    "actorDefinition": {
      "actorSpecification": 1,
      "name": "ticketmaster-us-event-and-on-sale-date-finder",
      "title": "Ticketmaster US Event & On-Sale Date Finder",
      "description": "Find US Ticketmaster events by keyword, category, artist, venue or event ID and export dates, presale and on-sale windows, venue address and coordinates, performers, genre, images, sale status and primary price levels. No API key or login.",
      "version": "1.0",
      "buildTag": "latest",
      "input": {
        "title": "Ticketmaster Event Finder Input",
        "description": "Choose what to collect — keyword results, a category, an artist calendar, a venue calendar, exact events or name suggestions — then filter and enrich the records.",
        "type": "object",
        "schemaVersion": 1,
        "properties": {
          "mode": {
            "title": "What to collect",
            "type": "string",
            "description": "Pick the lookup path. `Search` uses a keyword; `Category` browses one or more top-level categories; `Artist` and `Venue` read their public calendars; `Event` returns full detail for exact IDs/URLs; `Suggestions` returns matching artists and venues.",
            "editor": "select",
            "sectionCaption": "What to scrape",
            "enum": [
              "search",
              "category",
              "artist",
              "venue",
              "event",
              "suggestions"
            ],
            "enumTitles": [
              "Search by keyword",
              "Browse by category",
              "Artist calendar",
              "Venue calendar",
              "Event details by ID or URL",
              "Name suggestions"
            ],
            "default": "search",
            "prefill": "search"
          },
          "searchQuery": {
            "title": "Search query",
            "type": "string",
            "description": "Artist, team, show, genre or a combined phrase such as `taylor swift`, `lakers` or `comedy austin`. Used by `Search` and `Suggestions` modes. Legacy tasks that send `keyword` still work.",
            "editor": "textfield",
            "default": "",
            "prefill": "concerts"
          },
          "categories": {
            "title": "Categories",
            "type": "array",
            "description": "Top-level Ticketmaster categories. In `Category` mode each selected value is browsed; in `Search`, `Artist` and `Venue` modes the results are filtered to these categories.",
            "editor": "select",
            "items": {
              "type": "string",
              "enum": [
                "concerts",
                "sports",
                "arts-theater",
                "family",
                "film",
                "miscellaneous"
              ]
            },
            "default": []
          },
          "artistIds": {
            "title": "Artist IDs or URLs",
            "type": "array",
            "description": "Artist/attraction IDs or Ticketmaster artist URLs, e.g. `735585` or `https://www.ticketmaster.com/barry-manilow-tickets/artist/735585` (mode=artist).",
            "editor": "stringList",
            "default": []
          },
          "venueIds": {
            "title": "Venue IDs or URLs",
            "type": "array",
            "description": "Venue IDs or Ticketmaster venue URLs, e.g. `107143` or `https://www.ticketmaster.com/hertz-arena-tickets-estero/venue/107143` (mode=venue).",
            "editor": "stringList",
            "default": []
          },
          "eventIds": {
            "title": "Event IDs or URLs",
            "type": "array",
            "description": "Event IDs, discovery IDs or Ticketmaster event URLs, e.g. `0D00632F271D385A` or `https://www.ticketmaster.com/event/0D00632F271D385A` (mode=event).",
            "editor": "stringList",
            "default": []
          },
          "startUrls": {
            "title": "Start URLs (optional)",
            "type": "array",
            "description": "Ticketmaster search, artist, venue, event or category URLs to process instead of the mode targets. Each URL is routed automatically, and several can be mixed in one run.",
            "editor": "stringList",
            "default": []
          },
          "dateFrom": {
            "title": "Events from",
            "type": "string",
            "description": "Only keep events on or after this date (`YYYY-MM-DD`). Leave empty for no lower bound. In Category and Event modes the filter is applied to the returned rows.",
            "editor": "textfield",
            "sectionCaption": "Filters",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "nullable": true
          },
          "dateTo": {
            "title": "Events until",
            "type": "string",
            "description": "Only keep events on or before this date (`YYYY-MM-DD`). Leave empty for no upper bound.",
            "editor": "textfield",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "nullable": true
          },
          "sort": {
            "title": "Sort order",
            "type": "string",
            "description": "`Relevance` keeps Ticketmaster's search ranking; `Date` orders by the soonest event first. Legacy sorts such as `date,asc` are mapped to Date.",
            "editor": "select",
            "enum": [
              "relevance",
              "date",
              "date,asc",
              "date,desc",
              "name,asc",
              "name,desc",
              "venueName,asc",
              "random"
            ],
            "enumTitles": [
              "Relevance (default)",
              "Date (soonest first)",
              "Date ascending (legacy — same as Date)",
              "Date descending (legacy — soonest first)",
              "Name A-Z (legacy — relevance)",
              "Name Z-A (legacy — relevance)",
              "Venue name (legacy — relevance)",
              "Random (legacy — relevance)"
            ],
            "default": "relevance",
            "prefill": "relevance"
          },
          "maxResults": {
            "title": "Maximum records",
            "type": "integer",
            "description": "Hard cap on records emitted across every target in the run. Ticketmaster serves 20 events per page and stops at 980 rows per query; use a narrower date range or more categories to go wider.",
            "default": 20,
            "prefill": 3,
            "minimum": 1,
            "maximum": 1000
          },
          "skipSoldOut": {
            "title": "Skip sold-out events",
            "type": "boolean",
            "description": "Drop events Ticketmaster flags as sold out.",
            "default": false,
            "prefill": false
          },
          "skipCancelled": {
            "title": "Skip cancelled / postponed",
            "type": "boolean",
            "description": "Drop cancelled, postponed and rescheduled events.",
            "default": true,
            "prefill": true
          },
          "usOnly": {
            "title": "United States only",
            "type": "boolean",
            "description": "Keep only events at US venues. Turn this off to include international results that Ticketmaster returns alongside US listings.",
            "default": true,
            "prefill": true
          },
          "includeDetails": {
            "title": "Include full event details",
            "type": "boolean",
            "description": "Fetch each event's detail record and primary price levels: description, genre/classification, doors time, images, seat map, venue address and min/max price. Adds up to two requests per event. Leave off for the fastest, cheapest run.",
            "sectionCaption": "Detail enrichment",
            "default": true,
            "prefill": false
          }
        },
        "required": []
      },
      "output": {
        "actorOutputSchemaVersion": 1,
        "title": "Ticketmaster US Event & On-Sale Date Finder Output",
        "description": "Event records with dates, venue, performers, sale status, presale windows, genre, images and optional price levels; name-suggestion records in Suggestions mode.",
        "properties": {
          "events": {
            "type": "string",
            "title": "Ticketmaster records",
            "description": "Dataset containing event records (recordType=event) and, in Suggestions mode, suggestion records (recordType=suggestion).",
            "template": "{{links.apiDefaultDatasetUrl}}/items"
          }
        }
      },
      "dockerfile": "../Dockerfile",
      "readme": "# Ticketmaster US Event & On-Sale Date Finder\n\nCollect upcoming Ticketmaster events in the United States and turn them into clean, structured records: event and on-sale dates, presale windows, venue address and coordinates, performers, genre, images, sale status, and — when Ticketmaster publishes them — primary price levels.\n\nRun it without an API key, login, cookie, or proxy setup. It reads Ticketmaster's own public event endpoints and returns one row per event (or one row per name suggestion in Suggestions mode).\n\n## What you can collect\n\n| Mode | What it does | What to provide |\n|---|---|---|\n| **Search by keyword** | Artist, team, show, genre or a combined phrase such as `taylor swift`, `lakers`, `comedy austin` | `searchQuery` |\n| **Browse by category** | Music, Sports, Arts & Theatre, Family, Film or Miscellaneous | one or more `categories` |\n| **Artist calendar** | Every upcoming event for an artist or attraction | `artistIds` (IDs or Ticketmaster artist URLs) |\n| **Venue calendar** | Every upcoming event at a venue | `venueIds` (IDs or Ticketmaster venue URLs) |\n| **Event details** | Full record for exact events | `eventIds` (IDs, discovery IDs or Ticketmaster event URLs) |\n| **Name suggestions** | Matching artists, venues and events with counts | `searchQuery` |\n\nYou can also paste any Ticketmaster search, artist, venue, event or category URL into `startUrls`; the actor routes each URL automatically and can mix several URL types in one run.\n\n## Filters\n\n- **Date window** — `dateFrom` / `dateTo` (`YYYY-MM-DD`). Applied by Ticketmaster for search, artist and venue modes; applied to the returned rows for category and event modes.\n- **Categories** — filter keyword, artist and venue results to one or more top-level categories.\n- **Sort** — relevance or soonest first.\n- **United States only** — on by default; turn it off to include the international listings Ticketmaster mixes into US results.\n- **Status cleanup** — optionally drop sold-out, cancelled, postponed or rescheduled events.\n- **Maximum records** — 1 to 1,000 per run.\n\n## Input\n\n| Field | Type | Default | Description |\n|---|---|---|---|\n| `mode` | select | `search` | `search`, `category`, `artist`, `venue`, `event` or `suggestions`. |\n| `searchQuery` | string | – | Artist, team, show or phrase. Used by Search and Suggestions. Legacy tasks that send `keyword` keep working. |\n| `categories` | multi-select | – | `concerts`, `sports`, `arts-theater`, `family`, `film`, `miscellaneous`. Targets in Category mode, filters elsewhere. |\n| `artistIds` | string list | – | Artist IDs or Ticketmaster artist URLs (mode=artist). |\n| `venueIds` | string list | – | Venue IDs or Ticketmaster venue URLs (mode=venue). |\n| `eventIds` | string list | – | Event IDs, discovery IDs or Ticketmaster event URLs (mode=event). |\n| `startUrls` | string list | – | Ticketmaster search/artist/venue/event/category URLs. Overrides `mode` targets. |\n| `dateFrom` / `dateTo` | string | – | Inclusive event-date window (`YYYY-MM-DD`). |\n| `sort` | select | `relevance` | `relevance` or `date` (soonest first). Legacy values such as `date,asc` are still accepted and mapped. |\n| `maxResults` | integer | `20` | 1–1,000 records across all targets. |\n| `skipSoldOut` | boolean | `false` | Drop sold-out events. |\n| `skipCancelled` | boolean | `true` | Drop cancelled, postponed and rescheduled events. |\n| `usOnly` | boolean | `true` | Keep only US-venue events. |\n| `includeDetails` | boolean | `true` | Add description, genre, doors time, images, seat map, venue address and price levels (up to two extra requests per event). |\n\n### Examples\n\nSearch with a date window and full details:\n\n```json\n{\n  \"mode\": \"search\",\n  \"searchQuery\": \"taylor swift\",\n  \"dateFrom\": \"2026-12-01\",\n  \"dateTo\": \"2027-12-31\",\n  \"sort\": \"date\",\n  \"maxResults\": 60,\n  \"includeDetails\": true\n}\n```\n\nBrowse sports events in a category:\n\n```json\n{\n  \"mode\": \"category\",\n  \"categories\": [\"sports\"],\n  \"maxResults\": 40\n}\n```\n\nArtist calendar by URL:\n\n```json\n{\n  \"mode\": \"artist\",\n  \"artistIds\": [\"https://www.ticketmaster.com/barry-manilow-tickets/artist/735585\"],\n  \"maxResults\": 30\n}\n```\n\nExact events:\n\n```json\n{\n  \"mode\": \"event\",\n  \"eventIds\": [\n    \"0D00632F271D385A\",\n    \"https://www.ticketmaster.com/event/1E00648A835556FD\"\n  ]\n}\n```\n\nMixed start URLs:\n\n```json\n{\n  \"startUrls\": [\n    \"https://www.ticketmaster.com/search?q=comedy&startDate=2026-12-01&endDate=2026-12-31\",\n    \"https://www.ticketmaster.com/hertz-arena-tickets-estero/venue/107143\",\n    \"https://www.ticketmaster.com/event/0D00632F271D385A\"\n  ],\n  \"maxResults\": 50\n}\n```\n\n## Output\n\nOne record per event. Empty fields are omitted — the actor never emits `null`, empty strings or sentinel values.\n\n| Field | Description |\n|---|---|\n| `recordType` | `event` or `suggestion`. |\n| `id` / `discoveryId` | Ticketmaster event identifiers. |\n| `title` | Event name. |\n| `url` / `sourceUrl` | Event page URL. |\n| `startDate` / `endDate` | Event start and end timestamps from Ticketmaster. |\n| `onsaleDate` / `offsaleDate` | Public on-sale and off-sale timestamps. |\n| `doorsDate` | Doors-open timestamp when published. |\n| `timezone` | Venue IANA time zone. |\n| `dateDisplay` / `spanMultipleDays` | How the date is displayed and whether the event spans days. |\n| `presaleDates` | `[{name, startDateTime, endDateTime}]` presale windows. |\n| `isCancelled` / `isPostponed` / `isRescheduled` / `isTBA` / `isVirtual` / `isSoldOut` / `limitedAvailability` | Sale and schedule flags. |\n| `ticketingStatus` / `eventChangeStatus` | Raw Ticketmaster status tokens. |\n| `eventType` / `productType` / `isGA` | Event type, product type and general-admission flag. |\n| `isResaleEnabled` / `faceValueResaleEnabled` / `transferDisabled` | Ticket transfer and resale flags. |\n| `venue` | Nested venue object: name, city, state, country, address, postal code, URL, image, coordinates, ID. |\n| `venueName` / `venueCity` / `venueState` / `venueCountry` / `venueCountryName` / `venueAddress` / `venuePostalCode` / `venueUrl` / `venueImageUrl` / `latitude` / `longitude` | Flattened venue fields for tables, maps and filters. |\n| `artists` | `[{name, url, imageUrl, id, discoveryId, rank}]`. |\n| `artistCount` / `performerNames` | Derived lineup counts and a comma-separated lineup. |\n| `classifications` | `[{segment, genre, subGenre, type, subType}]` from the event detail. |\n| `primaryCategory` / `subCategory` / `majorCategory` / `majorCategoryId` | Human-readable category and genre labels plus the ticketmaster category ID. |\n| `lowestPrice` / `highestPrice` / `priceCurrency` / `priceOfferCount` / `priceOffers` / `lowestResalePrice` | Primary price levels (base ticket price before fees) when Ticketmaster publishes offers. Protected access-code offers are ignored. |\n| `imageUrl` / `seatMapUrl` / `staticMapUrl` | Event image and seat-map URLs. |\n| `description` | Event notes when the organizer publishes them. |\n| `currency` / `marketCode` / `sourceName` | Currency and marketplace metadata. |\n| `local` / `sameRegion` / `partnerEvent` / `isPartner` | Region and partner-listing flags. |\n| `daysUntilEvent` | Whole days from now to the event start. Negative for past events. |\n| `scrapedAt` | ISO-8601 timestamp of the run. |\n\n### Sample record\n\n```json\n{\n  \"recordType\": \"event\",\n  \"id\": \"0D00632F271D385A\",\n  \"discoveryId\": \"vvG1VZbwHE6K-Q\",\n  \"title\": \"Manilow: The Last Estero Concerts\",\n  \"url\": \"https://www.ticketmaster.com/manilow-the-last-estero-concerts-estero-florida-01-16-2027/event/0D00632F271D385A\",\n  \"startDate\": \"2027-01-17T00:00:00Z\",\n  \"onsaleDate\": \"2025-09-26T14:00:00Z\",\n  \"timezone\": \"America/New_York\",\n  \"venueName\": \"Hertz Arena\",\n  \"venueCity\": \"Estero\",\n  \"venueState\": \"FL\",\n  \"venueCountry\": \"US\",\n  \"majorCategory\": \"concerts\",\n  \"classifications\": [\n    {\n      \"segment\": \"Music\",\n      \"genre\": \"Pop\",\n      \"subGenre\": \"Adult Contemporary\"\n    }\n  ],\n  \"artists\": [\n    {\n      \"name\": \"Barry Manilow\",\n      \"url\": \"https://www.ticketmaster.com/barry-manilow-tickets/artist/735585\",\n      \"id\": \"735585\"\n    }\n  ],\n  \"artistCount\": 1,\n  \"lowestPrice\": 110.0,\n  \"highestPrice\": 354.0,\n  \"priceCurrency\": \"USD\",\n  \"priceOfferCount\": 14,\n  \"description\": \"The Event Organizer has had to postpone your event...\",\n  \"scrapedAt\": \"2026-11-07T16:23:11+00:00\"\n}\n```\n\nSuggestion records use `recordType: \"suggestion\"` with `id`, `title`, `url`, `suggestionType`, `count`, `imageUrl`, and location fields when Ticketmaster provides them.\n\n## Use cases\n\n- Watch on-sale and presale windows for artists on a tour.\n- Build city or venue event calendars without visiting Ticketmaster.\n- Track sold-out, postponed and rescheduled events for alerts.\n- Enrich event datasets with venue coordinates, categories and price levels.\n- Research touring patterns and pricing across a date range.\n- Power event-discovery apps, newsletters and research notebooks.\n\n## FAQ\n\n**Do I need an API key or a Ticketmaster account?**\nNo. The actor reads Ticketmaster's publicly served event data. There is no login, cookie, token or API-key input.\n\n**Do I need to configure a proxy?**\nNo. The actor chooses its network path automatically; there is nothing to set up.\n\n**Why is a price missing for some events?**\nTicketmaster only publishes primary price levels for events with open inventory. Partner listings (TicketWeb, Universe) and some add-on products have no ticket offers, so price fields are omitted rather than estimated. The actor never invents a price.\n\n**Are prices the final checkout price?**\nNo. Price fields are Ticketmaster's published base ticket prices before service and processing fees. The event page adds those fees at checkout, so use the values to compare price levels rather than as a final quote.\n\n**Why did the run stop before `maxResults`?**\nTicketmaster serves 20 events per page and stops at page 48, so one query tops out at 980 rows. Narrow the date window, use more categories, or run separate queries to collect more. A page that Ticketmaster keeps rejecting is retried automatically; if it still fails, the run's status message says the query stopped early so you can rerun it.\n\n**Why are details missing for a specific event?**\nSome events are hosted by partner ticketing sites. Ticketmaster's public event detail endpoint does not return those records, so the actor keeps the search-level fields it can verify and omits the rest.\n\n**Does it return international events?**\nThe actor is positioned for the US market and keeps US venues by default. Turn off `usOnly` to include the international listings Ticketmaster returns on the US site.\n\n**What happens with duplicate IDs or mixed URLs?**\nDuplicates are removed by event ID across all targets, and mixed `startUrls` are merged into one dataset. With several targets, `maxResults` is split evenly and any unused share rolls over to the next target.\n\n**Are old tasks still compatible?**\nYes. Legacy inputs using `keyword`, `dateFrom`, `dateTo`, `categories`, `sort` values such as `date,asc`, `skipSoldOut`, `skipCancelled` and `maxResults` keep running; renamed keys are mapped inside the actor.\n\n## Limitations\n\n- 980 rows per query (Ticketmaster's page ceiling). Split by date range or category to go wider.\n- Price levels are base prices before fees, available only when Ticketmaster publishes ticket offers; partner events do not expose detail.\n- A page that keeps failing after automatic retries can end a query early; the run says so and a rerun resumes with fresh proxy sessions.\n- Seat-level and resale listings, and artist reviews, are not part of this actor.\n- US-market focus; other Ticketmaster country sites are out of scope.\n- Ticketmaster can change its public endpoints or markup at any time. The actor fails cleanly with a status message instead of emitting placeholder data.\n\n## Notes\n\nThis is an independent data tool. It is not affiliated with, endorsed by, or operated by Ticketmaster or Live Nation. Ticketmaster and Live Nation are trademarks of their respective owners.\n",
      "defaultRunOptions": {
        "build": "latest",
        "timeoutSecs": 1200,
        "memoryMbytes": 1024
      },
      "storages": {
        "dataset": {
          "actorSpecification": 1,
          "title": "Ticketmaster events",
          "views": {
            "overview": {
              "title": "Event overview",
              "transformation": {
                "fields": [
                  "recordType",
                  "title",
                  "startDate",
                  "venueName",
                  "venueCity",
                  "venueState",
                  "majorCategory",
                  "lowestPrice",
                  "priceCurrency",
                  "url"
                ]
              },
              "display": {
                "component": "table",
                "properties": {
                  "recordType": {
                    "label": "Type",
                    "format": "text"
                  },
                  "title": {
                    "label": "Event",
                    "format": "text"
                  },
                  "startDate": {
                    "label": "Start",
                    "format": "date"
                  },
                  "venueName": {
                    "label": "Venue",
                    "format": "text"
                  },
                  "venueCity": {
                    "label": "City",
                    "format": "text"
                  },
                  "venueState": {
                    "label": "State",
                    "format": "text"
                  },
                  "majorCategory": {
                    "label": "Category",
                    "format": "text"
                  },
                  "lowestPrice": {
                    "label": "From",
                    "format": "number"
                  },
                  "priceCurrency": {
                    "label": "Currency",
                    "format": "text"
                  },
                  "url": {
                    "label": "Tickets",
                    "format": "link"
                  }
                }
              }
            }
          }
        }
      }
    },
    "buildNumber": "1.0.3",
    "imageDigest": "b671a210ec1324eb02a9cd77c3476ac31cc34402f337a4a1660e2f7db500618e",
    "actVersion": {
      "sourceType": "SOURCE_FILES",
      "buildTag": "latest",
      "versionNumber": "1.0"
    },
    "usage": {
      "ACTOR_COMPUTE_UNITS": 0.025445555555555555
    }
  }
}