mark-p-thomas : GIS.ly 3rd Party APIs

GIS.ly uses 3rd Party APIs for 2 cases:

  1. Tiling

  2. Elevation Data

Tiling

In order for Leaflet to work correctly with underlays, API calls must be specified for a given layer. While the program has some built in by default, they can be specified and changed in a settings file.

Security

Some sources may require an API key, such as Thunderforest. Unfortunately this key cannot be kept totally private as ultimately it shows up in the Leaflet tiling image request, which is easily found by inspecting the page. As a half measure, the app uses a proxy server to store the API key. This is fetched as part of the process of formulating the API call. Perhaps one day Leaflet might allow means of keeping this hidden at the tail end.

Elevation Data

For GIS library cleaning & data display based on elevation, this data must be obtained from DEM data at a specified Lat/Long as this is not recorded by GPS.

Open Topo Data is the API used by the app for obtaining this information. Rate limiting affects app speed, & extra caching is needed for client speed as well as avoiding exceeding daily limits. It is recommended to clean Tracks with all other methods before running Elevation cleaning methods in order to have fewer lat/long Points to request information for. Note that for adding/moving Points, this API needs to be called again for the new/different Points.