This is an archive version of the document. To get the most up-to-date information, see the current version.

Sending, Saving, Copying and Restoring OneDrive Items

You can send, save, copy and restore backed-up OneDrive items of the specified OneDrive.

Request

POST https://<hostname>:4443/v5/RestoreSessions/{restoreSessionId}/Organization/OneDrives/{oneDriveId}/action

Request Headers

The request header must contain an authorization token of the current session.

Request Parameters

The following parameters must be specified in the URL of the request:

Parameter

Type

Description

restoreSessionId

string

Specifies the identification number of the restore session. For more information on how to get this parameter, see Getting Restore Sessions.

oneDriveId

string

Specifies the identification number of OneDrive. For more information on how to get this parameter, see Getting OneDrive Items.

Request Body

Restore to Original Location

To restore backed-up OneDrive data to the same production server, the request body must contain the restoretoOriginallocation action properties:

Property

Type

Description

userName

string

Specifies the user name that you want to use for authenticating with the organization.

userPassword

string

Specifies the password of the user account that you want to use for authenticating with the organization.

documentVersion

documentVersion

Specifies, which of the following versions of the OneDrive document will be restored:

  • all
  • last

documentAction

documentAction

Specifies, which one of the following actions will be performed in case the restore destination contains the restored document:

  • overwrite
  • keep

userCode

string

Specifies the authentication code. For more information on how to get a device code, see Getting Device Code.

This property is required if you want to use a device code for data restore.

applicationId

string

An identification number of the Azure AD application that you want to use for a restore.

applicationCertificate

base64

Specifies the SSL certificate configured for the Azure AD application that you want to use for data restore.

You must provide the certificate as a Base64 string. For more information on how to obtain a Base64 string, see Converting Certificate to Base64 String.

applicationCertificatePassword

string

A password for the SSL certificate being used.

Converting Certificate to Base64 String

If you want to use a certificate to access an Azure AD application, you must provide the certificate as a Base64 string. To obtain a Base64 string, perform the following steps:

  1. Get the certificate content from a PFX file.
  2. Convert the certificate to a Base64 string.

To do this, you can use the following PowerShell cmdlets:

$pfx_cert = get-content '<path_to_cert>' -Encoding Byte

[System.Convert]::ToBase64String($pfx_cert) | Out-File '<path_to_file>'

where:

For example:

$pfx_cert = get-content 'C:\cert.pfx' -Encoding Byte

[System.Convert]::ToBase64String($pfx_cert) | Out-File 'C:\base64.txt'

Request Example 1

The following example shows how to use a user name and password for a restore.

Request Body:

{

 "restoretoOriginallocation" :

 {

  "username" : "admin",

  "userpassword" : "12345678",

  "documentVersion" : "last",

  "documentAction" : "keep"

 }

}

Request Example 2

The following example shows how to use a device code for a restore.

Request Body:

{

"restoretoOriginallocation":

 {

    "userCode": "C6A9DB737",

    "documentVersion" : "last",

    "documentAction" : "keep"

 }

}

Request Example 3

The following example shows how to use a certificate for a restore.

Request Body:

{

"restoretoOriginallocation":

 {

     "applicationId" : <app_id>,

     "applicationCertificate": "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",

   "applicationCertificatePassword": "xxx",

   "documentVersion" : "last",

   "documentAction" : "keep"

 }

}

Send As Email Attachment

To send backed-up OneDrive data from a defined email address to a selected email, the request body must contain the sendTo action properties:

Property

Type

Description

from

string

Specifies the email address from which the attachments will be sent.

to

string

Specifies the email address to which the attachments will be sent.

subject

string

Specifies the subject of the email message used for sending the attachments.

text

string

Specifies the body of the email message used for sending the attachments.

For example:

Request Body:

{

 "sendTo":

 {

  "from": "j_smith@bestsupport.onmicrosoft.com",

  "to": "r.clark@bestsupport.onmicrosoft.com",

  "subject": "Support Ticket",

  "text": "Please, find attached the files you requested"

 }

}

Sending, Saving, Copying and Restoring OneDrive Items Note

To be able to send item attachments you must specify the Veeam Explorer for Microsoft OneDrive for Business email settings by sending PUT HTTPS request to the /VEODEmailSettings URL. For more information, see (PUT) /VEODEmailSettings.

Copy to Different Location

To copy backed-up OneDrive data to a different production server, the request body must contain the copyTo action properties:

Property

Type

Description

userName

string

Specifies the user name that you want to use for authenticating with the organization.

userPassword

string

Specifies the password of the user account that you want to use for authenticating with the organization.

oneDrive

oneDrive

Specifies the target OneDrive copy destination.

folder

folder

Specifies the target OneDrive folder copy destination.

changedItems

boolean

If set to true, indicates that all versions of OneDrive items will be copied.

deletedItems

boolean

If set to true, indicates that deleted OneDrive items will be copied.

restorePermissions

boolean

If set to true, indicates that the OneDrive items will be copied with all permissions.

sendSharedLinksNotification

boolean

If set to true, indicates that shared links notifications will be sent.

documentVersion

documentVersion

Specifies, which of the following versions of the OneDrive document will be copied:

  • all
  • last

documentLastVersionAction

documentLastVersionAction

Specifies, which one of the following actions will be performed with the last version of the copied OneDrive document on the production server:

  • overwrite
  • merge

For example:

Request Body:

{

 "copyTo" :

 {

  "username" : "admin",

  "userpassword" : "12345678",

  "documentVersion" : "last",

  "documentLastVersionAction" : "merge",

  "folder" : "newFolder",

   "oneDrive" :

  ..

   ,

  "changedItems" : true,

  "deletedItems" : true,

  "restorePermissions" : true

 }

}

Save

Sending, Saving, Copying and Restoring OneDrive Items Note

OneDrive items are always saved in a ZIP archive.

To save backed-up OneDrive data, the request body must contain the save action:

Request Body:

{

 "save": null

}

The request command will archive the document and place the ZIP archive to a temporary folder on the Veeam Backup for Microsoft Office 365 server. After that, the archive will be transferred as application/octet-stream media to the client. To download, read or perform other actions with the octet-stream, use features of programming languages.

Sending, Saving, Copying and Restoring OneDrive Items Tip

You can use Swagger UI to download the document from the stream by clicking Download action link in the response body. For more information, see Evaluation in Swagger UI.

Response

The server returns the following response to the client.

Response Codes

A successfully completed operation returns a response code 200 OK.

Response Headers

The response to this request contains the following headers. The response may also include additional standard HTTPS headers.

Header

Description

Content-length

The length of the response body.

Content-type

The media type and syntax of the response body message for the requests with the export and save actions: application/octet-stream.

The media type and syntax of the response body message for the requests with the restore and send actions: null.

Response Body

In the response body, the server returns the following data:

The response body for the restore operation has the following properties:

Property

Type

Description

restoreIssues

Array of string values

Description of issues that occurred during the restore operation.

Examples

Example 1

The following request restores backed-up items of the specified OneDrive.

Request:

POST https://<hostname>:4443/v5/RestoreSessions/61954db6-7278-4d26-86f7-888bda5a4ec4/Organization/OneDrives/724011c3-a540-4684-b24f-3e2ab4ef6380df26ea7d-6468-4846-bdf5-4e88d871ed11/action

 

Request Header:

Authorization: Bearer <Access-Token>

 

Request Body:

{

 "restoretoOriginalLocation" :

 {

  "username" : "admin",

  "userpassword" : "12345678",

  "documentVersion" : "last",

  "documentAction" : "keep"

 }

}

 

Response:

200 OK

 

Response Body:

{

"restoreIssues": []

}

Example 2

The following request copies backed-up items of the specified OneDrive.

Request:

POST https://<hostname>:4443/v5/RestoreSessions/61954db6-7278-4d26-86f7-888bda5a4ec4/Organization/OneDrives/724011c3-a540-4684-b24f-3e2ab4ef6380df26ea7d-6468-4846-bdf5-4e88d871ed11/action

 

Request Header:

Authorization: Bearer <Access-Token>

 

Request Body:

{

 "copyTo" :

 {

  "username" : "admin",

  "userpassword" : "12345678",

  "documentVersion" : "last",

  "documentLastVersionAction" : "merge",

  "folder" : "newFolder",

  "oneDrive" :

   

   {

   "id": "724011c3-a540-4684-b24f-3e2ab4ef6380df26ea7d-6468-4846-bdf5-4e88d871ed11",

   "name": "CopyTo User",

   "url": "http://server/personal/orgUser",

   "_links": {

    "self": {

     "href": "https://support.north.local:4443/v5/organizations/a602e179-a821-4544-b653-f4aa03b39817/users/00000000-0000-0000-0000-000000000000d6d5c441-6c14-411a-9147-53f31a16d225AQUAAAAAAAUVAAAApgPzBIixQ2kafNW0dAQAAA==/onedrives/724011c3-a540-4684-b24f-3e2ab4ef6380df26ea7d-6468-4846-bdf5-4e88d871ed11"

    },

    "user": {

     "href": "https://support.north.local:4443/v5/organizations/a602e179-a821-4544-b653-f4aa03b39817/users/00000000-0000-0000-0000-000000000000d6d5c441-6c14-411a-9147-53f31a16d225AQUAAAAAAAUVAAAApgPzBIixQ2kafNW0dAQAAA=="

    }

   }

  }

 

  ,

  "changedItems" : true,

  "deletedItems" : true,

  "restorePermissions" : true

 }

}

 

Response:

200 OK

Example 3

The following request saves backed-up items of the specified OneDrive.

Request:

POST https://<hostname>:4443/v5/RestoreSessions/61954db6-7278-4d26-86f7-888bda5a4ec4/Organization/OneDrives/724011c3-a540-4684-b24f-3e2ab4ef6380df26ea7d-6468-4846-bdf5-4e88d871ed11/action

 

Request Header:

Authorization: Bearer <Access-Token>

 

Request Body:

{

 "save" : null

}

 

Response:

200 OK

Example 4

The following request sends backed-up items of the specified OneDrive through email.

Request:

POST https://<hostname>:4443/v5/RestoreSessions/61954db6-7278-4d26-86f7-888bda5a4ec4/Organization/OneDrives/724011c3-a540-4684-b24f-3e2ab4ef6380df26ea7d-6468-4846-bdf5-4e88d871ed11/action

 

Request Header:

Authorization: Bearer <Access-Token>

 

Request Body:

{

 "sendTo":

 {

  "from": "j_smith@bestsupport.onmicrosoft.com",

  "to": "r.clark@bestsupport.onmicrosoft.com",

  "subject": "Support Ticket",

  "text": "Please, find attached the files you requested"

 }

}

 

Response:

200 OK