SharePoint Files
The SharePoint Files connector lists, reads and writes files in one SharePoint document library through Microsoft Graph. It signs in with your own Microsoft Entra app registration, and you pick the site and library from lists.
When to use it
- The files are in a SharePoint document library that a team shares.
- Your tenant has many sites and libraries, and the connection must name one.
For a person's own files, use OneDrive.
What you need
- An app registration in the Microsoft Entra admin center, under Entra ID > App registrations, with a client secret and a Web redirect URI.
- The Microsoft Graph delegated permissions
offline_access,openid,profile,User.Read,Files.ReadWrite.AllandSites.Read.All. - A Microsoft account with access to the site and library.
Provider-side setup for this connector, including the app registration, the redirect URI and the permissions, is in the File hub setup guide. Connection basics and environments are on the Connections page.
Connect
The connection form lists its steps on the left. Open any step from that list. The Environments step holds the values that differ per environment.
Test connection is in the form footer. Beside it, Test against picks Base, the connection as saved, or an environment, whose values are applied first.
| Field | Step | What to enter |
|---|---|---|
| Client ID | Authentication | The application (client) ID. Required. |
| Redirect URI | Authentication | Filled in. Add it to the app registration as a Web redirect URI. Required. |
| Tenant ID | Authentication | Optional. Blank uses common, the multi-tenant endpoint. |
| Client Secret | Authentication | The client secret value. Required. |
| Connected Account, Display Name | Authentication | Filled in when you connect the Microsoft account. |
| Site ID | Location | Filled in by the site picker. Optional. |
| Document Library ID | Location | Filled in by the library picker. Required. |
| Default Folder Path | Location | Optional. Paths in actions resolve relative to it. |
| Notes | Options | Free text for your team. |
The Redirect URI is filled in for you. Copy it with the copy button and add it to the app registration exactly as shown. Use Edit beside the field only when the app is registered against a different address for DataLug.
Choosing the site and library
On the Location step:
- Press Load sites and choose a site.
- Press Load libraries and choose a library.
- Optional: browse into a folder and press Use this folder, or press Use library root.
The chosen IDs appear in the boxes below the pickers, where you can read or correct them. Choosing a different site clears the library and the default folder. The pickers need a connected account.
On the Environments step, Tenant ID, Site ID, Document Library ID and Default Folder Path are typed or pasted per environment.
Supported operations
| Node | Operations |
|---|---|
| Source | List Files, Get File |
| Load | Upload File(s), Write Rows To File(s), Move/Rename, Delete, Create Folder |
Reading files. Recursive and Files only shape a listing.
Include (glob), Exclude (glob) and Regex (advanced) choose files by
name. Parse content into rows turns each CSV file into rows, with CSV has
header row and CSV Delimiter settings. Format Auto (by extension)
reads a .csv file as CSV.
Writing rows to files. Under Format & Behavior:
- Format is CSV, JSON or XLSX. Compress (.gz) compresses the file.
- File Name Template accepts the tokens
{runId},{YYYYMMDD},{HHmmss},{chunkIndex},{partIndex},{groupKey}and{field:MyField}. Append timestamp adds{YYYYMMDD}_{HHmmss}_{SSS}when the template has none. - Split is Single file, One per row or Group by. Group by takes one or more field names, separated by commas.
- Overwrite decides what happens when the file exists: Overwrite, Skip or Fail.
Choosing a path
The remote path field in Configure Action has a Browse button that lists the folder.
- Open enters a folder, and Up goes back. Use picks a file, and Use this folder picks the folder you are in.
- An operation that names a folder shows folders only.
- The field stays editable. Type a wildcard such as
/inbound/*.csv. - Browsing reads only. Nothing is written.
Limits
- One connection reaches one document library.
- Microsoft Graph applies its own throttling limits per app and per tenant.
The API limits card on the connection form is collapsed by default. Every field on it is optional, and a blank field uses the default shown below it.
| Setting | What it does | Default |
|---|---|---|
| Requests per period, Period | Paces outgoing calls. Set both to throttle. | No throttle, or the rate shown on the card. |
| Page size | Rows per request. A larger value is reduced to the provider's maximum. | The maximum shown on the card, or set by the provider. |
| Max attempts | Tries per call, including the first. | 3 |
| Cool-off (ms) | The first wait after a 429. Later waits grow from it. | 500 ms |
| Requests at once | Requests open at the same time within one run. | No limit |
A Retry-After header from the provider overrides the cool-off. The pace
applies per connection and is shared by every run on it. See
Run performance.
DataLug retries a call that the provider refused with 429, and a call that
could not connect. A read is also retried after a 408, a 5xx or a dropped
connection. A write is retried only after a 429 or a failed connection.
A Retry-After delay of up to one minute is honoured. A longer one fails the
call with the 429.
Troubleshooting
- Test connection passes and a Source lists nothing. Check the path. A folder that does not exist lists as empty, not as an error. Pick the folder with Browse.
- A file is written but does not appear where you expect. Check the target path on the Load node. A path that resolves to another folder still succeeds.
- Large files. Staging space is limited per run, and the run log names any node that spilled to disk. See Files and staging.
- A connection that worked stops working. The stored authorisation was withdrawn or has expired. Open the connection and connect the account again. Editing the other fields does not restore it.
- Save is disabled and the form names a document library. A library is required. Press Load libraries on the Location step and choose one.
- Load sites is unavailable. The account is not connected. Connect it on the Authentication step first.
- Sign-in fails with AADSTS50011. The redirect URI on the app registration does not match. Copy the Redirect URI again and add it exactly.
Related
- OneDrive, which uses the same kind of app registration.
- Source node and Load node.
- Azure Blob Storage.