A question we hear from clients: “The data is already in SharePoint… can it automatically show up on the map?”
The GIS team has been working on a new solution to help answer that, and we’re excited to share one of our latest internal projects: a workflow that connects SharePoint Lists directly into ArcGIS Online through a fully automated sync process.
What we built
We developed an automated pipeline that keeps a SharePoint List and an ArcGIS Online hosted Feature Layer in sync… on a schedule, with built-in reporting.
Instead of exporting spreadsheets, emailing updates, or manually editing layers, this system keeps GIS data current behind the scenes.
Why this matters
Some of our clients already live in SharePoint and Teams for day-to-day operations. In a lot of cases, the “system” they have is simply a spreadsheet or list of records — with no spatial component built in.
They may know:
-
an address
-
a city
-
a parcel ID
-
a project status
…but not necessarily how that information connects to a map.
Our main goals were simple:
-
Allow clients to manage records in a platform they already use
-
Keep GIS layers updated automatically with minimal intervention
-
Support easy collaboration between project teams and GIS staff
-
Create a repeatable workflow that scales across projects
-
Support the conversion of client-provided location information into reliable spatial data within the limits of geocoding accuracy
By automating the connection between SharePoint and ArcGIS Online this workflow helps turn everyday operational data into GIS-ready, mapped information.
This approach bridges the gap between client-friendly data entry tools and the spatial deliverables we provide as a consulting engineering firm.
The solution at a glance
Here’s what the workflow does each run:
Securely reads SharePoint List items through Microsoft Graph (Azure authentication)
-
Matches records using a unique ID to avoid duplicates
-
Adds new features and updates changed records in ArcGIS Online
-
Optionally geocodes addresses for new entries so they land correctly on the map
-
Produces:
-
a concise **JSON summary** (adds/updates)
-
a full log file for troubleshooting
-
-
Runs automatically every week using GitHub Actions
-
Sends an email report each run so we know everything is operating smoothly
What we like about this approach
-
Scheduled automation means data stays fresh without anyone needing to press a button
-
Email summaries provide quick confirmation that the sync ran successfully – or not!
-
Secure credential storage through GitHub Secrets keeps everything protected
-
Client-friendly editing because SharePoint becomes the data entry interface — not GIS
Ultimately, this is a lightweight way to support GIS deliverables while meeting clients where they already work.
Repository + team capability
As part of this effort, we also set up a GIS Team GitHub account so we can expand this pattern into future solutions and client workflows.
This repository is designed as a reusable foundation for:
-
SharePoint → AGOL synchronization
-
scheduled GIS quality checks
-
automated reporting and monitoring
-
scalable GIS data pipelines
Repository Homepage
Below is a snapshot of the repository landing page showing the overview and workflow structure:

This project is a good example of the kind of work we’re trying to do more of as a GIS team: making it easier for clients to keep their data updated using tools they already work in, while we make sure the GIS layers stay current and useful.
If you’re working on a project where data is living in SharePoint (or could be), feel free to reach out — we’d be happy to talk about whether a setup like this could help.


