The Operations API is responsible for creating, updating, and managing operations within the Ledger system. Each operation is defined with a unique type and definition, enabling the execution of specific tasks. The Operations API automates and manages tasks like reporting, reconciliation, and anomaly detection, enabling centralized control and scheduling.
1. Create or Update Operation
The Create or Update Operation endpoint lets you set up or change tasks like data checks, replication, or reporting. It helps keep processes updated as business needs change.
put
Creates or updates an operation.
Body
Agent supplied information about a ledger operation
object · LedgerElementInfoOptional
A base type for agent supplied ledger information.
Responses
200
Response to /api/v1/operation/
application/json
default
default response to /api/v1/operation/
application/json
put
/api/v1/operation/
2. Retrieve Specific Operation
Fetches details of a specific operation based on its type and definition.
get
Retrieves an existing operation.
Path parameters
typestringRequired
definitionstringRequired
Responses
200
Response to /api/v1/operation/{type:[^]+}/{definition:[^]+}
application/json
default
default response to /api/v1/operation/{type:[^]+}/{definition:[^]+}
application/json
get
/api/v1/operation/{type:[^*]+}/{definition:[^*]+}
3. Retrieve All Ledger Operation
The Retrieve All Ledger Operations endpoint is used to get a list of all operations, helping to monitor, filter, and manage tasks across the ledger. This is useful for tracking ongoing processes or reviewing completed operations.
get
Queries the available ledger operations.
Query parameters
filterstringOptional
page[size]stringOptional
page[number]stringOptional
sortstringOptional
Responses
200
Response to /api/v1/operation/
No content
default
default response to /api/v1/operation/
application/json
get
/api/v1/operation/
No content
Job Execution APIs
The Job Execution API manages tasks within operations, providing real-time monitoring, role-based control, error handling, and dynamic task management. Jobs are specific tasks with assigned roles and parameters.
1. Create or Update Job
The Create or Update Job endpoint is used to define or modify specific tasks within an operation, including their parameters, roles, and execution settings. This is useful for customizing job workflows, such as setting up a data reconciliation task with specific parameters or updating an existing job to change its execution logic or roles.
put
Creates or updates a job.
Path parameters
typestringRequired
definitionstringRequired
Body
Agent supplied information about a ledger job.
object · LedgerElementInfoOptional
A base type for agent supplied ledger information.
Responses
200
Response to /api/v1/operation/{type:[^]+}/{definition:[^]+}
application/json
default
default response to /api/v1/operation/{type:[^]+}/{definition:[^]+}
application/json
put
/api/v1/operation/{type:[^*]+}/{definition:[^*]+}
2. Retrieve Job
The Retrieve Job endpoint is used to fetch details of a specific job within an operation, including its parameters, status, and associated roles. This is useful for monitoring a job’s progress, reviewing its configuration, or troubleshooting issues during its execution.
get
Retrieves an existing job and information about its executions.
Path parameters
typestringRequired
definitionstringRequired
namestringRequired
Query parameters
datastringRequired
Responses
200
Response to /api/v1/operation/{type:[^]+}/{definition:[^]+}/{name:[^*]+}
application/json
default
default response to /api/v1/operation/{type:[^]+}/{definition:[^]+}/{name:[^*]+}
The Delete Job endpoint is used to remove a specific job within an operation, ensuring outdated or unnecessary tasks are no longer executed. This is useful for maintaining a clean workflow by eliminating jobs that are no longer relevant or required.
delete
Deletes an existing job.
Path parameters
typestringRequired
definitionstringRequired
namestringRequired
Responses
200
Response to /api/v1/operation/{type:[^]+}/{definition:[^]+}/{name:[^*]+}
application/json
default
default response to /api/v1/operation/{type:[^]+}/{definition:[^]+}/{name:[^*]+}
The Transition Job Status endpoint is used to update the status of a job, such as starting, pausing, resuming, or stopping its execution. This is useful for dynamically managing jobs based on real-time requirements, such as pausing a job during system maintenance or resuming it afterward.
post
Modifies the status of a job.
Path parameters
typestringRequired
definitionstringRequired
namestringRequired
Query parameters
statusstringRequired
Responses
200
Response to /api/v1/operation/{type:[^]+}/{definition:[^]+}/{name:[^*]+}
application/json
default
default response to /api/v1/operation/{type:[^]+}/{definition:[^]+}/{name:[^*]+}
The List Jobs endpoint is used to retrieve a list of all jobs within an operation, with optional filtering, sorting, and pagination. This is useful for monitoring multiple jobs, reviewing their statuses, and managing workflows efficiently.
get
Queries the ledger jobs.
Query parameters
filterstringOptional
page[size]stringOptional
page[number]stringOptional
sortstringOptional
Responses
200
Response to /api/v1/operation///
No content
default
default response to /api/v1/operation///
application/json
get
/api/v1/operation/*/*/
No content
5. Retrieve Job Executions
The Retrieve Job Executions endpoint is used to list all executions of a specific job, including their statuses, results, and timestamps. This is useful for tracking the history of a job’s runs, analyzing its performance, and identifying any failures or bottlenecks.
Error Handling: All endpoints return structured error messages with a 500 status code for internal server errors.
Scalability: Supports pagination for large datasets.
This documentation provides an overview of the key endpoints and their usage for managing operations and job executions within the Ledger system.
The Operations API is responsible for creating, updating, and managing operations within the Ledger system. Each operation is defined with a unique type and definition, enabling the execution of specific tasks.