Update catalog maintenance configuration
client.r2DataCatalog.maintenanceConfigs.update(stringbucketName, MaintenanceConfigUpdateParams { account_id, compaction, snapshot_expiration } params, RequestOptionsoptions?): MaintenanceConfigUpdateResponse { compaction, snapshot_expiration }
POST/accounts/{account_id}/r2-catalog/{bucket_name}/maintenance-configs
Update the maintenance configuration for a catalog. 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)
Update catalog maintenance configuration
import Cloudflare from 'cloudflare';
const client = new Cloudflare({
apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted
});
const maintenanceConfig = await client.r2DataCatalog.maintenanceConfigs.update('my-data-bucket', {
account_id: '0123456789abcdef0123456789abcdef',
compaction: { state: 'enabled', target_size_mb: '256' },
snapshot_expiration: {
max_snapshot_age: '14d',
min_snapshots_to_keep: 5,
state: 'enabled',
},
});
console.log(maintenanceConfig.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
}