From 5c15cba27f7d1ecb33539d3979eba66f8eeb2743 Mon Sep 17 00:00:00 2001 From: Maksim Zimaliev Date: Fri, 10 Apr 2026 18:43:29 +0400 Subject: [PATCH 1/2] schema drift: driftedDatasetIds in pipeline-listing and pipeline --- reference/public-http-api.yaml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/reference/public-http-api.yaml b/reference/public-http-api.yaml index acf13dd..b04c5b0 100644 --- a/reference/public-http-api.yaml +++ b/reference/public-http-api.yaml @@ -576,12 +576,17 @@ paths: value: - id: '1' name: Ecommerce + driftedDatasetIds: [] - id: '2' name: Internal + driftedDatasetIds: + - 'ds-42' - id: '3' name: Staging environment + driftedDatasetIds: [] - id: '4' name: Test environment + driftedDatasetIds: [] '401': description: Unauthorized operationId: get-pipelines @@ -676,6 +681,7 @@ paths: name: Ecommerce columnNameStrategy: tableNamePostfix: true + driftedDatasetIds: [] '401': description: Unauthorized '404': @@ -1593,6 +1599,12 @@ components: name: type: string minLength: 1 + driftedDatasetIds: + type: array + readOnly: true + description: The set of dataset IDs within this pipeline that have drifted from their initial schema. + items: + type: string required: - id - name @@ -1618,6 +1630,12 @@ components: properties: tableNamePostfix: type: boolean + driftedDatasetIds: + type: array + readOnly: true + description: The set of dataset IDs within this pipeline that have drifted from their initial schema. + items: + type: string required: - id - name From 40ef9a8d85bcbd380dec0304bfa542904803d829 Mon Sep 17 00:00:00 2001 From: Maksim Zimaliev Date: Wed, 15 Apr 2026 16:06:31 +0400 Subject: [PATCH 2/2] refined driftedDataset API --- reference/public-http-api.yaml | 60 +++++++++++++++++++++++++++------- 1 file changed, 48 insertions(+), 12 deletions(-) diff --git a/reference/public-http-api.yaml b/reference/public-http-api.yaml index bb47c74..31064d5 100644 --- a/reference/public-http-api.yaml +++ b/reference/public-http-api.yaml @@ -586,17 +586,21 @@ paths: value: - id: '1' name: Ecommerce - driftedDatasetIds: [] + driftedDatasets: [] - id: '2' name: Internal - driftedDatasetIds: - - 'ds-42' + driftedDatasets: + - datasetId: 'ds-42' + driftedAt: '2026-04-10T12:00:00Z' + offset: + type: num + value: 150 - id: '3' name: Staging environment - driftedDatasetIds: [] + driftedDatasets: [] - id: '4' name: Test environment - driftedDatasetIds: [] + driftedDatasets: [] '401': description: Unauthorized operationId: get-pipelines @@ -691,7 +695,7 @@ paths: name: Ecommerce columnNameStrategy: tableNamePostfix: true - driftedDatasetIds: [] + driftedDatasets: [] '401': description: Unauthorized '404': @@ -1827,12 +1831,12 @@ components: name: type: string minLength: 1 - driftedDatasetIds: + driftedDatasets: type: array readOnly: true - description: The set of dataset IDs within this pipeline that have drifted from their initial schema. + description: Enriched drift information for each dataset within this pipeline that has drifted from its initial schema. items: - type: string + $ref: '#/components/schemas/drifted-dataset' required: - id - name @@ -1858,16 +1862,48 @@ components: properties: tableNamePostfix: type: boolean - driftedDatasetIds: + driftedDatasets: type: array readOnly: true - description: The set of dataset IDs within this pipeline that have drifted from their initial schema. + description: Enriched drift information for each dataset within this pipeline that has drifted from its initial schema. items: - type: string + $ref: '#/components/schemas/drifted-dataset' required: - id - name - destinationId + drifted-dataset: + title: '' + type: object + description: Drift information for a single dataset. + properties: + datasetId: + type: string + description: The ID of the drifted dataset. + driftedAt: + type: string + format: date-time + description: When the schema drift was detected. + offset: + type: object + nullable: true + description: The offset at which schema drift was detected. + properties: + type: + type: string + enum: + - num + - str + value: + oneOf: + - type: number + - type: string + required: + - type + - value + required: + - datasetId + - driftedAt simple-pipeline-metric: type: object properties: