Skip to content

FHIR Servers ​

Configure upstream FHIR servers that the proxy routes requests to. Each registered server gets a proxy path at /proxy-smart-backend/{server_name}/{fhir_version}/.

API Endpoints ​

MethodPathDescription
GET/fhir-servers/List all registered FHIR servers
POST/admin/fhir-servers/Add a new FHIR server
GET/fhir-servers/:server_idGet server details + proxy URLs
PUT/admin/fhir-servers/:server_idUpdate server name/URL
DELETE/admin/fhir-servers/:server_idRemove a FHIR server
POST/admin/fhir-servers/:server_id/refreshRe-fetch server metadata
PATCH/admin/fhir-servers/:server_id/strict-capabilitiesToggle strict CapabilityStatement enforcement
PATCH/admin/fhir-servers/:server_id/mcpToggle per-server MCP endpoint

mTLS Configuration ​

For servers that require mutual TLS (client certificates):

MethodPathDescription
GET/admin/fhir-servers/:server_id/mtlsGet current mTLS config
PUT/admin/fhir-servers/:server_id/mtlsEnable/disable mTLS
POST/admin/fhir-servers/:server_id/mtls/certificatesUpload client certificate

Adding a Server ​

Minimum required fields:

  • Name -- unique identifier used in proxy URLs (e.g., hapi-fhir)
  • Base URL -- upstream FHIR server endpoint (e.g., http://hapi-fhir:8080/fhir)
  • FHIR Version -- R4, R5, etc.

On creation, the backend fetches the server's CapabilityStatement to discover supported resources and operations.

Proxy URL Structure ​

Once registered, the server is accessible through the proxy at:

/{backend-name}/{server_name}/{fhir_version}/{resource}

Example: /proxy-smart-backend/hapi-fhir/R4/Patient/123

All requests through the proxy pass through the authorization pipeline (token validation, scope enforcement, consent checks).

Strict Capabilities ​

When enabled, the proxy rejects requests for resources or interactions not declared in the server's CapabilityStatement. Toggle via PATCH /admin/fhir-servers/:server_id/strict-capabilities.

DICOM Servers ​

PACS/DICOMweb servers are managed separately:

MethodPathDescription
GET/admin/dicom-servers/List DICOM servers
POST/admin/dicom-servers/Add DICOM server
GET/admin/dicom-servers/:server_idGet details
PUT/admin/dicom-servers/:server_idUpdate
DELETE/admin/dicom-servers/:server_idRemove
GET/admin/dicom-servers/:server_id/statusProbe reachability
GET/admin/dicom-servers/viewer-appGet configured viewer app
PUT/admin/dicom-servers/viewer-appSet viewer app
  • FHIR Proxy -- the request pipeline that processes proxied requests
  • SMART Apps -- apps that access FHIR servers through the proxy
  • Scope Management -- scopes enforced at the proxy layer
  • Monitoring -- server availability, response times, and the audit trail

Proxy Smart — Healthcare Interoperability Platform