PATCH /v1/tables/{id}
from metadata.sdk import configure
from metadata.sdk.entities import Tables
configure(
host="https://your-company.getcollate.io/api",
jwt_token="your-jwt-token"
)
# Retrieve, modify, and update
table = Tables.retrieve("a1b2c3d4-e5f6-7890-abcd-ef1234567890")
table.description = "Updated customer master data table with PII fields"
updated = Tables.update(table)
print(f"Updated to version {updated.version}")
import static org.openmetadata.sdk.fluent.Tables.*;
// Retrieve, modify, and update
Table table = Tables.retrieve("a1b2c3d4-e5f6-7890-abcd-ef1234567890");
table.setDescription("Updated customer master data table with PII fields");
Table updated = Tables.update(table);
# Update by ID
curl -X PATCH "{base_url}/api/v1/tables/455e3d9d-dbbf-455e-b3be-7191daa825f3" \
-H "Authorization: Bearer {access_token}" \
-H "Content-Type: application/json-patch+json" \
-d '[
{"op": "replace", "path": "/description", "value": "Updated agent performance summary with new metrics."}
]'
# Update by name
curl -X PATCH "{base_url}/api/v1/tables/name/sample_data.ecommerce_db.shopify.agent_performance_summary" \
-H "Authorization: Bearer {access_token}" \
-H "Content-Type: application/json-patch+json" \
-d '[
{"op": "replace", "path": "/description", "value": "Updated agent performance summary with new metrics."}
]'
{
"id": "455e3d9d-dbbf-455e-b3be-7191daa825f3",
"name": "agent_performance_summary",
"fullyQualifiedName": "sample_data.ecommerce_db.shopify.agent_performance_summary",
"description": "Updated agent performance summary with new metrics.",
"version": 0.2,
"updatedAt": 1769982700000,
"updatedBy": "admin",
"href": "http://localhost:8585/api/v1/tables/455e3d9d-dbbf-455e-b3be-7191daa825f3",
"tableType": "Regular",
"columns": [
{
"name": "agent_id",
"dataType": "VARCHAR",
"dataLength": 100,
"dataTypeDisplay": "varchar",
"description": "Agent identifier",
"fullyQualifiedName": "sample_data.ecommerce_db.shopify.agent_performance_summary.agent_id",
"tags": [],
"ordinalPosition": 1
},
{
"name": "performance_score",
"dataType": "DECIMAL",
"dataTypeDisplay": "decimal",
"description": "Overall performance score",
"fullyQualifiedName": "sample_data.ecommerce_db.shopify.agent_performance_summary.performance_score",
"tags": [],
"ordinalPosition": 2
}
],
"owners": [],
"databaseSchema": {
"id": "4dd30184-009c-4792-b296-9562eaed651f",
"type": "databaseSchema",
"name": "shopify",
"fullyQualifiedName": "sample_data.ecommerce_db.shopify",
"displayName": "shopify",
"deleted": false
},
"database": {
"id": "0be090de-0941-48c4-af49-a6157c91cda0",
"type": "database",
"name": "ecommerce_db",
"fullyQualifiedName": "sample_data.ecommerce_db",
"displayName": "ecommerce_db",
"deleted": false
},
"service": {
"id": "fd2193af-fe09-4366-92b7-1e0d01cd8c09",
"type": "databaseService",
"name": "sample_data",
"fullyQualifiedName": "sample_data",
"displayName": "sample_data",
"deleted": false
},
"serviceType": "BigQuery",
"tags": [],
"deleted": false
}
Update a Table
Update table properties using JSON Patch operations (add, remove, replace) to modify metadata fields like description, owners, tags, and custom properties via the Collate REST API.
PATCH
/
v1
/
tables
/
{id}
PATCH /v1/tables/{id}
from metadata.sdk import configure
from metadata.sdk.entities import Tables
configure(
host="https://your-company.getcollate.io/api",
jwt_token="your-jwt-token"
)
# Retrieve, modify, and update
table = Tables.retrieve("a1b2c3d4-e5f6-7890-abcd-ef1234567890")
table.description = "Updated customer master data table with PII fields"
updated = Tables.update(table)
print(f"Updated to version {updated.version}")
import static org.openmetadata.sdk.fluent.Tables.*;
// Retrieve, modify, and update
Table table = Tables.retrieve("a1b2c3d4-e5f6-7890-abcd-ef1234567890");
table.setDescription("Updated customer master data table with PII fields");
Table updated = Tables.update(table);
# Update by ID
curl -X PATCH "{base_url}/api/v1/tables/455e3d9d-dbbf-455e-b3be-7191daa825f3" \
-H "Authorization: Bearer {access_token}" \
-H "Content-Type: application/json-patch+json" \
-d '[
{"op": "replace", "path": "/description", "value": "Updated agent performance summary with new metrics."}
]'
# Update by name
curl -X PATCH "{base_url}/api/v1/tables/name/sample_data.ecommerce_db.shopify.agent_performance_summary" \
-H "Authorization: Bearer {access_token}" \
-H "Content-Type: application/json-patch+json" \
-d '[
{"op": "replace", "path": "/description", "value": "Updated agent performance summary with new metrics."}
]'
{
"id": "455e3d9d-dbbf-455e-b3be-7191daa825f3",
"name": "agent_performance_summary",
"fullyQualifiedName": "sample_data.ecommerce_db.shopify.agent_performance_summary",
"description": "Updated agent performance summary with new metrics.",
"version": 0.2,
"updatedAt": 1769982700000,
"updatedBy": "admin",
"href": "http://localhost:8585/api/v1/tables/455e3d9d-dbbf-455e-b3be-7191daa825f3",
"tableType": "Regular",
"columns": [
{
"name": "agent_id",
"dataType": "VARCHAR",
"dataLength": 100,
"dataTypeDisplay": "varchar",
"description": "Agent identifier",
"fullyQualifiedName": "sample_data.ecommerce_db.shopify.agent_performance_summary.agent_id",
"tags": [],
"ordinalPosition": 1
},
{
"name": "performance_score",
"dataType": "DECIMAL",
"dataTypeDisplay": "decimal",
"description": "Overall performance score",
"fullyQualifiedName": "sample_data.ecommerce_db.shopify.agent_performance_summary.performance_score",
"tags": [],
"ordinalPosition": 2
}
],
"owners": [],
"databaseSchema": {
"id": "4dd30184-009c-4792-b296-9562eaed651f",
"type": "databaseSchema",
"name": "shopify",
"fullyQualifiedName": "sample_data.ecommerce_db.shopify",
"displayName": "shopify",
"deleted": false
},
"database": {
"id": "0be090de-0941-48c4-af49-a6157c91cda0",
"type": "database",
"name": "ecommerce_db",
"fullyQualifiedName": "sample_data.ecommerce_db",
"displayName": "ecommerce_db",
"deleted": false
},
"service": {
"id": "fd2193af-fe09-4366-92b7-1e0d01cd8c09",
"type": "databaseService",
"name": "sample_data",
"fullyQualifiedName": "sample_data",
"displayName": "sample_data",
"deleted": false
},
"serviceType": "BigQuery",
"tags": [],
"deleted": false
}
Update a Table
Update a table’s properties using JSON Merge Patch. You can update by ID or by fully qualified name.Update by ID
string
required
UUID of the table to update.
Update by Name
UsePATCH /v1/tables/name/{fqn} to update by fully qualified name.
string
required
Fully qualified name of the table (e.g.,
snowflake_prod.analytics.public.customers).Body Parameters
Send a JSON object with the fields to update. Only provided fields are changed.string
Updated description in Markdown format.
string
Updated display name.
array
array
string
Updated retention period in ISO 8601 duration format.
array
Updated column definitions. Use this to update column descriptions, tags, or add new columns.
string
Updated domain FQN.
object
Updated custom property values.
PATCH /v1/tables/{id}
from metadata.sdk import configure
from metadata.sdk.entities import Tables
configure(
host="https://your-company.getcollate.io/api",
jwt_token="your-jwt-token"
)
# Retrieve, modify, and update
table = Tables.retrieve("a1b2c3d4-e5f6-7890-abcd-ef1234567890")
table.description = "Updated customer master data table with PII fields"
updated = Tables.update(table)
print(f"Updated to version {updated.version}")
import static org.openmetadata.sdk.fluent.Tables.*;
// Retrieve, modify, and update
Table table = Tables.retrieve("a1b2c3d4-e5f6-7890-abcd-ef1234567890");
table.setDescription("Updated customer master data table with PII fields");
Table updated = Tables.update(table);
# Update by ID
curl -X PATCH "{base_url}/api/v1/tables/455e3d9d-dbbf-455e-b3be-7191daa825f3" \
-H "Authorization: Bearer {access_token}" \
-H "Content-Type: application/json-patch+json" \
-d '[
{"op": "replace", "path": "/description", "value": "Updated agent performance summary with new metrics."}
]'
# Update by name
curl -X PATCH "{base_url}/api/v1/tables/name/sample_data.ecommerce_db.shopify.agent_performance_summary" \
-H "Authorization: Bearer {access_token}" \
-H "Content-Type: application/json-patch+json" \
-d '[
{"op": "replace", "path": "/description", "value": "Updated agent performance summary with new metrics."}
]'
{
"id": "455e3d9d-dbbf-455e-b3be-7191daa825f3",
"name": "agent_performance_summary",
"fullyQualifiedName": "sample_data.ecommerce_db.shopify.agent_performance_summary",
"description": "Updated agent performance summary with new metrics.",
"version": 0.2,
"updatedAt": 1769982700000,
"updatedBy": "admin",
"href": "http://localhost:8585/api/v1/tables/455e3d9d-dbbf-455e-b3be-7191daa825f3",
"tableType": "Regular",
"columns": [
{
"name": "agent_id",
"dataType": "VARCHAR",
"dataLength": 100,
"dataTypeDisplay": "varchar",
"description": "Agent identifier",
"fullyQualifiedName": "sample_data.ecommerce_db.shopify.agent_performance_summary.agent_id",
"tags": [],
"ordinalPosition": 1
},
{
"name": "performance_score",
"dataType": "DECIMAL",
"dataTypeDisplay": "decimal",
"description": "Overall performance score",
"fullyQualifiedName": "sample_data.ecommerce_db.shopify.agent_performance_summary.performance_score",
"tags": [],
"ordinalPosition": 2
}
],
"owners": [],
"databaseSchema": {
"id": "4dd30184-009c-4792-b296-9562eaed651f",
"type": "databaseSchema",
"name": "shopify",
"fullyQualifiedName": "sample_data.ecommerce_db.shopify",
"displayName": "shopify",
"deleted": false
},
"database": {
"id": "0be090de-0941-48c4-af49-a6157c91cda0",
"type": "database",
"name": "ecommerce_db",
"fullyQualifiedName": "sample_data.ecommerce_db",
"displayName": "ecommerce_db",
"deleted": false
},
"service": {
"id": "fd2193af-fe09-4366-92b7-1e0d01cd8c09",
"type": "databaseService",
"name": "sample_data",
"fullyQualifiedName": "sample_data",
"displayName": "sample_data",
"deleted": false
},
"serviceType": "BigQuery",
"tags": [],
"deleted": false
}
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
| Code | Error Type | Description |
|---|---|---|
400 | BAD_REQUEST | Invalid JSON patch or malformed request |
401 | UNAUTHORIZED | Invalid or missing authentication token |
403 | FORBIDDEN | User lacks permission to update this table |
404 | NOT_FOUND | Table with given ID or FQN does not exist |
409 | CONFLICT | Concurrent modification detected |
Was this page helpful?
⌘I