Features
Next
When the line should drop under your threshold, the quietest hour, when to leave, and an hourly forecast, once a place has enough history to say.
What it says
The answer for one place, GET /v1/places/{id} or the get_wait tool, always has a next block. The minimal view keeps under, under_status, under_by, best and summary; the full view adds the confidence and the hourly forecast.
Ask
under | The threshold in minutes. Defaults: 30 for ERs, urgent care and border lanes, 20 for DMVs, 15 for airports. |
travel_min | Minutes to get there. Adds next.leave_by. |
date | A local date, today up to 7 days ahead, to plan that day instead of the next 24 hours. |
forecast | With the minimal view, adds a compact hourly forecast. |
curl "https://api.waity.ai/v1/places/pl_6e3znhb7h9?under=30&travel_min=20&view=full" \
-H "X-Api-Key: $WAITY_API_KEY"
Response
{
"next": {
"for_date": null,
"summary": null,
"based_on": "live",
"under": 30,
"under_status": "expected",
"under_by": "2026-10-30T16:45:00-06:00",
"best": {
"from": "2026-10-31T01:00:00-06:00",
"to": "2026-10-31T02:00:00-06:00",
"value": 6
},
"leave_by": "2026-10-30T16:25:00-06:00",
"confidence": "medium",
"days_of_history": 23,
"forecast": [
{
"at": "2026-10-30T14:00:00-06:00",
"open": true,
"open_minutes": 60,
"value": 48
},
{
Will it drop under the threshold?
under_status answers, with next.under_by when a drop is expected:
already | The live wait is at or under the threshold now. |
usually_under | No live reading, but this hour is usually under it. |
expected | The forecast drops under it; next.under_by says when. |
not_expected | The forecast doesn't drop under it in the window. |
not_now | The live wait is over it, and there's no forecast yet to say when it drops. |
no_data | No live reading and no forecast. |
closed_all_day, closed_rest_of_day | Closed all day, or for the rest of the day. |
not_published | The place doesn't publish its wait. |
Forecast
next.forecast has one slot per hour for the next 24 hours, or for the day in date: at, whether it is open and for how many minutes, and value. next.confidence is the weakest over the open hours, and next.days_of_history counts the days of history behind it.
next.based_on is live when the latest reading is blended in, and usual when the forecast is the usual pattern alone.
Best time
next.best is the quietest hour open at least 45 minutes, with its expected wait. It is null for ERs and urgent care, since nobody should time an emergency, and when the day is flat.
Leave by
With travel_min, next.leave_by is now when the line is already (or usually) short, or else when to set out to arrive as it drops. It is null when no drop is expected, or when you would arrive after closing; a warning says so.
Plan a day
With date, up to 7 days ahead, next covers that local day: next.for_date names it, and next.summary gives the hours and the quietest time, ready to repeat. A day the place is closed reads closed_all_day.
Enough history first
Forecast values, next.under_by, next.best and the usual wait show only at medium or high confidence. That takes at least 10 days of history for the hour, and waits steady enough from hour to hour. Until then they are null, and diagnostics says why.
So a new place says so instead of guessing: tell the user there is no forecast yet and quote the live wait. Never present opening hours as the best time to go.
Related
Reading an answer explains every field. The parameters are in REST API and MCP, and every field is in the API reference.