Update table maintenance configuration
r2_data_catalog.namespaces.tables.maintenance_configs.update(strtable_name, MaintenanceConfigUpdateParams**kwargs) -> MaintenanceConfigUpdateResponse
POST/accounts/{account_id}/r2-catalog/{bucket_name}/namespaces/{namespace}/tables/{table_name}/maintenance-configs
Update the maintenance configuration for a specific table. This allows you to enable or disable compaction and adjust target file sizes for optimization.
Security
API Token
The preferred authorization scheme for interacting with the Cloudflare API. Create a token.
Example:
API Email + API Key
The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.
Example:
The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.
Example:
Accepted Permissions (at least one required)
Parameters
Update table maintenance configuration
import os
from cloudflare import Cloudflare
client = Cloudflare(
api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted
)
maintenance_config = client.r2_data_catalog.namespaces.tables.maintenance_configs.update(
table_name="my_table",
account_id="0123456789abcdef0123456789abcdef",
bucket_name="my-data-bucket",
namespace="my_namespace%1Fsub_namespace",
compaction={
"state": "enabled",
"target_size_mb": "256",
},
snapshot_expiration={
"max_snapshot_age": "14d",
"min_snapshots_to_keep": 5,
"state": "enabled",
},
)
print(maintenance_config.compaction){
"errors": [],
"messages": [],
"result": {
"compaction": {
"state": "enabled",
"target_size_mb": "256"
},
"snapshot_expiration": {
"max_snapshot_age": "14d",
"min_snapshots_to_keep": 5,
"state": "enabled"
}
},
"success": true
}Returns Examples
{
"errors": [],
"messages": [],
"result": {
"compaction": {
"state": "enabled",
"target_size_mb": "256"
},
"snapshot_expiration": {
"max_snapshot_age": "14d",
"min_snapshots_to_keep": 5,
"state": "enabled"
}
},
"success": true
}