Insights for ArcGIS – Get connected to any data source e.g. Google Sheets

The Insights team has been kicking the tires on an ambitious project to enable Insights to connect to any data source.  That’s right, I said any data source.

  • NoSQL data stores
  • Web services
  • RDMSs
  • Cloud drives

With several patterns under consideration, we want your feedback and encourage you to try the data provider pattern.  Since Insights for ArcGIS already works natively with Excel files, I’ve included step-by-step instructions showing how to connect to Google Sheets using the provider pattern.  As you might expect, data continues to live in Google Sheets, so you can continue taking advantage of Google’s capabilities, while gaining the ability to analyze and examine spatial and non-spatial data within Insights.

What makes this pattern special is that we are flipping the way we think about extensibility.  Instead of developers preparing a binary to drop into Insights (which is something we’re exploring), we want you to try an open project that we’ve been testing and is already in use by the ArcGIS Open Data team and based on an Esri maintained project called Koop. We really like this pattern because with just a little bit of JavaScript an organization can create a simple web service and connect to any data source.

Getting a load of new forms of data in interactive charts, maps, and models is truly a great experience.  All data provider developers need to know are how to:

  1. Fetch data from an API
  2. Format data as GeoJSON

The rest of the heavy lifting is taken care of by the provider framework.  While this pattern and project is still evolving, please feel free to use it with Insights for ArcGIS and give us your feedback.

Create a provider that connects to Google Sheets

This provider will connect you to environmental volunteer information contained in Google Sheets and then make that data available in Insights for ArcGIS.  The data can be reviewed here.

All of the step-by-step instructions with code and notes can be found in this GitHub project.  Additional information about creating a provider can be found here.  Once you’ve completed, you’ll see a complete transformation.

You’ll have started with this:

Google Sheets

The final product will be something like this:

Insights with Google Sheets

Now that you’ve seen one provider in action, with Google Sheets, let us know what other connections you’d like to see e.g. Microsoft Office 365, Salesforce etc.  We’d like to hear from you.

This entry was posted in App Developers, ArcGIS Enterprise, Developer, Open Data, Uncategorized, Web and tagged , , , . Bookmark the permalink.

Leave a Reply


  1. johnmdye says:

    This is pretty exciting. Can’t wait to give it a shot. Can you explain more about the other option of dropping a binary in as well?

    • Doug Carroll says:

      For the binary option, the design principle is that we want the experience to be as simple as possible. One idea we are considering is to make the workflow similar to how developers create SOEs or SOEs or extend GeoEvent Server.

      • johnmdye says:

        That’s a neat idea. We actually really like SOIs and SOEs where I am and we’ve worked with Esri to create a few, but we’ve run into the issue of Hosted Services not having access to ArcObjects. As a result, we can’t use SOIs to intercept calls to Hosted Services and Extensions cannot be executed against a Hosted Service. We don’t know of any plans that Esri has to create some sort of alternative SOI/SOE framework that would work with Hosted Services so I’d favor an implementation that was more along the lines of an extending insights with an SDK, similar to GeoEvent.

        • Doug Carroll says:

          This is well received and good feedback, as we want extensibility involving data sources to have a wide reach either by open project or a drop-in binary of some kind.