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 38568012f4d1e8ee1841d283a47aa3ba78e124ea58354b5fc60f4dab8a63347d05cf5552484dafda3bfa4c5db84e580b1cb37bcf8e65b39f7f8549a443e6f78a2c7be3f31b3d845e24776c835e498e8e883bb40c46bd15af4f40ca94e823acedcdd4e9659e74b34a07a85c4586cd2ed914b6dce015874783ef768fda78183a4208930954a377f66eb56c8b92cexampl4s437a19317ca6ce7f3233d5a01aca35dbad93468b833f2cf71010809006a937670adce711ca8be46638e8
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 38568012f4d1e8ee1841d283a47aa3ba78e124ea58354b5fc60f4dab8a63347d05cf5552484dafda3bfa4c5db84e580b1cb37bcf8e65b39f7f8549a443e6f78a2c7be3f31b3d845e24776c835e498e8e883bb40c46bd15af4f40ca94e823acedcdd4e9659e74b34a07a85c4586cd2ed914b6dce015874783ef768fda78183a4208930954a377f66eb56c8b92cexampl4s437a19317ca6ce7f3233d5a01aca35dbad93468b833f2cf71010809006a937670adce711ca8be46638e8
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 38568012f4d1e8ee1841d283a47aa3ba78e124ea58354b5fc60f4dab8a63347d05cf5552484dafda3bfa4c5db84e580b1cb37bcf8e65b39f7f8549a443e6f78a2c7be3f31b3d845e24776c835e498e8e883bb40c46bd15af4f40ca94e823acedcdd4e9659e74b34a07a85c4586cd2ed914b6dce015874783ef768fda78183a4208930954a377f66eb56c8b92cexampl4s437a19317ca6ce7f3233d5a01aca35dbad93468b833f2cf71010809006a937670adce711ca8be46638e8
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 38568012f4d1e8ee1841d283a47aa3ba78e124ea58354b5fc60f4dab8a63347d05cf5552484dafda3bfa4c5db84e580b1cb37bcf8e65b39f7f8549a443e6f78a2c7be3f31b3d845e24776c835e498e8e883bb40c46bd15af4f40ca94e823acedcdd4e9659e74b34a07a85c4586cd2ed914b6dce015874783ef768fda78183a4208930954a377f66eb56c8b92cexampl4s437a19317ca6ce7f3233d5a01aca35dbad93468b833f2cf71010809006a937670adce711ca8be46638e8
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."}