Uploading large files to SharePoint from a Dataverse form
Knowledge article · 26 Jul 2026
- Source
- GitHub · README
- Status
- Published
Content
A Custom API asks Microsoft Graph for a resumable upload session and the browser uploads the file in chunks, bypassing Dataverse limits.
Why not upload through Dataverse
Sending the file to Dataverse so a plugin can forward it to SharePoint runs into request-size limits, and Graph’s simple-upload endpoint is even smaller.
The three-step flow
- The PCF control calls a Custom API. Its plugin finds or creates the record’s
sharepointdocumentlocation(the same one the standard Documents tab uses) and asks Graph for a resumable upload session. - The browser uploads the file in chunks straight to the
uploadUrlreturned by Graph. That URL already carries a short-lived token, which is what Microsoft recommends for web clients. - A second Custom API writes the URL onto the column server-side, and the control re-reads the value instead of trusting its own response.
Details that make the difference
- Everything ships in a single solution: control, Custom APIs, plugin and environment variables.
- “Unlink” also goes through the server, so the stored value is always the source of truth.
General
- Published
- 26 Jul 2026
- Source
- GitHub · README
- Related project
- SharePoint Document Uploader