find_best_meeting_time
Find a fair meeting time
Meeting planner across time zones: propose up to three fair meeting times for two to eight cities while the slot is still being chosen. Use when the user wants a time that works for people in different cities and time zones. Ranking does not take a meeting length. A city's public holiday down-ranks that slot and is named in the reasons. Each slot city says whether that date is a holiday. Each slot has a score and the reasons. The result has one https://timeofmeeting.com link that opens the planner with those cities, and next_step, which says the user can choose a duration when creating the invitation. It does not include calendar files or a QR code. The meeting length and the invitation formats are chosen in a later step.
Parameterscitiesrequiredend_datestart_date
convert_time
Convert a local time
Convert a local time in one city into one or more other cities' time zones, e.g. 3pm in Warsaw in New York and Bangalore. Use when the user names a time in one place and asks what it is elsewhere, or whether it falls in work hours there. Each city has its IANA time zone and says whether the converted time is in work hours. Each city says whether that local date is a public holiday. The result includes a https://timeofmeeting.com link for a 60-minute meeting. A different length can be set when the invitation is built.
Parameterstorequiredfromrequiredtimerequired
current_time_in_cities
Current time in cities
World clock: show the current local time, IANA time zone, UTC offset, work-hour band, and public holiday, if that date is one, for each city. Use when the user asks what time it is now in one or more cities. The result includes a https://timeofmeeting.com link that opens the planner for the first city. weeks is the ISO week and the US week of the UTC date.
Parameterscitiesrequired
search_cities
Search cities
Find cities by name. Each city includes its id, IANA time zone, and country. Use when a city name is ambiguous or the user wants to know which time zone a city is in. The query is not repeated.
Parametersqueryrequired
get_dst_changes
Daylight-saving changes
List daylight saving time (DST) clock changes for one city. Use when the user asks when the clocks change, or whether a recurring meeting moves when DST starts or ends. Defaults to the next year. Each change includes the local time and the ISO week and US week of that local date. The range can be at most 366 days.
Parameterscityrequiredend_datestart_date
create_meeting_link
Create a meeting link
Make a calendar invite for one chosen meeting time across time zones: a Time of Meeting planner link, plus optional paste-ready text, an .ics calendar file, a Google Calendar link, or a QR code. Use once the meeting time is chosen. duration_minutes is the meeting length, chosen now, with the same choices as the planner Duration control. title is an optional meeting name, e.g. Weekly sync. Each city says whether that date is a public holiday. Includes a Time of Meeting planner link alongside calendar links. Planner link: open this meeting on timeofmeeting.com (see and adjust it in the planner). formats adds text to paste into a chat or email, a calendar file for Outlook, Apple Calendar and most calendar apps, an add-to-Google-Calendar link, or a QR code image someone can scan with a phone, in that order. The calendar file is https://timeofmeeting.com/c?q=.
Parametersstartrequiredtitlecitiesrequiredformatsduration_minutes
get_holidays
Public holidays
List public holidays for a country, an optional ISO 3166-2 region, or a city. Use when the user asks whether a date is a holiday somewhere, or which days are holidays in a year. Pass one year, a list of years so 2026, 2027, and 2028 can come back together, or a date range. Each holiday has the date, the weekday, whether it falls on Saturday or Sunday, whether it creates a long weekend of three or more days with Saturday and Sunday, the local name, the English name, whether it is regional, the region codes, the file it came from, and the calendar page URL. The same holiday list marks the planner timeline.
Parameterscityyearyearsregioncountryend_datestart_date
days_between
Days between two dates
Count calendar days from start to end. Use when the user asks how many days are between two dates. Both are YYYY-MM-DD. include_start and include_end default to false, so the count is the dates strictly after start and strictly before end: 2024-02-28 to 2024-03-01 is 1 in a leap year (29 February) and 0 in a common year. Set both to true to count every date from start through end (3 in that leap-year span, 2 otherwise). The count is negative when end is before start. The same day is 0 unless both ends are included, which is 1. The result is that count and nothing else.
Parametersendrequiredstartrequiredinclude_endinclude_start
working_days_between
Working days between two dates
Business days / working days calculator: count business days between two dates for one country, skipping weekends and public holidays, bank closures, or both (calendar: business, bank, combined). Returns the skipped dates with reasons.
Parametersendrequiredstartrequiredcountryrequiredcalendarinclude_endinclude_start
add_days
Add days, weeks, or working days
Add a whole number of days, weeks, or working_days (business days) to a date. Use when the user asks for the date a number of days or business days from another date. amount may be negative. unit weeks is seven calendar days: 3 weeks from Friday 2026-10-23 is 2026-11-13. unit working_days skips Saturday, Sunday, and that country's national public holidays, and the start date is not counted: 10 working days from Friday 2026-10-23 is 2026-11-06 when none of those weekdays is a holiday. country is required for working_days. For days and weeks it is optional and is not used in the arithmetic. The result is the landing date, its weekday, iso_week, and us_week. The request date, amount, unit, and country are not repeated. Holiday dates are the bundled vacanza/holidays list (MIT) for 2026, 2027, and 2028. A walk that leaves those years returns an error.
Parametersdaterequiredunitrequiredamountrequiredcountry
add_business_days
Add business days to a date
Business days / working days calculator: add N business days to a date for one country, skipping weekends and public holidays, bank closures, or both (calendar: business, bank, combined). Returns the resulting date and the skipped dates with reasons.
Parametersdaterequireddaysrequiredcountryrequiredcalendar
next_occurrence
Next weekday in a month
Find the next date on or after start that is the first, second, third, fourth, fifth, or last given weekday of its month. Use for questions like the date of the last Friday of the month. weekday is Mon, Tue, Wed, Thu, Fri, Sat, or Sun. start defaults to today (UTC). Example: start 2026-10-23, weekday Fri, occurrence last is 2026-10-30, the last Friday of October. If that month's occurrence is before start, the answer is in a later month: the first Monday on or after 2026-10-23 is 2026-11-02. A fifth weekday that the month does not have is skipped. The result is that date, its month, iso_week, and us_week. The request is not repeated.
Parametersstartweekdayrequiredoccurrencerequired
week_number
ISO week and US week
Return only iso_week and us_week for one YYYY-MM-DD date. Use when the user asks for the week number of a date. The response has those two numbers and nothing else: no date, weekday, year, or link. ISO weeks start on Monday, and week 1 contains the year's first Thursday: 2026-12-31 and 2020-12-31 are iso_week 53. The US week starts on Sunday, and 1 January is week 1 of that calendar year, so 2022-01-01 is iso_week 52 and us_week 1. 2027-01-01 is iso_week 53 and us_week 1.
Parametersdaterequired
business_hours_overlap
Business-hour overlap on a date
Work-hour overlap for two to eight cities in different time zones on one date. Use when the user asks when the work hours of several cities overlap on a day. Uses the same overlap as the planner: work is 9:00–17:00 local, early or late is 7:00–9:00 and 17:00–19:00, and other hours are night. The result is that day's fair slot, with label best, fairest, or a shifted least-bad window, each city's local start and end, and the score. A public holiday in a city is named and lowers the score. date is YYYY-MM-DD.
Parametersdaterequiredcitiesrequired
dst_check
Next clock change and a planned time
Daylight saving time (DST) check: say when a city's clocks next change, and whether a planned local time is skipped (spring forward) or happens twice (fall back). Use for a meeting time near a DST change, or a local time that may not exist or may be ambiguous. from and to bound the search, YYYY-MM-DD. Pass both or neither. When omitted, the window is today (UTC) through 365 days later. The next change is the first offset change in that window, the same clock-change list used elsewhere on this server. weeks is iso_week and us_week of that next change, or null when the window has none. The change object and a planned time do not repeat the week numbers. planned_time is a local wall time, YYYY-MM-DD HH:MM, in that city. status is unique when that clock time happens once, gap when the clocks skip it (spring forward, including the southern hemisphere), or overlap when it happens twice (clocks go back). shifted is true for a gap or an overlap. utc is the compatible resolution: the later side of a gap and the earlier side of an overlap. Do not treat utc as the only reading when shifted is true.
Parameterstocityrequiredfromplanned_time
age_duration
Age in years, months, and days
Age from start to end as calendar years, months, and days. Use when the user asks for an age or the length of time between two dates in years, months, and days. end defaults to today (UTC). A birthday on 29 February does not become a whole year on 28 February of a common year: 2020-02-29 to 2021-02-28 is 0 years, 11 months, and 30 days. 2020-02-29 to 2024-02-29 is 4 years. The parts are negative when end is before start. total_days is the signed number of calendar days from start to end. The result is years, months, days, and total_days. The dates are not repeated.
Parametersendstartrequired