Update system settings (admin only)
const url = 'https://example.com/api/settings/system';const options = { method: 'PUT', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"sshCommandTimeoutMs":1,"sshReadyTimeoutMs":1,"webhookMaxRetries":1,"webhookTimeoutMs":1,"webhookRetryDelaysMs":"example","pgDumpTimeoutMs":1,"maxUploadSizeMb":1,"activeUserWindowMin":1,"registryMaxTags":1,"defaultLogLines":1,"publicUrl":"","agentCallbackUrl":"","agentStaleThresholdMs":1,"agentOfflineThresholdMs":1,"auditLogRetentionDays":1,"databaseMetricsRetentionDays":1,"notificationRetentionDays":1,"healthLogRetentionDays":1,"webhookDeliveryRetentionDays":1,"imageDigestRetentionDays":1,"timezone":"example","backupRetentionPreset":"lean","backupRetentionKeepLast":1,"backupRetentionDaily":1,"backupRetentionWeekly":1,"backupRetentionMonthly":1,"backupRetentionYearly":1,"backupRetentionMinFloor":1,"backupRetentionMaxTotalBytes":1,"failedBackupRetentionDays":1,"backupRotationConfirmThreshold":1}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PUT \ --url https://example.com/api/settings/system \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "sshCommandTimeoutMs": 1, "sshReadyTimeoutMs": 1, "webhookMaxRetries": 1, "webhookTimeoutMs": 1, "webhookRetryDelaysMs": "example", "pgDumpTimeoutMs": 1, "maxUploadSizeMb": 1, "activeUserWindowMin": 1, "registryMaxTags": 1, "defaultLogLines": 1, "publicUrl": "", "agentCallbackUrl": "", "agentStaleThresholdMs": 1, "agentOfflineThresholdMs": 1, "auditLogRetentionDays": 1, "databaseMetricsRetentionDays": 1, "notificationRetentionDays": 1, "healthLogRetentionDays": 1, "webhookDeliveryRetentionDays": 1, "imageDigestRetentionDays": 1, "timezone": "example", "backupRetentionPreset": "lean", "backupRetentionKeepLast": 1, "backupRetentionDaily": 1, "backupRetentionWeekly": 1, "backupRetentionMonthly": 1, "backupRetentionYearly": 1, "backupRetentionMinFloor": 1, "backupRetentionMaxTotalBytes": 1, "failedBackupRetentionDays": 1, "backupRotationConfirmThreshold": 1 }'Authorizations
Section titled “Authorizations”Request Bodyrequired
Section titled “Request Bodyrequired”object
Responses
Section titled “Responses”Bad request — malformed input or failed validation.
object
Stable, machine-readable error code. Always present on the wire.
Human-readable error message. Always present on the wire.
Field name when the error is tied to a specific input (e.g. validation).
Optional, human-friendly hint for resolving the error.
Server-assigned request ID; quote this when reporting issues.
Example
{ "code": "READONLY_FIELD", "message": "Field \"exposedPorts\" is read-only and cannot be set via PATCH.", "field": "exposedPorts", "hint": "Exposed ports are discovered from the running container. Change the ports mapping in the compose file at composePath and redeploy.", "requestId": "req_01H0…"}Unauthorized — missing or invalid bearer token.
object
Stable, machine-readable error code. Always present on the wire.
Human-readable error message. Always present on the wire.
Field name when the error is tied to a specific input (e.g. validation).
Optional, human-friendly hint for resolving the error.
Server-assigned request ID; quote this when reporting issues.
Example
{ "code": "READONLY_FIELD", "message": "Field \"exposedPorts\" is read-only and cannot be set via PATCH.", "field": "exposedPorts", "hint": "Exposed ports are discovered from the running container. Change the ports mapping in the compose file at composePath and redeploy.", "requestId": "req_01H0…"}Forbidden — token scope or role does not permit this operation.
object
Stable, machine-readable error code. Always present on the wire.
Human-readable error message. Always present on the wire.
Field name when the error is tied to a specific input (e.g. validation).
Optional, human-friendly hint for resolving the error.
Server-assigned request ID; quote this when reporting issues.
Example
{ "code": "READONLY_FIELD", "message": "Field \"exposedPorts\" is read-only and cannot be set via PATCH.", "field": "exposedPorts", "hint": "Exposed ports are discovered from the running container. Change the ports mapping in the compose file at composePath and redeploy.", "requestId": "req_01H0…"}