REST Server
Diamond Maps can be configured to act as a REST server allowing Diamond Maps content to be viewed live in 3rd party GIS software. REST is the name of the protocol developed by ESRI that makes it possible for GIS applications to interact with each other. More specifically, Diamond Maps supports the FeatureService subset of this protocol and it is read-only. If you are using ArcGIS desktop, ArcGIS Online, QGIS, or any other software that supports the ArcGIS REST protocol then you should be able to add live Diamond Maps layers to these applications.
How To Enable REST Server
The Diamond Maps REST Server functionality is turned off by default. To enable it for a specific map do the following:
- Open that map,
- Click Menu, then click REST Server Setup
- Check the "Enable Rest Server" checkbox.
- Check the layers that you want to be accessible on the REST server.
- Copy one of the two endpoint URL's and past this endpoint into the appropriate location in your 3rd party GIS application.
Authentication
Just like you control which users directly view your maps in Diamond Maps, you can also control who accesses your maps via the REST protocol. There are 3 ways to control this access:
User Name and Password: Some 3rd party GIS software applications have the ability to prompt their users for a user name and password when connecting to a REST server. In these cases you provide this 3rd party GIS software with the Rest Server Endpoint URL shown on the Rest Server Setup screen (the one without the token). The 3rd party software will then prompt you for your Diamond Maps user name and password when it tries to connect. Behind the scenes, Diamond Maps generates a dynamic token that the 3rd party GIS application uses for all subsequent requests to prove its identity. See the ArcGIS Online example video below for an example of this type of authentication.
Map Token: Some 3rd party GIS software applications do not have the ability to authenticate their connections to REST servers using a user name and password. In these cases you will need to use the rest endpoint URL that contains the long token string. See the QGIS example video below for an example of connecting using a map token. This token should be considered a secret since anyone with that token would be able to connect to your map data without the need for a user name or password. If you have given this token-based endpoint URL to someone in the past and you no longer want them to be able to access your map then you can click the "Regenerate Token" button to invalidate the old token and create a new one. Note that this will prevent anyone from using the old token.
Public Map: If neither of the above authentication options work for you then a 3rd option is to mark your map as publicly accessible. Then you should be able use the non-token endpoint in any 3rd party application without the need to share a token or login credentials. If you go this route, we recommend creating a separate map that only contains the layers you are sharing and then mark that map as public. For more about making a map public see Making a Map Public.
Example Videos