Microsoft One Drive for Business GCC High (REST API)
Create a Microsoft One Drive for Business GCCH connection using the DryvIQ REST API.
Table of Contents
Transferring Content to SharePoint Online Shared Document Library
- PlatformType in Connection: office365
- URI Pattern in Connection: https://company.sharepoint.com/[SiteNameWhereLibraryExists]/
- Target/Path in Job: Connection Config: /[LibraryName]
- This configuration will transfer data to the destination at the library specified. Connection will take it down to site-specific level.
- Path in the “Job:Connection:Target” should be the Document Library.
- Use the Library name found in the URI. (You do not have to escape/encode spaces. Enter a space if that exists in the library name.)
If a path is not specified, files will transfer to the default library for the site specified.
Creating a Connection
You will need to add the relevant connection information to the GET request. The following GET request will return a Microsoft login link. Use this link to complete logging into your account and grant DryvIQ access to it.
GET {{url}}v1/connections/platforms/onedrive-business-graph-gcch/new?domain={{YOUR URL}}&name={{YOUR CONNECTION NAME}}&client_id={{YOUR CLIENT ID}}&client_secret={{YOUR CLIENT SECRET}}
Creating a Job Using Impersonation
As a OneDrive for Business administrator, you can impersonate a user using the path that relates to their content. Then, use their information in the impersonate_as block. (See Impersonation for more information on how to impersonate users.)
POST {{url}}v1/jobs
{
"name":"Basic job with impersonation",
"kind": "transfer",
"transfer": {
"audit_level": "trace",
"transfer_type": "copy",
"source": {
"connection": { "id": "{{source_connectionID}}" },
"target": {
"path": "/sourcePath"
}
},
"destination": {
"connection": { "id": "{{ODFBGCCH_destination_connectionID}}" },
"impersonate_as": {
"id": "00",
"name": "Joe Smith",
"email": "jsmith@company.onmicrosoft.com"
},
"target": {
"path": "/destinationPath"
}
},
"simulation_mode": false
},
"schedule": {
"mode": "manual"
},
"stop_policy": {
"on_success": 5,
"on_failure": 5,
"on_execute": 25
},
"category": {
"name": "category name"
}
}