from metadata.sdk import configurefrom metadata.sdk.entities import TestDefinitionsconfigure( host="https://your-company.open-metadata.org/api", jwt_token="your-jwt-token")# List first pagedefinitions = TestDefinitions.list(limit=50)for td in definitions.entities: print(f"{td.name.root} ({td.entityType.value})")# List all with auto-paginationfor td in TestDefinitions.list_all(): print(f"{td.name.root}: {td.description.root}")# Filter by entity typecolumn_defs = TestDefinitions.list( filters={"entityType": "COLUMN"}, fields=["owners"], limit=50)for td in column_defs.entities: print(f"{td.name.root} - supports: {td.supportedDataTypes}")
import org.openmetadata.sdk.models.ListParams;// client is an initialized OpenMetadataClient.// List first pagevar params = new ListParams().setLimit(50);var page = client.testDefinitions().list(params);for (var item : page.getData()) { System.out.println(item.getName());}// Filter by entity typevar filtered = new ListParams() .addFilter("entityType", "COLUMN") .setLimit(50);var filteredPage = client.testDefinitions().list(filtered);for (var item : filteredPage.getData()) { System.out.println(item.getName());}
# List allcurl "{base_url}/api/v1/dataQuality/testDefinitions?limit=50" \ -H "Authorization: Bearer {access_token}"# Filter by entity typecurl "{base_url}/api/v1/dataQuality/testDefinitions?entityType=COLUMN&limit=50" \ -H "Authorization: Bearer {access_token}"# Filter by supported data typecurl "{base_url}/api/v1/dataQuality/testDefinitions?supportedDataType=STRING&limit=50" \ -H "Authorization: Bearer {access_token}"
{ "data": [ { "id": "a636d153-f1e8-45be-86d3-52aa6b71730d", "name": "columnValueLengthsToBeBetween", "displayName": "Column Value Lengths To Be Between", "fullyQualifiedName": "columnValueLengthsToBeBetween", "description": "This test definition validates that the lengths of column values are between a specified range...", "version": 0.1, "updatedAt": 1769982618104, "updatedBy": "admin", "testPlatforms": ["OpenMetadata"], "supportedDataTypes": ["STRING", "VARCHAR", "CHAR", "TEXT"], "parameterDefinition": [ { "name": "minLength", "dataType": "INT", "required": false, "description": "The min length" }, { "name": "maxLength", "dataType": "INT", "required": false, "description": "The max length" } ], "entityType": "COLUMN", "provider": "system", "deleted": false } ], "paging": { "after": "...", "total": 25 }}
List Test Definitions
List all test definitions with optional filtering and pagination
GET
/
v1
/
dataQuality
/
testDefinitions
GET /v1/dataQuality/testDefinitions
from metadata.sdk import configurefrom metadata.sdk.entities import TestDefinitionsconfigure( host="https://your-company.open-metadata.org/api", jwt_token="your-jwt-token")# List first pagedefinitions = TestDefinitions.list(limit=50)for td in definitions.entities: print(f"{td.name.root} ({td.entityType.value})")# List all with auto-paginationfor td in TestDefinitions.list_all(): print(f"{td.name.root}: {td.description.root}")# Filter by entity typecolumn_defs = TestDefinitions.list( filters={"entityType": "COLUMN"}, fields=["owners"], limit=50)for td in column_defs.entities: print(f"{td.name.root} - supports: {td.supportedDataTypes}")
import org.openmetadata.sdk.models.ListParams;// client is an initialized OpenMetadataClient.// List first pagevar params = new ListParams().setLimit(50);var page = client.testDefinitions().list(params);for (var item : page.getData()) { System.out.println(item.getName());}// Filter by entity typevar filtered = new ListParams() .addFilter("entityType", "COLUMN") .setLimit(50);var filteredPage = client.testDefinitions().list(filtered);for (var item : filteredPage.getData()) { System.out.println(item.getName());}
# List allcurl "{base_url}/api/v1/dataQuality/testDefinitions?limit=50" \ -H "Authorization: Bearer {access_token}"# Filter by entity typecurl "{base_url}/api/v1/dataQuality/testDefinitions?entityType=COLUMN&limit=50" \ -H "Authorization: Bearer {access_token}"# Filter by supported data typecurl "{base_url}/api/v1/dataQuality/testDefinitions?supportedDataType=STRING&limit=50" \ -H "Authorization: Bearer {access_token}"
{ "data": [ { "id": "a636d153-f1e8-45be-86d3-52aa6b71730d", "name": "columnValueLengthsToBeBetween", "displayName": "Column Value Lengths To Be Between", "fullyQualifiedName": "columnValueLengthsToBeBetween", "description": "This test definition validates that the lengths of column values are between a specified range...", "version": 0.1, "updatedAt": 1769982618104, "updatedBy": "admin", "testPlatforms": ["OpenMetadata"], "supportedDataTypes": ["STRING", "VARCHAR", "CHAR", "TEXT"], "parameterDefinition": [ { "name": "minLength", "dataType": "INT", "required": false, "description": "The min length" }, { "name": "maxLength", "dataType": "INT", "required": false, "description": "The max length" } ], "entityType": "COLUMN", "provider": "system", "deleted": false } ], "paging": { "after": "...", "total": 25 }}
Filter by supported data type, for example STRING, INT, DOUBLE.
GET /v1/dataQuality/testDefinitions
from metadata.sdk import configurefrom metadata.sdk.entities import TestDefinitionsconfigure( host="https://your-company.open-metadata.org/api", jwt_token="your-jwt-token")# List first pagedefinitions = TestDefinitions.list(limit=50)for td in definitions.entities: print(f"{td.name.root} ({td.entityType.value})")# List all with auto-paginationfor td in TestDefinitions.list_all(): print(f"{td.name.root}: {td.description.root}")# Filter by entity typecolumn_defs = TestDefinitions.list( filters={"entityType": "COLUMN"}, fields=["owners"], limit=50)for td in column_defs.entities: print(f"{td.name.root} - supports: {td.supportedDataTypes}")
import org.openmetadata.sdk.models.ListParams;// client is an initialized OpenMetadataClient.// List first pagevar params = new ListParams().setLimit(50);var page = client.testDefinitions().list(params);for (var item : page.getData()) { System.out.println(item.getName());}// Filter by entity typevar filtered = new ListParams() .addFilter("entityType", "COLUMN") .setLimit(50);var filteredPage = client.testDefinitions().list(filtered);for (var item : filteredPage.getData()) { System.out.println(item.getName());}
# List allcurl "{base_url}/api/v1/dataQuality/testDefinitions?limit=50" \ -H "Authorization: Bearer {access_token}"# Filter by entity typecurl "{base_url}/api/v1/dataQuality/testDefinitions?entityType=COLUMN&limit=50" \ -H "Authorization: Bearer {access_token}"# Filter by supported data typecurl "{base_url}/api/v1/dataQuality/testDefinitions?supportedDataType=STRING&limit=50" \ -H "Authorization: Bearer {access_token}"
{ "data": [ { "id": "a636d153-f1e8-45be-86d3-52aa6b71730d", "name": "columnValueLengthsToBeBetween", "displayName": "Column Value Lengths To Be Between", "fullyQualifiedName": "columnValueLengthsToBeBetween", "description": "This test definition validates that the lengths of column values are between a specified range...", "version": 0.1, "updatedAt": 1769982618104, "updatedBy": "admin", "testPlatforms": ["OpenMetadata"], "supportedDataTypes": ["STRING", "VARCHAR", "CHAR", "TEXT"], "parameterDefinition": [ { "name": "minLength", "dataType": "INT", "required": false, "description": "The min length" }, { "name": "maxLength", "dataType": "INT", "required": false, "description": "The max length" } ], "entityType": "COLUMN", "provider": "system", "deleted": false } ], "paging": { "after": "...", "total": 25 }}