SharePoint Online

Provides integration with SharePoint Online to view, create, update, or delete list items as well as file download capabilities. Supports OAuth authentication.

Revision History

1.0.0.1 Initial Release
1.2.0.1 Added support for file downloads.
2.0.0.0 Breaking change: Added OAuth support and reworked data structure.

See Upgrading Nodes for instructions on how to safely upgrade connections.

Properties

Connection

Type: Connection Input

TenantId
Type: String
The Entra ID (formerly Azure AD Tenant ID) of the organization.

ClientId
Type: String
The Application (client) ID of the registered Azure AD app.

ClientSecret
Type: String
The client secret generated in Azure AD for the application.

UserEmail
Type: String
The email address of the user initiating the connection.

Scope
Type: String
The list of space-delimited OAuth scopes required for authentication.
Required scopes: Sites.ReadWrite.All User.Read offline_access

AccessToken
Type: String
A short-lived credential issued by the authorization server that grants the client application permission to access specific resources on behalf of a user.

RefreshToken
Type: String
A long-lived credential used to obtain a new access token without requiring the user to re-authenticate.

Action

Type: List Input
Provides the action to perform against the List.

ViewList - Retrieves the content of the specified list from Name as a JSON document.
CreateList - Creates an empty list in the root SharePoint directory.
The name of the list will be set to the Name value.
The columns can be specified as follows in the Content.

{
    "Columns": [
        "FirstName",
        "LastName",
        "Reference",
        "ContactNumber"
    ]
}

UpsertList - Adds items to the list specified in Name.
ListRequest needs to be specified in the following manner.
If an id column is provided it will overwrite the item at that position.
Note: Do not provide an id if the field does not exist.

{
    "List": [
        {
            "FirstName": "John",
            "LastName": "Doe",
            "Reference": "Ref001",
            "ContactNumber": "1234567890",
            "id": "1"
        },
        {
            "FirstName": "Jane",
            "LastName": "Smith",
            "Reference": "Ref002",
            "ContactNumber": "0987654321"
        },
        {
            "FirstName": "Alex",
            "LastName": "Taylor",
            "Reference": "Ref003",
            "ContactNumber": "5551234567"
        }
    ]
}

DeleteList - Deletes the list specified in Name.
DownloadFileAsBinary - Downloads the file specified in Name as binary
DownloadFileAsText - Downloads the file specified in Name as text
DeleteFile - Delete the file file specified in Name

Name

Type: String Input
Provides the name of the list or file.

ListRequest

Type: Json Input
When Action is UpsertList, provide a JSON representation of the new items to insert into the list.

ListFilter

Type: String Input
When Action is ViewList, will filter list items. Indexing must be active for any columns used for filtering or ordering.
fields/FirstName eq 'Jane' and fields/LastName eq 'Smith'
SharePoint Filters

Response

Type: Json Output
When Action is ViewList, returns JSON representation of the list.
When Action is DownloadFileAsBinary or DownloadFileAsText, returns the contents of the specified file.

Remarks

Configuring the Node

To configure the SharePoint connector, you will need to register an application in your Entra (Azure AD) tenant.

  1. Get your Tenant ID

    • Log in to Azure Portal
    • Navigate to Microsoft Entra ID
    • Copy the Directory (tenant) ID for Tenant ID and Application (client) ID for Client ID from the Overview page.
  2. Register an Application

    • In Microsoft Entra ID, go to App registrations
    • Click New registration
    • Provide a name and set the redirect URIs to:
      • https://app.flowgear.net/r/auth
      • https://appnext.flowgear.net/r/auth
      • https://appnew.flowgear.net/r/auth
    • Set platform to Web
    • Click Register
  3. Configure API Permissions

    • After registration, go to API Permissions > Add a permission
    • Choose Microsoft Graph > Delegated permissions
    • The required scopes are:
      • User.Read
      • Sites.ReadWrite.All
      • offline_access
  4. Generate a Client Secret

    • Go to Certificates & secrets
    • Click New client secret, set an expiry, and copy the secret value.
  5. Populate Flowgear Node Properties

    • Use the Tenant ID, Client ID, and Client Secret in the corresponding fields.
    • Set the Scope field as:
      Sites.ReadWrite.All User.Read offline_access
    • Save the connection.
    • Use the Connect your account button to be redirected to the microsoft authorization page.
    • Once the connection is authorized by the user, AccessToken and RefreshToken will be automatically populated.