Multi-patient handling is enabled per organization and per
task_type. Ask
your Synthpop contact whether it is provisioned for you and which task type to
use. Where it is not enabled, a submission that contains more than one patient
may instead pause at waiting for you to separate the documents yourself.How it works
You create one Task for the whole submission, exactly as in Validate an order. If Synthpop finds multiple patients, that Task acts as a parent: it fans out into one child Task per patient, and each child runs its own validation workflow, routed automatically from that patient’s documents.1
Submit the packet
POST /task/create with your multi-patient task_type and the file(s). You
get a parent Task back with status: "pending".2
Synthpop splits it
The parent Task separates the patients, groups each one’s pages, and creates a
child Task for each.
3
Read the child Tasks
Discover the child Task IDs (below), then poll and interpret each child the
same way you would any validation Task.
Example: a mixed sleep packet. A single fax contains a Home Sleep Test
referral for one patient and intake forms for another. Synthpop creates two
child Tasks: the first is routed to HST validation, the second to a patient
record workflow. The example is illustrative — the same split works for any mix
of orders and referrals.
Discovering the child Tasks
There are two reliable ways to find the children.1. Read the parent’s child-task output
When the parent Task finishes splitting, it emits anoutputs-group data item whose
tag is child-tasks. Its JSON data carries the child Task UUIDs:
task_multi_patient is an illustrative placeholder, not a real value.
Multi-patient task_types are provisioned per organization during onboarding;
your Synthpop contact tells you the concrete value to use.waiting because it needs more documents.
2. Correlate with your own IDs via GET /task/list
If you want to track children in your own system, or reconcile them after the
fact, use GET /task/list. Filter by task_type and a
date_from/date_to window around when you submitted the parent, then match the
returned Tasks against what you expect. Each child carries its own uuid and, if
your workflow set one, its own external_id.
Notes and limits
- Children may pause at
waiting. Splitting a patient out does not guarantee their documents are complete. A child validation Task can stop atwaitingasking for a missing record, just like any other — resolve it the same way. - Routing is automatic. Each child’s downstream validation workflow is chosen from that patient’s documents; you don’t select it.
- Availability varies. Both splitting and the behaviour for an unenabled organization depend on your provisioning — confirm with your Synthpop contact.
Related
Validate an order
Poll and interpret each child Task with the standard flow.
Listing tasks
Filter, sort, and page through Tasks to reconcile a submission.
Intake overview
How the intake capability maps to the API.
Responding to waiting tasks
Complete a child Task that pauses for more documents.

