{"openapi":"3.1.0","info":{"title":"StableTickets","description":"Pay-per-request Ticketmaster Discovery API access for event, venue, attraction, classification, and suggestion search. No Ticketmaster key required by the caller.","version":"0.1.0","x-guidance":"# StableTickets API\n\nBase URL: https://stabletickets.dev\n\nStableTickets wraps Ticketmaster Discovery API v2 with x402/MPP pay-per-request access. Callers do not need a Ticketmaster developer account or API key.\n\nUse this API when an agent needs live public Ticketmaster discovery data: events, venues, attractions, classifications, event images, or typeahead-style suggestions. This API does not sell, reserve, or purchase tickets.\n\n## Happy Path\n\n1. Search events with POST /api/events/search. Use countryCode, city, postalCode, geoPoint+radius, startDateTime/endDateTime, classificationName, or keyword to narrow results.\n2. Pick an event id from _embedded.events[].id.\n3. Call POST /api/events/details with { \"id\": \"...\" } for full event, venue, attraction, sales, dates, price range, and purchase URL data.\n4. If the user asks for venue context, call POST /api/venues/details with the embedded venue id.\n\n## Endpoint Guide\n\n- POST /api/events/search: Search Ticketmaster events. Prefer this for \"concerts near me\", \"sports in NYC this weekend\", and date/location/category queries.\n- POST /api/events/details: Get one event by id.\n- POST /api/events/images: Get images for one event by id.\n- POST /api/attractions/search: Search artists, teams, performers, and other attractions.\n- POST /api/attractions/details: Get one attraction by id.\n- POST /api/venues/search: Search venues by name, city, state, country, postal code, or geoPoint.\n- POST /api/venues/details: Get one venue by id.\n- POST /api/classifications/search: Search Ticketmaster segments, genres, and subgenres.\n- POST /api/classifications/details: Get one classification by id.\n- POST /api/suggest: Fast suggestions across events, attractions, venues, and products.\n\n## Query Notes\n\nDates use Ticketmaster ISO date-time strings, e.g. \"2026-06-01T00:00:00Z\". Ticketmaster deep paging only supports the first 1000 items: keep size * page < 1000. Use locale \"*\" when the caller does not care about locale. Use source only when the caller asks for a specific Ticketmaster source such as ticketmaster, universe, frontgate, or tmr.\n\n## Pricing\n\nAll endpoints cost $0.01 per successful call.\n","guidance":"# StableTickets API\n\nBase URL: https://stabletickets.dev\n\nStableTickets wraps Ticketmaster Discovery API v2 with x402/MPP pay-per-request access. Callers do not need a Ticketmaster developer account or API key.\n\nUse this API when an agent needs live public Ticketmaster discovery data: events, venues, attractions, classifications, event images, or typeahead-style suggestions. This API does not sell, reserve, or purchase tickets.\n\n## Happy Path\n\n1. Search events with POST /api/events/search. Use countryCode, city, postalCode, geoPoint+radius, startDateTime/endDateTime, classificationName, or keyword to narrow results.\n2. Pick an event id from _embedded.events[].id.\n3. Call POST /api/events/details with { \"id\": \"...\" } for full event, venue, attraction, sales, dates, price range, and purchase URL data.\n4. If the user asks for venue context, call POST /api/venues/details with the embedded venue id.\n\n## Endpoint Guide\n\n- POST /api/events/search: Search Ticketmaster events. Prefer this for \"concerts near me\", \"sports in NYC this weekend\", and date/location/category queries.\n- POST /api/events/details: Get one event by id.\n- POST /api/events/images: Get images for one event by id.\n- POST /api/attractions/search: Search artists, teams, performers, and other attractions.\n- POST /api/attractions/details: Get one attraction by id.\n- POST /api/venues/search: Search venues by name, city, state, country, postal code, or geoPoint.\n- POST /api/venues/details: Get one venue by id.\n- POST /api/classifications/search: Search Ticketmaster segments, genres, and subgenres.\n- POST /api/classifications/details: Get one classification by id.\n- POST /api/suggest: Fast suggestions across events, attractions, venues, and products.\n\n## Query Notes\n\nDates use Ticketmaster ISO date-time strings, e.g. \"2026-06-01T00:00:00Z\". Ticketmaster deep paging only supports the first 1000 items: keep size * page < 1000. Use locale \"*\" when the caller does not care about locale. Use source only when the caller asks for a specific Ticketmaster source such as ticketmaster, universe, frontgate, or tmr.\n\n## Pricing\n\nAll endpoints cost $0.01 per successful call.\n","contact":{"name":"Merit Systems","url":"http://localhost:3027"}},"servers":[{"url":"http://localhost:3027"}],"tags":[{"name":"Attractions"},{"name":"Classifications"},{"name":"Events"},{"name":"Suggest"},{"name":"Venues"}],"paths":{"/api/attractions/details":{"post":{"operationId":"attractions_details","summary":"Get Ticketmaster attraction details by attraction ID","tags":["Attractions"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}},{"mpp":{"method":"tempo","intent":"charge","currency":"0x20c000000000000000000000b9537d11c60e8b50"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1,"description":"Ticketmaster entity ID"},"locale":{"default":"*","type":"string"},"domain":{"description":"Single value, comma-separated values, or string array","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}},"required":["id"]}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"Ticketmaster Discovery API JSON response"}}}},"402":{"description":"Payment Required"}}}},"/api/events/search":{"post":{"operationId":"events_search","summary":"Search Ticketmaster events by keyword, date, location, venue, attraction, or classification","tags":["Events"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}},{"mpp":{"method":"tempo","intent":"charge","currency":"0x20c000000000000000000000b9537d11c60e8b50"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"keyword":{"description":"Keyword to search","type":"string"},"locale":{"default":"*","description":"Locale such as en-us, en, or *","type":"string"},"source":{"description":"Ticketmaster source filter","anyOf":[{"type":"string","enum":["ticketmaster","universe","frontgate","tmr"]},{"type":"array","items":{"type":"string","enum":["ticketmaster","universe","frontgate","tmr"]}}]},"includeTest":{"description":"Include test entities","type":"string","enum":["yes","no","only"]},"size":{"description":"Page size; Ticketmaster max is 200","type":"integer","minimum":1,"maximum":200},"page":{"description":"Zero-based page number","type":"integer","minimum":0,"maximum":9007199254740991},"sort":{"description":"Ticketmaster sort string such as \"date,asc\"","type":"string"},"domain":{"description":"Filter entities by domain availability","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"id":{"description":"Filter by event IDs","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"attractionId":{"description":"Filter by attraction IDs","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"venueId":{"description":"Filter by venue IDs","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"postalCode":{"type":"string"},"latlong":{"description":"Deprecated Ticketmaster lat,long filter; prefer geoPoint","type":"string"},"geoPoint":{"description":"GeoHash location filter","type":"string"},"radius":{"type":"number"},"unit":{"type":"string","enum":["miles","km"]},"marketId":{"description":"Ticketmaster market IDs","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"countryCode":{"type":"string","minLength":2,"maxLength":2},"stateCode":{"type":"string"},"city":{"type":"string"},"dmaId":{"description":"Designated market area IDs","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"classificationName":{"type":"string"},"classificationId":{"description":"Segment, genre, or subgenre IDs","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"segmentId":{"description":"Single value, comma-separated values, or string array","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"genreId":{"description":"Single value, comma-separated values, or string array","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"subGenreId":{"description":"Single value, comma-separated values, or string array","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"startDateTime":{"description":"UTC ISO date-time lower bound","type":"string"},"endDateTime":{"description":"UTC ISO date-time upper bound","type":"string"},"localStartDateTime":{"type":"string"},"localStartEndDateTime":{"type":"string"},"startEndDateTime":{"type":"string"},"includeTBA":{"type":"string","enum":["yes","no","only"]},"includeTBD":{"type":"string","enum":["yes","no","only"]},"includeSpellcheck":{"type":"string","enum":["yes","no"]}}}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"Ticketmaster Discovery API JSON response"}}}},"402":{"description":"Payment Required"}}}},"/api/events/details":{"post":{"operationId":"events_details","summary":"Get Ticketmaster event details by event ID","tags":["Events"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}},{"mpp":{"method":"tempo","intent":"charge","currency":"0x20c000000000000000000000b9537d11c60e8b50"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1,"description":"Ticketmaster entity ID"},"locale":{"default":"*","type":"string"},"domain":{"description":"Single value, comma-separated values, or string array","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}},"required":["id"]}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"Ticketmaster Discovery API JSON response"}}}},"402":{"description":"Payment Required"}}}},"/api/events/images":{"post":{"operationId":"events_images","summary":"Get Ticketmaster event images by event ID","tags":["Events"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}},{"mpp":{"method":"tempo","intent":"charge","currency":"0x20c000000000000000000000b9537d11c60e8b50"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1,"description":"Ticketmaster entity ID"},"locale":{"default":"*","type":"string"},"domain":{"description":"Single value, comma-separated values, or string array","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}},"required":["id"]}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"Ticketmaster Discovery API JSON response"}}}},"402":{"description":"Payment Required"}}}},"/api/attractions/search":{"post":{"operationId":"attractions_search","summary":"Search Ticketmaster attractions such as artists, teams, and performers","tags":["Attractions"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}},{"mpp":{"method":"tempo","intent":"charge","currency":"0x20c000000000000000000000b9537d11c60e8b50"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"keyword":{"description":"Keyword to search","type":"string"},"locale":{"default":"*","description":"Locale such as en-us, en, or *","type":"string"},"source":{"description":"Ticketmaster source filter","anyOf":[{"type":"string","enum":["ticketmaster","universe","frontgate","tmr"]},{"type":"array","items":{"type":"string","enum":["ticketmaster","universe","frontgate","tmr"]}}]},"includeTest":{"description":"Include test entities","type":"string","enum":["yes","no","only"]},"size":{"description":"Page size; Ticketmaster max is 200","type":"integer","minimum":1,"maximum":200},"page":{"description":"Zero-based page number","type":"integer","minimum":0,"maximum":9007199254740991},"sort":{"description":"Ticketmaster sort string such as \"date,asc\"","type":"string"},"domain":{"description":"Filter entities by domain availability","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"id":{"description":"Filter by attraction IDs","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"classificationId":{"description":"Single value, comma-separated values, or string array","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"segmentId":{"description":"Single value, comma-separated values, or string array","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"genreId":{"description":"Single value, comma-separated values, or string array","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"subGenreId":{"description":"Single value, comma-separated values, or string array","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"preferredCountry":{"type":"string","enum":["us","ca"]}}}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"Ticketmaster Discovery API JSON response"}}}},"402":{"description":"Payment Required"}}}},"/api/venues/search":{"post":{"operationId":"venues_search","summary":"Search Ticketmaster venues by keyword, location, or venue ID","tags":["Venues"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}},{"mpp":{"method":"tempo","intent":"charge","currency":"0x20c000000000000000000000b9537d11c60e8b50"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"keyword":{"description":"Keyword to search","type":"string"},"locale":{"default":"*","description":"Locale such as en-us, en, or *","type":"string"},"source":{"description":"Ticketmaster source filter","anyOf":[{"type":"string","enum":["ticketmaster","universe","frontgate","tmr"]},{"type":"array","items":{"type":"string","enum":["ticketmaster","universe","frontgate","tmr"]}}]},"includeTest":{"description":"Include test entities","type":"string","enum":["yes","no","only"]},"size":{"description":"Page size; Ticketmaster max is 200","type":"integer","minimum":1,"maximum":200},"page":{"description":"Zero-based page number","type":"integer","minimum":0,"maximum":9007199254740991},"sort":{"description":"Ticketmaster sort string such as \"date,asc\"","type":"string"},"domain":{"description":"Filter entities by domain availability","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"id":{"description":"Filter by venue IDs","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"countryCode":{"type":"string","minLength":2,"maxLength":2},"stateCode":{"type":"string"},"city":{"type":"string"},"postalCode":{"type":"string"},"geoPoint":{"description":"GeoHash location filter","type":"string"},"radius":{"type":"number"},"unit":{"type":"string","enum":["miles","km"]}}}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"Ticketmaster Discovery API JSON response"}}}},"402":{"description":"Payment Required"}}}},"/api/venues/details":{"post":{"operationId":"venues_details","summary":"Get Ticketmaster venue details by venue ID","tags":["Venues"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}},{"mpp":{"method":"tempo","intent":"charge","currency":"0x20c000000000000000000000b9537d11c60e8b50"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1,"description":"Ticketmaster entity ID"},"locale":{"default":"*","type":"string"},"domain":{"description":"Single value, comma-separated values, or string array","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}},"required":["id"]}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"Ticketmaster Discovery API JSON response"}}}},"402":{"description":"Payment Required"}}}},"/api/classifications/search":{"post":{"operationId":"classifications_search","summary":"Search Ticketmaster classifications such as segments, genres, and subgenres","tags":["Classifications"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}},{"mpp":{"method":"tempo","intent":"charge","currency":"0x20c000000000000000000000b9537d11c60e8b50"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"keyword":{"description":"Keyword to search","type":"string"},"locale":{"default":"*","description":"Locale such as en-us, en, or *","type":"string"},"source":{"description":"Ticketmaster source filter","anyOf":[{"type":"string","enum":["ticketmaster","universe","frontgate","tmr"]},{"type":"array","items":{"type":"string","enum":["ticketmaster","universe","frontgate","tmr"]}}]},"includeTest":{"description":"Include test entities","type":"string","enum":["yes","no","only"]},"size":{"description":"Page size; Ticketmaster max is 200","type":"integer","minimum":1,"maximum":200},"page":{"description":"Zero-based page number","type":"integer","minimum":0,"maximum":9007199254740991},"sort":{"description":"Ticketmaster sort string such as \"date,asc\"","type":"string"},"domain":{"description":"Filter entities by domain availability","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"id":{"description":"Filter by classification IDs","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}}}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"Ticketmaster Discovery API JSON response"}}}},"402":{"description":"Payment Required"}}}},"/api/classifications/details":{"post":{"operationId":"classifications_details","summary":"Get Ticketmaster classification details by classification ID","tags":["Classifications"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}},{"mpp":{"method":"tempo","intent":"charge","currency":"0x20c000000000000000000000b9537d11c60e8b50"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1,"description":"Ticketmaster entity ID"},"locale":{"default":"*","type":"string"},"domain":{"description":"Single value, comma-separated values, or string array","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}},"required":["id"]}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"Ticketmaster Discovery API JSON response"}}}},"402":{"description":"Payment Required"}}}},"/api/suggest":{"post":{"operationId":"suggest","summary":"Get Ticketmaster suggestions across events, attractions, venues, and products","tags":["Suggest"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}},{"mpp":{"method":"tempo","intent":"charge","currency":"0x20c000000000000000000000b9537d11c60e8b50"}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"keyword":{"type":"string"},"geoPoint":{"description":"GeoHash location filter","type":"string"},"latlong":{"description":"Deprecated Ticketmaster lat,long filter; prefer geoPoint","type":"string"},"radius":{"type":"number"},"unit":{"type":"string","enum":["miles","km"]},"source":{"type":"string","enum":["ticketmaster","universe","frontgate","tmr"]},"locale":{"default":"en","type":"string"},"includeTBA":{"type":"string","enum":["yes","no","only"]},"includeTBD":{"type":"string","enum":["yes","no","only"]},"includeTest":{"type":"string","enum":["yes","no","only"]},"size":{"type":"integer","minimum":1,"maximum":20},"countryCode":{"type":"string","minLength":2,"maxLength":2},"segmentId":{"description":"Single value, comma-separated values, or string array","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"resource":{"description":"Resources to include: attractions, events, venues, products","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"preferredCountry":{"type":"string","enum":["us","ca"]},"startDateTime":{"type":"string"},"endDateTime":{"type":"string"},"startEndDateTime":{"type":"string"},"localStartEndDateTime":{"type":"string"},"includeSpellcheck":{"type":"string","enum":["yes","no"]},"domain":{"description":"Single value, comma-separated values, or string array","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}}}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"Ticketmaster Discovery API JSON response"}}}},"402":{"description":"Payment Required"}}}}}}