Start Jobs
POST /api/v1/startjob
Required Headers
Authorization: Bearer <token>
Body
Submit a single JSON encoded StartJobBody as the POST body.
Returns
HTTP 200 on success
HTTP 400 on malformed query (do not resubmit without fixes)
HTTP 401 on invalid/missing Authorization token (do not resubmit without updating Authorization)
HTTP 5XX on an error internal to DES.
On failure the response body will be a single JSON encoded ErrorResponse
On success the response body will be a single JSON encoded StartJobResponse. Please ensure that you record the jobRunId if you plan on making followup queries to the API for the results of this job run.
Job Parameters
The parent Job (referenced by jobId) will have a template that may require one or more parameters to be supplied in order to start a run for the job. If unfamiliar with the parameters for a specific Job template, the response from QueryJobs will define the set of JobRunParameters.
Each parameter is either mandatory required: true meaning that a value (even if null) MUST be specified in order for the run to start or optional required: false in which case it can be omitted entirely and a template specific default will be used.
All parameters will define whether they support null values and the expected data type for the parameter. DES will reject any start job request that doesnt adhere to these requirements.
parameters will need to supplied in the StartJobBody using a key value pair object where each entry corresponds to a single parameter value. The key will be the string parameter name and the value will be an instance of JobRunParameterValue (or null for null values)
All parameter values should be supplied encoded as a string (despite the type) and DES will coerce the value into the appropriate type. DateTimes should be supplied as a string using ISO 8601
Remarks
This will create a run for the specified job. The run will execute asynchronously and the execution status will need to be either polled or a webhook notification must be configured.
Details about configuring a notification webhook are a work in progress.
Example POST Body
{
"jobId": "43f87799-62c6-4001-92f9-6b3df816a6d6",
"parameters": {
"integerParameter": { "type": 2, "valueStringEncoded": "123456" },
"dateParameter": { "type": 4, "valueStringEncoded": "2021-10-19T06:16:47Z" },
"nullDecimal": { "type": 3, "valueStringEncoded": null },
"nullParameter2": null /* This is alternative way to define null */
}
}