> For the complete documentation index, see [llms.txt](https://developer.collibra.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.collibra.com/api/references/job/jobs.md).

# Jobs

Job endpoints provide the ability to retrieve job progress.

## Find jobs

> Returns jobs matching the given search criteria. Only parameters that are specified in this request and have not \<code>null\</code> values are used for filtering. All other parameters are ignored.

```json
{"openapi":"3.0.3","info":{"title":"Collibra Job API","version":"1.0.0"},"tags":[{"description":"Job endpoints provide the ability to retrieve job progress.","name":"Jobs"}],"servers":[{"url":"/rest/jobs/v1"}],"security":[{"basicAuth":[]},{"jwtAuth":[]},{"oauth2":[]}],"components":{"securitySchemes":{"basicAuth":{"description":"Collibra REST API authentication using Basic Authentication.","scheme":"basic","type":"http"},"jwtAuth":{"bearerFormat":"JWT","description":"Collibra REST API authentication using JSON Web Token.","scheme":"bearer","type":"http"},"oauth2":{"description":"Collibra REST API authentication using OAuth 2.","flows":{"clientCredentials":{"scopes":{"sys.admin":"Administer system."},"tokenUrl":"/rest/oauth/v2/token"}},"type":"oauth2"}},"schemas":{"JobPagedResponse":{"properties":{"nextCursor":{"description":"The cursor pointing to the next page. If the cursor is missing,  there are no additional pages of resources available after the current one.","type":"string"},"results":{"description":"The list of results.","items":{"$ref":"#/components/schemas/Job"},"type":"array"}},"type":"object"},"Job":{"allOf":[{"properties":{"id":{"description":"The UUID of the represented object (entity).","format":"uuid","type":"string"},"createdBy":{"description":"The UUID of the user that created this resource.","format":"uuid","type":"string"},"createdOn":{"description":"Date and time the job was created on.","format":"date-time","type":"string"},"lastModifiedBy":{"description":"The UUID of the user who modified this resource the last time.","format":"uuid","type":"string"},"lastModifiedOn":{"description":"Date and time the job was modified on.","format":"date-time","type":"string"},"user":{"description":"The UUID of the user that initiated this job.","format":"uuid","type":"string"},"selfManaged":{"default":false,"description":"Whether this is a self managed job, processed outside of DG.","type":"boolean"}},"required":["id"],"type":"object"},{"$ref":"#/components/schemas/JobEndDate"},{"$ref":"#/components/schemas/JobMessage"},{"$ref":"#/components/schemas/JobName"},{"$ref":"#/components/schemas/JobProgressPercentage"},{"$ref":"#/components/schemas/JobResult"},{"$ref":"#/components/schemas/JobStartDate"},{"$ref":"#/components/schemas/JobState"},{"$ref":"#/components/schemas/JobType"}],"description":"Represents a job."},"JobEndDate":{"properties":{"endDate":{"description":"Date and time the job was ended on.","format":"date-time","type":"string"}},"type":"object"},"JobMessage":{"properties":{"message":{"description":"The message of the job.","type":"string"}},"type":"object"},"JobName":{"properties":{"name":{"description":"The name of the job.","type":"string"}},"type":"object"},"JobProgressPercentage":{"properties":{"progressPercentage":{"description":"The progress percentage of the job.","format":"int32","type":"integer"}},"type":"object"},"JobResult":{"properties":{"result":{"description":"The result of the job.\n\nPossible values are:\n  * NOT_SET\n  * SUCCESS\n  * COMPLETED_WITH_ERROR\n  * FAILURE\n  * ABORTED\n","type":"string"}},"type":"object"},"JobStartDate":{"properties":{"startDate":{"description":"Date and time the job was started on.","format":"date-time","type":"string"}},"type":"object"},"JobState":{"properties":{"state":{"description":"The state of the job.\n\nPossible values are:\n  * `WAITING` — The job has been created but is not yet executing. It is either queued for a worker, scheduled to start at a future time, or blocked waiting on another job to finish. This is the initial state for newly created jobs.\n  * `RUNNING` — A worker is actively executing the job.\n  * `COMPLETED` — Terminal state. The job finished its work. Completion does not imply business success; the accompanying job result indicates whether the outcome was a success or a failure.\n  * `FAILED` — Terminal state. The job execution threw an exception that was not (or could not be) retried.\n  * `DELETED` — Terminal state. The job was cancelled or removed, either by a user via the API or by the system.\n  * `NOT_APPLICABLE` — Terminal state. The job's work is no longer relevant and it will not run (e.g. a continuation job whose parent finished in a state that makes the child meaningless). This state is set by the system only and cannot be set by clients via the API.\n","type":"string"}},"type":"object"},"JobType":{"properties":{"type":{"description":"The type of the job.","type":"string"}},"type":"object"},"StandardErrorResponse":{"properties":{"statusCode":{"description":"HTTP response code","type":"integer"},"titleMessage":{"description":"The title of the error.","type":"string"},"helpMessage":{"description":"A message that can help the user to understand the error.","type":"string"},"userMessage":{"description":"A message that can be shown to the user.","type":"string"},"errorCode":{"description":"The error code.","type":"string"},"errorContext":{"description":"Span context ID related to the error.","type":"string"}},"required":["errorCode","statusCode"],"type":"object"}}},"paths":{"/jobs":{"get":{"description":"Returns jobs matching the given search criteria. Only parameters that are specified in this request and have not <code>null</code> values are used for filtering. All other parameters are ignored.","operationId":"findJobs","parameters":[{"description":"The match mode used to compare <code>name</code>. If the match mode is <code>EXACT</code> the search is case-sensitive, otherwise the search is case-insensitive.","explode":true,"in":"query","name":"nameMatchMode","required":false,"schema":{"default":"ANYWHERE","enum":["START","END","ANYWHERE","EXACT"],"type":"string"},"style":"form"},{"description":"The name of the job to search for.","explode":true,"in":"query","name":"name","required":false,"schema":{"type":"string"},"style":"form"},{"description":"The list of results which the jobs should be searched for.","explode":true,"in":"query","name":"result","required":false,"schema":{"items":{"enum":["NOT_SET","SUCCESS","COMPLETED_WITH_ERROR","FAILURE","ABORTED"],"type":"string"},"type":"array"},"style":"form"},{"description":"The list of states which the jobs should be searched for.","explode":true,"in":"query","name":"state","required":false,"schema":{"items":{"enum":["WAITING","RUNNING","COMPLETED","FAILED","DELETED"],"type":"string"},"type":"array"},"style":"form"},{"description":"The list of types of the jobs.","explode":true,"in":"query","name":"type","required":false,"schema":{"items":{"type":"string"},"type":"array"},"style":"form"},{"description":"The ID of the user who created the searched job.","explode":true,"in":"query","name":"user","required":false,"schema":{"format":"uuid","type":"string"},"style":"form"},{"description":"The field that should be used as reference for sorting, \nin addition to the <code>CREATED_ON</code> field in <code>DESC</code> order.\n","explode":true,"in":"query","name":"sortField","required":false,"schema":{"enum":["NAME","TYPE","START_DATE","END_DATE","STATE","RESULT"],"type":"string"},"style":"form"},{"description":"The order of sorting.","explode":true,"in":"query","name":"sortOrder","required":false,"schema":{"default":"DESC","enum":["ASC","DESC"],"type":"string"},"style":"form"},{"description":"The cursor pointing to the first resource to be included in the response. \nThis cursor cannot be created and must have been extracted from a response returned by a previous API call.\n\nIf this parameter is missing, the API returns the resources starting from the first available resource, at index `0`.\n","explode":true,"in":"query","name":"cursor","required":false,"schema":{"type":"string"},"style":"form"},{"description":"The maximum number of resources to retrieve.\n\nIf not set, the default limit of `10` is be used. The maximum value for this parameter is `50`.\n","explode":true,"in":"query","name":"pageSize","required":false,"schema":{"default":10,"maximum":50,"minimum":1,"type":"integer"},"style":"form"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobPagedResponse"}}},"description":"The paged response with jobs matching filter criteria"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}},"description":"The request is not valid."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}},"description":"The client is not authenticated."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}},"description":"Internal server error."}},"summary":"Find jobs","tags":["Jobs"]}}}}
```

## Get Job.

> Retrieves the Job identified by the given UUID.

```json
{"openapi":"3.0.3","info":{"title":"Collibra Job API","version":"1.0.0"},"tags":[{"description":"Job endpoints provide the ability to retrieve job progress.","name":"Jobs"}],"servers":[{"url":"/rest/jobs/v1"}],"security":[{"basicAuth":[]},{"jwtAuth":[]},{"oauth2":[]}],"components":{"securitySchemes":{"basicAuth":{"description":"Collibra REST API authentication using Basic Authentication.","scheme":"basic","type":"http"},"jwtAuth":{"bearerFormat":"JWT","description":"Collibra REST API authentication using JSON Web Token.","scheme":"bearer","type":"http"},"oauth2":{"description":"Collibra REST API authentication using OAuth 2.","flows":{"clientCredentials":{"scopes":{"sys.admin":"Administer system."},"tokenUrl":"/rest/oauth/v2/token"}},"type":"oauth2"}},"schemas":{"Job":{"allOf":[{"properties":{"id":{"description":"The UUID of the represented object (entity).","format":"uuid","type":"string"},"createdBy":{"description":"The UUID of the user that created this resource.","format":"uuid","type":"string"},"createdOn":{"description":"Date and time the job was created on.","format":"date-time","type":"string"},"lastModifiedBy":{"description":"The UUID of the user who modified this resource the last time.","format":"uuid","type":"string"},"lastModifiedOn":{"description":"Date and time the job was modified on.","format":"date-time","type":"string"},"user":{"description":"The UUID of the user that initiated this job.","format":"uuid","type":"string"},"selfManaged":{"default":false,"description":"Whether this is a self managed job, processed outside of DG.","type":"boolean"}},"required":["id"],"type":"object"},{"$ref":"#/components/schemas/JobEndDate"},{"$ref":"#/components/schemas/JobMessage"},{"$ref":"#/components/schemas/JobName"},{"$ref":"#/components/schemas/JobProgressPercentage"},{"$ref":"#/components/schemas/JobResult"},{"$ref":"#/components/schemas/JobStartDate"},{"$ref":"#/components/schemas/JobState"},{"$ref":"#/components/schemas/JobType"}],"description":"Represents a job."},"JobEndDate":{"properties":{"endDate":{"description":"Date and time the job was ended on.","format":"date-time","type":"string"}},"type":"object"},"JobMessage":{"properties":{"message":{"description":"The message of the job.","type":"string"}},"type":"object"},"JobName":{"properties":{"name":{"description":"The name of the job.","type":"string"}},"type":"object"},"JobProgressPercentage":{"properties":{"progressPercentage":{"description":"The progress percentage of the job.","format":"int32","type":"integer"}},"type":"object"},"JobResult":{"properties":{"result":{"description":"The result of the job.\n\nPossible values are:\n  * NOT_SET\n  * SUCCESS\n  * COMPLETED_WITH_ERROR\n  * FAILURE\n  * ABORTED\n","type":"string"}},"type":"object"},"JobStartDate":{"properties":{"startDate":{"description":"Date and time the job was started on.","format":"date-time","type":"string"}},"type":"object"},"JobState":{"properties":{"state":{"description":"The state of the job.\n\nPossible values are:\n  * `WAITING` — The job has been created but is not yet executing. It is either queued for a worker, scheduled to start at a future time, or blocked waiting on another job to finish. This is the initial state for newly created jobs.\n  * `RUNNING` — A worker is actively executing the job.\n  * `COMPLETED` — Terminal state. The job finished its work. Completion does not imply business success; the accompanying job result indicates whether the outcome was a success or a failure.\n  * `FAILED` — Terminal state. The job execution threw an exception that was not (or could not be) retried.\n  * `DELETED` — Terminal state. The job was cancelled or removed, either by a user via the API or by the system.\n  * `NOT_APPLICABLE` — Terminal state. The job's work is no longer relevant and it will not run (e.g. a continuation job whose parent finished in a state that makes the child meaningless). This state is set by the system only and cannot be set by clients via the API.\n","type":"string"}},"type":"object"},"JobType":{"properties":{"type":{"description":"The type of the job.","type":"string"}},"type":"object"},"StandardErrorResponse":{"properties":{"statusCode":{"description":"HTTP response code","type":"integer"},"titleMessage":{"description":"The title of the error.","type":"string"},"helpMessage":{"description":"A message that can help the user to understand the error.","type":"string"},"userMessage":{"description":"A message that can be shown to the user.","type":"string"},"errorCode":{"description":"The error code.","type":"string"},"errorContext":{"description":"Span context ID related to the error.","type":"string"}},"required":["errorCode","statusCode"],"type":"object"}}},"paths":{"/jobs/{jobId}":{"get":{"description":"Retrieves the Job identified by the given UUID.","operationId":"getJob","parameters":[{"description":"The ID of the job.","explode":false,"in":"path","name":"jobId","required":true,"schema":{"format":"uuid","type":"string"},"style":"simple"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}},"description":"Job found."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}},"description":"The request is not valid."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}},"description":"The client is not authenticated."},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}},"description":"The client is not authorized to access this resource."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}},"description":"Resource not found."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}},"description":"Internal server error."}},"summary":"Get Job.","tags":["Jobs"]}}}}
```

## Soft delete Job.

> Soft deletes the Job identified by the given UUID.\
> Users can delete their own jobs and Admins can delete any job.<br>

```json
{"openapi":"3.0.3","info":{"title":"Collibra Job API","version":"1.0.0"},"tags":[{"description":"Job endpoints provide the ability to retrieve job progress.","name":"Jobs"}],"servers":[{"url":"/rest/jobs/v1"}],"security":[{"basicAuth":[]},{"jwtAuth":[]},{"oauth2":["sys.admin"]},{"oauth2":[]}],"components":{"securitySchemes":{"basicAuth":{"description":"Collibra REST API authentication using Basic Authentication.","scheme":"basic","type":"http"},"jwtAuth":{"bearerFormat":"JWT","description":"Collibra REST API authentication using JSON Web Token.","scheme":"bearer","type":"http"},"oauth2":{"description":"Collibra REST API authentication using OAuth 2.","flows":{"clientCredentials":{"scopes":{"sys.admin":"Administer system."},"tokenUrl":"/rest/oauth/v2/token"}},"type":"oauth2"}},"schemas":{"JobDelete":{"allOf":[{"$ref":"#/components/schemas/JobMessage"}],"deprecated":true,"description":"(Deprecated) Represents a body for delete job. Use the message query parameter instead. Deprecated, will be removed in 2026.06."},"JobMessage":{"properties":{"message":{"description":"The message of the job.","type":"string"}},"type":"object"},"StandardErrorResponse":{"properties":{"statusCode":{"description":"HTTP response code","type":"integer"},"titleMessage":{"description":"The title of the error.","type":"string"},"helpMessage":{"description":"A message that can help the user to understand the error.","type":"string"},"userMessage":{"description":"A message that can be shown to the user.","type":"string"},"errorCode":{"description":"The error code.","type":"string"},"errorContext":{"description":"Span context ID related to the error.","type":"string"}},"required":["errorCode","statusCode"],"type":"object"}}},"paths":{"/jobs/{jobId}":{"delete":{"description":"Soft deletes the Job identified by the given UUID.\nUsers can delete their own jobs and Admins can delete any job.\n","operationId":"deleteJob","parameters":[{"description":"The ID of the job.","explode":false,"in":"path","name":"jobId","required":true,"schema":{"format":"uuid","type":"string"},"style":"simple"},{"description":"An optional message for the job deletion.","explode":true,"in":"query","name":"message","required":false,"schema":{"default":"Deleted by user","maxLength":128,"type":"string"},"style":"form"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobDelete"}}},"description":"Use the message query parameter instead. Deprecated, will be removed in 2026.06.\nNote: The message defined in the query parameter takes precedence over the request body.\n","required":false},"responses":{"204":{"description":"Job successfully deleted."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}},"description":"The request is not valid."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}},"description":"The client is not authenticated."},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}},"description":"The client is not authorized to access this resource."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}},"description":"Resource not found."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}},"description":"Internal server error."}},"summary":"Soft delete Job.","tags":["Jobs"]}}}}
```
