from metadata.sdk import configurefrom metadata.sdk.entities import Tablesconfigure( host="https://your-company.open-metadata.org/api", jwt_token="your-jwt-token")# List with paginationpage = Tables.list(limit=50, fields=["columns", "owners", "tags"])for t in page.entities: print(f"{t.fullyQualifiedName.root} ({len(t.columns or [])} columns)")# List all with auto-paginationall_tables = Tables.list_all(batch_size=100)for table in all_tables: print(f"{table.fullyQualifiedName.root}")
import org.openmetadata.schema.entity.data.Table;import org.openmetadata.sdk.models.ListParams;import org.openmetadata.sdk.models.ListResponse;// client is an initialized OpenMetadataClient.// Retrieve by IDTable table = client.tables().get(tableId);// List tablesListResponse<Table> result = client.tables().list( new ListParams() .setFields("columns,owners,tags") .setLimit(50));for (Table t : result.getData()) { System.out.println(t.getFullyQualifiedName());}
# List allcurl "{base_url}/api/v1/tables?limit=50" \ -H "Authorization: Bearer {access_token}"# Filter by schemacurl "{base_url}/api/v1/tables?databaseSchema=sample_data.ecommerce_db.shopify&limit=50" \ -H "Authorization: Bearer {access_token}"# With fieldscurl "{base_url}/api/v1/tables?databaseSchema=sample_data.ecommerce_db.shopify&fields=columns,owners,tags&limit=50" \ -H "Authorization: Bearer {access_token}"
List all tables with optional filtering and pagination
GET
/
v1
/
tables
GET /v1/tables
from metadata.sdk import configurefrom metadata.sdk.entities import Tablesconfigure( host="https://your-company.open-metadata.org/api", jwt_token="your-jwt-token")# List with paginationpage = Tables.list(limit=50, fields=["columns", "owners", "tags"])for t in page.entities: print(f"{t.fullyQualifiedName.root} ({len(t.columns or [])} columns)")# List all with auto-paginationall_tables = Tables.list_all(batch_size=100)for table in all_tables: print(f"{table.fullyQualifiedName.root}")
import org.openmetadata.schema.entity.data.Table;import org.openmetadata.sdk.models.ListParams;import org.openmetadata.sdk.models.ListResponse;// client is an initialized OpenMetadataClient.// Retrieve by IDTable table = client.tables().get(tableId);// List tablesListResponse<Table> result = client.tables().list( new ListParams() .setFields("columns,owners,tags") .setLimit(50));for (Table t : result.getData()) { System.out.println(t.getFullyQualifiedName());}
# List allcurl "{base_url}/api/v1/tables?limit=50" \ -H "Authorization: Bearer {access_token}"# Filter by schemacurl "{base_url}/api/v1/tables?databaseSchema=sample_data.ecommerce_db.shopify&limit=50" \ -H "Authorization: Bearer {access_token}"# With fieldscurl "{base_url}/api/v1/tables?databaseSchema=sample_data.ecommerce_db.shopify&fields=columns,owners,tags&limit=50" \ -H "Authorization: Bearer {access_token}"
List all tables with optional filtering and pagination.
Query Parameters
string
Filter by database fully qualified name.
string
Filter by database schema fully qualified name.
integer
default:"10"
Maximum number of results to return (max: 1000000).
string
Cursor for backward pagination.
string
Cursor for forward pagination.
string
Comma-separated list of fields to include. Valid fields: tableConstraints, tablePartition, usageSummary, owners, customMetrics, columns, sampleData, tags, followers, joins, schemaDefinition, dataModel, extension, testSuite, domains, dataProducts, lifeCycle, sourceHash.
string
default:"non-deleted"
Include all, deleted, or non-deleted entities.
boolean
default:"true"
Whether to include tables with empty test suites.
GET /v1/tables
from metadata.sdk import configurefrom metadata.sdk.entities import Tablesconfigure( host="https://your-company.open-metadata.org/api", jwt_token="your-jwt-token")# List with paginationpage = Tables.list(limit=50, fields=["columns", "owners", "tags"])for t in page.entities: print(f"{t.fullyQualifiedName.root} ({len(t.columns or [])} columns)")# List all with auto-paginationall_tables = Tables.list_all(batch_size=100)for table in all_tables: print(f"{table.fullyQualifiedName.root}")
import org.openmetadata.schema.entity.data.Table;import org.openmetadata.sdk.models.ListParams;import org.openmetadata.sdk.models.ListResponse;// client is an initialized OpenMetadataClient.// Retrieve by IDTable table = client.tables().get(tableId);// List tablesListResponse<Table> result = client.tables().list( new ListParams() .setFields("columns,owners,tags") .setLimit(50));for (Table t : result.getData()) { System.out.println(t.getFullyQualifiedName());}
# List allcurl "{base_url}/api/v1/tables?limit=50" \ -H "Authorization: Bearer {access_token}"# Filter by schemacurl "{base_url}/api/v1/tables?databaseSchema=sample_data.ecommerce_db.shopify&limit=50" \ -H "Authorization: Bearer {access_token}"# With fieldscurl "{base_url}/api/v1/tables?databaseSchema=sample_data.ecommerce_db.shopify&fields=columns,owners,tags&limit=50" \ -H "Authorization: Bearer {access_token}"
Returns a paginated list of table objects. By default, only basic fields are included. Use the fields parameter to request additional data such as columns, tags, and owners.
Response
array
Array of table objects.
Show properties
string
Unique identifier for the table (UUID format).
string
Table name.
string
Fully qualified name in format service.database.schema.table.
string
Human-readable display name.
string
Type of table, for example Regular, View, MaterializedView.
object
Reference to the parent database schema.
object
Reference to the parent database service.
string
Type of database service.
array
Column definitions. Only included when fields contains columns.
array
List of owners. Only included when fields contains owners.
array
Classification tags. Only included when fields contains tags.