iNTERFACEWARE Blog

Integration Insights

Perspectives on healthcare data exchange and system integration

EHR and EMR System Adapters in Iguana

Some integrations need more than message routing or data transformation. They need a complete connection to a specific EHR or EMR platform. These connections often involve detailed authentication steps, batching rules, request patterns, retries, error handling, and strict security requirements. Building all of this by hand can take a lot of time.

To make this easier, Iguana includes several prebuilt EHR and EMR adapters. These adapters follow a consistent design that handles the workflow needed to communicate with real clinical systems. You can use them as they are, customize them, or use them as a template when building a new adapter.

This post explains the EHR and EMR adapters included with Iguana, what makes them different from standard Components, and how you can create your own adapter using the Shell Adapter.

What an EHR or EMR Adapter Is

An EHR or EMR adapter is a specialized Component built to integrate with a specific healthcare application. It contains all the pieces needed to communicate with that system in a reliable and repeatable way.

A typical adapter includes:

  • Authentication and credential handling
  • A consistent request and response structure
  • Secure storage of sensitive fields
  • Support for batching or paginated endpoints
  • Graceful error handling and retry logic
  • Helper functions for common API operations
  • Input and output patterns that fit into Iguana workflows

These features allow the adapter to stay stable even when an external system rate limits, times out, or returns inconsistent responses.

Built In EHR and EMR Adapters

Iguana includes several prebuilt adapters for popular healthcare platforms. These adapters follow a shared structure so they are easy to understand and configure.

Epic EHR Adapter (FHIR)

The Epic adapter handles the common FHIR based workflows used in Epic environments. It includes:

  • OAuth authentication for Epic
  • Standardized read, write, and search patterns for FHIR resources
  • Structure for logging responses
  • Fields for base URLs, resource paths, and client credentials

It is well suited for projects that involve exchanging FHIR data with Epic systems.

Athenahealth EHR Adapter

The Athenahealth adapter supports Athena's REST based API workflows. It manages:

  • OAuth authentication
  • Required request headers and parameters
  • Standard request building
  • Error handling based on Athenahealth's response rules

This adapter works across Athena's scheduling, clinical, and administrative APIs.

eClinicalWorks EMR Adapter (eCW)

The eCW adapter is designed for eClinicalWorks systems. It covers:

  • Authentication specific to eCW
  • Request and response structures used by the eCW API
  • Error and retry logic
  • Secure storage of API credentials

This avoids the need to reverse engineer the eCW API on your own.

Additional Adapters

More adapters added to iNTERFACEWARE's official Collections over time. The important point is that all adapters in Iguana use the same clear pattern. Once you learn one adapter, the others feel familiar.

What Makes These Adapters Special

EHR and EMR adapters differ from standard Components because they handle the full lifecycle of communication with a clinical system. This includes:

Authentication

External systems usually require OAuth, API keys, or client credentials. The adapter manages these steps and stores the values safely.

Batching and pagination

Some APIs return large result sets. Adapters include logic for looping through these segments and processing each one.

Canonical request pattern

Adapters use a consistent structure for building requests. This reduces confusion and keeps the code organized.

Error handling and retries

Real systems return timeouts, throttling messages, and other errors. Adapters include built in logic to handle these cases cleanly.

Security fields

Credentials and sensitive values appear on the card but are stored securely in Iguana.

Clean boundaries

The adapter communicates with the EHR or EMR system. The rest of the interface can stay simple.

This pattern leads to reliable and maintainable clinical integrations.

Creating Your Own Adapter With the Shell Adapter

If you need an adapter for a system that is not already provided, you can create one using the Shell Adapter. The Shell Adapter is a starter Component that includes the internal structure used by all official Iguana adapters.

The Shell Adapter provides:

  • A prepared dashboard card
  • Authentication placeholders
  • A complete Translator project
  • A standardized request and response workflow
  • Error handling templates
  • Space to implement your own API calls

To build an adapter, you usually:

  1. Review the external system's API documentation
  2. Add any custom fields you need through config.json
  3. Implement authentication using the provided structure
  4. Create helper functions for each API endpoint
  5. Follow the request pattern used by other adapters
  6. Test each call and refine the retry and error logic
  7. Commit your changes and deploy the adapter in your environment

Using the Shell Adapter saves significant time because the framework is already in place.

Why the Adapter Pattern Scales

Using an adapter based approach helps teams build stronger, more predictable integrations. When every EHR or EMR adapter follows the same design, it becomes easier to:

  • Maintain the code
  • Onboard new developers
  • Reuse logic across projects
  • Keep credentials secure
  • Handle system outages gracefully
  • Build consistent enterprise grade interfaces

Adapters allow Iguana projects to grow without becoming complex or fragile. As new systems and APIs appear, you can extend your library of adapters using the same reliable structure.

The all-in-one integration platform by iNTERFACEWARE.
G2 - Healthcare Integration Engines
Rated 4.5/5
4.5/5 on G2
Capterra - Integration Software
Rated 4.8/5
4.8/5 on Capterra
KLAS - Integration Engines
KLAS Rated*
93.6/100
*Average performance score from 2017-2022 in the 'Best of KLAS' report
iNTERFACEWARE Inc.
© iNTERFACEWARE Inc.
Privacy | Terms of Service | MSA
General Inquiries
iNTERFACEWARE Inc.
2 Bloor Street East, Suite 3500
Toronto, Ontario   M4W 1A8   Canada
contact@interfaceware.com
1-888-824-6785
Follow Us: