Supergood | AdvancedMD API

Supergood | AdvancedMD API

Programmatically access patient, schedule, clinical, and billing workflows in AdvancedMD with a stable REST API. Supergood builds and operates production-grade, unofficial AdvancedMD integrations so your team can automate EHR/PM data flows without heavy custom engineering.

AdvancedMD is cloud-based software for ambulatory medical practices that combines electronic health records (EHR), practice management (PM), scheduling, billing, telemedicine, and patient engagement. With an unofficial API, you could sync patients, manage provider schedules, create encounters and charges, submit claims, reconcile remittances, and drive analytics from a single endpoint layer.

If you’re a practice, health tech vendor, or revenue cycle team, integrating your tech stack with AdvancedMD unlocks concrete data flows and features:

  • Pull: Patient demographics and insurance, provider rosters, appointment schedules, encounter headers, problem/medication lists, charge slips, claim statuses, payment and ERA summaries, eligibility results
  • Push: New/updated patients from your CRM/intake, booked/cancelled appointments, encounter/charge lines with CPT/ICD-10, scanned documents, claim submissions to the configured clearinghouse channel
  • Build: Online scheduling synced to provider templates, automated charge capture from clinical documentation, real-time claim status dashboards, eligibility-aware intake with payer verification, telehealth links and reminders

What is AdvancedMD?

AdvancedMD provides an all-in-one EHR and practice management platform used by independent clinics, multi-specialty groups, and outsourced billing services. Core capabilities span clinical charting, e-prescribing, labs, scheduling, eligibility, charge capture, claims/ERAs, payments, and patient portal/telemedicine.

Core product areas include:

  • Scheduling and resource management (providers, rooms, locations)
  • Patient demographics, insurance, and intake documents
  • Clinical charting (problems, meds, allergies, vitals, immunizations, notes)
  • Orders and results (labs, imaging), eRx via network connectivity
  • Charge capture and coding (CPT/HCPCS, ICD-10, modifiers, units)
  • Claims submission and remittance (837/835), eligibility (270/271), claim status (276/277)
  • Telemedicine, reminders, patient portal and payments

Common data entities:

  • Patients and guarantors
  • Providers, locations, and appointment types
  • Appointments and check-ins
  • Encounters/visits, diagnoses, procedures
  • Insurance coverages and payers
  • Charges, claims, payments, and ERAs
  • Documents (scanned uploads, CCD/clinical summaries)

The AdvancedMD Integration Challenge

Organizations rely on AdvancedMD daily, but turning portal-based EHR/PM workflows into automated pipelines is hard:

  • Partner-gated APIs and coverage: Access can be gated behind partner programs, and some endpoints are read-only or limited to PM vs. EHR modules
  • Strong enterprise security: SSO/MFA and IP controls complicate headless automation
  • Portal-first delivery: Key workflows (schedule edits, charge slips, ERA exports) live in web apps or reports rather than unified public APIs
  • Batch and EDI interfaces: Eligibility, claims, and remittances may rely on clearinghouse batching and timing windows
  • Eventing gaps: Limited webhooks lead to polling for schedule, claim, or ERA updates
  • Clinical nuances: Custom templates and note types, superbills, and location/provider-specific fee schedules require careful normalization

Users commonly request richer write access to clinical notes, better webhook coverage for scheduling and claims, and faster onboarding to official APIs. Supergood addresses these gaps with resilient adapters that respect entitlements and compliance.

How Supergood Creates AdvancedMD 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, scheduling, encounter/charge, and claim objects across locations and providers
  • Aligns with customer entitlements and licensing constraints to ensure compliant access
  • Bridges batch exports and EDI/SFTP flows where applicable with signed URL retrieval and delivery

Use Cases

EHR/PM Synchronization

  • Push patient demographics and insurance from intake into AdvancedMD
  • Keep provider/location schedules in sync with your front-end booking or CRM
  • Maintain a single source of truth for eligibility and payer data

Eligibility-Aware Intake and Scheduling

  • Verify coverage before scheduling or check-in
  • Surface plan details and copays to staff and patients
  • Prevent downstream claim denials with real-time checks

Charge Capture and Coding Automation

  • Convert encounters and documentation into CPT/ICD-10 lines automatically
  • Apply fee schedules, modifiers, and place-of-service consistently
  • Reduce rebills with validation rules pre-submission

Claims Generation and Reconciliation

  • Submit professional claims (837P) from encounters/charges
  • Track clearinghouse acknowledgements and payer statuses
  • Reconcile ERAs with posted payments and write-offs

Telemedicine and Patient Engagement

  • Generate telehealth visit links and reminders tied to appointments
  • Sync portal messages and documents to patient charts
  • Power BI/analytics with cross-module data

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_3ac21d",
    "name": "PM Admin",
    "entitlements": ["patients", "scheduling", "charges", "claims"]
  }
}

Patients

GET /patients: Retrieve patient demographics and insurance. Use filters to drive intake syncs and eligibility checks.

Query parameters

  • mrn: string
  • lastName: string
  • dob: ISO 8601 date
  • updatedSince: ISO 8601 timestamp
  • locationId: string
  • page: integer
  • pageSize: integer

Example response

{
  "items": [
    {
      "patientId": "pat_91f0b2",
      "mrn": "A1234567",
      "externalId": "crm-9812",
      "firstName": "Ava",
      "lastName": "Nguyen",
      "dob": "1987-04-14",
      "sex": "F",
      "phone": "+1-801-555-0199",
      "email": "[email protected]",
      "address": {
        "line1": "1200 Main St",
        "city": "Salt Lake City",
        "region": "UT",
        "postalCode": "84101"
      },
      "primaryProviderId": "prv_44d8fe",
      "insurance": [
        {
          "coverageId": "cov_b2a33e",
          "payerName": "Aetna",
          "memberId": "123456789",
          "groupId": "GRP-9876",
          "planCode": "PPO",
          "priority": 1,
          "effectiveStart": "2025-01-01",
          "effectiveEnd": null
        }
      ],
      "portalStatus": "invited",
      "lastSeenAt": "2026-01-12T16:42:00Z",
      "updatedAt": "2026-01-19T10:15:22Z"
    }
  ],
  "page": 1,
  "pageSize": 50,
  "total": 1
}

Appointments

POST /appointments: Create or update an appointment with provider, location, and visit type details. Supports telemedicine attributes and cancellation.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/appointments \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "patientId": "pat_91f0b2",
    "providerId": "prv_44d8fe",
    "locationId": "loc_slc01",
    "appointmentTypeId": "appt_new_pt",
    "startTime": "2026-02-01T15:30:00Z",
    "endTime": "2026-02-01T15:50:00Z",
    "timezone": "America/Denver",
    "visitType": "telemedicine",
    "reason": "New patient consult",
    "status": "scheduled",
    "reminders": {"sms": true, "email": true},
    "referenceId": "web-intake-44721"
  }'

Example response

{
  "appointmentId": "apt_6da2a4",
  "status": "scheduled",
  "checkInCode": "Q7X9",
  "telehealth": {
    "meetingUrl": "https://video.practice.example/join/apt_6da2a4",
    "providerJoinUrl": "https://video.practice.example/host/apt_6da2a4"
  },
  "referenceId": "web-intake-44721"
}

Encounters and Charges

POST /encounters: Create an encounter with diagnoses and procedure/charge lines. Supergood validates coding structure and applies fee schedule lookups when available.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/encounters \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "patientId": "pat_91f0b2",
    "appointmentId": "apt_6da2a4",
    "encounterDate": "2026-02-01",
    "placeOfService": "11",
    "renderingProviderId": "prv_44d8fe",
    "supervisingProviderId": null,
    "diagnoses": [
      {"code": "I10", "description": "Essential (primary) hypertension"},
      {"code": "E66.9", "description": "Obesity, unspecified"}
    ],
    "procedures": [
      {"code": "99203", "modifiers": [], "units": 1, "chargeAmount": 165.00},
      {"code": "3074F", "modifiers": [], "units": 1, "chargeAmount": 0.00}
    ],
    "copayCollected": 25.00,
    "notes": "New patient visit via telemedicine; counseling provided.",
    "attachments": [],
    "referenceId": "chart-enc-2026-02-01-01"
  }'

Example response

{
  "encounterId": "enc_2b91cf",
  "chargeId": "chg_8d11a0",
  "status": "ready_for_claim",
  "createdAt": "2026-02-01T16:02:10Z",
  "referenceId": "chart-enc-2026-02-01-01"
}

Claims

GET /claims: Retrieve claim and payer status for billing and reconciliation. Use this to power dashboards and automate follow-up.

Query parameters

  • patientId: string
  • payerId: string
  • status: string (queued, submitted, accepted, rejected, denied, paid, partial)
  • createdSince: ISO 8601 timestamp
  • claimNumber: string

Example response

{
  "items": [
    {
      "claimId": "clm_5f0a9e",
      "claimNumber": "AM-2026-000187",
      "encounterId": "enc_2b91cf",
      "payerId": "payer_aetna",
      "submissionChannel": "clearinghouse",
      "status": "accepted",
      "amountBilled": 165.00,
      "amountPaid": 110.00,
      "adjudicationDate": "2026-02-10",
      "denialCodes": [],
      "clearinghouseTrace": "CH-772839",
      "updatedAt": "2026-02-10T13:35:41Z"
    }
  ],
  "page": 1,
  "pageSize": 50,
  "total": 1
}

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 schedules, encounters, and claim artifacts
  • Security: Encrypted transport, scoped tokens, and audit logging; respects AdvancedMD entitlements and compliance requirements
  • Webhooks: Optional asynchronous delivery for schedule changes, claim updates, and ERA retrieval

Performance Characteristics

  • Latency: Sub-second responses for list/detail queries under normal load
  • Throughput: Designed for high-volume scheduling 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 AdvancedMD product mix, licensing, and authentication model.

  1. Supergood Builds and Validates Your API

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

  1. Deploy with Monitoring

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

Schedule Integration Call →


Frequently Asked Questions

Q: Which AdvancedMD products can this integration cover?

Supergood supports workflows across commonly used AdvancedMD EHR and Practice Management modules, subject to your licensing and entitlements. We scope coverage (e.g., patients, scheduling, encounters/charges, claims/ERAs, eligibility) during integration assessment.

Q: How are MFA, SSO, and clearinghouse/batch interfaces handled?

We support username/password + MFA (SMS, email, TOTP) and can operate behind SSO/OAuth when enabled. For batch flows, we respect timing windows, handle eligibility and claim submissions, and retrieve ERAs or delivery confirmations programmatically.

Q: Can I generate claims directly from encounters and charges?

Yes. You can assemble and submit professional claims from encounter/charge data with payer-specific formatting. We route submissions via your configured channel and return statuses and artifacts for reconciliation.



Ready to automate your AdvancedMD workflows?

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

Get Started →

Read more