1. Overview

The process-order-service contains a collection of RESTful service calls to retrieve various information relevant to manufacturing execution.

Descriptions of these functions can be found in the section headers for each collection of relevant resources.

1.1. URI scheme

Host : localhost
BasePath : /

1.2. Tags

  • execution-path-controller : Execution Path Controller

  • process-order-controller : Process Order Controller

2. Resources

2.1. Execution-path-controller

Execution Path Controller

2.1.1. Get paths

GET /api/paths
Parameters
Type Name Description Schema

Query

lineIds
optional

Comma separated list of Production line ids

string

Responses
HTTP Code Description Schema

200

OK

< ExecutionPathExtendedResource > array

400

Bad request

No Content

401

Unauthorized

No Content

403

Forbidden, Authenticated user is not known by MES

No Content

404

Not Found

No Content

Produces
  • application/json;charset=UTF-8

  • application/vnd.ge.po.v3.full+json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.1.2. Get a path

GET /api/paths/{pathId}
Parameters
Type Name Description Schema

Path

pathId
required

path id

integer (int64)

Responses
HTTP Code Description Schema

200

OK

ExecutionPathExtendedResource

401

Unauthorized

No Content

403

Forbidden, Authenticated user is not known by MES

No Content

404

Not Found

HttpErrorResponse

Produces
  • application/json;charset=UTF-8

  • application/vnd.ge.po.v3.full+json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.1.3. Get product details for the path

GET /api/paths/{pathId}/products
Parameters
Type Name Description Schema

Path

pathId
required

path id

integer (int64)

Responses
HTTP Code Description Schema

200

OK

< PathProductInfo > array

401

Unauthorized

No Content

403

Forbidden

HttpErrorResponse

Produces
  • application/vnd.ge.po.v3.full+json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.1.4. Get Bom details for the path product

GET /api/paths/{pathId}/products/{productId}/boms
Parameters
Type Name Description Schema

Path

pathId
required

path id

integer (int64)

Path

productId
required

prod id

integer (int64)

Responses
HTTP Code Description Schema

200

OK

< IdNameValue > array

401

Unauthorized

No Content

403

Forbidden

HttpErrorResponse

Produces
  • application/vnd.ge.po.v3.full+json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.2. Process-order-controller

Process Order Controller

2.2.1. Add a process order

POST /api/processOrders
Parameters
Type Name Description Schema

Body

processOrderCreateDetails
required

Body for creating process order

ProcessOrderCreateDetails

Responses
HTTP Code Description Schema

201

Created

ProcessOrder

400

Invalid data supplied. See message for details.

No Content

401

Unauthorized

No Content

403

Forbidden

HttpErrorResponse

409

Conflict

No Content

422

Unprocessable Entity

HttpErrorResponse

500

Internal Server Error

HttpErrorResponse

Consumes
  • application/vnd.ge.po.v3.full+json

Produces
  • application/vnd.ge.po.v3.full+json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.2.2. Get process orders

GET /api/processOrders
Parameters
Type Name Description Schema Default

Query

endTime
optional

End time in ISO-8601 format (YYYY-MM-DDThh:mm:ssZ), in case of custom time selection.

string (date-time)

Query

lineIds
optional

Comma separated list of Production line ids

string

Query

page
optional

Page number to be retrieved (0..N)

integer (int32)

0

Query

pathIds
optional

Comma separated list of path ids

string

Query

size
optional

Number of records per page.

integer (int32)

20

Query

sort
optional

Sorting criteria in the format: property(SortColumn,asc|desc). MultiColumn sort criteria is supported, Currently only supported sort by 2 specific columns in specific order, first with status + [For first column - STATUS no sort order(like asc or desc) should be specified, it will always be in following order Active,Next,Pending,Planning,Others]. and second with Sequence,ASC. Sequence,ASC is the execution order of Process_Orders

< string > array(multi)

Query

startTime
optional

Start time in ISO-8601 format (YYYY-MM-DDThh:mm:ssZ), in case of custom time selection.

string (date-time)

Query

statuses
optional

Comma separated list of statuses, Possible Status Values: ACTIVE,COMPLETE,CANCELLED,PENDING, PLANNING, ERROR, LOCKED, NEXT, OVERPRODUCED, UNDERPRODUCED

string

Responses
HTTP Code Description Schema

200

OK

ProcessOrderPage

400

Bad Request

No Content

401

Unauthorized

No Content

403

Forbidden

HttpErrorResponse

Produces
  • application/vnd.ge.po.v3.full+json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.2.3. Get a process order

GET /api/processOrders/{orderId}
Parameters
Type Name Description Schema

Path

orderId
required

process order id

integer (int64)

Responses
HTTP Code Description Schema

200

OK

ProcessOrder

401

Unauthorized

No Content

403

Forbidden

HttpErrorResponse

404

Not Found

HttpErrorResponse

Produces
  • application/vnd.ge.po.v3.full+json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.2.4. Update a process order

PUT /api/processOrders/{orderId}
Parameters
Type Name Description Schema

Path

orderId
required

Process order id to update

integer (int64)

Body

processOrderUpdateDetails
required

Body for updating process order

ProcessOrderCreateDetails

Responses
HTTP Code Description Schema

200

OK

ProcessOrder

400

Invalid data supplied. See message for details.

No Content

401

Unauthorized

No Content

403

Forbidden

HttpErrorResponse

404

Not Found

HttpErrorResponse

409

Conflict

No Content

422

Unprocessable Entity

HttpErrorResponse

Consumes
  • application/vnd.ge.po.v3.full+json

Produces
  • application/vnd.ge.po.v3.full+json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.2.5. Delete a process order

DELETE /api/processOrders/{orderId}
Parameters
Type Name Description Schema

Path

orderId
required

Process order id to be deleted

integer (int64)

Responses
HTTP Code Description Schema

204

No Content

object

401

Unauthorized

No Content

403

Forbidden

HttpErrorResponse

404

Not Found

HttpErrorResponse

Produces
  • /

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.2.6. add process order StartOn unit

POST /api/processOrders/{orderId}/StartOnUnit
Parameters
Type Name Description Schema

Path

orderId
required

Process orderId which needs to be started on unit

integer (int64)

Body

unit
required

UnitId on which this Process order needs to be started, Id is the required field

IdNameValue

Responses
HTTP Code Description Schema

200

OK

ProcessOrderUnitStartInfoResource

401

Unauthorized

No Content

403

Forbidden

HttpErrorResponse

404

Not Found

HttpErrorResponse

Consumes
  • application/json

Produces
  • application/vnd.ge.po.v3.full+json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.2.7. get process order StartOn unit

GET /api/processOrders/{orderId}/StartOnUnit
Parameters
Type Name Description Schema

Path

orderId
required

Process orderId which needs to be started on unit

integer (int64)

Query

orderStartId
optional

Process Order startId

integer (int64)

Responses
HTTP Code Description Schema

200

OK

ProcessOrderUnitStartInfoResources

401

Unauthorized

No Content

403

Forbidden

HttpErrorResponse

404

Not Found

HttpErrorResponse

Produces
  • application/vnd.ge.po.v3.full+json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.2.8. Get a process order’s history

GET /api/processOrders/{orderId}/history
Parameters
Type Name Description Schema

Path

orderId
required

process order id

integer (int64)

Responses
HTTP Code Description Schema

200

OK

< ProcessOrderHistory > array

401

Unauthorized

No Content

403

Forbidden

HttpErrorResponse

404

Not Found

HttpErrorResponse

Produces
  • application/vnd.ge.po.v3.full+json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.2.9. Get materials for the process order

GET /api/processOrders/{orderId}/materials
Parameters
Type Name Description Schema

Path

orderId
required

process order id

integer (int64)

Responses
HTTP Code Description Schema

200

OK

< MaterialInfo > array

401

Unauthorized

No Content

403

Forbidden

HttpErrorResponse

404

Not Found

HttpErrorResponse

Produces
  • application/vnd.ge.po.v3.full+json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.2.10. Get next available units for the process order, Will be applicable for those process orders whose flow is controlled independently

GET /api/processOrders/{orderId}/nextAvailableUnits
Parameters
Type Name Description Schema

Path

orderId
required

process order id

integer (int64)

Responses
HTTP Code Description Schema

200

OK

< IdNameValue > array

401

Unauthorized

No Content

403

Forbidden

HttpErrorResponse

404

Not Found

HttpErrorResponse

Produces
  • application/vnd.ge.po.v3.full+json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

3. Definitions

3.1. Error

Name Schema

code
optional

string

details
optional

object

3.2. ExecutionPathExtendedResource

Name Description Schema

code
optional

Customer Code for the path

string

commentsThreadId
optional

The Comments Thread Id of the path record. Points to a chain of comments.

integer (int64)

description
optional

Path Description

string

isLineProduction
optional

Production on this path should count towards line production
Example : false

boolean

isScheduleControlled
optional

The execution path is controlled by a schedule
Example : false

boolean

lineId
optional

The production line id of this path

integer (int64)

links
optional

< Link > array

pathId
optional

Unique Id of the path record

integer (int64)

pathUnits
optional

The pathUnits associated with this path

< ExecutionPathUnitInfo > array

permissions
optional

< Permission > array

scheduleControlType
optional

The schedule control type setting

enum (AllUnitsRunSameScheduleSimultaneously, ScheduleFlowsByEvent, ScheduleFlowsIndependently)

3.3. ExecutionPathUnitInfo

Name Description Schema

executionPathUnitId
optional

Unique Id of the Execution Path Unit record

integer (int64)

isProductionPoint
optional

Is this unit the production counting unit of the path
Example : false

boolean

isSchedulePoint
optional

Is this unit the scheduling unit of the path
Example : false

boolean

pathId
optional

The Path Id of the path this unit is a member of

integer (int64)

unitId
optional

The production unit id

integer (int64)

unitOrder
optional

The execution order of this unit in the path

integer (int32)

3.4. HttpErrorResponse

Name Schema

error
optional

Error

path
optional

string

timestamp
optional

string

3.5. IdNameValue

Name Description Schema

id
optional

The unique ID of the entity

integer (int64)

name
optional

The name of the entity

string

Name Schema

href
optional

string

rel
optional

string

templated
optional

boolean

3.7. MaterialInfo

Name Schema

actualQuantity
optional

number (double)

actualQuantityColorFlag
optional

integer (int32)

bOMFormulationId
optional

integer (int64)

bOMFormulationItemId
optional

integer (int64)

backColor
optional

integer (int64)

colorFlag
optional

integer (int64)

engineeringUnits
optional

string

itemOrder
optional

integer (int32)

location
optional

string

lotNumber
optional

string

lowerReject
optional

number (double)

lowerTolerancePrecision
optional

integer (int32)

pUId
optional

integer (int64)

prodCode
optional

string

prodDesc
optional

string

prodId
optional

integer (int64)

quantityPer
optional

number (double)

quantityPrecision
optional

integer (int32)

remainingQuantity
optional

number (double)

requiredQuantity
optional

number (double)

scrapFactor
optional

number (double)

substitutions
optional

integer (int64)

upperReject
optional

number (double)

upperTolerancePrecision
optional

integer (int32)

useEventComponents
optional

integer (int32)

3.8. PageMetadata

Name Schema

number
optional

integer (int64)

size
optional

integer (int64)

totalElements
optional

integer (int64)

totalPages
optional

integer (int64)

3.9. PathProductInfo

Name Description Schema

productCode
optional

Descriptive Name of Product record

string

productDescription
optional

Code Name of Product record

string

productId
optional

Unique Id of the Product record record

integer (int64)

3.10. Permission

Name Schema

permissionName
optional

string

permissionValue
optional

boolean

3.11. ProcessOrder

Name Description Schema

actualBadItems
optional

actual Bad Items of product this process order has produced

integer (int64)

actualBadQuantity
optional

actual Bad Quantity of product this process order has produced

number (double)

actualDownTime
optional

Downtime while this PO is active

number (double)

actualEndTime
optional

Actual endTime for this PO

string (date-time)

actualGoodItems
optional

actual good Items of product this process order has produced

integer (int64)

actualGoodQuantity
optional

actual good Quantity of product this process order has produced

number (double)

actualRepetitions
optional

actualRepetitions

integer (int64)

actualRunningTime
optional

Time for which this process order has ran

number (double)

actualStartTime
optional

Actual startTime for this PO

string (date-time)

adjustedQuantity
optional

Adjusted quantity of product for this process order

number (double)

alarmCount
optional

alarms raised on this PO

integer (int64)

allowedStatusTransition
optional

Allowed state changes from the current status of this process order

< enum (ACTIVE, COMPLETE, CANCELLED, PENDING, PLANNING, ERROR, LOCKED, NEXT, OVERPRODUCED, UNDERPRODUCED) > array

blockNumber
optional

blockNumber

string

bomFormulation
optional

Specifies the BOM Formulation for the process order

IdNameValue

commentsThreadId
optional

The Comments Thread Id of the process order record. Points to a chain of comments.

integer (int64)

controlType
optional

Specifies the control type of the process order

enum (QUANTITY, DURATION, TIME)

engineeringUnit
optional

engineeringUnit

string

extendedInfo
optional

extendedInfo

string

impliedSequence
optional

Execution sequence is normally by planned start, but this can override the sequence

integer (int64)

impliedSequenceOffset
optional

impliedSequenceOffset

integer (int64)

lateItems
optional

lateItems

integer (int64)

line
optional

The line associated with process order

IdNameValue

links
optional

< Link > array

orderType
optional

Specifies the type of the order (Production Plan Type)

enum (SCHEDULE, REWORK)

parentProductionPlanId
optional

Id for this process order’s parent process order if any

integer (int64)

participatingUnits
optional

Information regarding the PO start and end on involved units. Will be used for process orders whose flow is [Schedule Flows independently]

< ProcessOrderUnitStartInfo > array

path
optional

The Path this process order uses

IdNameValue

plannedEndTime
optional

The planned time to finish the order, corresponds to the forecastedEndTime in db

string (date-time)

plannedQuantity
optional

Quantity of product this process order is requesting, corresponds to the forecastedQuantity in db

number (double)

plannedStartTime
optional

The planned time to start the order, corresponds to the forecastedStartTime in db

string (date-time)

predictedRemainingDuration
optional

predictedRemainingDuration for this process order

number (double)

predictedRemainingQuantity
optional

predictedRemainingQuantity of product for this process order

number (double)

predictedTotalDuration
optional

predictedTotalDuration for this process order

number (double)

processOrder
optional

Descriptive Name of the process order

string

processOrderId
optional

Unique Id of the process order record

integer (int64)

product
optional

the product this process order is requesting

IdNameValue

productionRate
optional

Production rate of this product

number (double)

schedulePointUnit
optional

The unit associated with process order

IdNameValue

sourceProductionPlanId
optional

Id for this process order’s source process order if any

integer (int64)

status
optional

The status of the process order

enum (ACTIVE, COMPLETE, CANCELLED, PENDING, PLANNING, ERROR, LOCKED, NEXT, OVERPRODUCED, UNDERPRODUCED)

userGeneral1
optional

userGeneral1

string

userGeneral2
optional

userGeneral2

string

userGeneral3
optional

userGeneral3

string

3.12. ProcessOrderCreateDetails

Name Description Schema

blockNumber
optional

string

bomFormulationId
optional

integer (int64)

commentId
optional

integer (int64)

controlType
optional

enum (QUANTITY, DURATION, TIME)

extendedInfo
optional

string

pathId
optional

integer (int64)

plannedEndTime
optional

string (date-time)

plannedStartTime
optional

string (date-time)

processOrderName
optional

string

processOrderPriority
optional

Will be used to reorder process orders, In PO update. Only +1/-1 values allowed for now

integer (int32)

processOrderType
optional

Can be of two types only, Schedule Type and rework type. Rework is not supported yet.

enum (SCHEDULE, REWORK)

prodId
optional

integer (int64)

productionRate
optional

number (double)

quantity
optional

number (double)

status
optional

Use this for updating Process Order status, will be ignored while creation of process order.

enum (ACTIVE, COMPLETE, CANCELLED, PENDING, PLANNING, ERROR, LOCKED, NEXT, OVERPRODUCED, UNDERPRODUCED)

userGeneral1
optional

string

userGeneral2
optional

string

userGeneral3
optional

string

3.13. ProcessOrderHistory

Name Description Schema

actualBadItems
optional

integer (int64)

actualBadQuantity
optional

actual Bad Quantity of product this process order has produced

number (double)

actualDowntime
optional

number (double)

actualEndTime
optional

string (date-time)

actualGoodItems
optional

integer (int64)

actualGoodQuantity
optional

actual good Quantity of product this process order has produced

number (double)

actualRepetitions
optional

integer (int64)

actualRunningTime
optional

number (double)

actualStartTime
optional

string (date-time)

adjustedQuantity
optional

Actual quantity of product this process order has produced

number (double)

alarmCount
optional

integer (int64)

blockNumber
optional

string

bomFormulation
optional

IdNameValue

changeTime
optional

string (date-time)

controlType
optional

enum (QUANTITY, DURATION, TIME)

extendedInfo
optional

string

forecastEndDate
optional

string (date-time)

forecastQuantity
optional

forecast Quantity of product for this process order

number (double)

forecastStartDate
optional

string (date-time)

impliedSequence
optional

integer (int64)

lateItems
optional

integer (int64)

path
optional

IdNameValue

plannedQuantity
optional

Quantity of product this process order is requesting

number (double)

predictedRemainingDuration
optional

number (double)

predictedRemainingQuantity
optional

predictedRemainingQuantity of product for this process order

number (double)

predictedTotalDuration
optional

number (double)

processOrder
optional

string

processOrderId
optional

integer (int64)

processOrderType
optional

enum (SCHEDULE, REWORK)

product
optional

IdNameValue

productionRate
optional

number (double)

sourceProcessOrder
optional

IdNameValue

status
optional

enum (ACTIVE, COMPLETE, CANCELLED, PENDING, PLANNING, ERROR, LOCKED, NEXT, OVERPRODUCED, UNDERPRODUCED)

transactionType
optional

enum (Insert, Update, Delete)

user
optional

string

userGeneral1
optional

string

userGeneral2
optional

string

userGeneral3
optional

string

3.14. ProcessOrderPage

Name Schema

content
optional

< ProcessOrder > array

links
optional

< Link > array

page
optional

PageMetadata

3.15. ProcessOrderUnitStartInfo

Name Description Schema

endTime
optional

PO end time on this unit

string (date-time)

isProductionPoint
optional

boolean

processOrderId
optional

integer (int64)

processOrderUnitStartId
optional

integer (int64)

productionPlanSetupId
optional

Production plan setup id for this record

integer (int64)

startTime
optional

PO start time on this unit

string (date-time)

unit
optional

IdNameValue

3.16. ProcessOrderUnitStartInfoResource

Name Description Schema

endTime
optional

PO end time on this unit

string (date-time)

isProductionPoint
optional

boolean

links
optional

< Link > array

processOrderId
optional

integer (int64)

processOrderUnitStartId
optional

integer (int64)

productionPlanSetupId
optional

Production plan setup id for this record

integer (int64)

startTime
optional

PO start time on this unit

string (date-time)

unit
optional

IdNameValue

3.17. ProcessOrderUnitStartInfoResources

Name Schema

content
optional

< ProcessOrderUnitStartInfo > array

links
optional

< Link > array

4. Security

4.1. access_token

Type : oauth2
Flow : accessCode
Token URL : https://localhost:8443/uaa/oauth/authorize
Token URL : https://localhost:8443/uaa/oauth/token

Name Description

default

Default oauth2 scope.

4.2. resource_owner

Type : oauth2
Flow : password
Token URL : https://localhost:8443/uaa/oauth/token

Name Description

default

Default oauth2 scope.

4.3. implicit_grant

Type : oauth2
Flow : implicit
Token URL : https://localhost:8443/uaa/oauth/authorize

Name Description

default

Default oauth2 scope.

4.4. client_creds

Type : oauth2
Flow : application
Token URL : https://localhost:8443/uaa/oauth/token

Name Description

default

Default oauth2 scope.