API Reference
The Production module exposes a read-only REST API so other systems and
in-house tools can pull manufacturing data. Every endpoint is a GET — there is no
create, update, or delete over the API.
Route::get(...).
Two surfaces, one endpoint set
The module ships the same catalogue of endpoints twice, under two different URL prefixes. The paths after the prefix are identical — only the base prefix and the way you authenticate differ.
| Surface | Base prefix | Who it's for | Auth model |
|---|---|---|---|
| Client / Integration API | /api/v1/ |
External systems & server-to-server integrations. | OAuth-style access token carrying the required scope (production:read or manufacturing:read). |
| End-User API | /v1/api/ |
The signed-in user's own apps / front-ends. | The user's session & web permissions (the same permits that gate the screens), plus the module toggle. |
<prefix> + <path>. For example the orders list is
/api/v1/production/orders on the Client API and
/v1/api/production/orders on the End-User API — same data, same shape. The Client API
is served by ProductionApi / ManufacturingApi; the End-User API by
ProductionEuApi / ManufacturingEuApi.
Authentication & access rules
- Scopes (Client API). Production endpoints require the
production:readscope; Manufacturing endpoints requiremanufacturing:read. - Permits (End-User API). Production endpoints are gated by
module_productionplus the caller's Production web permission; Manufacturing endpoints bymodule_manufacturingplus the matching Manufacturing permission. See Permissions & Roles. - Module must be installed & enabled. These routes are injected into the core router only while the Production module is installed, and each area must be turned on (Getting Started).
- Multi-tenant. Requests resolve against the caller's tenant database, so you only ever see your own company's data.
Production endpoints production:read
Prefix each path with /api/v1/ (Client API) or /v1/api/ (End-User API).
Handled by ProductionApi / ProductionEuApi.
| Method | Path | Returns |
|---|---|---|
| GET | production/orders | List of Manufacturing Orders. |
| GET | production/orders/{id} | A single Manufacturing Order (header). |
| GET | production/orders/{id}/components | The order's planned/consumed component lines. |
| GET | production/orders/{id}/operations | The order's routing operations. |
| GET | production/boms | List of Bills of Materials. |
| GET | production/boms/{id} | A single BOM header. |
| GET | production/boms/{id}/components | The BOM's component (raw-material) lines. |
| GET | production/boms/{id}/operations | The BOM's routing operations. |
| GET | production/work-centers | List of Work Centers. |
| GET | production/work-centers/{id} | A single Work Center. |
| GET | production/reports/summary | Manufacturing Order status summary report. |
| GET | production/reports/output | Output-by-period report (finished goods produced). |
| GET | production/reports/consumption | Component consumption report. |
| GET | production/overview | Overview dashboard counts (MOs by status, BOM & work-center totals). |
These mirror the screens on Overview, Reports, Manufacturing Orders, Bill of Materials, and Work Centers.
Manufacturing endpoints manufacturing:read
Prefix each path with /api/v1/ or /v1/api/. Handled by
ManufacturingApi / ManufacturingEuApi. Available only when the advanced
module_manufacturing area is enabled.
Work Orders, BOM, Work Centers, UoM & ECO
| Method | Path | Returns |
|---|---|---|
| GET | manufacturing/work-orders | List of Work Orders. |
| GET | manufacturing/work-orders/{id} | A single Work Order. |
| GET | manufacturing/work-orders/{id}/operations | The Work Order's routing operations. |
| GET | manufacturing/work-orders/{id}/progress | Progress / completion status of the Work Order. |
| GET | manufacturing/boms | List of advanced (multi-level) BOMs. |
| GET | manufacturing/boms/{id} | A single advanced BOM header. |
| GET | manufacturing/boms/{id}/components | The advanced BOM's items. |
| GET | manufacturing/boms/{id}/operations | The advanced BOM's routing operations. |
| GET | manufacturing/work-centers | List of Manufacturing Work Centers. |
| GET | manufacturing/work-centers/{id} | A single Manufacturing Work Center. |
| GET | manufacturing/uoms | List of Units of Measure. |
| GET | manufacturing/uoms/{id} | A single Unit of Measure. |
| GET | manufacturing/ecos | List of Engineering Change Orders. |
| GET | manufacturing/ecos/{id} | A single Engineering Change Order. |
Quality Control
| Method | Path | Returns |
|---|---|---|
| GET | manufacturing/qc-plans | List of QC plans. |
| GET | manufacturing/qc-plans/{id} | A single QC plan. |
| GET | manufacturing/qc-plans/{id}/parameters | The plan's QC parameters. |
| GET | manufacturing/inspections | List of inspections. |
| GET | manufacturing/inspections/{id} | A single inspection. |
| GET | manufacturing/inspections/{id}/measurements | The inspection's recorded measurements. |
| GET | manufacturing/ncrs | List of Non-Conformance Reports. |
| GET | manufacturing/ncrs/{id} | A single NCR. |
| GET | manufacturing/ncrs/{id}/capa | CAPA records linked to the NCR. |
| GET | manufacturing/capas | List of CAPA records. |
| GET | manufacturing/capas/{id} | A single CAPA record. |
Materials, Costing, Labor & Compliance
| Method | Path | Returns |
|---|---|---|
| GET | manufacturing/requisitions | List of material requisitions. |
| GET | manufacturing/requisitions/{id} | A single requisition. |
| GET | manufacturing/requisitions/{id}/items | The requisition's item lines. |
| GET | manufacturing/issues | List of material issues. |
| GET | manufacturing/issues/{id} | A single material issue. |
| GET | manufacturing/costing/standard | List of standard costs. |
| GET | manufacturing/costing/standard/{id} | A single standard cost record. |
| GET | manufacturing/costing/actual | List of actual costs. |
| GET | manufacturing/costing/actual/{id} | A single actual cost record. |
| GET | manufacturing/labor | List of labor tracking entries. |
| GET | manufacturing/labor/{id} | A single labor entry. |
| GET | manufacturing/downtime | List of downtime entries. |
| GET | manufacturing/downtime/{id} | A single downtime entry. |
| GET | manufacturing/compliance/expiring | Compliance documents that are expiring soon. |
| GET | manufacturing/compliance | List of compliance documents. |
| GET | manufacturing/compliance/{id} | A single compliance document. |
| GET | manufacturing/settings | Manufacturing module settings. |
manufacturing/compliance/expiring are registered before their numeric
{id} peers so the word expiring is never mistaken for an id.
Path parameters & conventions
{id}- A numeric record id (constrained to
[0-9]+). Non-numeric values will not match the route. - Nested resources
- Child collections hang off their parent, e.g.
…/orders/{id}/components,…/qc-plans/{id}/parameters,…/ncrs/{id}/capa. - Method
- Always
GET. Any write verb (POST/PUT/DELETE) is not routed. - Response
- JSON, scoped to the authenticated tenant.
Example requests
The same call on each surface — swap only the prefix and the auth header:
# Client / Integration API (token with production:read scope)
GET /api/v1/production/orders
GET /api/v1/production/orders/42
GET /api/v1/production/orders/42/components
# Client / Integration API (token with manufacturing:read scope)
GET /api/v1/manufacturing/inspections/17/measurements
GET /api/v1/manufacturing/compliance/expiring
# End-User API (signed-in session + web permission)
GET /v1/api/production/reports/summary
GET /v1/api/manufacturing/work-orders/9/progressGood to know
- A
404on a manufacturing path usually meansmodule_manufacturingis off (the advanced routes are only injected when that area is enabled). - A
403/authorization error means the token is missing the required scope, or the end-user lacks the matching web permission. - There is deliberately no write API — automate data entry through the UI, and use the API to read back state for dashboards, BI, and integrations.