Solution
Rehab & nutrition practices
PT, OT, speech therapy and dietitian practices: episodes, home programs, goals, IDDSI levels and outcome measures, or a dietitian's caseload, targets, meal rules, ADIME notes and MNT hours.
- Credential model
- OAuth 2.0 client credentials for your organisation. Authentication
- Before production
- A BAA on file; the patient's sharing choices apply (nutrition must be shared with a dietitian).
- Sandbox
- A practice sandbox.
Families you'll use
| Family | Fit | Status |
|---|---|---|
| Enrolment & messaging | Core | Built — gated |
| Events (webhooks) | Core | Built — gated |
| Nutrition (dietitians) | Core | Built — gated |
| Rehab (PT / OT / speech) | Core | Built — gated |
| Billing & scheduling | Useful | Built — gated |
| Clinical intelligence | Useful | Built — gated |
| Member data in: observations and workouts | Useful | Built — gated |
Scopes to request
Ask only for what your product uses.
| Scope | Allows |
|---|---|
members.read | List the organisation's linked members as opaque member references. |
rehab.read | Read a patient's physical, occupational and speech therapy record with your practice: recovery episodes (discipline, restrictions, milestones), home exercise programs with the days the patient recorded (an unrecorded day is never a missed one), functional goals and the patient's own ratings, the home-safety checklist (no score), IDDSI food and drink levels and episode outcome measures; the patient must share their medical history with you (treating practices only). |
rehab.write | Act in Norvya for a named clinician of your practice on that record: set an episode's discipline, lead therapist and restrictions, assign or end a home program, create or update goals, set or end IDDSI levels, recommend home-safety items, request a patient-reported outcome measure for an episode or record a clinician-rated one (treating practices only). |
nutrition.read | Read your dietitians' caseload (Norvya-convention flags), a patient's dietitian nutrition targets, food rules and meals, the food-log review against targets (only when the patient shares nutrition; unlogged days are unknown, never missed) and structured MNT visit notes (treating practices only). |
nutrition.write | Act for a named dietitian of your practice: set or release nutrition targets the app then holds the patient to, add or end food rules, set or release RD meals, write a structured MNT visit note (treating practices only). |
nutrition.mnt.read | Read a patient's Medicare MNT referrals, recorded visits and hours next to the rule text, and superbill candidates for your biller as JSON: the codes and units your dietitian recorded, never a code Norvya chose, never submitted, not a coverage decision (treating practices only). |
instruments.request | Ask a patient to complete a validated questionnaire from Norvya's instrument library; Norvya sends its own generic notification (treating practices only). |
instruments.read | Read questionnaire scores (total, severity band, subscales) with the instrument version and completion time, never item-level answers; mental-health instruments only when the patient shares mental health with you (treating practices only). |
observations.write | Write measurements to a member's own record: vitals, lab results and body composition (practices with a BAA on file), or body composition and the vitals a gym measures (gyms; never labs). Idempotent per item by your external_id; units converted, implausible values refused; DELETE retracts only your own item. |
documents.read | List and download the documents Norvya already produces about a patient (care plans, survivorship plans, reviews, summaries, estimates) as PDF, in the patient's language where the document supports it; each document kind keeps its own consent gate (treating practices, including medical-travel desks, and pharmacies). |
members.invite | Invite people to join your organisation on Norvya (Norvya emails its own invitation in the person's language; never a pre-granted consent: the person chooses what to share in the app) and create printable join codes; follow each invitation to joined. Daily cap, de-duplicated per address, and the answer never says whether an address has an account. |
messages.write | Send a member a secure in-app message from your organisation (the conversation your staff use in Norvya); Norvya notifies them with its own generic wording, never your text. Members who turned messages off are refused. |
messages.read | Read your organisation's in-app conversation with a member, including their replies (audited as a disclosure). |
webhooks.manage | Register HTTPS webhook endpoints (payloads carry no PHI). Each event also needs its own scope: worklist / attention events clinical.panel.read, import events panel.import.write, population.export_completed population.export (medical practices only), member.at_risk fitness.roster.read, public_health.iis_ack_received public_health.immunizations.read, public_health.case_report_response public_health.case_reports.read. claims.import_completed needs claims.import.write (medical practices only). member.account_claimed needs members.claim_invite (medical practices only). hospital_at_home.escalation needs hospital_at_home.read (hospitals only). hospice.idg_review_due needs hospice.read (hospice agencies only). pharmacy.refill_due and pharmacy.discharge_episode_opened need pharmacy.patients.read; care_site.change_of_condition, care_site.incident_recorded and care_site.mar_exception need care_sites.read (pharmacies and care-facility operators, their own sites). travel.journey_updated and travel.leg_status_changed need travel.journeys.read, travel.nursing_visit_recorded travel.nursing.read, travel.invoice_issued travel.billing.read (medical-travel desks only). travel.inquiry_updated needs travel.inquiries.read, travel.journey_message_posted travel.messages.read (medical-travel desks only). instrument.batch_dispatched needs instruments.request (medical practices only). roster.enrolment_summary needs members.roster.read (medical practices only). older_adults.falls_tier_raised needs older_adults.read (medical practices only). employer.challenge_completed needs employer.challenges.read and occupational.exam_due occupational.read (employers only); medspa.adverse_event_reported needs medspa.aftercare.read (treating practices only). rehab.goal_met needs rehab.read; nutrition.caseload_flagged needs nutrition.read (medical practices only). cocm.review_due needs behavioral.read (medical practices only). derm.lesion_recheck_due and derm.patch_test_read_recorded need derm.read (medical practices only). |
Not callable yet
- Billing & scheduling Built — gated Gate: A BAA with each practice. The care-management view also needs the practice to switch on care-management documentation in Norvya (after its own compliance review).
Before production
Gate: A BAA on file; the patient's sharing choices apply (nutrition must be shared with a dietitian).
Sandbox
Build and test against synthetic members before you touch real data. A practice sandbox. What a sandbox holds, its credentials, limits, resets and expiry are in the Sandbox guide. To request one, write to [email protected] with your organisation and market.
Every endpoint for this market
The families this solution uses, filtered to the scopes it requests. Each link opens the endpoint on its family page.
Platform Built — gated3
- GET
/v1/members - POST
/v1/oauth/token - GET
/v1/usage
Enrolment & messaging Built — gated12
- GET
/v1/invites - POST
/v1/invites - GET
/v1/invites/{invite_ref} - POST
/v1/invites/{invite_ref}/revoke - POST
/v1/invites/{invite_ref}/simulate-join - GET
/v1/join-codes - POST
/v1/join-codes - POST
/v1/join-codes/{code_ref}/revoke - POST
/v1/join-codes/{code_ref}/simulate-join - GET
/v1/members/{member_ref}/messages - POST
/v1/members/{member_ref}/messages - POST
/v1/members/{member_ref}/messages/simulate-reply
Events (webhooks) Built — gated5
- GET
/v1/webhooks - POST
/v1/webhooks - DELETE
/v1/webhooks/{webhook_id} - GET
/v1/webhooks/{webhook_id}/deliveries - POST
/v1/webhooks/{webhook_id}/enable
Records & documents Built — gated3
- GET
/v1/documents/{document_ref} - GET
/v1/documents/{document_ref}/content - GET
/v1/patients/{member_ref}/documents
Clinical intelligence Built — gated7
- GET
/v1/instrument-requests/batch - POST
/v1/instrument-requests/batch - GET
/v1/instrument-requests/batch/{batch_ref} - GET
/v1/instruments - POST
/v1/members/{member_ref}/instrument-requests - POST
/v1/members/{member_ref}/instrument-requests/{response_ref}/simulate-completion - GET
/v1/members/{member_ref}/instrument-responses
Member data in: observations and workouts Built — gated2
Rehab (PT / OT / speech) Built — gated18
- GET
/v1/rehab/outcomes-summary - GET
/v1/rehab/patients/{member_ref}/episodes - GET
/v1/rehab/patients/{member_ref}/episodes/{episode_ref} - PUT
/v1/rehab/patients/{member_ref}/episodes/{episode_ref}/care - POST
/v1/rehab/patients/{member_ref}/episodes/{episode_ref}/outcome-measures - PUT
/v1/rehab/patients/{member_ref}/episodes/{episode_ref}/restrictions - GET
/v1/rehab/patients/{member_ref}/goals - POST
/v1/rehab/patients/{member_ref}/goals - PATCH
/v1/rehab/patients/{member_ref}/goals/{goal_ref} - GET
/v1/rehab/patients/{member_ref}/home-programs - POST
/v1/rehab/patients/{member_ref}/home-programs - POST
/v1/rehab/patients/{member_ref}/home-programs/{discipline}/end - GET
/v1/rehab/patients/{member_ref}/home-safety - PUT
/v1/rehab/patients/{member_ref}/home-safety/recommendations - GET
/v1/rehab/patients/{member_ref}/iddsi - PUT
/v1/rehab/patients/{member_ref}/iddsi - POST
/v1/rehab/patients/{member_ref}/iddsi/end - GET
/v1/rehab/patients/{member_ref}/outcome-measures
Nutrition (dietitians) Built — gated15
- GET
/v1/nutrition/caseload - GET
/v1/nutrition/patients/{member_ref}/meal-rules - PUT
/v1/nutrition/patients/{member_ref}/meal-rules/meal-plan - POST
/v1/nutrition/patients/{member_ref}/meal-rules/meal-plan/release - POST
/v1/nutrition/patients/{member_ref}/meal-rules/rules - POST
/v1/nutrition/patients/{member_ref}/meal-rules/rules/{rule_ref}/end - GET
/v1/nutrition/patients/{member_ref}/mnt - GET
/v1/nutrition/patients/{member_ref}/mnt/superbill-candidates - GET
/v1/nutrition/patients/{member_ref}/notes - POST
/v1/nutrition/patients/{member_ref}/notes - GET
/v1/nutrition/patients/{member_ref}/review - GET
/v1/nutrition/patients/{member_ref}/targets - PUT
/v1/nutrition/patients/{member_ref}/targets - POST
/v1/nutrition/patients/{member_ref}/targets/release - GET
/v1/nutrition/staff