Admin Backups

Generated admin backups operations.

GET/v1/admin/backupsList server backups and restore statusadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
get_admin_backups

Responses

200Successapplication/json

Example
{
  "backups": [
    {
      "bytes": 0,
      "createdAt": "2026-10-18T19:30:00Z",
      "encrypted": true,
      "id": "id_8h2k4q",
      "kind": "string",
      "path": "string",
      "schemaVersion": 0,
      "serverVersion": "string"
    }
  ],
  "lastBackup": {
    "backupId": "id_8h2k4q",
    "errorCode": "string",
    "jobId": "id_8h2k4q",
    "outcome": "string"
  },
  "lastRestore": {
    "at": "2026-10-18T19:30:00Z",
    "jobId": "id_8h2k4q",
    "operationId": "id_8h2k4q",
    "outcome": "string",
    "reason": "string",
    "recovery": {
      "damagedTables": [
        "string"
      ],
      "indexesRebuilt": true,
      "manifestDamage": {
        "count": 0,
        "missingFiles": 0,
        "regions": [
          {}
        ],
        "regionsTruncated": true,
        "unverifiedDatabase": true
      },
      "removedRows": 0,
      "salvaged": true
    },
    "schemaVersion": 0,
    "sourceDigest": "string"
  },
  "restore": {
    "bytesDone": 0,
    "bytesTotal": 0,
    "errorCode": "string",
    "jobId": "id_8h2k4q",
    "phase": "string",
    "result": {
      "restartRequired": true,
      "staged": true,
      "validation": {
        "integrity": "string",
        "recovery": {
          "damagedTables": [],
          "indexesRebuilt": true,
          "manifestDamage": {},
          "removedRows": 0,
          "salvaged": true
        },
        "schemaVersion": 0
      }
    }
  },
  "running": {
    "bytesDone": 0,
    "bytesTotal": 0,
    "jobId": "id_8h2k4q",
    "kind": "string",
    "phase": "string"
  }
}
Schema
  • backupsarray of objectrequired
    • bytesintegerrequired
    • createdAtstringrequired
    • encryptedboolean
    • idstringrequired
    • kindstringrequired
    • pathstringrequired
    • schemaVersionintegerrequired
    • serverVersionstringrequired
  • lastBackupobject
    • backupIdstring
    • errorCodestring
    • jobIdstringrequired
    • outcomestringrequired
  • lastRestoreobject
    • atstringrequired
    • jobIdstring
    • operationIdstring
    • outcomestringrequired
    • reasonstring
    • recoveryobject
      • damagedTablesarray of string
      • indexesRebuiltboolean
      • manifestDamageobject
        • countintegerrequired
        • missingFilesintegerrequired
        • regionsarray of objectrequired
          • endByteintegerrequired
          • firstLineintegerrequired
          • lastLineintegerrequired
          • reasonstringrequired
          • startByteintegerrequired
        • regionsTruncatedboolean
        • unverifiedDatabaseboolean
      • removedRowsinteger
      • salvagedboolean
    • schemaVersioninteger
    • sourceDigeststring
  • restoreobject
    • bytesDoneintegerrequired
    • bytesTotalintegerrequired
    • errorCodestring
    • jobIdstringrequired
    • phasestringrequired
    • resultobject
      • restartRequiredbooleanrequired
      • stagedbooleanrequired
      • validationobjectrequired
        • integritystringrequired
        • recoveryobject
          • damagedTablesarray of string
          • indexesRebuiltboolean
          • manifestDamageobject
            • countintegerrequired
            • missingFilesintegerrequired
            • regionsarray of objectrequired
              • endByteintegerrequired
              • firstLineintegerrequired
              • lastLineintegerrequired
              • reasonstringrequired
              • startByteintegerrequired
            • regionsTruncatedboolean
            • unverifiedDatabaseboolean
          • removedRowsinteger
          • salvagedboolean
        • schemaVersionintegerrequired
  • runningobject
    • bytesDoneintegerrequired
    • bytesTotalintegerrequired
    • jobIdstringrequired
    • kindstringrequired
    • phasestringrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesunauthorizedadministration_unavailableinternaldatabase_busy

Example request

curl -X GET "http://127.0.0.1:32500/v1/admin/backups" \
  -H "Authorization: Bearer $PORTICO_API_KEY"
POST/v1/admin/backupsStart a server backupadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
post_admin_backups
Max body
4 KiB

Request body application/json · required

Example
{
  "operationId": "id_8h2k4q"
}
Schema
  • operationIdstringrequired

Responses

202Successapplication/json

Example
{
  "jobId": "id_8h2k4q"
}
Schema
  • jobIdstringrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesunauthorizedinvalid_requestrequest_in_progressinsufficient_diskadministration_unavailableinternaldatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/admin/backups" \
  -H "Authorization: Bearer $PORTICO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"operationId":"id_8h2k4q"}'
DELETE/v1/admin/backups/{id}Delete a server backupadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
delete_admin_backup

Parameters

NameInTypeDescription
idrequiredpathstring

Responses

204Success

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesunauthorizedinvalid_requestnot_foundadministration_unavailableinternaldatabase_busywriter_capacity

Example request

curl -X DELETE "http://127.0.0.1:32500/v1/admin/backups/{id}" \
  -H "Authorization: Bearer $PORTICO_API_KEY"
POST/v1/admin/backups/inspectInspect backup source protectionadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
post_admin_backups_inspect
Max body
4 KiB

Request body application/json · required

Example
{
  "source": {
    "backupId": "id_8h2k4q",
    "path": "string"
  }
}
Schema
  • sourceobjectrequired
    • backupIdstring
    • pathstring

Responses

200Successapplication/json

Example
{
  "encrypted": true
}
Schema
  • encryptedbooleanrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesunauthorizedadministration_unavailablerestore_source_invalidinternaldatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/admin/backups/inspect" \
  -H "Authorization: Bearer $PORTICO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"source":{"backupId":"id_8h2k4q","path":"string"}}'
POST/v1/admin/backups/restoreStart restoring a backupadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
post_admin_backups_restore
Max body
4 KiB

Request body application/json · required

Example
{
  "operationId": "id_8h2k4q",
  "passphrase": "string",
  "source": {
    "backupId": "id_8h2k4q",
    "path": "string"
  }
}
Schema
  • operationIdstringrequired
  • passphrasestring
  • sourceobjectrequired
    • backupIdstring
    • pathstring

Responses

202Successapplication/json

Example
{
  "jobId": "id_8h2k4q"
}
Schema
  • jobIdstringrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesunauthorizedinvalid_requestrequest_in_progressrestore_lock_unavailablerestore_source_invalidrestore_pre_releaserestore_integrity_failedrestore_not_porticoinsufficient_diskadministration_unavailableinternaldatabase_busywriter_capacity

Example request

curl -X POST "http://127.0.0.1:32500/v1/admin/backups/restore" \
  -H "Authorization: Bearer $PORTICO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"operationId":"id_8h2k4q","passphrase":"string","source":{"backupId":"id_8h2k4q","path":"string"}}'
GET/v1/admin/backups/settingsRead backup destination and protectionadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
get_admin_backup_settings

Responses

200Successapplication/json

Example
{
  "backupFolder": "string",
  "includeArtwork": true,
  "passphraseProtected": true,
  "passphraseSet": true
}
Schema
  • backupFolderstringrequired
  • includeArtworkbooleanrequired
  • passphraseProtectedbooleanrequired
  • passphraseSetbooleanrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesunauthorizedadministration_unavailableinternaldatabase_busy

Example request

curl -X GET "http://127.0.0.1:32500/v1/admin/backups/settings" \
  -H "Authorization: Bearer $PORTICO_API_KEY"
PUT/v1/admin/backups/settingsSet backup destination, artwork inclusion and passphrase protectionadmin
Audience
Clients · Native API
Authorization
API key or personal access token with the admin scope, or a signed-in session
OpenAPI operation ID
put_admin_backup_settings
Max body
8 KiB

Parameters

NameInTypeDescription
Idempotency-Keyheaderstring
Portico-Mutation-Rootheaderstring

Request body application/json · required

Example
{
  "backupFolder": "string",
  "includeArtwork": true,
  "passphrase": "string",
  "passphraseProtected": true
}
Schema
  • backupFolderstring
  • includeArtworkboolean
  • passphrasestring
  • passphraseProtectedboolean

Responses

200Successapplication/json

Example
{
  "backupFolder": "string",
  "includeArtwork": true,
  "passphraseProtected": true,
  "passphraseSet": true
}
Schema
  • backupFolderstringrequired
  • includeArtworkbooleanrequired
  • passphraseProtectedbooleanrequired
  • passphraseSetbooleanrequired

defaultRequest refused or unavailableapplication/json

Example
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
Schema
  • errorobjectrequired
    • codestringrequired
    • messagestringrequired

Error codesunauthorizedinvalid_requestadministration_unavailableinternalidempotency_conflictreceipt_expiredinvalid_mutation_keydatabase_busywriter_capacity

Example request

curl -X PUT "http://127.0.0.1:32500/v1/admin/backups/settings" \
  -H "Authorization: Bearer $PORTICO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"backupFolder":"string","includeArtwork":true,"passphrase":"string","passphraseProtected":true}'