Web API Administration¶
The Web API is configurable through the API itself. A number of APIs are exposed for configuration and administration. These include the Accounts API, the Connections API, the Email Templates API, the Map Styles API and the Job Hosts API.
To help you with configuration and administration, the Web API is deployed with an API Administrator web site, consuming the above APIs. Currently, the API Administrator supports connections, accounts and job hosts.
The API Administrator web site can be accessed at <base-url>/admin - for example, if you are debugging the Web API locally:
To access the site, you have to log in as a user with administrator privileges:
In the API Administrator, an administrator can create, update and remove connections. The connections list will clearly indicate if a connection is OK or not.
When creating a new connection, the following basic information must be given:
- The id that identifies the connection - e.g. "shape-gis" to identify a connection to a shape file with GIS information. The connection id is used in the API urls - e.g.
- A logical name of the connection to be displayed in the list.
- A connection type (what type of service the connection represents) - e.g. a GIS service connection. For additional information about how to select the correct connection type, see Which type of connection shall I choose?
Depending on the selected connection type, some additional information must be configured. Typically, a repository type must be given. The repository type is an assembly-qualified name of the .NET type to be used for data access. The API Administrator will automatically detect the available types that are compatible with the selected connection type, so you can simply make your selection from the drop-down.
Furthermore, you have to define a connection string for the repository. The format of the connection string varies for the different repository types. For example, the connection string for a DIMS.CORE time series repository is a DIMS.CORE token, while for a dfs0 time series repository, it is a file- or folder path. So you have to obtain specific knowledge of the connection string format of the individual repositories, before you can properly configure the connection. For details about the various repositories, including the connection string formats, see the Plugins Reference. To further help you out, the Web API project templates come with a number of predefined examples of connections. Finally, the VERIFY-button will help you test the connection before submitting.
Some file- or folder-based repository types support the [AppData]-notation. If used in a connection string, "[AppData]" will be resolved to the absolute file path to the
App_Data-folder of the Web API.
Some connection types are a bit more complicated to configure, as you have to define more than a single repository type and its connection string. Below is given an example of a map service connection, where you have to define a map source type as well as a map style repository type - both with corresponding connection strings. Optionally, you can configure a number of additional map source properties.
The Accounts API supports user sign-up in the form of user registration and activation. It also allows for a user to update his/her own account and reset a (forgotten) password. But in addition to this, an administrator can create, update and remove user accounts using the API Administrator site.
NOTE: When editing an existing user account, entering a password is optional. If omitted, the original password remains unchanged.
A user account must be given 1 or more roles. Normally, it will make sense to assign one of the below 4 sets of roles:
- Guest, User
- Guest, User, Editor
- Guest, User, Editor, Administrator