{"description":"Searches Ticketmaster US for an artist, event or venue, like its search page: upcoming events by date with the venue, city, country and address, start time, artists, status (cancelled, postponed, rescheduled, sold out, few tickets left, date to be announced) and the link to buy tickets. Optionally only events in the US or in one city. Ticketmaster's German search also lists events abroad; each is marked. Prices are not part of the search results.","effect":"read","id":"ticketmaster.com/search-events","keywords":["ticketmaster","tickets","concerts","events","sports","nba","nfl","theater","comedy","usa"],"output":{"schema":{"properties":{"events":{"items":{"properties":{"address":{"type":["string","null"]},"artists":{"items":{"type":"string"},"type":"array"},"city":{"type":["string","null"]},"country":{"description":"ISO code, e.g. DE","type":["string","null"]},"domestic":{"description":"Venue in the US","type":"boolean"},"id":{"type":"string"},"latitude":{"type":["number","null"]},"limited_availability":{"type":"boolean"},"longitude":{"type":["number","null"]},"postcode":{"type":["string","null"]},"sold_by_partner":{"description":"Tickets are sold by a partner site that Ticketmaster links to","type":"boolean"},"sold_out":{"type":"boolean"},"start":{"description":"Start time in UTC (ISO 8601, Z); null when the date is to be announced","type":["string","null"]},"status":{"description":"scheduled, cancelled, postponed, rescheduled or tba","type":"string"},"timezone":{"description":"The venue's time zone, e.g. Europe/Berlin","type":["string","null"]},"title":{"type":"string"},"url":{"description":"The event page: usually ticketmaster.de, sometimes another Ticketmaster country site or a partner platform such as Universe (sold_by_partner)","type":"string"},"venue":{"type":["string","null"]}},"type":"object"},"type":"array"},"page":{"type":"integer"},"query":{"type":"string"},"total":{"description":"All matching events worldwide, before the city and Germany filters","type":["integer","null"]}},"required":["query","events"],"type":"object"},"value":"let $city = params.city && lower(params.city) || `null`, $nat = params.national_only == `true` in {query: params.query, total: steps.search[0].total || `0`, page: params.page || `1`, events: map(&(let $e = @ in {id: $e.id, title: $e.title, start: $e.dates.startDate || `null`, timezone: $e.timeZone || `null`, venue: $e.venue.name || `null`, city: $e.venue.city || `null`, country: $e.venue.countryCode || `null`, address: $e.venue.addressLineOne || `null`, postcode: $e.venue.code || `null`, latitude: $e.venue.latitude || `null`, longitude: $e.venue.longitude || `null`, artists: $e.artists[*].name || `[]`, status: ($e.cancelled && 'cancelled') || ($e.postponed && 'postponed') || ($e.rescheduled && 'rescheduled') || ($e.tba && 'tba') || 'scheduled', sold_out: $e.soldOut == `true`, limited_availability: $e.limitedAvailability == `true`, domestic: $e.venue.countryCode == 'US', sold_by_partner: $e.isPartner == `true` || $e.partnerEvent == `true`, url: $e.url}), steps.search[0].events || `[]`)[?(!$nat || domestic) && ($city == `null` || (city && contains(lower(city), $city)))]}"},"params":{"additionalProperties":false,"properties":{"city":{"description":"Only events in this city, e.g. 'Berlin' (matched against the venue's city on the returned page)","maxLength":60,"minLength":2,"type":"string"},"national_only":{"default":false,"description":"Only events in the US","type":"boolean"},"page":{"default":1,"description":"20 events per page","maximum":20,"minimum":1,"type":"integer"},"query":{"description":"Artist, event or venue, e.g. 'Coldplay', 'Rammstein', 'Lanxess Arena'","maxLength":100,"minLength":2,"type":"string"}},"required":["query"],"type":"object"},"provenance":{"method":"browser-inspect","notes":"Same Next.js search page as ticketmaster.de/search-events: GET /search?q=…&page=<0-based>, events from the Redux api.queries entry whose endpointName is 'searchEvents' in __NEXT_DATA__ (total is capped at 10,000). national_only keeps venues whose countryCode is US. Answers servers. v2 (2026-11-07 22:38): tos.notes only; requests and output unchanged.","recorded_at":"2026-11-07T22:27:00+01:00","recorded_by":"C4"},"requires_login":false,"schema":"https://wield.run/schema/recipe/v1.json","site":{"country":"US","id":"ticketmaster.com","language":"en","name":"Ticketmaster Deutschland","origin":"https://www.ticketmaster.com","origins":["https://www.ticketmaster.com"]},"steps":[{"description":"The server-rendered search page; its Redux state (__NEXT_DATA__ props.pageProps.initialReduxState.api.queries, entry with endpointName 'searchEvents') holds the events. The page's own /api/search/events answers 400 to plain requests, so the page is read instead. The one-item foreach turns the page number into the 0-based index the URL uses.","expect":{"content_type":"html","status":[200]},"extract":{"embedded_json":{"selector":"script#__NEXT_DATA__","vars":{"events":"values(props.pageProps.initialReduxState.api.queries)[?endpointName == 'searchEvents'] | [0].data.events","total":"values(props.pageProps.initialReduxState.api.queries)[?endpointName == 'searchEvents'] | [0].data.total"}}},"foreach":{"as":"f","in":"[{page: to_string((params.page || `1`) - `1`)}]","max":1},"id":"search","parse":"html","request":{"headers":{"Accept":"text/html"},"method":"GET","query":{"page":"{{f.page}}","q":"{{params.query}}"},"url":"/search"}}],"task":"Find concerts and events on Ticketmaster","tos":{"notes":"Ticketmaster.com's terms prohibit robots and automated tools that retrieve or data-mine the site, and automated ticket buying. Wield runs this recipe only when the user asks, in the user's own browser, one search results page per call. It never touches anything purchase-related (no ticket selection, no basket, no checkout) and never polls availability.","reviewed":true},"verify":{"checks":["length(output.events) > `5`","output.total > `20`","length(output.events[?domestic]) == length(output.events)","length(output.events[?starts_with(url, 'https://') && title != `null` && venue != `null`]) == length(output.events)","length(output.events[?starts_with(url, 'https://www.ticketmaster.com/')]) > `5`","length(output.events[?start != `null` && ends_with(start, 'Z')]) > `0`"],"example_params":{"national_only":true,"query":"rock"},"max_ms":5000},"version":2}