Discover/TeeOff API
live

TeeOff APIteeoff.com ↗

Access TeeOff.com tee time availability, golf course details, reviews, and deal pricing across thousands of courses via 8 structured endpoints.

Endpoints
8
Updated
1mo ago

What is the TeeOff API?

The TeeOff.com API exposes 8 endpoints covering golf tee time search, course details, golfer reviews, and deal discovery. Use search_tee_times to query available tee times by location, date, player count, and hole count, then drill into a specific facility with get_all_tee_times_for_facility to retrieve full pricing breakdowns, rate names, and cart inclusion details. Location resolution, course metadata, and deal filters are all covered in dedicated endpoints.

This call costs1 credit / call— charged only on success
Try it
Search text (course name, city, or postal code)
→ api.parse.bot/scraper/4c2fdb6d-ae35-42fa-abab-5fd559e72ce0/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X POST 'https://api.parse.bot/scraper/4c2fdb6d-ae35-42fa-abab-5fd559e72ce0/autocomplete_location' \
  -H 'X-API-Key: $PARSE_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "query": "Orlando"
}'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace teeoff-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""TeeOff Golf SDK — search courses, find deals, browse tee times."""
from parse_apis.teeoff_golf_tee_times_api import TeeOff, CourseNotFound

client = TeeOff()

# Search for golf courses with available tee times in Orlando
for facility in client.facilities.search(location="Orlando", limit=3):
    print(facility.name, facility.min_price, facility.formatted_distance)

# Browse tee times for a specific facility
facility = client.facilities.search(location="Orlando", limit=1).first()
if facility:
    for tt in facility.tee_times.list(limit=3):
        print(f"  {tt.formatted_time} - ${tt.min_tee_time_rate}")

# Get detailed course info and read reviews
try:
    course = client.courses.get(course_id="1028365")
    print(course.name, course.description)
    for box in course.tee_boxes:
        print(f"  {box.tee}: par {box.par}, {box.length}, slope {box.slope}")
    for review in course.reviews.list(limit=3):
        print(f"  ★{review.rating} by {review.user_nickname}: {review.title}")
except CourseNotFound as exc:
    print(f"Course not found: {exc}")

# Autocomplete location search
for loc in client.locations.search(query="Pebble Beach", limit=3):
    print(loc.name, loc.display_name)

print("exercised: facilities.search / tee_times.list / courses.get / reviews.list / locations.search")
All endpoints · 8 totalmissing one? ·

Autocomplete search for course name, city, or postal code. Returns matching locations with geographic coordinates, address information, and type classification. Use the geo coordinates from results to feed into search_tee_times or get_courses_near_me.

Input
ParamTypeDescription
queryrequiredstringSearch text (course name, city, or postal code)
Response
{
  "type": "object",
  "fields": {
    "hits": "array of location objects with name, type, geo coordinates, and address information",
    "count": "integer total number of matching results"
  },
  "sample": {
    "data": {
      "hits": [
        {
          "id": "677f13e0600104d3141edacf",
          "geo": {
            "lat": 28.452773,
            "lon": -81.478124
          },
          "name": "Club Champion Orlando",
          "type": "course",
          "displayName": "Club Champion Orlando, Orlando, Florida, US"
        }
      ],
      "count": 31
    },
    "status": "success"
  }
}

About the TeeOff API

Tee Time Search and Availability

The search_tee_times endpoint accepts either a plain location string (resolved to coordinates internally) or explicit lat/lng values, along with optional filters for date (MM/DD/YYYY), holes (9 or 18), players, radius in miles, and sort_by. It returns a facilities array where each object includes tee time slots, per-round pricing, distance from the search point, and course ratings. The total field reflects how many facilities matched. For coordinate-first lookups, get_courses_near_me provides the same facility structure sorted by distance with no additional filter parameters required.

Facility-Level Tee Time Detail

get_all_tee_times_for_facility takes a facility_id (sourced from search_tee_times results) and returns the complete tee time list for a single course on a given date. Each tee time object includes rate details, full pricing breakdown, player rules, and whether a cart is included. The total field gives the count of available slots for that day.

Course Details and Reviews

get_course_details returns structured metadata for a course including a description, tee_boxes array (each entry has tee name, par, length, rating, and slope), course_stats (holes, par, total length), and a quick_facts object of miscellaneous course attributes. The course_id parameter maps to the reviewId field in search results. get_course_reviews returns paginated golfer reviews with Rating, ReviewText, Title, UserNickname, SubmissionTime, and five SecondaryRatings dimensions: Pace, Course Conditions, Staff Friendliness, Value for Money, and Course Layout.

Deal and Location Utilities

search_deal_times filters results to facilities with active discounted tee times for a given location and date. search_flash_daily_deals targets promoted campaign offers; note that it may return zero results if no active campaigns exist in the area. autocomplete_location resolves partial course names, city names, or postal codes into structured location hits with geo coordinates, type, and address fields — these coordinates feed directly into search_tee_times or get_courses_near_me.

Reliability & maintenance

The TeeOff API is a managed, monitored endpoint for teeoff.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when teeoff.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official teeoff.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a tee time comparison tool that queries search_tee_times across multiple cities and surfaces the lowest-priced available slots by date.
  • Aggregate course difficulty metrics by pulling tee_boxes data (rating, slope, length) from get_course_details for a set of facilities.
  • Create a deal alert system that polls search_deal_times and search_flash_daily_deals daily for a target metro area.
  • Power a golf trip planner by combining autocomplete_location for city resolution, search_tee_times for availability, and get_course_reviews for quality filtering.
  • Display a scorecard-style course profile page using tee_boxes, course_stats, quick_facts, and description from get_course_details.
  • Build a proximity-based course finder using get_courses_near_me with user-provided GPS coordinates and a configurable radius.
  • Analyze golfer sentiment across a region by ingesting SecondaryRatings dimensions (Pace, Value for Money, Course Layout) from get_course_reviews.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo2005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min
Team$300/mo20,000300 req/min
Company$1,000/mo100,000500 req/min

Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does TeeOff.com have an official developer API?+
TeeOff.com does not publish a public developer API or API documentation. There is no official endpoint registry or OAuth program available to third-party developers.
What does get_all_tee_times_for_facility return that search_tee_times does not?+
search_tee_times returns a summary of available slots across many facilities. get_all_tee_times_for_facility focuses on one facility and returns the complete tee time list for that day, including full rate details, cart inclusion flags, player rules, and the complete pricing breakdown per slot — fields that are aggregated or omitted in the multi-facility search response.
Can I retrieve historical tee time data or past booking records?+
No historical tee time or booking data is exposed. All search endpoints (search_tee_times, get_all_tee_times_for_facility, search_deal_times) operate on current or future dates, defaulting to tomorrow if no date is supplied. You can fork this API on Parse and revise it to add an endpoint if a historical data surface becomes available.
Does the API support booking or reserving a tee time?+
No booking or reservation actions are covered. The API returns availability, pricing, and course information only — it does not expose any checkout or booking confirmation endpoints. You can fork this API on Parse and revise it to add booking functionality if that endpoint is identified.
How does search_flash_daily_deals differ from search_deal_times, and when might it return empty results?+
search_deal_times filters facilities to those with active discounted tee times and reliably returns results when deals exist near the location. search_flash_daily_deals targets promoted campaign offers specifically, and the response total can be zero if no sponsored campaigns are currently running in the searched area. Both endpoints share the same facilities response structure.
Page content last updated . Spec covers 8 endpoints from teeoff.com.
Related APIs in SportsSee all →
foreupsoftware.com API
Find and book available tee times at golf facilities using the foreUP platform by searching for specific dates, player counts, and hole preferences while comparing pricing and availability. Access booking details, notes, and filter options to plan your perfect round of golf.
brooklinegolf.com API
Access data from brooklinegolf.com.
playtomic.com API
Search and explore sports clubs on Playtomic. Find clubs by name or location, retrieve court details and opening hours, check real-time slot availability, and calculate court utilization across multiple days.
pgatour.com API
Track PGA Tour tournaments with live leaderboards, player scorecards, and detailed shot-by-shot data, while monitoring player standings and the FedExCup race. Access complete tournament schedules and player statistics to stay updated on professional golf competitions.
opentable.com API
Search for restaurants across the US with ratings, reviews, photos, and pricing information, plus get real-time availability and autocomplete suggestions as you type. Check reservation openings and explore detailed restaurant features to find and book your perfect dining experience.
hotels.com API
Search for hotels across millions of properties, view room availability and pricing, and get detailed information about accommodations at specific destinations. Get location suggestions and discover popular travel spots to help plan your next getaway.
europeantour.com API
Track detailed hole-by-hole scorecards and round-by-round statistics for DP World Tour players to analyze performance across European Tour tournaments. Monitor individual player scores, course difficulty, and scoring patterns to gain insights into competitive golf results.
orbitz.com API
Search for hotels and destinations on Orbitz, then view detailed property information including pricing and amenities. Get typeahead location suggestions as you type to quickly find your travel destination.