Skip to main content
Everything attached to a Task — what you upload and what Synthpop produces — is a Data Item, listed under data_items on TaskDetails. A Data Item is one of three kinds (file, json, or text), placed in a pipeline group, labelled with a semantic tag, and (for documents Synthpop has read) carrying extracted medical records.

The three kinds

The data_type field discriminates the shape:
An uploaded document or a produced file. The bytes are not inline — you fetch them through an ephemeral download link. File items may also carry a data_format and, for donated/aliased items, an alias.

group — the processing stage

group
string
required
Where the item sits in the flow. inputs and outputs are present in every task type; some task types add intermediate groups. Use group to separate what you sent (inputs) from what Synthpop produced (outputs).

tag — the semantic label

tag
string
required
What the item is, independent of where it sits. Examples: upload, request-spec, clinical-notes, supporting-document, missing-items. Tags are how you find a specific output within a group.
group and tag answer different questions. group is where in the pipeline (inputs / outputs / intermediate); tag is what kind of content. A single group holds many differently-tagged items.

Common fields

uuid
string (uuid)
required
Unique ID of the Data Item. Used in the download-link path for file items.
name
string | null
An optional friendly name, often derived from the file name.
data_format
string | null
Optional description of the data’s format; for JSON items may identify the expected schema.
created
string (date-time)
required
When the Data Item was created or uploaded.
medical_records
MedicalRecord[] | null
The medical records Synthpop extracted from this item. See below.

Medical records

When Synthpop reads a document, it returns what it found as medical_records — an array of MedicalRecord objects on the Data Item.
medical_records is distinct from group. group is the processing stage (inputs/outputs/intermediate) for the whole Data Item; medical_records is the list of structured records extracted from that item. They are unrelated fields — do not conflate them.
A single uploaded file (e.g. a multi-page packet) commonly yields several medical records — an insurance card, a patient visit note, an order — each spanning a different range of pages.
record_type
string
required
The kind of record, e.g. insurance-card or patient-visit.
sections
MedicalRecordSection[]
required
The parts of the document this record spans. Each section has a start and length (page numbers for PDFs; seconds for audio, where length: null means “to the end”), the extracted content (OCR text, form data, or transcript), and optional fields.
timestamp
string (date-time) | null
When the medical information was created — e.g. the date of a patient visit. This is not the upload or processing time.
fields
object | null
The aggregate of fields extracted across the record’s sections.

Downloading files

File Data Items do not include their bytes inline. To download one, request a presigned URL:
It returns a GetDownloadLinkResponse with a suggested file_name and a temporary url.
The download link is ephemeral: it must be used within ~60 seconds. Do not store it as a durable reference — request a fresh link each time you need the bytes.

Where to go next

Results

How verdicts and issues reference the Task.

Tasks

The resource these items belong to.