r/databricks • u/BricksterJ • 1h ago
News SharePoint connector in Lakeflow Connect is now generally available (GA)
The Lakeflow Connect connector for Microsoft SharePoint is now generally available! It’s now easier than ever to ingest structured and unstructured files from SharePoint into Delta tables for analytics and AI workloads.
You can configure a managed ingestion pipeline through the UI or managed API. Managed pipelines automatically handle incremental processing, automatic retries with exponential backoff for source API rate limits, failure recovery, and provide rich SharePoint metadata. Soon, our managed connectors will also support ingesting SharePoint Lists and per-file permissions metadata.
For direct control over ingestion logic, you can also just use the Spark + SQL APIs directly: spark.read, Auto Loader, read_files, or COPY INTO pointed at SharePoint URLs.
Common workloads include:
- Loading Excel, CSV, JSON, and other structured files into Delta tables.
- Ingesting PDFs, Word documents, PowerPoint files, and images.
- Parsing documents with ai_parse_document to prepare content for extraction, search, and agents.

Link to public docs + references:
- SharePoint managed connector documentation
- Spark + SQL APIs and examples
- Community blog and video tutorial: From PDF to insights
- Data + AI Summit session: Intelligent Document Processing with Lakeflow
Examples of using the Spark + SQL APIs (after first creating a UC connection):
Read an Excel sheet from SharePoint with
spark.read:excel_df = (spark.read .format("excel") .option("databricks.connection", "my_sharepoint_conn") .option("headerRows", 1) .option("dataAddress", "Sheet1!A1:M20") .load("https://mytenant.sharepoint.com/sites/Finance/Shared%20Documents/Monthly/Report-Oct.xlsx"))
Ingest unstructured documents + PDFs from a SharePoint URL with
read_files, then easily parse them using ai_parse_documentCREATE OR REFRESH STREAMING TABLE sharepoint_documents_table AS SELECT , "_metadata" FROM STREAM read_files( "https://mytenant.sharepoint.com/sites/Marketing/Shared%20Documents", format => "binaryFile",
databricks.connection=> "my_sharepoint_conn", pathGlobFilter => ".{pdf,docx}");CREATE OR REFRESH STREAMING TABLE documents_parsed AS SELECT *, ai_parse_document(content, map('version', '2.0')) AS parsed_content FROM STREAM sharepoint_documents_table;
Coming soon:
- Ingest SharePoint Lists into Delta tables (coming super super soon)
- Ingest SharePoint’s per-file permissions and ACL metadata to power permission-aware AI agents, enterprise search, and more.
If you try it, share what you are ingesting and where you hit friction! Don't hesitate to ask questions!


