Miridia
Portal
Manufacturing

Work orders

The work orders operations of the Core API.

Base URL: https://api.miridia.io. Read Authentication and Conventions before you call these operations.

MethodPathOperation
GET/api/v1/work-ordersGet work orders
POST/api/v1/work-ordersCreate work order
GET/api/v1/work-orders/{workOrderId}Get work order
PUT/api/v1/work-orders/{workOrderId}Update work order
GET/api/v1/work-orders/{workOrderId}/revisionsGet work order revisions
POST/api/v1/work-orders/{workOrderId}/startStart work order
POST/api/v1/work-orders/{workOrderId}/stepsAdd work order step
PUT/api/v1/work-orders/{workOrderId}/steps/{stepId}Update work order step
DELETE/api/v1/work-orders/{workOrderId}/steps/{stepId}Delete work order step
POST/api/v1/work-orders/{workOrderId}/completeComplete work order
POST/api/v1/work-orders/{workOrderId}/cancelCancel work order
POST/api/v1/work-orders/{workOrderId}/attachmentsAdd work order file attachment
DELETE/api/v1/work-orders/{workOrderId}/attachments/{attachmentId}Remove work order file attachment
POST/api/v1/work-orders/{workOrderId}/tracesAdd work order trace
GET/api/v1/work-orders/{workOrderId}/commentsGet work order comments
POST/api/v1/work-orders/{workOrderId}/commentsAdd work order comment
DELETE/api/v1/work-orders/{workOrderId}/comments/{commentId}Delete work order comment

Get work orders

GET/api/v1/work-orders

Access. Send a bearer token or an API key. The caller needs the WorkOrders view permission.

Parameters

NameInTypeRequiredDescription
Pagequeryinteger (int32)NoLimits: minimum 1.
PageSizequeryinteger (int32)NoLimits: minimum 1, maximum 100.
$orderbyquerystringNoExample: "created_at desc" or "name asc"
$filterquerystringNoApply a ODATA style filter to the query to add a fixed constraint. For example, if you want to filter by the creation date, you would set the filter to "created_at ge 2022-01-01". Or if you want to filter by a specific status, you would set the filter to "status eq 'active'".
$searchquerystringNoProvide a search value which would inherit the 'CONTAINS' behaviour.
productIdquerystring (uuid)No
statusqueryenum WorkOrderStatusNoOne of: Planned, InProgress, Completed, Cancelled.
fromDatequerystring (date-time)No
toDatequerystring (date-time)No

Response

200. Returns a PagedResult envelope. Each item in data is WorkOrderResponse.

Request
curl -X GET "https://api.miridia.io/api/v1/work-orders" \
  -H "Authorization: Bearer $MIRIDIA_TOKEN" \
  -H "X-Business-Id: $MIRIDIA_BUSINESS_ID"

Create work order

POST/api/v1/work-orders

Access. Send a bearer token or an API key. The caller needs the WorkOrders modify permission.

Request body

Send JSON with the shape CreateWorkOrderCommand.

FieldTypeRequiredDescription
outputProductIdstring (uuid)No
referencestringNo
productionLocationIdstring (uuid)No
assignedToUserIdstring (uuid)NoThe user who should run this work order. Optional; null leaves it unassigned.
plannedQuantitynumber (double)No
scheduledStartstring (date-time)No
descriptionstringNoRich-text (HTML) description entered by a person. Not sanitized server-side.
templateIdstring (uuid)NoOptional work order template. When given, its description prefills the work order's description if the request supplies none, and its steps are appended after the process-snapshot steps with continuing step numbers.

Response

200. Returns a SingleResult envelope. The data field is WorkOrderResponse.

Request
curl -X POST "https://api.miridia.io/api/v1/work-orders" \
  -H "Authorization: Bearer $MIRIDIA_TOKEN" \
  -H "X-Business-Id: $MIRIDIA_BUSINESS_ID" \
  -H "Content-Type: application/json" \
  -d '{
  "outputProductId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "reference": "string",
  "productionLocationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "assignedToUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "plannedQuantity": 0,
  "scheduledStart": "2026-09-29T08:00:00Z",
  "description": "string",
  "templateId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}'

Get work order

GET/api/v1/work-orders/{workOrderId}

Access. Send a bearer token or an API key. The caller needs the WorkOrders view permission.

Parameters

NameInTypeRequiredDescription
workOrderIdpathstring (uuid)Yes

Response

200. Returns a SingleResult envelope. The data field is WorkOrderResponse.

Request
curl -X GET "https://api.miridia.io/api/v1/work-orders/{workOrderId}" \
  -H "Authorization: Bearer $MIRIDIA_TOKEN" \
  -H "X-Business-Id: $MIRIDIA_BUSINESS_ID"

Update work order

PUT/api/v1/work-orders/{workOrderId}

Access. Send a bearer token or an API key. The caller needs the WorkOrders modify permission.

Parameters

NameInTypeRequiredDescription
workOrderIdpathstring (uuid)Yes

Request body

Send JSON with the shape UpdateWorkOrderCommand. Edits a work order while it is still Planned. Every successful edit records the prior state as a revision and bumps the work order's revision number.

FieldTypeRequiredDescription
workOrderIdstring (uuid)No
plannedQuantitynumber (double)No
scheduledStartstring (date-time)No
productionLocationIdstring (uuid)No
assignedToUserIdstring (uuid)NoThe user who should run this work order. Null clears the assignment.
descriptionstringNo
changeNotestringNo
stepsWorkOrderStepEditRequest[]NoTitle/instructions edits to apply to existing steps. To add or remove a step, use POST /api/v1/work-orders/{workOrderId}/steps or DELETE /api/v1/work-orders/{workOrderId}/steps/{stepId} instead.

Response

200. Returns a SingleResult envelope. The data field is WorkOrderResponse.

Request
curl -X PUT "https://api.miridia.io/api/v1/work-orders/{workOrderId}" \
  -H "Authorization: Bearer $MIRIDIA_TOKEN" \
  -H "X-Business-Id: $MIRIDIA_BUSINESS_ID" \
  -H "Content-Type: application/json" \
  -d '{
  "workOrderId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "plannedQuantity": 0,
  "scheduledStart": "2026-09-29T08:00:00Z",
  "productionLocationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "assignedToUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "description": "string",
  "changeNote": "string",
  "steps": [
    {
      "stepId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "title": "string",
      "instructions": "string"
    }
  ]
}'

Get work order revisions

GET/api/v1/work-orders/{workOrderId}/revisions

Access. Send a bearer token or an API key. The caller needs the WorkOrders view permission.

Parameters

NameInTypeRequiredDescription
workOrderIdpathstring (uuid)Yes

Response

200. Returns a JSON array. Each item is WorkOrderRevisionResponse.

Request
curl -X GET "https://api.miridia.io/api/v1/work-orders/{workOrderId}/revisions" \
  -H "Authorization: Bearer $MIRIDIA_TOKEN" \
  -H "X-Business-Id: $MIRIDIA_BUSINESS_ID"
Response
[
  {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "revisionNumber": 0,
    "snapshot": "string",
    "changeNote": "string",
    "changedByUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "changedByUserName": "string",
    "dateCreated": "2026-09-29T08:00:00Z"
  }
]

Start work order

POST/api/v1/work-orders/{workOrderId}/start

Access. Send a bearer token or an API key. The caller needs the WorkOrders modify permission.

Parameters

NameInTypeRequiredDescription
workOrderIdpathstring (uuid)Yes

Response

200. Returns a SingleResult envelope. The data field is WorkOrderResponse.

Request
curl -X POST "https://api.miridia.io/api/v1/work-orders/{workOrderId}/start" \
  -H "Authorization: Bearer $MIRIDIA_TOKEN" \
  -H "X-Business-Id: $MIRIDIA_BUSINESS_ID"

Add work order step

POST/api/v1/work-orders/{workOrderId}/steps

Access. Send a bearer token or an API key. The caller needs the WorkOrders modify permission.

Parameters

NameInTypeRequiredDescription
workOrderIdpathstring (uuid)Yes

Request body

Send JSON with the shape AddWorkOrderStepCommand. Adds a step to a work order that is still Planned. The new step starts pending, the same status a create-time step starts in.

FieldTypeRequiredDescription
workOrderIdstring (uuid)No
titlestringNo
instructionsstringNoRich-text (HTML) instructions entered by a person. Not sanitized server-side.
positioninteger (int32)NoThe 1-based step number the new step should take. Every existing step at or after this position moves one place later. Omit to append the step at the end.
assignedToUserIdstring (uuid)NoThe user who should carry out this step. Optional; null leaves it unassigned.
requiresQualityCheckbooleanNoMarks the new step as a quality checkpoint. Defaults to false. A new step never starts with a recorded result.
changeNotestringNo

Response

200. Returns a SingleResult envelope. The data field is WorkOrderResponse.

Request
curl -X POST "https://api.miridia.io/api/v1/work-orders/{workOrderId}/steps" \
  -H "Authorization: Bearer $MIRIDIA_TOKEN" \
  -H "X-Business-Id: $MIRIDIA_BUSINESS_ID" \
  -H "Content-Type: application/json" \
  -d '{
  "workOrderId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "title": "string",
  "instructions": "string",
  "position": 0,
  "assignedToUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "requiresQualityCheck": true,
  "changeNote": "string"
}'

Update work order step

PUT/api/v1/work-orders/{workOrderId}/steps/{stepId}

Access. Send a bearer token or an API key. The caller needs the WorkOrders modify permission.

Parameters

NameInTypeRequiredDescription
workOrderIdpathstring (uuid)Yes
stepIdpathstring (uuid)Yes

Request body

Send JSON with the shape UpdateWorkOrderStepCommand.

FieldTypeRequiredDescription
workOrderIdstring (uuid)No
stepIdstring (uuid)No
statusenum WorkOrderStepStatusNoOne of: Pending, InProgress, Done, Skipped.
startedAtstring (date-time)No
completedAtstring (date-time)No
completedByUserIdstring (uuid)No
assignedToUserIdstring (uuid)NoThe user who should carry out this step. Null clears the assignment.
requiresQualityCheckbooleanNoMarks this step as a quality checkpoint. Null leaves the current value unchanged.
qualityCheckPassedbooleanNoRecords the pass/fail result of the quality check. Null leaves the current value unchanged; the step must already require a quality check (after this update is applied) for a non-null value to be accepted.
notesstringNo

Response

200. Returns a SingleResult envelope. The data field is WorkOrderResponse.

Request
curl -X PUT "https://api.miridia.io/api/v1/work-orders/{workOrderId}/steps/{stepId}" \
  -H "Authorization: Bearer $MIRIDIA_TOKEN" \
  -H "X-Business-Id: $MIRIDIA_BUSINESS_ID" \
  -H "Content-Type: application/json" \
  -d '{
  "workOrderId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "stepId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "status": "Pending",
  "startedAt": "2026-09-29T08:00:00Z",
  "completedAt": "2026-09-29T08:00:00Z",
  "completedByUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "assignedToUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "requiresQualityCheck": true,
  "qualityCheckPassed": true,
  "notes": "string"
}'

Delete work order step

DELETE/api/v1/work-orders/{workOrderId}/steps/{stepId}

Access. Send a bearer token or an API key. The caller needs the WorkOrders modify permission.

Parameters

NameInTypeRequiredDescription
workOrderIdpathstring (uuid)Yes
stepIdpathstring (uuid)Yes

Response

200. Returns a SingleResult envelope. The data field is WorkOrderResponse.

Request
curl -X DELETE "https://api.miridia.io/api/v1/work-orders/{workOrderId}/steps/{stepId}" \
  -H "Authorization: Bearer $MIRIDIA_TOKEN" \
  -H "X-Business-Id: $MIRIDIA_BUSINESS_ID"

Complete work order

POST/api/v1/work-orders/{workOrderId}/complete

Access. Send a bearer token or an API key. The caller needs the WorkOrders modify permission.

Parameters

NameInTypeRequiredDescription
workOrderIdpathstring (uuid)Yes

Request body

Send JSON with the shape CompleteWorkOrderCommand.

FieldTypeRequiredDescription
workOrderIdstring (uuid)No
producedQuantitynumber (double)No
scrappedQuantitynumber (double)No
scrapReasonstringNoExplains the scrapped quantity. Required when scrappedQuantity is greater than zero; must be left blank when it is zero.
actualEndstring (date-time)No
productionLocationIdstring (uuid)NoOptional production location. Used when the work order has no location set (or to override it). A location is required to post inventory movements on completion.
materialConsumptionWorkOrderMaterialConsumptionRequest[]NoOptional per-material actual consumption. Materials not listed here are backflushed at their planned quantity.
outputLotNumberstringNoOptional lot number for the produced output.
outputLotExpiryDatestring (date-time)NoOptional expiry date for the lot named by outputLotNumber.
serialNumbersstring[]NoOptional serial numbers for the produced output. Must not exceed producedQuantity and must not contain a duplicate value. Linked to the lot when outputLotNumber is also given.

Response

200. Returns a SingleResult envelope. The data field is WorkOrderResponse.

Request
curl -X POST "https://api.miridia.io/api/v1/work-orders/{workOrderId}/complete" \
  -H "Authorization: Bearer $MIRIDIA_TOKEN" \
  -H "X-Business-Id: $MIRIDIA_BUSINESS_ID" \
  -H "Content-Type: application/json" \
  -d '{
  "workOrderId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "producedQuantity": 0,
  "scrappedQuantity": 0,
  "scrapReason": "string",
  "actualEnd": "2026-09-29T08:00:00Z",
  "productionLocationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "materialConsumption": [
    {
      "workOrderMaterialId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "consumedQuantity": 0
    }
  ],
  "outputLotNumber": "string",
  "outputLotExpiryDate": "2026-09-29T08:00:00Z",
  "serialNumbers": [
    "string"
  ]
}'

Cancel work order

POST/api/v1/work-orders/{workOrderId}/cancel

Access. Send a bearer token or an API key. The caller needs the WorkOrders modify permission.

Parameters

NameInTypeRequiredDescription
workOrderIdpathstring (uuid)Yes

Response

200. Returns a SingleResult envelope. The data field is WorkOrderResponse.

Request
curl -X POST "https://api.miridia.io/api/v1/work-orders/{workOrderId}/cancel" \
  -H "Authorization: Bearer $MIRIDIA_TOKEN" \
  -H "X-Business-Id: $MIRIDIA_BUSINESS_ID"

Add work order file attachment

POST/api/v1/work-orders/{workOrderId}/attachments

Step 2 of file attachment: associates a previously uploaded file with this work order. Upload the file first via POST /api/files/single, then pass the returned FileAttachment id here.

Access. Send a bearer token or an API key. The caller needs the WorkOrders modify permission.

Parameters

NameInTypeRequiredDescription
workOrderIdpathstring (uuid)Yes

Request body

Send JSON with the shape AddFileAttachmentRequest. Adds an attachment to an entity's metadata attachment collection. Two shapes, discriminated by Type: - File (default). title and url are required and taken as-is from the request; FileAttachmentId on the resulting metadata entry stays Guid.Empty.

FieldTypeRequiredDescription
typeenum MetadataAttachmentTypeNoOne of: File, Link.
fileIdstring (uuid)NoRequired when Type is File.
titlestringNoRequired when Type is Link. Ignored for File.
urlstringNoRequired when Type is Link. Ignored for File.
descriptionstringNo

Response

200. Returns a SingleResult envelope. The data field is WorkOrderResponse.

Request
curl -X POST "https://api.miridia.io/api/v1/work-orders/{workOrderId}/attachments" \
  -H "Authorization: Bearer $MIRIDIA_TOKEN" \
  -H "X-Business-Id: $MIRIDIA_BUSINESS_ID" \
  -H "Content-Type: application/json" \
  -d '{
  "type": "File",
  "fileId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "title": "string",
  "url": "string",
  "description": "string"
}'

Remove work order file attachment

DELETE/api/v1/work-orders/{workOrderId}/attachments/{attachmentId}

Removes a previously associated attachment (file or link) from this work order by its metadata attachment entry id.

Access. Send a bearer token or an API key. The caller needs the WorkOrders modify permission.

Parameters

NameInTypeRequiredDescription
workOrderIdpathstring (uuid)Yes
attachmentIdpathstring (uuid)Yes

Response

200. Returns a SingleResult envelope. The data field is WorkOrderResponse.

Request
curl -X DELETE "https://api.miridia.io/api/v1/work-orders/{workOrderId}/attachments/{attachmentId}" \
  -H "Authorization: Bearer $MIRIDIA_TOKEN" \
  -H "X-Business-Id: $MIRIDIA_BUSINESS_ID"

Add work order trace

POST/api/v1/work-orders/{workOrderId}/traces

Records a manual activity trace against the work order. The four lifecycle points (create, start, complete, cancel) already write their own trace automatically.

Access. Send a bearer token or an API key. The caller needs the WorkOrders modify permission.

Parameters

NameInTypeRequiredDescription
workOrderIdpathstring (uuid)Yes

Request body

Send JSON with the shape AddActivityTraceRequest.

FieldTypeRequiredDescription
titlestringYes
messagestringYes
codestringNo
sourcestringNo
actionLinkstringNo
levelenum NotificationLevelNoOne of: Standard, Info, Warning, Error, Success, Recommendation.
iconenum MdiIconNoOne of: None, SyncAlert, Autorenew, Check, CheckMarkedCircle, AlertCircle, TruckDeliveryOutline, TruckFastOutline, PackageCheck, Warehouse, SwapHorizontal, AccountCheck, AccountRemove, AccountCancel, Delete.

Response

200. Returns a SingleResult envelope. The data field is WorkOrderResponse.

Request
curl -X POST "https://api.miridia.io/api/v1/work-orders/{workOrderId}/traces" \
  -H "Authorization: Bearer $MIRIDIA_TOKEN" \
  -H "X-Business-Id: $MIRIDIA_BUSINESS_ID" \
  -H "Content-Type: application/json" \
  -d '{
  "title": "string",
  "message": "string",
  "code": "string",
  "source": "string",
  "actionLink": "string",
  "level": "Standard",
  "icon": "SyncAlert"
}'

Get work order comments

GET/api/v1/work-orders/{workOrderId}/comments

Returns the user-authored comments on this work order, oldest first.

Access. Send a bearer token or an API key. The caller needs the WorkOrders view permission.

Parameters

NameInTypeRequiredDescription
workOrderIdpathstring (uuid)Yes

Response

200. Returns a PagedResult envelope. Each item in data is WorkOrderCommentResponse.

Request
curl -X GET "https://api.miridia.io/api/v1/work-orders/{workOrderId}/comments" \
  -H "Authorization: Bearer $MIRIDIA_TOKEN" \
  -H "X-Business-Id: $MIRIDIA_BUSINESS_ID"
Response
{
  "count": 0,
  "totalCount": 0,
  "page": 0,
  "finalPage": 0,
  "pageSize": 0,
  "hasMore": true,
  "statusCode": "OK",
  "data": [
    {
      "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "workOrderId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "comment": "string",
      "user": {},
      "dateCreated": "2026-09-29T08:00:00Z"
    }
  ],
  "messages": [
    {
      "title": "string",
      "message": "string",
      "level": "Standard",
      "icon": "SyncAlert",
      "code": "string"
    }
  ]
}

Add work order comment

POST/api/v1/work-orders/{workOrderId}/comments

Adds a comment to the work order, attributed to the authenticated user.

Access. Send a bearer token or an API key. The caller needs the WorkOrders modify permission.

Parameters

NameInTypeRequiredDescription
workOrderIdpathstring (uuid)Yes

Request body

Send JSON with the shape WorkOrderCommentRequest.

FieldTypeRequiredDescription
commentstringYesLimits: maximum 4000 characters.

Response

200. Returns a SingleResult envelope. The data field is WorkOrderCommentResponse.

Request
curl -X POST "https://api.miridia.io/api/v1/work-orders/{workOrderId}/comments" \
  -H "Authorization: Bearer $MIRIDIA_TOKEN" \
  -H "X-Business-Id: $MIRIDIA_BUSINESS_ID" \
  -H "Content-Type: application/json" \
  -d '{
  "comment": "string"
}'
Response
{
  "message": "string",
  "messages": [
    {
      "title": "string",
      "message": "string",
      "level": "Standard",
      "icon": "SyncAlert",
      "code": "string"
    }
  ],
  "data": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "workOrderId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "comment": "string",
    "user": {
      "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "displayName": "string",
      "firstName": "string",
      "lastName": "string",
      "email": "string",
      "phoneNumber": "string"
    },
    "dateCreated": "2026-09-29T08:00:00Z"
  },
  "statusCode": "OK",
  "canRead": true,
  "canEdit": true,
  "canDelete": true
}

Delete work order comment

DELETE/api/v1/work-orders/{workOrderId}/comments/{commentId}

Deletes a comment from the work order.

Access. Send a bearer token or an API key. The caller needs the WorkOrders modify permission.

Parameters

NameInTypeRequiredDescription
workOrderIdpathstring (uuid)Yes
commentIdpathstring (uuid)Yes

Response

200. Returns a SingleResult envelope. The data field is boolean.

Request
curl -X DELETE "https://api.miridia.io/api/v1/work-orders/{workOrderId}/comments/{commentId}" \
  -H "Authorization: Bearer $MIRIDIA_TOKEN" \
  -H "X-Business-Id: $MIRIDIA_BUSINESS_ID"
Response
{
  "message": "string",
  "messages": [
    {
      "title": "string",
      "message": "string",
      "level": "Standard",
      "icon": "SyncAlert",
      "code": "string"
    }
  ],
  "data": true,
  "statusCode": "OK",
  "canRead": true,
  "canEdit": true,
  "canDelete": true
}

Models

The operations on this page use these object types. Select a type to see its fields.

ActivityTrace

Refer to ActionMessage. An activity trace becomes an action message once the response to the client is sent.

FieldTypeDescription
idstring (uuid)
activityTypeenum ActivityTypeOne of: System, User.
userIdstring (uuid)
codestring
titlestring
messagestring
sourcestring
actionLinkstring
levelenum NotificationLevelOne of: Standard, Info, Warning, Error, Success, Recommendation.
dateOfActivitystring (date-time)
isDashboardOnlyboolean
iconenum MdiIconOne of: None, SyncAlert, Autorenew, Check, CheckMarkedCircle, AlertCircle, TruckDeliveryOutline, TruckFastOutline, PackageCheck, Warehouse, SwapHorizontal, AccountCheck, AccountRemove, AccountCancel, Delete.
MetadataFileAttachment

Not quite as complete as the normal FileAttachment aggregate.

FieldTypeDescription
idstring (uuid)
typeenum MetadataAttachmentTypeOne of: File, Link.
fileAttachmentIdstring (uuid)Left as Guid.Empty for Link entries.
titlestring
urlstring
contentTypestring
descriptionstring
PrimitiveUserResponse
FieldTypeDescription
idstring (uuid)
displayNamestring
firstNamestring
lastNamestring
emailstring
phoneNumberstring
WorkOrderCommentResponse
FieldTypeDescription
idstring (uuid)
workOrderIdstring (uuid)
commentstring
userPrimitiveUserResponse
dateCreatedstring (date-time)
WorkOrderMaterialConsumptionRequest

Per-material actual consumption supplied at completion. Materials not listed are backflushed at their planned quantity.

FieldTypeDescription
workOrderMaterialIdstring (uuid)
consumedQuantitynumber (double)
WorkOrderMaterialResponse
FieldTypeDescription
idstring (uuid)
componentProductIdstring (uuid)
componentTitlestring
componentCodestring
componentSkustring
componentTypeenum ProductTypeOne of: FinishedGood, RawMaterial, Component, Consumable, Service.
plannedQuantitynumber (double)
consumedQuantitynumber (double)
unitenum UnitOfMeasureOne of: Each, Kilogram, Gram, Litre, Millilitre, Metre, Centimetre, SquareMetre, CubicMetre, Pair, Pack, Box, Roll, Sheet.
WorkOrderProducedLotResponse
FieldTypeDescription
idstring (uuid)
lotNumberstring
expiryDatestring (date-time)
WorkOrderResponse
FieldTypeDescription
idstring (uuid)
referencestring
descriptionstring
revisionNumberinteger (int32)
outputProductIdstring (uuid)
outputProductTitlestring
outputProductCodestring
bomIdstring (uuid)
bomRevisionNumberinteger (int32)
processIdstring (uuid)
processRevisionNumberinteger (int32)
productionLocationIdstring (uuid)
productionLocationTitlestring
assignedToUserIdstring (uuid)The user who should run this work order. Null when unassigned.
assignedToNamestring
statusenum WorkOrderStatusOne of: Planned, InProgress, Completed, Cancelled.
plannedQuantitynumber (double)
producedQuantitynumber (double)
scrappedQuantitynumber (double)
scrapReasonstringExplains the scrapped quantity. Null when nothing was scrapped.
scheduledStartstring (date-time)
actualStartstring (date-time)
actualEndstring (date-time)
totalCostnumber (double)
unitCostnumber (double)
materialsWorkOrderMaterialResponse[]
stepsWorkOrderStepResponse[]
producedLotWorkOrderProducedLotResponse
serialNumbersWorkOrderSerialNumberResponse[]
attachmentsMetadataFileAttachment[]File attachments associated with the work order (batch records, quality certificates, photographs).
tracesActivityTrace[]Activity traces recorded against the work order.
WorkOrderRevisionResponse
FieldTypeDescription
idstring (uuid)
revisionNumberinteger (int32)
snapshotstring
changeNotestring
changedByUserIdstring (uuid)
changedByUserNamestring
dateCreatedstring (date-time)
WorkOrderSerialNumberResponse
FieldTypeDescription
idstring (uuid)
serialNumberstring
statusenum SerialNumberStatusOne of: Available, Consumed, Shipped, Scrapped.
WorkOrderStepEditRequest

An edit to an existing work order step's title and/or instructions, supplied when updating a work order. A null field leaves that field unchanged; steps cannot be added or removed here.

FieldTypeDescription
stepIdstring (uuid)
titlestring
instructionsstring
WorkOrderStepResponse
FieldTypeDescription
idstring (uuid)
stepNumberinteger (int32)
titlestring
instructionsstring
statusenum WorkOrderStepStatusOne of: Pending, InProgress, Done, Skipped.
startedAtstring (date-time)
completedAtstring (date-time)
completedByUserIdstring (uuid)
completedByNamestring
assignedToUserIdstring (uuid)The user who should carry out this step. Null when unassigned.
assignedToNamestring
requiresQualityCheckbooleanMarks this step as a quality checkpoint.
qualityCheckPassedbooleanThe recorded pass/fail result of the quality check. Null until recorded.
notesstring