Skip to main content

Acknowledge notification

MethodPath
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​

StatusMeaning
401Bearer token is missing, invalid or expired.
403You 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.
404No notification with this id exists.
409The notification kept changing and all three write attempts lost the race. Re-read it and call again.
422id is not a UUID.