Scheduler API Documentation
REST API Documentation
POST /saveJobScheduled
Creates a new scheduled job with one or more tasks (Report or Workflow).
Request
| Field | Type | Required | Description |
| jobTitle | string | Yes | Title of the job |
| dateVal | string | Yes* | Date for scheduling (required unless selection is last day of the month or first day of the month) |
| timeVal | string | Yes | Time for scheduling |
| selection | string | Yes | Schedule type (daily, weekly,monthly,last day of the month, first day of the month, anually, does not repeat, every week day,Adhoc) |
| taskarray | array | Yes | Array of task objects (Report/Workflow) |
| startDateVal | string | No | Optional start date |
| endDateVal | string | No | Optional end date |
| filter | object | No | Optional filter object |
| enableEmailNotification | string | No | To disable email notification for this job |
| emailObj | object | No | Email object to send success and failure notifications |
*Either dateVal or a valid selection value is required.
Details of taskArrayVal (Report/Task Objects)
Each item in taskArrayVal represents a report or task to be scheduled. The structure supports both report and workflow scheduling.
| Field | Type | Required | Description |
| title | string | Yes | Title of the report/task |
| description | string | No | Description of the report/task |
| widgetID | string/number | Yes (for reports) | Dashboard widget ID for the report |
| reportobj | object | No | Report object (may contain ID or dashboard_id) |
| category | string | Yes | Type of task: Report or Workflow |
| filetype | string | No | File type for export (e.g., CSV, Excel) |
| selectedusersobj | array | No | Array of selected user objects (each with ID) |
| selectedrolesobj | array | No | Array of selected role objects (each with ID) |
| sendReportTomyInbox | boolean | No | If true, also send report to the current user’s inbox |
| selectedIds | array | No | Array of selected report IDs (for bulk scheduling) |
| deliverInbox | boolean | No | Deliver report to inbox |
| deliverAttachment | boolean | No | Deliver report as attachment |
| excelPassword | string | No | Password for Excel export (if applicable) |
| runtimefilters | array | No | Array of runtime filter objects |
| connectorDetail | string/object | No | Connector ID or object for data export |
| reportNamePattern | string | No | File name pattern |
Example taskArrayVal Item:
[
{
"title": "Sales Report",
"description": "Monthly sales summary",
"widgetID": "123",
"category": "Report",
"filetype": "Excel",
"selectedusersobj": [{ "ID": "u1" }, { "ID": "u2" }],
"selectedrolesobj": [{ "ID": "r1" }],
"sendReportTomyInbox": true,
"selectedIds": [123, 124],
"deliverInbox": true,
"deliverAttachment": false,
"excelPassword": "mypassword",
"runtimefilters": [
{ "id": "f1", "value": "2025-08-01" }
],
"connectorDetail": "29",
"reportNamePattern":"${DATE:YYYY_MM_DD_HHmmSSsss}_${USER_ID}_${CLIENT_ID}_${REPORT_NAME}"
}
Response
{
"success": true,
"message": "done."
}
Error Codes
| Code | Message | Description |
| DNX_SCH_001 |
Request body is missing |
The request body is required. |
| DNX_SCH_002 |
Missing jobTitle |
jobTitle is required. |
| DNX_SCH_003 |
Missing dateVal |
dateVal is required unless selection is last day of the month or first day of the month. |
| DNX_SCH_004 |
Invalid dateVal |
dateVal is present but not a valid date. |
| DNX_SCH_005 |
Missing timeVal |
timeVal is required. |
| DNX_SCH_006 |
Missing selection |
selection is required. |
| DNX_SCH_019 |
Missing or invalid taskarray for job scheduling |
taskarray must be a non-empty array. |
Example Request 1
POST /saveJobScheduled
Content-Type: application/json
{
"jobTitle": "Manufacturing Report",
"dateVal": "",
"timeVal": "14:59",
"selection": "hourly",
"startDateVal": "2025-08-27",
"endDateVal": "2025-08-28",
"taskarray": [
{
"title": "Manufacturing Report",
"description": "",
"category": "Report",
"filetype": "Excel",
"deliveroptions": "inbox",
"deliverInbox": "inbox",
"connectorDetail": null,
"reportobj": {
"ID": "855b2a1d-d983-40f4-a979-f84dc3080e2b"
},
"selectedrolesobj": [],
"selectedusersobj": [
{
"ID": 13
}
],
"role": [],
"taskfilters": [],
"runtimefilters": [],
"reportNamePattern": ""
}
],
"emailObj":'{"successMail":[{"user_email":"abc@tekizma.com"}],"failureMail":[{"user_email":"xyz@tekizma.com"}]}',
"username": "john",
"filter": [
[
"\"{\\\"filterObj\\\":{\\\"855b2a1d-d983-40f4-a979-f84dc3080e2b\\\":[{\\\"filterObj\\\":[]}]},\\\"filterState\\\":{}}\""
]
]
}
Example Request 2
POST /saveJobScheduled
Content-Type: application/json
{
"jobTitle": "Manufacturing Report",
"dateVal": "",
"timeVal": "14:59",
"selection": "daily",
"startDateVal": "2025-08-27",
"endDateVal": "2025-08-28",
"taskarray": [
{
"title": "Manufacturing Report",
"description": "",
"category": "Report",
"filetype": "Excel",
"deliveroptions": "inbox",
"deliverInbox": "inbox",
"connectorDetail": null,
"reportobj": {
"ID": "855b2a1d-d983-40f4-a979-f84dc3080e2b"
},
"selectedrolesobj": [],
"selectedusersobj": [
{
"ID": 13
}
],
"role": [],
"taskfilters": [],
"runtimefilters": [],
"reportNamePattern": ""
}
],
"enableEmailNotification":"false",
"username": "john",
"filter": [
[
"\"{\\\"filterObj\\\":{\\\"855b2a1d-d983-40f4-a979-f84dc3080e2b\\\":[{\\\"filterObj\\\":[]}]},\\\"filterState\\\":{}}\""
]
]
}
Example Error Response
{
"error": true,
"code": "DNX_SCH_002",
"message": "Missing jobTitle"
}
POST /saveScheduleReport
Description: Creates a new scheduled report for the user with the provided configuration.
| Field | Type | Required | Description |
| jobTitle | string | Yes | Job title |
| dateVal | string | Yes | Date for scheduling (required unless selection is last day of the month or first day of the month) |
| timeVal | string | Yes | Time for scheduling |
| selection | string | Yes | Schedule type (daily, weekly,monthly,last day of the month, first day of the month, anually, does not repeat, every week day,Adhoc) |
| taskArrayVal | array | Yes | Array of report/task objects |
| filterVal | array | No | Optional filter array |
| sort | array | No | Optional sorting array |
| theme | string | No | Optional theme |
| endDateVal | string | No | Optional end date |
| startDateVal | string | No | Optional start date |
Response:
{
"success": true,
"message": "done."
}
Error Codes:
| Code | Message | Description |
| DNX_SCH_001 | Missing request body | Request body is required. |
| DNX_SCH_002 | Missing jobTitle | Either inputVal or taskArrayVal is required. |
| DNX_SCH_003 | Missing dateVal | dateVal is required. |
| DNX_SCH_004 | Invalid dateVal format | dateVal is present but not a valid date. |
| DNX_SCH_005 | Missing timeVal | timeVal is required. |
| DNX_SCH_006 | Missing selection | selection is required. |
Example Request:
POST /saveScheduleReport
Content-Type: application/json
{
"jobTitle": "Sales Report",
"dateVal": "2025-08-08",
"timeVal": "10:00",
"selection": "daily",
"taskArrayVal": [{ "title": "Sales", "widgetID": 1 }]
}
Example Error Request:
POST /api/schedule/saveScheduleReport
Content-Type: application/json
{
"jobTitle": "",
"dateVal": "",
"timeVal": "",
"selection": ""
}
Example Error Response:
{
"error": true,
"code": "DNX_SCH_002",
"message": "Missing jobTitle"
}
API: POST /saveScheduleWorkflow
Creates or updates a scheduled workflow for the user with the provided configuration.
Description
This API allows users to schedule a workflow with specific filters, time, and recurrence options. It supports both job-based and direct workflow scheduling.
Request
| Field | Type | Required | Description |
| jobid | string | No | Job ID (for job-based workflow scheduling) |
| taskArrayVal | array | Yes (if jobid) | Array of workflow task objects |
| dateVal | string | No | Date for scheduling |
| timeVal | string | No | Time for scheduling |
| selection | string | Yes | Schedule type (e.g., daily, weekly, Adhoc) |
| folderPath | string | No | Optional folder path |
| endDateVal | string | No | Optional end date |
| startDateVal | string | No | Optional start date |
| jobTitle | string | Yes (if no jobid) | Workflow title |
| desVal | string | No | Description |
| workflowId | string | Yes (if no jobid) | Workflow ID |
| active | number | No | Active flag |
| download_type | string | No | Download type |
| type | string | No | Workflow type |
Response
{
"success": true
}
Error Codes
| Code | Message | Description |
| DNX_SCH_001 |
Missing request body |
Request body is required. |
| DNX_SCH_019 |
Missing taskArrayVal |
taskArrayVal is required and must be a non-empty array (when jobid is present). |
| DNX_SCH_004 |
Invalid dateVal format |
dateVal is present but not a valid date. |
| DNX_SCH_005 |
Missing timeVal |
timeVal is required unless selection is ‘Adhoc’. |
| DNX_SCH_006 |
Missing selection |
selection is required. |
| DNX_SCH_002 |
Missing jobTitle |
jobTitle is required (when jobid is not present). |
| DNX_SCH_021 |
Missing workflowId |
workflowId is required (when jobid is not present). |
Example Request
POST /saveScheduleWorkflow
Content-Type: application/json
{
"jobid": "123",
"taskArrayVal": [
{
"title": "Daily Data Sync",
"description": "Syncs data every day",
"workflowobj": { "ID": "wf-001" },
"category": "Workflow"
}
],
"dateVal": "2025-08-09",
"timeVal": "09:00",
"selection": "daily",
"folderPath": "/workflows",
"startDateVal": "2025-08-09",
"endDateVal": "2025-12-31"
}
Example Error Request
POST /saveScheduleWorkflow
Content-Type: application/json
{
"jobid": "123",
"taskArrayVal": [],
"selection": "daily"
}
Example Error Response
{
"error": true,
"code": "DNX_SCH_019",
"message": "taskArrayVal is required and must be a non-empty array."
}
POST /runjobAuditResult
Description: Returns audit results for a scheduled job, including status and history.
| Field | Type | Required | Description |
| jobIdval | string | No | Optional Job ID |
| jobTitleval | string | No | Optional Job Title |
| pageNo | number | No | Page number for pagination |
| pageSize | number | No | Number of items per page |
| sortObjArr | array | No | Optional sorting array |
Response:
{
"result": [ ... ],
"totalNoOfRecords": 123
}
Error Codes:
| Code | Message | Description |
| DNX_SCH_010 | Missing request body | Request body is required. |
Example Request:
POST /runjobAuditResult
Content-Type: application/json
{
"pageNo": 1,
"pageSize": 20
}
POST /pauseAndResumeJob
Description: Pauses or resumes a scheduled job based on the provided state.
| Field | Type | Required | Description |
| jobId | string | Yes | Job ID |
| pauseState | boolean | Yes | Pause state (true/false) |
Response:
{
"Success": "Updated Job"
}
Error Codes:
| Code | Message | Description |
| DNX_SCH_001 | Missing request body | Request body is required. |
| DNX_SCH_015 | Missing jobId | jobId is required. |
| DNX_SCH_016 | Missing pauseState | pauseState is required. |
Example Request:
POST /pauseAndResumeJob
Content-Type: application/json
{
"jobId": "123",
"pauseState": true
}
Example Error Request:
POST /pauseAndResumeJob
Content-Type: application/json
{
"jobId": "123"
}
Example Error Response:
{
"error": true,
"code": "DNX_SCH_016",
"message": "Missing pauseState"
}
POST /getJobSchedulebyId
Description: Fetches the details of a scheduled job by its ID.
| Field | Type | Required | Description |
| id | string | Yes | Job ID |
Response:
{
"jobresult": { ... },
"taskresult": [ ... ],
"reportdata": [ ... ],
"workflowdata": [ ... ],
"userdata": [ ... ],
"roledata": [ ... ],
"userDetailId": "..."
}
Error Codes:
| Code | Message | Description |
| DNX_SCH_001 | Missing request body | Request body is required. |
| DNX_SCH_015 | Missing id | id is required. |
Example Request:
POST /getJobSchedulebyId
Content-Type: application/json
{
"id": "123"
}
Example Error Request:
POST /getJobSchedulebyId
Content-Type: application/json
{}
Example Error Response:
{
"error": true,
"code": "DNX_SCH_015",
"message": "Missing id"
}
POST /updateJobScheduled
Description: Updates the configuration of an existing scheduled job.
| Field | Type | Required | Description |
| jobId | string | Yes | Job ID |
| inputVal | string | Yes | Job Title |
| selection | string | Yes | Schedule type (daily, weekly,monthly,last day of the month, first day of the month, anually, does not repeat, every week day,Adhoc) |
| dateVal | string | Yes | Date for scheduling (required unless selection is last day of the month or first day of the month) |
| timeVal | string | Yes | Time for scheduling |
Response:
{
"success": true,
"message": "done."
}
Error Codes:
| Code | Message | Description |
| DNX_SCH_001 | Missing request body | Request body is required. |
| DNX_SCH_015 | Missing jobId | jobId is required. |
| DNX_SCH_002 | Missing jobTitle | jobTitle is required. |
| DNX_SCH_006 | Missing selection | selection is required. |
| DNX_SCH_003 | Missing dateVal | dateVal is required. |
| DNX_SCH_004 | Invalid dateVal format | dateVal is present but not a valid date. |
| DNX_SCH_005 | Missing timeVal | timeVal is required. |
Example Request:
POST /updateJobScheduled
Content-Type: application/json
{
"jobId": "123",
"inputVal": "Updated Job",
"selection": "weekly",
"dateVal": "2025-08-08",
"timeVal": "09:00"
}
Example Error Request:
POST /updateJobScheduled
Content-Type: application/json
{
"jobId": "123",
"selection": "weekly",
"dateVal": "2025-08-08",
"timeVal": "09:00"
}
Example Error Response:
{
"error": true,
"code": "DNX_SCH_002",
"message": "Missing jobTitle"
}
POST /deleteScheduledJob
Description: Deletes a scheduled job and its associated tasks.
| Field | Type | Required | Description |
| id | string | Yes | Job ID |
Response:
"success"
Error Codes:
| Code | Message | Description |
| DNX_SCH_001 | Missing request body | Request body is required. |
| DNX_SCH_015 | Missing id | id is required. |
| DNX_SCH_017 | Delete failed | Job/task deletion failed. |
Example Request:
POST /deleteScheduledJob
Content-Type: application/json
{
"id": "123"
}
Example Error Request:
POST /deleteScheduledJob
Content-Type: application/json
{}
Example Error Response:
{
"error": true,
"code": "DNX_SCH_015",
"message": "Missing id"
}
API: POST /runjobAuditAutomationResult
Returns paginated audit results for automation jobs based on job ID or job title.
Request
| Field | Type | Required | Description |
| jobIdval | string | Yes* | Job ID (required if jobTitleval is not provided) |
| jobTitleval | string | Yes* | Job Title (required if jobIdval is not provided) |
| pageNo | number | No | Page number for pagination |
| pageSize | number | No | Number of items per page |
*Either jobIdval or jobTitleval must be provided.
Response
{
"jobAuditResultAutomation": [ ... ],
"totalNoOfRecords": 123
}
Error Codes
| Code | Message | Description |
| DNX_SCH_001 |
Request body is missing |
The request body is required. |
| DNX_SCH_020 |
Missing jobIdval or jobTitleval for job audit automation |
Either jobIdval or jobTitleval must be present. |
Example Request
POST /runjobAuditAutomationResult
Content-Type: application/json
{
"jobIdval": "12345",
"pageNo": 1,
"pageSize": 20
}
Example Error Response
{
"error": true,
"code": "DNX_SCH_020",
"message": "Missing jobIdval or jobTitleval for job audit automation"
}
POST /runButtonWorkflow
Runs a workflow by workflowId.
Request (POST)
{
"workflowId": "abc123",
}
Response (200)
{ ...workflow run result... }
Error Handling
| Code | Message |
| DNX_LIB_037 | ‘workflowId’ is missing. |
POST /getInboxList
Description: Returns a paginated list of inbox items for the user.
| Field | Type | Required | Description |
| pageNo | number | No | Page number for pagination |
| pageSize | number | No | Number of items per page |
| showAdhoc | boolean | Yes | Include Adhoc reports |
| showScheduled | boolean | Yes | Include Scheduled reports |
| filterValue | string | No | Optional filter (date or text) |
| sortObjArr | array | No | Optional sorting array |
Response:
{
"data": [ ... ],
"totalRecords": 123
}
Error Codes:
| Code | Message | Description |
| DNX_INB_001 | Missing request body | Request body is required. |
| DNX_INB_004 | Missing showAdhoc | showAdhoc is required. |
| DNX_INB_005 | Missing showScheduled | showScheduled is required. |
Example Request:
POST /getInboxList
Content-Type: application/json
{
"pageNo": 1,
"pageSize": 15,
"showAdhoc": false,
"showScheduled": false,
"sortObjArr": [
{
"field": "generatedBy",
"dir": "Ascending",
"clickCount": 1,
"viewColumnName": "generatedBy",
"order": 0
}
]
}
Example Error Request:
POST /getInboxList
Content-Type: application/json
{
"showScheduled": false
}
Example Error Response:
{
"error": true,
"code": "DNX_INB_004,
"message": "Missing showAdhoc"
}
POST /saveConnectors
Creates or updates a connector configuration for the authenticated client and user.
Request
| Field | Type | Required | Description |
| type | string | Yes | Connector type (e.g., S3, Azure, etc.) |
| name | string | Yes | Name of the connector |
| filePath | string | No | Container or file path |
| host | string | No | Host address |
| port | number | No | Port number |
| baseUrl | string | No | Base URL |
| userName | string | No | Username for authentication |
| password | string | No | Password for authentication |
| accessKey | string | No | Access key (for cloud connectors) |
| secretKey | string | No | Secret key (for cloud connectors) |
| consumerKey | string | No | Consumer key (for OAuth) |
| consumerSecret | string | No | Consumer secret (for OAuth) |
| region | string | No | Region (for cloud connectors) |
| editType | string | No | Edit type (add/update) |
| id | string | No | Connector ID (for update) |
| localFileLocation | string | No | Local file location |
| sheetType | string | No | Sheet type (for spreadsheet connectors) |
| clientId | string | No | Google client ID (for Google connectors) |
| clientSecret | string | No | Google client secret |
| refreshToken | string | No | Google refresh token |
| key_id | string | No | Unique key for the connector (auto-generated if not provided) |
Response
{
"success": true,
"message": "done.",
"insertedId": 123
}
Error Codes
| Code | Message | Description |
| DNX_CON_001 |
‘obj’ is missing in request body. |
The obj field is required in the request body. |
| DNX_CON_002 |
‘userId’ is missing in request context. |
User context is missing or invalid. |
| DNX_CON_003 |
‘clientId’ is missing in request context. |
Client context is missing or invalid. |
| DNX_CON_004 |
‘type’ is missing in connector object. |
The type field is required in obj. |
| DNX_CON_005 |
‘name’ is missing in connector object. |
The name field is required in obj. |
| DNX_CON_006 |
Invalid or missing dateTimeStamp. |
dateTimeStamp is missing or not a valid date. |
Example Request
POST /saveConnectors
Content-Type: application/json
{
"obj": {
"type": "S3",
"name": "My S3 Connector",
"host": "s3.amazonaws.com",
"accessKey": "AKIA...",
"secretKey": "SECRET...",
"region": "us-east-1"
}
}
Example Error Response
{
"error": true,
"code": "DNX_CON_004",
"message": "'type' is missing in connector object."
}
POST /getConnectors
Retrieves a paginated and optionally filtered list of connectors for the authenticated client.
Request
| Field | Type | Required | Description |
| id | string | No | Schedule ID (to fetch the connectors based on Schedule ID) |
| paginatorSize | number | No | Number of connectors per page |
| currentPage | number | No | Current page number |
| filterValue | string | No | Filter string for connector name/type |
| allConnection | boolean | No | Return all connectors if true |
Response
{
"connectors": [
{
"id": "123",
"name": "My MySQL DB",
"type": "mysql",
"host": "localhost",
"port": 3306,
...
}
// ...more connectors
],
"totalRecords": 42,
"currentPage": 1,
"paginatorSize": 10
}
Error Codes
| Code | Message | Description |
| DNX_CON_003 |
‘clientId’ is missing in request context. |
Client context is required to fetch connectors. |
Example Request
POST /getConnectors
Content-Type: application/json
{
"paginatorSize": 10,
"currentPage": 1,
"filterValue": "mysql"
}
Example Response
{
"connectors": [
{
"id": "123",
"name": "My MySQL DB",
"type": "mysql",
"host": "localhost",
"port": 3306
}
],
"totalRecords": 1,
"currentPage": 1,
"paginatorSize": 10
}
Example Error Response
{
"error": true,
"code": "DNX_CON_003",
"message": "'clientId' is missing in request
}
POST /getConnectorDetail
Retrieves detailed information for a specific connector by its ID.
Request
| Field | Type | Required | Description |
| id |
string |
Yes |
The unique identifier of the connector whose details are to be fetched. |
Response
{
"id": "123",
"name": "My MySQL DB",
"type": "mysql",
"host": "localhost",
"port": 3306,
"userName": "root",
"region": "us-east-1",
...
}
Error Codes
| Code | Message | Description |
| DNX_CON_008 |
Connector ID is required |
The id field is missing in the request body. |
Example Request
POST /getConnectorDetail
Content-Type: application/json
{
"id": "123"
}
Example Response
{
"id": "123",
"name": "My MySQL DB",
"type": "mysql",
"host": "localhost",
"port": 3306,
"userName": "root"
}
Example Error Response
{
"error": true,
"code": "DNX_CON_008",
"message": "Connector ID is required"
}