This guide covers: Patient Summary APIs.
- Upload FHIR data into Sukiโs Clinical Knowledge Graph (CKG), trigger asynchronous summary generation, poll job status, and retrieve the completed summary.
- Looking for a quickstart with full scripts? Refer to the Patient Summary API quickstart.
- Authenticate and obtain an
sdp_suki_token. - Upload FHIR data to CKG.
- Trigger summary generation for an encounter.
- Poll job status until generation completes.
- Retrieve the full Patient Summary or pre-visit section.
Patient Summary API workflow overview
The Patient Summary API workflow uses CKG Data Ingestion APIs plus Patient Summary REST APIs.- Request a CKG upload URL and upload a FHIR R4 bundle.
- Poll ingestion status until CKG processing completes.
- Authenticate and obtain an
sdp_suki_token. - Trigger summary generation for an encounter and practitioner pair.
- Poll generation status until the job is complete.
- Retrieve the full summary or pre-visit section.
Patient Summaries are generated from data available in CKG. Keep
fhir_encounter_id and fhir_practitioner_id consistent between the ingested FHIR resources and later generation or retrieval calls.Upload FHIR data to CKG
Upload clinical data before you generate a summary.Request an upload URL
Call GET Request FHIR bundle upload URL:transaction_id and upload_url from the response.
Upload the FHIR bundle
Upload the bundle JSON to the returnedupload_url with HTTP PUT. Refer to Upload FHIR bundle.
Poll ingestion status
Call GET Check ingestion status:COMPLETED. Do not trigger summary generation while ingestion is still running.
Request details
- Authenticate CKG ingestion with an RS256-signed SDP JWT bearer token that includes the
sdp_partner_idclaim. - Include consistent patient, encounter, and practitioner identifiers in the FHIR resources you upload.
- Use a stable
correlation_idwhen you upload updates related to a previous transaction.
Authenticate for Patient Summary APIs
After CKG ingestion is complete, authenticate for generation and retrieval. Call POST Login:sdp_suki_token in later Patient Summary requests. If login fails because the provider is not registered, call Register once, then login again.
Generate a Patient Summary for an encounter
Create an asynchronous generation job for one encounter and practitioner pair. Call POST Generate Patient Summary for an encounter:Request details
fhir_encounter_idandfhir_practitioner_idmust match identifiers in the ingested FHIR data.- Generation is asynchronous. Treat the response as job acceptance, not finished summary content.
- Save
patient_summary_idwhen the response returns one. You can use it for status and retrieval. - If a summary already exists for the appointment, skip generation unless you intentionally refreshed CKG data.
Poll generation status
After you trigger generation, poll until the job reaches a terminal status. Call GET Generation status using encounter and practitioner IDs:COMPLETED or FAILED. Refer to the Summary Jobs APIs for all status values and the patient_summary_id status path.
Retrieve the Patient Summary
When status isCOMPLETED, retrieve the summary content.
Retrieve the full summary
Call GET Patient Summary using partner identifiers:patient_summary_id using Patient Summary by ID.
Retrieve the pre-visit section
Call GET Pre-visit summary using partner identifiers when your UI needs a short preview:Summary sections to expect
The full Patient Summary is organized into these sections:Common integration patterns and use cases
Pattern 1: Standard encounter flow
A typical encounter-based Patient Summary workflow follows these steps:1
Upload FHIR Data
Request an upload URL, upload the FHIR bundle, and poll CKG ingestion until complete.
2
Authenticate
Call login and save
sdp_suki_token.3
Generate the Summary
4
Poll Job Status
Poll Encounter status until the job is terminal.
5
Retrieve Summary Content
Call a Patient Summaries endpoint and render the sections in your UI.
Pattern 2: Morning schedule generation
- Ingest the provider schedule and patient FHIR data for the day.
- Call Generate Patient Summaries for scheduled appointments.
- Poll status per appointment.
- Retrieve pre-visit sections for schedule cards and full summaries for chart review.
Pattern 3: Skip create when a summary already exists
Before you generate, check whether a summary already exists for the appointment. If it does, retrieve and display it. Generate again only when you refreshed CKG data and need an updated summary.Related API references
CKG Data Ingestion
Upload FHIR bundles into CKG
Generate for Encounter
Start asynchronous summary generation
Retrieve Patient Summary
Load completed summary content
Best practices
FAQs
What If the Patient Has No Upcoming Appointment?
What If the Patient Has No Upcoming Appointment?
Show this message in the patient profile:
No upcoming appointment. Schedule an appointment to view the summary. Patient Summary is intended for patients with an upcoming appointment on the provider schedule.What If the Patient Has an Appointment but No Prior Records?
What If the Patient Has an Appointment but No Prior Records?
Show About this visit and Problems. Under Summary and Summary of previous visits, show that no record was found.
Should I Generate Again Every Time the Provider Opens the App?
Should I Generate Again Every Time the Provider Opens the App?
No. Begin generation when the provider logs in or opens the app, but if a summary already exists for a given appointment, do not create a new one.