API index

Dakota API

Every endpoint this service exposes, read live from the OpenAPI schema — so this page always matches what the server is actually routing.

Version 1.0.0 Endpoints 206 Auth JWT Bearer Mode production

Endpoints

Grouped by tag. A padlock marks routes that require an Authorization: Bearer <access> header.

auth 9 endpoints
MethodPathPurposeAuth
POST /api/auth/login/ Log in Public
POST /api/auth/login/verify/ Verify a sign-in code Public
POST /api/auth/logout/ Log out Bearer
GET /api/auth/me/ Current user Bearer
POST /api/auth/password-reset/ Request a password reset Public
POST /api/auth/password-reset/confirm/ Confirm a password reset Public
POST /api/auth/password/change/ Change your password Bearer
POST /api/auth/refresh/ Refresh access token Public
POST /api/auth/verify/ Verify token Public
inventory 15 endpoints
MethodPathPurposeAuth
GET /api/inventory/count-sheet/ The count sheet for one date Bearer
POST /api/inventory/count-sheet/confirm/ Confirm and lock a whole count sheet Bearer
PUT /api/inventory/count-sheet/lines/ File or correct one draft count line Bearer
POST /api/inventory/count-sheet/lines/{uuid}/confirm/ Confirm one count line
POST /api/inventory/count-sheet/unlock/ Reopen a locked count sheet Bearer
POST /api/inventory/count-sheet/verify-end/ Sign the end of the day Bearer
POST /api/inventory/count-sheet/verify-start/ Sign the start of the day Bearer
GET /api/inventory/medications/ List medications Bearer
POST /api/inventory/medications/ Add a medication Bearer
GET /api/inventory/medications/export/ List medications Bearer
GET /api/inventory/medications/{uuid}/ Get a medication by id
PUT /api/inventory/medications/{uuid}/ Replace a medication
PATCH /api/inventory/medications/{uuid}/ Update a medication
DELETE /api/inventory/medications/{uuid}/ Delete a medication (soft)
GET /api/inventory/medications/{uuid}/tracks/ List one medication's count history
leads 6 endpoints
MethodPathPurposeAuth
GET /api/leads/ List leads Bearer
GET /api/leads/open-count/ Count of open (new + draft) leads Bearer
POST /api/leads/register/ Register a lead (public website form) Public
GET /api/leads/{uuid}/ Get a lead
POST /api/leads/{uuid}/reject/ Reject a lead
POST /api/leads/{uuid}/reopen/ Reopen a rejected lead
patient-portal-profile 13 endpoints
MethodPathPurposeAuth
GET /api/patient-portal/profile/ My record Bearer
PATCH /api/patient-portal/profile/ My record Bearer
GET /api/patient-portal/profile/cards/ My saved cards Bearer
POST /api/patient-portal/profile/cards/ My saved cards Bearer
PATCH /api/patient-portal/profile/cards/{card_uuid}/ Update or remove one of my cards
DELETE /api/patient-portal/profile/cards/{card_uuid}/ Update or remove one of my cards
GET /api/patient-portal/profile/charts/ Records I can view Bearer
GET /api/patient-portal/profile/insurances/ My insurance policies Bearer
POST /api/patient-portal/profile/insurances/ My insurance policies Bearer
GET /api/patient-portal/profile/insurances/{policy_uuid}/ Edit one of my policies
PATCH /api/patient-portal/profile/insurances/{policy_uuid}/ Edit one of my policies
DELETE /api/patient-portal/profile/insurances/{policy_uuid}/ Edit one of my policies
GET /api/patient-portal/profile/payers/ Insurers I can choose from Bearer
patients 32 endpoints
MethodPathPurposeAuth
GET /api/patients/ List patients Bearer
POST /api/patients/ Create a patient Bearer
GET /api/patients/{uuid}/ Retrieve a patient
PATCH /api/patients/{uuid}/ Set a patient’s status
GET /api/patients/{uuid}/alert-notes/ List alert notes
POST /api/patients/{uuid}/alert-notes/ Add an alert note
GET /api/patients/{uuid}/alert-notes/{note_uuid}/ Get an alert note
PATCH /api/patients/{uuid}/alert-notes/{note_uuid}/ Update an alert note
DELETE /api/patients/{uuid}/alert-notes/{note_uuid}/ Delete an alert note
GET /api/patients/{uuid}/documents/ List documents
POST /api/patients/{uuid}/documents/ Upload a document
GET /api/patients/{uuid}/documents/{document_uuid}/ Get a document
DELETE /api/patients/{uuid}/documents/{document_uuid}/ Delete a document
GET /api/patients/{uuid}/documents/{document_uuid}/content/ Download a document
GET /api/patients/{uuid}/flags/ List the flags on a chart
POST /api/patients/{uuid}/flags/ Pin a flag to a chart
DELETE /api/patients/{uuid}/flags/{assignment_uuid}/ Take a flag off a chart
GET /api/patients/{uuid}/notes/ List notes
POST /api/patients/{uuid}/notes/ Add a note
GET /api/patients/{uuid}/notes/{note_uuid}/ Get a note
PATCH /api/patients/{uuid}/notes/{note_uuid}/ Update a note
DELETE /api/patients/{uuid}/notes/{note_uuid}/ Delete a note
GET /api/patients/{uuid}/payment-cards/ List payment cards
POST /api/patients/{uuid}/payment-cards/ Add a payment card
GET /api/patients/{uuid}/payment-cards/{card_uuid}/ Get a payment card
PATCH /api/patients/{uuid}/payment-cards/{card_uuid}/ Update a payment card
DELETE /api/patients/{uuid}/payment-cards/{card_uuid}/ Delete a payment card
GET /api/patients/{uuid}/vitals/ List vitals
POST /api/patients/{uuid}/vitals/ Record vitals
GET /api/patients/{uuid}/vitals/{vital_uuid}/ Get vitals
PATCH /api/patients/{uuid}/vitals/{vital_uuid}/ Update vitals
DELETE /api/patients/{uuid}/vitals/{vital_uuid}/ Delete vitals
settings · appointment statuses 6 endpoints
MethodPathPurposeAuth
GET /api/settings/availability/appointment-statuses/ List appointment statuses Bearer
POST /api/settings/availability/appointment-statuses/ Create an appointment status Bearer
GET /api/settings/availability/appointment-statuses/{uuid}/ Get an appointment status
PUT /api/settings/availability/appointment-statuses/{uuid}/ Replace an appointment status
PATCH /api/settings/availability/appointment-statuses/{uuid}/ Update an appointment status
DELETE /api/settings/availability/appointment-statuses/{uuid}/ Archive an appointment status
settings · appointment types 6 endpoints
MethodPathPurposeAuth
GET /api/settings/availability/appointment-types/ List appointment types Bearer
POST /api/settings/availability/appointment-types/ Create an appointment type Bearer
GET /api/settings/availability/appointment-types/{uuid}/ Get an appointment type
PUT /api/settings/availability/appointment-types/{uuid}/ Replace an appointment type
PATCH /api/settings/availability/appointment-types/{uuid}/ Update an appointment type
DELETE /api/settings/availability/appointment-types/{uuid}/ Archive an appointment type
settings · availability 9 endpoints
MethodPathPurposeAuth
GET /api/settings/availability/block-days/{uuid}/ Get a block day
PUT /api/settings/availability/block-days/{uuid}/ Replace a block day
PATCH /api/settings/availability/block-days/{uuid}/ Update a block day
DELETE /api/settings/availability/block-days/{uuid}/ Remove a block day
GET /api/settings/availability/providers/ List providers with their availability summary Bearer
GET /api/settings/availability/providers/{uuid}/block-days/ List a provider's block days
POST /api/settings/availability/providers/{uuid}/block-days/ Add a block day
GET /api/settings/availability/providers/{uuid}/slots/ Get a provider's day slots
PUT /api/settings/availability/providers/{uuid}/slots/ Replace a provider's day slots
settings · billing · fee schedules 6 endpoints
MethodPathPurposeAuth
GET /api/settings/billing/fee-schedules/ List fee schedules Bearer
POST /api/settings/billing/fee-schedules/ Create a fee schedule Bearer
GET /api/settings/billing/fee-schedules/{uuid}/ Get a fee schedule by id
PUT /api/settings/billing/fee-schedules/{uuid}/ Replace a fee schedule
PATCH /api/settings/billing/fee-schedules/{uuid}/ Update a fee schedule
DELETE /api/settings/billing/fee-schedules/{uuid}/ Delete a fee schedule (soft)
settings · cancellation policy 3 endpoints
MethodPathPurposeAuth
GET /api/settings/availability/cancellation-policy/ Get the cancellation policy Bearer
PUT /api/settings/availability/cancellation-policy/ Replace the cancellation policy Bearer
PATCH /api/settings/availability/cancellation-policy/ Update the cancellation policy Bearer
settings · forms 1 endpoint
MethodPathPurposeAuth
GET /api/settings/availability/forms/ List attachable forms Bearer
settings · master · clinicians 6 endpoints
MethodPathPurposeAuth
GET /api/settings/master/clinicians/ List clinicians Bearer
POST /api/settings/master/clinicians/ Create a clinician Bearer
GET /api/settings/master/clinicians/{uuid}/ Get a clinician by id
PUT /api/settings/master/clinicians/{uuid}/ Replace a clinician
PATCH /api/settings/master/clinicians/{uuid}/ Update a clinician
DELETE /api/settings/master/clinicians/{uuid}/ Delete a clinician (soft)
settings · master · codes 7 endpoints
MethodPathPurposeAuth
GET /api/settings/master/codes/ List codes Bearer
POST /api/settings/master/codes/ Create a code Bearer
GET /api/settings/master/codes/{uuid}/ Get a code by id
PUT /api/settings/master/codes/{uuid}/ Replace a code
PATCH /api/settings/master/codes/{uuid}/ Update a code
DELETE /api/settings/master/codes/{uuid}/ Delete a code
PATCH /api/settings/master/codes/{uuid}/status/ Activate / deactivate a code
settings · master · imports 5 endpoints
MethodPathPurposeAuth
GET /api/settings/master/export/ Export a master list as a CSV Bearer
POST /api/settings/master/import/ Import master data from a CSV Bearer
GET /api/settings/master/imports/ List import history Bearer
GET /api/settings/master/imports/{uuid}/ Get one import batch by id
GET /api/settings/master/imports/{uuid}/errors/ Download the failed rows of an import as a CSV
settings · master · instruments 6 endpoints
MethodPathPurposeAuth
GET /api/settings/master/instruments/ List instruments Bearer
POST /api/settings/master/instruments/ Create an instrument Bearer
GET /api/settings/master/instruments/{uuid}/ Get an instrument by id
PUT /api/settings/master/instruments/{uuid}/ Replace an instrument
PATCH /api/settings/master/instruments/{uuid}/ Update an instrument
DELETE /api/settings/master/instruments/{uuid}/ Delete an instrument (soft)
settings · master · payers 6 endpoints
MethodPathPurposeAuth
GET /api/settings/master/payers/ List payers Bearer
POST /api/settings/master/payers/ Create a payer Bearer
GET /api/settings/master/payers/{uuid}/ Get a payer by id
PUT /api/settings/master/payers/{uuid}/ Replace a payer
PATCH /api/settings/master/payers/{uuid}/ Update a payer
DELETE /api/settings/master/payers/{uuid}/ Delete a payer (soft)
settings · master · pharmacies 6 endpoints
MethodPathPurposeAuth
GET /api/settings/master/pharmacies/ List pharmacies Bearer
POST /api/settings/master/pharmacies/ Create a pharmacy Bearer
GET /api/settings/master/pharmacies/{uuid}/ Get a pharmacy by id
PUT /api/settings/master/pharmacies/{uuid}/ Replace a pharmacy
PATCH /api/settings/master/pharmacies/{uuid}/ Update a pharmacy
DELETE /api/settings/master/pharmacies/{uuid}/ Delete a pharmacy (soft)
settings · master · recall types 6 endpoints
MethodPathPurposeAuth
GET /api/settings/master/recall-types/ List recall types Bearer
POST /api/settings/master/recall-types/ Create a recall type Bearer
GET /api/settings/master/recall-types/{uuid}/ Get a recall type by id
PUT /api/settings/master/recall-types/{uuid}/ Replace a recall type
PATCH /api/settings/master/recall-types/{uuid}/ Update a recall type
DELETE /api/settings/master/recall-types/{uuid}/ Delete a recall type (soft)
settings · practice · locations 6 endpoints
MethodPathPurposeAuth
GET /api/settings/practice/locations/ List locations Bearer
POST /api/settings/practice/locations/ Create a location Bearer
GET /api/settings/practice/locations/{uuid}/ Get a location
PUT /api/settings/practice/locations/{uuid}/ Replace a location
PATCH /api/settings/practice/locations/{uuid}/ Update a location
DELETE /api/settings/practice/locations/{uuid}/ Archive a location
settings · practice · print configurations 8 endpoints
MethodPathPurposeAuth
GET /api/settings/practice/print-configurations/ List print configurations Bearer
POST /api/settings/practice/print-configurations/ Create a print configuration Bearer
GET /api/settings/practice/print-configurations/{uuid}/ Get a print configuration
PUT /api/settings/practice/print-configurations/{uuid}/ Replace a print configuration
PATCH /api/settings/practice/print-configurations/{uuid}/ Update a print configuration
DELETE /api/settings/practice/print-configurations/{uuid}/ Delete a print configuration
POST /api/settings/practice/print-configurations/{uuid}/default/ Make this the default print configuration
POST /api/settings/practice/print-configurations/{uuid}/duplicate/ Duplicate a print configuration
settings · practice · profiles 4 endpoints
MethodPathPurposeAuth
GET /api/settings/practice/profiles/ List practice profiles Bearer
GET /api/settings/practice/profiles/{uuid}/ Get a practice profile
PUT /api/settings/practice/profiles/{uuid}/ Replace a practice profile
PATCH /api/settings/practice/profiles/{uuid}/ Update a practice profile
settings · practice · providers 5 endpoints
MethodPathPurposeAuth
POST /api/settings/practice/providers/ Onboard a provider Bearer
GET /api/settings/practice/providers/{uuid}/ Get a provider
PUT /api/settings/practice/providers/{uuid}/ Replace a provider
PATCH /api/settings/practice/providers/{uuid}/ Update a provider
DELETE /api/settings/practice/providers/{uuid}/ Archive a provider
settings · practice · roles 8 endpoints
MethodPathPurposeAuth
GET /api/settings/practice/permissions/ List every permission Bearer
GET /api/settings/practice/roles/ List roles Bearer
POST /api/settings/practice/roles/ Create a role Bearer
GET /api/settings/practice/roles/{uuid}/ Get a role
PUT /api/settings/practice/roles/{uuid}/ Replace a role
PATCH /api/settings/practice/roles/{uuid}/ Update a role
DELETE /api/settings/practice/roles/{uuid}/ Delete a role
PUT /api/settings/practice/roles/{uuid}/permissions/ Replace a role's permissions
settings · practice · staff 5 endpoints
MethodPathPurposeAuth
POST /api/settings/practice/staff/ Onboard a staff member Bearer
GET /api/settings/practice/staff/{uuid}/ Get a staff member
PUT /api/settings/practice/staff/{uuid}/ Replace a staff member
PATCH /api/settings/practice/staff/{uuid}/ Update a staff member
DELETE /api/settings/practice/staff/{uuid}/ Archive a staff member
settings · practice · users 6 endpoints
MethodPathPurposeAuth
GET /api/settings/practice/users/ List practice users Bearer
GET /api/settings/practice/users/me/ The signed-in user Bearer
GET /api/settings/practice/users/{uuid}/ Get one practice user
PATCH /api/settings/practice/users/{uuid}/ Activate or deactivate a practice user
DELETE /api/settings/practice/users/{uuid}/ Archive a practice user
POST /api/settings/practice/users/{uuid}/invite/ Resend an invite
settings · provider · patient flags 6 endpoints
MethodPathPurposeAuth
GET /api/settings/provider/patient-flags/ List my patient flags Bearer
POST /api/settings/provider/patient-flags/ Create a patient flag Bearer
GET /api/settings/provider/patient-flags/{uuid}/ Get one of my patient flags
PUT /api/settings/provider/patient-flags/{uuid}/ Replace a patient flag
PATCH /api/settings/provider/patient-flags/{uuid}/ Update a patient flag
DELETE /api/settings/provider/patient-flags/{uuid}/ Delete a patient flag
settings-audit 3 endpoints
MethodPathPurposeAuth
GET /api/settings/audit/logs/ List audit log entries Bearer
GET /api/settings/audit/logs/export/ Export the audit log as a CSV Bearer
GET /api/settings/audit/logs/{uuid}/ Get one audit log entry
timeclock 7 endpoints
MethodPathPurposeAuth
GET /api/timeclock/shifts/ List shifts since a moment (plus the running one), or a range for the report Bearer
POST /api/timeclock/shifts/break/end/ End the running break Bearer
POST /api/timeclock/shifts/break/start/ Start a break Bearer
POST /api/timeclock/shifts/clock-in/ Clock in Bearer
POST /api/timeclock/shifts/clock-out/ Clock out Bearer
POST /api/timeclock/shifts/manual/ Add time entries by hand (staff accounts only) Bearer
PATCH /api/timeclock/shifts/{uuid}/ Adjust a shift

Getting a token

Log in, then send the access token on every protected call.

# 1. exchange credentials for a token pair
curl -X POST http://127.0.0.1:8000/api/auth/login/ \
     -H 'Content-Type: application/json' \
     -d '{"email":"you@example.com","password":"••••••••"}'

# 2. call a protected route with the access token
curl http://127.0.0.1:8000/api/auth/me/ \
     -H 'Authorization: Bearer <access>'