Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The OneDrive Box Connector can be configured using the Rest API. It requires the following entities to be created:

  • Credential
  • Connection
  • Connector
  • Seed

Below are the examples of how to create the Connection and the Seed. For the Connector, please refer to this page.

Easy Heading Free
navigationTitleOn this Page
wrapNavigationTexttrue
navigationExpandOptionexpand-all-by-default

Create Credential


onedriveonedrivedomain

Field

Required

Default

Multiple

NotesExample
typeYes-No

The value must be "

box".

"

box"

descriptionYes-NoName of the credential object.

"One DriveCredentialBox Credential"

propertiesYes-NoConfiguration object
credentialTypeYesbasic
Type of authentication, basic or jwt
ClientIdYes-NoTenant domainyourdomain.onmicrosoft.comBox App Client Id
ClientSecretappIDYes-NoAzure application ID registeredsampleapplicationidBox App Client Secret
useJWTYesfalseNoIndicates if we want to use JWT individual credentials
jwtconfigdirappSecretYes-NoAzure application secretxxxxxxxxxxxxxxxxxxxxxxxxxxNoPath of the JWT generated config file
publicKeyID Yes

PublicKey ID from JWT 
privateKey


PrivateKey
passphrase


Passphrase for the private key
enterpriseID


EnterpriseID of your Box AccountgraphURLYes-NoThe graph URLhttps://graph.microsoft.com/v1.0






Example

Code Block
themeRDark
titlePOST aspire/_api/credentials
{
    "type": "<Connector Type>",
    "description": "<Connector Name> Credential",
    "properties": {   
	 	"domain": "yourdomain.onmicrosoft.com"
        "appID": "sampleapplicationid",
        "appSecret": "xxxxxxxxxxxxxxxxxxxxxxxxxx",
        "graphURL": "https://graph.microsoft.com/v1.0"
     }
}

Update Credential


Field

Required

Default

Multiple

NotesExample
idYes-NoID of the credential to update."2f287669-d163-4e35-ad17-6bbfe9df3778"
descriptionYes-NoName of the credential object.

"OneDriveCredential"

propertiesYes-NoConfiguration object
domainYes-NoTenant domainyourdomain.onmicrosoft.com
appIDYes-NoAzure application ID registeredsampleapplicationid
appSecretYes-NoAzure application secretxxxxxxxxxxxxxxxxxxxxxxxxxx
graphURLYes-NoThe graph URLhttps://graph.microsoft.com/v1.0

Example 

Code Block
themeRDark
titlePUT aspire/_api/credentials/2a5ca234-e328-4d40-bb2a-2df3e550b065
{
    "id": "2a5ca234-e328-4d40-bb2a-2df3e550b065",
    "description": "<Connector Name> Credential",
    "properties": {   
		"domain": "yourdomain.onmicrosoft.com"
        "appID": "sampleapplicationid",
        "appSecret": "xxxxxxxxxxxxxxxxxxxxxxxxxx",
        "graphURL": "https://graph.microsoft.com/v1.0"     
	}
}

Create Connection


Field

Required

Default

Multiple

Notes

Example

typeYes-No

The value must be OneDrive

onedrive

descriptionYes-NoName of the connection object.

"MyOne DriveConnection"

credentialYes-NoID of the credential that applies to this connection object."d42e1872-02c8-4a90-a714-44f15577389a"
throttlePolicyNo-NoID of the throttle policy that applies to this connection object."f5587cee-9116-4011-b3a9-6b235b333a1b"
routingPoliciesNo[ ]YesThe IDs of the routing policies that this connection will use.["313de87c-3cb9-4fe0-a2cb-17f75ce7d0c7", "b4d2579f-1a0a-4a8b-9fd4-d42780003b36"]
propertiesYes-NoConfiguration object
indexContainersNoTRUENoSelect if containers are to be indexed. Clear to index files only.TRUE
scanRecursivelyNoTRUENoSelect if subfolders are to be scanned.TRUE
scanExcludedItemsNoFALSENoSelect so that the scanner will scan sub items of container items excluded by a patternFALSE
includesNo-YesList of regex URL patterns to include[{"include":".*tmp[^/]$"}]
includeNo-Noregex URL patterns to include".*tmp[^/]$"
excludesNo-YesList of regex URL patterns to exclude[{"include":".*tmp[^/]$"}]
excludeNo-Noregex URL patterns to exclude".*tmp[^/]$"

Example

Code Block
themeRDark
titlePOST aspire/_api/connections
{     
	"type": "onedrive",
    "credential": "d42e1872-02c8-4a90-a714-44f15577389a",
    "throttlePolicy": "",
    "routingPolicies": ["5c7274ef-429b-46ef-8f73-f010e479a467", "9dee4fba-14f2-4afc-a74d-297bcbbd359a"],
    "description": "<Connector Name> Test Connector",
    "properties": {
        "indexContainers": true,
        "scanRecursively": true,
        "scanExcludedItems": false,
        "includes": [
            {"include": ".*tmp[^/]$"}
        ],
        "excludes": [
            {"exclude": ".*tmp[^/]$"}
        ]
    } 
}

Update Connection


Field

Required

Default

Multiple

Notes

Example

idYes-NoID of the connection to update"89d6632a-a296-426c-adb0-d442adcab4b0",
descriptionNo-NoName of the connection object.

"MyConnection"

credentialYes-NoID of the credential that applies to this connection object."d42e1872-02c8-4a90-a714-44f15577389a"
throttlePolicyNo-NoID of the throttle policy that applies to this connection object."f5587cee-9116-4011-b3a9-6b235b333a1b"
routingPoliciesNo[ ]YesThe IDs of the routing policies that this connection will use.["313de87c-3cb9-4fe0-a2cb-17f75ce7d0c7", "b4d2579f-1a0a-4a8b-9fd4-d42780003b36"]
propertiesYes-NoConfiguration object
indexContainersNoTRUENoSelect if containers are to be indexed. Clear to index files only.TRUE
scanRecursivelyNoTRUENoSelect if subfolders are to be scanned.TRUE
scanExcludedItemsNoFALSENoSelect so that the scanner will scan sub items of container items excluded by a patternFALSE
includesNo-YesList of regex URL patterns to include[{"include":".*tmp[^/]$"}]
includeNo-Noregex URL patterns to include".*tmp[^/]$"
excludesNo-YesList of regex URL patterns to exclude[{"include":".*tmp[^/]$"}]
excludeNo-Noregex URL patterns to exclude".*tmp[^/]$"

Example

Code Block
themeRDark
{     
	"id": "89d6632a-a296-426c-adb0-d442adcab4b0",
    "type": "onedrive",
    "credential": "d42e1872-02c8-4a90-a714-44f15577389a",
    "throttlePolicy": "",
    "routingPolicies": ["5c7274ef-429b-46ef-8f73-f010e479a467", "9dee4fba-14f2-4afc-a74d-297bcbbd359a"],
    "description": "<Connector Name> Test Connector",
    "properties": {        
        "indexContainers": true,
        "scanRecursively": true,
        "scanExcludedItems": false,
        "includes": [
            {"include": ".*tmp[^/]$"}
        ],
        "excludes": [
            {"exclude": ".*tmp[^/]$"}
        ]    
    } 
}

Create Connector Instance


For the creation of the Connector object using the Rest API, please refer to this page.

Update Connector Instance


For the update of the Connector object using the Rest API, please refer to this page.

Create Seed


Field

Required

Default

Multiple

Notes

Example

seedYes-No<seed description>
typeYes-No

The value must be one-drive.

onedrive

descriptionYes-NoName of the seed object.

"My OneDrive Seed"

connectorYes-NoThe ID of the connector to be used with this seed. The connector type must match the seed type."82f7f0a4-8d28-47ce-8c9d-e3ca414b0d31"
connectionYes-NoThe ID of the connection to be used with this seed. The connection type must match the seed type."602d3700-28dd-4a6a-8b51-e4a663fe9ee6"
workflowsNo[ ]YesThe IDs of the workflows that will be executed for the documents crawled.["f8c414cb-1f5d-42ef-9cc9-5696c3f0bda4"]
throttlePolicyNo-NoID of the throttle policy that applies to this connection object."f5587cee-9116-4011-b3a9-6b235b333a1b"
routingPoliciesNo[ ]YesThe IDs of the routing policies that this seed will use.["313de87c-3cb9-4fe0-a2cb-17f75ce7d0c7", "b4d2579f-1a0a-4a8b-9fd4-d42780003b36"]
tagsNo[ ]YesThe tags of the seed. These can be used to filter the seed.["tag1", "tag2"]
propertiesYes-NoConfiguration object
seedYes-NoThis value must be onedrive_seed"onedrive_seed"
usersTypeYes"List"NoThe way to add the users to crawl ("List" or "File")"List"
usersNo-YesOnly required if usersType "List" is selected.  List of users[{"user": "user1"},{"user": "user2"}]
userNo-NoOnly required if usersType "List" is selected.User Principal Name"[email protected]"
usersFileNo-NoOnly required if usersType "File" is selected. The path to the names list file"config/userNames.txt"

Example 

Code Block
themeRDark
titlePOST aspire/_api/seeds
# LIST
{
    "type": "<Connector Type>",
    "seed": "directory",
    "connector": "82f7f0a4-8d28-47ce-8c9d-e3ca414b0d31",
    "description": "<connector>_Test_Seed",
    "throttlePolicy": "6b8b5f23-fc77-47a1-9b58-106577162e7b",
    "routingPolicies": ["313de87c-3cb9-4fe0-a2cb-17f75ce7d0c7", "b4d2579f-1a0a-4a8b-9fd4-d42780003b36"],
    "connection": "602d3700-28dd-4a6a-8b51-e4a663fe9ee6",
    "workflows": ["f8c414cb-1f5d-42ef-9cc9-5696c3f0bda4"],
    "tags": ["tag1", "tag2"],
    "properties": {         
		"seed": "onedrive_seed",     
		"usersType": "List",
	 	"users":[
			{"user": "user1"},
		 	{"user": "user2"}
		 ]     
	}
}

# FILE
{
    "type": "<Connector Type>",
    "seed": "directory",
    "connector": "82f7f0a4-8d28-47ce-8c9d-e3ca414b0d31",
    "description": "<connector>_Test_Seed",
    "throttlePolicy": "6b8b5f23-fc77-47a1-9b58-106577162e7b",
    "routingPolicies": ["313de87c-3cb9-4fe0-a2cb-17f75ce7d0c7", "b4d2579f-1a0a-4a8b-9fd4-d42780003b36"],
    "connection": "602d3700-28dd-4a6a-8b51-e4a663fe9ee6",
    "workflows": ["f8c414cb-1f5d-42ef-9cc9-5696c3f0bda4"],
    "tags": ["tag1", "tag2"],
    "properties": {         
		"seed": "onedrive_seed",     
		"usersType": "List",
 		"seed": "onedrive_seed",     
		"usersType": "File",
	 	"usersFile": "config/userNames.txt"     
	}
}

Update Seed


Field

Required

Default

Multiple

Notes

Example

idYes-NoID of the seed to update."2f287669-d163-4e35-ad17-6bbfe9df3778"
seedNo-No<seed description>
descriptionNo-NoName of the seed object.

"MyOneDriveSeed"

connectorNo-NoThe ID of the connector to be used with this seed. The connector type must match the seed type."82f7f0a4-8d28-47ce-8c9d-e3ca414b0d31"
connectionNo-NoThe ID of the connection to be used with this seed. The connection type must match the seed type."602d3700-28dd-4a6a-8b51-e4a663fe9ee6"
workflowsNo[ ]YesThe IDs of the workflows that will be executed for the documents crawled.["f8c414cb-1f5d-42ef-9cc9-5696c3f0bda4"]
workflows.addNo[ ]YesThe IDs of the workflows to add.["f8c414cb-1f5d-42ef-9cc9-5696c3f0bda4"]
workflows.removeNo[ ]YesThe IDs of the workflows to remove.["f8c414cb-1f5d-42ef-9cc9-5696c3f0bda4"]
throttlePolicyNo-NoID of the throttle policy that applies to this connection object."f5587cee-9116-4011-b3a9-6b235b333a1b"
routingPoliciesNo[ ]YesThe IDs of the routing policies that this seed will use.["313de87c-3cb9-4fe0-a2cb-17f75ce7d0c7", "b4d2579f-1a0a-4a8b-9fd4-d42780003b36"]
routingPolicies.addNo[ ]YesThe IDs of the routingPolicies to add.["b4d2579f-1a0a-4a8b-9fd4-d42780003b36"]
routingPolicies.removeNo[ ]YesThe IDs of the routingPolicies to remove.["313de87c-3cb9-4fe0-a2cb-17f75ce7d0c7"]
tagsNo[ ]YesThe tags of the seed. These can be used to filter the seed.["tag1", "tag3"]
tags.addNo[ ]YesThe tags to add["tag4"]
tags.removeNo[ ]YesThe tags to remove["tag2"]
propertiesYes-NoConfiguration object
seedYes-NoThis value must be onedrive_seed"onedrive_seed"
usersTypeYes"List"NoThe way to add the users to crawl ("List" or "File")"List"
usersNo-YesOnly required if usersType "List" is selected.  List of users[{"user": "user1"},{"user": "user2"}]
userNo-NoOnly required if usersType "List" is selected.User Principal Name"[email protected]"
usersFileNo-NoOnly required if usersType "File" is selected. The path to the names list file"config/userNames.txt"

Example 

Code Block
themeRDark
titlePUT aspire/_api/seeds/2f287669-d163-4e35-ad17-6bbfe9df3778
{
    "id": "2f287669-d163-4e35-ad17-6bbfe9df3778",
    "seed": "<seed example>",
    "connector": "82f7f0a4-8d28-47ce-8c9d-e3ca414b0d31",
    "description": "<connector>_Test_Seed",
    "throttlePolicy": "6b8b5f23-fc77-47a1-9b58-106577162e7b",
    "routingPolicies": ["313de87c-3cb9-4fe0-a2cb-17f75ce7d0c7", "b4d2579f-1a0a-4a8b-9fd4-d42780003b36"],
    "connection": "602d3700-28dd-4a6a-8b51-e4a663fe9ee6",
    "workflows": ["b255e950-1dac-46dc-8f86-1238b2fbdf27", "f8c414cb-1f5d-42ef-9cc9-5696c3f0bda4"],
    "tags": ["tag", "tag2"],
    "properties": {         
		"seed": "onedrive_seed",     
		"usersType": "List",
	 	"users":[
			{"user": "user1"},
		 	{"user": "user2"}
		 ]
	}
}

...