Resources
TherapyNotes: The HIE Feed Is the Only Data Out
By Federico Ruiz Cassarino, CEO and founder, Puppeteer AI · · 5 min read
Most posts in this series answer how to get appointment data out of a given EHR. For TherapyNotes the honest answer, as far as anything public goes, is that you largely don't, and the more useful exercise is to look at the one structured outbound path the vendor does document, because its contents are a precise statement of what the product considers shareable.
TherapyNotes publishes no developer portal, no API reference, and no partner program for programmatic access on its own site. It publishes integrations, ePrescribe through a partnership with DrFirst, for instance, but those are built by TherapyNotes with named partners, not surfaces you can build against.
What it does document is the Health Information Exchange connection, and that's where this gets interesting.
What actually leaves the building
TherapyNotes' own support documentation describes reaching agreements with supported HIE registries to send information meeting minimum necessary data standards, and it enumerates what that includes: patient and provider demographics, encounter information such as the date and time of the session, service codes, and the patient's diagnosis code.
Read that list as an engineer and something jumps out. The date and time of the session is in there. So is the diagnosis code and the service code. That is, structurally, appointment data: enough to know who was seen, by whom, when, and for what.
What is conspicuously not in there is anything about appointments that didn't happen. An HIE feed reports encounters. A no-show is the absence of an encounter, and absences don't get transmitted.
So even the one documented outbound path is the wrong shape for no-show work. You cannot detect a missed appointment from a feed that only reports the appointments that occurred. That's not a limitation of the HIE agreement, it's what an HIE is for.
It's worth stating plainly because it closes off a line of thinking that otherwise consumes a week: there is no clever route from the HIE connection to a no-show trigger.
So how does a TherapyNotes practice handle no-shows?
Inside TherapyNotes, using what's already there. This is a case where the built-in feature set is the answer rather than a workaround.
TherapyNotes has appointment status tracking, and marking a missed appointment consistently is the whole foundation. If clinicians mark no-shows sometimes and leave appointments untouched other times, no process built on top will work, not an automated one, and not a manual one either.
It has built-in reminders, and reducing no-shows is cheaper than recovering from them. A practice with reminders configured and a clear late-cancellation policy has less to recover.
It has a client portal, which is where a client who missed a session can rebook without a phone call.
And it has reporting, which is how you learn whether no-shows cluster: a particular clinician, a particular time of day, a particular week after intake. That pattern is usually more actionable than any individual follow-up, because it points at a cause you can fix rather than an outcome you keep responding to.
The follow-up that works without automation
Behavioral health no-shows are not administrative events, and this is the part where the usual playbook from medical scheduling is actively wrong.
A missed therapy session frequently is the clinical material. Avoidance, ambivalence about treatment, a bad week, something raised in the last session the client isn't ready to return to. Automated outreach is poorly suited to that. A templated text sent to someone who is avoiding therapy is at best ineffective and at worst confirms that nobody noticed they were struggling.
The follow-up that works is short, personal, and from the clinician. It doesn't require an explanation. It leaves the door open rather than pressing. And it goes out quickly, because the longer the gap runs, the harder returning becomes. A client who misses one session and hears nothing often doesn't come back at all, and that outcome is far more expensive than the empty hour.
This is genuinely one of the places where the absence of an API costs less than you'd think. The right intervention was never automatable.
Measuring without an export
The objection to a manual process is usually that you can't measure it. That's half true, and the half that's false is worth reclaiming.
You don't need an API to count. A practice that records, for each missed session, the date, the clinician, how many sessions the client had attended before it, and whether the client returned within thirty days will learn more in a quarter than most integrated practices ever bother to. Four fields, entered by whoever handles the follow-up.
The reason that specific set is worth capturing: sessions-attended-before-the-miss is the field that reveals the pattern nobody sees otherwise. No-shows cluster early. A client who misses their second session is a very different case from one who misses their twentieth, and practices that look at this usually discover their problem is concentrated in the first month of treatment. That's fixable with a different onboarding conversation, not with better reminders.
Return-within-thirty-days is the outcome measure. Without it you're counting misses, which tells you about a symptom. With it you're measuring recovery, which tells you whether anything you changed worked.
What to do about the empty hour
Recovering the client and filling the slot are separate problems, and only the second one is administrative.
Keep a short list of clients who have said they'd take an earlier appointment, maintained outside the EHR because there's nowhere in it to put one. Ask for that preference at intake rather than at cancellation time, because the constraint on filling a Tuesday 3pm is never demand, it's knowing who can take it.
Enable client portal self-scheduling where it fits your practice, so some gaps fill without anyone being notified.
And accept a floor. A solo practice will not fill every last-minute gap, and building a process that assumes otherwise creates work that doesn't pay for itself.
Honest limits
TherapyNotes is not in our integration set. This page is written from TherapyNotes' own public site and support documentation as of August 2026.
Third-party vendors advertise TherapyNotes connectivity, some describing it as reverse-engineered access rather than a supported integration. We have not evaluated any of them, and we would ask any such vendor directly how they connect, whether TherapyNotes supports it, and what that means for your BAA before sending patient data through it.
Absence of public documentation is not proof that nothing exists. If you need programmatic access, ask TherapyNotes.
Sources
About the author
Federico Ruiz Cassarino is the CEO and founder of Puppeteer AI, the company behind Recupra. He works with clinic operators on the scheduling and outreach problems that decide how much of a practice's booked capacity turns into revenue. Connect on LinkedIn.