ArcGIS REST API

Schedule New Job

Description

License:

The ArcGIS Data Reviewer for Server extension is required in order to use this resource.

A REST resource that schedules a new job for execution. Execution does not start until the date and time you specify. Use a cron time and date string to indicate time of execution.

The batchValidationSettings parameter contains the following name/value pairs:

  • batchJobFileItemId: The itemId of an uploaded batch job file. Use the Data Reviewer map server's upload operation to upload the batch job file to the server. The upload operation returns the itemId. See the ArcGIS REST API documentation for more information about uploading.
  • sessionId: The session in which validation will occur. Use the full string format of session Id: Session 1 : Session 1.
  • productionWorkspace: This parameter is optional. A path to a production workspace. A production workspace allows you to validate data in a different workspace than what is referenced in the batch job file (.rbj). The workspace path can be absolute or UNC. The ArcGIS server account must have access to the folder that contains the workspace (fGdb) or the connection file that references the workspace (eGdb). Example: c:\\arcgisserver\\data\\arcsde_connection_file.sde.
  • productionWorkspaceVersion: This parameter is optional. This parameter applies only if a production workspace is specified and it is an enterprise geodatabase. The productionWorkspaceVersionparameter allows you to validate data in a particular version. If the productionWorkspaceVersion parameter is not specified, the version saved in the production workspace connection file is validated. Example: "productionWorkspaceVersion" : "SDE.DEFAULT".
  • analysisArea: This parameter is optional. JSON polygon features that will be joined to create a processing area. Features that intersect this area will be validated by the Reviewer batch job. Features outside this area will not be validated. Example JSON structure:"analysisArea": {"rings":[[[-97.74, 30.303],[-97.738,30.303 ], [-97.738, 30.305],[-97.74, 30.305],[-97.74, 30.303]]],"spatialReference":{"wkid": 4326}}
  • changedFeaturesOnly: This parameter is optional and only applies to multiversioned eGdb data. The default value is false . If true, validation is limited to features that have changed from a parent to the child version. Changes between versions include the following:
    • Features inserted in the child version but not the parent
    • Features changed in the child version and unchanged in the parent
    • Features changed in both child and parent versions
    • Features changed in the child version and deleted in the parent
    Note:

    To validate data with changedFeaturesOnly, the connection file in productionWorkspace must reference a child version.

The schedule parameter contains the following name/value pairs:

  • cronExpression: A cron string indicating time and date of execution. The time is in UTC. Cron expressions follow this format: seconds, minutes, hours, day-of-month, month, day-of-week, year. For example: a cron schedule of 0 30 10 * * ? executes the job every day at 10:30 UTC. The server will return an error if you try to schedule a job that executes more frequently than once every 15 minutes.
  • executionsEndDate (optional): specifies ending date, in epoch time in milliseconds, for a batch validation schedule. If both this property and maxNumberOfExecutions are set, the Batch Validation schedule will finish with whichever condition happens first. For example: "executionsEndDate":"1349817000000" equates to October 9, 2012 at 21:10:00.
  • maxNumberOfExecutions (optional): specifies the maximum number of batch validation executions that can run. If both this property and executionsEndDate are set, the Batch Validation schedule will finish with whichever condition happens first.

Request parameters

ParameterDetails
batchValidationSettings

Description: JSON object with four name/value pairs

Values: {"batchJobFileItemId":"<upload itemId>", "sessionId":"<reviewer_session_id>","productionWorkspace":"<path to production workspace>" ,"productionWorkspaceVersion":"<name of version>" ,"analysisArea":<JSON polygon>,"changedFeaturesOnly":true | false}

schedule

Description: JSON object with one required name/value pair and two optional name/value pairs.

Values: {"cronExpression":"seconds, minutes, hours, day-of-month, month, day-of-week, year," "executionsEndDate (optional)":"<ending date in epoch time in milliseconds>", "maxNumberOfExecutions(optional)":"<number of executions>"}.

batchValidationJobTitle

Description: The batch validation job title. This information is stored in the scheduler database with the adhoc job information. It is not stored in the Data Reviewer workspace. The getJobDetails operation returns information that includes the job title.

batchValidationJobCreatedBy

Description: Indicates the user name that executes the adhoc job. This information is stored in the scheduler database with the adhoc job information. It is not stored in the Reviewer workspace. The getJobDetails operation returns information that includes the job created by name.

f

Description: The response format. The default response format is html.

Values: html | json

Example usage

Example 1: Schedules a batch job. The request specifies a production workspace, an upload itemId, a session, and an execution schedule of every day at 10:30 (0 30 10 * * ?). Submitting this request will return an scheduled job id, but actual batch validation execution may fail if you don't have this production workspace or session. To use this sample request:

  1. Change the production workspace (or remove it).
  2. Change the session id if your Data Reviewer workspace does not have a session called "Session 1 : Session 1."
  3. Upload a batch job file. The upload operation returns an itemId. Change the batchJobFileItemId to your uploaded itemId.

http://localhost:6080/arcgis/rest/services/reviewer/MapServer/exts/DataReviewerServer/BatchValidation/scheduleNewJob?batchValidationSettings={"batchJobFileItemId":"ifff042a8-cbc5-43e7-b1ad-1a4edd593c0e","sessionId":"Session 1 : Session 1","productionWorkspace":"c:\\data\\LocalGovernment.gdb"}&schedule={"cronExpression":"0 30 10 * * ?"}&batchValidationJobTitle=&batchValidationJobCreatedBy=&f=pjson

JSON response example

{
  "scheduledJobId": "f43570ee-c9db-4a6c-bcd1-54bf6f9627c7"
}