Skip to content

Job Scheduler API (2)

The Job Scheduler API provides a comprehensive interface for managing and scheduling various types of jobs related to data monitoring, storage maintenance, and briefing events within a CDQ services. This API is designed to facilitate the automation of routine tasks, enhance data integrity through validation and duplication jobs, and support the efficient management of storage resources by scheduling deletion of outdated storages.

Languages
Servers
Mock server

https://idp.cdq.com/_mock/apis/job-scheduler-api/api-v1/

Production SOAP

https://job-scheduler-api.reverse-proxy.prod.k8s.production.cdq-cloud-engine.com/soap/v1/

Production

https://job-scheduler-api.reverse-proxy.prod.k8s.production.cdq-cloud-engine.com/

Job Schedules

Contains a set of endpoints created to manage and automate to schedule different types of jobs. These jobs are crucial for maintaining the efficiency and reliability of data within the system. The endpoints in this category enable users to schedule jobs for specific tasks, such as deleting old storage data, validating and duplicating data mirrors, and initiating data monitoring jobs. Each type of job serves a specific purpose, contributing to the overall data management strategy by automating routine maintenance tasks, ensuring data accuracy, and optimizing storage usage.

Operations

Schedule Old Storages Delete Job

Request

Enables users to efficiently manage their storage by automatically removing outdated storage data. It identifies storage data that exceeds a user-defined age threshold, ensuring that only relevant and current data is contained.

Bodyapplication/jsonrequired
userIdstring(UserId)required

Unique ID of a user.

Example: "johndoe"
olderThanDaysinteger(OlderThanDays)required

Number of days that storage is older than are removed.

Example: "7"
curl -i -X POST \
  https://idp.cdq.com/_mock/apis/job-scheduler-api/api-v1/schedules/startDeleteOldStoragesJob \
  -H 'Content-Type: application/json' \
  -d '{
    "userId": "johndoe",
    "olderThanDays": "7"
  }'

Responses

OK

Bodyapplication/json
idstring(JobId)

Unique identifier of a job.

Example: "35f23c03-1c22-45fe-9484-3ffe769325de"
messagestring

Information about the scheduling status.

Example: "Job has been started."
userIdstring(UserId)

Unique ID of a user.

Example: "johndoe"
olderThanDaysinteger(OlderThanDays)

Number of days that storage is older than are removed.

Example: "7"
Response
application/json
{ "id": "35f23c03-1c22-45fe-9484-3ffe769325de", "message": "Job has been started.", "userId": "johndoe", "olderThanDays": "7" }

Schedule Data Mirror Validation Jobs

Request

Schedule validation jobs for data mirrors to ensure accuracy and consistency, identifying and resolving any discrepancies or errors.

Headers
X-Credential-Usernamestring

Username that is passed as header parameter with the name X-Credential-Username. The header can take form of:

  • username (e.g. "johndoe")
  • user id (e.g. "87b1bdb1-ba87-4522-b363-c5a0e6e917b3")
Example: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3
Bodyapplication/jsonrequired
organizationsArray of strings

List of organization IDs for which the validation jobs should be started.

Example: ["12345678-1234-5678-1234-567812345678"]
curl -i -X POST \
  https://idp.cdq.com/_mock/apis/job-scheduler-api/api-v1/schedules/startDataMirrorValidationJobs \
  -H 'Content-Type: application/json' \
  -d '{
    "organizations": [
      "12345678-1234-5678-1234-567812345678"
    ]
  }'

Responses

OK

Bodyapplication/json
organizationsArray of strings

List of organization IDs for which the validation jobs have been started.

Example: ["12345678-1234-5678-1234-567812345678"]
Response
application/json
{ "organizations": [ "12345678-1234-5678-1234-567812345678" ] }

Schedule Data Mirror Duplication Jobs

Request

Schedule duplication jobs for data mirrors to ensure data redundancy and availability. Creates copies of existing data for backup and recovery purposes.

Headers
X-Credential-Usernamestring

Username that is passed as header parameter with the name X-Credential-Username. The header can take form of:

  • username (e.g. "johndoe")
  • user id (e.g. "87b1bdb1-ba87-4522-b363-c5a0e6e917b3")
Example: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3
Bodyapplication/jsonrequired
organizationsArray of strings

List of organization IDs for which the duplication jobs should be started.

Example: ["12345678-1234-5678-1234-567812345678"]
curl -i -X POST \
  https://idp.cdq.com/_mock/apis/job-scheduler-api/api-v1/schedules/startDataMirrorDuplicationJobs \
  -H 'Content-Type: application/json' \
  -d '{
    "organizations": [
      "12345678-1234-5678-1234-567812345678"
    ]
  }'

Responses

OK

Bodyapplication/json
organizationsArray of strings

List of organization IDs for which the duplication jobs have been started.

Example: ["12345678-1234-5678-1234-567812345678"]
Response
application/json
{ "organizations": [ "12345678-1234-5678-1234-567812345678" ] }

Schedule Data Monitor Jobs

Request

Schedule data monitor jobs to monitor specific data sources and receive alerts on any discrepancies.

Headers
X-Credential-Usernamestring

Username that is passed as header parameter with the name X-Credential-Username. The header can take form of:

  • username (e.g. "johndoe")
  • user id (e.g. "87b1bdb1-ba87-4522-b363-c5a0e6e917b3")
Example: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3
Bodyapplication/jsonrequired
storageIdsArray of strings(BusinessPartnerStorageId)

List of storage IDs.

Example: ["72d6900fce6b326088f5d9d91049e3e6"]
dataMonitorTypeTechnicalKeysArray of strings(DataMonitorTypeTechnicalKey)

List of data monitor type technical keys.

Example: ["AUGMENTATION"]
curl -i -X POST \
  https://idp.cdq.com/_mock/apis/job-scheduler-api/api-v1/schedules/datamonitors/startJobs \
  -H 'Content-Type: application/json' \
  -d '{
    "storageIds": [
      "72d6900fce6b326088f5d9d91049e3e6"
    ],
    "dataMonitorTypeTechnicalKeys": [
      "AUGMENTATION"
    ]
  }'

Responses

OK

Bodyapplication/json
storageIdsArray of strings(BusinessPartnerStorageId)

List of storage IDs.

Example: ["72d6900fce6b326088f5d9d91049e3e6"]
dataMonitorTypeTechnicalKeysArray of strings(DataMonitorTypeTechnicalKey)
Example: ["AUGMENTATION"]
Response
application/json
{ "storageIds": [ "72d6900fce6b326088f5d9d91049e3e6" ], "dataMonitorTypeTechnicalKeys": [ "AUGMENTATION" ] }

Schedule Data Monitors

Request

Allow users to schedule data monitors to run at specific intervals, ensuring that data sources are monitored regularly and consistently.

Headers
X-Credential-Usernamestring

Username that is passed as header parameter with the name X-Credential-Username. The header can take form of:

  • username (e.g. "johndoe")
  • user id (e.g. "87b1bdb1-ba87-4522-b363-c5a0e6e917b3")
Example: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3
Bodyapplication/jsonrequired
frequencystring(DataMonitorFrequencyParam)

Data mirror frequency which should match the proper data monitors that are scheduled.

Default "BI_WEEKLY"
Enum ValueDescription
BI_WEEKLY

Bi-weekly frequency.

MONTHLY

Monthly frequency.

QUARTERLY

Quarterly frequency.

Example: "BI_WEEKLY"
exclusionsArray of objects(DataMonitorStartAllExclusion)

List of exclusions.

curl -i -X POST \
  https://idp.cdq.com/_mock/apis/job-scheduler-api/api-v1/schedules/datamonitors/startAll \
  -H 'Content-Type: application/json' \
  -d '{
    "frequency": "BI_WEEKLY",
    "exclusions": [
      {
        "storageId": "72d6900fce6b326088f5d9d91049e3e6",
        "dataMonitorType": {
          "technicalKey": "AUGMENTATION"
        }
      }
    ]
  }'

Responses

OK

Schedule Briefing Events

Request

Schedule briefing events to be sent to recipients, providing them with important updates and information.

Headers
X-Credential-Usernamestring

Username that is passed as header parameter with the name X-Credential-Username. The header can take form of:

  • username (e.g. "johndoe")
  • user id (e.g. "87b1bdb1-ba87-4522-b363-c5a0e6e917b3")
Example: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3
Bodyapplication/jsonrequired
workspacesArray of objects(BriefingEventsStartAllWorkspace)required

List of workspace IDs.

workspaces[].​idstring(WorkspaceId)required

Uniquely identifying ID of the workspace.

Example: "c074b9f3-abf0-4f8e-9a20-74deb6cfa2a4"
recipientsArray of objects(Recipient)

List of recipients.

curl -i -X POST \
  https://idp.cdq.com/_mock/apis/job-scheduler-api/api-v1/schedules/briefingevents/startAll \
  -H 'Content-Type: application/json' \
  -d '{
    "workspaces": [
      {
        "id": "c074b9f3-abf0-4f8e-9a20-74deb6cfa2a4"
      }
    ],
    "recipients": [
      {
        "userId": "johndoe",
        "email": "developer@cdq.com",
        "firstName": "John",
        "lastName": "Doe"
      }
    ]
  }'

Responses

OK

Bodyapplication/json
numberOfSentinteger(int32)

Number of briefing events sent.

Example: "1"
Response
application/json
{ "numberOfSent": "1" }

Data Monitors

Data monitors are essential tools for ensuring data quality and integrity within the system. They provide real-time monitoring of data sources, alerting users to any discrepancies or anomalies that may arise. The endpoints of the Data Monitors allow users to schedule and run data monitor jobs, enabling them to monitor specific data sources and receive timely notifications of any issues. By leveraging data monitors, users can proactively identify and address data quality issues, ensuring the accuracy and reliability of their data.

Operations