Get Supplier Product Drilldown
GET/api/reporting/suppliers/:supplier/products/:product
Single-product drill-down for one supplier: the KPI strip (current vs previous window), on-hand units, quoted vs actual lead time from this supplier, landed-cost trend, monthly units purchased vs sold, the alternate suppliers carrying the same SKU, and the most recent PO lines from this supplier.
reports:readGrant this scope to your token under Settings → Developer → Personal Access Tokens.
Authentication: Requires Bearer token (scope: reports)
Path parameters:
- supplier: the Supplier ID
- product: the Product ID
Required parameters:
- period_mode: yoy | qoq | mom | custom
When period_mode=custom, date_from and date_to (YYYY-MM-DD or m/d/Y) are both required.
Optional:
- growth_basis: spend | sales | profit | margin (default: sales)
- min_volume, include_archived
Response fields:
- product {id, sku, name}
- kpis: units_purchased, units_sold, purchase_volume, sales_volume, profit, margin_pct, sell_through_pct, gmroi — each {current, previous, delta_pct}. Amounts and GMROI report % growth (null when previous < 0); margin_pct / sell_through_pct report the percentage-point change (null when either side has no rate). GMROI = profit / inventory cost at window end.
- inventory_on_hand: current on-hand units
- lead_time: quoted lead time in days; avg_actual_lead_time: average days from PO date to full receipt
- landed_cost_trend {dates, costs}: landed unit cost per PO in the current window
- units_chart {buckets (Y-m), purchased, sold}: monthly units, zero-filled
- recent_po_lines: last 10 non-draft PO lines, newest first
Request
Responses
- 200
- 401
- 403
- 404
- 422
- 429
OK
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Not Found
Response Headers
Unprocessable Entity
Response Headers
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.