Summary:
The V0 Quote Process collection now contains 6 endpoints that will allow a 3rd party system to integrate with PrintIQ's Capacity Planning module. A Postman collection is attached or you can access these endpoint details via {yourPrintIQDomain}.com/Swagger
- PlanOperations
- UpdateOperationPlannedDateTime
- ChangePlannedMachine
- UnplanOperation
- UnplanJob
- UnplanTimeBlock
This assumes the 3rd party manages the integration by utilizing these API endpoints to affect Capacity Planning records within PrintIQ. The data share is one-way: 3rd Party -> PrintIQ
Validation:
In order to access these endpoints, the system will require valid PrintIQ user credentials to generate a LoginToken, and an application key to generate an ApplicationLoginToken. PrintIQ Support can set up the application and provide required Key and Name values.
These tokens are generated using GetLoginToken and GetApplicationLoginToken, also provided in the postman collection. These tokens expire every 2 hours; it is recommended you generate a new token any time you call the collection to update a component in Capacity Planning.
Context Details:
Once you can generate tokens, you will utilize GetAcceptanceDetails with a Job Number to extract most required key values. The response will contain operations context within AcceptanceDetails{}.Products[].MiddlewareProductDetail.Operations[].POKey (this is the operation key used by most endpoints). The object will also contain the operation name. All Capacity Planning is relative to these operations per job.
For any endpoints that require a Machine (Machine, Press, Guillotine), you can get details within the PrintIQ UI to reference their system names.
../FactoryAdmin/Press.aspx
../FactoryAdmin/Guillotine.aspx
../FactoryAdmin/Machine.aspx
PlanOperations
When using this endpoint, you must provide either a Machine, Press, or Guillotine. If you do not specify DurationMinutes, it will keep the previous duration of the operation. If the operation is planned elsewhere, Unplan it first. If the operation cannot be planned where specified, it will keep previous details and remain in prior slot or remain unplanned.
Provide a Planned Start as 'YYYY-MM-DD', and provide your StartMinute as relative minute to local start time. i.e. "300" = 5AM, "1439" = 11:59PM
You may update multiple operations in this call.
POST //api/QuoteProcess/PlanOperations?LoginToken={{appToken}} HTTP/1.1
Host: {{yourDomain}}.printiq.com
Content-Type: application/json
Content-Length: 253
{
"PlanOperations": [
{
"POKey": 290812, //as extracted from GetAcceptanceDetails for the operation you want to plan
"ScheduleDate": "2025-07-09",
"StartMinute": 600,
"Machine": null,
"Press": "WF - HP 11000",
"Guillotine": null,
"DurationMinutes": 60
}
]
UpdateOperationPlannedDateTime
Similar to PlanOperations, but only for a single operation already planned but just changing the date/time (not machine). If DurationMinutes isnt specified, it will keep the previous duration of the operation.
{
"POKey": 290812,
"PlannedStart": "2025-03-13",
"StartMinute": 300,
"DurationMinutes": null
}
ChangePlannedMachine
Provide the operation key, and either Machine, Press, or Guillotine you are changing the planned operation for. We will provide an error response if the provided machine is invalid, or not applicable to the operation.
{
"POKey": 290812,
"Machine": null,
"Press": "WF - Onset X3",
"Guillotine": null
}
UnplanOperation
Removes operation from planned block, you only provide POKey.
UnplanJob
Removes all operations of Job from schedule.
UnplanTimeBlock
Unplans an operation. Time Block (PTBKey) is a back-end identifier for the record of the operation, machine, and time scheduled as a block.
PlanOperation - response
{
"PTBKeys": [
4957
],
"ErrorMessage": null,
"IsError": false,
"WarningMessage": null,
"IsWarning": false
}
Known 3rd party integrators:
Pivotal Z - Prestige Scheduler