Back up a team's volumes and databases: where, how often and how many to keep. A blank secret keeps the saved one.
API key access: full.
apiKeyAuthorizationBearer <pyo_…>An API key from the dashboard's API keys page: Authorization: Bearer pyo_…. Keys can expire, and an expired one gets a 401.
application/jsonBack up a team's volumes and databases: where, how often and how many to keep. A blank secret keeps the saved one.
API key access: full.
op*"saveTeamBackupSettings""saveTeamBackupSettings"teamId*stringdestination?|"s3" (any S3-compatible storage) when given.
enabled*booleanschedule*string"daily" or "weekly".
hour*integerThe hour of day it runs, 0 to 23 (UTC).
int320 <= valuekeep*integerHow many backups to keep, 1 to 365.
int320 <= valueendpoint*stringregion*stringbucket*stringprefix*stringaccessKey*stringsecretKey?string|nullDone. Always ok: true, and some operations add more, such as a new API key or a join command. A warning comes with a change that went through but won't fully take effect yet, such as more replicas than the servers have room for.
application/jsoncurl -X POST 'https://your-pyo.example.com/api/v1/ops' \
-H 'Content-Type: application/json' \
-d '{
"accessKey": "AKIAEXAMPLE",
"bucket": "acme-backups",
"enabled": true,
"endpoint": "https://s3.eu-central-1.amazonaws.com",
"hour": 2,
"keep": 14,
"op": "saveTeamBackupSettings",
"prefix": "pyo/",
"region": "eu-central-1",
"schedule": "daily",
"teamId": "team_8kq2x7ad"
}'{}