Skip to content
FHIRVendors

FHIR service

FHIR API Development Services

FHIR API development is about exposing your own data as a standards-based FHIR API that other systems can consume. It applies to health IT vendors pursuing certification, payers meeting CMS API mandates, and digital-health companies that want partners to integrate with them on FHIR rather than a proprietary interface.

  • Designing a FHIR R4 API surface: resources, profiles, search parameters and operations
  • Building the facade or native implementation that maps your data model to FHIR
  • SMART on FHIR authorization, developer onboarding and published CapabilityStatement
  • Conformance testing with validators and test kits such as Inferno

Who commissions FHIR API development

Where FHIR integration consumes someone else's API, API development makes you the provider. Buyers usually fall into one of four groups:

  • Health IT developers seeking ONC certification, who must meet the standardized API criterion at 45 CFR 170.315(g)(10), including US Core and SMART App Launch support.
  • Payers subject to CMS rules: CMS-9115-F introduced Patient Access and Provider Directory APIs, and CMS-0057-F adds Provider Access, Payer-to-Payer and Prior Authorization APIs, with most API requirements taking effect from January 2027.
  • Digital-health and SaaS platforms that want a partner-friendly API so health systems and other apps can integrate without bespoke interfaces.
  • Provider organizations and networks exposing aggregated or registry data to affiliates and researchers.

Typical deliverables

  • API design specification: supported resources and interactions, required and optional search parameters, operations (such as `$everything` or `$export`), paging and error conventions.
  • Profile selection or authoring: adopting US Core, CARIN Blue Button, Da Vinci PDex or other IGs, or authoring your own profiles with FHIR Shorthand when no IG fits.
  • Implementation: either a facade that translates FHIR requests into queries against your existing database, or a native FHIR store with data synchronized into it.
  • Authorization server integration: SMART discovery at `.well-known/smart-configuration`, scopes, consent screens and token introspection.
  • CapabilityStatement and developer documentation: a machine-readable statement at `/metadata` plus human documentation, sandbox and test data.
  • Automated conformance suite: profile validation in CI and test runs with tools such as Inferno.
{
  "resourceType": "CapabilityStatement",
  "status": "active",
  "kind": "instance",
  "fhirVersion": "4.0.1",
  "format": ["json"],
  "rest": [{
    "mode": "server",
    "resource": [{
      "type": "Patient",
      "supportedProfile": ["http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient"],
      "interaction": [{ "code": "read" }, { "code": "search-type" }],
      "searchParam": [
        { "name": "_id", "type": "token" },
        { "name": "identifier", "type": "token" },
        { "name": "name", "type": "string" },
        { "name": "birthdate", "type": "date" }
      ]
    }]
  }]
}
Excerpt of a CapabilityStatement declaring a US Core Patient profile with search parameters

Facade or native FHIR store?

The central architectural decision is whether FHIR is a translation layer over your existing system or a persisted copy. Our FHIR server architecture guide goes deeper; the short version:

FactorFacade over existing dataNative FHIR repository
Data freshnessReal time, reads source directlyDepends on sync latency
Search supportEach parameter must be hand-implementedComes largely from the server product
Load on source systemEvery API call hits itIsolated from source
Effort to add resourcesHigher per resourceLower once sync pipeline exists
Good fitSmall, stable API surface; strict freshness needsBroad API surface, Bulk Data, many consumers

Delivery phases

  1. Requirements and IG mapping: identify every regulatory or partner requirement and the IG version it references. Version pinning matters; a certification program and a payer rule may name different US Core versions.
  2. Data profiling: inventory source data and find gaps against must-support elements before writing code.
  3. API skeleton and auth: endpoints, SMART discovery, token validation and audit logging first, so security is not retrofitted.
  4. Resource-by-resource build: implement mapping, search and validation for each resource, with tests per profile.
  5. Conformance testing: run validators and test kits, fix failures, and record evidence for auditors or certification bodies.
  6. Developer onboarding launch: publish documentation, open the sandbox, and define how third-party apps register.

Questions to ask a FHIR API development partner

Look for teams who talk in terms of profiles, must-support semantics and conformance evidence, not only endpoints. You can compare shortlisted firms in the FHIR API development companies directory.

  • Have you taken an API through Inferno or a certification test run? What failed first time, and why?
  • How do you decide between a facade and a persisted FHIR store for our data?
  • How do you implement chained search, `_include` and `_revinclude`, and which will you not support?
  • How will you keep our API aligned when US Core or a CMS-referenced IG publishes a new version?
  • What does third-party app registration and access revocation look like in your design?
  • How do you prevent over-disclosure, for example returning resources outside the scopes in a token?

Engagement models and cost drivers

Initial API builds are often fixed-scope for a defined resource set, followed by a retainer or support and maintenance agreement for version upgrades. Cost is driven by the number of resources and profiles, the complexity of mapping from your source schema, search breadth, whether Bulk Data export is required, and how much certification or audit evidence you need. Choosing a commercial FHIR server or a managed cloud FHIR service can shift effort from custom code to licensing, which changes the shape of the budget rather than simply reducing it.

Frequently asked questions

Which FHIR version should a new API support?

For US regulatory use cases, FHIR R4 (4.0.1) is the expected version because US Core and the CMS-referenced IGs are built on it. R5 is published but has limited production adoption so far. See FHIR R4 vs R5 for the trade-offs.

Do we need to support every FHIR resource?

No. Support the resources required by the IGs and use cases you target, and declare exactly what you support in your CapabilityStatement. A smaller API that is accurate and conformant is better than a broad one that fails validation.

Is a FHIR API the same as being ONC certified?

No. Certification under the ONC Health IT Certification Program requires passing specific criteria, including (g)(10), through an accredited testing and certification process. Building a FHIR API is a prerequisite, not the certification itself.

Can we build a FHIR API without exposing patient data to third-party apps we do not control?

You can restrict access to registered partners, but some regulatory contexts limit that discretion. Certified API developers and payers under CMS rules have obligations around enabling patient-directed app access, so check the rule that applies to you before designing a closed API.

Related FHIR services

Related guides

Listed fhir api development providers

Vendors in our directory that state they offer this service. Not a ranking · affiliated company shown first and labelled · others alphabetical.

Find the Right FHIR Integration Partner for Your Healthcare Project

Tell us what you need to build or connect. We review every request and share a short list of relevant vendors from our directory — no obligation.