diff --git a/docs/backup-protocol.rst b/docs/backup-protocol.rst index 2d78f375..ec594c7c 100644 --- a/docs/backup-protocol.rst +++ b/docs/backup-protocol.rst @@ -1,5 +1,42 @@ Backup Protocol =============== -.. todo:: add introduction to HTTP2 based backup protocols +Proxmox Backup Server uses a REST based API. While the management +interface use normal HTTP, the actual backup and restore interface use +HTTP/2 for improved performance. Both HTTP and HTTP/2 are well known +standards, so the following section assumes that you are familiar on +how to use them. + +Backup Protocol API +------------------- + +To start a new backup, the API call ``GET /api2/json/backup`` needs to +be upgraded to a HTTP/2 connection using +``proxmox-backup-protocol-v1`` as protocol name:: + + GET /api2/json/backup HTTP/1.1 + UPGRADE: proxmox-backup-protocol-v1 + +The server replies with HTTP 101 Switching Protocol status code, +and you can then issue REST command on that updated HTTP/2 connection. + +Please use the `API Viewer `_ for details about +available REST commands. + + +Restore/Reader Protocol API +--------------------------- + +To start a new reader, the API call ``GET /api2/json/reader`` needs to +be upgraded to a HTTP/2 connection using +``proxmox-backup-reader-protocol-v1`` as protocol name:: + + GET /api2/json/reader HTTP/1.1 + UPGRADE: proxmox-backup-reader-protocol-v1 + +The server replies with HTTP 101 Switching Protocol status code, +and you can then issue REST command on that updated HTTP/2 connection. + +Please use the `API Viewer `_ for details about +available REST commands.