Skip to content

Commit 4a2e85c

Browse files
authored
GIS Cloud Connector (#1979)
* Open Sourcing Connector files * Address all comments by @v-EgorKozhadei
1 parent 30dfc48 commit 4a2e85c

File tree

4 files changed

+3024
-0
lines changed

4 files changed

+3024
-0
lines changed
Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
# GIS Cloud
2+
GIS Cloud is a SaaS platform that provides best in class web and mobile map rendering coupled with a powerful forms engine to facilitate all your collaborative mapping needs. The GIS Cloud Map Connector provides a subset of the extensive and powerful REST API that allows automations to drive most of the common use cases for a Map project. This connector will aloow you to list, update and interogate GIS Cloud Maps, Layers, Users and to also create Features and Files. With this subset a user can automate many data driven activities such as creating new features for inspection, creating reports, exporting data for dashboarding etc...
3+
4+
## Publisher: HandyGeo Services
5+
6+
## Prerequisites
7+
### You will need the following to proceed:
8+
9+
- A GIS Cloud user account with a Map Editor subscription
10+
- A GIS Cloud API key generated under the My Account menu
11+
- The Power platform CLI tools
12+
- A Microsoft Power Apps or Power Automate plan with custom connector feature
13+
14+
A full reference for the GIS Cloud REST API can be found at: https://docs.giscloud.com/rest
15+
16+
## Supported Operations
17+
### [ACTION]: Get Maps
18+
List accessable maps
19+
20+
### [ACTION]: Get Map
21+
Get specified map details
22+
23+
### [ACTION]: Delete Map
24+
Delete specified map project
25+
26+
### [ACTION]: Update Map
27+
Update specified map project
28+
29+
### [ACTION]: Delete Map Cache
30+
Clears the server cache of map tiles for a specified map
31+
32+
### [ACTION]: Render Map
33+
Renders an image of the map project
34+
35+
### [ACTION]: Get Layers
36+
List accessable layers
37+
38+
### [ACTION]: Get Layer
39+
Get specified layer details
40+
41+
### [ACTION]: Delete Layer
42+
Delete specified layer
43+
44+
### [ACTION]: Update Layer
45+
Update specified layer
46+
47+
### [ACTION]: Render Map
48+
Renders an image of the map layer
49+
50+
### [ACTION]: Get Layer Columns
51+
Describe the attributes and data types of a layer
52+
53+
### [ACTION]: Get Features
54+
List all features on a layer
55+
56+
### [ACTION]: Get Feature
57+
Get specified feature on a layer
58+
59+
### [ACTION]: Create Feature
60+
Create new feature on a specified layer
61+
62+
### [ACTION]: Delete Feature
63+
Delete specified feature on a layer
64+
65+
### [ACTION]: Update Feature
66+
Update specified feature on a layer
67+
68+
### [ACTION]: Download Media
69+
Get specified file from cloud storage
70+
71+
### [ACTION]: Upload Media
72+
Upload specified file to cloud storage
73+
74+
### [ACTION]: Delete Media
75+
Delete specified file from cloud storage
76+
77+
### [ACTION]: Get Current User
78+
Get current GIS Cloud user
79+
80+
### [ACTION]: Get User
81+
Get specified GIS Cloud user
82+
83+
## Obtaining Credentials
84+
The GIS Cloud REST API is secured via an API key. Most REST endpoints will not function without a valid API key.
85+
86+
To obtain a valid API key navigate to https://manager.giscloud.com and log in with your GIS Cloud account.
87+
88+
In the top right, click on your user name and select "My Account" from the dropdown menu.
89+
90+
In the popup modal, select the "API Access" tab. Enter a descriptive name for the key in "New API key description" box and click "Add key". A new modal will present your new API Key which you must copy and store securely as it will never be shown again.
91+
92+
For additional reference please see: https://docs.giscloud.com/rest#creating-an-api-key
93+
94+
After that is completed, you can create and test the connector.
95+
96+
## Known Issues and Limitations
97+
### Authentication compatibility for PowerApps
98+
To aid compatability with the PCF map component published by HandyGeo Services and to avoid prompting PowerApps users for API keys which is not user friendly we have created the connector to require the API key to be specified with every request.
99+
100+
### Dynamic data schema for Feature endpoints
101+
Due to geographic features in GIS Cloud originating from user uploaded data the schema is always dataset specific. As such the schema for payloads and responses from all Feature endpoints are always dynamic and require support for dynamic schemas in the Office 365 product being used. This is generally well supported by PowerAutomate but can present challenges in PowerApps.
102+
103+
### Endpoint Pagination
104+
GIS Cloud endpoints are limited to a maximum of 5,000 records being returned from a single request. While the REST API supports pagination, currently there is no way to automatically include this in the connector behaviour.
105+
106+
### REST API Rate Limiting for Service Protection
107+
As should be expected with any production REST API service, if an excessive number of requests to the GIS Cloud API are made in a short amount of time the response will be a 5xx code. While a specific rate limit is not explicitly defined, the REST API will support a limited parallel loop rate (i.e. approx 20) but high rates are likely to result in significant failures. Failed responses can be managed with a retry policy but excessive rates will cause issues.
108+
109+
## Deployment Instructions
110+
Obtain or create a suitable `settings.json` file and run the following commands and follow the prompts:
111+
112+
```paconn create --settings settings.json```

0 commit comments

Comments
 (0)