Skip To Main Content
All modules

Appointments

Fields marked * are required. Updates keep every field they are not given. An AI app can ask vritto_describe for the same details, filtered to what its connection may use.

Medical AppointmentappointmentHealth, off until allowed

A medical, dental, vision, or therapy visit. The same operations reach the doctors, dentists, specialists and clinics behind them (type 'provider').

appointments_findFindthrough vritto_find

Read Appointments: with no filter headline counts, the next and latest visits and the providers; one visit by id, or visits filtered by view, dates, text, status or provider; type 'provider' reads the directory. Compact rows unless detail is 'full'.

Note: type 'provider' reads the provider directory.

FieldTypeDescription
typeone of appointment, provider'appointment' (default) or 'provider', a doctor or clinic. The kind of visit is record.type.
idstringReturn just this appointment (or provider).
subjectPersonIdstringOne person's visits: a People person id, or 'me' for the account owner's own. ALWAYS pass this when the question names a family member. Omit for everyone's.
viewone of upcoming, past, all'upcoming' visits ahead (soonest first), 'past' ones newest first, 'all' (default).
fromstringEarliest visit date, inclusive.
tostringLatest visit date, inclusive. ALWAYS pass from/to when the question concerns a period.
querystringText to match: title, provider, kind of visit (e.g. 'vision', 'dental'), reason or location; for providers, name, specialty or practice.
statusone of scheduled, completed, cancelled, no_showOnly visits in this status.
providerIdstringOnly visits with this provider.
limitintegerRows to return, default 20.
detailone of summary, full"summary" (default, compact rows) or "full" (every field incl. reason, outcome, and notes).
Example input
{}
appointments_addCreate or Updatethrough vritto_create or vritto_update

Add one appointment (record.title and record.startAt, an ISO datetime with the user's UTC offset), or with type 'provider' a doctor or clinic (record.name). Link a visit to a saved provider with providerId.

Note: type 'provider' saves a doctor or clinic; the kind of visit is record.type.

FieldTypeDescription
typeone of appointment, provider'appointment' (default) or 'provider', a doctor or clinic. The kind of visit is record.type.
record*objectThe visit's fields (title + startAt), or a provider's (type 'provider', name).
record.idstringLeave out when adding; to change a visit or provider use appointments_change.
record.titlestringShort summary, e.g. 'Annual physical'. Required when creating.
record.providerIdstringLink to a saved provider; the server denormalizes the name.
record.providerNamestringProvider name if not linking a saved provider record.
record.typeone of checkup, follow_up, consultation, procedure, lab, imaging, dental, vision, therapy, vaccination, telehealth, otherDefaults to 'checkup'.
record.statusone of scheduled, completed, cancelled, no_showDefaults to 'scheduled'.
record.startAtstringAppointment start as an ISO 8601 datetime WITH the user's UTC offset, e.g. '2026-07-15T14:00:00-04:00'. Required when creating.
record.durationMinutesintegerLength in minutes (default 30).
record.locationstringAddress or place (free text).
record.placeKeystringPlace key ('google:<id>' or 'manual:<uuid>') linking the visit location to a saved Place, from a Places tool result, never invented.
record.isVirtualbooleanWhether it's a telehealth/virtual visit.
record.meetingUrlstringVideo link for virtual visits.
record.reasonstringWhy the visit is happening.
record.notesstringPrep notes or questions to ask.
record.outcomestringPost-visit summary of what was discussed.
record.followUpOnstringDate a follow-up is due.
record.subjectPersonIdstringWhose visit: a People person id (find with people_find). Omit for the account owner's own.
record.reminderMinutesBeforeintegerReminder lead time in minutes (default 1440 = 1 day).
record.tagslist of string
record.calendarVisibilityone of private, details, hiddenWhat this visit may show on the calendar: 'private' (default, a time block labelled 'Appointment', no title or provider), 'details' (the real title and provider), or 'hidden' (no calendar entry). Only raise it to 'details' when the user asks for it.
record.namestringA provider's name, e.g. 'Dr. Chen' (type 'provider').
record.specialtystringA provider's specialty, e.g. 'Cardiology', 'Dentist'.
record.organizationstringA provider's practice or clinic name.
record.phonestring
record.emailstring
record.websitestring
record.addressstringA provider's address.
record.favoritebooleanMark a provider as a favorite/primary provider.
Example input
{
  "record": {
    "title": "Annual physical",
    "providerName": "Dr. Rivera",
    "type": "checkup",
    "startAt": "2026-10-08T09:30:00-05:00",
    "durationMinutes": 30
  }
}
appointments_changeUpdatethrough vritto_update

Change one appointment (or with type 'provider' a provider) by record.id; sent fields merge. A cancelled visit is status 'cancelled' (kept, never removed); after a visit set status 'completed' with an outcome and followUpOn. Resolve the id with appointments_find first.

Note: To record a cancellation, change the status to 'cancelled' instead of removing the visit.

FieldTypeDescription
typeone of appointment, provider'appointment' (default) or 'provider', a doctor or clinic. The kind of visit is record.type.
record*objectThe record's id plus the fields to change.
record.id*stringThe appointment (or provider) to change, from a prior appointments_find result.
record.titlestringShort summary, e.g. 'Annual physical'. Required when creating.
record.providerIdstringLink to a saved provider; the server denormalizes the name.
record.providerNamestringProvider name if not linking a saved provider record.
record.typeone of checkup, follow_up, consultation, procedure, lab, imaging, dental, vision, therapy, vaccination, telehealth, otherDefaults to 'checkup'.
record.statusone of scheduled, completed, cancelled, no_showDefaults to 'scheduled'.
record.startAtstringAppointment start as an ISO 8601 datetime WITH the user's UTC offset, e.g. '2026-07-15T14:00:00-04:00'. Required when creating.
record.durationMinutesintegerLength in minutes (default 30).
record.locationstringAddress or place (free text).
record.placeKeystringPlace key ('google:<id>' or 'manual:<uuid>') linking the visit location to a saved Place, from a Places tool result, never invented.
record.isVirtualbooleanWhether it's a telehealth/virtual visit.
record.meetingUrlstringVideo link for virtual visits.
record.reasonstringWhy the visit is happening.
record.notesstringPrep notes or questions to ask.
record.outcomestringPost-visit summary of what was discussed.
record.followUpOnstringDate a follow-up is due.
record.subjectPersonIdstringWhose visit: a People person id (find with people_find). Omit for the account owner's own.
record.reminderMinutesBeforeintegerReminder lead time in minutes (default 1440 = 1 day).
record.tagslist of string
record.calendarVisibilityone of private, details, hiddenWhat this visit may show on the calendar: 'private' (default, a time block labelled 'Appointment', no title or provider), 'details' (the real title and provider), or 'hidden' (no calendar entry). Only raise it to 'details' when the user asks for it.
record.namestringA provider's name, e.g. 'Dr. Chen' (type 'provider').
record.specialtystringA provider's specialty, e.g. 'Cardiology', 'Dentist'.
record.organizationstringA provider's practice or clinic name.
record.phonestring
record.emailstring
record.websitestring
record.addressstringA provider's address.
record.favoritebooleanMark a provider as a favorite/primary provider.
Example input
{
  "record": {
    "id": "appt_physical",
    "status": "cancelled"
  }
}
appointments_removeDeletethrough vritto_delete

Remove (archive) one appointment, or with type 'provider' a provider. Only for explicit removals; a cancelled visit is an appointments_change with status 'cancelled'. Resolve the id first.

Note: To record a cancellation, change the appointment's status to 'cancelled' instead. type 'provider' removes a provider.

FieldTypeDescription
typeone of appointment, provider'appointment' (default) or 'provider', a doctor or clinic. The kind of visit is record.type.
idstringThe appointment (or provider) to remove.
appointmentIdstringOlder name for an appointment's id.
providerIdstringOlder name for a provider's id.