The DrChrono connector lets your AI agent act in each user's DrChrono account. Each user signs in to DrChrono once, and Scalekit stores and refreshes their tokens, so your agent never handles credentials. It comes with 47 tools.
- Tools
- 47
- What they doRead · write · destructive
- 34 · 13 · 034 read13 write0 destructive
- Users sign in with
- OAuth
- OAuth app
- Your own DrChrono app
Setup
Install the SDK
Terminal window npm install @scalekit-sdk/node dotenvTerminal window pip install scalekit-sdk-python python-dotenvSet your credentials
Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret>Create the DrChrono connection
In AgentKit > Connections, create a DrChrono connection and copy its redirect URI. The name you give it is the
connection_nameyour code passes. See Configure connections.Register an OAuth app
DrChrono connections use your own OAuth app. Register one with DrChrono and add the redirect URI you copied.
Then enter the app's Client ID and Client Secret on the DrChrono connection.
Console steps with screenshots
DrChrono connections use OAuth 2.0 and act as the signed-in DrChrono provider or staff user. Register an API app in DrChrono, then enter its client ID and secret on the connection.
-
Create the connection and copy the redirect URI
In the Scalekit dashboard, go to AgentKit > Connections > Create Connection, find DrChrono and click Create. Copy the Redirect URI.
-
Register an API app in DrChrono
In DrChrono’s API settings, create an API app and add the redirect URI you copied. Note the app’s client ID and client secret.
-
Enter the credentials on the connection
Back on the DrChrono connection, enter the Client ID and Client Secret. Select only the scopes your agent needs, such as
patients:readandcalendar:read. Don’t leave the selection empty: DrChrono then grants every scope. Click Save.
-
Authorize a user and make your first call
quickstart.mts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'import { createInterface } from 'node:readline/promises'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENVIRONMENT_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'drchrono'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize DrChrono:', link)const rl = createInterface({ input: process.stdin, output: process.stdout })await rl.question('Press Enter after authorizing...')rl.close()// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'drchrono_get_availability',toolInput: {},})console.log(result)Terminal window npx tsx quickstart.mtsquickstart.py import osfrom scalekit import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENVIRONMENT_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "drchrono"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize DrChrono:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="drchrono_get_availability",connection_name=connection_name,identifier=identifier,)print(result)Terminal window python quickstart.pyEach user signs in once. See Authorize a user for the full flow and statuses.
Tools
Pass the exact name toexecute_tooldrchrono_get_allergyGet one patient allergy by ID.Read-onlyGet Allergy
Get one patient allergy by ID. Returns patient, doctor, description, reaction, SNOMED/RxNorm codes, status, verification status and notes. Use drchrono_list_allergies to find allergies for a patient.
Inputs
idintegerrequired- ID of the allergy. Get it from drchrono_list_allergies. Example: 12345.
drchrono_get_appointmentGet one appointment or break by ID.Read-onlyGet Appointment
Get one appointment or break by ID. Returns patient, doctor, office, exam room, scheduled time, duration, status, reason, notes, ICD-10 codes, billing status and insurer details. Use drchrono_list_appointments to find appointment IDs.
Inputs
idstringrequired- ID of the appointment. Get it from drchrono_list_appointments. Example: 12345.
drchrono_get_appointment_profileGet one appointment profile (visit type) by ID.Read-onlyGet Appointment Profile
Get one appointment profile (visit type) by ID. Returns its name, doctor, default duration, color, reason and online-scheduling flag. Use drchrono_list_appointment_profiles to find profile IDs.
Inputs
idintegerrequired- ID of the appointment profile. Get it from drchrono_list_appointment_profiles. Example: 12345.
drchrono_get_availabilityGet open appointment slots for a date or date range at an office, for a doctor or exam room.Read-onlyGet Availability
Get open appointment slots for a date or date range at an office, for a doctor or exam room. Returns open time blocks per exam room, each split into slots of the requested duration. Use this before drchrono_create_appointment to pick a free time.
Inputs
datestring- Date to check (YYYY-MM-DD). Set this or date_range. Example: 2026-11-02.
date_rangestring- Date range to check, as YYYY-MM-DD/YYYY-MM-DD. Set this or date. Example: 2026-11-02/2026-11-06.
doctorinteger- Doctor to check availability for. Get doctor IDs from drchrono_list_doctors. Example: 12345.
durationinteger- Appointment length in minutes, used to split open time into slots. Example: 30.
exam_roominteger- Exam room to check. Leave empty to get availability for every exam room, grouped by room. Example: 1.
officeinteger- Office to check availability for. Get office IDs from drchrono_list_offices. Example: 12345.
drchrono_get_clinical_noteGet one clinical note by ID.Read-onlyGet Clinical Note
Get one clinical note by ID. Returns patient, appointment, signee, archived flag and the note sections with their field values. Use drchrono_list_clinical_notes to find notes for a patient or date.
Inputs
idintegerrequired- ID of the clinical note. Get it from drchrono_list_clinical_notes. Example: 12345.
drchrono_get_doctorGet one doctor in the practice group by ID.Read-onlyGet Doctor
Get one doctor in the practice group by ID. Returns name, specialty, NPI, contact details, timezone, practice group and work schedule. Use drchrono_list_doctors to find doctor IDs.
Inputs
idintegerrequired- ID of the doctor. Get it from drchrono_list_doctors. Example: 12345.
drchrono_get_eligibility_checkGet one past insurance eligibility check by ID.Read-onlyGet Eligibility Check
Get one past insurance eligibility check by ID. Returns patient, appointment, payer name, coverage level, eligibility code, service type, subscriber and coverage details. Use drchrono_list_eligibility_checks to find checks for a patient.
Inputs
idintegerrequired- ID of the eligibility check. Get it from drchrono_list_eligibility_checks. Example: 12345.
drchrono_get_line_itemGet one billing line item by ID.Read-onlyGet Line Item
Get one billing line item by ID. Returns appointment, patient, procedure code, units, price, allowed and paid amounts, adjustments, balances and billing status. Use drchrono_list_line_items to find line items for an appointment.
Inputs
idintegerrequired- ID of the line item. Get it from drchrono_list_line_items. Example: 12345.
drchrono_get_medicationGet one patient medication by ID.Read-onlyGet Medication
Get one patient medication by ID. Returns patient, prescribing doctor, name, codes, dosage, frequency, route, refills, dates, status and notes. Use drchrono_list_medications to find medications for a patient.
Inputs
idintegerrequired- ID of the medication. Get it from drchrono_list_medications. Example: 12345.
drchrono_get_officeGet one office by ID.Read-onlyGet Office
Get one office by ID. Returns name, address, phone, fax, hours, exam rooms (with their index values) and online-scheduling settings. Use drchrono_list_offices to find office IDs.
Inputs
idintegerrequired- ID of the office. Get it from drchrono_list_offices. Example: 12345.
drchrono_get_patientGet one patient's full demographic record by ID.Read-onlyGet Patient
Get one patient's full demographic record by ID. Returns name, date of birth, gender, contact details, address, primary/secondary insurance, emergency contact, preferred pharmacy and primary doctor. Use drchrono_list_patients to search when you do not have the ID.
Inputs
idintegerrequired- ID of the patient. Get it from drchrono_list_patients. Example: 12345.
drchrono_get_problemGet one patient problem by ID.Read-onlyGet Problem
Get one patient problem by ID. Returns patient, name, ICD and SNOMED codes, status, verification status, dates and notes. Use drchrono_list_problems to find problems for a patient.
Inputs
idintegerrequired- ID of the problem. Get it from drchrono_list_problems. Example: 12345.
drchrono_get_taskGet one task by ID.Read-onlyGet Task
Get one task by ID. Returns title, status, category, priority, assignee, due date, linked items, notes and who created or assigned it. Use drchrono_list_tasks to find tasks.
Inputs
idintegerrequired- ID of the task. Get it from drchrono_list_tasks. Example: 12345.
drchrono_get_userGet one user account by ID, or the signed-in user with id set to current.Read-onlyGet User
Get one user account by ID, or the signed-in user with id set to current. Returns username, linked doctor, practice group, whether the user is a doctor or staff, and permissions. Use drchrono_list_users to find other user IDs.
Inputs
idstringrequired- User ID, or current for the signed-in user (DrChrono redirects current to that user's ID). Example: current.
drchrono_list_allergiesList patient allergies, filtered by patient or doctor.Read-onlyList Allergies
List patient allergies, filtered by patient or doctor. Returns each allergy's id, patient, description, reaction, SNOMED/RxNorm codes, status and verification status, plus next and previous page URLs. Use drchrono_get_allergy for one allergy.
Inputs
cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
doctorinteger- Filter by doctor ID. Get doctor IDs from drchrono_list_doctors. Example: 12345.
page_sizeinteger- Number of results per page. Most DrChrono list endpoints default to and cap at 250 results per page. Example: 50.
patientinteger- Filter by patient ID. Get patient IDs from drchrono_list_patients. Example: 12345.
drchrono_list_appointment_profilesList appointment profiles (visit types) set up on doctors' calendars.Read-onlyList Appointment Profiles
List appointment profiles (visit types) set up on doctors' calendars. Returns each profile's id, name, doctor, default duration, color, reason and online-scheduling flag, plus next and previous page URLs. Use a profile id as profile in drchrono_create_appointment. Use drchrono_get_appointment_profile for one profile.
Inputs
cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
doctorinteger- Filter by doctor ID. Get doctor IDs from drchrono_list_doctors. Example: 12345.
page_sizeinteger- Number of results per page. Most DrChrono list endpoints default to and cap at 250 results per page. Example: 50.
drchrono_list_appointmentsList appointments and breaks on the practice calendar, ordered by scheduled date.Read-onlyList Appointments
List appointments and breaks on the practice calendar, ordered by scheduled date. You must set date, date_range, since or occurred_since. Returns a page of appointments with id, patient, doctor, office, exam room, scheduled time, duration, status and reason, plus next and previous page URLs. Use this to browse a calendar or a patient's visits. Use drchrono_get_availability to find open slots.
Inputs
cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
datestring- Return appointments scheduled on this date (YYYY-MM-DD). Set this, date_range, since or occurred_since. Example: 2026-11-02.
date_rangestring- Return appointments scheduled within this inclusive range, as YYYY-MM-DD/YYYY-MM-DD (at most 190 days). Example: 2026-11-01/2026-11-30.
doctorinteger- Filter by doctor ID. Get doctor IDs from drchrono_list_doctors. Example: 12345.
exclude_membershipboolean- Set to true to leave out membership-plan charge placeholders, which are not real visits. Example: true.
occurred_sincestring- Return appointments scheduled on or after this date (YYYY-MM-DD). Example: 2026-10-01.
officeinteger- Filter by office ID. Get office IDs from drchrono_list_offices. Example: 12345.
page_sizeinteger- Number of results per page. DrChrono documents a much smaller page limit for appointments than other endpoints: about 20 per page, or 25 with verbose. Example: 50.
patientinteger- Filter by patient ID. Get patient IDs from drchrono_list_patients. Example: 12345.
show_archivedboolean- Set to true to include deleted or archived appointments. Example: false.
sincestring- Return appointments created or updated on or after this date (YYYY-MM-DD). Example: 2026-10-01.
statusstring- Filter by appointment status name, such as Confirmed, Arrived, Complete, Cancelled or No Show. Example: Confirmed.
verboseboolean- Set to true to include clinical_note, custom_fields, custom_vitals, reminders, status_transitions and vitals. This lowers the page size limit to 25. Example: false.
drchrono_list_clinical_note_field_typesList the field definitions inside clinical note templates.Read-onlyList Clinical Note Field Types
List the field definitions inside clinical note templates. Returns each field's id, name, template, data type, allowed values and required flag, plus next and previous page URLs. Use this to label values from drchrono_list_clinical_note_field_values.
Inputs
clinical_note_templateinteger- Filter by clinical note template ID (from drchrono_list_clinical_note_templates). Example: 12345.
cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
doctorinteger- Filter by doctor ID. Get doctor IDs from drchrono_list_doctors. Example: 12345.
page_sizeinteger- Number of results per page. Most DrChrono list endpoints default to and cap at 250 results per page. Example: 50.
drchrono_list_clinical_note_field_valuesList the values entered in clinical note fields, filtered by appointment, template, field or doctor.Read-onlyList Clinical Note Field Values
List the values entered in clinical note fields, filtered by appointment, template, field or doctor. Returns each value's id, field, appointment, value and timestamps, plus next and previous page URLs. Use this to read structured note content for a visit. Use drchrono_list_clinical_note_field_types to map field IDs to names.
Inputs
appointmentinteger- Filter by appointment ID. Get appointment IDs from drchrono_list_appointments. Example: 12345.
clinical_note_fieldinteger- Filter by clinical note field ID (from drchrono_list_clinical_note_field_types). Example: 12345.
clinical_note_templateinteger- Filter by clinical note template ID. Example: 12345.
cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
doctorinteger- Filter by doctor ID. Get doctor IDs from drchrono_list_doctors. Example: 12345.
page_sizeinteger- Number of results per page. Most DrChrono list endpoints default to and cap at 250 results per page. Example: 50.
sincestring- Return only values created or updated on or after this date (YYYY-MM-DD). Example: 2026-01-01.
drchrono_list_clinical_note_templatesList clinical note templates available to doctors in the practice.Read-onlyList Clinical Note Templates
List clinical note templates available to doctors in the practice. Returns each template's id, name, doctor, order and its fields, plus next and previous page URLs. Use template IDs to filter drchrono_list_clinical_note_field_types and drchrono_list_clinical_note_field_values.
Inputs
cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
doctorinteger- Filter by doctor ID. Get doctor IDs from drchrono_list_doctors. Example: 12345.
page_sizeinteger- Number of results per page. Most DrChrono list endpoints default to and cap at 250 results per page. Example: 50.
drchrono_list_clinical_notesList clinical notes, filtered by patient, doctor, office or date.Read-onlyList Clinical Notes
List clinical notes, filtered by patient, doctor, office or date. Returns a page of notes with patient, appointment, signee, archived flag and the note sections with their field values, plus next and previous page URLs. Use drchrono_get_clinical_note for one note. Use drchrono_list_clinical_note_field_values for individual structured field values.
Inputs
cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
datestring- Return notes for appointments on this date (YYYY-MM-DD). Example: 2026-11-02.
date_rangestring- Return notes for appointments within this range, as YYYY-MM-DD/YYYY-MM-DD. Example: 2026-10-01/2026-10-31.
doctorinteger- Filter by doctor ID. Get doctor IDs from drchrono_list_doctors. Example: 12345.
officeinteger- Filter by office ID. Get office IDs from drchrono_list_offices. Example: 12345.
page_sizeinteger- Number of results per page. Most DrChrono list endpoints default to and cap at 250 results per page. Example: 50.
patientinteger- Filter by patient ID. Get patient IDs from drchrono_list_patients. Example: 12345.
sincestring- Return only notes created or updated on or after this date (YYYY-MM-DD). Example: 2026-01-01.
drchrono_list_doctorsList the doctors in the signed-in user's practice group.Read-onlyList Doctors
List the doctors in the signed-in user's practice group. Returns each doctor's id, name, specialty, NPI, contact details, timezone and practice group, plus next and previous page URLs. Use this to find doctor IDs for other tools. Use drchrono_get_doctor for one doctor.
Inputs
cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
page_sizeinteger- Number of results per page. Most DrChrono list endpoints default to and cap at 250 results per page. Example: 50.
drchrono_list_eligibility_checksList past insurance eligibility checks, filtered by patient, appointment, doctor or date.Read-onlyList Eligibility Checks
List past insurance eligibility checks, filtered by patient, appointment, doctor or date. Returns each check's id, patient, appointment, payer name, coverage level, eligibility code, service type and coverage details, plus next and previous page URLs. Use drchrono_get_eligibility_check for one check. This reads past checks; it does not run a new one.
Inputs
appointmentinteger- Filter by appointment ID. Get appointment IDs from drchrono_list_appointments. Example: 12345.
appointment_datestring- Return checks for appointments on this date (YYYY-MM-DD). Example: 2026-11-02.
appointment_date_rangestring- Return checks for appointments within this range, as YYYY-MM-DD/YYYY-MM-DD. Example: 2026-10-01/2026-10-31.
cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
doctorinteger- Filter by doctor ID. Get doctor IDs from drchrono_list_doctors. Example: 12345.
page_sizeinteger- Number of results per page. Most DrChrono list endpoints default to and cap at 250 results per page. Example: 50.
patientinteger- Filter by patient ID. Get patient IDs from drchrono_list_patients. Example: 12345.
query_datestring- Return checks run on this date (YYYY-MM-DD). Example: 2026-10-15.
query_date_rangestring- Return checks run within this range, as YYYY-MM-DD/YYYY-MM-DD. Example: 2026-10-01/2026-10-31.
drchrono_list_line_itemsList billing line items (procedure charges on appointments), filtered by patient, appointment, doctor, office or date.Read-onlyList Line Items
List billing line items (procedure charges on appointments), filtered by patient, appointment, doctor, office or date. Returns each line item's id, appointment, patient, code, units, price, allowed and paid amounts, balances and billing status, plus next and previous page URLs. Use drchrono_get_line_item for one line item.
Inputs
appointmentinteger- Filter by appointment ID. Get appointment IDs from drchrono_list_appointments. Example: 12345.
cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
doctorinteger- Filter by doctor ID. Get doctor IDs from drchrono_list_doctors. Example: 12345.
officeinteger- Filter by office ID. Get office IDs from drchrono_list_offices. Example: 12345.
page_sizeinteger- Number of results per page. Most DrChrono list endpoints default to and cap at 250 results per page. Example: 50.
patientinteger- Filter by patient ID. Get patient IDs from drchrono_list_patients. Example: 12345.
posted_datestring- Return line items posted on this date (YYYY-MM-DD). Example: 2026-10-16.
service_datestring- Return line items with this service date (YYYY-MM-DD). Example: 2026-10-15.
sincestring- Return only line items created or updated on or after this date (YYYY-MM-DD). Example: 2026-01-01.
drchrono_list_medicationsList patient medications, filtered by patient or doctor.Read-onlyList Medications
List patient medications, filtered by patient or doctor. Returns each medication's id, patient, name, RxNorm/NDC codes, dosage, frequency, route, refills, dates, status and order status, plus next and previous page URLs. Use drchrono_get_medication for one medication.
Inputs
cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
doctorinteger- Filter by doctor ID. Get doctor IDs from drchrono_list_doctors. Example: 12345.
page_sizeinteger- Number of results per page. Most DrChrono list endpoints default to and cap at 250 results per page. Example: 50.
patientinteger- Filter by patient ID. Get patient IDs from drchrono_list_patients. Example: 12345.
drchrono_list_officesList the practice's offices.Read-onlyList Offices
List the practice's offices. Returns each office's id, name, address, phone, hours, exam rooms and online-scheduling settings, plus next and previous page URLs. Use this to find office IDs and exam room indexes for scheduling. Use drchrono_get_office for one office.
Inputs
cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
doctorinteger- Filter offices by doctor ID. Get doctor IDs from drchrono_list_doctors. Example: 12345.
page_sizeinteger- Number of results per page. Most DrChrono list endpoints default to and cap at 250 results per page. Example: 50.
drchrono_list_patientsList or search patients in the practice, filtered by name, date of birth, chart ID, email or doctor.Read-onlyList Patients
List or search patients in the practice, filtered by name, date of birth, chart ID, email or doctor. Returns a page of patient records with id, name, chart ID, date of birth, gender, contact details, insurance and primary doctor, plus next and previous page URLs. Use this to find a patient ID. Use drchrono_get_patient when you already have the ID.
Inputs
chart_idstring- Filter by chart ID. Example: TEJA000001.
cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
date_of_birthstring- Filter by date of birth (YYYY-MM-DD). Example: 1980-01-01.
doctorinteger- Filter by doctor ID. Get doctor IDs from drchrono_list_doctors. Example: 12345.
emailstring- Filter by email address. Example: patient@example.com.
ethnicitystring- Filter by ethnicity category. Example: hispanic.one of
blankhispanicnot_hispanicdeclined first_namestring- Filter by first name. Example: Jane.
genderstring- Filter by gender: Male, Female, Other, UNK or ASKU. Example: Female.one of
MaleFemaleOtherUNKASKU last_namestring- Filter by last name. Example: Testpatient.
page_sizeinteger- Number of results per page. Most DrChrono list endpoints default to and cap at 250 results per page. Example: 50.
preferred_languagestring- Filter by preferred language (ISO 639 alpha-3 code). Example: spa.one of
blankengzhofraitajpnporrusspaotherunknowndeclined racestring- Filter by race category. Example: asian.one of
blankindianasianblackhawaiianwhiteotherdeclined sincestring- Return only patients created or updated on or after this date (YYYY-MM-DD). Example: 2026-01-01.
drchrono_list_problemsList patient problems (the problem list), filtered by patient or doctor.Read-onlyList Problems
List patient problems (the problem list), filtered by patient or doctor. Returns each problem's id, patient, name, ICD and SNOMED codes, status, verification status and onset/diagnosis dates, plus next and previous page URLs. Use drchrono_get_problem for one problem.
Inputs
cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
doctorinteger- Filter by doctor ID. Get doctor IDs from drchrono_list_doctors. Example: 12345.
page_sizeinteger- Number of results per page. Most DrChrono list endpoints default to and cap at 250 results per page. Example: 50.
patientinteger- Filter by patient ID. Get patient IDs from drchrono_list_patients. Example: 12345.
drchrono_list_task_categoriesList the task categories defined for the practice.Read-onlyList Task Categories
List the task categories defined for the practice. Returns each category's id, name, global flag and archived flag, plus next and previous page URLs. Use a category id when creating, updating or filtering tasks.
Inputs
cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
page_sizeinteger- Number of results per page. Most DrChrono list endpoints default to and cap at 250 results per page. Example: 50.
sincestring- Return only categories created or updated on or after this date (YYYY-MM-DD). Example: 2026-01-01.
drchrono_list_task_notesList notes (comments) on tasks, optionally for one task.Read-onlyList Task Notes
List notes (comments) on tasks, optionally for one task. Returns each note's id, task, text, author and timestamps, plus next and previous page URLs. Use drchrono_create_task_note to add a note.
Inputs
cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
page_sizeinteger- Number of results per page. Most DrChrono list endpoints default to and cap at 250 results per page. Example: 50.
sincestring- Return only notes created or updated on or after this date (YYYY-MM-DD). Example: 2026-01-01.
taskinteger- Filter by task ID (from drchrono_list_tasks). Example: 12345.
drchrono_list_task_statusesList the task statuses defined for the practice.Read-onlyList Task Statuses
List the task statuses defined for the practice. Returns each status's id, name, status category, task category and archived flag, plus next and previous page URLs. Use a status id when creating, updating or filtering tasks.
Inputs
cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
page_sizeinteger- Number of results per page. Most DrChrono list endpoints default to and cap at 250 results per page. Example: 50.
sincestring- Return only statuses created or updated on or after this date (YYYY-MM-DD). Example: 2026-01-01.
drchrono_list_tasksList tasks in the practice's task center, filtered by status, category, assignee or due date.Read-onlyList Tasks
List tasks in the practice's task center, filtered by status, category, assignee or due date. Returns each task's id, title, status, category, priority, assignee, due date, linked items and notes, plus next and previous page URLs. Use drchrono_get_task for one task.
Inputs
assignee_groupinteger- Filter by assigned user group ID. Example: 12345.
assignee_userinteger- Filter by assigned user ID (from drchrono_list_users). Example: 12345.
categoryinteger- Filter by task category ID (from drchrono_list_task_categories). Example: 12345.
cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
due_at_datestring- Return tasks due on this date (YYYY-MM-DD). Example: 2026-11-02.
due_at_rangestring- Return tasks due within this range, as YYYY-MM-DD/YYYY-MM-DD. Example: 2026-11-01/2026-11-30.
due_at_sincestring- Return tasks due on or after this date (YYYY-MM-DD). Example: 2026-11-01.
page_sizeinteger- Number of results per page. Most DrChrono list endpoints default to and cap at 250 results per page. Example: 50.
sincestring- Return only tasks created or updated on or after this date (YYYY-MM-DD). Example: 2026-01-01.
statusinteger- Filter by task status ID (from drchrono_list_task_statuses). Example: 12345.
drchrono_list_usersList user accounts in the practice group.Read-onlyList Users
List user accounts in the practice group. Returns each user's id, username, linked doctor, whether they are a doctor or staff, and permissions, plus next and previous page URLs. Use this to find user IDs, for example to assign tasks. Use drchrono_get_user for one user or the signed-in user.
Inputs
cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
doctorinteger- Filter by doctor ID. Get doctor IDs from drchrono_list_doctors. Example: 12345.
page_sizeinteger- Number of results per page. Most DrChrono list endpoints default to and cap at 250 results per page. Example: 50.
drchrono_search_insurance_payersSearch insurance payers by partial name, partial payer ID or state, in one clearinghouse's payer list.Read-onlySearch Insurance Payers
Search insurance payers by partial name, partial payer ID or state, in one clearinghouse's payer list. Returns matching payers with their payer IDs and names, plus next and previous page URLs. Use a payer ID as insurance_payer_id in a patient's primary_insurance or secondary_insurance. A patient's own insurance is on drchrono_get_patient.
Inputs
payer_typestringrequired- Which payer list to search: emdeon, gateway or ihcfa. Example: emdeon.one of
emdeongatewayihcfa cursorstring- Pagination cursor for the next page. Copy the value of the cursor query parameter from the next URL returned by the previous call. Leave empty for the first page. Example: cD0yMDI2LTAxLTE1KzEyJTNBMDA.
page_sizeinteger- Number of results per page. Most DrChrono list endpoints default to and cap at 250 results per page. Example: 50.
termstring- Search term: a partial payer name, partial payer ID or a state. Example: Aetna.
drchrono_create_allergyRecord an allergy for a patient.WriteCreate Allergy
Record an allergy for a patient. Returns the created allergy with its id. Use drchrono_update_allergy to change it or mark it inactive.
Inputs
doctorintegerrequired- ID of the doctor who diagnosed the allergy. Get doctor IDs from drchrono_list_doctors. Example: 12345.
patientintegerrequired- ID of the patient with the allergy. Get patient IDs from drchrono_list_patients. Example: 12345.
descriptionstring- What the patient is allergic to. Example: Penicillin.
notesstring- Additional notes from the provider. Example: Reported by patient.
reactionstring- Short description of the reaction. Example: Hives.
rxnormstring- RxNorm code of the drug, for a drug allergy. Example: 7980.
snomed_codestring- SNOMED code for the allergy. Example: 91936005.
snomed_reactionstring- SNOMED code for the reaction, from the PHIN VADS reaction value set. Example: 247472004.
statusstring- Allergy status: active or inactive. DrChrono uses active when this is omitted on create. Example: active.one of
activeinactive verification_statusstring- Verification status: confirmed, unconfirmed, refuted or entered-in-error. Example: confirmed.one of
confirmedunconfirmedrefutedentered-in-error
drchrono_create_appointmentBook an appointment on a doctor's calendar for a patient, office and exam room.WriteCreate Appointment
Book an appointment on a doctor's calendar for a patient, office and exam room. Returns the created appointment with its id. Check open slots first with drchrono_get_availability. Set duration, or a profile from drchrono_list_appointment_profiles. Use drchrono_update_appointment to reschedule or change status.
Inputs
doctorintegerrequired- ID of the doctor whose calendar the appointment is on. Get doctor IDs from drchrono_list_doctors. Example: 12345.
exam_roomintegerrequired- Index of the exam room within the office (the index field of an entry in the office's exam_rooms list from drchrono_get_office). Example: 1.
officeintegerrequired- ID of the office where the appointment takes place. Get office IDs from drchrono_list_offices. Example: 12345.
patientintegerrequired- ID of the patient the appointment is for. Get patient IDs from drchrono_list_patients. Example: 12345.
scheduled_timestringrequired- Start time of the appointment as an ISO 8601 timestamp in the office's local time. Example: 2026-11-02T09:30:00.
allow_overlappingboolean- Set to true to skip the overlap check and book even if the slot overlaps another appointment. Example: false.
colorstring- Calendar color as a hex code. Example: #3366CC.
durationinteger- Length of the appointment in minutes. Optional when profile is set, because the profile supplies a default. Example: 30.
icd10_codesarray- ICD-10 diagnosis codes for the visit, as a list of strings. Example: ["Z00.00"].
is_walk_inboolean- Set to true to mark the appointment as a walk-in. Example: false.
notesstring- Free-text appointment notes. Example: Patient prefers morning visits.
profileinteger- ID of an appointment profile (from drchrono_list_appointment_profiles). The profile sets default color, duration and reason on creation, which explicit values override. Example: 12345.
reasonstring- Reason for the visit. Example: Annual physical.
statusstring- Appointment status: Arrived, Checked In, Checked In Online, In Room, In Session, Complete, Confirmed, Not Confirmed, Rescheduled, Cancelled or No Show (empty string clears it). Example: Confirmed.one of
ArrivedChecked InChecked In OnlineIn RoomIn SessionCompleteConfirmedNot ConfirmedRescheduledCancelledNo Show
drchrono_create_medicationAdd a medication to a patient's medication list.WriteCreate Medication
Add a medication to a patient's medication list. This records the medication; it does not send an eRx. Returns the created medication with its id. Use drchrono_update_medication to change or stop it.
Inputs
doctorintegerrequired- ID of the prescribing doctor. Get doctor IDs from drchrono_list_doctors. Example: 12345.
patientintegerrequired- ID of the patient taking the medication. Get patient IDs from drchrono_list_patients. Example: 12345.
appointmentinteger- ID of the appointment of the initial prescription. Get appointment IDs from drchrono_list_appointments. Example: 12345.
date_prescribedstring- Date prescribed (YYYY-MM-DD). Example: 2026-10-01.
date_started_takingstring- Date the patient started taking it (YYYY-MM-DD). Example: 2026-10-02.
date_stopped_takingstring- Date the patient stopped taking it (YYYY-MM-DD). Example: 2026-12-31.
dawboolean- Set to true if the prescription must be dispensed as written, without substitution. Example: false.
dispense_quantitynumber- Quantity to dispense. Example: 30.
dosage_quantitystring- Dose amount per administration, as a number or formatted string. Example: 1.
dosage_unitsstring- Units for dosage_quantity. Example: tablet.
frequencystring- How often the medication is taken. Example: once daily.
indicationstring- Why the medication is taken. Example: Hypertension.
namestring- Medication name, usually drug, strength and form. Example: Lisinopril 10 mg tablet.
ndcstring- National Drug Code. Example: 00000-0000-00.
notesstring- Additional notes from the provider. Example: Recheck BP in 2 weeks.
number_refillsinteger- Number of refills allowed. Example: 3.
order_statusstring- How the medication was ordered, e.g. Ordered, Electronic eRx Sent, Phoned into Pharmacy, Paper Rx, Over the Counter, Prescribed by other Dr or Discontinued. Example: Prescribed by other Dr.one of
Administered during visitDiscontinuedElectronic eRx SentFaxed to PharmacyOrderedOver the CounterPaper RxPhoned into PharmacyPrescribed by other DrPrescription Printed prnboolean- Set to true if the medication is taken only as needed. Example: false.
routestring- Route of administration. Example: oral.
rxnormstring- RxNorm code for the medication. Example: 314076.
signature_notestring- Sig (directions to the patient). Example: Take 1 tablet by mouth daily.
statusstring- Medication status: active or inactive. DrChrono uses active when this is omitted on create. Example: active.one of
activeinactive
drchrono_create_patientCreate a new patient in the practice.WriteCreate Patient
Create a new patient in the practice. A primary doctor and gender are required. Returns the created patient record, including its new id and chart ID. DrChrono rejects likely duplicates unless allow_duplicates is true. Use drchrono_update_patient to change an existing patient.
Inputs
doctorintegerrequired- ID of the patient's primary doctor. Get doctor IDs from drchrono_list_doctors. Example: 12345.
genderstringrequired- Patient's administrative gender. One of Male, Female, Other, UNK (unknown) or ASKU (asked, declined). Example: Female.one of
MaleFemaleOtherUNKASKU addressstring- Street address. Example: 123 Example St.
allow_duplicatesboolean- Set to true to skip DrChrono's duplicate-patient check. Example: false.
cell_phonestring- Patient's cell phone number. Example: (555) 555-0100.
chart_idstring- Chart ID for the patient. DrChrono generates one from the first and last name when it is left empty. Example: TEJA000001.
citystring- City. Example: Springfield.
date_of_birthstring- Date of birth in YYYY-MM-DD format. Example: 1980-01-01.
default_pharmacystring- NCPDP ID of the patient's default pharmacy. Example: 1234567.
emailstring- Patient's email address. Example: patient@example.com.
emergency_contact_namestring- Emergency contact's full name. Example: John Testcontact.
emergency_contact_phonestring- Emergency contact's phone number. Example: (555) 555-0103.
emergency_contact_relationstring- Emergency contact's relationship to the patient. Example: Spouse.
ethnicitystring- Ethnicity. One of blank, hispanic, not_hispanic or declined. Example: declined.one of
blankhispanicnot_hispanicdeclined first_namestring- Patient's first name. Example: Jane.
home_phonestring- Patient's home phone number. Example: (555) 555-0101.
last_namestring- Patient's last name. Example: Testpatient.
middle_namestring- Patient's middle name. Example: Q.
nick_namestring- Common name for the patient, shown instead of the first name when set. Example: Janie.
office_phonestring- Patient's work phone number. Example: (555) 555-0102.
patient_payment_profilestring- Default payment profile for the patient: Cash, Insurance, Insurance Out of Network, Auto Accident or Worker's Comp. The matching insurance must already be on file for the insurance-based profiles. Example: Cash.one of
CashInsuranceInsurance Out of NetworkAuto AccidentWorker's Comp patient_statusstring- Patient status: A (active), I (inactive) or D (inactive, deceased). Example: A.one of
AID preferred_languagestring- Preferred language as an ISO 639 alpha-3 code: blank, eng, zho, fra, ita, jpn, por, rus, spa, other, unknown or declined. Example: eng.one of
blankengzhofraitajpnporrusspaotherunknowndeclined primary_insuranceobject- The patient's primary insurance as an object. Common keys: insurance_company, insurance_payer_id (find payers with drchrono_search_insurance_payers), insurance_plan_name, insurance_id_number, insurance_group_number, is_subscriber_the_patient and patient_relationship_to_subscriber. DrChrono does not validate insurance data, and changing it can make past appointments unbillable. Example: {"insurance_company": "Example Health Plan", "insurance_payer_id": "12345", "insurance_id_number": "ABC123456", "is_subscriber_the_patient": true}.
racestring- Race. One of blank, indian, asian, black, hawaiian, white, other or declined. Example: declined.one of
blankindianasianblackhawaiianwhiteotherdeclined referring_sourcestring- How the patient was referred to the practice. Example: Website.
secondary_insuranceobject- The patient's secondary insurance as an object. Common keys: insurance_company, insurance_payer_id (find payers with drchrono_search_insurance_payers), insurance_plan_name, insurance_id_number, insurance_group_number, is_subscriber_the_patient and patient_relationship_to_subscriber. DrChrono does not validate insurance data, and changing it can make past appointments unbillable. Example: {"insurance_company": "Example Health Plan", "insurance_payer_id": "12345", "insurance_id_number": "ABC123456", "is_subscriber_the_patient": true}.
statestring- Two-letter US state abbreviation. Example: CA.
zip_codestring- ZIP code. Example: 90210.
drchrono_create_problemAdd a problem (diagnosis) to a patient's problem list.WriteCreate Problem
Add a problem (diagnosis) to a patient's problem list. Returns the created problem with its id. Use drchrono_update_problem to change status, for example to resolved.
Inputs
doctorintegerrequired- ID of the doctor recording the problem. Get doctor IDs from drchrono_list_doctors. Example: 12345.
patientintegerrequired- ID of the patient the problem belongs to. Get patient IDs from drchrono_list_patients. Example: 12345.
appointmentinteger- ID of the appointment where the problem was recorded. Get appointment IDs from drchrono_list_appointments. Example: 12345.
date_diagnosisstring- Date the problem was diagnosed (YYYY-MM-DD). Example: 2025-06-15.
date_onsetstring- Date the problem started (YYYY-MM-DD). Example: 2025-06-01.
descriptionstring- Description of the problem. Example: High blood pressure.
icd_codestring- ICD-9 or ICD-10 code for the problem. Example: I10.
icd_versionstring- ICD version of icd_code: 9 or 10. DrChrono uses 10 when this is omitted on create. Example: 10.one of
910 namestring- Name of the problem. Example: Essential hypertension.
notesstring- Additional notes from the provider. Example: Monitor monthly.
snomed_ct_codestring- SNOMED CT code for the problem. Example: 38341003.
statusstring- Problem status: active, inactive or resolved. DrChrono uses active when this is omitted on create. Example: active.one of
activeinactiveresolved verification_statusstring- Verification status: unconfirmed, provisional, differential, confirmed, refuted or entered-in-error. Example: confirmed.one of
unconfirmedprovisionaldifferentialconfirmedrefutedentered-in-error
drchrono_create_taskCreate a task in the practice's task center, optionally assigned to a user or group and linked to a patient or appointment.WriteCreate Task
Create a task in the practice's task center, optionally assigned to a user or group and linked to a patient or appointment. Returns the created task with its id. Get a status ID from drchrono_list_task_statuses first. Use drchrono_create_task_note to add a comment to an existing task.
Inputs
statusintegerrequired- Task status ID. Get IDs from drchrono_list_task_statuses. Example: 12345.
titlestringrequired- Task title. Example: Call patient with lab results.
archivedboolean- Set to true to archive the task. Example: false.
assignee_groupinteger- ID of the user group to assign the task to. Set this or assignee_user. Example: 12345.
assignee_userstring- ID of the user to assign the task to (from drchrono_list_users). Set this or assignee_group. Example: 12345.
associated_itemsarray- Records to link to the task, as a list of objects with type and value. type is one of Appointment, Patient, Message, Message Thread, Document, Lab order, Lab result, Lab document or Communication; value is that record's ID. Example: [{"type": "Patient", "value": 12345}].
categoryinteger- Task category ID. Get IDs from drchrono_list_task_categories. Example: 12345.
due_timestring- When the task is due, as an ISO 8601 timestamp. Sent as due_date.time. Example: 2026-11-02T17:00:00.
prioritystring- Priority: 10 (Low), 20 (Medium), 30 (High) or 40 (Urgent). Example: 20.one of
10203040
drchrono_create_task_noteAdd a note (comment) to an existing task.WriteCreate Task Note
Add a note (comment) to an existing task. Returns the created note with its id. Use drchrono_list_task_notes to read a task's notes.
Inputs
taskintegerrequired- ID of the task to comment on (from drchrono_list_tasks). Example: 12345.
textstringrequired- Content of the note. Example: Left voicemail for the patient.
drchrono_update_allergyUpdate selected fields on a patient allergy, such as marking it inactive.WriteUpdate Allergy
Update selected fields on a patient allergy, such as marking it inactive. Only the fields you send change. Returns an empty response (HTTP 204) on success; call drchrono_get_allergy to read the result. Use drchrono_create_allergy to record a new allergy.
- Idempotent
Inputs
idintegerrequired- ID of the allergy. Get it from drchrono_list_allergies. Example: 12345.
descriptionstring- What the patient is allergic to. Example: Penicillin.
notesstring- Additional notes from the provider. Example: Reported by patient.
reactionstring- Short description of the reaction. Example: Hives.
rxnormstring- RxNorm code of the drug, for a drug allergy. Example: 7980.
snomed_codestring- SNOMED code for the allergy. Example: 91936005.
snomed_reactionstring- SNOMED code for the reaction, from the PHIN VADS reaction value set. Example: 247472004.
statusstring- Allergy status: active or inactive. DrChrono uses active when this is omitted on create. Example: active.one of
activeinactive verification_statusstring- Verification status: confirmed, unconfirmed, refuted or entered-in-error. Example: confirmed.one of
confirmedunconfirmedrefutedentered-in-error
drchrono_update_appointmentUpdate selected fields on an appointment, such as rescheduling it, changing its status (e.g.WriteUpdate Appointment
Update selected fields on an appointment, such as rescheduling it, changing its status (e.g. Arrived, Cancelled) or editing the reason. Only the fields you send change. Returns an empty response (HTTP 204) on success; call drchrono_get_appointment to read the result. Use drchrono_create_appointment to book a new visit.
- Idempotent
Inputs
idstringrequired- ID of the appointment. Get it from drchrono_list_appointments. Example: 12345.
allow_overlappingboolean- Set to true to skip the overlap check and book even if the slot overlaps another appointment. Example: false.
colorstring- Calendar color as a hex code. Example: #3366CC.
doctorinteger- ID of the doctor whose calendar the appointment is on. Get doctor IDs from drchrono_list_doctors. Example: 12345.
durationinteger- Length of the appointment in minutes. Optional when profile is set, because the profile supplies a default. Example: 30.
exam_roominteger- Index of the exam room within the office (the index field of an entry in the office's exam_rooms list from drchrono_get_office). Example: 1.
icd10_codesarray- ICD-10 diagnosis codes for the visit, as a list of strings. Example: ["Z00.00"].
is_walk_inboolean- Set to true to mark the appointment as a walk-in. Example: false.
notesstring- Free-text appointment notes. Example: Patient prefers morning visits.
officeinteger- ID of the office where the appointment takes place. Get office IDs from drchrono_list_offices. Example: 12345.
patientinteger- ID of the patient the appointment is for. Get patient IDs from drchrono_list_patients. Example: 12345.
profileinteger- ID of an appointment profile (from drchrono_list_appointment_profiles). The profile sets default color, duration and reason, which explicit values override. Example: 12345.
reasonstring- Reason for the visit. Example: Annual physical.
scheduled_timestring- Start time of the appointment as an ISO 8601 timestamp in the office's local time. Example: 2026-11-02T09:30:00.
statusstring- Appointment status: Arrived, Checked In, Checked In Online, In Room, In Session, Complete, Confirmed, Not Confirmed, Rescheduled, Cancelled or No Show (empty string clears it). Example: Confirmed.one of
ArrivedChecked InChecked In OnlineIn RoomIn SessionCompleteConfirmedNot ConfirmedRescheduledCancelledNo Show
drchrono_update_medicationUpdate selected fields on a patient medication, such as setting a stop date or marking it inactive.WriteUpdate Medication
Update selected fields on a patient medication, such as setting a stop date or marking it inactive. Only the fields you send change. Returns an empty response (HTTP 204) on success; call drchrono_get_medication to read the result. Use drchrono_create_medication to add a new medication.
- Idempotent
Inputs
idintegerrequired- ID of the medication. Get it from drchrono_list_medications. Example: 12345.
appointmentinteger- ID of the appointment of the initial prescription. Get appointment IDs from drchrono_list_appointments. Example: 12345.
date_prescribedstring- Date prescribed (YYYY-MM-DD). Example: 2026-10-01.
date_started_takingstring- Date the patient started taking it (YYYY-MM-DD). Example: 2026-10-02.
date_stopped_takingstring- Date the patient stopped taking it (YYYY-MM-DD). Example: 2026-12-31.
dawboolean- Set to true if the prescription must be dispensed as written, without substitution. Example: false.
dispense_quantitynumber- Quantity to dispense. Example: 30.
dosage_quantitystring- Dose amount per administration, as a number or formatted string. Example: 1.
dosage_unitsstring- Units for dosage_quantity. Example: tablet.
frequencystring- How often the medication is taken. Example: once daily.
indicationstring- Why the medication is taken. Example: Hypertension.
namestring- Medication name, usually drug, strength and form. Example: Lisinopril 10 mg tablet.
ndcstring- National Drug Code. Example: 00000-0000-00.
notesstring- Additional notes from the provider. Example: Recheck BP in 2 weeks.
number_refillsinteger- Number of refills allowed. Example: 3.
order_statusstring- How the medication was ordered, e.g. Ordered, Electronic eRx Sent, Phoned into Pharmacy, Paper Rx, Over the Counter, Prescribed by other Dr or Discontinued. Example: Prescribed by other Dr.one of
Administered during visitDiscontinuedElectronic eRx SentFaxed to PharmacyOrderedOver the CounterPaper RxPhoned into PharmacyPrescribed by other DrPrescription Printed prnboolean- Set to true if the medication is taken only as needed. Example: false.
routestring- Route of administration. Example: oral.
rxnormstring- RxNorm code for the medication. Example: 314076.
signature_notestring- Sig (directions to the patient). Example: Take 1 tablet by mouth daily.
statusstring- Medication status: active or inactive. DrChrono uses active when this is omitted on create. Example: active.one of
activeinactive
drchrono_update_patientUpdate selected fields on an existing patient.WriteUpdate Patient
Update selected fields on an existing patient. Only the fields you send change. Returns an empty response (HTTP 204) on success; call drchrono_get_patient to read the result. Use drchrono_create_patient to add a new patient.
- Idempotent
Inputs
idintegerrequired- ID of the patient. Get it from drchrono_list_patients. Example: 12345.
addressstring- Street address. Example: 123 Example St.
cell_phonestring- Patient's cell phone number. Example: (555) 555-0100.
chart_idstring- Chart ID for the patient. DrChrono generates one from the first and last name when it is left empty. Example: TEJA000001.
citystring- City. Example: Springfield.
date_of_birthstring- Date of birth in YYYY-MM-DD format. Example: 1980-01-01.
default_pharmacystring- NCPDP ID of the patient's default pharmacy. Example: 1234567.
doctorinteger- ID of the patient's primary doctor (to reassign the patient). Get doctor IDs from drchrono_list_doctors. Example: 12345.
emailstring- Patient's email address. Example: patient@example.com.
emergency_contact_namestring- Emergency contact's full name. Example: John Testcontact.
emergency_contact_phonestring- Emergency contact's phone number. Example: (555) 555-0103.
emergency_contact_relationstring- Emergency contact's relationship to the patient. Example: Spouse.
ethnicitystring- Ethnicity. One of blank, hispanic, not_hispanic or declined. Example: declined.one of
blankhispanicnot_hispanicdeclined first_namestring- Patient's first name. Example: Jane.
genderstring- Patient's administrative gender. One of Male, Female, Other, UNK (unknown) or ASKU (asked, declined). Example: Female.one of
MaleFemaleOtherUNKASKU home_phonestring- Patient's home phone number. Example: (555) 555-0101.
last_namestring- Patient's last name. Example: Testpatient.
middle_namestring- Patient's middle name. Example: Q.
nick_namestring- Common name for the patient, shown instead of the first name when set. Example: Janie.
office_phonestring- Patient's work phone number. Example: (555) 555-0102.
patient_payment_profilestring- Default payment profile for the patient: Cash, Insurance, Insurance Out of Network, Auto Accident or Worker's Comp. The matching insurance must already be on file for the insurance-based profiles. Example: Cash.one of
CashInsuranceInsurance Out of NetworkAuto AccidentWorker's Comp patient_statusstring- Patient status: A (active), I (inactive) or D (inactive, deceased). Example: A.one of
AID preferred_languagestring- Preferred language as an ISO 639 alpha-3 code: blank, eng, zho, fra, ita, jpn, por, rus, spa, other, unknown or declined. Example: eng.one of
blankengzhofraitajpnporrusspaotherunknowndeclined primary_insuranceobject- The patient's primary insurance as an object. Common keys: insurance_company, insurance_payer_id (find payers with drchrono_search_insurance_payers), insurance_plan_name, insurance_id_number, insurance_group_number, is_subscriber_the_patient and patient_relationship_to_subscriber. DrChrono does not validate insurance data, and changing it can make past appointments unbillable. Example: {"insurance_company": "Example Health Plan", "insurance_payer_id": "12345", "insurance_id_number": "ABC123456", "is_subscriber_the_patient": true}.
racestring- Race. One of blank, indian, asian, black, hawaiian, white, other or declined. Example: declined.one of
blankindianasianblackhawaiianwhiteotherdeclined referring_sourcestring- How the patient was referred to the practice. Example: Website.
secondary_insuranceobject- The patient's secondary insurance as an object. Common keys: insurance_company, insurance_payer_id (find payers with drchrono_search_insurance_payers), insurance_plan_name, insurance_id_number, insurance_group_number, is_subscriber_the_patient and patient_relationship_to_subscriber. DrChrono does not validate insurance data, and changing it can make past appointments unbillable. Example: {"insurance_company": "Example Health Plan", "insurance_payer_id": "12345", "insurance_id_number": "ABC123456", "is_subscriber_the_patient": true}.
statestring- Two-letter US state abbreviation. Example: CA.
zip_codestring- ZIP code. Example: 90210.
drchrono_update_problemUpdate selected fields on a patient problem, such as marking it resolved.WriteUpdate Problem
Update selected fields on a patient problem, such as marking it resolved. Only the fields you send change. Returns an empty response (HTTP 204) on success; call drchrono_get_problem to read the result. Use drchrono_create_problem to add a new problem.
- Idempotent
Inputs
idintegerrequired- ID of the problem. Get it from drchrono_list_problems. Example: 12345.
appointmentinteger- ID of the appointment where the problem was recorded. Get appointment IDs from drchrono_list_appointments. Example: 12345.
date_diagnosisstring- Date the problem was diagnosed (YYYY-MM-DD). Example: 2025-06-15.
date_onsetstring- Date the problem started (YYYY-MM-DD). Example: 2025-06-01.
descriptionstring- Description of the problem. Example: High blood pressure.
icd_codestring- ICD-9 or ICD-10 code for the problem. Example: I10.
icd_versionstring- ICD version of icd_code: 9 or 10. DrChrono uses 10 when this is omitted on create. Example: 10.one of
910 namestring- Name of the problem. Example: Essential hypertension.
notesstring- Additional notes from the provider. Example: Monitor monthly.
snomed_ct_codestring- SNOMED CT code for the problem. Example: 38341003.
statusstring- Problem status: active, inactive or resolved. DrChrono uses active when this is omitted on create. Example: active.one of
activeinactiveresolved verification_statusstring- Verification status: unconfirmed, provisional, differential, confirmed, refuted or entered-in-error. Example: confirmed.one of
unconfirmedprovisionaldifferentialconfirmedrefutedentered-in-error
drchrono_update_taskUpdate selected fields on a task, such as its status, assignee or due date.WriteUpdate Task
Update selected fields on a task, such as its status, assignee or due date. Only the fields you send change. Returns an empty response (HTTP 204) on success; call drchrono_get_task to read the result. Use drchrono_create_task to add a new task.
- Idempotent
Inputs
idintegerrequired- ID of the task. Get it from drchrono_list_tasks. Example: 12345.
archivedboolean- Set to true to archive the task. Example: false.
assignee_groupinteger- ID of the user group to assign the task to. Set this or assignee_user. Example: 12345.
assignee_userstring- ID of the user to assign the task to (from drchrono_list_users). Set this or assignee_group. Example: 12345.
associated_itemsarray- Records to link to the task, as a list of objects with type and value. type is one of Appointment, Patient, Message, Message Thread, Document, Lab order, Lab result, Lab document or Communication; value is that record's ID. Example: [{"type": "Patient", "value": 12345}].
categoryinteger- Task category ID. Get IDs from drchrono_list_task_categories. Example: 12345.
due_timestring- When the task is due, as an ISO 8601 timestamp. Sent as due_date.time. Example: 2026-11-02T17:00:00.
prioritystring- Priority: 10 (Low), 20 (Medium), 30 (High) or 40 (Urgent). Example: 20.one of
10203040 statusinteger- Task status ID. Get IDs from drchrono_list_task_statuses. Example: 12345.
titlestring- Task title. Example: Call patient with lab results.
No tools match.