Skip to main content
PUT
PUT /v1/tables

Update a Table

Create a table or update it if it already exists, using PUT /v1/tables with the full request body. Send the complete definition, not just the fields you want to change. To change only some fields, use PATCH with a JSON Patch array and the application/json-patch+json content type, as shown in the PATCH examples below.

Body Parameters

string
required
Name of the table. Must be unique within the parent schema.
string
required
Fully qualified name of the parent DatabaseSchema, for example snowflake_prod.analytics.public.
array
required
Array of column definitions for the table.
string
Human-readable display name for the table.
string
Description of the table in Markdown format.
string
Type of table: Regular, External, View, MaterializedView, SecureView, Iceberg, Local, Partitioned, Foreign, Transient.
string
Data retention period in ISO 8601 duration format, for example P365D.
array
Array of owner references (users or teams) to assign to the table.
array
Fully qualified names of the domains to assign for governance purposes.
array
Array of classification tags to apply to the table.
PUT /v1/tables

Returns

Returns the updated table object with the new version number.

Response

string
Unique identifier for the table (UUID format).
string
Table name.
string
Fully qualified name in format service.database.schema.table.
string
Updated description.
number
Incremented version number.

Error Handling