Reports¶
Read-only analytics for your organization. All routes require reports.read.
Date filters use YYYY-MM-DD unless noted.
Dashboard stats¶
GET /api/v2/public/orgs/{orgId}/reports/stats?from=2026-06-01&to=2026-06-06
Authorization: Bearer {token}
Prescription and order aggregates for the selected date range.
Typical sections in response¶
| Key | Content |
|---|---|
prescriptions |
Counts by status (approved, declined, pending, …) |
orders |
Order volume and revenue |
customers |
Top customers (when date range set) |
Product performance¶
GET /api/v2/public/orgs/{orgId}/reports/product-performance?from=2026-06-01&to=2026-06-06
Authorization: Bearer {token}
Revenue and units per product with period-over-period comparison.
| Query | Default |
|---|---|
from, to |
Last 30 days vs previous 30 days |
Product sales by status¶
GET /api/v2/public/orgs/{orgId}/reports/product-sales?from_date=2026-06-01&to_date=2026-06-06
Authorization: Bearer {token}
Per-product volume (gr) and gross revenue broken down by order status.
| Query | Default |
|---|---|
from_date |
First day of current month |
to_date |
Today |
PharmaOne service fee report¶
Monthly service fee billing report for the org.
| Query | Description |
|---|---|
month |
Single month YYYY-MM |
month_from + month_to |
Range of months |
| (none) | Last 24 months |
Integration notes¶
- Reports are read-only — no side effects.
- Data is scoped to
{orgId}from the URL; integration tokens cannot access other orgs. - Large date ranges may be slower — prefer monthly chunks for ETL jobs.
- For BI pipelines, poll reports on a schedule rather than on every user action.