Supergood | TherapyNotes API

TherapyNotes is an electronic health record (EHR) and practice management platform built for behavioral health providers—psychotherapists, counselors, psychologists, and psychiatrists. It manages patient records, scheduling, clinical documentation, billing and insurance claims, patient portal, telehealth, and payments. With an unofficial API, you could programmatically sync patient rosters, schedule and update appointments, retrieve note metadata and signed documents, submit and track insurance claims, and reconcile payments—without manual portal work.

If you’re another tech company looking to integrate—think telehealth, care coordination, billing/RCM, analytics, or CRM—you could pull structured data about patients, clinicians, appointments, diagnoses, and claims; push new patients and scheduled sessions; attach documents and intake forms; and build features like automated reminders, authorization-aware scheduling, claims submission pipelines, and outcomes dashboards that sit on top of TherapyNotes.

Programmatically access patient rosters, appointment schedules, clinical documentation artifacts, and insurance reimbursement workflows in TherapyNotes with a stable REST API. Supergood builds and operates production-grade, unofficial TherapyNotes integrations so your team can automate critical EHR and billing pipelines without heavy custom engineering.

Many TherapyNotes users have asked for APIs, Zapier connectors, two‑way calendar sync, richer exports, and accounting integrations (e.g., QuickBooks). We provide those capabilities through a resilient API layer, enabling automation across scheduling, documentation, billing, and reporting—all while respecting your licensing and compliance constraints.

If you’re a behavioral health practice, billing partner, or healthtech vendor, integrating your stack with TherapyNotes unlocks concrete data flows and features:

  • Pull: Patient/client profiles, clinician rosters, schedules and appointment statuses, note metadata and signed PDFs, diagnoses, insurance policies, claim statuses, ERA summaries, payment records
  • Push: New/updated patients and clinicians from your CRM/EHR, scheduled appointments (office or telehealth), intake documents, portal invitations, patient payments, claim submissions
  • Build: Availability-aware scheduling, automated reminders and telehealth links, documentation completeness tracking, 837P/CMS-1500 claim assembly, ERA-driven reconciliation dashboards

What is TherapyNotes?

TherapyNotes provides EHR and practice management tools for behavioral health. Core capabilities cover the full lifecycle of care and revenue operations, including scheduling, documentation, billing, and patient engagement.

Core product areas include:

  • Scheduling and calendar management with appointment reminders
  • Patient/client and clinician rosters with role-based access
  • Clinical documentation (intake, progress notes, treatment plans, discharge summaries)
  • Diagnoses and service coding (e.g., CPT 90834/90837)
  • Patient portal (forms, messaging, document sharing) and telehealth
  • Billing and insurance (CMS-1500/837P, ERA posting, patient payments)
  • E-prescribing for prescribers via integrated networks (e.g., DrFirst)

Common data entities:

  • Patients/Clients
  • Clinicians/Providers (therapists, prescribers, support staff)
  • Appointments (office, telehealth) and attendance
  • Notes (intake, progress, treatment plans) and signatures/locking
  • Diagnoses and service codes
  • Insurance Policies and subscriber details
  • Claims (CMS-1500/837P) and remittances (ERAs)
  • Payments and invoices
  • Documents and intake forms
  • Locations and telehealth sessions

The TherapyNotes Integration Challenge

Teams rely on TherapyNotes daily, but turning portal-first workflows into automated pipelines is hard:

  • No public API: Key scheduling, documentation, and billing operations live in web apps; exports are limited and not event-driven
  • Strong security and PHI constraints: MFA, role-based permissions, locked notes, and audit trails complicate headless automation
  • Calendar and messaging limitations: ICS feeds are often one-way; users request Zapier and two-way sync; patient communications need controlled templates
  • Billing complexity: CMS-1500/837P submissions, payer-specific rules, and ERA posting require accurate mapping and timing windows
  • E-prescribing nuances: Prescribing features are restricted to authorized clinicians and external networks; access must respect entitlements

How Supergood Creates TherapyNotes APIs

Supergood reverse-engineers authenticated browser flows, batch interfaces, and network interactions to deliver a resilient API endpoint layer.

  • Handles username/password, SSO/OAuth, and MFA (SMS, email, TOTP) securely
  • Maintains session continuity with automated refresh and change detection
  • Normalizes patients, appointments, notes, and claim objects so you can integrate once across teams and locations
  • Aligns with customer entitlements and licensing constraints to ensure compliant access
  • Bridges batch exports and payer/clearinghouse submissions with signed URL retrieval and delivery; pulls ERA artifacts for reconciliation

Use Cases

Roster and Schedule Synchronization

  • Push patient and clinician rosters from your CRM or upstream EHR into TherapyNotes
  • Create appointments automatically from your scheduling system with CPT/service codes and location (office or telehealth)
  • Maintain a single source of truth for demographics, policies, and availability

Documentation Completeness and Quality

  • Pull note metadata (type, status, signatures) to track documentation completeness
  • Retrieve signed PDFs for audit, outcomes measurement, or payer requests
  • Surface diagnosis and service coding consistency to clinical leadership

Claims Generation and Reimbursement Automation

  • Bundle completed/signed encounters into CMS-1500 or 837P claims with payer-specific formatting
  • Submit via configured channels (payer portal, clearinghouse) and monitor statuses
  • Pull ERAs and reconcile payments against scheduled appointments and ledger entries

Patient Portal, Telehealth, and Engagement

  • Send portal invitations and pre-visit intake packets programmatically
  • Generate telehealth links tied to scheduled appointments and clinician assignments
  • Automate reminders and attendance follow-up to reduce no-shows

Accounting and Analytics

  • Sync payments and ledger entries to accounting systems (e.g., QuickBooks)
  • Drive operational dashboards for scheduling utilization, documentation latency, and reimbursement KPIs

Available Endpoints

Authentication

POST /sessions: Establish a session using credentials. Supergood manages MFA (SMS, email, TOTP) and SSO/OAuth when enabled. Returns a short-lived auth token maintained by the platform.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/sessions \
  --header 'Authorization: Basic <Base64 encoded token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "username": "[email protected]",
    "password": "<password>",
    "mfa": {
      "type": "totp",
      "code": "123456"
    }
  }'

Example response

{
  "authToken": "eyJhbGciOi...",
  "expiresIn": 3600,
  "user": {
    "id": "u_8c41d2",
    "name": "Office Admin",
    "entitlements": ["patients", "appointments", "notes", "billing"]
  }
}

Patients

GET /patients: Retrieve patient/client profiles with demographics, clinician assignments, and primary insurance. Use to keep rosters in sync and hydrate scheduling and billing systems.

Query parameters

  • clinicianId: string
  • active: boolean
  • updatedAfter: ISO 8601 timestamp
  • search: string (name, email, member ID)

Example response

{
  "items": [
    {
      "patientId": "pt_6a92bd",
      "firstName": "Avery",
      "lastName": "Nguyen",
      "preferredName": "Avery",
      "dateOfBirth": "1990-04-16",
      "gender": "female",
      "phone": "+1-215-555-0198",
      "email": "[email protected]",
      "status": "active",
      "primaryClinicianId": "cln_2fa4d1",
      "primaryInsurance": {
        "payerName": "Blue Cross Blue Shield",
        "payerId": "BCBS-PA",
        "memberId": "Z12345678",
        "groupNumber": "G987654",
        "relationship": "self"
      },
      "lastUpdated": "2026-01-20T13:54:11Z"
    }
  ],
  "page": 1,
  "pageSize": 50,
  "total": 1
}

Appointments

POST /appointments: Create or update an appointment with patient, clinician, service code, and location (office or telehealth). Generates telehealth session info when applicable.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/appointments \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "patientId": "pt_6a92bd",
    "clinicianId": "cln_2fa4d1",
    "startTime": "2026-01-22T15:00:00Z",
    "endTime": "2026-01-22T15:50:00Z",
    "serviceCode": "90834",
    "locationType": "telehealth",
    "notes": "Weekly session",
    "reminders": {"email": true, "sms": true},
    "referenceId": "crm-appt-98137"
  }'

Example response

{
  "appointmentId": "apt_3b11f9",
  "status": "scheduled",
  "locationType": "telehealth",
  "telehealth": {
    "joinUrl": "https://telehealth.therapynotes.example/session/abc123",
    "startTime": "2026-01-22T15:00:00Z"
  },
  "createdAt": "2026-01-20T14:22:05Z",
  "referenceId": "crm-appt-98137"
}

Clinical Notes

GET /clinical-notes: Retrieve clinical note metadata and signed document links for auditing and completeness tracking. Content access respects note locking and user permissions.

Query parameters

  • patientId: string
  • appointmentId: string
  • type: string (Intake, ProgressNote, TreatmentPlan)
  • signed: boolean
  • updatedAfter: ISO 8601 timestamp

Example response

{
  "items": [
    {
      "noteId": "note_71c2af",
      "type": "ProgressNote",
      "status": "signed",
      "locked": true,
      "clinicianId": "cln_2fa4d1",
      "patientId": "pt_6a92bd",
      "appointmentId": "apt_3b11f9",
      "serviceCode": "90834",
      "diagnosisCodes": ["F41.1"],
      "createdAt": "2026-01-22T15:55:12Z",
      "signedAt": "2026-01-22T16:02:31Z",
      "downloadUrl": "https://download.therapynotes.example/signed/xyz789..."
    }
  ],
  "page": 1,
  "pageSize": 50,
  "total": 1
}

Claims

POST /claims: Assemble a CMS-1500 or 837P claim from completed/signed appointments. Supergood normalizes service lines and can route the generated file to your configured submission channel.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/claims \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "format": "837P",
    "payerId": "BCBS-PA",
    "billingProvider": {
      "npi": "1234567890",
      "taxonomy": "Behavioral Health",
      "name": "Riverside Counseling Group",
      "billingAddress": {
        "line1": "200 Main St",
        "city": "Philadelphia",
        "region": "PA",
        "postalCode": "19103"
      }
    },
    "serviceLines": [
      {"appointmentId": "apt_3b11f9", "units": 1, "serviceCode": "90834", "diagnosisPointers": ["F41.1"]}
    ],
    "submissionChannel": "clearinghouse",
    "referenceId": "rcm-batch-jan22"
  }'

Example response

{
  "claimId": "clm_81d4a3",
  "status": "queued",
  "edi": {"format": "837P", "size": 48211},
  "submissionChannel": "clearinghouse",
  "createdAt": "2026-01-22T16:10:07Z",
  "reviewUrl": "https://download.therapynotes.example/signed/abc123...",
  "referenceId": "rcm-batch-jan22"
}

Get full API Specs →


Technical Specifications

  • Authentication: Username/password with MFA (SMS, email, TOTP) and SSO/OAuth where enabled; supports service accounts or customer-managed credentials
  • Response format: JSON with consistent resource schemas and pagination
  • Rate limits: Tuned for enterprise throughput while honoring licensing and usage controls
  • Session management: Automatic reauth and cookie/session rotation with health checks
  • Data freshness: Near real-time retrieval of patients, appointments, notes, and claim artifacts
  • Security: Encrypted transport, scoped tokens, and audit logging; respects TherapyNotes entitlements and compliance requirements
  • Webhooks: Optional asynchronous delivery for appointment changes, documentation events, claim generation, and remittance updates

Performance Characteristics

  • Latency: Sub-second responses for list/detail queries under normal load
  • Throughput: Designed for high-volume scheduling, documentation, and billing pipelines
  • Reliability: Retry logic, backoff, and idempotency keys minimize duplicate actions
  • Adaptation: Continuous monitoring for UI/API changes with rapid adapter updates

Getting Started

  1. Schedule Integration Assessment

Book a 30-minute session to confirm your TherapyNotes product mix, licensing, and authentication model.

  1. Supergood Builds and Validates Your API

We deliver a hardened TherapyNotes adapter tailored to your workflows and entitlements.

  1. Deploy with Monitoring

Go live with continuous monitoring and automatic adjustments as TherapyNotes evolves.

Schedule Integration Call →


Frequently Asked Questions

Q: Which TherapyNotes features can this integration cover?

Supergood supports workflows across commonly used TherapyNotes modules: patients/clinicians, scheduling, documentation metadata and artifacts, claims/ERA, and payments—subject to your licensing and entitlements. We scope coverage during integration assessment.

Q: How are MFA, SSO, and document access handled for automation?

We support username/password + MFA (SMS, email, TOTP) and can operate behind SSO/OAuth when enabled. Document retrieval respects permissions and note-locking; we maintain audit trails for compliant access to signed notes and billing artifacts.

Q: Can I generate claims directly from completed appointments?

Yes. You can assemble CMS-1500 or 837P files from signed encounters with payer-specific formatting. We route submissions via your configured channel (payer portal or clearinghouse) and return statuses and artifacts for reconciliation.



Ready to automate your TherapyNotes workflows?

Supergood can have your TherapyNotes integration live in days with no ongoing engineering maintenance.

Get Started →

Read more