Create a Table
Create a new table within a database schema
POST
POST /v1/tables
Create a Table
Create a new table within a database schema.Body Parameters
Fully qualified name of the parent DatabaseSchema, for example
snowflake_prod.analytics.public.Type of table:
Regular, External, Dynamic, View, SecureView, MaterializedView, Iceberg, DeltaLake, Local, Partitioned, Foreign, Transient, Stream, Stage, SemanticView.Certification to set when the table is created. Ingestion connectors can send it in the same request instead of a follow-up patch to
/certification.
When a bot sends a PUT with an explicit certification, the value is applied. A bot PUT that omits it keeps the stored certification.POST /v1/tables
Returns
Returns the created table object with all specified properties, system-generated fields, and fully qualified names for each column.Response
Time the table was created in OpenMetadata, in Unix epoch milliseconds. Set by the server and kept on later updates.
User or bot that created the table in OpenMetadata. Set by the server. The same two fields are on chart, container, dashboard, dashboard data model, database, database schema, metric, machine learning (ML) model, pipeline, query, topic, role, team, and user.
Create or Update (PUT)
UsePUT /v1/tables instead of POST to perform an upsert. If a table with the same fullyQualifiedName already exists, it will be updated; otherwise, a new table is created. The request body is the same as POST.
PUT will not return a 409 conflict error if the entity already exists — it will update the existing entity instead.Bulk Create or Update (PUT)
UsePUT /v1/tables/bulk to create or update multiple tables in a single request. The request body is an array of create request objects.