Versions Compared

Key

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

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

  • Credentials
  • Connector
  • Connection
  • Seed

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


Panel

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

Create Credentials


FieldRequiredDefaultMultipleNotesExample
typeYes-NoThe value must be "sharepoint-online"."sharepoint-online"
descriptionYes-NoShort description or name for the credential."SPO_Prod_Credentials"
throttlePolicyNo-NoThrottle policy ID that will affect all seeds that use this credential.

"4f07e6c5-d2e9-48d8-a55d-094917508c0f"

properties.useAzureAuthenticationYes-NoWhether credentials are Azure AD Application (true) credentials or User account credentials (false).

true

properties.tenantDomainYes-NoOnly required if useAzureAuthentication is true. Tenant domain the Azure AD Application is part of. "contoso.onmicrosoft.com"
properties.clientIdYes-NoOnly required if useAzureAuthentication is true. Azure AD Application ID."1a1a-2b2b2-2cc22-aaa456"
properties.certificatePathYes-NoOnly required if useAzureAuthentication is true. Path to the certificate file. This path has to be accesible accessible by all worker nodes that will use these credentials."${dist.data.dir}/${app.name}/certificates/certificate.cer"
properties.privateKeyPathYes-NoOnly required if useAzureAuthentication is true.  Path to the certificate private key file.  This This path has to be accesible accessible by all worker nodes that will use these credentials."${dist.data.dir}/${app.name}/keys/key.key"
properties.username Yes-NoOnly required if useAzureAuthentication is false. Username for the crawl account when using user/password credentials."[email protected]"
properties.passwordYes-NoOnly 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"

Example

Code Block
themeRDark
titlePOST aspire/_api/credentials
{
    "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"
    }
}

Update Credentials


FieldRequiredDefaultMultipleNotesExample
idYes-NoId ID of the credential to update"d42e1872-02c8-4a90-a714-44f15577389a"
typeYes-NoThe value must be "sharepoint-online"."sharepoint-online"
descriptionNo-NoShort description or name for the credential."SPO_Prod_Credentials"
throttlePolicyNo-NoThrottle policy ID that will affect all seeds that use this credential.

"4f07e6c5-d2e9-48d8-a55d-094917508c0f"

properties.useAzureAuthenticationNo-NoWhether credentials are Azure AD Application (true) credentials or User account credentials (false).

true

properties.tenantDomainNo-NoOnly required if useAzureAuthentication is true. Tenant domain the Azure AD Application is part of. "contoso.onmicrosoft.com"
properties.clientIdNo-NoOnly required if useAzureAuthentication is true. Azure AD Application ID."1a1a-2b2b2-2cc22-aaa456"
properties.certificatePathNo-NoOnly required if useAzureAuthentication is true. Path to the certificate file. This path has to be accesible accessible by all worker nodes that will use these credentials."${dist.data.dir}/${app.name}/certificates/certificate.cer"
properties.privateKeyPathNo-NoOnly required if useAzureAuthentication is true.  Path to the certificate private key file.  This This path has to be accesible accessible by all worker nodes that will use these credentials."${dist.data.dir}/${app.name}/keys/key.key"
properties.usernameNo-NoOnly required if useAzureAuthentication is false. Username for the crawl account when using user/password credentials."aspire_crawl_account@contoso.onmicrosoft.com"
properties.passwordNo-NoOnly 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"


Example

Code Block
themeRDark
titlePUT /aspire/_api/credentials/d42e1872-02c8-4a90-a714-44f15577389a
{
    "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"
    }
}

Create Connector


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

Update Connector


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

Create Connection


Example

Code Block
themeRDark
titlePOST /aspire/_api/connections
{
    "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
    }
}

Update Connection

Example

Code Block
themeRDark
titlePUT /aspire/_api/connections/89d6632a-a296-426c-adb0-d442adcab4b0
{
	"id": "89d6632a-a296-426c-adb0-d442adcab4b0",
    "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
    }
}

Create Seed

Example

Code Block
themeRDark
titlePOST /aspire/_api/seeds
 {
            "seed": "/sites/DemoSite",
            "type": "sharepoint-online",
            "description": "sp_seed_api_test",
            "connector": "a3e9e1aa-a0dd-4d12-ae2c-9085e6832f80",
            "connection": "883f7dbe-d965-46ae-92d4-518757788b17",
            "workflows": [],
            "tags": [],
            "properties": {
                "seed": "/sites/DemoSite"
            }
}

Update Seed

Example

Code Block
titlePUT /aspire/_api/seeds/dc2a920a-33fd-4c4f-be17-cc53c5238cbe
 {
            "id": "dc2a920a-33fd-4c4f-be17-cc53c5238cbe",
            "seed": "/sites/DemoSite",
            "type": "sharepoint-online",
            "description": "sp_seed_api_test_updated",
            "connector": "a3e9e1aa-a0dd-4d12-ae2c-9085e6832f80",
            "connection": "883f7dbe-d965-46ae-92d4-518757788b17",
            "workflows": [],
            "tags": [],
            "properties": {
                "seed": "/sites/DemoSite"
            }
}