Acknowledge notification
| Method | Path |
|---|---|
PATCH | /v1/slim/notifications/:id/ack |
Authentication · Access policies
Acknowledges one notification stored as a CommunicationRequest (out-of-bed, device alarm, attention press) by setting its status to completed. For a medical notification, use POST /v1/slim/notifications/medical/{episodeId}/ack instead.
Auth: Bearer token. The caller must be a practitioner, an admin, a super admin, or hold the "System Owner" access policy. The access policy must grant Patient:read (admins and super admins skip this check). No CommunicationRequest:update grant is needed.
Scope: The CommunicationRequest is read with your own credentials and must belong to your project (from the token). Sub-projects are not included.
Behaviour
- After those checks pass, Ovok writes the status change with its own credentials.
- Acknowledging an already completed notification succeeds and changes nothing.
- If the notification is updated at the same moment (for example by a new reading on the same episode), Ovok re-reads it and retries, keeping the newer content, up to three times.
- The notification leaves the active lists and bells. The device's alert state in the live views is cleared.
- Acknowledging a running out-of-bed episode stops that episode from raising the alert again. A new bed exit raises a new alert.
- The response is the updated row, in the same shape as the list rows.
- A 409 means the notification kept changing and all three attempts lost the race. Re-read it and call again.
Example
curl -X PATCH 'https://api.sandbox.ovok.com/v1/slim/notifications/3f1c2b7e-8d4a-4c1e-9b2f-6a7d5e4c3b21/ack' \
-H "Authorization: Bearer ${OVOK_TOKEN}"
Successful response
200 — Notification acknowledged successfully.
Errors
| Status | Meaning |
|---|---|
401 | Bearer token is missing, invalid or expired. |
403 | You are not a practitioner, admin or System Owner, you lack Patient:read, your session has no project, Medplum denies you reading the notification, or the notification is not in your project or carries no project. |
404 | No notification with this id exists. |
409 | The notification kept changing and all three write attempts lost the race. Re-read it and call again. |
422 | id is not a UUID. |