Catalog of map layers, categories and sublegends for KDK-based applications.
The catalog service is a Feathers service exposed over REST under the API prefix (/api by default): find, get, create, update, patch and remove map to the usual HTTP verbs. Layers are stored in MongoDB, while categories and sublegends declared in the configuration files are merged into find results at runtime.
In addition, a feature service is created dynamically for every layer declaring a service (or probeService) property, exposing the layer's GeoJSON features under /{featureService}.
Service health check
Returns the service name and its version. The version can be overridden at build time with the VERSION environment variable, and a buildNumber is added to the response when BUILD_NUMBER is set.
Responses
Service is up
List catalog objects
Returns a paginated list of catalog objects.
Without a type query parameter only layers are returned — the service implicitly applies type: { $nin: ['Context', 'Service', 'Category', 'Sublegend'] }. Query type=Category or type=Sublegend to retrieve the categories and sublegends injected from the configuration files, which are merged with any user-defined ones stored in MongoDB.
Any MongoDB query operator enabled on the service can be used, e.g. tags[$in][]=hydrography.
Authorizations
Paste a Kalisio JWT access token to authorize requests sent through the API gateway. The service itself does not configure authentication: reached directly on its own port it answers without a token.
Parameters
Query Parameters
Filter on the object type. Defaults to every layer type.
"BaseLayer""OverlayLayer""TerrainLayer""Category""Sublegend""OverlayLayer"Exact match on the object name (i18n key).
"Layers.OSM_BRIGHT"Return the layers carrying at least one of these tags.
"hydrography"Maximum number of objects returned. $limit=0 returns only the total count — and skips the merge of the configured categories/sublegends.
10010001000Number of objects to skip.
00Sort on a property, 1 ascending and -1 descending.
1-11Restrict the returned properties.
"name""type""tags"Fuzzy, diacritic-insensitive search on the name and label properties.
"osm"Responses
Paginated list of catalog objects
Create a catalog object
Creates a layer, a category or a sublegend. The name has to be unique for a given type. createdAt and updatedAt are set by the service.
Authorizations
Paste a Kalisio JWT access token to authorize requests sent through the API gateway. The service itself does not configure authentication: reached directly on its own port it answers without a token.
Request Body
Responses
The created object
Read a catalog object
Authorizations
Paste a Kalisio JWT access token to authorize requests sent through the API gateway. The service itself does not configure authentication: reached directly on its own port it answers without a token.
Responses
The requested object
Replace a catalog object
Replaces the whole object. This is the operation used on startup to refresh the layers declared in the configuration files. Renaming a layer also updates the categories and contexts referencing it.
Authorizations
Paste a Kalisio JWT access token to authorize requests sent through the API gateway. The service itself does not configure authentication: reached directly on its own port it answers without a token.
Request Body
Responses
The updated object
Remove a catalog object
Removes the object and drops its name from the categories, contexts and projects referencing it.
Authorizations
Paste a Kalisio JWT access token to authorize requests sent through the API gateway. The service itself does not configure authentication: reached directly on its own port it answers without a token.
Responses
The removed object
Update some properties of a catalog object
Authorizations
Paste a Kalisio JWT access token to authorize requests sent through the API gateway. The service itself does not configure authentication: reached directly on its own port it answers without a token.
Request Body
Responses
The updated object
List the features of a layer
Feature services are created dynamically, one per layer declaring a service (or probeService) property — the path segment is the value of that property, e.g. hubeau-hydro-observations or admin-express. Query the catalog with $select[]=service to list the ones available on a given instance.
These services are paginated with a default and maximum page size of 5000.
Authorizations
Paste a Kalisio JWT access token to authorize requests sent through the API gateway. The service itself does not configure authentication: reached directly on its own port it answers without a token.
Parameters
Path Parameters
The layer's service property.
"admin-express"Query Parameters
Maximum number of features returned.
10050005000Number of features to skip.
00Responses
Paginated list of GeoJSON features