Skip to main content
Clinical summarization transforms raw EHR data into actionable discharge summaries, progress notes and referral letters that highlight status changes, decision points and follow-up needs. It is particularly useful for efficient handoffs, longitudinal care planning and ensuring clear communication across multidisciplinary teams.

Getting Started

For this guide, you will need:
  1. A Clinia workspace
  2. A Clinia service account (API Key)
  3. Ability to execute HTTP requests

Creating Clinical Documents

Generating documents at Clinia is easy. Our philosophy can be boiled down to:
Configurability without the hassle of prompt engineering
The Summarization API helps you bring together various contextual informations and distill them down to precise, complete, and relevant clinical documents for your various workflows. Each request has a fairly simple body.

Summarization Request Payload

FieldTypeDescription
taskstringRecipe key (e.g. "soap-note")
paramsobjectMap of recipe‐specific inputs. See examples below.

Generative Recipes

The Summarization API uses what we call generative recipes to operate. A generative recipe is a simple combination of the following:
  • Prompt template
  • Generative model
  • Format instructions
The Recipe API is currently in-preview. To get custom Generative Recipes, contact Clinia’s Support Team.
Clinia currently supports the following clinical documents as part of its Summarization API
  • Discharge Summary
  • Longitudinal Summary
  • SOAP Note
  • Pass-over Summary
Recipe Key: clinia-discharge-summaryParameters:PatientContexts , EventContexts , LanguagePurpose:
Communicate the key events and plan of care from an inpatient stay to the next provider (e.g., primary care physician, home care team).
Timing:
Completed at the time of patient discharge from a hospital or facility.
Typical Structure:
  1. Patient Identifiers & Dates (admission/discharge)
  2. Reason for Admission
  3. Hospital Course (major diagnoses, procedures, complications)
  4. Discharge Diagnoses
  5. Medications at Discharge
  6. Follow-up Plan (appointments, pending tests)
  7. Condition at Discharge & Instructions
Audience:
Subsequent care providers, case managers, sometimes patients and families.

These recipes are convenient as they all rely on the same set of params to go through. For example, to fill in a Summarization Request for a SOAP Note, you can use the example below:
curl --location --globoff --request PUT 'https://{workspaceId}.clinia.cloud/ai/v1/summarize' \
  --header 'Content-Type: application/json' \
  --header 'Accept: application/json' \
  --header 'X-Clinia-Api-Key: YOUR_API_KEY_HERE' \
  --data '{
    "task": "clinia-soap-note",
    "params": {
        "PatientContexts": [
            "Patient Bob Gratton, born March 15, 1945 (age 80), health insurance #TREJ45031501, room 203-A",
        ],
        "EventContexts": [
            "2025-06-27T09:00: Patient reports two days of worsening shortness of breath when walking across the room and general fatigue, noting she had to pause twice to catch her breath.",
            "2025-06-27T09:15: Vital signs recorded by Nurse INF-202: BP 142/88 mmHg, HR 98 bpm, RR 22, SpO₂ 92% on room air.",
            "2025-06-27T09:30: Physical exam by Dr. Roy: bilateral crackles at lung bases and 1+ pitting edema in both ankles; no murmurs or jugular venous distension.",
            "2025-06-27T10:00: Clinician assessment indicates likely heart failure exacerbation versus COPD flare—considering diuretic uptitration and evaluation of pulmonary status.",
            "2025-06-27T10:15: Orders entered by Dr. Roy: furosemide 40 mg IV now, then daily; obtain chest X-ray today; schedule pulmonary function tests; monitor daily weights and strict fluid I&O.",
            "2025-06-27T10:30: Patient education provided by PAB-304 on low-sodium diet and recognizing signs of fluid overload; follow-up appointment scheduled in one week with cardiology."
        ],
        "Language": "english"
    }
}'
Note that you can also receive this Summarization Response as a stream by using the Accept: text/event-stream header.
I