API & integrations

Connect your ED to NEDOCS — REST today, HL7 & FHIR on enterprise

Push census, boarding, and flow inputs over HTTPS. NEDOCS calculates the live score, broadcasts timeline events, and fires notifications — the same path whether data comes from a scheduler script, your interface engine, or an EHR feed.

  • REST endpoints for submit and read — available now
  • HL7 v2 ADT and FHIR R4 ingest — Epic, Cerner, TeleTracking-ready
  • Hospital API keys managed in Settings after sign-in
HTTPS

TLS-only transport

7

Score input fields

3

Integration protocols

JSON

Read current score

Integrations

Plugs into what your hospital already runs

NEDOCS ingests the same census and flow signals your charge desk already tracks — via REST for scripts and dashboards, or via HL7 v2 / FHIR R4 when IT connects Epic, Cerner, or bed-management systems. Enterprise onboarding provisions ingest endpoints, IP allowlists, and field mapping.

Epic / Cerner ADT HL7 v2

Admissions, transfers, discharges, and updates (A01, A02, A03, A08) from your integration engine map into NEDOCS score inputs — ED census, admits waiting, and boarding time without double entry.

Epic Open / SMART FHIR R4

Encounter, Location, and Observation resources push ED occupancy and flow metrics. A mapping layer translates FHIR payloads into the seven NEDOCS calculator fields.

TeleTracking / bed boards HL7 v2 / REST

Bed availability and downstream capacity feed inpatient bed counts and admit-hold pressure — the inputs that often drive NEDOCS into Yellow or Orange.

Custom scripts & dashboards REST

POST score inputs from any connected device — RTLS, reporting jobs, or your own middleware. GET the latest calculated band for display boards and intranet pages.

Enterprise EHR ingest

Interface engines POST ADT or FHIR payloads with your hospital API key; NEDOCS maps census, boarding, and flow signals into score inputs. Optional IP allowlists and field mapping are configured during onboarding. REST submitscore is available immediately; native HL7/FHIR endpoints are provisioned for enterprise accounts.

Request access
  • HL7 v2 ADT (A01 admit, A02 transfer, A03 discharge, A08 update)
  • FHIR R4 Encounter / Location / Observation with field mapping
  • REST submitscore and GetCurrentNEDOCS — documented below
  • Per-hospital API keys; manage keys under Account → Settings after sign-in

Authentication

Hospital API key

Each hospital receives a unique API key (GUID format) in Settings → API after registration. Pass the key as id in the URL path or form body. All API traffic is served over HTTPS only.

Base URL https://nedocs.org/api

Example key placeholder: {your-hospital-api-key} — never publish production keys in source control.

REST API

Endpoints available today

Submit integer score inputs via POST; read the latest calculated NEDOCS band and metadata via GET. Successful submits save the score, write a timeline event, and run notification rules for the new surge level.

POST

Submit a score

https://nedocs.org/api/submitscore/{id}

POST application/x-www-form-urlencoded (or equivalent) with the seven NEDOCS inputs. Values are whole numbers sent as strings. Minutes are used for time fields.

Body parameters

FieldDescription
totalpatTotal patients in the ED
totaladmitsTotal admits waiting in the ED
edbedsTotal ED beds
ipbedsTotal inpatient beds (hospital-wide)
longestadmitLongest admit time (minutes)
lastbedtimeLast bed / door-to-bed time (minutes)
ventilators1:1 or ventilator patients
idHospital API key (optional in body if present in URL)

Response

  • {"Status":"Ok","Message":"Score saved"} — score calculated and notifications sent
  • {"Status":"Error","Message":"…"} — calculation or notification failure, or subscription expired

Example (C#)

using System.Net;
using System.Collections.Specialized;

using (var client = new WebClient())
{
    var values = new NameValueCollection
    {
        ["totalpat"] = "81",
        ["totaladmits"] = "12",
        ["edbeds"] = "75",
        ["ipbeds"] = "511",
        ["longestadmit"] = "360",
        ["lastbedtime"] = "40",
        ["ventilators"] = "1"
    };

    client.UploadValues("https://nedocs.org/api/submitscore/{your-api-key}", values);
}

Example (curl)

curl -X POST "https://nedocs.org/api/submitscore/{your-api-key}" \
  -d "totalpat=81" \
  -d "totaladmits=12" \
  -d "edbeds=75" \
  -d "ipbeds=511" \
  -d "longestadmit=360" \
  -d "lastbedtime=40" \
  -d "ventilators=1"
GET

Get current NEDOCS

https://nedocs.org/api/GetCurrentNEDOCS/{id}

Returns the hospital's latest score as JSON (serialized string). Include your API key in the path.

Response fields

FieldTypeDescription
ScoreIdstringScore record ID
HospitalIdstringHospital identifier
ScoreintNumeric NEDOCS score
Levelint1–5 (Green → Black)
ScaleColorstringGreen, Yellow, Orange, Red, or Black
ScaleDescriptionstringDisplay label (e.g. Busy, Overcrowded)
ScaleDescriptionColorstringContrast color for UI
TotalPatientsTotalVentilatorsintSubmitted input values
TotalLongestAdmitHours / MinutesdoubleLongest admit as hours and total minutes
TotalLastBedTimeHours / MinutesdoubleLast bed time as hours and total minutes
LongestAdmitHours / MinutesdoubleHours and remainder minutes
LastBedTimeHours / MinutesdoubleHours and remainder minutes
EventTimeLocalDateTimeHospital-local timestamp
EventTimeUTCDateTimeUTC timestamp

On error: Score = Error and Message describes the failure.

Example response

{
  "ScoreId": "614100ae0d5d2c167c3b1374",
  "HospitalId": "5118e66e000bfa06e8bc41b9",
  "Score": 125,
  "Level": 3,
  "ScaleColor": "Orange",
  "ScaleDescription": "Overcrowded",
  "TotalPatients": 30,
  "TotalAdmits": 4,
  "EventTimeUTC": "2021-09-14T20:06:06.42Z"
}

Need HL7, FHIR, or IP-restricted ingest?

REST is ready for your team today. Enterprise plans add native HL7 v2 and FHIR R4 pipelines, mapping workshops, and BAA-backed PHI when you are ready to connect live clinical feeds.