You can create a task for scheduling a workflow by using the Orchestrator REST API.

Before you begin

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://{orchestrator_host}:{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://{orchestrator_host}:{port}/vco/api/tasks/
  3. In the request body, provide the parameters for the new task in a task element.

Results

If the request is successful, the API responds with status code 202 and an empty response body.

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>
        <workflow href="https://localhost:8281/vco/api/workflows/CF808080808080808080808080808080DA808080013086668236014a0614d16e1/">
            <name>Send Hello</name>
        </workflow>
        <start-mode>normal</start-mode>
    </task>