Back to Integrations
HealthcareLive · 16 actions

Charm API

Integuru generates a production-ready HTTP API for Charm, the CharmHealth cloud EHR and practice management platform used by ambulatory and multi-specialty practices. 16 verified actions cover patient search and creation, insurance policies and card images, schedules, encounter lists, notes, questionnaires and PDF export, quick notes, chart alerts and document uploads, for AI scribe, intake and RCM teams.

npm install -g integuru
Backed byY Combinator100 API calls/month free

16

Verified actions live today

<3 sec

Response latency per call

99.9%+

Reliability rate on generated APIs

24/7

On-call maintenance on Production plans

Integration facts

Authentication
Login flows, including 2FA, handled by Integuru using your own Charm credentials.
Approach
Direct HTTP requests, with no browser automation or RPA involved.

Endpoints

Available actions

Click an action to expand its parameters

Don't see the action you need?

The actions above cover the most common Charm integration patterns, but they're not the full picture. Integuru can build additional workflows for any capability the platform exposes. Our Managed Service handles scoping, building, and maintaining custom actions on your behalf, so just let us know what you need.

Guide

Charm integration guide

Does Charm have a public API?

Yes, for reading the record. CharmHealth's EHR API program exposes HL7 FHIR R4 and US Core resources with SMART app launch, and access takes an API Access Request, a signed API agreement, an issued developer license, and each practice administrator adding your client id under Settings, Account, API Keys. Integuru generates a production-ready HTTP API for the write-side work from the practice's own login, with 16 verified actions.

CharmHealth FHIR API programInteguru for Charm
AccessAccess request, signed agreement, developer license, per-practice client id authorisationThe practice's own Charm login
CoversFHIR R4 and US Core reads of the patient record, SMART app launchPatient and policy creation, documents and card images, notes, alerts, encounter lists and PDFs
Best forCertified apps reading clinical data across many practicesScribe, intake and RCM tools that must write into a practice this week

Both routes can run side by side: the FHIR program for the clinical read, Integuru for the front-desk and billing writes it does not reach. Integuru's calls are direct HTTP requests to the endpoints the Charm web app uses, authenticated, using your own credentials, with login and any second factor handled for you.

What you can do with the Charm API

A multi-specialty clinic takes its new patients in through a web intake form. Each one needs a chart, a primary policy, both sides of the insurance card, and a flag for anything the provider must see before the visit. After the visit, the signed note has to reach the billing company as a PDF.

Create the chart and the coverage

  • search_patients finds patients by query with search_by set to name_or_mrn (default), name_or_mrn_startswith, dob, phone or email; create_patient opens a chart from first_name, last_name, dob, gender and email, with duplicate_check on by default and facility_id falling back to the account default. list_facilities returns the numeric and 48-character hex facility ids the other actions accept.
  • add_insurance attaches a policy from company_name, id_number and insurance_type, with category defaulting to PRIMARY and relationship defaulting to Self (subscriber demographics auto-filled; otherwise pass a subscriber object). Set release_medical_info and it requires signature_on_file_date. Medicare Secondary Payer codes go in medicare_policy_type_code.
  • upload_patient_document_v2 with placement of insurance_card_front or insurance_card_back files the card against the primary policy (or a given policy_id).

Flag what the provider must see

  • create_chart_alert shows alert_details (200 characters max) when the chart opens, optionally saving it to the master list; clear_chart_alert removes one alert by exact alert_text or all of them when omitted.
  • create_quick_note adds up to 1000 characters of plain text to the chart; longer notes are rejected rather than truncated.

Read the schedule and the encounters

  • list_appointments returns a date_from window (default 14 days) for a facility_id; list_patient_appointments reads one patient.
  • list_recent_encounters pages signed (or another status bucket) encounters from date_from, 25 per page; list_patient_encounters lists one patient's with a criteria filter. get_encounter_note and get_encounter_questionnaires read the content, and export_encounter_pdf renders an encounter_id for the billing hand-off.

File documents

  • upload_patient_document files a file_base64 under a configured document_type (default Correspondence) with a document_date (default today) and a file_name up to 199 characters; the v2 action infers content_type and files under Others when no placement is given.

Who uses this

AI scribe teams that write to Charm charts export the signed encounter with export_encounter_pdf, file their own summary with upload_patient_document, and leave a create_quick_note when something needs a human. Intake and eligibility tools run create_patient, add_insurance and both card uploads in one flow so the front desk never retypes a card. RCM companies pull list_recent_encounters per facility each night to reconcile what was signed against what was billed. Practices that run a specialty EHR alongside Charm pair this page with the Modmed, DrChrono and NextGen integrations; the healthcare industry page covers intake, documentation and billing as one workflow.

Setup notes

Integuru authenticates against accounts.charmtracker.com with your Charm user. Patient ids are the internal numeric ids from search_patients, never the MRN. Facility-scoped reads accept the numeric or hex id from list_facilities and default to the account's active facility; add_insurance and export_encounter_pdf accept facility_id for consistency but ignore it because they key on account-global ids. Dates are YYYY-MM-DD, phone numbers are digits only, and document_type must be one of the practice's configured types or the upload is rejected.

Get started

Install the CLI and connect your Charm login:

npm install -g integuru

Or sign in at app.integuru.com, add Charm, and run search_patients from the dashboard. Appointment booking, charge entry, prescriptions and lab orders are built on request through the Managed Service.

Guides in Healthcare

Platform API guides in this vertical

Platforms available to request, not yet live

Good to know

Before you start

Can I use it today?
Yes. Every action listed above has been verified against live Charm traffic. Install the CLI or sign in at app.integuru.com, connect your Charm account, and start calling the endpoints.
What if Charm changes or breaks?
On Production plans the Integuru team is on call around the clock, with auth auto-healing included, so target-platform changes get fixed by Integuru rather than by your engineers.
What does it cost?
Start on the Free plan at $0/month with 100 API calls/month. Production starts at $499/month with 24/7 on-call maintenance and auth auto-healing.

FAQ

Frequently asked questions