Introduction
Connect SharePoint sites, web pages and news items so their content becomes retrievable knowledge in Docebo.
This connector syncs content on sites and web pages as well as news items stored from selected SharePoint sites into Docebo Knowledge, so this content becomes searchable and usable by AI assistants and agents. It only covers site pages, lists, or other site content. We have a dedicated connector for SharePoint files.
1. Basic information
What content gets synced
| Content type | Status | Note |
|---|---|---|
| Sites | Synced | |
| Web pages | Synced | |
| News and announcements | Synced | |
| Files in document libraries | Not synced | Covered by SharePoint files connector |
What content gets extracted
| Content | Status |
|---|---|
| Site title and body text | Extracted |
| Lists and items within | Extracted |
| News and announcement texts | Extracted |
| Site name, URL and hierarchy (metadata) | Extracted |
2. Prerequisites in the source system
Required role
You need one of these Microsoft Entra ID (Azure AD) roles to complete setup:
- Global Administrator, or
- Application Administrator or Cloud Application Administrator, combined with a role that can grant admin consent (e.g. Privileged Role Administrator)
You also need Site Owner or SharePoint Administrator access on every site you want to sync.
Required settings
Conditional access policies must not block the app's service principal from reaching Microsoft Graph.
3. Preparation in the source system
Create the app registration
Sign in to the Azure portal, go to Microsoft Entra ID → App registrations → New registration. Name the app (for example, "Docebo Knowledge connector"), keep Supported account types set to single tenant, and set the Redirect URI now — choose Web and enter the callback URL. Doing this at registration saves you a step later. The URL always follows this pattern: https://[YOUR-DOCEBO-PLATFORM-URL]/knowledge/v1/integrations/connections/callback — for example, https://demo.docebosaas.com/knowledge/v1/integrations/connections/callback. Select Register.
Register an application, with the redirect URI already entered.
Assign API permissions
Open the app → API permissions → Add a permission, and add the permissions below from both Microsoft Graph and SharePoint. Once they're all added, select Grant admin consent to approve them in one go.
Microsoft Graph
| Permission | Type | Description |
|---|---|---|
| Group.Read.All | Application | Read all groups |
| GroupMember.Read.All | Application | Read all group memberships |
| Sites.Read.All | Application | Read items in all site collections |
| User.Read.All | Application | Read all users' full profiles |
SharePoint
| Permission | Type | Description |
|---|---|---|
| Sites.Read.All | Application | Read items in all site collections |
Add a client secret
Go to Certificates & secrets → New client secret. Give it a description and an expiry, then select Add. Once it's created, copy the value shown in the Value column — not the Secret ID column, which looks similar but won't work for authentication. You won't be able to see the value again once you leave this page.
Client secrets expire on the schedule you set here. If a secret expires and isn't replaced beforehand, the SharePoint connection stops working — set a reminder before the expiry date.
Add a client secret, with a description and expiry set.
Add a certificate
Direct SharePoint API access needs a certificate as well as a secret.
We recommend you use the built-in functionality to have the certificate and private key created for you by clicking the Generate certificate button.
This creates sharepoint-cert.pem (the certificate) and automatically fills out the Certificate Thumbprint and Private key fields for you. You only need to add the certificate to your app registration under Certificates & secrets → Certificates → Upload certificate, and upload sharepoint-cert.pem.
Certificates tab showing the uploaded certificate and its thumbprint.
Alternatively, you can generate a self-signed certificate and private key with OpenSSL:
openssl req -x509 -newkey rsa:2048 -keyout sharepoint-key.pem -out sharepoint-cert.pem -days 180 -nodes -subj "/CN=my-custom-cn"
cat sharepoint-key.pem | pbcopy
This also generates the private key and the certificate, but you must make sure to then copy the private key manually into the field, and copy the Thumbprint after you uploaded the certificate to your app registration to also enter it in the respective field.
4. Required actions in Docebo
| Information to enter | Where to find it | Note |
|---|---|---|
| Directory (tenant) ID | Azure app registration → Overview | |
| SharePoint site URL | Your SharePoint site address, without the https:// prefix or a trailing slash — e.g. yourcompany.sharepoint.com | |
| Client ID | Azure app registration → Overview | |
| Client secret | Azure app registration → Certificates & secrets → Client secrets — copy the Value column, not the Secret ID, at creation time | |
| Certificate thumbprint | Azure app registration → Certificates & secrets → Certificates, after uploading your certificate | If you use our built-in option to generate the certificate, these fields are filled out automatically for you |
| Private key | The private key file you generated alongside your certificate — keep it somewhere safe, Azure doesn't store or display it again | If you use our built-in option to generate the certificate, these fields are filled out automatically for you |
Authorizing the connector
- Go to Add-ons and integrations → Knowledge Connectors → Create → SharePoint - Sites. This menu is only visible to Superadmins.
- Enter the Directory (tenant) ID and your SharePoint site URL — without the https:// prefix or a trailing slash.
- Enter the Client ID, Client secret, Certificate thumbprint, and Private key from your Azure app, then select Connect.
- Grant consent in the Microsoft pop-up.
- On the scope screen, select which sites you want to make available to add to Knowledge collections later, then save your selection.