Synthesize
The Synthesize API returns a summary of guidelines and research for any clinical queryHow it works
API specifications
Initiate a synthesis
Initiate synthesis.
Payload to kickoff synthesis generation.
User query.
Fast mode flag for fast synthesis generation.
falseJob ID
No content
Validation Error
Service Unavailable
Retrieve response from job_id
Get synthesis.
Successful Response
Synthesis fetching output schema.
Polling status enum.
Validation Error
Using Assembled Patient as Context
The assembled_patient field in the synthesis request body allows you to pass a structured patient graph as clinical context. When provided, the synthesis engine uses the patient's conditions, observations, interventions, allergies, and demographics to personalize and focus the evidence synthesis to be directly relevant to that specific patient's clinical profile.
How It Works
The assembled_patient field accepts an AssembledPatient object — the same output structure returned by the POST /v1/assemble endpoint. This creates a natural integration pattern:
CopyPOST /v1/assemble (FHIR bundle) → AssembledPatient ↓ POST /v1/synthesis (user_query + assembled_patient) → Personalized Synthesis
The Assemble endpoint converts a FHIR bundle into a structured patient graph of typed nodes and edges. Passing this output directly into the synthesis request contextualizes the evidence retrieval and blending pipeline around the patient's specific clinical picture.
AssembledPatient Structure
AssembledPatient StructureField
Type
Required
Description
nodes
AssembleNode[]
Yes
Patient clinical nodes (conditions, observations, interventions, allergies)
relationships
AssembleEdge[]
Yes
Edges connecting nodes in the patient graph
demographics
PatientDemographics
Yes
Patient age, gender, and race
AssembleNode Fields
AssembleNode FieldsField
Type
Required
Description
node_type
string
Yes
Discriminator for the node subtype (e.g., condition, observation)
fhir_id
string
Yes
Original FHIR resource identifier
notable
boolean
Yes
Whether this node is clinically notable/important
system_id
string
Yes
System-assigned identifier for the concept
system_preferred_name
string
Yes
Preferred clinical name of the concept
other_system_ids
string[]
No
Additional system identifiers
coding
ExternalCoding[]
No
External coding references (e.g., SNOMED, ICD-10)
metadata
AssembleNodeMetadata
No
Type-specific clinical metadata
AssembleNodeMetadata
AssembleNodeMetadataEach node can carry rich clinical metadata depending on its type:
Metadata Type
Key Fields
Description
condition_metadata
clinicalStatus, family_history, ccsr_categories, onsetDateTime
For diagnosis/condition nodes
observation_metadata
risk, risk_direction, interpretation, observation_time, valueQuantity
For lab results and clinical observations
intervention_metadata
intervention_type, status, intervention_time
For medications, procedures, and immunizations
allergy_metadata
clinicalStatus, criticality, verificationStatus
For allergy and intolerance nodes
AssembleEdge Fields
AssembleEdge FieldsField
Type
Required
Description
source
string
Yes
system_id of the source node
target
string
Yes
system_id of the target node
relationship_id
string
Yes
Identifier of the relationship type between nodes
Data security
Synthesize can be integrated into electronic health records (EHRs) to receive de-identified patient data as context for clinical queries. No requests include patient identifiers.
Last updated
Was this helpful?
