integration.junction.labs.order_status_changed.v1
Emitted whenever the integrations service receives a Junction Labs webhook that changes the status of a DIY lab panel order (status update, result-ready, or cancel). Downstream consumers (clinical, patient-graph) use this to ingest results and surface state to the member.
Added: LOO-1977 (Junction Labs Phase 3).
Constant
import { EVENT_NAMES } from "@platform/contracts";
EVENT_NAMES.INTEGRATION_JUNCTION_LABS_ORDER_STATUS_CHANGED_V1;Publishers
Subscribers
No service currently subscribes to this event.
Payload schema
z.object({
provider: z.literal("junction-labs"),
junction_order_id: z.string(),
status: z.string(),
event_type: z.string(),
panel_id: z.string().nullable().optional(),
patient_id: z.string().nullable().optional(),
brand_id: z.string().nullable().optional(),
result_ready: z.boolean(),
payload: z.record(z.unknown()),
received_at: z.string().datetime(),
})Delivery semantics
- At-least-once delivery. Consumers must dedupe by event ID.
- Fanned out to both NATS (in-cluster) and EventBridge (durable). See Events concept.