Medications
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.
MedicationmedicationHealth, off until allowed
A medication, supplement, or vitamin with dose and schedule. The same operations reach its adherence log: each dose taken, skipped, or missed (type 'dose').
medications_findFindthrough vritto_findRead Medications: with no filter the dashboard (counts, lean medication rows with schedule, refills and runs-out, the newest dose logs); one medication by id, or medications by text or status; type 'dose' reads the dose log by dates and medication. Compact rows unless detail is 'full'.
Note: type 'dose' with from/to (and medicationId) reads the dose log.
| Field | Type | Description |
|---|---|---|
| type | one of medication, dose | 'medication' (default) or 'dose', one entry of the adherence log (taken, skipped or missed). |
| id | string | Return just this medication (or dose log). |
| subjectPersonId | string | One person's medications: 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. |
| query | string | Text to match: a medication's name, generic or brand name, or reason. |
| status | one of active, as_needed, paused, discontinued, taken, skipped, missed | A medication's status, or with type 'dose' a dose's (taken, skipped, missed). |
| medicationId | string | Doses of this medication (type 'dose'). |
| from | string | Doses on or after this day (type 'dose'). |
| to | string | Doses on or before this day. ALWAYS pass from/to when the question concerns a period. |
| limit | integer | Rows to return, default 20 (doses 50). |
| detail | one of summary, full | Response shape: "summary" (default, counts + capped lean rows) or "full" (every record incl. dosage instructions, prescriber/pharmacy, and notes). |
Example input
{}medications_addCreate or Updatethrough vritto_create or vritto_updateAdd one medication (record.name, plus strength, dosageAmount and schedule as the person said them; record.rxcui from medications_searchDrugs links reference data), or with type 'dose' record a dose taken, skipped or missed for medicationId.
Note: type 'dose' with medicationId logs a dose taken, skipped, or missed.
| Field | Type | Description |
|---|---|---|
| type | one of medication, dose | 'medication' (default) or 'dose', one entry of the adherence log (taken, skipped or missed). |
| record | object | The medication's fields; name is required. |
| record.id | string | Leave out when adding; to change a medication use medications_change. |
| record.rxcui | string | RxNorm concept id from medications_searchDrugs. Pass it to link the medication to reference/label data. |
| record.name | string | Medication name as the user refers to it. Required when creating. |
| record.genericName | string | Generic/active-ingredient name. |
| record.brandName | string | Brand name, if any. |
| record.kind | one of prescription, otc, supplement | Defaults to 'prescription'. |
| record.status | one of active, as_needed, paused, discontinued | Defaults to 'active'. |
| record.form | one of tablet, capsule, liquid, injection, topical, drops, inhaler, patch, spray, suppository, other | Dose form. |
| record.route | one of oral, topical, injection, inhalation, nasal, ophthalmic, otic, rectal, sublingual, other | Route of administration. |
| record.strength | string | Strength, e.g. '500 mg'. |
| record.dosageAmount | string | Amount taken each time, e.g. '1 tablet', '2 puffs'. |
| record.dosageInstructions | string | Extra directions, e.g. 'Take with food'. |
| record.reason | string | Condition or purpose, e.g. 'Blood pressure'. |
| record.prescriber | string | Prescribing clinician (free-text name). |
| record.prescriberProviderId | string | ID of a saved Appointments provider to link as the prescriber, from appointments_find type 'provider', never invented. |
| record.pharmacy | string | Dispensing pharmacy (free-text name). |
| record.pharmacyPlaceKey | string | Place key ('google:<id>' or 'manual:<uuid>') of the pharmacy, from a Places tool result, never invented. |
| record.frequency | one of once_daily, twice_daily, three_times_daily, four_times_daily, every_morning, every_night, weekly, monthly, as_needed, custom | Defaults to 'once_daily'. |
| record.times | list of string | Clock times for daily doses. |
| record.daysOfWeek | list of integer | 0=Sunday … 6=Saturday; omit or empty means every day. REQUIRED when frequency is 'weekly', a weekly drug with no day is rejected, never defaulted to daily. |
| record.dayOfMonth | integer | Day of the month a monthly medication is taken, clamped into short months. REQUIRED when frequency is 'monthly', a monthly drug with no day is rejected, never defaulted to daily. |
| record.withFood | boolean | Whether to take with food. |
| record.startedOn | string | Date started. |
| record.endsOn | string | Planned end date, if any. |
| record.quantityPerFill | integer | Units per fill. |
| record.refillsRemaining | integer | Refills left. |
| record.daysSupply | integer | Days a fill lasts, drives the runs-out estimate. |
| record.lastFilledOn | string | Date of the most recent fill. |
| record.refillReminderDays | integer | Days before running out to remind (default 7). |
| record.notes | string | |
| record.tags | list of string | |
| record.favorite | boolean | |
| record.subjectPersonId | string | Whose medication: a People person id (find with people_find). Omit for the account owner's own. |
| record.providerRef | object | Optional reference-link details supplementing rxcui. |
| medicationId | string | The medication a dose belongs to (type 'dose'). |
| status | one of taken, skipped, missed | A dose's status (type 'dose'); defaults to 'taken'. |
| takenAt | string | ISO timestamp of the dose; defaults to now. |
| scheduledFor | string | ISO timestamp of the schedule slot a dose belongs to (e.g. the 08:00 dose), so adherence attributes it correctly. Omit for unscheduled/as-needed doses. |
| notes | string | A dose's note. |
| id | string | Older form: an existing dose log to correct (use medications_change). |
Example input
{
"record": {
"name": "Vitamin D3",
"kind": "supplement",
"strength": "2000 IU",
"frequency": "every_morning",
"times": [
"08:00"
],
"withFood": true
}
}medications_changeUpdatethrough vritto_updateChange one medication by record.id; sent fields merge (stopped taking it is status 'discontinued', never a removal). With type 'dose', correct one dose log by id: status, takenAt or notes. Resolve the id with medications_find first.
Note: A medication the user stopped is status 'discontinued', never a removal. type 'dose' with id corrects a dose log.
| Field | Type | Description |
|---|---|---|
| type | one of medication, dose | 'medication' (default) or 'dose', one entry of the adherence log (taken, skipped or missed). |
| record | object | The medication's id plus the fields to change. |
| record.id* | string | Medication ID from a prior medications_find result, never invented. |
| record.rxcui | string | RxNorm concept id from medications_searchDrugs. Pass it to link the medication to reference/label data. |
| record.name | string | Medication name as the user refers to it. Required when creating. |
| record.genericName | string | Generic/active-ingredient name. |
| record.brandName | string | Brand name, if any. |
| record.kind | one of prescription, otc, supplement | Defaults to 'prescription'. |
| record.status | one of active, as_needed, paused, discontinued | 'discontinued' when the user stopped taking it (the record is kept); 'paused', or back to 'active'. |
| record.form | one of tablet, capsule, liquid, injection, topical, drops, inhaler, patch, spray, suppository, other | Dose form. |
| record.route | one of oral, topical, injection, inhalation, nasal, ophthalmic, otic, rectal, sublingual, other | Route of administration. |
| record.strength | string | Strength, e.g. '500 mg'. |
| record.dosageAmount | string | Amount taken each time, e.g. '1 tablet', '2 puffs'. |
| record.dosageInstructions | string | Extra directions, e.g. 'Take with food'. |
| record.reason | string | Condition or purpose, e.g. 'Blood pressure'. |
| record.prescriber | string | Prescribing clinician (free-text name). |
| record.prescriberProviderId | string | ID of a saved Appointments provider to link as the prescriber, from appointments_find type 'provider', never invented. |
| record.pharmacy | string | Dispensing pharmacy (free-text name). |
| record.pharmacyPlaceKey | string | Place key ('google:<id>' or 'manual:<uuid>') of the pharmacy, from a Places tool result, never invented. |
| record.frequency | one of once_daily, twice_daily, three_times_daily, four_times_daily, every_morning, every_night, weekly, monthly, as_needed, custom | Defaults to 'once_daily'. |
| record.times | list of string | Clock times for daily doses. |
| record.daysOfWeek | list of integer | 0=Sunday … 6=Saturday; omit or empty means every day. REQUIRED when frequency is 'weekly', a weekly drug with no day is rejected, never defaulted to daily. |
| record.dayOfMonth | integer | Day of the month a monthly medication is taken, clamped into short months. REQUIRED when frequency is 'monthly', a monthly drug with no day is rejected, never defaulted to daily. |
| record.withFood | boolean | Whether to take with food. |
| record.startedOn | string | Date started. |
| record.endsOn | string | Planned end date, if any. |
| record.quantityPerFill | integer | Units per fill. |
| record.refillsRemaining | integer | Refills left. |
| record.daysSupply | integer | Days a fill lasts, drives the runs-out estimate. |
| record.lastFilledOn | string | Date of the most recent fill. |
| record.refillReminderDays | integer | Days before running out to remind (default 7). |
| record.notes | string | |
| record.tags | list of string | |
| record.favorite | boolean | |
| record.subjectPersonId | string | Whose medication: a People person id (find with people_find). Omit for the account owner's own. |
| record.providerRef | object | Optional reference-link details supplementing rxcui. |
| id | string | The dose log to correct (type 'dose'). |
| medicationId | string | The medication a dose belongs to (type 'dose'). |
| status | one of taken, skipped, missed | A dose's status (type 'dose'); defaults to 'taken'. |
| takenAt | string | ISO timestamp of the dose; defaults to now. |
| scheduledFor | string | ISO timestamp of the schedule slot a dose belongs to (e.g. the 08:00 dose), so adherence attributes it correctly. Omit for unscheduled/as-needed doses. |
| notes | string | A dose's note. |
Example input
{
"record": {
"id": "med_vitd",
"status": "discontinued"
}
}medications_removeDeletethrough vritto_deleteRemove (archive) one medication, or with type 'dose' delete one dose log entry. Only for explicit removals; to stop a medication while keeping it, use medications_change with status 'discontinued'.
Note: type 'dose' deletes one dose log entry.
| Field | Type | Description |
|---|---|---|
| type | one of medication, dose | 'medication' (default) or 'dose', one entry of the adherence log (taken, skipped or missed). |
| id | string | The medication (or dose log) to remove. |
| medicationId | string | Older name for a medication's id. |
| doseLogId | string | Older name for a dose log's id. |
Drug Referencedrug_catalogHealth, off until allowed
RxNorm and FDA drug reference data.
medications_getDrugInfoLook Upthrough vritto_lookupFetch reference/label information for a drug by rxcui: FDA label uses, dosage, warnings, and side effects, plus a MedlinePlus patient summary. Reference content only, not medical advice.
| Field | Type | Description |
|---|---|---|
| rxcui* | string | RxNorm concept id from medications_searchDrugs. |
medications_searchDrugsLook Upthrough vritto_lookupSearch the U.S. RxNorm drug vocabulary by name (typeahead). Returns candidate drugs with an rxcui to link a medication or fetch reference data. This is the catalog, not the user's saved medications: use medications_find for those.
| Field | Type | Description |
|---|---|---|
| query* | string | Drug name or partial name. |
| limit | integer | Max results (default 12). |