Read the changes feed
Every order, connection and invitation change for the calling cell, oldest first by (xid, kind, entityId), as the same envelopes the webhooks carry, built from current state. Only changes of transactions older than every running one are listed, so a late commit always appears after the cursor. Pass the previous page's next as after=<xid>,<kind>,<entityId> and persist it once the page is applied; a coalesced change reappears with a new xid, and applying by revision makes repeats no-ops.
Every order, connection and invitation change for the calling cell, oldest first by (xid, kind, entityId), as the same envelopes the webhooks carry, built from current state. Only changes of transactions older than every running one are listed, so a late commit always appears after the cursor. Pass the previous page's next as after=,, and persist it once the page is applied; a coalesced change reappears with a new xid, and applying by revision makes repeats no-ops.
Authorization
smilelineBearer Smileline cell credential gl_sl_v1_<cell>_<secret>, one per Smileline cell; accepted only on /smileline/v1. A practice belongs to one cell and is not found from any other.
In: header
Query Parameters
^\d{1,20},[a-z_]{1,32},[^,]{1,200}$/u1 <= value <= 5050Response Body
application/json
application/json
curl -X GET "https://example.com/smileline/v1/changes"{ "events": [ { "type": "order.updated", "deliveryId": "string", "revision": 0, "occurredAt": "string", "data": { "orderId": "string", "orderNumber": "string", "revision": 0, "practiceRef": "string", "labId": "string", "labName": "string", "patientRef": "string", "externalRefs": { "procedureId": "string", "planId": "string", "appointmentId": "string" }, "createdByRef": "string", "status": "string", "stage": { "code": "string", "label": "string", "tone": "start" }, "needsAction": { "kind": "surgical_report", "label": "string" }, "dueDate": "string", "submittedAt": "string", "completedAt": "string", "cancelledAt": "string", "shipment": { "status": "string", "trackingUrl": "string" }, "summary": "string", "total": { "amountMinor": 0, "currency": "string" }, "invoice": { "status": "string", "amountDueMinor": 0, "currency": "string", "dueDate": "string" }, "lastLabMessageAt": "string", "unreadLabMessages": 0, "remakeOfOrderId": "string", "updatedAt": "string" } } ], "next": { "xid": "string", "kind": "string", "entityId": "string" }, "hasMore": true}{ "error": "string", "code": "string"}