|
544 | 544 | } |
545 | 545 | } |
546 | 546 | }, |
| 547 | + "/api/table_diff": { |
| 548 | + "get": { |
| 549 | + "summary": "Get Table Diff", |
| 550 | + "description": "Calculate differences between tables, taking into account schema and row level differences.", |
| 551 | + "operationId": "get_table_diff_api_table_diff_get", |
| 552 | + "parameters": [ |
| 553 | + { |
| 554 | + "required": true, |
| 555 | + "schema": { "title": "Source", "type": "string" }, |
| 556 | + "name": "source", |
| 557 | + "in": "query" |
| 558 | + }, |
| 559 | + { |
| 560 | + "required": true, |
| 561 | + "schema": { "title": "Target", "type": "string" }, |
| 562 | + "name": "target", |
| 563 | + "in": "query" |
| 564 | + }, |
| 565 | + { |
| 566 | + "required": false, |
| 567 | + "schema": { "title": "On", "type": "string" }, |
| 568 | + "name": "on", |
| 569 | + "in": "query" |
| 570 | + }, |
| 571 | + { |
| 572 | + "required": false, |
| 573 | + "schema": { "title": "Model Or Snapshot", "type": "string" }, |
| 574 | + "name": "model_or_snapshot", |
| 575 | + "in": "query" |
| 576 | + }, |
| 577 | + { |
| 578 | + "required": false, |
| 579 | + "schema": { "title": "Where", "type": "string" }, |
| 580 | + "name": "where", |
| 581 | + "in": "query" |
| 582 | + }, |
| 583 | + { |
| 584 | + "required": false, |
| 585 | + "schema": { "title": "Limit", "type": "integer", "default": 20 }, |
| 586 | + "name": "limit", |
| 587 | + "in": "query" |
| 588 | + } |
| 589 | + ], |
| 590 | + "responses": { |
| 591 | + "200": { |
| 592 | + "description": "Successful Response", |
| 593 | + "content": { |
| 594 | + "application/json": { |
| 595 | + "schema": { "$ref": "#/components/schemas/TableDiff" } |
| 596 | + } |
| 597 | + } |
| 598 | + }, |
| 599 | + "422": { |
| 600 | + "description": "Validation Error", |
| 601 | + "content": { |
| 602 | + "application/json": { |
| 603 | + "schema": { "$ref": "#/components/schemas/HTTPValidationError" } |
| 604 | + } |
| 605 | + } |
| 606 | + } |
| 607 | + } |
| 608 | + } |
| 609 | + }, |
547 | 610 | "/health": { |
548 | 611 | "get": { |
549 | 612 | "summary": "Health", |
|
1047 | 1110 | "storage_format": { "title": "Storage Format", "type": "string" }, |
1048 | 1111 | "time_column": { "title": "Time Column", "type": "string" }, |
1049 | 1112 | "tags": { "title": "Tags", "type": "string" }, |
| 1113 | + "grain": { "title": "Grain", "type": "string" }, |
1050 | 1114 | "partitioned_by": { "title": "Partitioned By", "type": "string" }, |
1051 | 1115 | "lookback": { "title": "Lookback", "type": "integer" }, |
1052 | 1116 | "cron_prev": { |
|
1225 | 1289 | "dialect": { "title": "Dialect", "type": "string" } |
1226 | 1290 | } |
1227 | 1291 | }, |
| 1292 | + "RowDiff": { |
| 1293 | + "title": "RowDiff", |
| 1294 | + "required": [ |
| 1295 | + "source", |
| 1296 | + "target", |
| 1297 | + "stats", |
| 1298 | + "sample", |
| 1299 | + "source_count", |
| 1300 | + "target_count", |
| 1301 | + "count_pct_change" |
| 1302 | + ], |
| 1303 | + "type": "object", |
| 1304 | + "properties": { |
| 1305 | + "source": { "title": "Source", "type": "string" }, |
| 1306 | + "target": { "title": "Target", "type": "string" }, |
| 1307 | + "stats": { |
| 1308 | + "title": "Stats", |
| 1309 | + "type": "object", |
| 1310 | + "additionalProperties": { "type": "number" } |
| 1311 | + }, |
| 1312 | + "sample": { "title": "Sample", "type": "object" }, |
| 1313 | + "source_count": { "title": "Source Count", "type": "integer" }, |
| 1314 | + "target_count": { "title": "Target Count", "type": "integer" }, |
| 1315 | + "count_pct_change": { "title": "Count Pct Change", "type": "number" } |
| 1316 | + } |
| 1317 | + }, |
| 1318 | + "SchemaDiff": { |
| 1319 | + "title": "SchemaDiff", |
| 1320 | + "required": [ |
| 1321 | + "source", |
| 1322 | + "target", |
| 1323 | + "source_schema", |
| 1324 | + "target_schema", |
| 1325 | + "added", |
| 1326 | + "removed", |
| 1327 | + "modified" |
| 1328 | + ], |
| 1329 | + "type": "object", |
| 1330 | + "properties": { |
| 1331 | + "source": { "title": "Source", "type": "string" }, |
| 1332 | + "target": { "title": "Target", "type": "string" }, |
| 1333 | + "source_schema": { |
| 1334 | + "title": "Source Schema", |
| 1335 | + "type": "object", |
| 1336 | + "additionalProperties": { "type": "string" } |
| 1337 | + }, |
| 1338 | + "target_schema": { |
| 1339 | + "title": "Target Schema", |
| 1340 | + "type": "object", |
| 1341 | + "additionalProperties": { "type": "string" } |
| 1342 | + }, |
| 1343 | + "added": { |
| 1344 | + "title": "Added", |
| 1345 | + "type": "object", |
| 1346 | + "additionalProperties": { "type": "string" } |
| 1347 | + }, |
| 1348 | + "removed": { |
| 1349 | + "title": "Removed", |
| 1350 | + "type": "object", |
| 1351 | + "additionalProperties": { "type": "string" } |
| 1352 | + }, |
| 1353 | + "modified": { |
| 1354 | + "title": "Modified", |
| 1355 | + "type": "object", |
| 1356 | + "additionalProperties": { "type": "string" } |
| 1357 | + } |
| 1358 | + } |
| 1359 | + }, |
1228 | 1360 | "SnapshotChangeCategory": { |
1229 | 1361 | "title": "SnapshotChangeCategory", |
1230 | 1362 | "enum": [1, 2, 3, 4, 5], |
|
1311 | 1443 | }, |
1312 | 1444 | "additionalProperties": false |
1313 | 1445 | }, |
| 1446 | + "TableDiff": { |
| 1447 | + "title": "TableDiff", |
| 1448 | + "required": ["schema_diff", "row_diff"], |
| 1449 | + "type": "object", |
| 1450 | + "properties": { |
| 1451 | + "schema_diff": { "$ref": "#/components/schemas/SchemaDiff" }, |
| 1452 | + "row_diff": { "$ref": "#/components/schemas/RowDiff" } |
| 1453 | + } |
| 1454 | + }, |
1314 | 1455 | "ValidationError": { |
1315 | 1456 | "title": "ValidationError", |
1316 | 1457 | "required": ["loc", "msg", "type"], |
|
0 commit comments