This section provides a reference for APIs that should be implemented by this Building Block.
This section provides a reference for the APIs implemented by the GIS Building Block. The APIs defined here establish a blueprint for how the Building Block will interact with other Building Blocks. Additional APIs may be implemented by the Building Block, but the listed APIs define a minimal set of functionality that should be provided by any implementation of this Building Block.
The GIS BB APIs conform with the OGC web API principles and guidelines and should be deployed as a set of microservices to provide clients consistent access to the key digital functionalities and geographic data in different representations. Microservices are defined to receive requests with relevant inputs and return processed results from key digital functionalities of this Building Block. Microservices are small, independent, and loosely coupled services that perform specific functions within the larger GIS BB key digital functionalities. Each microservice is kept simple and intuitive by focusing on one particular task, and together they form a cohesive and scalable GIS architecture. Each microservice can be developed, deployed, and maintained independently, making it easier to manage and scale the system as needed.
This section provides a reference for APIs that this Building Block should implement. The APIs defined here establish a blueprint for how the Building Block will interact with other Building Blocks. The Building Block may implement additional APIs, but the listed APIs define a minimal set of functionality that any implementation of this Building Block should provide.
The GovStack non-functional requirements document provides additional information on how 'adaptors' may be used to translate an existing API to the patterns described here.
Enable basic navigation capabilities on the GIS data viewer. This endpoint allows users to perform basic navigation actions such as zooming in and out of a map, and panning to explore the displayed GIS data.
Specifies if zooming is supported
The available zoom levels for the map
Specifies if panning is supported
Successful enabling of basic navigation capabilities
Set minimum and maximum scale limits for each layer. This endpoint allows users to specify whether a layer is identifiable and/or selectable on the data viewer. These settings are saved as a cache by the data viewer app and are reserved for future data viewer displays. The settings are reset to default when the cache is cleared.
The name of the GIS layer
The minimum scale to show the layer's feature on the map display
The maximum scale to show the layer's feature on the map display
Successful setting of layer scale limits
Perform measuring actions on the GIS data viewer. This endpoint allows users to measure distances and areas on the displayed map.
true
true
Successful measuring action
Retrieve the style applied to the data viewer. This endpoint provides information about the style used to portray the geographic features of each layer on the data viewer.
Successful retrieval of data viewer style
"DefaultStyle"
"Default style for GIS layers"
"CodedStyle"
Retrieve the type of the data viewer. This endpoint provides information about whether the client data viewer is desktop, mobile, web browser, or unknown.
Specifies the type of supported browser for the data viewer.
Successful retrieval of the data viewer type
Add, view, delete, and mark map notes on the GIS data viewer. This endpoint allows GIS users to add and share brief notes on the GIS data viewer. Other users can view and comment on these notes. Notes can only be deleted by the creator of the note. Notes are saved and served as a web feature service.
"John Doe"
"This is a map note."
"2023-08-01T12:34:56Z"
true
true
true
true
12.3456
34.5678
Successful note creation or update
"John Doe"
"This is a map note."
"2023-08-01T12:34:56Z"
true
true
true
true
12.3456
34.5678
Add or update spatial bookmarks. This endpoint allows users to capture the spatial extent of a given location as a spatial bookmark in a GIS data viewer. Users can name the bookmark and zoom to the exact extent whenever needed by selecting the bookmark's name. Users can also add, rename, and remove spatial bookmarks as necessary.
"Bookmark A"
1
true
true
true
12.3456
34.5678
12.789
34.9012
Successful bookmark creation or update
"Bookmark A"
1
true
true
true
12.3456
34.5678
12.789
34.9012
Retrieve GIS map display details. This endpoint provides access to GIS data through a data viewer, allowing users to view and query geographic or spatial information presented as graphic representations (points, polygons, lines, or raster grids) through thematic GIS layers or attribute tables. The response will include the symbology (pre-defined styles) for each map layer, displayed as a legend alongside a table of contents listing all layers provided by the service.
Successful retrieval of GIS map display details
"Map Display Title"
"A summary description of the map display purpose and contents."
"GIS Data Viewer Attribution"
true
"/r1/eGovStack/COM/11222456/SchedulerBB/creg/event/new"
"EPSG:4326"
12.3456
34.5678
12.3456
34.5678
12.789
34.9012
Retrieve the reverse geocoding result for a specific ID.
ID of the reverse geocoding result to retrieve
Successful response
Retrieve the geocoding result for a specific ID.
ID of the geocoding result to retrieve
Successful response
Reverse geocode geographic coordinates to obtain an address.
Successful response
Geocode an address to obtain geographic coordinates.
Successful response
Perform batch geocoding or reverse geocoding using a table file with multiple addresses or coordinates.
Created
Record editor tracking information for feature editing.
Created
Extract and transfer GIS data layers or features from a remote GIS database.
Created
Replicate a remote GIS database schema.
Created
Create, edit, modify, or delete geographic features on the extracted GIS data layers.
Created
Retrieve details of a specific GIS data store.
ID of the GIS data store to retrieve
Successful response
Create user control for authentication and access permissions.
Created
Publish metadata descriptions of a GIS database schema and its contents.
Created
Create a new GIS data store.
Created
Update details of a specific GIS data store.
ID of the GIS data store to update
Updated
Retrieve templates and resources for creating map layouts and cartographic reports.
Successful response with templates
Remove a dynamic GIS layer from a map layout or report.
ID of the dynamic GIS layer to be removed
Successful response after removing dynamic GIS layer
Remove a label from a map layout or report.
ID of the label to be removed
Successful response after removing label
Remove a chart from a map layout or report.
ID of the chart to be removed
Successful response after removing chart
Remove a legend from a map layout or report.
ID of the legend to be removed
Successful response after removing legend
Remove a scale bar from a map layout or report.
ID of the scale bar to be removed
Successful response after removing scale bar
Remove a north arrow from a map layout or report.
ID of the north arrow to be removed
Successful response after removing north arrow
Add a chart to a map layout or report.
Successful response after adding chart
Add a dynamic GIS layer to a map layout or report.
Successful response after adding dynamic GIS layer
Add a label to a map layout or report.
Successful response after adding label
Add a legend to a map layout or report.
Successful response after adding legend
Add a scale bar to a map layout or report.
Successful response after adding scale bar
Add a north arrow to a map layout or report.
Successful response after adding north arrow
Retrieve detailed information that describes the processes that can be run on the service.
Successful response with available processes
Retrieve metadata that describes the purpose and functionality of geospatial analysis tasks or processes.
Successful response with metadata
Get the status of an asynchronously executed geoprocessing task.
ID of the geoprocessing task
Successful response with task status
Get the result of a finished geoprocessing task.
ID of the geoprocessing task
Successful response with task result
Terminate an asynchronously executed geoprocessing task.
ID of the geoprocessing task
Task termination request received
Execute a geoprocessing task to perform basic spatial analysis operations.
Successful response with geoprocessing result
Retrieve non-spatial table metadata.
Successful response
Retrieve the results of a previously executed query.
Successful response
Retrieve GIS layer metadata and feature type definitions.
Successful response
Execute a metadata discovery query.
Successful response
Execute an attribute-based query.
Successful response
Execute GIS feature or attribute query operations interactively or through predefined expressions.
Successful response
Execute a spatial query based on location.
Successful response
Successful response with a list of geofences
Successful response with geofence details
Successful response after deleting geofence
Successful response with geofence status
Successful response after activating geofence
Successful response after deactivating geofence
Successful response with a list of geofence elements
Successful response after removing geofence element
Successful response after creating geofence
Successful response after adding geofence element
Successful response after creating action rule
Successful response after creating element action rule
Successful response after updating geofence
Successful response with a list of service areas
Successful response with route details
Successful response after deleting route
Successful response with direction report
Successful response with a list of route segments
Successful response after creating a route