React hook guides
Each guide covers one hook: what it reads or changes, its arguments and result state, request behavior, and a typed React example.
Data hooks use the client provided by OvokProvider. Keep them in client-side components. The generated API reference linked from each guide documents the exact public types.
Notification hooks coordinate refreshes only among hooks using the same OvokClient instance. A successful note mutation does not refresh hooks under a different client, even if both clients use the same server and project. Share one client instance when those views should stay in sync, or call the other hook's reload() explicitly.
Hook guides
Accounts and authentication
- useAcceptInvite — Accepts a pending invitation using the complete acceptance payload collected by your invite flow.
- useChangeHistory — Reads a page of account change-history entries using the supplied query.
- useInvitePatient — Sends an invitation for a patient using the shared typed invite payload.
- useInvitePractitioner — Sends an invitation for a practitioner using the shared typed invite payload.
- useLegalConsent — Loads legal-consent status for the authenticated account.
- useMedicalConsent — Loads medical-consent status for the authenticated account.
- useRepushUnconfirmedLimits — Requests another delivery attempt for limits that remain unconfirmed.
- useSetLegalConsent — Updates legal-consent acceptance for the authenticated account.
- useSetMedicalConsent — Updates medical-consent acceptance for the authenticated account.
- useUnconfirmedLimits — Loads signal limits that have not been confirmed.
Signals and thresholds
- useAcknowledgeSignalsAlert — Acknowledges a Signals episode or a raw alert, selected when the hook is created.
- useEnableSignalsForPatient — Enables Signals for one patient.
- useRemoveSignalsThreshold — Removes one Signals threshold for a patient and code.
- useSetSignalsThreshold — Creates or updates a Signals threshold for a patient and code.
- useSignalsAlert — Loads one Signals episode or one raw alert by ID.
- useSignalsAlerts — Loads a cursor-paginated feed of Signals episodes or raw alerts.
- useSignalsSettings — Loads the current project Signals settings.
- useSignalsThresholds — Loads Signals thresholds for one patient.
- useUpdateSignalsSettings — Applies a Signals settings patch with an optional reason.
Project and API access
- useAdministeredProjects — Loads a paginated list of projects the current client can administer.
- useCapabilityStatement — Fetches the FHIR CapabilityStatement for the selected FHIR release.
- useProjectFeatures — Loads feature availability for the configured project.
- useProjectSettings — Loads settings for the configured project.
- usePublicApiEndpoints — Lists public API endpoints for a selected FHIR release.
Core and request state
- useClient — Returns the OvokClient instance provided by the nearest OvokProvider.
- useOvokMutation — Wraps a typed OvokClient operation as an explicit stateful mutation.
- useOvokRequest — Wraps an asynchronous loader with data, loading, error, and manual reload state.
CMS and localization
- useCmsDocument — Loads one published CMS document from a collection by slug.
- useCmsDocuments — Loads one page of published documents from a CMS collection.
- useI18nextDocument — Loads the i18next document for one language.
- useLegalPage — Loads one document from the legal-pages CMS collection.
- useLocales — Loads locale configuration available to the current project.
- useLocalizations — Lists localization resources for one language.
- useReleaseNotes — Loads one page from the release-notes CMS collection.
- useTranslations — Loads the translations CMS collection as a locale-specific translation tree.
- useUpdateI18nextDocument — Replaces the i18next translation document for one language.
- useUpdateLocalization — Updates one localization resource identified by language and key.
- useUpdateProjectTextSetting — Updates one project text setting by key.
Content and video
- useConsentSignature — Requests a consent-signature response for one consent record.
- useContent — Searches project content for a content type and language.
- useCreateVideoCallAppointment — Creates a video-call appointment from the appointment input.
- useCreateVideoCallUserAccess — Requests user access for a video-call appointment.
- useDocuments — Searches available document records using a typed document query.
- useEmailTemplates — Loads email-template metadata available to the configured client.
- useVideoCallAccess — Loads the access permission for one video-call appointment.
- useVideoCallAppointments — Lists video-call appointments using the typed appointment query.
Notifications
- useCreateNotificationNote — Creates a notification note from a typed note body.
- useCreateSignalsAlertNote — Adds a note to a Signals alert episode.
- useCreateSignalsRawAlertNote — Adds a note to one raw Signals alert.
- useDeleteNotificationNote — Deletes a notification note by its note ID.
- useDeleteSignalsNote — Deletes a Signals note by its note ID.
- useNotificationNotes — Lists notes for a notification target kind and target ID.
- useRecentAlarms — Loads a recent alarm summary, optionally bounded by count.
- useRecentOutOfBed — Loads a recent out-of-bed summary, optionally bounded by count.
- useRecentSlimNotifications — Loads a recent Slim notification summary, optionally bounded by count.
- useSignalsAlertNotes — Lists notes attached to one Signals alert episode.
- useSignalsRawAlertNotes — Lists notes attached to one individual raw Signals alert.
- useSlimAlarms — Lists alarms using the typed Slim alarm query.
- useSlimMedicalNotifications — Loads every page of medical notifications and combines the items.
- useSlimNotifications — Loads the legacy mixed Slim notification feed.
- useSlimOutOfBedNotifications — Loads the out-of-bed feed with typed filters.
- useUpdateNotificationNote — Updates a notification note by ID using a typed patch body.
- useUpdateSignalsNote — Updates a Signals note by ID using a typed patch body.
Patient sharing
- useCreatePatientSharingInvite — Creates a patient-sharing invitation from a typed invite request.
- usePatientSharingSettings — Loads the current patient-sharing settings.
- usePatientSharing — Lists active patient-sharing relationships for the current account.
- useRedeemPatientSharingInvite — Redeems a patient-sharing invite and returns the resulting share.
- useRevokePatientSharing — Revokes a patient-sharing relationship by consent ID.
- useUpdatePatientSharingSettings — Updates patient-sharing settings and returns the saved settings.
Patient data and questionnaires
- useCurrentPatientProfile — Loads the patient profile associated with the configured client context.
- useExtractQuestionnaireObservations — Runs the extraction operation for a saved QuestionnaireResponse.
- usePatientAppointments — Lists patient appointments using the scheduling query.
- usePatientCarePlans — Lists care plans in the current patient context.
- usePatientDashboard — Loads the patient dashboard summary for the supplied dashboard query.
- usePatientDeviceTelemetryHistory — Loads historical telemetry observations for one device.
- usePatientDeviceTelemetry — Loads the current telemetry observation bundle for one device.
- usePatientDevices — Lists devices associated with the current patient context.
- usePatientLatestObservations — Loads the latest patient Observation bundle for the selected query.
- usePatientMeasurementHistory — Lists typed measurement history for the patient context.
- usePatientMeasurement — Loads one patient measurement by ID.
- usePatientNotifications — Lists notification records visible in the patient context.
- usePatientQuestionnaireResponses — Lists QuestionnaireResponse records for the patient context.
- usePatientQuestionnaires — Lists questionnaires available in the patient context.
- usePatientSchedules — Lists patient schedules using the scheduling query.
- usePatientSlots — Lists appointment slots using the patient scheduling query.
- usePopulateQuestionnaire — Runs the FHIR Questionnaire populate operation for one questionnaire.
- useSubmitQuestionnaireResponse — Submits a QuestionnaireResponse with optional generated Observation resources.
Measurements and health data
- useEcgRecording — Loads and maps ECG observations into an ECG recording.
- useObservations — Searches Observation resources and maps supported categories to typed measurements.
- useSaveMeasurement — Saves a typed measurement through the configured client.
- useUrineTests — Loads urine-analysis observations and maps them to typed urine measurements.
Remote monitoring
- useSlimDeviceTelemetry — Loads the Slim telemetry summary for one device.
- useSlimDevices — Lists devices through the Slim device-list endpoint.
- useSlimPatientThresholdV2 — Loads one patient's Slim threshold configuration.
- useSlimPatients — Lists patients through the Slim patient-list endpoint.
- useSlimThresholdV2 — Loads project-level Slim thresholds.
- useUpdateSlimPatientThresholdV2 — Updates one patient's Slim threshold configuration and reads the saved value again.
- useUpdateSlimThresholdV2 — Updates project-level Slim thresholds.