Acceldata
Acceldata
Last updated:

Policy Schedule Management

Managing policy schedules across a large inventory often requires calling the full Update Policy API and submitting the complete policy configuration — even when only the schedule needs to change. Policies can contain a large number of configuration parameters, and submitting the full payload each time increases the risk of accidentally modifying fields that were not intended to change.

The Policy Schedule Management API provides a dedicated endpoint to enable, disable, or update the schedule for a policy using only the fields relevant to scheduling. The rest of the policy configuration is preserved exactly as it is.

Endpoint

PUT/catalog-server/api/rules/:policyId/schedule

Authentication

This endpoint requires Bearer token authentication using an ADOC API key pair. Include the access key and secret key in the request header as a Base64-encoded Bearer token. For information on generating API keys, see API Keys.

Path Parameters

Parameter

Type

Required

Description

policyId

Integer

Yes

The unique identifier of the policy whose schedule you want to update. You can find the policy ID on the policy detail page in ADOC or from the response of a List Policies API call.

Request Body

Send the request body as JSON. All fields are optional, but at least one field must be provided.

Field

Type

Required

Description

scheduled

Boolean

No

true enables the schedule. false disables it. When set to false, the policy retains its existing cron expression and time zone but stops executing on a schedule.

cronExpression

String

No

A valid cron expression defining the execution schedule. Example: "0 */2 * * * ?" runs the policy every two minutes.

timeZone

String

No

The time zone for evaluating the cron expression. Accepts standard IANA time zone identifiers. Example: "UTC", "US/Pacific", "Asia/Kolkata".

Request Example

The following example enables scheduling on policy 60, sets it to run every two minutes, and applies the UTC time zone.

Bash

PUT /catalog-server/api/rules/60/schedule

Content-Type: application/json

Authorization: Bearer <token>

{

"scheduled": true,

"cronExpression": "0 */2 * * * ?",

"timeZone": "UTC"

}

Response

A successful request returns HTTP 200 OK with the updated schedule configuration for the policy.

Field

Type

Description

policyId

Integer

The unique identifier of the updated policy.

scheduled

Boolean

The current scheduling state of the policy after the update.

policyType

String

The type of the policy. Possible values: DATA_QUALITY, RECONCILIATION, DATA_FRESHNESS, AUTO_ANOMALY.

version

Integer

The updated version number of the policy. Each schedule update increments the policy version by 1.

cronExpression

String

The active cron expression for the policy schedule.

timeZone

String

The time zone applied to the cron schedule.

200 OK — Schedule Updated

Bash

{

"policyId": 60,

"scheduled": true,

"policyType": "DATA_QUALITY",

"version": 6,

"cronExpression": "0 */2 * * * ?",

"timeZone": "UTC"

}

501 Not Implemented — Unsupported Policy Type

Calling this endpoint for a policy type that does not support scheduling returns HTTP 501 Not Implemented. The policy is not modified.

Bash

{

"error": "Not Implemented",

"message": "Schedule management is not supported for this policy type."

}

Supported Policy Types

Policy Type

Schedule Support

Behavior

Data Quality

Supported

Schedule updated successfully. Returns 200 OK.

Reconciliation

Supported

Schedule updated successfully. Returns 200 OK.

Data Freshness

Supported

Schedule updated successfully. Returns 200 OK.

Auto Anomaly

Supported

Schedule updated successfully. Returns 200 OK.

Data Drift

Not supported

Returns 501 Not Implemented. Policy is not modified.

Schema Drift

Not supported

Returns 501 Not Implemented. Policy is not modified.

Profile Anomaly

Not supported

Returns 501 Not Implemented. Policy is not modified.

Notes

  • Version increment: Every successful call to this endpoint increments the policy version by 1, regardless of which fields are updated. This is visible in the policy's version history.
  • Partial updates: Only the fields included in the request body are updated. Fields not included in the request retain their existing values.
  • Disabling a schedule: Setting scheduled: false stops the policy from running on its schedule but preserves the existing cron expression and time zone. Re-enabling the schedule with scheduled: true resumes execution on the same schedule.
  • Full policy payload not required: This endpoint updates only schedule-related attributes. Use the Update Policy API to modify other policy configuration fields.

Related

  • API Keys — Generate the credentials required to authenticate API requests.
  • Manage Policies — View and manage policy schedules from the ADOC user interface.
  • Update Policy API — Update full policy configurations including rules, thresholds, and notification settings.