5.5.1
Table Of Contents
- Developing a Web Services Client for VMware vCenter Orchestrator
- Contents
- Developing Web Services Client for VMware vCenter Orchestrator
- Developing a Web Services Client
- Using the vCenter Orchestrator REST API
- Authenticating Against Orchestrator and Third-Party Systems
- Accessing the Reference Documentation for the Orchestrator REST API
- Using the Java REST SDK
- Operations with Workflows
- Working with Tasks
- Finding Objects in the Orchestrator Inventory
- Importing and Exporting Orchestrator Objects
- Deleting Orchestrator Objects
- Setting Permissions on Orchestrator Objects
- REST API Permissions
- Retrieve the Permissions of a Workflow
- Delete the Permissions of a Workflow
- Set the Permissions for a Workflow
- Retrieve the Permissions of an Action
- Delete the Permissions of an Action
- Set the Permissions for an Action
- Retrieve the Permissions of a Package
- Delete the Permissions of a Package
- Set the Permissions for a Package
- Retrieve the Permissions of a Resource
- Delete the Permissions of a Resource
- Set the Permissions for a Resource
- Retrieve the Permissions of a Configuration Element
- Delete the Permissions of a Configuration Element
- Set the Permissions for a Configuration Element
- Performing Operations with Plug-Ins
- Performing Server Configuration Operations
- Performing Tagging Operations
- Writing a Client Application for the Orchestrator SOAP Service
- Process for Creating an Orchestrator Web Service Client Application
- Web Service Endpoint
- Generating the Orchestrator Web Service Stubs
- Accessing the Server from Web Service Clients
- Create a Web Service Client
- Connect to the Orchestrator Web Service
- Find Objects in the Orchestrator Server
- Find Objects by Using the find Operation
- Find Objects by Using the findForId Operation
- Find Objects by Using the findRelation Operation
- Find Workflows in the Orchestrator Server
- Find Workflows by Using the getAllWorkflows Operation
- Retrieve the ID of a Workflow
- Find Workflows by Using the getWorkflowsWithName Operation
- Find Workflows by Using the getWorkflowForID Operation
- Run Workflows from a Web Service Client
- Interact with a Workflow While it Runs
- Obtain Workflow Results
- Time Zones and Running Workflows Through Web Services
- Web Service Application Examples
- Web Service API Object Reference
- Web Service API Operation Reference
- answerWorkflowInput Operation
- cancelWorkflow Operation
- echo Operation
- echoWorkflow Operation
- executeWorkflow Operation
- find Operation
- findForId Operation
- findRelation Operation
- getAllPlugins Operation
- getAllWorkflows Operation
- getWorkflowForId Operation
- getWorkflowInputForId Operation
- getWorkflowInputForWorkflowTokenId Operation
- getWorkflowsWithName Operation
- getWorkflowTokenBusinessState Operation
- getWorkflowTokenForId Operation
- getWorkflowTokenResult Operation
- getWorkflowTokenStatus Operation
- hasChildrenInRelation Operation
- hasRights Operation
- sendCustomEvent Operation
- simpleExecuteWorkflow Operation
- Index
Working with Tasks
Using the Task service of the Orchestrator REST API, you can perform any operation that is related to
managing tasks in Orchestrator. You can create a task for scheduling a workflow, modify the properties of
an already existing task, delete a task, and so on.
The maximum number of scheduled tasks supported by Orchestrator is 50.
Create a Task
You can create a task for scheduling a workflow by using the Orchestrator REST API.
Prerequisites
Verify that you have imported the sample workflows package in Orchestrator. The package is included in
the Orchestrator sample applications ZIP file that you can download from the Orchestrator documentation
page.
Procedure
1 Retrieve the definition of the workflow for which you want to create a task by making a GET request at
the URL of the workflow:
GET https://{vcoHost}:{port}/vco/api/workflows/{workflowID}/
In the workflow definition you can view the name and the ID of the workflow, as well as its input
parameters.
2 To create a new task for the workflow, make a POST request at the URL of the Task service:
POST https://{vcoHost}:{port}/vco/api/tasks/
3 In the request body, provide the parameters for the new task in a task element.
If the request is successful, the API responds with status code 202 and an empty response body.
Example: Create a Task for the Send Hello Workflow
You can create a task that schedules the Send Hello workflow to run on the fifteenth minute of every hour
starting from a specific date.
1 Make a GET request at the URL of the Send Hello workflow to retrieve its definition:
GET https://localhost:
8281/vco/api/workflows/CF808080808080808080808080808080DA808080013086668236014a0614d16e1/
2 Make a POST request at the URL of the Task service by providing the parameters of the new task in the
request body:
POST https://localhost:8281/vco/api/tasks/
<task xmlns="http://www.vmware.com/vco">
<name>Send Hello Task</name>
<recurrence-cycle>every-hours</recurrence-cycle>
<recurrence-start-date>2012-01-31T11:00:00+00:00</recurrence-start-date>
<recurrence-end-date>2012-02-05T11:00:00+00:00</recurrence-end-date>
<recurrence-pattern>15:15</recurrence-pattern>
<input-parameters>
<parameter name="name" type="string">
<string>John Smith</string>
</parameter>
</input-parameters>
Chapter 2 Using the vCenter Orchestrator REST API
VMware, Inc. 29