Plex Host Docs
API

Backups

Endpoints for the server's backup history.

Creating a backup returns 201 Created once the backup record exists — the archive itself is still being written. Restoring returns 202 Accepted: the restore has been queued, not completed. Poll GET /api/v1/servers/{id}/backups/{backupId} for either to track status.

GET
/api/v1/servers/{id}/backups
AuthorizationBearer <token>

In: header

Path Parameters

id*string

Server id

Response Body

application/json

application/json

curl -X GET "https://example.com/api/v1/servers/string/backups"
{
  "data": [
    {
      "adapter": "string",
      "completedAt": "2019-08-24T14:15:22Z",
      "createdAt": "2019-08-24T14:15:22Z",
      "description": "string",
      "id": "string",
      "name": "string",
      "sizeBytes": 0,
      "status": "string"
    }
  ],
  "meta": {
    "requestId": "string"
  }
}
{
  "error": {
    "code": "string",
    "details": [
      "string"
    ],
    "message": "string",
    "requestId": "string",
    "retryAfterSeconds": 0
  }
}
POST
/api/v1/servers/{id}/backups
AuthorizationBearer <token>

In: header

Path Parameters

id*string

Server id

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

curl -X POST "https://example.com/api/v1/servers/string/backups" \  -H "Content-Type: application/json" \  -d '{    "name": "string"  }'
{
  "data": {
    "adapter": "string",
    "completedAt": "2019-08-24T14:15:22Z",
    "createdAt": "2019-08-24T14:15:22Z",
    "description": "string",
    "id": "string",
    "name": "string",
    "sizeBytes": 0,
    "status": "string"
  },
  "meta": {
    "requestId": "string"
  }
}
{
  "error": {
    "code": "string",
    "details": [
      "string"
    ],
    "message": "string",
    "requestId": "string",
    "retryAfterSeconds": 0
  }
}
GET
/api/v1/servers/{id}/backups/{backupId}
AuthorizationBearer <token>

In: header

Path Parameters

id*string

Server id

backupId*string

Backup id

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/api/v1/servers/string/backups/string"
{
  "data": {
    "adapter": "string",
    "completedAt": "2019-08-24T14:15:22Z",
    "createdAt": "2019-08-24T14:15:22Z",
    "description": "string",
    "id": "string",
    "name": "string",
    "sizeBytes": 0,
    "status": "string"
  },
  "meta": {
    "requestId": "string"
  }
}
{
  "error": {
    "code": "string",
    "details": [
      "string"
    ],
    "message": "string",
    "requestId": "string",
    "retryAfterSeconds": 0
  }
}
{
  "error": {
    "code": "string",
    "details": [
      "string"
    ],
    "message": "string",
    "requestId": "string",
    "retryAfterSeconds": 0
  }
}
DELETE
/api/v1/servers/{id}/backups/{backupId}
AuthorizationBearer <token>

In: header

Path Parameters

id*string

Server id

backupId*string

Backup id

Response Body

application/json

application/json

application/json

curl -X DELETE "https://example.com/api/v1/servers/string/backups/string"
{
  "data": {
    "adapter": "string",
    "completedAt": "2019-08-24T14:15:22Z",
    "createdAt": "2019-08-24T14:15:22Z",
    "description": "string",
    "id": "string",
    "name": "string",
    "sizeBytes": 0,
    "status": "string"
  },
  "meta": {
    "requestId": "string"
  }
}
{
  "error": {
    "code": "string",
    "details": [
      "string"
    ],
    "message": "string",
    "requestId": "string",
    "retryAfterSeconds": 0
  }
}
{
  "error": {
    "code": "string",
    "details": [
      "string"
    ],
    "message": "string",
    "requestId": "string",
    "retryAfterSeconds": 0
  }
}
POST
/api/v1/servers/{id}/backups/{backupId}/download-url
AuthorizationBearer <token>

In: header

Path Parameters

id*string

Server id

backupId*string

Backup id

Response Body

application/json

application/json

curl -X POST "https://example.com/api/v1/servers/string/backups/string/download-url"
{
  "data": {
    "expiresAt": "2019-08-24T14:15:22Z",
    "url": "string"
  },
  "meta": {
    "requestId": "string"
  }
}
{
  "error": {
    "code": "string",
    "details": [
      "string"
    ],
    "message": "string",
    "requestId": "string",
    "retryAfterSeconds": 0
  }
}
POST
/api/v1/servers/{id}/backups/{backupId}/restore
AuthorizationBearer <token>

In: header

Path Parameters

id*string

Server id

backupId*string

Backup id

Response Body

application/json

application/json

application/json

curl -X POST "https://example.com/api/v1/servers/string/backups/string/restore"
{
  "data": {
    "adapter": "string",
    "completedAt": "2019-08-24T14:15:22Z",
    "createdAt": "2019-08-24T14:15:22Z",
    "description": "string",
    "id": "string",
    "name": "string",
    "sizeBytes": 0,
    "status": "string"
  },
  "meta": {
    "requestId": "string"
  }
}
{
  "error": {
    "code": "string",
    "details": [
      "string"
    ],
    "message": "string",
    "requestId": "string",
    "retryAfterSeconds": 0
  }
}
{
  "error": {
    "code": "string",
    "details": [
      "string"
    ],
    "message": "string",
    "requestId": "string",
    "retryAfterSeconds": 0
  }
}

On this page