Skip to main content

Intro

Microsoft SharePoint Online enables an organization to easily create and manage custom team-focused and project-focused sites for collaboration. You can use Domo’s Microsoft SharePoint Online REST Connector to get data from an organization-wide intranet portal on different aspects based on sites within Domo. To do this, you must first create an app in Microsoft Azure. For more information about Microsoft SharePoint Online, visit their website at https://products.office.com/en-us/sharepoint/sharepoint-online-collaboration-software. You create a Microsoft SharePoint Online connection in the Data Center. This topic discusses the fields and menus that are specific to the Microsoft SharePoint Online REST connector user interface. General information for adding DataSets, setting update schedules, and editing DataSet information is discussed in Adding a DataSet Using a Connector.

Prerequisites

To connect to Microsoft SharePoint Online in order to retrieve information, you must have the following:

Creating an Azure App for Enterprise OAuth

To create a Microsoft Azure app, follow the below steps, or see our YouTube video.
  1. Log into https://portal.azure.com.
  2. Click on App registrations.
    Capture1.PNG
  3. Click New registration.
  4. Enter the application name and select the supported account type. Enter the Redirect URI for Web as https://oauth.domo.com/api/data/v1/oauth/providers/microsoft-sharepoint/exchange.
  5. Change the default tenant selection from single tenant to multi tenant. This is a requirement for the connector.
    REgister.png
  6. Click Register.
  7. Now, click API Permissions.
    API_permission.png
  8. Click +Add Permissions button.
    Capture8.PNG
  9. Select Microsoft Graph > Delegated Permissions.
  10. Select the permissions as required.
  11. After adding the permissions, all configured permissions will be listed as below.
Configure.png

To obtain the Sharepoint CLIENT ID:

  1. Go to https://portal.azure.com.
  2. Select Microsoft Entra ID > App registrations.
  3. Find and click on your web app.
  4. The “application” ID is your CLIENT ID.

To obtain the Sharepoint CLIENT SECRET:

  1. Go to https://portal.azure.com.
  2. Select Microsoft Entra ID > App registrations.
  3. Find and click on your web app.
  4. Open Certificates and secrets.
  5. Click +New Value.
  6. Provide the value description and the expiry period for your secret. Click Add.
  7. Your new value will appear. Copy the Value field and paste it in your Domo connector Value field.
    Secret.png

Connecting to Microsoft SharePoint Online

This section enumerates the options in the Credentials and Details panes in the Microsoft SharePoint Online REST Connector page. The components of the other panes in this page, Scheduling and Name & Describe Your DataSet, are universal across most connector types and are discussed in greater length in Adding a DataSet Using a Connector. Note: Use Microsoft Account that has The Cloud Application Administrator role in admin.microsoft.com

Credentials Pane

This pane contains fields for entering credentials to connect to a Microsoft Dynamics CRM installation via Azure. The following table describes what is needed for each field:

Field

Description

CLIENT ID

Navigate to portal.azure.com > Azure Active directory > App registrations . Find and select the web app. The Application ID from the web app is the client id.

CLIENT SECRET

Navigate to portal.azure.com > Azure Active directory > App registrations . Find and select the web app. Go to settings > Keys and create the client secret.

Once you have entered valid credentials, you can use the same account any time you go to create a new Microsoft SharePoint Online REST DataSet. You can manage connector accounts in the Accounts tab in the Data Center. For more information about this tab, see Manage Connector/Adapter Accounts.

Details Pane

This pane contains menus in which you can select your Sharepoint report and configure various options.

Menu

Description

Report

Select your desired Sharepoint Online report.

Report Name Description

All Sites

Fetches a list of all sites, subsites and groupsites.

Download Item Contents

Fetches the file content for the requested file.

Files

Fetches a list of files.

File Download

Downloads and parses the requested file.

File Permissions

Retrieves a list of permissions for all files in the selected drive.

Get Items

Fetches the items present in the root drive of the selected site.

Groups

Fetches a list of groups.

Group Members

Fetches the list of all members for all groups.

Group Members V2 (Group Filter Search)

Returns the list of all members based on the groups filtered.

Group Sites

Fetches a list of sites for the selected group.

List

Fetches the details for the specified list.

List Item Column Values

Fetches the details for the selected list-item.

List Item Detailed

Fetches the details for the selected list item.

List Items

Fetches the list-items for the selected list.

List Notebooks

Retrieves a list of notebook objects.

List Onenote sections

Retrieves a list of onenote Section objects from the specified notebook.

Root Sites

Fetches a list of sites present at the root.

SharePoint Activity User Detail

Fetches the details about the SharePoint activity by user.

SharePoint Activity File Counts

Fetches the number of unique, licensed users who interacted with files stored on SharePoint sites.

SharePoint Activity User Counts

Fetches the trend in the number of active users.

SharePoint Site Usage Detail

Fetches the details about SharePoint site usage.

SharePoint Site Usage File Counts

Fetches the total number of files across all sites and the number of active files.

SharePoint Site Usage Site Counts

Fetches the total number of files across all sites and the number of active files.

SharePoint Site Usage Storage

Fetches the trend of storage allocated and consumed during the reporting period.

Site Lists

Fetches all the lists for the selected site.

Sites Search

Retrieves the list of all sites matching the search query.

Site Subsites

Fetches a list of subsites for the selected site.

Users

Retrieves a list of user objects.

Users Drive

Retrieves the properties and relationships of a Drive resource.

Group ID

Select the group you want to use.

User Id

Select the user that you want to use.

Period Value

Select the period for which you want to fetch the data.

How would you like to select the data?

Select whether you want to select the data from a site, subsite, group sites, filtered site names, or enter the site ID.

Subsite Selection Criteria

Select whether you want to provide a subsite ID or a subsite name to select a subsite.

Site ID

Select the site you want to pull data from.

Subsite ID

Select the subsite you want to pull data from.

Group Site Id

Select the site that you want to use.

Site Id

Enter the site Id. You can retrieve the site ID from the All Sites report.

Search Query

Enter the search query to obtain the sites.

Enter Site Id

Enter the site Id. You can fetch from the ‘All Sites’ or ‘Site Search’ report.

List ID

Select the list you want to pull data from.

List Item Selection Criteria

Select whether you want to provide a list item ID or a list item name to select an item.

List Item ID

Enter the ID of the list item you want to retrieve information for.

Select List Item name

Select the list item name that you want to parse and import.

Drive ID

Select the drive you want to pull data from.

Groups Search Query

Enter the search query to obtain the sites. For example: displayName:Test

Select Groups

Select the groups that you want to use.

Transitive Members

Select this option to pull all the members of the group, including the transitive members.

Use Path Based Approach

Select this option to use a path-based approach to access the file permissions. If this option is not selected, the connector will use the file id based approach to access the file permissions.

File Selection Criteria

Select whether you would like to provide a file ID or a file name to select a file.

File ID

Enter the ID of the file you want to retrieve information for. You can generate a list of files by running the “Files” report.

File Relative Path

Enter the relative path of the folder from the selected drive (e.g. /MyFolder/MySubfolder). The default value is the root level.

Select File Search Property

This field Indicates how the connector should locate the file in SharePoint. Use Name if you anticipate that the internal Sharepoint id of the file will change. For example, if you delete the file and recreate with the same name regularly. Use ID if you don’t anticipate the internal SharePoint ID of the file will change. If you are not sure if the internal id will change or not, then select Name .

Select file name

Select the file name that you want to parse and import.

Relative Path

Enter the relative path of the folder from the selected drive. (e.g. /MyFolder/MySubfolder).

Select the fields to expand

Select whether you want to provide a site ID or filter the site names using a search query.

File Type

Select the file type for the data file you want to retrieve. To show file content as a binary column, select Other .

How would you like to choose your sheet?

Select whether you want to select your sheet by providing a partial or complete sheet name.

Sheet Name

Enter the name of the sheet you want to retrieve from the specified Excel spreadsheet. Be sure to check sheet names for accidental spaces.

Add Phonetic Words (Checkbox)

Select this checkbox if you want to add phonetic words to the data.

Enter your data tag

Enter the tag where the data is found in your XML text.

Do you require attributes in data?

Select Yes if you require attributes values as part of your data.

Enter fields to exclude

Provide a comma-separated list of fields to exclude from your XML data.

Enter Xpath expression

Enter your XPath query using standard XPath syntax as defined by the World Wide Web Consortium. ( https://www.w3.org/TR/2017/REC-xpath-31-20170321/ )

Header Start Row

Enter the header row number. If you do not enter a number, the first row is considered the header row.

Data Start Row

Enter the starting data row number. If you do not enter a number, the first row after the header row is considered the starting row.

Footer

Enter the number of rows at the end of the data set to skip. For example, to skip the last two rows, you would enter 2 .

Does Your JSON Text Require a Line Reader?

Select Yes if your JSON text includes multiple lines to read.

Enter your header tag

Enter the tag for the header in your JSON text.

Enter your data tag

Enter the tag for the data in your JSON text.

Enter fields to exclude

Provide a comma-separated list of fields to exclude from the JSON import.

Date Format

Select the date format that should be used when converting date columns. For Excel files, cell date format will have higher precedence.

Blank Header

In the Excel file, select the position of the blank header, specifically whether it appears at the beginning or the end.

Blank Header Count at Start

Enter the count of blank headers.

Blank Header Count at End

Enter the count of blank headers.

Use Provided File Encoding

If checked, select the accurate file encoding given below. If not checked, the connector will auto-detect file encoding.

File Encoding

Select file encoding. Defaults to UTF-8.

Delimiter

Select the desired delimiter for parsing your CSV file.

Custom Delimiter

Enter the desired custom delimiter character. Enter \t for tab or Unicode characters in \uxxxx form.

Quote Character

Select the desired quote character for parsing your CSV file.

Custom Quote Character

Enter the desired custom quote character. Enter \t for tab or Unicode characters in \uxxxx form.

Escape Character

Select the desired escape character for parsing your CSV file.

Custom Escape Character

Enter the desired custom escape character. Enter \t for tab or Unicode characters in \uxxxx form.

Decode Fields

Select this checkbox if you want to decode the fields coming from SharePoint (applies to column names only).

Display Comma Separated Array Values

Select this checkbox if you want to display the comma separated values for arrays in the response.

Other Panes

For information about the remaining sections of the connector interface, including how to configure scheduling, retry, and update options, see Adding a DataSet Using a Connector.

FAQs

You can disable the checkbox to remove the Phonetic words in the data (by default it’s true).
This connector uses version 1.0 of the Microsoft API: https://graph.microsoft.com/v1.0.
Report NameEndpoint URL(s)
All Sites/sites/root/sites/%s/sites/groups/%s/sites/root
Download Item Contents/sites/{siteId}/drive/items/{fileId}/content
Files/sites/{siteId}/drives/{driveId}/{path}/children
File Download/sites/%s/drives/%s/%s/content
File Permissions/sites/%s/drives/%s/%s/permissions
Get Items/sites/{siteId}/drive/root/children
Groups/groups
Group Members/groups/%s/%s
Group Members V2 (Group Filter Search)/groups/{id}/transitiveMembers

(or) /groups/{id}/members
Group Sites/groups/{groupId}/sites/root
List/sites/{siteId}/lists/listId?expand=columns,items(expand=fields)
List Item Column Values/sites/{siteId}/lists/{listId}/items/itemId?expand=fields
List Item Detailed/sites/{siteId}/lists/{listId}/items/{itemId}
List Items/sites/{siteId}/lists/{listId}/items?expand=fields
List Notebooks/users/{userId}/onenote/notebooks
List Onenote Sections/users/{userId}/onenote/sections
Root Sites/sites/root
SharePoint Activity User Detail/reports/getSharePointActivityUserDetail(period='period_value')
SharePoint Activity File Counts/reports/getSharePointActivityFileCounts(period='period_value')
SharePoint Activity User Counts/reports/getSharePointActivityUserCounts(period='period_value')
SharePoint Site Usage Detail/reports/getSharePointSiteUsageDetail(period='period_value')
SharePoint Site Usage File Counts/reports/getSharePointSiteUsageFileCounts(period='period_value')
SharePoint Site Usage Site Counts/reports/getSharePointSiteUsageSiteCounts(period='period_value')
SharePoint Site Usage Storage/reports/getSharePointSiteUsageStorage(period='period_value')
Sites Lists/sites/{siteId}/lists
Sites Search/sites
Sites Subsites/sites/{siteId}/sites
Users/users
Users Drive/users/{userId}/drive
You need the client id and client secret associated with your Microsoft account.
You need an installed Microsoft Azure app to get the client id and client secret.To obtain the client id:
  1. Visit the Microsoft Azure Portal and sign in using your Microsoft credentials.
  2. Select Azure Active Directory > App registrations.
  3. Find your app and click on it.
  4. Locate the “Application ID” from the web app. The Application ID is the client id.
To obtain the client secret:The client secret is generated when you create your Azure app. To generate a new client secret:
  1. Visit the Microsoft Azure Portal and sign in using your Microsoft credentials.
  2. Select Azure Active Directory > App registrations.
  3. Find your app and click on it.
  4. Open Settings > Keys.
  5. Create the client secret.
If the discovery encounters a timeout error, use the filter site name option to search the site instead of pulling all the sites.
Error resolution.png
As often as needed.
No.
Yes, you can activate the feature now by emailing featureswitch@domo.com to turn on private-embed-authorized domains.
You also need to whitelist SharePoint on the Embed Authorized Domains page of the security section in Admin.

Troubleshooting

  • Make sure your authentication remains valid.
  • Review the configuration to make sure that all required items have been selected.
  • Review the Connector history for error messages.
  • In rare cases, you may be requesting too much information and reaching API limitations or timeouts. If this is the case, you can review the history of the Connector run to see the error message and duration. If this is the case, you can reduce the number of accounts that are being pulled, choose a smaller number of metrics for the report that you are pulling, or reduce the timeframe that you are trying to pull.