layout: help title: Configuring Job Definitions breadcrumb: /jobs/ roles:

The job scheduler provides a simple, streamlined way for an Admin to create a batch operation and schedule it to repeatedly execute. Organizations can use Vault’s job scheduling functionality to move objects into new lifecycle states or to send out notifications.

Enabling Job Scheduler

Job Scheduler is automatically available on all vaults.

Accessing Job Scheduling

You can schedule jobs and review job statuses from Admin > Operations. Access to this area is controlled by the Admin: Operations and Admin: Jobs permissions.

Glossary of Job Terms

When defining a job, there are several key elements:

How to Define Object Operation Jobs

To create a new job definition for a date-based object operation job:

  1. Navigate to Admin > Operations > Job Definitions and click Create.
  2. Enter a Title for the job. This value appears in the Job Definitions page, audit logs, and automatic notifications to the job owner.
  3. Optional: If needed, change the Name for the job. The field autofills based on the Title, but is editable. This is the value the API uses to reference the job.
  4. In the Type field, select Date Based Object Operation.
  5. Select a user or group (recommended) as the Job Owner. Job owners receive automatic notifications about exceptions encountered during a job instance. Successful jobs do not generate these notifications. Making a user the job owner does not grant any additional application access, so verify that the selected job owners have permission sets with the necessary access.
  6. Select a Schedule, including a time zone. Note that all jobs run daily, but you can choose what time they will run. This also sets the context for the trigger date. Vault evaluates “today” as “today in the specified time zone.”
  7. Select an Action. Some fields will change based on your selected action. See details below for State Change, Send a Notification, and No Operation actions.
  8. Select an Object. For example, if your job should move products into a new state, you would select the Product object.
  9. Optional: Under Additional Conditions, select an object field, operator, and field value to add another condition to the object record query. If you need more than one additional condition, you can click the plus (+) icon to add them.
  10. Under Trigger Date, select an object field to use as the Trigger Date. Choose whether the trigger date should work before and on the job date, or only before the job date.
  11. Optional: Under Optional Notifications or Notifications, create additional notifications by clicking Add. To add more than one notification, continue to click Add. For Send Date, specify the number of days before the action’s trigger date. Select a Message Template for the notification. Select one or more object lifecycle roles as Recipients. See details on notifications and message templates.
  12. Optional: To make the job run at the next scheduled time, set the Status to Active. The job definition will not schedule job instances if it is inactive.
  13. Click Save.

How to Define External URL Call Jobs

To create a new job definition for an external URL call job:

  1. Navigate to Admin > Operations > Job Definitions and click Create.
  2. Enter a Title for the job. This value appears in the Job Definitions page, audit logs, and automatic notifications to the job owner.
  3. Optional: If needed, change the Name for the job. The field auto-fills based on the Title, but is editable. This is the value the API uses to reference the job.
  4. In the Type field, select External URL Call.
  5. Select a user or group (recommended) as the Job Owner. Job owners receive automatic notifications about exceptions encountered during a job instance. Successful jobs do not generate these notifications. Making a user the job owner does not grant any additional application access, so verify that the selected job owners have permission sets with the necessary access.
  6. Select a Schedule, including a time zone. Note that all jobs run daily, but you can choose what time they will run. Vault evaluates “today” as “today in the specified time zone.”
  7. In the text field, enter a URL that Vault will call when this job executes. The URL must include “https://”.
  8. Optional: From the Fields area, search for tokens (Instance ID, Session ID, user details, and vault details) to include in the URL. To add a field’s token, double-click on the field name.
  9. Optional: When ready, click Validate to automatically check that your URL is valid. Note that Vault does not attempt to connect to the remote host; validation only covers the structure of the URL and validity of any tokens.
  10. In the Run As picklist, select a user account that Vault will utilize when executing the external call. If you have any security profile other than Vault Owner, you can only choose yourself.
  11. Optional: To make the job run at the next scheduled time, set the Status to Active. The job definition will not schedule job instances if it is inactive.
  12. Click Save.

How to Edit Job Definitions

To edit definitions for an existing job:

  1. Navigate to Admin > Operations > Job Definitions and click on the job’s title.
  2. Make any necessary changes.
  3. Set the Status to Active. When you edit, Vault will always set the status to Inactive automatically.
  4. Click Save.

Details for State Change Actions

When creating or editing a job with a State Change action, you’ll see the following fields in addition to those detailed above:

Details for Notification Actions

When creating or editing a job with the Send a Notification action, you’ll see the following fields in addition to those detailed above:

Details for No Operation Actions

No Operation is a special type of job action that allows Admins to locate object records which meet the specified criteria and send notifications, but not take any action against the located items. In certain situations, this is better than using the Send a Notification action because Optional Notifications function differently. The Send a Notification action uses the trigger date to select an unbounded range of object records: any items with [Date Field] before today. This may select a large range of items. Optional Notifications use a bounded trigger date: X days before trigger date. For example, “5 days before” would only select object records where [Date Field] is today’s date or within 5 days into the future from today.

For example, use a No Operation action with optional notifications (part of the same job) to alert owners that their record is coming due for Periodic Review. The notifications will alert the users, but Vault will not actually change the record (even if the Periodic Review becomes overdue) if the responsible party does not act.

Please consult with Veeva Support before implementing jobs using this action.

When creating or editing a job with the No Operation action, there are no additional details to specify.

Details for External URL Call HTTPS Post Action

An external URL call navigates to a URL for an external service that understands the parameters being passed and can take additional actions beyond that. If the action passes a session ID, the service may call back into Vault using the API and take any number of actions as the user specified in the Run As parameter. The actions may include querying for more data, etc.

When defining an external URL call, you must use an HTTPS URL.

Trigger Dates on Objects

Vault can trigger a job based on dates from the affected object record. For example, your vault might move object records into Review Required state on the Approval Ends date.

Triggering Jobs

To set up a trigger based on a date from the affected object record:

  1. Select an object field to use as the Trigger Date.
  2. Choose whether the trigger date should work before and on the job date, or only before the job date.

Audit Logging

Actions based on object operation jobs are included in the Object Record Audit History. In the logs, these actions appear with the user name System.

Vault does not track external URL calls in the audit logs.

Job Monitoring

If any action encounters an error, Vault notifies the job owner (user or group) via email. Vault also provides extended options for real-time job tracking and working with scheduled and completed job instances. 

Scheduling

When there are scheduled jobs configured, Vault puts the job into a queue of tasks at the scheduled start time. If Vault is unavailable at that time because of maintenance, a system outage, or too many simultaneous jobs, the job continues trying to run for approximately 5 hours after the scheduled time. If the job cannot start within that window, Vault skips the instance. These jobs show the Missed Schedule completion status. If your jobs regularly miss their schedules, contact Veeva Support. You may need to stagger your jobs’ start times or reduce the total number of jobs by combining similar jobs.