SO Monitoring API

This API is used by the SO Monitoring UI for the Casablanca SO Monitoring Use Case.



Table of Contents

  • Get a Service List Based on the given Request Id

  • Get Process Instance Id Detail for the given Request Id

  • Get a Single Process Instance Detail for the given Process Instance Id

  • Get a Process Definition XML for the given Process Definition Id

  • Get a list of Activity Instance Detail for the given Process Instance Id

  • Get a list of Process Variables for the given Process Instance Id

  • HTTP Response Code

  • Request Examples

  • Response Examples


Get a Service List based on the given Request Id

Interface Definition

Description

Interface Definition

Description

URI

http(s)://{host}:{port}/engine-rest/engine/v1/search

Operation Type

POST

Content-Type

application/json



Request Header

Header Name

Required?

Description

Header Name

Required?

Description

Accept

N

Determines the format of the body of the response. Valid value is “application/json”

Authorization

Y

Supplies Basic Authentication credentials for the request. If the Authorization header is missing, then an HTTP 400 Invalid Request response is returned. If the string supplied is invalid, then an HTTP 401 Unauthorized response is returned.

Content-Type

Y

Determines the format of the request content. Only application/json is supported.

Content-Length

N

Number of bytes in the body of the request. Note that content length is limited to 1 MB.

Request Parameter

Attribute

Required?

Cardinality

Content

Values

Description

Attribute

Required?

Cardinality

Content

Values

Description

filters

Y

1

Map<String, String[]> Object



The content of search criteria filters; valid columns: REQUEST_ID, SERVICE_INSTANCE_ID, SERVICE_INSTANCE_NAME, STATUS)

startTime

N

1

long



start time; search range

endTime

N

1

long



end time; search range

maxResult

N

1

integer



maximum result rows

Response Body

Attribute

Required?

Cardinality

Content

Values

Description

Attribute

Required?

Cardinality

Content

Values

Description

Response

Y

1

javax.ws.rs.core.Response =

List<SoInfraRequest>



A response represent a list of SoInfraRequest



SoInfraRequest Object

Attribute

Required?

Cardinality

Content

Values

Description

Attribute

Required?

Cardinality

Content

Values

Description

reqeustId

Y

1

String



A request id, it is used to query the corresponding top-level process Instance Id

serviceInstanceId

Y

1

String



A Service Instance Id

ServiceInstanceName

Y

1

String



A Service Instanced Name

networkId

Y

1

String



A network id

requestStatus

Y

1

String



A request Status

serviceType

Y

1

String



A service type

startTime

Y

1

String



A request start time

endTime

Y

1

String



A request end time



Get Process Instance Id Detail for the given Request Id

Interface Definition

Description

Interface Definition

Description

URI

http(s)://{host}:{port}/engine-rest/engine/process-instance-id/{requestId}

Operation Type

Get

Content-Type

application/json

Request Header

Header Name

Required?

Description

Header Name

Required?

Description

Accept

N

Determines the format of the body of the response. Valid value is “application/json”

Authorization

Y

Supplies Basic Authentication credentials for the request. If the Authorization header is missing, then an HTTP 400 Invalid Request response is returned. If the string supplied is invalid, then an HTTP 401 Unauthorized response is returned.

Content-Type

Y

Determines the format of the request content. Only application/json is supported.

Content-Length

N

Number of bytes in the body of the request. Note that content length is limited to 1 MB.

Request Parameter

Attribute

Required?

Cardinality

Content

Values

Description

Attribute

Required?

Cardinality

Content

Values

Description

requestId

Y

1

String Object



The content of the Request Id. Based on this, query the corresponding top-level process instance id

Response Body

Attribute

Required?

Cardinality

Content

Values

Description

Attribute

Required?

Cardinality

Content

Values

Description

Response

Y

1

javax.ws.rs.core.Response =

List<ProcessInsanceIdDetail>



A response represent a list of ProcessInstanceIdDetail

ProcessInstanceIdDetail Object

Attribute

Required?

Cardinality

Content

Values

Description

Attribute

Required?

Cardinality

Content

Values

Description

processInstanceId

Y

1

String



A Process Instance Id


Get a Single Process Instance Detail for the given Process Instance Id

Interface Definition

Description

Interface Definition

Description

URI

http(s)://{host}:{port}/engine-rest/engine/process-instance-id/{processInstanceId}

Operation Type

Get

Content-Type

application/json

Request Header

Header Name

Required?

Description

Header Name

Required?

Description

Accept

N

Determines the format of the body of the response. Valid value is “application/json”

Authorization

Y

Supplies Basic Authentication credentials for the request. If the Authorization header is missing, then an HTTP 400 Invalid Request response is returned. If the string supplied is invalid, then an HTTP 401 Unauthorized response is returned.

Content-Type

Y

Determines the format of the request content. Only application/json is supported.

Content-Length

N

Number of bytes in the body of the request. Note that content length is limited to 1 MB.

Request Parameter

Attribute

Required?

Cardinality

Content

Values

Description

Attribute

Required?

Cardinality

Content

Values

Description

processInstanceId

Y

1

String Object



The content of the process instance Id

Response Body

Attribute

Required?

Cardinality

Content

Values

Description

Attribute

Required?

Cardinality

Content

Values

Description

Response

Y

1

javax.ws.rs.core.Response =

ProcessInstanceDetail



A response represent of ProcessInstanceDetail

ProcessInstanceDetail Object

Attribute

Required?

Cardinality

Content

Values

Description

Attribute

Required?

Cardinality

Content

Values

Description

id

Y

1

String



A Process Instance Id

processDefinitionId

Y

1

String



A Process Definition Id, which is used for diagram rendering

ProcessDefinitionName

Y

1

String



A Process Definition Name

superProcessInstanceId

Y

1

String



A parent Process Instance Id. When this is null, the process instance is top-level.

Get a Process Definition XML for the given Process Definition Id

Interface Definition

Description

Interface Definition

Description

URI

http(s)://{host}:{port}/engine-rest/engine/process-definition/{processDefinitionId}

Operation Type

Get

Content-Type

application/json

Request Header

Header Name

Required?

Description

Header Name

Required?

Description

Accept

N

Determines the format of the body of the response. Valid value is “application/json”

Authorization

Y

Supplies Basic Authentication credentials for the request. If the Authorization header is missing, then an HTTP 400 Invalid Request response is returned. If the string supplied is invalid, then an HTTP 401 Unauthorized response is returned.

Content-Type

Y

Determines the format of the request content. Only application/json is supported.

Content-Length

N

Number of bytes in the body of the request. Note that content length is limited to 1 MB.

Request Parameter

Attribute

Required?

Cardinality

Content

Values

Description

Attribute

Required?

Cardinality

Content

Values

Description

processDefinitionId

Y

1

String Object



The content of the process definition Id

Response Body

Attribute

Required?

Cardinality

Content

Values

Description

Attribute

Required?

Cardinality

Content

Values

Description

Response

Y

1

javax.ws.rs.core.Response =

ProcessDefinitionDetail



A response represent of ProcessDefinitionDetail

ProcessDefinitionDetail Object

Attribute

Required?

Cardinality

Content

Values

Description

Attribute

Required?

Cardinality

Content

Values

Description

processDefinitionId

Y

1

String



A Process Definition Id

processDefinitionXml

Y

1

String



A processDefinition BPMN 2 XML String

Get a list of Activity Instance Detail for the given Process Instance Id

Interface Definition

Description

Interface Definition

Description

URI

http(s)://{host}:{port}/engine-rest/engine/activity-instance/{processInstanceId}

Operation Type

Get

Content-Type

application/json

Request Header

Header Name

Required?

Description

Header Name

Required?

Description

Accept

N

Determines the format of the body of the response. Valid value is “application/json”

Authorization

Y

Supplies Basic Authentication credentials for the request. If the Authorization header is missing, then an HTTP 400 Invalid Request response is returned. If the string supplied is invalid, then an HTTP 401 Unauthorized response is returned.

Content-Type

Y

Determines the format of the request content. Only application/json is supported.

Content-Length

N

Number of bytes in the body of the request. Note that content length is limited to 1 MB.

Request Parameter

Attribute

Required?

Cardinality

Content

Values

Description

Attribute

Required?

Cardinality

Content

Values

Description

processInstanceId

Y

1

String Object



The content of the process Instance Id

Response Body

Attribute

Required?

Cardinality

Content

Values

Description

Attribute

Required?

Cardinality

Content

Values

Description

Response

Y

1

javax.ws.rs.core.Response =

List<ActivityInstanceDetail>



A response represent of a list of ActivityInstanceDetail

ActivityInstanceDetail Object

Attribute

Required?

Cardinality

Content

Values

Description

Attribute

Required?

Cardinality

Content

Values

Description

activityId

Y

1

String



An Activity Id

activityName

Y

1

String



An Activity Name

activityType

Y

1

String



An Activity Type; if this type is Call Activity, hyperlink with the calledProcessInstanceId for drill-down

processInstanceId

Y

1

String



A Process Instance Id

calledProcessInstanceId

Y

1

String



A called (child) Process Instance Id

startTime

Y

1

String



an Activity start time

endTime

Y

1

String



an Activity end time

durationInMilliseconds

Y

1

String



an Activity duration time in Milliseconds

Get a list of Process Variables for the given Process Instance Id

Interface Definition

Description

Interface Definition

Description

URI

http(s)://{host}:{port}/engine-rest/engine/variable-instance/{processInstanceId}

Operation Type

Get

Content-Type

application/json

Request Header

Header Name

Required?

Description

Header Name

Required?

Description

Accept

N

Determines the format of the body of the response. Valid value is “application/json”

Authorization

Y

Supplies Basic Authentication credentials for the request. If the Authorization header is missing, then an HTTP 400 Invalid Request response is returned. If the string supplied is invalid, then an HTTP 401 Unauthorized response is returned.

Content-Type

Y

Determines the format of the request content. Only application/json is supported.

Content-Length

N

Number of bytes in the body of the request. Note that content length is limited to 1 MB.

Request Parameter

Attribute

Required?

Cardinality

Content

Values

Description

Attribute

Required?

Cardinality

Content

Values

Description

processInstanceId

Y

1

String Object



The content of the process instance Id

Response Body

Attribute

Required?

Cardinality

Content

Values

Description

Attribute

Required?

Cardinality

Content

Values

Description

Response

Y

1

javax.ws.rs.core.Response =

List<ProcessInstanceVariableDetail>



A response represent of a list of ProcessInstanceVariableDetail

ProcessInstanceVariableDetail Object

Attribute

Required?

Cardinality

Content

Values

Description

Attribute

Required?

Cardinality

Content

Values

Description

name

Y

1

String



A Process Variable Name

value

Y

1

Object



A Process Variable Value

type

Y

1

String



A Process Variable type

HTTP Response Code

HTTP Code

Response Phrase

Description

HTTP Code

Response Phrase

Description

201

Created

An optimization solution is found.

202

Accepted

An optimization request is accepted.

400

Bad request

Bad request.

401

Unauthorized

Request body is not compliant with the API definition.

404

Not found

The server cannot find the requested URI.

405

Method not found

The requested method is not supported by a server.

500

Internal server error

The server encountered an internal server error or timed out.

520

Solver error

Requested number of solutions cannot be found.

Request Example

<TBD>

Response Example

<TBD>