{"openapi":"3.1.0","info":{"title":"SeatGeek (BYOK) API","version":"0.1.0","description":"SeatGeek (BYOK) lets an AI assistant read your own SeatGeek data through the SeatGeek API with a key you supply (SeatGeek client ID). Read-only: 7 tools (search_events, get_event, search_performers, get_performer, search_venues, get_venue, list_taxonomies). The BYOK key travels with each request, is used for that one call only and is never stored, logged or cached; it is only ever sent to...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-seatgeek.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-seatgeek/docs"},"termsOfService":"https://connectorbay.com/byok-seatgeek/terms"},"servers":[{"url":"https://byok-seatgeek.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-seatgeek/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/search_events":{"post":{"operationId":"search_events","summary":"Search upcoming events by free text, performer, venue, taxonomy, dates, price and location. Returns title, time, venue a","description":"Search upcoming events by free text, performer, venue, taxonomy, dates, price and location. Returns title, time, venue and ticket price statistics. Use for \"What concerts are in New York in December\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"q":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Free-text search across events, performers and venues, for example 'boston celtics' or 'coachella'.","title":"Q"},"performer_slug":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only events with this performer, by SeatGeek slug, for example 'new-york-mets'.","title":"Performer Slug"},"venue_city":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only events in venues in this city.","title":"Venue City"},"venue_state":{"anyOf":[{"maxLength":2,"type":"string"},{"type":"null"}],"default":null,"description":"Only events in venues in this state or province (two letters).","title":"Venue State"},"taxonomy":{"anyOf":[{"maxLength":60,"type":"string"},{"type":"null"}],"default":null,"description":"Event type name such as sports, concert, theater, comedy, monster_truck (see list_taxonomies).","title":"Taxonomy"},"date_from":{"anyOf":[{"maxLength":20,"type":"string"},{"type":"null"}],"default":null,"description":"Only events at or after this UTC time, YYYY-MM-DD or YYYY-MM-DDTHH:MM:SS.","title":"Date From"},"date_to":{"anyOf":[{"maxLength":20,"type":"string"},{"type":"null"}],"default":null,"description":"Only events at or before this UTC time, YYYY-MM-DD or YYYY-MM-DDTHH:MM:SS.","title":"Date To"},"listing_count_above":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Only events with more than this many ticket listings (0 keeps events that have any listings).","title":"Listing Count Above"},"max_lowest_price":{"anyOf":[{"maximum":100000,"minimum":0,"type":"number"},{"type":"null"}],"default":null,"description":"Only events whose lowest ticket price is at most this many dollars.","title":"Max Lowest Price"},"sort":{"anyOf":[{"maxLength":30,"type":"string"},{"type":"null"}],"default":null,"description":"Sort as field.direction: datetime_utc.asc (default), datetime_local, announce_date, id or score with .asc or .desc.","title":"Sort"},"lat":{"anyOf":[{"maximum":90,"minimum":-90,"type":"number"},{"type":"null"}],"default":null,"description":"Latitude in decimal degrees; send together with lon to search around a point.","title":"Lat"},"lon":{"anyOf":[{"maximum":180,"minimum":-180,"type":"number"},{"type":"null"}],"default":null,"description":"Longitude in decimal degrees; send together with lat.","title":"Lon"},"geoip":{"anyOf":[{"maxLength":20,"type":"string"},{"type":"null"}],"default":null,"description":"A postal code (US or Canada) or IP address to search around.","title":"Geoip"},"range":{"anyOf":[{"maxLength":10,"type":"string"},{"type":"null"}],"default":null,"description":"Search radius around the location, for example '30mi' or '50km' (default 30mi).","title":"Range"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":10,"description":"How many results to return per page.","title":"Per Page"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"title":"search_eventsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_event":{"post":{"operationId":"get_event","summary":"Get one event by SeatGeek event ID, with performers, venue and ticket price statistics. Use for \"Show details for SeatGe","description":"Get one event by SeatGeek event ID, with performers, venue and ticket price statistics. Use for \"Show details for SeatGeek event 721901\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"event_id":{"description":"SeatGeek event ID.","maximum":100000000,"minimum":1,"title":"Event Id","type":"integer"}},"required":["event_id"],"title":"get_eventArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/search_performers":{"post":{"operationId":"search_performers","summary":"Search performers (artists, teams) by free text, slug, taxonomy or genre, sorted by popularity score by default. Use for","description":"Search performers (artists, teams) by free text, slug, taxonomy or genre, sorted by popularity score by default. Use for \"Find the performer Beastie Boys on SeatGeek\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"q":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Free-text search, for example 'red hot'.","title":"Q"},"slug":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Exact SeatGeek slug, for example 'new-york-mets'.","title":"Slug"},"taxonomy":{"anyOf":[{"maxLength":60,"type":"string"},{"type":"null"}],"default":null,"description":"Performer type name such as sports or concert.","title":"Taxonomy"},"genre":{"anyOf":[{"maxLength":60,"type":"string"},{"type":"null"}],"default":null,"description":"Music genre slug such as rock.","title":"Genre"},"sort":{"anyOf":[{"maxLength":30,"type":"string"},{"type":"null"}],"default":null,"description":"Sort as field.direction: score.desc (default), id or datetime fields with .asc or .desc.","title":"Sort"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":10,"description":"How many results to return per page.","title":"Per Page"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"title":"search_performersArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_performer":{"post":{"operationId":"get_performer","summary":"Get one performer by SeatGeek performer ID, with image, genres, taxonomies and links to other services. Use for \"Show de","description":"Get one performer by SeatGeek performer ID, with image, genres, taxonomies and links to other services. Use for \"Show details for SeatGeek performer 266\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"performer_id":{"description":"SeatGeek performer ID.","maximum":100000000,"minimum":1,"title":"Performer Id","type":"integer"}},"required":["performer_id"],"title":"get_performerArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/search_venues":{"post":{"operationId":"search_venues","summary":"Search venues by free text, city, state, country or postal code, or around a location. Use for \"Which venues are in Rock","description":"Search venues by free text, city, state, country or postal code, or around a location. Use for \"Which venues are in Rockford, Illinois\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"q":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Free-text search, for example 'madison'.","title":"Q"},"city":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"City name.","title":"City"},"state":{"anyOf":[{"maxLength":2,"type":"string"},{"type":"null"}],"default":null,"description":"Two-letter state or province code.","title":"State"},"country":{"anyOf":[{"maxLength":2,"type":"string"},{"type":"null"}],"default":null,"description":"Two-letter country code, for example US.","title":"Country"},"postal_code":{"anyOf":[{"maxLength":12,"type":"string"},{"type":"null"}],"default":null,"description":"Postal or ZIP code.","title":"Postal Code"},"lat":{"anyOf":[{"maximum":90,"minimum":-90,"type":"number"},{"type":"null"}],"default":null,"description":"Latitude in decimal degrees; send together with lon to search around a point.","title":"Lat"},"lon":{"anyOf":[{"maximum":180,"minimum":-180,"type":"number"},{"type":"null"}],"default":null,"description":"Longitude in decimal degrees; send together with lat.","title":"Lon"},"geoip":{"anyOf":[{"maxLength":20,"type":"string"},{"type":"null"}],"default":null,"description":"A postal code (US or Canada) or IP address to search around.","title":"Geoip"},"range":{"anyOf":[{"maxLength":10,"type":"string"},{"type":"null"}],"default":null,"description":"Search radius around the location, for example '30mi' or '50km' (default 30mi).","title":"Range"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":10,"description":"How many results to return per page.","title":"Per Page"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"title":"search_venuesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_venue":{"post":{"operationId":"get_venue","summary":"Get one venue by SeatGeek venue ID, with address, coordinates and link. Use for \"Show details for SeatGeek venue 632\".","description":"Get one venue by SeatGeek venue ID, with address, coordinates and link. Use for \"Show details for SeatGeek venue 632\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"venue_id":{"description":"SeatGeek venue ID.","maximum":100000000,"minimum":1,"title":"Venue Id","type":"integer"}},"required":["venue_id"],"title":"get_venueArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_taxonomies":{"post":{"operationId":"list_taxonomies","summary":"List SeatGeek event categories (taxonomies) such as sports and concert, with IDs and parent IDs, for use as filters. Use","description":"List SeatGeek event categories (taxonomies) such as sports and concert, with IDs and parent IDs, for use as filters. Use for \"Which event categories does SeatGeek have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_taxonomiesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}