birdieapi-com Basic lookup API

The Basic lookup API from birdieapi-com — 4 operation(s) for basic lookup.

Operations 4

POST /v1/get_leaderboard Leaderboard #
POST /v1/get_course Course #
POST /v1/get_scorecard Scorecard #
POST /v1/get_ratings Ratings #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/birdieapi-com:birdieapi-com-basic-lookup-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

birdieapi-com-basic-lookup-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: BirdieAPI Basic lookup API
  version: 1.0.0
  description: BirdieAPI golf data. Every tool is a POST to /v1/{tool} with a JSON body of its arguments and costs the credits in x-credits. The same tools are an MCP server at https://mcp.birdieapi.com/mcp and free accounts get credits every month at https://birdieapi.com/signup
  termsOfService: https://birdieapi.com/terms
  contact:
    name: BirdieAPI support
    email: support@birdieapi.com
    url: https://birdieapi.com/docs
servers:
- url: https://mcp.birdieapi.com
security:
- apiKey: []
- bearer: []
tags:
- name: Basic lookup
paths:
  /v1/get_leaderboard:
    post:
      operationId: get_leaderboard
      summary: Leaderboard
      description: 'Use for a tournament''s results: every player in the field in finishing order with position (T5), status (cut, wd, dq), score to par, total strokes, each round''s score and strokes versus the field, earnings (none for the DP World Tour or LIV) and season points (FedEx Cup, PGA Tour only), plus any playoff. Costs 2 credits.'
      tags:
      - Basic lookup
      x-credits: 2
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                tournament_id:
                  type: string
                  description: Tournament id from list_tournaments or get_schedule.
                limit:
                  description: Max players (default the whole field).
                  type: integer
                  minimum: 1
                  maximum: 500
                league:
                  description: 'League. Defaults to golf. One of: golf, lpga, liv, dpwt, kornferry.'
                  type: string
                  enum:
                  - golf
                  - lpga
                  - liv
                  - dpwt
                  - kornferry
              required:
              - tournament_id
              additionalProperties: false
      responses:
        '200':
          description: The result, wrapped in data.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      tournament:
                        type: object
                        propertyNames:
                          type: string
                        additionalProperties: {}
                      players:
                        type: array
                        items:
                          type: object
                          propertyNames:
                            type: string
                          additionalProperties: {}
                      count:
                        type: number
                      note:
                        type: string
                    required:
                    - tournament
                    - players
                    - count
                    additionalProperties: false
                required:
                - data
        '400':
          description: Invalid arguments.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
        '401':
          description: Missing or invalid API key.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
        '402':
          description: Not enough credits.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
        '429':
          description: Rate limited.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
  /v1/get_course:
    post:
      operationId: get_course
      summary: Course
      description: 'Use for a course as it was set up for a tournament: par and yards per hole, and how each hole played (scoring average, to par, birdie and bogey rates, difficulty rank) from every round on it. For a tournament on more than one course pass course_id. Costs 2 credits.'
      tags:
      - Basic lookup
      x-credits: 2
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                tournament_id:
                  type: string
                  description: Tournament id from list_tournaments.
                course_id:
                  description: Course id, for tournaments played on more than one course (list_tournaments lists them).
                  type: string
                league:
                  description: 'League. Defaults to golf. One of: golf, lpga, liv, dpwt, kornferry.'
                  type: string
                  enum:
                  - golf
                  - lpga
                  - liv
                  - dpwt
                  - kornferry
              required:
              - tournament_id
              additionalProperties: false
      responses:
        '200':
          description: The result, wrapped in data.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      tournament:
                        type: object
                        propertyNames:
                          type: string
                        additionalProperties: {}
                      course:
                        type: object
                        propertyNames:
                          type: string
                        additionalProperties: {}
                      other_courses:
                        type: array
                        items:
                          type: object
                          propertyNames:
                            type: string
                          additionalProperties: {}
                      rounds:
                        type: number
                      scoring_average:
                        type:
                        - number
                        - 'null'
                      holes:
                        type: array
                        items:
                          type: object
                          propertyNames:
                            type: string
                          additionalProperties: {}
                      note:
                        type: string
                    required:
                    - tournament
                    - course
                    - other_courses
                    - rounds
                    - scoring_average
                    - holes
                    additionalProperties: false
                required:
                - data
        '400':
          description: Invalid arguments.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
        '401':
          description: Missing or invalid API key.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
        '402':
          description: Not enough credits.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
        '429':
          description: Rate limited.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
  /v1/get_scorecard:
    post:
      operationId: get_scorecard
      summary: Scorecard
      description: 'Use for one player''s tournament hole by hole: every round''s strokes on each hole with par, yards and the result (birdie, bogey), the course played, out and in, and strokes versus the field. Costs 2 credits.'
      tags:
      - Basic lookup
      x-credits: 2
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                tournament_id:
                  type: string
                  description: Tournament id from list_tournaments.
                player_id:
                  type: string
                  description: Player id from get_leaderboard or search_players.
                league:
                  description: 'League. Defaults to golf. One of: golf, kornferry.'
                  type: string
                  enum:
                  - golf
                  - kornferry
              required:
              - tournament_id
              - player_id
              additionalProperties: false
      responses:
        '200':
          description: The result, wrapped in data.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      result:
                        type: object
                        propertyNames:
                          type: string
                        additionalProperties: {}
                      rounds:
                        type: array
                        items:
                          type: object
                          propertyNames:
                            type: string
                          additionalProperties: {}
                      note:
                        type: string
                    required:
                    - result
                    - rounds
                    additionalProperties: false
                required:
                - data
        '400':
          description: Invalid arguments.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
        '401':
          description: Missing or invalid API key.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
        '402':
          description: Not enough credits.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
        '429':
          description: Rate limited.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
  /v1/get_ratings:
    post:
      operationId: get_ratings
      summary: Ratings
      description: 'Use for who is playing best: our strokes-versus-field rating for every player active in the past year, best first. A rating of 2.0 means two strokes a round better than an average player in the same fields, adjusted for field strength and weighted toward recent rounds. Pass as_of for the ratings on a past date. Costs 2 credits.'
      tags:
      - Basic lookup
      x-credits: 2
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                limit:
                  description: Max players (default 50).
                  type: integer
                  minimum: 1
                  maximum: 500
                as_of:
                  description: 'A date (YYYY-MM-DD): the ratings as they stood then. Default the latest.'
                  type: string
                min_rounds:
                  description: Minimum decay-weighted rounds behind a rating (default 20).
                  type: integer
                  minimum: 1
                  maximum: 9007199254740991
                league:
                  description: 'League. Defaults to golf. One of: golf, lpga, liv, dpwt, kornferry.'
                  type: string
                  enum:
                  - golf
                  - lpga
                  - liv
                  - dpwt
                  - kornferry
              additionalProperties: false
      responses:
        '200':
          description: The result, wrapped in data.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      as_of:
                        type:
                        - string
                        - 'null'
                      min_rounds:
                        type: number
                      ratings:
                        type: array
                        items:
                          type: object
                          propertyNames:
                            type: string
                          additionalProperties: {}
                      count:
                        type: number
                      method:
                        type: string
                    required:
                    - as_of
                    - ratings
                    - count
                    - method
                    additionalProperties: false
                required:
                - data
        '400':
          description: Invalid arguments.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
        '401':
          description: Missing or invalid API key.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
        '402':
          description: Not enough credits.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
        '429':
          description: Rate limited.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
components:
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-api-key
    bearer:
      type: http
      scheme: bearer
      description: The same API key as a bearer token.
externalDocs:
  description: Documentation
  url: https://birdieapi.com/docs