Skip to main content

EHR System Integrations

CareLaunch stores its own clinical record in FHIR R4. Two integrations sit on top of that:

  • A read-only FHIR API your technical team can use to search CareLaunch data.
  • A custom Epic connection that CareLaunch sets up with your Epic team.

Who can use each integration​

These are not turned on or off as a bundle by plan. Epic is a custom engagement. The other rows are what the product shows today. For plan details, see Subscription Plans.

IntegrationSoloPracticeEnterprise
Stripe paymentsYesYesYes
Read-only FHIR API—Platform AdminsPlatform Admins
Calling with TwilioYesYesYes
EpicCustom engagement with CareLaunchCustom engagement with CareLaunchCustom engagement with CareLaunch
FTP file import——Platform Admins, when CareLaunch has set it up
Mappers——Yes
Amwell and single sign-on cards——Yes

API Clients is not shown for a solo practice. An organization admin connects Twilio from Integrations on every plan. See Payment Integration, Calling, and FTP.

The external FHIR API does not accept writes on any plan.

Read-only FHIR API​

The external API searches your CareLaunch FHIR data and returns the result. A request for one resource by id is the same search with that id. Creating or updating resources through this API is not available. SMART on FHIR launch is not available.

Send a bearer token:

Authorization: Bearer <access_token>

Responses are JSON. For paging, errors, and code examples, see the FHIR API reference.

Use these names in the URL:

  • Patient
  • Observation
  • Task
  • Questionnaire
  • Immunization
  • Goal
  • Communication
  • Flag
  • Medication
  • Procedure
  • Encounter
  • Condition

Any other type returns 400 Bad Request. That includes Practitioner and Appointment.

These resource types are planned but not available yet. Requests for them return 400 Bad Request today: ServiceRequest, QuestionnaireResponse, DiagnosticReport, DocumentReference, AllergyIntolerance, CarePlan, CareTeam, MedicationRequest, MedicationStatement, MedicationAdministration, MedicationDispense, SupplyRequest, and SupplyDelivery. See the FHIR API reference.

Search results are paged. If you omit _count, the API returns 20 entries. _count above 100 is lowered to 100. To get the next page, request the URL in the Bundle's next link.

Create an API client​

Platform Admins manage clients on the API Clients page. The page is hidden for solo practices.

  1. Open API Clients.
  2. Click Configure API to see the API Url set up for your organization. Calls must use that host.
  3. To add a client, email support@carelaunch.health with the organizations and resource types the client should read. A client needs at least one organization and at least one resource.

Open a client in the list to see its Client Id. On the client page you can rename it, change its Organizations and Resources, turn it on or off, and click Save. The page also has Request Preview, Usage Metrics, and Developer Resources tabs.

CareLaunch does not show the client secret on any page. Email support@carelaunch.health to get the client credentials for a client.

Request an access token with the client id and client secret from the token endpoint CareLaunch gives you, then send it as a bearer token. The client must stay turned on.

Example: search for a patient​

Replace the host with the API Url from Configure API.

curl -X GET "https://api.example.com/Patient?family=Smith" \
-H "Authorization: Bearer <access_token>"

A search for one patient uses the same host and a patient id:

curl -X GET "https://api.example.com/Patient/12345" \
-H "Authorization: Bearer <access_token>"

Epic​

Epic is a custom integration. CareLaunch provisions it for your organization with your Epic team. There is no Epic card for you to fill in under Settings, and there is no sync-frequency or data-scope setting in CareLaunch.

CareLaunch connects with backend-services OAuth: a signed JWT against your Epic Interconnect. Some health systems use a variant of that same connection. CareLaunch sets that up as well.

Patients​

Staff can match a CareLaunch patient to an existing Epic patient. If Epic has no match, CareLaunch creates the patient in Epic and stores the Epic id back on the CareLaunch patient. Every attempt is logged.

Sync is available when the Epic connection includes patient registration:

  • On the patient list, select one or more patients and click Sync.
  • On a patient page, open Actions and choose Sync on the Epic row.

Scheduling​

CareLaunch can look up open Epic schedule days and slots for a provider, department, and visit type. Those Epic identifiers are stored with the provider as part of the setup CareLaunch does with your Epic team.

Reading from Epic​

Platform Admins can search and read Epic Patient, Encounter, ServiceRequest, and DocumentReference records, and look up practitioners.

On a connected Epic card, open the ⋮ menu and choose Run tests to exercise those reads. View logs on the same menu shows the log of each attempt, including patient sync.

FTP import​

Batch file import is a separate setup. Files are CSV, and CareLaunch routes them with rules your admin defines. There is no outgoing export folder and no FHIR bundle drop. See FTP Administration.

Security​

Connections to CareLaunch are encrypted with TLS 1.2 or later. FTP uploads use SFTP.

Getting help​

For an Epic connection, an API client, or a file import that the pages above do not cover, email support@carelaunch.health.