(POST) /vmReplicaPoints/{ID}/mounts/{ID}/{filepath}?action=restore
Restores a VM replica guest OS file or folder. The file or folder can be restored to its original location on the VM or can be downloaded to the Veeam backup server.
|
For file-level restore, you must use restore points created by a replication job with enabled guest processing settings. 1-Click VM Restore without specifying VM guest OS credentials in the replication job settings is not supported in Veeam Backup Enterprise Manager RESTful API. |
Request
To restore a VM guest OS file or folder, you need to send the POST HTTP request to the /vmReplicaPoints/{ID}/mounts/{ID}/{filepath}?action=restore URL.
HTTP Request
POST http://<Enterprise-Manager>:9399/api/vmReplicaPoints/{ID}/mounts/{ID}/{filepath}?action=restore |
Request Headers
The request contains the following headers:
Header | Required | Description |
X-RestSvcSessionId | True | The request requires authorization. In the header, the client must send a session ID copied from the server reply to the request creating a new logon session. To learn more, see Authentication and Security. |
Request Body
In the request body, the client must send the parameters for the restore process. The body of the request must conform to the XML Schema Definition of Veeam Backup Enterprise Manager RESTful API.
The request body must contain either of the following elements:
Element | Type | Description | Modifiable | Min/Max Occurrence |
ToOriginalLocation | — | Use this element if you want to restore the file to the original location. | No | — |
ForDirectDownload | — | Use this element if you want to download the restored file. | No | — |
Query Parameters
None.
Response
The server returns the following response to the client.
Response Codes
A successfully completed operation returns response code 202 Accepted.
Response Headers
The response to this request contains the following headers. The response may also include additional standard HTTP headers.
Header | Description |
Content-length | The length of the response body. |
Content-type | The media type and syntax of the request body message: application/xml. |
Response Body
In the response body, Veeam Backup Enterprise Manager returns an ID of the task that has been created to perform the requested action, and the task state. You can check the operation results by sending the GET HTTP request to the URL of the task resource.
Additionally, Veeam Backup Enterprise Manager returns a link to the task deletion operation. You can send the GET HTTP request to the URL in the link to stop the task execution.
|
If you have selected to download a restored file or folder, the response body of the task resource will also contain links to files that can be downloaded and saved. |
Example
The example below lets the client restore the C:\Documentation 2014\Invoices\bank_details.txt file from the VM guest OS and download it after restore:
Request: POST http://localhost:9399/api/vmReplicaPoints/623cbbec-c8ff-4cf4-96be-d433f3b775c7/mounts/1/E:/Documentation%202014/Invoices/bank_details.txt?action=restore
Request Header: X-RestSvcSessionId NDRjZmJkYmUtNWE5NS00MTU2LTg4NjctOTFmMDY5YjdjMmNj
Request Body: <?xml version="1.0" encoding="utf-8"?>
Response: 202 Accepted
Response Body: <Task xmlns="http://www.veeam.com/ent/v1.0" Type="Task" Href="http://localhost:9399/api/tasks/task-1"> |
To trace the status of the operation, send the GET HTTP request to the URL of the received task resource:
Request: GET http://localhost:9399/api/tasks/task-1
Request Header: X-RestSvcSessionId NDRjZmJkYmUtNWE5NS00MTU2LTg4NjctOTFmMDY5YjdjMmNj
Response: 200 Success
Response Body: <Task xmlns="http://www.veeam.com/ent/v1.0" Type="Task" Href="http://localhost:9399/api/tasks/task-1"> |
To download the restored file, find the necessary link component in the resource representation of the task and send the GET HTTP request to the http://<Enterprise-Manager>:9399/api/vmReplicaPoints/{ID}/mounts/{ID}/{filepath}?action=download URL. The file will be downloaded to the default downloads folder on the Veeam backup server.
Request: GET http://localhost:9399/api/vmReplicaPoints/623cbbec-c8ff-4cf4-96be-d433f3b775c7/mounts/1/e:/documentation%202014/invoices/bank_details.txt?action=download
Request Header: X-RestSvcSessionId NDRjZmJkYmUtNWE5NS00MTU2LTg4NjctOTFmMDY5YjdjMmNj
Response: 200 Success
Response Body: None |
|
If you work with Veeam Backup Enterprise Manager RESTful API using a web application as a client (for example, Veeam Backup Enterprise Manager Web Client), a web browser may propose to select whether to open the file, download it to the default downloads folder or download it to the specified folder. |