- Resource Central
- Orders
Orders
Orders are a group of items that are picked or put into the storage system. When creating and updating orders, the changes need to be verified and updated asynchronously by Power Pick.
Attributes
-
name
string
LIMIT:
50
Name of the order.
-
id
uuid
Unique identifier of the order.
-
countEmptyLocations
boolean
For count orders only. Determines if locations with that material at a quantity of 0 should be included in the count.
Default value: false
-
deadline
dateTime
Date by which the order must be completed.
-
directionType
integer/string
The type of order. Can use integer or string.
Possible values:
1 or "put"
2 or "pick"
3 or "return"
4 or "transport"
5 or "count"
7 or "production"Default value: 2 (pick)
-
hasStock
integer
If there is enough stock to fulfill the order.
Possible values:
0 = False
1 = True -
incompleteAllocations
integer
If there are any failed allocations.
-
Info1
string
LIMIT:
80
A generic field for custom use.
-
Info2
string
LIMIT:
80
A generic field for custom use.
-
Info3
string
LIMIT:
80
A generic field for custom use.
-
Info4
string
LIMIT:
80
A generic field for custom use.
-
Info5
string
LIMIT:
80
A generic field for custom use.
-
initialHandlingUnit
string
LIMIT:
50
Sets the initial handling unit value (i.e. tote/container/cart number) for all order lines rather than entering manually for each one. The handling unit can be updated during order processing.
-
modifedDate
datetime
The date/time this order was last modified. This will either be the creation date if it is still queued, or the processed date.
-
order_lines
array
(See "Order Lines" in reference.)
-
priority
integer
Order priority level.
Possible values:
1 = Low
2 = Medium
3 = High
4 = Hot (if included)Default value: 2 (Medium)
-
recipient
string
LIMIT:
50
Used in a transfer order. The recipient given will be assigned as the new owner of the material during the put.
-
stationName
string
LIMIT:
50
Name of the station the order is assigned to.
-
status
string
Order status type.
Possible values:
"Untouched"
"Ready for Allocation" (when reverted from "Is Allocated")
"Is Allocated"
"In Process" (order is imported but not fully picked/put)
"processed" (order is fulfilled)Default value: Untouched
-
storageUnits
Storage unit(s) where the order is designated to be processed.
-
type
integer
Order creation/origin type. Automatically determined.
Possible values:
0 = NotSet
1 = External
2 = ExtManaged
3 = Internal
4 = Manual
5 = Auto -
unit
string
LIMIT:
50
Used with batches.
-
warehouseName
string
LIMIT:
50
Name of the warehouse the order belongs in.
-
[dynamicField]
string
LIMIT:
1999
Any of the dynamic order fields from Power Pick. Requires ItemPath's Custom Fields app.
Endpoints
Get a list of orders from the PPG database. View the guide on adding filters to List API calls.
Body Parameters
-
deadline
datetime
Date by which the order must be completed. Like all date arguments, a [gt], [lt], [lte], for [gte] can be prefixed.
-
directionType
integer/string
The type of order. Can use integer or string.
Possible values:
1 or "put"
2 or "pick"
3 or "return"
4 or "transport"
5 or "count"
7 or "production" -
hasStock
integer
If there is enough stock to fulfill the order.
Possible values:
0 = False
1 = True -
Info1
string
Information field 1 of the order.
-
Info2
string
Information field 2 of the order.
-
Info3
string
Information field 3 of the order.
-
Info4
string
Information field 4 of the order.
-
Info5
string
Information field 5 of the order.
-
modifiedDate
datetime
The date/time this order was last modified. This will either be the creation date if it is still queued, or the processed date. Like all date arguments, a [gt], [lt], [lte], for [gte] can be prefixed.
-
name
string
The name of the order.
-
priority
integer
Order priority level.
Possible values:
1 = Low
2 = Medium (default)
3 = High
4 = Hot (if included) -
stationName
string
Name of the station the order is assigned to.
-
status
string
Order status type.
Possible values:
"Untouched"
"Ready for Allocation" (when reverted from "Is Allocated")
"Is Allocated"
"In Process" (order is imported but not fully picked/put)
"processed" (order is fulfilled) -
storageUnits
array
Storage unit(s) where the order is designated to be processed.
-
type
integer
Order creation/origin type. Automatically determined.
Possible values:
0 = NotSet
1 = External
2 = ExtManaged
3 = Internal
4 = Manual
5 = Auto -
warehouseName
string
Name of the warehouse this order belongs in.
-
[dynamicField]
Any dynamic fields that have been set up can be used as a filter. Requires ItemPath's Custom Fields app.
-
countOnly
boolean
When "true", will only return a count of the amount of items in the query.
Default value:
false -
limit
integer
A limit on the number of objects to be returned.
Default value:
1000 -
page
integer
Page numbering is zero-based and uses the value of the "limit" argument. (For example, if limit=20, then page=0 will display the hits from 1 to 20.)
-
orderBy
string, array
Order the response by the selected field. Multiple values can be passed, separated by a comma.
-d 'curl -L -X GET '[subdomain.itempath.com or IP]/api/orders?limit=1&directionType=5' -H 'Content-Type: application/json' -H 'Authorization: Bearer [Your JWT Access Token]''
{ "orders": [ { "Info1": "True", "Info2": "31", "Info3": "V1", "Info4": null, "Info5": "50", "deadline": null, "directionType": 5, "handlingUnit": null, "hasStock": true, "id": "DF175F21-FFA1-4DD1-A3AE-FA605121D9BD", "incompleteAllocations": 0, "modifiedDate": "2023-05-02T17:20:32.490000", "name": "Example Count Order", "order_lines": [ { "Info1": "BOLT", "Info2": "VLM2", "Info3": null, "Info4": "1", "Info5": "235299111", "costCenterName": null, "id": "57B5D8FE-72C0-48CE-8D68-AFF11A2E0458", "lot": null, "materialName": "S102", "number": 1, "quantity": 0.0, "serialNumber": null, "storageUnits": [] } ], "owner": "sys", "priority": 4, "recipient": null, "stationName": null, "status": "Untouched", "storageUnits": [], "type": 1, "unit": null, "warehouseName": "Warehouse" } ] }
Create an order and get a response. An array of at least one Order Line is required. For fields on the Order Lines level, click here. If location details are passed in at both the order and line level, then the line location details will be used.
Body Parameters
-
name
string
LIMIT:
50
REQUIRED
The unique order name/number.
Default value:
incrementing -
order_lines
array
REQUIRED
Any amount of order lines related to this order (see Order Lines for more information on fields).
-
allocate
boolean
Whether this order should be allocated when imported.
Possible values:
true, false
Default value:
false -
carriers
array
A list of carriers that this order can be picked or put from. Either an ID or name is required.
Possible values:
Example: [{"id": "66AFE69B-695E-469F-9E73-C416A12B727E"}, {"name": "01"}]
-
countEmptyLocations
boolean
For count orders only. Determines if locations with that material at a quantity of 0 should be included in the count. Permanent locations must be set up with Power Pick.
Possible values:
true, false
Default value:
false -
deadline
dateTime
Date by which the order must be completed.
-
directionType
integer/string
The type of order. Can use integer or string.
Possible values:
1 or "put"
2 or "pick"
3 or "return"
4 or "transport"
5 or "count"
7 or "production"Default value:
2 (pick) -
Info1
string
LIMIT:
80
A generic field for custom use.
-
Info2
string
LIMIT:
80
A generic field for custom use.
-
Info3
string
LIMIT:
80
A generic field for custom use.
-
Info4
string
LIMIT:
80
A generic field for custom use.
-
Info5
string
LIMIT:
80
A generic field for custom use.
-
initialHandlingUnit
string
LIMIT:
50
Sets the initial handling unit value (i.e. tote/container/cart number) for all order lines rather than entering manually for each one. The handling unit can be updated during order processing.
-
locations
array
A list of locations that this order can be picked or put from. Either an ID or name is required.
Possible values:
Example: [{"id": "8B3E44C1-EA03-4F2D-A514-EF5B7AE2BF89"}, {"name": "VLM 1/01/01"}]
-
owner
string
LIMIT:
50
Used in a transfer order. The owner will be replaced by the given recipient, which will be assigned as the new owner of the material during the put.
-
priority
integer
Order priority level.
Possible values:
1 = Low
2 = Medium
3 = High
4 = Hot (if included)Default value:
2 (Medium) -
recipient
string
LIMIT:
50
Used in a transfer order. The recipient given will be assigned as the new owner of the material during the put.
-
shelves
array
A list of shelves that this order can be picked or put from. Either an ID or name is required.
Possible values:
Example: [{"id": "7142BF15-38BD-4971-BCB2-D890DDA9CC32"}, {"name": "01/01"}]
-
storageUnits
array
A list of storage units that this order can be picked or put from. Either an ID or name is required.
Possible values:
Example: [{"id": "3276A9F6-7CE5-4924-A02B-FD8304D7C3A1"},{"id": "18E22E33-11CA-4712-AECF-7A29123C88A5"}, {"name": "VLM 1"}]
-
unit
string
LIMIT:
50
Used with batches.
-
warehouseName
string
LIMIT:
50
The name of the Warehouse this order will be associated with. If no warehouse name or id is given, it will use the warehouse associated with the current station.
-
warehouseId
uuid
The id of the Warehouse this order will be associated with. Cannot be used with warehouseName.
-
zones
array
A list of zones that this order can be picked or put from. Either an ID or name is required.
Possible values:
Example: [{"id": "9B937196-FBDC-4462-9D15-E60A7EEB5FA7"}, {"name": "Zone 1"}]
-
[dynamicField]
string
LIMIT:
1999
Any of the dynamic order fields from Power Pick. Requires ItemPath's Custom Fields app.
-d '{ "name": "Example Put Order", "directionType": "1", "allocate": false, "order_lines": [ { "materialId": "8395D795-EA64-49EA-BFEE-708F4E5B2700", "quantity": 1, "Info1": "PC", "serialNumber": "0000205856" } ] }'
{ "order": { "Info1": null, "Info2": null, "Info3": null, "Info4": null, "Info5": null, "deadline": null, "directionType": 1, "handlingUnit": null, "hasStock": true, "id": "7C01E5A8-275E-44D7-AD16-A6C335668EB6", "incompleteAllocations": 0, "modifiedDate": "2023-10-17T14:22:15.133000", "name": "Example Put Order", "order_lines": [ { "Info1": "PC", "Info2": null, "Info3": null, "Info4": null, "Info5": null, "costCenterName": null, "id": "D776D458-B947-49D6-B70F-827647D72C26", "lot": null, "materialName": "Test Material 15", "number": 1, "quantity": 1.0, "serialNumber": "0000205856", "storageUnits": [] } ], "owner": "sys", "priority": 2, "recipient": null, "status": "Untouched", "storageUnits": [], "type": 1, "unit": null, "warehouseName": "Warehouse" } }
Get a specific order from the PPG database and return a JSON response. The order will be pulled either from the MasterOrder table or the HistoryMasterOrder table, depending on whether it's been picked.
{ "order": { "Info1": null, "Info2": null, "Info3": null, "Info4": null, "Info5": null, "deadline": null, "directionType": 1, "handlingUnit": null, "hasStock": true, "id": "21AA0AF0-CE36-44B4-8DD6-538FBDFFBF05", "incompleteAllocations": 0, "modifiedDate": "2023-10-13T15:39:53.477000", "name": "Example Pick Order", "order_lines": [ { "Info1": null, "Info2": null, "Info3": null, "Info4": null, "Info5": null, "costCenterName": null, "id": "BBCA19E4-897B-4F4D-80D8-B4EEA60230CC", "lot": null, "materialName": "1120", "number": 1, "quantity": 1.0, "serialNumber": null, "storageUnits": [ { "id": "CA1E5648-FA38-416F-9604-CF33A6763496", "name": "VLM-01" } ] }, { "Info1": null, "Info2": null, "Info3": null, "Info4": null, "Info5": null, "costCenterName": null, "id": "D65F8C4C-4E3F-4981-BF4B-093FC8536E35", "lot": null, "materialName": "1121", "number": 2, "quantity": 1.0, "serialNumber": null, "storageUnits": [ { "id": "CA1E5648-FA38-416F-9604-CF33A6763496", "name": "VLM-01" } ] } ], "owner": "sys", "priority": 2, "recipient": null, "stationName": null, "status": "In Process", "storageUnits": [ { "id": "CA1E5648-FA38-416F-9604-CF33A6763496", "name": "VLM-01" } ], "type": 1, "unit": null, "warehouseName": "Warehouse" } }
Update an order and get a response. Each key/value is optional. Only keys sent will be updated, but an object is required to be sent.
Body Parameters
-
allocate
boolean
If updated to "true," this will allocate the order. (Updating to false will not deallocate the order. Use the "deallocate" parameter for this.)
-
deadline
dateTime
Date by which the order must be completed.
-
countEmptyLocations
boolean
For count orders only. Determines if locations with that material at a quantity of 0 should be included in the count. If changed from "true" to "false", order will need to be reallocated.
-
deallocate
boolean
If updated to "true," this will deallocate the order. (Updating to false will not allocate the order. Use the "allocate" parameter for this.)
-
directionType
integer/string
The type of order. Can use integer or string.
Possible values:
1 or "put"
2 or "pick"
3 or "return"
4 or "transport"
5 or "count"
7 or "production" -
Info1
string
LIMIT:
50
A generic field for custom use.
-
Info2
string
LIMIT:
50
A generic field for custom use.
-
Info3
string
LIMIT:
50
A generic field for custom use.
-
Info4
string
LIMIT:
50
A generic field for custom use.
-
Info5
string
LIMIT:
50
A generic field for custom use.
-
initialHandlingUnit
string
LIMIT:
50
Sets the initial handling unit value (i.e. tote/container/cart number) for all order lines rather than entering manually for each one. The handling unit can be updated during order processing.
-
name
string
LIMIT:
50
This updates the unique order name.
-
owner
string
LIMIT:
50
Used in a transfer order. The owner will be replaced by the given recipient, which will be assigned as the new owner of the material during the put.
-
priority
integer
Order priority level.
Possible values:
1 = Low
2 = Medium
3 = High
4 = Hot (if included) -
recipient
string
LIMIT:
50
Used in a transfer order. The recipient given will be assigned as the new owner of the material during the put.
-
unit
string
LIMIT:
50
Used with batches.
-
[dynamicField]
string
LIMIT:
1999
Any of the dynamic order fields from Power Pick. Requires ItemPath's Custom Fields app.
-d '{"allocate": "true", "handlingUnit": "Box 1"}'
{ "order": { "Info1": null, "Info2": null, "Info3": null, "Info4": null, "Info5": null, "deadline": null, "directionType": 1, "handlingUnit": "Box 1", "hasStock": true, "id": "46414264-1E48-4A46-8A39-7DF44A6C7BD0", "incompleteAllocations": 0, "modifiedDate": "2023-10-04T14:48:23.433000", "name": "003050132345_1_0000asd6", "order_lines": [ { "Info1": "PC", "Info2": null, "Info3": null, "Info4": null, "Info5": null, "costCenterName": null, "id": "1F28D2F8-0318-49E2-8903-8C8C7DBD51AC", "lot": "0000205856", "materialName": "Sample Material", "number": 1, "quantity": 1.0, "serialNumber": null, "storageUnits": [ { "id": "CA1E5648-FA38-416F-9604-CF33A6763496", "name": "VLM-01" } ] } ], "owner": "sys", "priority": 2, "recipient": null, "status": "Untouched", "storageUnits": [ { "id": "CA1E5648-FA38-416F-9604-CF33A6763496", "name": "VLM-01" } "type": 1, "unit": null, "warehouseName": "Warehouse" } }
Delete a specific order from the PPG database and return a JSON response. This will also delete the order lines associated with the order.
{"deleted": "true"}