Skip to content

PMS API Endpoints

The Patient Management System (PMS) API at /lab/pms covers day-to-day lab operations: patients, invoices, samples, results, and home sampling. All routes require a valid JWT with tenant context.

Dashboard

MethodEndpointPermissionDescription
GET/lab/pms/dashboardSummary stats (today's invoices, pending samples)
GET/lab/pms/dashboard/chartsChart data for dashboard widgets

Patients

MethodEndpointPermissionDescription
GET/lab/pms/patientspatients.viewList patients (paginated)
GET/lab/pms/patients/by-phonepatients.viewLookup by phone
GET/lab/pms/patients/by-health-cardpatients.viewLookup by health card
GET/lab/pms/patients/{id}patients.viewPatient detail
POST/lab/pms/patientspatients.createCreate patient
PUT/lab/pms/patients/{id}patients.editUpdate patient
DELETE/lab/pms/patients/{id}patients.deleteSoft-delete patient

Collection centers

MethodEndpointPermissionDescription
GET/lab/pms/collection-centersList branches
POST/lab/pms/collection-centersCreate branch
PUT/lab/pms/collection-centers/{id}Update branch

Test catalog

MethodEndpointPermissionDescription
GET/lab/pms/test-departmentsList departments
GET/lab/pms/teststests.viewSearch tests
GET/lab/pms/tests/{id}tests.viewTest detail
GET/lab/pms/tests/{id}/pricingPrice for referral/center
POST/lab/pms/teststests.createCreate test
PUT/lab/pms/tests/{id}tests.editUpdate test

Invoices

MethodEndpointPermissionDescription
GET/lab/pms/invoicesinvoices.viewList invoices
GET/lab/pms/invoices/{id}invoices.viewInvoice detail
POST/lab/pms/invoicesinvoices.createCreate invoice
PUT/lab/pms/invoices/{id}invoices.editUpdate invoice
DELETE/lab/pms/invoices/{id}invoices.deleteSoft-delete invoice
POST/lab/pms/invoices/{id}/paymentsinvoices.editRecord payment

Results and reports

MethodEndpointPermissionDescription
GET/lab/pms/invoices/{id}/result-entryresults_entry.viewResult entry form
PUT/lab/pms/invoices/{id}/result-entryresults_entry.editSave results
POST/lab/pms/invoices/{id}/result-entry/approveresult_verification.editApprove report
GET/lab/pms/invoices/{id}/reportinvoices.viewReport data
POST/lab/pms/invoices/{id}/send-reportreport_delivery.createEmail/SMS report
POST/lab/pms/invoices/{id}/send-notificationquick.send_smsSend notification
POST/lab/pms/invoices/{id}/report-printedMark as printed

Samples

MethodEndpointPermissionDescription
GET/lab/pms/invoices/{id}/samplessamples.viewList samples
GET/lab/pms/invoices/{id}/samples/stickers.pdfsamples.viewBarcode stickers PDF
GET/lab/pms/invoices/{id}/lab-orderLab order sheet
GET/lab/pms/invoices/{id}/historyinvoices.viewAudit history

Referrals

MethodEndpointDescription
GET/lab/pms/referralsList referral doctors

Home sampling

MethodEndpointDescription
GET/lab/pms/home-samplingList requests
GET/lab/pms/home-sampling/{id}Request detail
GET/lab/pms/home-sampling/{id}/invoice-draftPre-filled invoice
PUT/lab/pms/home-sampling/{id}/statusUpdate status

Common query parameters

GET /lab/pms/invoices?page=1&pageSize=20&search=ahmad&sortBy=createdAt&sortDirection=desc

Ease Lab — Cloud Pathology Lab Management