Create a provider to consume data from Google Sheets inside Insights for ArcGIS
Insights for ArcGIS can connect to any data source using the provider patter. This project includes an example Koop provider compatiable with Insights for ArcGIS. Javascript is used to create an express web server, which includes web service that knows how to communicate with Google Sheets.
git clone https://github.com/ArcGIS/google-sheets-provider.git
cd google-sheets-provider
npm install
export GOOGLESHEETS_AUTH=YOUR_KEY
npm start
After npm start
you should see something like this:
> node server.js
info: registered output: Geoservices 1.1.1
No root directory was specified, defaulting to: /Users/foobar/koop/providers/google-sheets
info: registered filesystem: localfs 1.1.1
info: registered provider: googlesheets 1.0.0
Koop Trimet Provider listening on 3000
For more docs visit: https://koopjs.github.io/docs/specs/provider/
To find providers visit: https://www.npmjs.com/search?q=koop+provider
Try it out in your browswer: http://localhost:3000/googlesheets/1JlPaiuIHXmkfpLBaQdoRixPSasjX5NlDte70pyFT9yI/Park%20Cleanup!A1:H/FeatureServer/0/query
Or on the command line: curl --silent http://localhost:3000/googlesheets/1JlPaiuIHXmkfpLBaQdoRixPSasjX5NlDte70pyFT9yI/Park%20Cleanup!A1:H/FeatureServer/0/query?returnCountOnly=true
Press control + c to exit
You have 3 deployment options.
Option 1 - This is a good option if you do not have Portal for ArcGIS staged in a place for development.
google-sheets-provider
run now
in your terminalOption 2 - Arrage to have NodeJS installed on your 10.5+ Portal for ArcGIS machine
Option 3 - Access a web access machine and deploy the project files
Once the Google Sheets provider is running, read below on how to bring this content into portal.
My Content -> Add Item -> From the web
Type: ArcGIS Server Web Service
Url: https://googlesheets-provider-hkrquwqwvp.now.sh/googlesheets/1JlPaiuIHXmkfpLBaQdoRixPSasjX5NlDte70pyFT9yI/Park%20Cleanup!A1:H/FeatureServer/0
Title: Google Sheets
Tags: Park Cleanup, Insights, Provider
New Workbook
Google Sheets
and selectIf you do not have the flexibility to deploy the project to a development environment, feel free to try out the sample below.