PATCH /v1/services/databaseServices/{id}
from metadata.sdk import configure
from metadata.sdk.entities import DatabaseServices
configure(
host="https://your-company.open-metadata.org/api",
jwt_token="your-jwt-token"
)
# Retrieve, modify, and update
service = DatabaseServices.retrieve("a1b2c3d4-e5f6-7890-abcd-ef1234567890")
service.description = "Updated production Snowflake warehouse"
service.displayName = "Snowflake Prod (Updated)"
updated = DatabaseServices.update(service)
print(f"Updated to version {updated.version}")
import static org.openmetadata.sdk.fluent.DatabaseServices.*;
// Retrieve, modify, and update
DatabaseService service = DatabaseServices.retrieve("a1b2c3d4-e5f6-7890-abcd-ef1234567890");
service.setDescription("Updated production Snowflake warehouse");
DatabaseService updated = DatabaseServices.update(service);
# Update by ID
curl -X PATCH "{base_url}/api/v1/services/databaseServices/fd2193af-fe09-4366-92b7-1e0d01cd8c09" \
-H "Authorization: Bearer {access_token}" \
-H "Content-Type: application/json-patch+json" \
-d '[
{"op": "replace", "path": "/description", "value": "Updated BigQuery data service"},
{"op": "replace", "path": "/displayName", "value": "Sample Data (Updated)"}
]'
# Update by name
curl -X PATCH "{base_url}/api/v1/services/databaseServices/name/sample_data" \
-H "Authorization: Bearer {access_token}" \
-H "Content-Type: application/json-patch+json" \
-d '[
{"op": "replace", "path": "/description", "value": "Updated BigQuery data service"}
]'
{
"id": "fd2193af-fe09-4366-92b7-1e0d01cd8c09",
"name": "sample_data",
"fullyQualifiedName": "sample_data",
"serviceType": "BigQuery",
"description": "Updated BigQuery data service",
"version": 0.2,
"updatedAt": 1769982700000,
"updatedBy": "admin",
"href": "http://localhost:8585/api/v1/services/databaseServices/fd2193af-fe09-4366-92b7-1e0d01cd8c09",
"connection": {
"config": {
"type": "BigQuery",
"scheme": "bigquery",
"hostPort": "bigquery.googleapis.com",
"taxonomyProjectID": [],
"taxonomyLocation": "us",
"usageLocation": "us",
"supportsMetadataExtraction": true,
"supportsUsageExtraction": true,
"supportsLineageExtraction": true,
"supportsDBTExtraction": true,
"supportsProfiler": true,
"supportsQueryComment": true
}
},
"owners": [],
"tags": [],
"deleted": false,
"domains": [],
"entityStatus": "Unprocessed"
}
Update a Database Service
Update database service properties using JSON Patch
PATCH
/
v1
/
services
/
databaseServices
/
{id}
PATCH /v1/services/databaseServices/{id}
from metadata.sdk import configure
from metadata.sdk.entities import DatabaseServices
configure(
host="https://your-company.open-metadata.org/api",
jwt_token="your-jwt-token"
)
# Retrieve, modify, and update
service = DatabaseServices.retrieve("a1b2c3d4-e5f6-7890-abcd-ef1234567890")
service.description = "Updated production Snowflake warehouse"
service.displayName = "Snowflake Prod (Updated)"
updated = DatabaseServices.update(service)
print(f"Updated to version {updated.version}")
import static org.openmetadata.sdk.fluent.DatabaseServices.*;
// Retrieve, modify, and update
DatabaseService service = DatabaseServices.retrieve("a1b2c3d4-e5f6-7890-abcd-ef1234567890");
service.setDescription("Updated production Snowflake warehouse");
DatabaseService updated = DatabaseServices.update(service);
# Update by ID
curl -X PATCH "{base_url}/api/v1/services/databaseServices/fd2193af-fe09-4366-92b7-1e0d01cd8c09" \
-H "Authorization: Bearer {access_token}" \
-H "Content-Type: application/json-patch+json" \
-d '[
{"op": "replace", "path": "/description", "value": "Updated BigQuery data service"},
{"op": "replace", "path": "/displayName", "value": "Sample Data (Updated)"}
]'
# Update by name
curl -X PATCH "{base_url}/api/v1/services/databaseServices/name/sample_data" \
-H "Authorization: Bearer {access_token}" \
-H "Content-Type: application/json-patch+json" \
-d '[
{"op": "replace", "path": "/description", "value": "Updated BigQuery data service"}
]'
{
"id": "fd2193af-fe09-4366-92b7-1e0d01cd8c09",
"name": "sample_data",
"fullyQualifiedName": "sample_data",
"serviceType": "BigQuery",
"description": "Updated BigQuery data service",
"version": 0.2,
"updatedAt": 1769982700000,
"updatedBy": "admin",
"href": "http://localhost:8585/api/v1/services/databaseServices/fd2193af-fe09-4366-92b7-1e0d01cd8c09",
"connection": {
"config": {
"type": "BigQuery",
"scheme": "bigquery",
"hostPort": "bigquery.googleapis.com",
"taxonomyProjectID": [],
"taxonomyLocation": "us",
"usageLocation": "us",
"supportsMetadataExtraction": true,
"supportsUsageExtraction": true,
"supportsLineageExtraction": true,
"supportsDBTExtraction": true,
"supportsProfiler": true,
"supportsQueryComment": true
}
},
"owners": [],
"tags": [],
"deleted": false,
"domains": [],
"entityStatus": "Unprocessed"
}
Update a Database Service
Update a database service’s properties using JSON Merge Patch. You can update by ID or by fully qualified name.Update by ID
string
required
UUID of the database service to update.
Update by Name
UsePATCH /v1/services/databaseServices/name/{fqn} to update by fully qualified name.
string
required
Fully qualified name of the database service (e.g.,
snowflake_prod).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.
object
Updated connection configuration.
Show properties
Show properties
object
Service-specific connection configuration.
array
array
string
Updated domain FQN.
PATCH /v1/services/databaseServices/{id}
from metadata.sdk import configure
from metadata.sdk.entities import DatabaseServices
configure(
host="https://your-company.open-metadata.org/api",
jwt_token="your-jwt-token"
)
# Retrieve, modify, and update
service = DatabaseServices.retrieve("a1b2c3d4-e5f6-7890-abcd-ef1234567890")
service.description = "Updated production Snowflake warehouse"
service.displayName = "Snowflake Prod (Updated)"
updated = DatabaseServices.update(service)
print(f"Updated to version {updated.version}")
import static org.openmetadata.sdk.fluent.DatabaseServices.*;
// Retrieve, modify, and update
DatabaseService service = DatabaseServices.retrieve("a1b2c3d4-e5f6-7890-abcd-ef1234567890");
service.setDescription("Updated production Snowflake warehouse");
DatabaseService updated = DatabaseServices.update(service);
# Update by ID
curl -X PATCH "{base_url}/api/v1/services/databaseServices/fd2193af-fe09-4366-92b7-1e0d01cd8c09" \
-H "Authorization: Bearer {access_token}" \
-H "Content-Type: application/json-patch+json" \
-d '[
{"op": "replace", "path": "/description", "value": "Updated BigQuery data service"},
{"op": "replace", "path": "/displayName", "value": "Sample Data (Updated)"}
]'
# Update by name
curl -X PATCH "{base_url}/api/v1/services/databaseServices/name/sample_data" \
-H "Authorization: Bearer {access_token}" \
-H "Content-Type: application/json-patch+json" \
-d '[
{"op": "replace", "path": "/description", "value": "Updated BigQuery data service"}
]'
{
"id": "fd2193af-fe09-4366-92b7-1e0d01cd8c09",
"name": "sample_data",
"fullyQualifiedName": "sample_data",
"serviceType": "BigQuery",
"description": "Updated BigQuery data service",
"version": 0.2,
"updatedAt": 1769982700000,
"updatedBy": "admin",
"href": "http://localhost:8585/api/v1/services/databaseServices/fd2193af-fe09-4366-92b7-1e0d01cd8c09",
"connection": {
"config": {
"type": "BigQuery",
"scheme": "bigquery",
"hostPort": "bigquery.googleapis.com",
"taxonomyProjectID": [],
"taxonomyLocation": "us",
"usageLocation": "us",
"supportsMetadataExtraction": true,
"supportsUsageExtraction": true,
"supportsLineageExtraction": true,
"supportsDBTExtraction": true,
"supportsProfiler": true,
"supportsQueryComment": true
}
},
"owners": [],
"tags": [],
"deleted": false,
"domains": [],
"entityStatus": "Unprocessed"
}
Returns
Returns the updated database service object with the new version number.Response
string
Unique identifier for the database service (UUID format).
string
Database service name.
string
Fully qualified name of the service.
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 database service |
404 | NOT_FOUND | Database service with given ID or FQN does not exist |
409 | CONFLICT | Concurrent modification detected |
Was this page helpful?
⌘I