{"files":{"SKILL.md":"---\nname: discovery-api\ndescription: \"Discovery API skill. Use when working with Discovery for discovery. Covers 13 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# Discovery API\nAPI version: v2\n\n## Auth\nNo authentication required.\n\n## Base URL\nhttps://www.ticketmaster.com/discovery/v2\n\n## Setup\n1. No auth setup needed\n2. GET /discovery/v2/attractions -- attraction search\n3. Explore available endpoints below\n\n## Endpoints\n13 endpoints across 1 group. See references/api-spec.lap for full details.\n\n### Discovery\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /discovery/v2/attractions | Attraction Search |\n| GET | /discovery/v2/attractions/{id} | Get Attraction Details |\n| GET | /discovery/v2/classifications | Classification Search |\n| GET | /discovery/v2/classifications/genres/{id} | Get Genre Details |\n| GET | /discovery/v2/classifications/segments/{id} | Get Segment Details |\n| GET | /discovery/v2/classifications/subgenres/{id} | Get Sub-Genre Details |\n| GET | /discovery/v2/classifications/{id} | Get Classification Details |\n| GET | /discovery/v2/events | Event Search |\n| GET | /discovery/v2/events/{id} | Get Event Details |\n| GET | /discovery/v2/events/{id}/images | Get Event Images |\n| GET | /discovery/v2/suggest | Find Suggest |\n| GET | /discovery/v2/venues | Venue Search |\n| GET | /discovery/v2/venues/{id} | Get Venue Details |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"List all attractions?\" -> GET /discovery/v2/attractions\n- \"Get attraction details?\" -> GET /discovery/v2/attractions/{id}\n- \"List all classifications?\" -> GET /discovery/v2/classifications\n- \"Get genre details?\" -> GET /discovery/v2/classifications/genres/{id}\n- \"Get segment details?\" -> GET /discovery/v2/classifications/segments/{id}\n- \"Get subgenre details?\" -> GET /discovery/v2/classifications/subgenres/{id}\n- \"Get classification details?\" -> GET /discovery/v2/classifications/{id}\n- \"List all events?\" -> GET /discovery/v2/events\n- \"Get event details?\" -> GET /discovery/v2/events/{id}\n- \"List all images?\" -> GET /discovery/v2/events/{id}/images\n- \"List all suggest?\" -> GET /discovery/v2/suggest\n- \"List all venues?\" -> GET /discovery/v2/venues\n- \"Get venue details?\" -> GET /discovery/v2/venues/{id}\n\n## Response Tips\n- Check response schemas in references/api-spec.lap for field details\n- Paginated endpoints accept limit/offset or cursor parameters\n\n## References\n- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas\n\n> Generated from the official API spec by [LAP](https://lap.sh)\n","references/api-spec.lap":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api Discovery API\n@base https://www.ticketmaster.com/discovery/v2\n@version v2\n@common_fields {locale: any # The locale in ISO code format. Multiple comma-separated values can be provided. When omitting the country part of the code (e.g. only 'en' or 'fr') then the first matching locale is used. When using a '*' it matches all locales. '*' can only be used at the end (e.g. 'en-us,en,*'), includeLicensedContent: any # Yes if you want to display licensed content}\n@endpoints 13\n@toc discovery(13)\n\n@endpoint GET /discovery/v2/attractions\n@desc Attraction Search\n@optional {sort: any # Sorting order of the search result. Allowable Values : 'name,asc', 'name,desc', 'relevance,asc', 'relevance,desc', classificationName: any # Filter attractions by classification name: name of any segment, genre, sub-genre, type, sub-type, classificationId: any # Filter attractions by classification id: id of any segment, genre, sub-genre, type, sub-type, keyword: any # Keyword to search on, id: any # Filter entities by its id, source: any # Filter entities by its source name, includeTest: any # True if you want to have entities flag as test in the response. Only, if you only wanted test entities, page: any # Page number, size: any # Page size of the response, includeSpellcheck: any # yes, to include spell check suggestions in the response.}\n@returns(200) successful operation\n\n@endpoint GET /discovery/v2/attractions/{id}\n@desc Get Attraction Details\n@required {id: any # ID of the attraction}\n@returns(200) successful operation\n\n@endpoint GET /discovery/v2/classifications\n@desc Classification Search\n@optional {sort: any # Sorting order of the search result, keyword: any # Keyword to search on, id: any # Filter entities by its id, source: any # Filter entities by its source name, includeTest: any # True if you want to have entities flag as test in the response. Only, if you only wanted test entities, page: any # Page number, size: any # Page size of the response, includeSpellcheck: any # yes, to include spell check suggestions in the response.}\n@returns(200) successful operation\n\n@endpoint GET /discovery/v2/classifications/genres/{id}\n@desc Get Genre Details\n@required {id: any # ID of the genre}\n@returns(200) successful operation\n\n@endpoint GET /discovery/v2/classifications/segments/{id}\n@desc Get Segment Details\n@required {id: any # ID of the segment}\n@returns(200) successful operation\n\n@endpoint GET /discovery/v2/classifications/subgenres/{id}\n@desc Get Sub-Genre Details\n@required {id: any # ID of the subgenre}\n@returns(200) successful operation\n\n@endpoint GET /discovery/v2/classifications/{id}\n@desc Get Classification Details\n@required {id: any # ID of the segment, genre, or sub-genre}\n@returns(200) successful operation\n\n@endpoint GET /discovery/v2/events\n@desc Event Search\n@optional {sort: any # Sorting order of the search result. Allowable values : 'name,asc', 'name,desc', 'date,asc', 'date,desc', 'relevance,asc', 'relevance,desc', 'distance,asc', 'name,date,asc', 'name,date,desc', 'date,name,asc', 'date,name,desc','onsaleStartDate,asc', 'id,asc', startDateTime: any # Filter events with a start date after this date, endDateTime: any # Filter events with a start date before this date, onsaleStartDateTime: any # Filter events with onsale start date after this date, onsaleOnStartDate: any # Filter events with onsale start date on this date, onsaleOnAfterStartDate: any # Filter events with onsale range within this date, onsaleEndDateTime: any # Filter events with onsale end date before this date, city: any # Filter events by city, countryCode: any # Filter events by country code, stateCode: any # Filter events by state code, postalCode: any # Filter events by postal code / zipcode, venueId: any # Filter events by venue id, attractionId: any # Filter events by attraction id, segmentId: any # Filter events by segment id, segmentName: any # Filter events by segment name, classificationName: any # Filter events by classification name: name of any segment, genre, sub-genre, type, sub-type, classificationId: any # Filter events by classification id: id of any segment, genre, sub-genre, type, sub-type, marketId: any # Filter events by market id, promoterId: any # Filter events by promoter id, dmaId: any # Filter events by dma id, includeTBA: any # True, to include events with date to be announce (TBA), includeTBD: any # True, to include event with a date to be defined (TBD), clientVisibility: any # Filter events by clientName, latlong: any # Filter events by latitude and longitude, this filter is deprecated and maybe removed in a future release, please use geoPoint instead, radius: any # Radius of the area in which we want to search for events., unit: any # Unit of the radius, geoPoint: any # filter events by geoHash, keyword: any # Keyword to search on, id: any # Filter entities by its id, source: any # Filter entities by its source name, includeTest: any # True if you want to have entities flag as test in the response. Only, if you only wanted test entities, page: any # Page number, size: any # Page size of the response, includeSpellcheck: any # yes, to include spell check suggestions in the response.}\n@returns(200) successful operation\n\n@endpoint GET /discovery/v2/events/{id}\n@desc Get Event Details\n@required {id: any # ID of the event}\n@returns(200) successful operation\n\n@endpoint GET /discovery/v2/events/{id}/images\n@desc Get Event Images\n@required {id: any # ID of the event}\n@returns(200) successful operation\n\n@endpoint GET /discovery/v2/suggest\n@desc Find Suggest\n@optional {keyword: any # Keyword to search on, source: any # Filter entities by its source name, latlong: any # Filter events by latitude and longitude, this filter is deprecated and maybe removed in a future release, please use geoPoint instead, radius: any # Radius of the area in which we want to search for events., unit: any # Unit of the radius, size: any # Size of every entity returned in the response, includeFuzzy: any # yes, to include fuzzy matches in the search. This has performance impact., clientVisibility: any # Filter events to clientName, countryCode: any # Filter suggestions by country code, includeTBA: any # True, to include events with date to be announce (TBA), includeTBD: any # True, to include event with a date to be defined (TBD), segmentId: any # Filter suggestions by segment id, geoPoint: any # filter events by geoHash, includeSpellcheck: any # yes, to include spell check suggestions in the response.}\n@returns(200) successful operation\n\n@endpoint GET /discovery/v2/venues\n@desc Venue Search\n@optional {sort: any # Sorting order of the search result. Allowable Values: 'name,asc', 'name,desc', 'relevance,asc', 'relevance,desc', 'distance,asc', 'distance,desc', stateCode: any # Filter venues by state / province code, countryCode: any # Filter venues by country code, latlong: any # Filter events by latitude and longitude, this filter is deprecated and maybe removed in a future release, please use geoPoint instead, radius: any # Radius of the area in which we want to search for events., unit: any # Unit of the radius, geoPoint: any # filter events by geoHash, keyword: any # Keyword to search on, id: any # Filter entities by its id, source: any # Filter entities by its source name, includeTest: any # True if you want to have entities flag as test in the response. Only, if you only wanted test entities, page: any # Page number, size: any # Page size of the response, includeSpellcheck: any # yes, to include spell check suggestions in the response.}\n@returns(200) successful operation\n\n@endpoint GET /discovery/v2/venues/{id}\n@desc Get Venue Details\n@required {id: any # ID of the venue}\n@returns(200) successful operation\n\n@end\n"}}