The SharePoint Online Connector can be configured using the Rest API. It requires the following entities to be created:
Bellow are the examples of how to create the Credentials, the Connection and the Seed. For the Connector please check this page.
Panel | ||||||
---|---|---|---|---|---|---|
|
Field |
---|
Required | Default | Multiple | Notes | Example |
---|---|---|---|---|
type |
Yes | - | No | The value must be "sharepoint-online". | "sharepoint-online" |
description |
Yes | - | No | Short description or name for the credential. | "SPO_Prod_Credentials" |
throttlePolicy |
No | - | No | Throttle policy ID that will affect all seeds that use this credential. | "4f07e6c5-d2e9-48d8-a55d-094917508c0f" |
properties.useAzureAuthentication |
Yes | - | No | Whether credentials are Azure AD Application (true) credentials or User account credentials (false). | true |
properties.tenantDomain |
Yes | - | No | Only required if useAzureAuthentication is true. Tenant domain the Azure AD Application is part of. | "contoso.onmicrosoft.com" |
properties.clientId |
Yes | - | No | Only required if useAzureAuthentication is true. Azure AD Application ID. | "1a1a-2b2b2-2cc22-aaa456" |
properties.certificatePath |
Yes | - | No | Only required if useAzureAuthentication is true. Path to the certificate file. This path has to be accesible by all worker nodes that will use these credentials. | "${dist.data.dir}/${app.name}/certificates/certificate.cer" |
properties.privateKeyPath |
Yes | - | No | Only required if useAzureAuthentication is true. Path to the certificate private key file. This path has to be accesible by all worker nodes that will use these credentials. | "${dist.data.dir}/${app.name}/keys/key.key" |
properties.username |
Yes | - | No | Only required if useAzureAuthentication is false. Username for the crawl account when using user/password credentials. | "[email protected]" |
properties.password |
Yes | - | No | Only required if useAzureAuthentication is false. Password for the crawl account when using user/password credentials. This field can also be sent as an encrypted string. Check the encryption API for more information on how to encrypt. | "password" |
Code Block | ||||
---|---|---|---|---|
| ||||
{ "type": "sharepoint-online", "description": "SPO_Cred", "properties": { "useAzureAuthentication": true, "tenantDomain": "cao365.onmicrosoft.com", "clientId": "12345-abcd", "certificatePath": "${dist.data.dir}/${app.name}/certificates/certificate.cer", "privateKeyPath": "${dist.data.dir}/${app.name}/keys/key.key" } } |
Field |
---|
Required | Default | Multiple | Notes | Example |
---|---|---|---|---|
id |
Yes | - | No | Id of the credential to update | "d42e1872-02c8-4a90-a714-44f15577389a" |
type |
Yes | - | No | The value must be "sharepoint-online". | "sharepoint-online" |
description |
No | - | No | Short description or name for the credential. | "SPO_Prod_Credentials" |
throttlePolicy |
No | - | No | Throttle policy ID that will affect all seeds that use this credential. | "4f07e6c5-d2e9-48d8-a55d-094917508c0f" |
properties.useAzureAuthentication |
No | - | No | Whether credentials are Azure AD Application (true) credentials or User account credentials (false). | true |
properties.tenantDomain |
No | - | No | Only required if useAzureAuthentication is true. Tenant domain the Azure AD Application is part of. | "contoso.onmicrosoft.com" |
properties.clientId |
No | - | No | Only required if useAzureAuthentication is true. Azure AD Application ID. | "1a1a-2b2b2-2cc22-aaa456" |
properties.certificatePath |
No | - | No | Only required if useAzureAuthentication is true. Path to the certificate file. This path has to be accesible by all worker nodes that will use these credentials. | "${dist.data.dir}/${app.name}/certificates/certificate.cer" |
properties.privateKeyPath |
No | - | No | Only required if useAzureAuthentication is true. Path to the certificate private key file. This path has to be accesible by all worker nodes that will use these credentials. | "${dist.data.dir}/${app.name}/keys/key.key" |
properties.username |
No | - | No | Only required if useAzureAuthentication is false. Username for the crawl account when using user/password credentials. | "aspire_crawl_account@contoso.onmicrosoft.com" |
properties.password |
No | - | No | Only required if useAzureAuthentication is false. Password for the crawl account when using user/password credentials. This field can also be sent as an encrypted string. Check the encryption API for more information on how to encrypt. | "password" |
Code Block | ||||
---|---|---|---|---|
| ||||
{ "id": "d42e1872-02c8-4a90-a714-44f15577389a", "type": "sharepoint-online", "description": "SPO_Cred_new", "throttlePolicy": "4f07e6c5-d2e9-48d8-a55d-094917508c0f", "properties": { "useAzureAuthentication": false, "username": "aspire_crawl_account", "password": "encrypted:F8EC95B8007E645EA15E2D5F717EB370DAA4274D73D767DA0AF0F3AB94B8430C81AF774D2A272833C3AA77C4776B75B6" } } |
Code Block | ||||
---|---|---|---|---|
| ||||
{ "type": "sharepoint-online", "description": "SPO_Connection", "credential": "d42e1872-02c8-4a90-a714-44f15577389a", "throttlePolicy": "4f07e6c5-d2e9-48d8-a55d-094917508c0f", "routingPolicies": ["5c7274ef-429b-46ef-8f73-f010e479a467", "9dee4fba-14f2-4afc-a74d-297bcbbd359a"], "properties": { "serverUrl": "https://contoso.sharepoint.com", "indexContainers": false, "scanRecursively": true, "useSnapshots": false, "stopCrawlOnScannerError": true, "filterNoCrawl": false, "crawlAttachments": true, "scanExcludedItems": false, "downloadLargeFiles": true, "dataSizeThreshold": "100mb", "includes": [ ".*\\.pdf", ".*\\.pptx" ], "excludes": ".*\\.xml", "groupPrefixSeparator": "|", "lowercaseGE": false, "userGroupPageSize": 1000, "useAzureGroups": true, "azureADSeed": "f5587cee-9116-4011-b3a9-6b235b333a1b", "useProxy": true, "proxyHost": "proxy.com", "proxyPort": 8080, "useProxyAuthentication": true, "proxyDomain": "DIR", "proxyUser": "proxy_user", "proxyPassword": "thePassword", "requestProperty": [ { "name": "user-agent", "value": "agent" } ], "retryCount": 2, "retrySleep": "500ms", "socketTimeout": "60s", "connectTimeout": "60s", "connectionRequestTimeout": "60s", "idleConnectionTimeout": "5m", "maxConnections": 100, "maxConnectionsPerRoute": 10 } } |
...