This operation executes a workflow as a job. To execute a workflow as an API, see Executing a Workflow as an API.
For information on the Workflow Job mode, see Setting General Properties.
Request
Syntax
Send the request using either XML or JSON:
-
XML
POST <webservice>/Workflow/{workflowName|uniqueGuid|workflowId}/Action/Execute?outputOnly={outputOnly} HTTP/1.1 Host: <host name> Accept: application/xml Authtoken: <authentication token> Content-type: application/xml <execute_workflow_template.xml>
-
JSON
POST <webservice>/Workflow/{workflowName|uniqueGuid|workflowId}/Action/Execute?outputOnly={outputOnly} HTTP/1.1 Host: <host name> Accept: application/json Authtoken: <authentication token> Content-type: application/json <execute_workflow_template.json>
where <webservice> is the root path used to route the API requests to the Web Server.
For more information, see Available Web Services for REST API.
Request Parameters
Name |
Description |
Required |
|
The name, globally unique ID (GUID), or ID of the workflow. If any of these values are not known, use the GET Workflow API to retrieve them. |
Yes |
outputOnly |
The option to return the workflow output. In the CommCell console, this is the output in the Outputs tab in the Workflow Properties pane. The workflow output is returned in the response in either XML or JSON format. Use the outputFormat parameter in the request body to define the format of the workflow output. Note: Before using the outputOnly parameter, go to the CommCell console and set the Start interactive session property to true. For instructions, see Setting General Properties. Valid values are True/False. |
No |
Request Headers
Name |
Description |
Host |
The host name of the web server. |
Accept |
The format of the response. Valid values are: application/xml or application/json. |
Authtoken |
The authentication token received after successfully logging on. For details on receiving an authentication token, see Authentication. |
Content-type |
The media type contained in the request body. |
Request Body
Download the XML or JSON file required for this request: execute_workflow_template.xml or execute_workflow_template.json. The following table displays the parameters for the request body.
Parameter |
Description |
Element |
Parent Element |
outputFormat |
The format of the workflow output if the outputOnly request parameter is true. Valid values are:
|
Workflow_StartWorkflow |
|
workflow_level_input_variable |
The value of the workflow level input needed to execute the workflow. Add an element for each input, for example: <inputs> where:
|
inputs |
options |
clientName |
The client name of the workflow engine. If the client name is not entered, the workflow executes using the default workflow engine. To use the workflow engine with the latest deployed version of the workflow, use the clientId parameter. |
client |
Workflow_StartWorkflow |
clientId |
The option to use the workflow engine with the latest deployed version of the workflow. Valid value is 0. |
client |
Workflow_StartWorkflow |
Response
Response Parameters
Parameter |
Description |
Element |
jobId |
The system-generated ID assigned to the job. |
Workflow_StartWorkflowResponse |
processId |
The system-generated ID assigned to the process. |
Workflow_StartWorkflowResponse |
output_str |
The workflow output. |
outputs |
Examples
Sample Request
XML
This request executes a workflow named "Registration." The workflow uses four workflow level inputs.
POST <webservice>/Workflow/Registration/Action/Execute HTTP/1.1
Host: client.mydomain.com
Accept: application/xml
Authtoken: QSDK 38568012f4d1e8ee1841d283a47aa3ba78e124ea58354b5fc6
0f4dab8a63347d05cf5552484dafda3bfa4c5db84e580b1cb37bcf8e65b39f7f
8549a443e6f78a2c7be3f31b3d845e24776c835e498e8e883bb40c46bd15af4f
40ca94e823acedcdd4e9659e74b34a07a85c4586cd2ed914b6dce015874783ef7
68fda78183a4208930954a377f66eb56c8b92cexampl4s437a19317ca6ce7f323
3d5a01aca35dbad93468b833f2cf71010809006a937670adce711ca8be46638e8
Content-type: application/xml
<Workflow_StartWorkflow>
<options>
<inputs>
<F_NAME>J</F_NAME>
<L_NAME>Doe</L_NAME>
<COMPANY>My Company</COMPANY>
<EMAIL_ADDR>jdoe@mycompany.com</EMAIL_ADDR>
</inputs>
</options>
<client>
<clientName>client0001</clientName>
</client>
</Workflow_StartWorkflow>
This request executes a workflow named "Approval" and returns the workflow output in JSON format in the response. The workflow uses one workflow level input.
POST <webservice>/Workflow/Approval/Action/Execute?outputOnly=true HTTP/1.1
Host: client.mydomain.com
Accept: application/xml
Authtoken: QSDK 38568012f4d1e8ee1841d283a47aa3ba78e124ea58354b5fc6
0f4dab8a63347d05cf5552484dafda3bfa4c5db84e580b1cb37bcf8e65b39f7f
8549a443e6f78a2c7be3f31b3d845e24776c835e498e8e883bb40c46bd15af4f
40ca94e823acedcdd4e9659e74b34a07a85c4586cd2ed914b6dce015874783ef7
68fda78183a4208930954a377f66eb56c8b92cexampl4s437a19317ca6ce7f323
3d5a01aca35dbad93468b833f2cf71010809006a937670adce711ca8be46638e8
Content-type: application/xml
<Workflow_StartWorkflow>
<outputFormat>1</outputFormat>
<options>
<inputs>
<EMAIL_ADDR>jdoe@mycompany.com</EMAIL_ADDR>
</inputs>
</options>
<client>
<clientName>client0001</clientName>
</client>
</Workflow_StartWorkflow>
JSON
This request executes a workflow named "Registration." The workflow uses four workflow level inputs.
POST <webservice>/Workflow/Registration/Action/Execute HTTP/1.1
Host: client.mydomain.com
Accept: application/json
Authtoken: QSDK 38568012f4d1e8ee1841d283a47aa3ba78e124ea58354b5fc6
0f4dab8a63347d05cf5552484dafda3bfa4c5db84e580b1cb37bcf8e65b39f7f
8549a443e6f78a2c7be3f31b3d845e24776c835e498e8e883bb40c46bd15af4f
40ca94e823acedcdd4e9659e74b34a07a85c4586cd2ed914b6dce015874783ef7
68fda78183a4208930954a377f66eb56c8b92cexampl4s437a19317ca6ce7f323
3d5a01aca35dbad93468b833f2cf71010809006a937670adce711ca8be46638e8
Content-type: application/json
{ "Workflow_StartWorkflow": {
"options":{
"inputs":{
"F_NAME":"J",
"L_NAME":"Doe",
"COMPANY":"My Company",
"EMAIL_ADDR":"jdoe@mycompany.com"
}
},
"client":{
"clientName":"client0001"
}
}
}
This request executes a workflow named "Approval" and returns the workflow output in JSON format in the response. The workflow uses one workflow level input.
POST <webservice>/Workflow/Approval/Action/Execute?outputOnly=true HTTP/1.1
Host: client.mydomain.com
Accept: application/json
Authtoken: QSDK 38568012f4d1e8ee1841d283a47aa3ba78e124ea58354b5fc6
0f4dab8a63347d05cf5552484dafda3bfa4c5db84e580b1cb37bcf8e65b39f7f
8549a443e6f78a2c7be3f31b3d845e24776c835e498e8e883bb40c46bd15af4f
40ca94e823acedcdd4e9659e74b34a07a85c4586cd2ed914b6dce015874783ef7
68fda78183a4208930954a377f66eb56c8b92cexampl4s437a19317ca6ce7f323
3d5a01aca35dbad93468b833f2cf71010809006a937670adce711ca8be46638e8
Content-type: application/json
{ "Workflow_StartWorkflow": { "outputFormat":"1", "options":{
"inputs":{
"EMAIL_ADDR":"jdoe@mycompany.com"
}
},
"client":{
"clientName":"client0001"
}
}
}
Sample Response
XML
This is the response when the workflow is executed.
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<Workflow_StartWorkflowResponse jobId="163017" processId="163017"/>
This is the response when the workflow is executed and the workflow output in XML format was requested.
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<outputs><output_str class="java.lang.String">Your machine request was approved.</output_str></outputs>
JSON
This is the response when the workflow is executed.
{"jobId":"4548","processId":"4548"}
This is the response when the workflow is executed and the workflow output in JSON format was requested.
{"output_str":"Your machine request was approved."}