{"openapi":"3.1.0","info":{"title":"BALLDONTLIE PGA (BYOK) API","version":"0.1.0","description":"BALLDONTLIE PGA (BYOK) lets an AI assistant read your own BALLDONTLIE PGA data through the BALLDONTLIE PGA API with a key you supply (BALLDONTLIE API key). Read-only: 8 tools (list_players, list_tournaments, list_courses, list_rounds, list_tournament_results, list_tournament_results_v2, list_tournament_course_stats, list_course_holes). The BYOK key travels with each request, is used for that one...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-balldontlie-pga.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-balldontlie-pga/docs"},"termsOfService":"https://connectorbay.com/byok-balldontlie-pga/terms"},"servers":[{"url":"https://byok-balldontlie-pga.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-balldontlie-pga/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/list_players":{"post":{"operationId":"list_players","summary":"Search PGA Tour players by name, country or active status with height, weight, birth date and birthplace. Available on t","description":"Search PGA Tour players by name, country or active status with height, weight, birth date and birthplace. Available on the free plan. Use for \"Find the golfer Scottie Scheffler\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"cursor":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Pagination cursor: pass the next_cursor value from the previous answer to get the following page.","title":"Cursor"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"How many results to return per page (1 to 100).","title":"Per Page"},"player_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Filter by player IDs. One value.","title":"Player Id"},"search":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Search by player name.","title":"Search"},"first_name":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Filter by first name.","title":"First Name"},"last_name":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Filter by last name.","title":"Last Name"},"country":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Filter by country.","title":"Country"},"active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"Filter by active status.","title":"Active"}},"title":"list_playersArguments","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_tournaments":{"post":{"operationId":"list_tournaments","summary":"List PGA Tour tournaments by season or status with dates, location, course, purse and champion. Available on the free pl","description":"List PGA Tour tournaments by season or status with dates, location, course, purse and champion. Available on the free plan. Use for \"Which PGA Tour tournaments are played in 2026\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"cursor":{"anyOf":[{"maximum":2147483647,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"Pagination cursor: pass the next_cursor value from the previous answer to get the following page.","title":"Cursor"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"How many results to return per page (1 to 100).","title":"Per Page"},"tournament_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Filter by tournament IDs. One value.","title":"Tournament Id"},"season":{"anyOf":[{"maximum":2147483647,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"Filter by season year.","title":"Season"},"status":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Filter by tournament status.","title":"Status"},"include_format":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"Add format_type to each tournament. Omit this parameter to preserve the original v2 tournament shape.","title":"Include Format"}},"title":"list_tournamentsArguments","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_courses":{"post":{"operationId":"list_courses","summary":"List golf courses used on the PGA Tour with par, yardage, location, architect and grass types. Available on the free pla","description":"List golf courses used on the PGA Tour with par, yardage, location, architect and grass types. Available on the free plan. Use for \"Tell me about Augusta National\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"cursor":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Pagination cursor: pass the next_cursor value from the previous answer to get the following page.","title":"Cursor"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"How many results to return per page (1 to 100).","title":"Per Page"},"course_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Filter by course IDs. One value.","title":"Course Id"},"search":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Search by course name.","title":"Search"}},"title":"list_coursesArguments","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_rounds":{"post":{"operationId":"list_rounds","summary":"List the rounds of a PGA Tour tournament with number, status and course. Available on the free plan. Use for \"What round","description":"List the rounds of a PGA Tour tournament with number, status and course. Available on the free plan. Use for \"What rounds were played at PGA Tour tournament 1\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"tournament_id":{"description":"Tournament ID.","maximum":2147483647,"minimum":1,"title":"Tournament Id","type":"integer"}},"required":["tournament_id"],"title":"list_roundsArguments","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_tournament_results":{"post":{"operationId":"list_tournament_results","summary":"List tournament results per player with finishing position, total score, score to par and earnings. Needs the ALL-STAR p","description":"List tournament results per player with finishing position, total score, score to par and earnings. Needs the ALL-STAR plan or higher. Use for \"Where did PGA player 1 finish in tournament 1\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"cursor":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Pagination cursor: pass the next_cursor value from the previous answer to get the following page.","title":"Cursor"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"How many results to return per page (1 to 100).","title":"Per Page"},"tournament_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Filter by tournament IDs. One value.","title":"Tournament Id"},"player_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Filter by player IDs. One value.","title":"Player Id"},"season":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Filter by season year.","title":"Season"}},"title":"list_tournament_resultsArguments","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_tournament_results_v2":{"post":{"operationId":"list_tournament_results_v2","summary":"List format-aware tournament results (stroke play or team events) for one tournament with position, earnings, cut status","description":"List format-aware tournament results (stroke play or team events) for one tournament with position, earnings, cut status and current round. Needs the ALL-STAR plan or higher. Use for \"Show the leaderboard of PGA Tour tournament 1\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"tournament_id":{"description":"Tournament ID.","maximum":2147483647,"minimum":1,"title":"Tournament Id","type":"integer"},"competitor_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Filter by competitor IDs returned by tournament_competitors. One value.","title":"Competitor Id"},"cursor":{"anyOf":[{"maximum":2147483647,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"Pagination cursor: pass the next_cursor value from the previous answer to get the following page.","title":"Cursor"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"How many results to return per page (1 to 100).","title":"Per Page"}},"required":["tournament_id"],"title":"list_tournament_results_v2Arguments","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_tournament_course_stats":{"post":{"operationId":"list_tournament_course_stats","summary":"List scoring statistics of each hole during a tournament, such as scoring average, birdies and bogeys. Needs the ALL-STA","description":"List scoring statistics of each hole during a tournament, such as scoring average, birdies and bogeys. Needs the ALL-STAR plan or higher. Use for \"Which holes played hardest at PGA Tour tournament 1\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"cursor":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Pagination cursor: pass the next_cursor value from the previous answer to get the following page.","title":"Cursor"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"How many results to return per page (1 to 100).","title":"Per Page"},"tournament_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Filter by tournament IDs. One value.","title":"Tournament Id"},"course_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Filter by course IDs. One value.","title":"Course Id"},"hole_number":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Filter by hole number (1-18).","title":"Hole Number"},"round_number":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Filter by round number (1-4).","title":"Round Number"}},"title":"list_tournament_course_statsArguments","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_course_holes":{"post":{"operationId":"list_course_holes","summary":"List holes of golf courses with par and yardage. Needs the ALL-STAR plan or higher. Use for \"What are the par and yardag","description":"List holes of golf courses with par and yardage. Needs the ALL-STAR plan or higher. Use for \"What are the par and yardage of each hole on course 1\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"cursor":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Pagination cursor: pass the next_cursor value from the previous answer to get the following page.","title":"Cursor"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"How many results to return per page (1 to 100).","title":"Per Page"},"course_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Filter by course IDs. One value.","title":"Course Id"},"hole_number":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Filter by hole number (1-18).","title":"Hole Number"}},"title":"list_course_holesArguments","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}}}}