⌘K

APEX FHIR Data Lake

GPID-centered longitudinal clinical store. Product lines write via outbox → HAPI; analytics and partners read back with tenant-scoped OAuth.

Live API Status — FHIR Data Lake

Probing production endpoints…

Rate Limits & SLA

Rate limit

5,000 req/min

Burst

200 req/sec

Uptime SLA

99.95%

Support

24×7 P1 · 1h response

P95 latency

< 600ms search

Retention

Indefinite lake

Four-layer architecture

Raw

Staging bundles from Nexus, CMS, Beacon, Prime outboxes

Curated

GPID-stamped, tenant-tagged canonical FHIR

Analytics

BigQuery views for Horizon, Pulse, cohort engines

Monitoring

Quality scores, CDC lag, freshness SLAs

Data flow

Nexus / CMS / Beacon / Prime → GPID resolve → outbox → HAPI lake → read-back for Horizon, Pulse, Catalyst cohorts.

Tenant contract

Every write carries X-Apex-Tenant-Id, GPID identifier, and tenant meta tags. Production enforces HAPI_FHIR_AUTH_MODE=oauth_only.

OpenAPI contract

Covers HAPI FHIR R4 and app.lake.parkerapex.com/api admin endpoints.

apex-fhir-lake-v1.openapi.yaml →

Integration toolkit

Official SDKs

Apex Data Lake certification track

12 required items · platform + product-specific checks

Full checklist →
  • First authenticated API call in sandbox
  • OAuth or API key with least-privilege scopes
  • FHIR R4 read against sandbox lake
  • GPID boundary headers on write paths
  • Webhook HMAC-SHA256 verification implemented
  • Webhook idempotency by delivery ID

+9 more on the certification page

Complete all required items before production go-live

Webhook events for Apex Data Lake

Subscribe at /webhooks — verify HMAC-SHA256 signatures

Event catalog →
pipeline.sync.completedPipeline

FHIR or batch sync job finished successfully.

{
  "event": "pipeline.sync.completed",
  "job_id": "job_abc123",
  "partner_gpid": "CMS-00000001",
  "resource_types": [
    "Patient",
    "Observation"
  ],
  "records_processed": 1240,
  "completed_at": "2026-06-13T20:00:00Z"
}
pipeline.sync.failedPipeline

Sync job failed after retries.

{
  "event": "pipeline.sync.failed",
  "job_id": "job_abc123",
  "error_code": "VALIDATION_ERROR",
  "message": "Bundle entry 14 failed FHIR validation",
  "failed_at": "2026-06-13T20:01:00Z"
}
fhir.subscription.notificationFHIR

R4 Subscription resource triggered — payload is FHIR Bundle.

{
  "resourceType": "Bundle",
  "type": "history",
  "entry": [
    {
      "resource": {
        "resourceType": "Observation",
        "id": "obs-1"
      }
    }
  ]
}