Execution Request Creation

The specification of the ReST service to start the POM cycle execution is shown below:

HTTP Method POST

Path

http://<pom-server-host>/ProcessServices/services/private/executionEngine/schedules/<Schedule_Name>/execution

Note: <pom-server-host> and <Schedule_Name> variables need to be changed according to the target environment and schedule.

HTTP Headers

Content-Type = application/json

Accept-Version = 16.0

Authorization: Bearer <<OAuth_Token_FROM_IDCS_or_OCI_IAM>>

Request Body

{
   "cycleName": "<Cycle Name>",
   "flowName": "<Flow Name>",
   "processName": "<Process Name>",
   "requestParameters":"<Comma Separated Key Value Pairs>"
}

Notes:

  • processName attribute required only for Ad hoc cycles

  • requestParameters attribute is optional. This is useful if external systems would like to provide custom identifiers to POM and expect them to be returned on callbacks sent from POM.

Response Body

{
    "value": "171" -Execution Request ID,
    "cycleName": "CycleName",
    "flowName": "FlowName",
    "processName": "ProcessName",
    "jobName": "JobName",
    "requestType": "requestType",
    "requestParameters": ":"<Comma Separated Key Value Pairs>"
    "executionEngineInfo": "STARTED",
    "hyperMediaContent": {}
}
Invocation Request Payload

Nightly Cycle invocation

{
    "cycleName" : "Nightly",
    "flowName" : "Nightly",
    "requestParameters" : "callerId=XXX,correlationId=123"
}

Note: The Nightly Cycle contains a single flow hence a single invocation will suffice to start the Nightly Flow.

Hourly Cycle invocation

{
    "cycleName" : "Hourly_Cycle_<N>",
    "flowName" : "<FLOW_NAME>",
    "requestParameters" : "callerId=XXX,correlationId=456"
}

<N> is the cycle number (1 to 24)

<FLOW_NAME> is name of the flow (Process Group) to invoke. For example, SALESPROCESS_CYCLE.

{
     "cycleName" : "Hourly_Cycle_1",
     "flowName" : "SALESPROCESS_CYCLE",
     "requestParameters":"callerId=Sys_Name,correlationId=456" 
}

Note: The Hourly Cycles comprise of many distinct flows and for each flow a separate invocation would be required.

Ad hoc Cycle invocation

In case of Adhoc processes, the parameters for Jobs can be overridden by parameters specified as part of the invocation request.

{
    "cycleName" : "Adhoc",
    "flowName" : "Adhoc",
    "processName" : "<ADHOC_PROCESS_NAME>",
    "requestParameters" : "callerId=xxx,correlationId=789"
}

Example:

{
    "cycleName": "Adhoc",
    "flowName":"Adhoc",
    "processName":"RPM_NEW_ITEM_LOCATION_PROCESS _ADHOC",
    "requestParameters":"callerId=Ext_System_Name, correlationId= 789"
}

Example with overriding job parameters:

{
    "cycleName": "Adhoc",
    "flowName":"Adhoc",
    "processName":"RPM_NEW_ITEM_LOCATION_PROCESS _ADHOC",
    "requestParameters":"callerId=Ext_System_Name, correlationId=789,jobParams.RPM_NEW_ITEM_JOB=param1|param2"
}

Note: Ad hoc Cycles are composed of many discrete individual Processes. For each Process, a separate invocation is required.