NextAppt appointment data: coverage and methodology

NextAppt aggregates appointment openings for configured services at publicly listed businesses in the Austin area. Coverage is partial: it is not a list of every Austin business, service or appointment. An empty result means no matching inventory was returned, not that the area has no openings.

Source and freshness

Confirmed means an opening was observed in a business booking source; it does not mean reserved or guaranteed. Last checked is the observation timestamp retained for that exact confirmed entry. Fresh means checked within 30 minutes. Older observations are stale; missing or invalid timestamps are unknown. Inventory-read and page-generation times do not establish booking-source freshness. Refresh schedules and service windows vary.

Inferred means a possible service opening derived from other availability, not an independently observed opening for that service. Manual means entered by an administrator, not independently checked by this feed. The default feed includes only fresh confirmed entries. Business verification describes the business listing and is independent of whether an appointment was confirmed.

Reading the inventory

Browse Austin inventory in HTML or use the public JSON feed. Both use the same data, require no login or JavaScript, and do not trigger scraping or booking. Include stale, unknown, manual and inferred entries only when you need those explicitly labelled records.

Default window: the next 24 hours. At most seven days per request, within the next eight days. All Austin wall-clock times use America/Chicago, including daylight saving changes. startAt is UTC; localStart includes the Austin UTC offset. Nonexistent or ambiguous local times are excluded instead of guessed.

Parameters

category
Exact configured category slug, for example massage.
business
Exact business slug or name.
duration
Service duration in minutes (1–480).
hours
1–168; default 24. Use instead of date or from/to.
date
Austin calendar date YYYY-MM-DD; past hours excluded.
from and to
Both ISO timestamps with Z or an explicit offset. End exclusive. Past hours excluded.
lat, lon and radiusKm
All three required together; radius greater than zero, at most 100 km. Entries lacking coordinates are excluded for this filter.
includeInferred
true or false; default false.
includeStale
true or false; default false. Must be true to retrieve unknown-freshness inferred/manual entries.
page
Page number, starting at 1; 100 entries per page. Follow next until null.

totalMatching describes all matching eligible entries in the current read, not just one page. Publicly hidden inventory and disabled businesses/services are excluded. Card-display limits do not truncate this inventory feed. The dataset may be cached for up to 15 seconds. Live inventory can change between pages; this is not an immutable export.

Unknown service mappings, invalid booking links and unsafe timestamps are excluded and counted at dataset scope. If the bounded dataset exceeds 20,000 rows or the database cannot be read, the endpoint returns 503 rather than a misleading empty or partial success. No customer or owner contact data, raw scraper payloads or billing fields are included.

Always follow the business booking link to reconfirm and complete a reservation. Cite the NextAppt results URL and source-check time when using the data.