Copying Version of OneDrive Document

You can copy a specific version of a backed-up OneDrive document to another location in Microsoft OneDrive.

Request

POST https://<hostname>:4443/v6/RestoreSessions/{restoreSessionId}/Organization/OneDrives/{oneDriveId}/Documents/{documentId}/Versions/{versionId}/copyTo

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 OneDrives.

documentId

string

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

versionId

integer

Specifies the identification number of the OneDrive document version. For more information on how to get this parameter, see Getting All Versions of OneDrive Document.

Request Body

To copy a specific version of a backed-up OneDrive document to another location, the request body must contain the following properties:

Property

Type

Description

userName

string

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

Example: "userName": "admin@abcsupport.onmicrosoft.com".

userPassword

string

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

Example: "userPassword": "paSSw0rd".

oneDrive

oneDrive

Specifies the target destination for the copied OneDrive document.

folder

string

Specifies the target folder for the copied OneDrive document.

documentVersion

string

Specifies what version of the OneDrive documents will be copied. The following values are available:

  • All
  • Last

documentLastVersionAction

string

Specifies the action that will be performed with the last version of the copied OneDrive documents on the destination server. The following values are available:

  • Overwrite
  • Merge

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.

officeRegion

string

Specifies the region of the target Microsoft 365 organization. The following values are available:

  • Worldwide
  • USGovernment
  • Germany
  • China
  • USDefence

organizationName

string

Specifies the name of the target Microsoft 365 organization.

For example:

Request Body:

{

 "onedrive": {

   ...

 },

 "folder": "Folder",

 "documentVersion": "All",

 "documentLastVersionAction": "Overwrite",

 "userName": "administrator",

 "userPassword": "paSSw0rd",

 "officeRegion": "Worldwide",

 "organizationName": "abc.onmicrosoft.com"

}

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 information about operation results. The response body contains the following properties:

Property

Type

Description

totalItemsCount

integer

Specifies the total number of items in the backup.

restoredItemsCount

integer

Specifies the number of items restored from the backup.

failedItemsCount

integer

Specifies the number of items for which the restore operation failed.

skippedItemsByErrorCount

integer

Specifies the number of items that were skipped during the restore operation because of errors.

skippedItemsByNoChangesCount

integer

Specifies the number of items that were not changed or missing in the original location. Such items are skipped during the restore operation.

failedRestrictionsCount

integer

Specifies the number of items for which restore of permissions failed during the restore operation.

restoreIssues

Array of string values

Description of issues that occurred during the restore operation.

Example

The example shows how to copy a specific version of the specified OneDrive document.

Request:

POST https://abc.tech.local:4443/v6/RestoreSessions/4c49bac1-a871-4413-bc97-ad280a3718cb/Organization/OneDrives/9c4a2afc-5e57-4dfa-a7e2-59e092691772ef4221af-9351-41ec-9128-534cf34db1a5/Documents/dbeb32bf-1ca6-448d-9158-3a19581eb7ab/Versions/3/copyTo

 

Request Header:

Authorization: Bearer <Access-Token>

 

Request Body:

{

 "onedrive": {

   "id": "1d3740ca-bd0e-4656-88ed-2e35ce10e1deef4221af-9351-41ec-9128-534cf34db1a5",

   "name": "Administrator",

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

 },

 "folder": "newFolder",

 "documentVersion": "All",

 "documentLastVersionAction": "Overwrite",

 "userName": "administrator@abc.onmicrosoft.com",

 "userPassword": "paSSw0rd",

 "officeRegion": "Worldwide",

 "organizationName": "abc.onmicrosoft.com"

}

 

Response:

200 OK

 

Response Body:

{

 "totalItemsCount": 1,

 "restoredItemsCount": 1,

 "failedItemsCount": 0,

 "skippedItemsByErrorCount": 0,

 "skippedItemsByNoChangesCount": 0,

 "failedRestrictionsCount": 0,

 "restoreIssues": []

}