Authorization is in Authentication. Use synthetic data only
on the initial sandbox. Listing imaging centers, searching or creating practices or
law firms, and submitting an order-form-only referral may be off until Scan enables
them for your account.
What you will build. One referral with the patient on file and the physician
order attached. You do not send safety answers or preferred times in this flow.
What Scan does after. We reach out for safety screening and scheduling, confirm
the appointment with the patient, and file the radiology report back to you.
If you already have safety answers and the times that work, use
Submit for scheduling instead. Workers
compensation payers should use
Workers’ compensation and payers for
payment_type, order_type, payer, and claim fields.
Terms you will see
- Referral — the request for imaging. Holds one or more visits.
- Visit — one trip to an imaging center, carrying the orders for that trip (modality, body part).
- Order form — the physician’s signed order PDF, sent as
order_form. There is no separate medical-referral object.
1. Tell us who the patient is
Register the person being scanned so the rest of the flow can refer to them. Patients are scoped to your group, so you only ever see your own. If you would rather send everything at once, you can nest these same fields asreferral.patient in the next step instead.
POST /api/v2/patients
id. Hold onto it as patient_id for the next
step.
Full payload: Creates a patient.
2. Send the referral with the physician order
This is the step that creates the imaging request. It carries three things: the patient, the signed physician order, and what is being scanned. The order is the PDF the referring physician signed, sent asorder_form in a
base64 data URL shaped like
data:<content_type>;name=<filename>;base64,<payload>.
What is being scanned lives in visits, and each visit carries its orders. Look
up the exact procedure first with
CPT codes, then send its
id as cpt_code_id. We infer modality, body part, contrast, laterality,
modifier, and number of views from that mapping. Diagnosis IDs come from
ICD-10 codes.
You can still send the legacy
modality and
body-part fields
instead.
POST /api/v2/referrals
id. Hold onto it to
track the referral below.
You can stop here. Scan will collect safety answers and book. If you already have
safety answers, continue with
Submit medical questions. If you already have
preferred times, continue with
Submit preferred times. If you already have
safety answers and preferred times, use
Submit for scheduling.
Full payload: Creates a referral.
3. Follow the referral to the report
You have two ways to stay current. Subscribe to the status changed webhook and we push each change to you, or poll the referral when you need a snapshot. GET/api/v2/referrals/{referral_id}
visits[].location and visits[].start_time
tell you where and when the patient is going.
When the scan is read, pull the radiology report PDF with
GET /api/v2/order_documents/report.
Full payload: Returns a referral by ID.
