Pipeline Monitoring API
|
The REST API is currently in Early Access Preview. The API specification and endpoints might change before being marked as stable. We recommend testing thoroughly and being prepared to adapt to potential changes in future releases. |
This guide shows you how to retrieve the orchestrator connections, pipeline jobs, and datasets that pipeline monitoring observes.
The most common use is resolving the assets that data observability findings reference in affectedAssetUrn (see Monitor Data Observability Alerts via API).
The Pipeline Monitoring API is read-only. Pipeline jobs and datasets are recorded from observed run events (see Pipeline Monitoring). Orchestrator connections are managed in the web application (see Connect to an Orchestrator).
Prerequisites
Before using the Pipeline Monitoring API:
-
Configure authentication as described in API Authentication.
-
Assign the API client the dataobservability-admin identity provider role, the same role that grants access to data observability in the web application (see Identity Provider Roles). Data observability currently has no read-only role, so this role is required even though the API is read-only.
API base URL
All Pipeline Monitoring API endpoints are accessed through the following base URL:
https://{your-environment}.ataccama.one/api/pipeline-monitoring/v1
Replace {your-environment} with your environment identifier from the Ataccama Cloud Portal.
When to use this API
Use the Pipeline Monitoring API when you need to:
-
Investigate alert findings: Get the details of the pipeline job behind a job failure finding, or of the dataset behind a schema change finding (see Find the asset behind a finding).
-
Map observed datasets to catalog items: Follow the
catalogItemUrnsbridge from an observed dataset to its catalog items, or find the dataset observed for a given catalog item (see How datasets map to catalog items). -
Inventory observed pipelines: List the connected orchestrators and the jobs observed from their run events.
Orchestrators, pipeline jobs, and datasets
Pipeline monitoring observes your pipelines through orchestrator run events (OpenLineage) and records three kinds of entities:
-
Orchestrator: A configured connection to a pipeline orchestrator, such as dbt or Airflow. Connection credentials are never exposed through the API. To connect an orchestrator, use the web application (see Connect to an Orchestrator).
-
Pipeline job: A job observed from orchestrator run events. Run history is not exposed.
-
Dataset: A physical data asset, such as a table, observed as an input or output of pipeline jobs.
How datasets map to catalog items
The same physical table can be represented in two ways in Ataccama ONE. It is recorded as a catalog item, once for each source it appears in. Pipeline monitoring observes it as a dataset from run events. Because a table can be cataloged in more than one source, a dataset can match more than one catalog item.
The dataset’s catalogItemUrns field lists the matched catalog items.
This is also why data observability findings point to two different kinds of assets.
DQ and freshness findings reference the catalog item, while schema change and observed-data findings reference the dataset.
Orchestrator fields
| Field | Description |
|---|---|
|
The URN of the orchestrator, in the format |
|
The name of the orchestrator connection. |
|
The orchestrator type, for example, |
|
When the orchestrator connection was created. |
Pipeline job fields
| Field | Description |
|---|---|
|
The URN of the pipeline job, in the format |
|
The fully qualified job name as observed (the OpenLineage job name), for example, |
|
The OpenLineage namespace of the job, for example, |
|
The URN of the orchestrator the job was observed from. |
Dataset fields
| Field | Description |
|---|---|
|
The URN of the dataset, in the format |
|
The fully qualified dataset name as observed (the OpenLineage full name), for example, |
|
The OpenLineage namespace of the dataset, which identifies the data store it lives in, for example, |
|
The name of the data store the dataset belongs to. |
|
The URNs of the catalog items matched to the dataset (see How datasets map to catalog items). The list is empty while the dataset is not matched to any catalog item. To get the details of a catalog item, see Catalog Items API. |
|
When the dataset was first recorded. |
Find the asset behind a finding
To get the details of the asset behind a finding, use the endpoint that matches the resource type in the finding’s affectedAssetUrn:
-
pipeline-monitoring:pipeline-job: See Retrieve a pipeline job. -
pipeline-monitoring:dataset: See Retrieve a dataset. -
catalog:catalog-item: See Catalog Items API.
List orchestrators
List the configured orchestrator connections.
curl -X GET "https://{your-environment}.ataccama.one/api/pipeline-monitoring/v1/orchestrators?size=20" \
-H "Authorization: Bearer {access_token}"
| Parameter | Type | Required | Description |
|---|---|---|---|
|
integer |
No |
Number of orchestrators to return per page. Default: Max: |
|
string |
No |
Field to sort by; prefix with a hyphen ( Default: |
|
string |
No |
Cursor for forward pagination.
Use the value from |
{
"meta": {
"total": 1
},
"data": [
{
"urn": "urn:ata:{your-tenant}:pipeline-monitoring:orchestrator:0197f3a0-6666-7c0c-8f9d-3a2b4c5d6e7f",
"name": "dbt production",
"type": "DBT_WITH_OPEN_LINEAGE",
"createdAt": "2026-05-02T09:00:00Z"
}
]
}
The response contains a data array with up to size orchestrators, and a meta object with the pagination information:
-
meta.next: Cursor for retrieving the next batch of orchestrators. Pass it as theafterparameter in the next request. Omitted when there are no more orchestrators to retrieve. -
meta.total: Total number of orchestrators, across all pages.
Retrieve an orchestrator
Get the details of a specific orchestrator connection.
URL-encode the orchestrator URN when placing it in the request path.
Each colon (:) becomes %3A.
curl -X GET "https://{your-environment}.ataccama.one/api/pipeline-monitoring/v1/orchestrators/{orchestratorUrn}" \
-H "Authorization: Bearer {access_token}"
The response returns the orchestrator with the fields described in Orchestrator fields.
List pipeline jobs
List the observed pipeline jobs.
To list the jobs of a single orchestrator, use the orchestratorUrn parameter.
Pipeline jobs are sorted by name, unlike the other list endpoints, which sort by createdAt.
curl -X GET "https://{your-environment}.ataccama.one/api/pipeline-monitoring/v1/pipeline-jobs?orchestratorUrn={orchestratorUrn}" \
-H "Authorization: Bearer {access_token}"
| Parameter | Type | Required | Description |
|---|---|---|---|
|
string |
No |
Restricts the result to jobs observed from the given orchestrator. |
|
integer |
No |
Number of pipeline jobs to return per page. Default: Max: |
|
string |
No |
Field to sort by; prefix with a hyphen ( Default: |
|
string |
No |
Cursor for forward pagination.
Use the value from |
{
"meta": {
"total": 2
},
"data": [
{
"urn": "urn:ata:{your-tenant}:pipeline-monitoring:pipeline-job:0197f3a0-8888-7c0c-8f9d-3a2b4c5d6e7f",
"name": "analytics.hourly_orders",
"namespace": "dbt",
"orchestratorUrn": "urn:ata:{your-tenant}:pipeline-monitoring:orchestrator:0197f3a0-6666-7c0c-8f9d-3a2b4c5d6e7f"
},
{
"urn": "urn:ata:{your-tenant}:pipeline-monitoring:pipeline-job:0197f3a0-5555-7c0c-8f9d-3a2b4c5d6e7f",
"name": "analytics.nightly_customers",
"namespace": "dbt",
"orchestratorUrn": "urn:ata:{your-tenant}:pipeline-monitoring:orchestrator:0197f3a0-6666-7c0c-8f9d-3a2b4c5d6e7f"
}
]
}
The response is paginated the same way as in List orchestrators. For the meaning of each field, see Pipeline job fields.
Retrieve a pipeline job
Get the details of a specific pipeline job, for example, the job referenced by a job failure finding’s affectedAssetUrn.
URL-encode the pipeline job URN when placing it in the request path.
Each colon (:) becomes %3A.
curl -X GET "https://{your-environment}.ataccama.one/api/pipeline-monitoring/v1/pipeline-jobs/{pipelineJobUrn}" \
-H "Authorization: Bearer {access_token}"
The response returns the pipeline job with the fields described in Pipeline job fields.
List datasets
List the observed datasets.
To find the dataset matched to a catalog item, use the catalogItemUrn parameter.
Each catalog item matches at most one dataset, so the response contains one dataset or none.
curl -X GET "https://{your-environment}.ataccama.one/api/pipeline-monitoring/v1/datasets?catalogItemUrn={catalogItemUrn}" \
-H "Authorization: Bearer {access_token}"
| Parameter | Type | Required | Description |
|---|---|---|---|
|
string |
No |
Restricts the result to the dataset matched to the given catalog item. The mapping is unique, so at most one dataset is returned. |
|
integer |
No |
Number of datasets to return per page. Default: Max: |
|
string |
No |
Field to sort by; prefix with a hyphen ( Default: |
|
string |
No |
Cursor for forward pagination.
Use the value from |
{
"meta": {
"total": 1
},
"data": [
{
"urn": "urn:ata:{your-tenant}:pipeline-monitoring:dataset:0197f3a0-7777-7c0c-8f9d-3a2b4c5d6e7f",
"name": "warehouse.public.customers",
"namespace": "postgres://warehouse:5432",
"dataStoreName": "warehouse",
"catalogItemUrns": [
"urn:ata:{your-tenant}:catalog:catalog-item:8e106021-3655-463a-8884-6c7c6c315548"
],
"createdAt": "2026-06-11T14:20:00Z"
}
]
}
The response is paginated the same way as in List orchestrators. For the meaning of each field, see Dataset fields.
Retrieve a dataset
Get the details of a specific dataset, for example, the dataset referenced by a schema change finding’s affectedAssetUrn.
URL-encode the dataset URN when placing it in the request path.
Each colon (:) becomes %3A.
curl -X GET "https://{your-environment}.ataccama.one/api/pipeline-monitoring/v1/datasets/{datasetUrn}" \
-H "Authorization: Bearer {access_token}"
The response returns the dataset with the fields described in Dataset fields.
Error handling
The API returns standard HTTP status codes and reports errors as problem details (RFC 9457).
Error responses use the application/problem+json content type instead of application/json.
The body contains the following fields:
-
type: A machine-readable error code, as listed in the following table. -
title: A short summary of the problem type. -
detail: An explanation of the specific problem.
The only exception is 401 Unauthorized, which does not use the problem details format.
| Status code | Error code | Description |
|---|---|---|
|
— |
Request successful. |
|
|
Invalid request parameters (for example, a malformed URN). |
|
— |
Invalid or expired access token. Unlike the other error responses, the body does not use the problem details format. It is a plain JSON object or empty. |
|
|
Insufficient permissions to access the requested resource. |
|
|
Orchestrator, pipeline job, or dataset does not exist. Returned by the retrieve endpoints only. |
|
|
Unexpected server error. Try the request again later. |
API reference
For detailed API reference, including all endpoints, parameters, request and response schemas, and examples, see Pipeline Monitoring API specification.
Next steps
-
Monitor Data Observability Alerts via API: Retrieve the alerts and findings that reference the observed pipeline jobs and datasets.
-
Catalog Items API: Retrieve the catalog items that datasets are matched to.
-
Pipeline Monitoring: Learn more about pipeline monitoring concepts in the web application.
Was this page useful?