Ordoro Manufacturing Order API
Manufacturing Orders are used for creating and tracking Bill of Material orders. A Manufacturing Order is assigned to a warehouse and may have multiple lines and tags.
Manufacturing Orders are used for creating and tracking Bill of Material orders. A Manufacturing Order is assigned to a warehouse and may have multiple lines and tags.
openapi: 3.0.0
info:
title: Ordoro API Documentation Address Manufacturing Order API
description: "# Introduction\n\nThe Ordoro API can be used to access data or integrate to add functionality to Ordoro. The Ordoro API uses the application/json Content-Type. The Ordoro API documentation is in beta. [See our forum](https://forums.ordoro.com) for questions or comments to help us improve the docs or request features.\n#### Note: Any routes with a /v3 designation will not allow for trailing slashes while all other routes and endpoints will require a trailing slash.\n\n# Authentication\n\nThe Ordoro API uses [Basic HTTP Authentication](http://en.wikipedia.org/wiki/Basic_access_authentication). Please create API keys via Settings->Account Settings->API Keys in app and use those for basic auth in your API requests.\n\n# Additional Resources\n\nFor a look at some code examples on how to use the API check out our github repo https://github.com/ordoro/api-examples.\n\n# API Responses\n\nMost of our endpoints return either a list of objects or a single object instance. They share similar response shapes.\n\n## List endpoints\n\nList endpoints respond with the following parameters:\n\n| Name | Type | Description |\n|----------------|--------------------------|-------------|\n| `count` | int | The total number of objects returned by a query ( **not** necessarily the number of objects included in a response). |\n| `limit` | int | The maximum number of objects returned per request. Defaults to 10. Maximum is 100. You can set this as a URL parameter. |\n| `offset` | int | The number of objects being offset in the response. May be altered as a URL Parameter. |\n| `<model name>` | array | An array of objects. The name of the model should be singular. For example, the /v3/order endpoint will have an `order` parameter, as opposed to `orders`.|\n\nHere is an example response for the `/v3/order` list endpoint.\n\n```\n{\n \"count\": 2,\n \"limit\": 10,\n \"offset\" 0,\n \"order\": [\n {\n // an order object\n },\n {\n // another order object\n }\n ]\n}\n```\n\n## Instance endpoints\n\nInstance endpoints return a single instance of a serialized model. `/v3/order/{order_number}` is an example of an instance endpoint.\n\n# Error Handling\n\nError responses contain the following parameters:\n\n| Name | Type | Description |\n|-----------------|------------------|----------------------------------------------------------------------|\n| `error_message` | string | Some human-readable error message. |\n| `param` | string or `null` | The name of the corresponding parameter, or null for general errors. |\n\n# Rate Limiting\n\nAPI requests will be limited to 500 requests per minute. Any requests over this threshold will respond with a 429 status code."
contact: {}
version: '1.0'
servers:
- url: https://api.ordoro.com/
variables: {}
tags:
- name: Manufacturing Order
description: Manufacturing Orders are used for creating and tracking Bill of Material orders. A Manufacturing Order is assigned to a warehouse and may have multiple lines and tags.
paths:
/v3/manufacturing_order:
get:
tags:
- Manufacturing Order
summary: List Manufacturing Orders
description: ''
operationId: ManufacturingOrder_GET
parameters:
- $ref: '#/components/parameters/offsetParam'
- $ref: '#/components/parameters/limitParam'
- $ref: '#/components/parameters/searchParam'
- name: sort
in: query
description: ''
style: form
explode: true
schema:
$ref: '#/components/schemas/ManufacturingOrderSort'
- name: status
in: query
description: ''
style: form
explode: true
schema:
$ref: '#/components/schemas/ManufacturingOrderStatus'
- name: tag
in: query
description: 'Filter by tag name. Can be repeated for multiple tags.
Note: Cannot be included if `untagged` is also passed.
'
style: form
schema:
type: array
items:
type: string
- name: tag_filter_by
in: query
description: 'Tag filtering logic:
* `or` [default] return manufacturing orders that contain any of the supplied tags
* `and` returns manufacturing orders containing ALL of the supplied tags
* `only` returns manufacturing orders containing ONLY the supplied tags
* `not` returns manufacturing orders that do not contain one or more of the supplied tags
'
style: form
explode: true
schema:
type: string
- name: untagged
in: query
description: 'Filter untagged manufacturing orders
Note: Cannot be included if `tags` are also passed.
'
style: form
explode: true
schema:
type: boolean
- name: reference_id
in: query
description: ''
style: form
explode: true
schema:
type: array
items:
type: string
- name: warehouse_id
in: query
description: ''
style: form
explode: true
schema:
type: array
items:
type: integer
responses:
'200':
description: ''
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/manufacturing_order_list'
deprecated: false
post:
tags:
- Manufacturing Order
summary: Create a Manufacturing Order
description: ''
operationId: ManufacturingOrder_POST
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/post_manufacturing_order'
responses:
'201':
description: ''
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/manufacturing_order'
deprecated: false
/v3/manufacturing_order/{reference_id}:
get:
tags:
- Manufacturing Order
summary: Get Manufacturing Order by ID
description: ''
operationId: ManufacturingOrderByRefId_GET
responses:
'200':
description: ''
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/manufacturing_order'
deprecated: false
put:
tags:
- Manufacturing Order
summary: Update Manufacturing Order by ID
description: ''
operationId: ManufacturingOrderByRefId_PUT
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/put_manufacturing_order'
responses:
'200':
description: ''
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/manufacturing_order'
deprecated: false
/v3/manufacturing_order/counts:
get:
tags:
- Manufacturing Order
summary: Get Manufacturing Order Counts
description: ''
operationId: ManufacturingOrderCounts_GET
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/get_manufacturing_order_count'
responses:
'200':
description: ''
headers: {}
deprecated: false
/v3/manufacturing_order/tag:
post:
tags:
- Manufacturing Order
summary: Create a Manufacturing Order Tag
description: ''
operationId: ManufacturingOrderTags_POST
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/post_v3_tag'
responses:
'201':
description: ''
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/v3_tag'
get:
tags:
- Manufacturing Order
summary: Get Manufacturing Order Tags
description: ''
operationId: ManufacturingOrderTags_GET
parameters: []
responses:
'200':
description: ''
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/v3_tag_list'
deprecated: false
/v3/manufacturing_order/tag/{name}:
get:
tags:
- Manufacturing Order
summary: Get Manufacturing Order Tag by Name
description: ''
operationId: ManufacturingOrderTag_GET
parameters: []
responses:
'200':
description: ''
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/v3_tag'
deprecated: false
put:
tags:
- Manufacturing Order
summary: Update a Manufacturing Order Tag by Name
description: ''
operationId: ManufacturingOrderTags_PUT
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/put_v3_tag'
responses:
'200':
description: ''
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/v3_tag'
delete:
tags:
- Manufacturing Order
summary: Delete a Manufacturing Order Tag by Name
description: ''
operationId: ManufacturingOrderTags_DELETE
parameters: []
responses:
'200':
description: response OK
/v3/manufacturing_order/{reference_id}/tag/{tag_name}:
post:
tags:
- Manufacturing Order
summary: Apply a Manufacturing Order Tag to Manufacturing Order
description: ''
operationId: ManufacturingOrderTagPO_POST
parameters: []
responses:
'200':
description: ''
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/manufacturing_order'
delete:
tags:
- Manufacturing Order
summary: Remove a Manufacturing Order Tag from a Manufacturing Order
description: ''
operationId: ManufacturingOrderTagPO_DELETE
parameters: []
responses:
'200':
description: ''
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/manufacturing_order'
/v3/manufacturing_order/{reference_id}/comment:
post:
tags:
- Manufacturing Order
summary: Create a Manufacturing Order Comment by MO ID
description: ''
operationId: ManufacturingOrderCommentByMoId_POST
responses:
'200':
description: ''
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/manufacturing_order'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/comment'
deprecated: false
get:
summary: Retrieve Comments
operationId: ManufacturingOrderCommentByMoId_GET
description: ''
tags:
- Manufacturing Order
parameters:
- $ref: '#/components/parameters/goodsReceiptIDPath'
responses:
'200':
description: OK
content:
application/json:
example:
limit: 10
offset: 0
count: 1
comment:
- user: user@ordoro.com
date: '2026-03-05T21:10:26.911724+00:00'
text: This is a very important comment
schema:
$ref: '#/components/schemas/comment'
/v3/manufacturing_order/{reference_id}/line:
post:
tags:
- Manufacturing Order
summary: Create a Manufacturing Order line
description: ''
operationId: ManufacturingOrderLine_POST
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/post_manufacturing_order_line'
responses:
'200':
description: ''
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/manufacturing_order'
deprecated: false
/v3/manufacturing_order/{reference_id}/line/{manufacturing_order_line_id}:
put:
tags:
- Manufacturing Order
summary: Update a Manufacturing Order line
description: ''
operationId: ManufacturingOrderLine_PUT
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/put_manufacturing_order_line'
responses:
'200':
description: ''
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/manufacturing_order'
deprecated: false
delete:
tags:
- Manufacturing Order
summary: Remove a Manufacturing Order line from Manufacturing Order
description: ''
operationId: ManufacturingOrderLine_DELETE
responses:
'200':
description: ''
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/manufacturing_order'
deprecated: false
/v3/manufacturing_order/{reference_id}/line/{manufacturing_order_line_id}/finish:
post:
tags:
- Manufacturing Order
summary: Mark a Manufacturing Order line as finished
description: ''
operationId: ManufacturingOrderLineFinished_POST
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/post_manufacturing_order_line_finish'
responses:
'200':
description: ''
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/manufacturing_order'
deprecated: false
components:
parameters:
searchParam:
name: search
in: query
description: ''
schema:
type: string
limitParam:
in: query
name: limit
required: false
schema:
type: integer
minimum: 1
maximum: 100
default: 10
goodsReceiptIDPath:
name: goods_receipt_id
in: path
description: ''
required: true
style: simple
schema:
type: string
offsetParam:
in: query
name: offset
required: false
description: ''
schema:
type: integer
default: 0
minimum: 0
schemas:
post_manufacturing_order_line_finish:
title: Finish a quantity of a Manufacturing Order Line
type: object
additionalProperties: false
properties:
amount:
type: integer
required:
- amount
v3_tag:
title: V3 Tag Schema
type: object
properties:
id:
type: integer
name:
type: string
color:
type: string
required:
- id
- name
- color
manufacturing_order_list:
type: object
properties:
limit:
type: integer
offset:
type: integer
count:
type: integer
manufacturing_order:
type: array
items:
$ref: '#/components/schemas/manufacturing_order'
required:
- limit
- offset
- count
- manufacturing_order
v3_tag_list:
title: Tag List Schema
type: object
properties:
count:
type: integer
tag:
type: array
items:
$ref: '#/components/schemas/v3_tag'
limit:
type: integer
default: 10
offset:
type: integer
default: 0
required:
- count
- tag
- limit
- offset
ManufacturingOrderSort:
title: manufacturing_order_sort
enum:
- reference_id
- -reference_id
- status
- -status
- warehouse_name
- -warehouse_name
- created_date
- -created_date
- updated_date
- -updated_date
put_manufacturing_order_line:
title: Update a Manufacturing Order Line
type: object
additionalProperties: false
properties:
requested_quantity:
type: number
finished_quantity:
type: number
manufacturer_notes:
anyOf:
- type: string
- type: 'null'
internal_notes:
anyOf:
- type: string
- type: 'null'
put_manufacturing_order:
title: Update a Manufacturing Order
type: object
additionalProperties: false
properties:
status:
type: string
enum:
- initiated
- active
- finished
- cancelled
manufacturer_notes:
type: string
internal_notes:
type: string
warehouse_id:
type: integer
post_v3_tag:
title: Create a Tag
type: object
additionalProperties: false
properties:
name:
type: string
color:
type: string
required:
- name
- color
ManufacturingOrderStatus:
title: manufacturing_order_status
enum:
- cancelled
- initiated
- active
- finished
type: string
get_manufacturing_order_count:
type: object
additionalProperties: false
properties:
group_by:
type: array
items:
type: string
enum:
- warehouse_id
- status
put_v3_tag:
title: Update a Tag
type: object
additionalProperties: false
properties:
name:
type: string
color:
type: string
manufacturing_order:
title: Manufacturing Order Schema
type: object
properties:
reference_id:
type: string
status:
type: string
warehouse_id:
type: integer
manufacturer_notes:
anyOf:
- type: string
- type: 'null'
internal_notes:
anyOf:
- type: string
- type: 'null'
lines:
type: array
items:
type: object
properties:
_link:
type: string
id:
type: integer
sku:
type: string
bom_sku:
type: string
manufacturer_notes:
anyOf:
- type: string
- type: 'null'
internal_notes:
anyOf:
- type: string
- type: 'null'
requested_quantity:
type: number
finished_quantity:
type: number
created_date:
type: string
updated_date:
type: string
required:
- id
- sku
- bom_sku
- manufacturer_notes
- internal_notes
- requested_quantity
- finished_quantity
- created_date
- updated_date
comments:
type: array
items:
$ref: '#/components/schemas/comment'
tags:
type: array
items:
$ref: '#/components/schemas/v3_tag'
created_date:
type: string
updated_date:
type: string
required:
- reference_id
- status
- warehouse_id
- manufacturer_notes
- internal_notes
- lines
- tags
- created_date
- updated_date
post_manufacturing_order_line:
title: Add a Manufacturing Order Line
type: object
additionalProperties: false
properties:
sku:
type: string
requested_quantity:
type: number
manufacturer_notes:
anyOf:
- type: string
- type: 'null'
internal_notes:
anyOf:
- type: string
- type: 'null'
required:
- sku
comment:
title: Comment Schema
type: object
additionalProperties: false
properties:
user:
type: string
date:
type: string
format: date-time
text:
type: string
post_manufacturing_order:
title: Create a Manufacturing Order
type: object
additionalProperties: false
properties:
reference_id:
type: string
warehouse_id:
type: integer
manufacturer_notes:
anyOf:
- type: string
- type: 'null'
internal_notes:
anyOf:
- type: string
- type: 'null'
lines:
type: array
items:
type: object
properties:
sku:
type: string
requested_quantity:
type: number
manufacturer_notes:
anyOf:
- type: string
- type: 'null'
internal_notes:
anyOf:
- type: string
- type: 'null'
required:
- sku
required:
- reference_id