SlimSlim/User

Update user consents

  • Sandbox: available
  • Staging: available
  • Production: unknown
POST
/v1/slim/user/consents

Updates one or more consents of the signed-in practitioner. Use it to save the answers of a combined consent prompt.

Auth: Bearer token for a practitioner session (the profile must be a Practitioner). The caller's access policy must grant Consent:read, Consent:search, Consent:create and Consent:update (a project admin who holds no access policy skips this check). Scope: The caller's practitioner profile in the caller's project (from the token).

Behaviour

  • Send at least one of medicalSettingsNotificationsConsent and termsAndConditionsConsent. Only the fields you send change.
  • true records acceptance of the currently published version of that consent. false withdraws it.
  • A termsAndConditionsConsent change also creates, re-activates or revokes the legal Consent read by GET /v1/me/consent/legal.
  • All changes commit together or not at all. Repeating the same values writes nothing.
  • The consent answers of /v1/me/consent/* are refreshed right away.
  • The response always carries the resulting state of every consent.

Example

curl -X POST 'https://api.sandbox.ovok.com/v1/slim/user/consents' \  -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3NjcyNjg4MDAsImV4cCI6MTc2NzI3MjQwMH0.Ql3B_ztDvctlyZ2z0vp4sl3ExXRQGkzmxdmTAqxNzZk' \  -H 'Content-Type: application/json' \  -d '{ "medicalSettingsNotificationsConsent": true, "termsAndConditionsConsent": true }'

Authorization

bearer
headerAuthorizationBearer <JWT>

Request Body

application/json
  1. body
medicalSettingsNotificationsConsent?boolean
termsAndConditionsConsent?boolean

Response Body

Consent statuses updated successfully.

application/json
  1. response
medicalSettingsNotificationsConsent*boolean
termsAndConditionsConsent*boolean
Example Request
curl -X POST 'https://api.sandbox.ovok.com/v1/slim/user/consents' \  -H 'Content-Type: application/json' \  -d '{}'
Example Response
{  "medicalSettingsNotificationsConsent": true,  "termsAndConditionsConsent": true}

Get all user consents GET

Returns every consent of the signed-in practitioner in one response. Use it at sign-in to decide which consent prompts to show. **Auth:** Bearer token for a practitioner session (the profile must be a `Practitioner`). The caller's access policy must grant `Consent:read` and `Consent:search` (a project admin who holds no access policy skips this check). **Scope:** The caller's practitioner profile in the caller's project (from the token). ## Behaviour - Both `medicalSettingsNotificationsConsent` and `termsAndConditionsConsent` are versioned. Each is `true` only when an acceptance is on file and either matches the currently published version of that consent or no version has been published yet. - Publishing a new version of a consent turns it `false` for everyone until they accept again. - The published version is the one of the root project of your project tree. Without one, the platform-wide version applies. - A consent with no record reads `false`. ## Example ```bash curl -X GET 'https://api.sandbox.ovok.com/v1/slim/user/consents' \ -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3NjcyNjg4MDAsImV4cCI6MTc2NzI3MjQwMH0.Ql3B_ztDvctlyZ2z0vp4sl3ExXRQGkzmxdmTAqxNzZk' ``` ```json { "medicalSettingsNotificationsConsent": true, "termsAndConditionsConsent": false } ```

Send support message POST

Sends a support email on behalf of the signed-in user to the support address configured for this Ovok environment. **Auth:** Bearer token for a practitioner, project admin or System Owner session. The caller's access policy must grant `Patient:read`, `Patient:search`, `Device:read`, `Device:search`, `Observation:read` and `Observation:search` (a project admin who holds no access policy skips this check). **Scope:** The caller's project (from the token). ## Behaviour - Sends one email built from the `message`, `version` and `environment` you send. - The email also carries details taken from your session, not from the body: your name, email, project name, profile type, access policy name and tenant code. - Nothing else is written. - Returns `true` once the email is sent. ## Example ```bash curl -X POST 'https://api.sandbox.ovok.com/v1/slim/user/support' \ -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3NjcyNjg4MDAsImV4cCI6MTc2NzI3MjQwMH0.Ql3B_ztDvctlyZ2z0vp4sl3ExXRQGkzmxdmTAqxNzZk' \ -H 'Content-Type: application/json' \ -d '{ "message": "The live view does not load.", "version": "1.8.0", "environment": "production" }' ```