SharePoint
The Carbon Connect enabledIntegrations
value for SharePoint is SHAREPOINT
.
Authorization Type
Carbon uses OAuth 2.0 to connect to SharePoint.
Authorization Flow
Enter your Sharepoint tenant
and site name
. For example, if the SharePoint site URL is https://jasoncarbon.sharepoint.com/sites/carbon-dev
, jasoncarbon
is the tenant and carbon-dev
is the site name.
Log into your Microsoft SharePoint account.
Click the “Confirm” button to grant us permission to access SharePoint.
Once clicking “Confirm”, you will be taken through a flow to grant permissions.
Click the “Select Files from SharePoint” button to open up the SharePoint file selector.
Click “Select” after selecting files to grant Carbon access to files.
You’ll see a screen confirming that your files have been added.
Configuration
Custom OAuth Credentials
Setting up the OAuth App
-
Create or log into your Microsoft Azure Account.
-
Under
Azure Services
, selectApp Registration
->New registration
.
- Select
Accounts in any organizational directory (Any Microsoft Entra ID tenant - Multitenant) and personal Microsoft accounts (e.g. Skype, Xbox)
as theSupported account types
.
- Add https://api.carbon.ai/integrations/onedrive and https://api.carbon.ai/integrations/sharepoint to
Redirect URI
and selectWeb
under theSelect a platform
dropdown. You can also opt to use a custom CNAME record pointing to https://api.carbon.ai. The domain paths must still be/integrations/onedrive
and/integrations/sharepoint
.
- Under
Manage
->API permissions
add the permissionsFiles.Read.All
,offline_access
,openid
, andUser.Read
.
- Under
Client credentials
, clickAdd a certificate or secret
->New Client Secret
. Then copy the client secret’sValue
and share it with us via Slack.
- Navigate to the
Overview
tab then copy theApplication (client) ID
and share it with us via Slack.
- Customize your app branding under
Manage
->Branding & properties
.
Setting up the File Picker UI
- Under
Azure Services
, selectApp Registration
->New registration
.
- Select
Accounts in any organizational directory (Any Microsoft Entra ID tenant - Multitenant) and personal Microsoft accounts (e.g. Skype, Xbox)
as theSupported account types
.
- Under the
Authentication
tab, selectAdd a Platform
->Single Page Application
.
- For the
Redirect URI
of theSingle Page Application
, you can use https://api.carbon.ai/static/loading.html or add a custom CNAME record pointing to https://api.carbon.ai. The domain path must still be/static/loading.html
.
- Under the
Authentciation
’sImplicit grant and hybrid flows
section, checkAccess tokens (used for implicit flows)
andID tokens (used for implicit and hybrid flows)
.
- Under
Manage
->API permissions
add the permissionsFiles.Read.All
,Sites.Read.All
,User.Read
,AllSites.Read
, andMyFiles.Read
.
- Under
Client credentials
, clickAdd a certificate or secret
->New Client Secret
. Then copy the client secret’sValue
and share it with us via Slack.
- Navigate to the
Overview
tab then copy theApplication (client) ID
and share it with us via Slack.
Functionality
Carbon allows users to upload supported image, audio, video, and text files from SharePoint.
Synchronization
Syncs are triggered when end-users select files to upload via the SharePoint file selector UI. When a user selects a folder to be synced, we auto-sync all files added to the folder as well.
You can also use the resync_file
API endpoint to programmatically resync specific SharePoint files. To delete SharePoint files from Carbon, you can use the delete_files
endpoint directly.
To sync SharePoint files on a 24-hour schedule (more frequent schedules available upon request), you can use the /update_users
endpoint. This endpoint allows organizations to customize syncing settings according to their requirements, with the option to enable syncing for all data sources using the string ‘ALL’. It’s important to note that each request supports up to 100 customer IDs.
Here’s an example illustrating how to automatically enable syncing for updated SharePoint content for specified users:
{
"customer_ids": ["team@carbon.ai", "sam@openai.com"],
"auto_sync_enabled_sources": ["SHAREPOINT"]
}