Fetch Patients
Performs a live fetch of patient data from the connected EMR system based on search criteria.
Optional Includes
Useinclude to opt into additional live-fetch payloads. The API accepts either:
- a comma-delimited string, for example
include: "insurances" - an array of strings, for example
include: ["insurances"]
insurancesproblemsmedical_historylabslabs.results(orders plus discrete result values; implieslabs)taskstasks.notes(tasks plus attatched notes; impliestasks)
tasks.notes implies tasks — you do not need to pass both. Requesting tasks.notes makes an extra live fetch per task to pull its note history, so only request it when you need the notes.Example Request
Response Data
Patient data includes comprehensive information including active medications and associated pharmacies:Insurances Array
insurances is only returned when include contains insurances. It is currently supported for eClinicalWorks.
insurance_name and insurance_subscriber_number fields remain convenience fields on the patient object. When present, prefer insurances[] for record-specific insurance details and update targeting.Guarantors Array
eClinicalWorks only. Each entry represents a guarantor on the patient’s account. Empty array if the lookup fails.patient_balance and account_balance fields (numbers, in dollars) are returned alongside the guarantors. Both are null if the lookup fails.
Alerts Object
eClinicalWorks only. Contains the patient’s billing and global alerts. May benull if the alerts lookup fails.
Medications Array
Each patient includes an array of active medications with the following fields:Pharmacies Array
Each patient includes an array of associated pharmacies with the following fields:Encounters Array
Each patient includes an array of encounters (past and upcoming appointments) returned by the EMR. Field availability varies by EMR and visit type.visit_type: "TEL") are enriched with additional fields including caller, message, actions, notes, assigned_to, answered_by, priority, and has_attachment.
The top-level last_appointment_date field is derived from the encounters array and reflects the most recent appointment date for the patient.
Tasks Array
ModMed Gastro only. Returned only wheninclude contains tasks (or tasks.notes). Each entry is a task from the patient’s chart. ModMed Gastro models telephone encounters as tasks with category: "Telephone Encounter" — use category to distinguish task types. All task types are returned; filter client-side on category if you only want a subset.
Task Notes Array
Each task’snotes[] (present only with tasks.notes) contains its note history, most recent first:
Webhook Notifications
When the patient fetch is complete, we will send a webhook to your registered endpoint. Here is an example of what the webhook payload will look like:Authorizations
Body
Identifies the search method or criteria being used.
dob, name, phone, mrn Date of birth in ISO 8601 format (YYYY-MM-DD).
Patient's first name.
Patient's last name.
Phone number in format XXX-XXX-XXXX (e.g., "555-123-4567").
^\d{3}-\d{3}-\d{4}$Medical Record Number (MRN) to search for a specific patient.
Optional related resources to include in the live-fetch payload. Supports different values depending on your connected EMR system:
eClinicalWorks: insurances, problems, medical_history, labs, labs.results (orders plus discrete result values; implies labs).
Credible: insurances, documents, encounters, episodes, notes, assessments, care_plans, clinical_notes.
ModMed Gastro: tasks, tasks.notes (implies tasks).
Only include values supported by your EMR — an unsupported value will return a 400 error with the list of valid values for your system. Accepts either a comma-delimited string or an array of strings.
"problems,medical_history,labs.results"