### Define System Setup Response Model
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Represents the standard response structure for system setup operations. It includes status, messages, logs, warnings, errors, and a unique identifier.
```json
{
"status": "string",
"message": "string",
"log": ["string"],
"warnings": ["string"],
"error": "string",
"id": "00000000-0000-0000-0000-000000000000"
}
```
```xml
string
string
string
string
string
00000000-0000-0000-0000-000000000000
```
--------------------------------
### ReportsConfigurationModel XML Example
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Provides an example XML structure for the ReportsConfigurationModel, illustrating how report configurations, including settings and templates, are represented in XML format.
```xml
1
1
string
string
1970-01-01T00:00:00.001Z
string
string
string
string
1970-01-01T00:00:00.001Z
string
1
string
1970-01-01T00:00:00.001Z
1970-01-01T00:00:00.001Z
1
1
string
1970-01-01T00:00:00.001Z
1970-01-01T00:00:00.001Z
1
```
--------------------------------
### GisLayerReqModel XML Example
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Example XML payload for creating or updating a GIS layer. This format mirrors the JSON structure, allowing for similar data representation in XML.
```xml
1
1.1
string
1.1
string
1.1
string
string
00000000-0000-0000-0000-000000000000
1
1
string
string
string
string
string
1
```
--------------------------------
### GisLayerReqModel JSON Example
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Example JSON payload for creating or updating a GIS layer. It includes properties for dynamic styling, file association, and layer identification.
```json
{
"otherDynStyleDefinition": {
"size": [
0
],
"spliters": [
0
],
"fill": [
"string"
],
"fillOpacity": [
0
],
"stroke": [
"string"
],
"strokeWidth": [
0
]
},
"otherDynStyleAttributeName": "string",
"fileId": "string",
"id": "00000000-0000-0000-0000-000000000000",
"ssrid": 0,
"dsrid": 0,
"layerName": "string",
"type": "string",
"geoserverName": "string",
"otherStyle": "string",
"groupName": "string",
"zIndex": 0
}
```
--------------------------------
### GET /api/leakage/systemSetup/downloadConfigurationEditor
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Downloads the configuration editor.
```APIDOC
## GET /api/leakage/systemSetup/downloadConfigurationEditor
### Description
Downloads the configuration editor.
### Method
GET
### Endpoint
/api/leakage/systemSetup/downloadConfigurationEditor
### Response
#### Success Response (200)
An empty JSON object indicates success.
#### Response Example
```json
{}
```
```
--------------------------------
### GET /api/generalsettings
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Retrieves all general settings, returned as a dictionary.
```APIDOC
## GET /api/generalsettings
### Description
Gets all general settings. Returns dictionary.
### Method
GET
### Endpoint
/api/generalsettings
### Response
#### Success Response (200)
OK
- **(response body)** (object) - An empty JSON object is returned, representing the dictionary of general settings.
#### Response Example
```json
{}
```
```
--------------------------------
### GET /api/leakage/install/serverInfo
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Retrieves server information. This endpoint is part of the installation process.
```APIDOC
## GET /api/leakage/install/serverInfo
### Description
Retrieves server information. This endpoint is part of the installation process.
### Method
GET
### Endpoint
/api/leakage/install/serverInfo
#### Parameters
None
#### Request Body
None
### Response
#### Success Response (200)
- **Model**: Inline Model {}
- **Example Value**: {}
#### Response Example
```json
{}
```
```
--------------------------------
### GET /api/Touch
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Warms up the backend by sending a GET request to the /api/Touch endpoint.
```APIDOC
## GET /api/Touch
### Description
Warms up the backend.
### Method
GET
### Endpoint
/api/Touch
### Response
#### Success Response (200)
- **Model** (object) - An empty object indicating success.
### Response Example
```json
{}
```
```
--------------------------------
### ReportsConfigurationModel JSON Example
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Provides an example JSON structure for the ReportsConfigurationModel, which includes settings and templates for reports. This model is used for representing report configurations in the API.
```json
{
"settings": [
{
"id": 0,
"templateId": 0,
"templateName": "string",
"name": "string",
"firstDate": "2026-03-17T12:31:37.259Z",
"repeat": "string",
"deleteOlder": "string",
"dbOutput": "string",
"diskOutput": "string",
"last": "2026-03-17T12:31:37.259Z",
"flag": "string",
"reports": [
{
"id": 0,
"name": "string",
"reportTime": "2026-03-17T12:31:37.259Z",
"generated": "2026-03-17T12:31:37.259Z",
"reportSettingId": 0
}
]
}
],
"templates": [
{
"id": 0,
"name": "string",
"reportTime": "2026-03-17T12:31:37.259Z",
"generated": "2026-03-17T12:31:37.259Z",
"reportSettingId": 0
}
]
}
```
--------------------------------
### GET /api/leakage/systemSetup/getTemplate
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Downloads the wizard template as a zip file. Values are in default DB units.
```APIDOC
## GET /api/leakage/systemSetup/getTemplate
### Description
Downloads the wizard template. It is a zip file. Values are in default DB units - no recalculation performed.
### Method
GET
### Endpoint
/api/leakage/systemSetup/getTemplate
### Parameters
#### Path Parameters
None
#### Query Parameters
None
### Request Example
None
### Response
#### Success Response (200)
- **Model**: Inline Model {}
#### Response Example
```json
{}
```
```xml
```
```
--------------------------------
### RangedKpiRequestModel Example (XML)
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Example XML structure for the RangedKpiRequestModel, used for requesting KPI data within a specified date range and for specific zone IDs.
```xml
1970-01-01T00:00:00.001Z
1970-01-01T00:00:00.001Z
1
```
--------------------------------
### RangedKpiRequestModel Example (JSON)
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Example JSON structure for the RangedKpiRequestModel, used for requesting KPI data within a specified date range and for specific zone IDs.
```json
{
"fromDT": "2026-03-17T12:31:37.222Z",
"toDT": "2026-03-17T12:31:37.222Z",
"zoneIds": [
0
]
}
```
--------------------------------
### TimeSeriesRequestModel Example (JSON)
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Defines the structure for requesting time series data. It includes optional arrays for type IDs and zone IDs, along with optional start and end dates. The 'ts' parameter indicates the content type.
```json
{
"typeIds": [
0
],
"zoneIds": [
0
],
"fromDate": "2026-03-17T12:31:37.313Z",
"toDate": "2026-03-17T12:31:37.313Z"
}
```
--------------------------------
### TimeSeriesRequestModel Example (XML)
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Defines the structure for requesting time series data in XML format. It includes optional elements for type IDs and zone IDs, along with optional start and end dates. The 'ts' parameter indicates the content type.
```xml
1
1
1970-01-01T00:00:00.001Z
1970-01-01T00:00:00.001Z
```
--------------------------------
### EventUpdateModel Example (XML)
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Example XML structure for the EventUpdateModel, used for updating leakage event details. It includes event type, value, and optional solved status and comments.
```xml
1
1.1
1
string
1970-01-01T00:00:00.001Z
```
--------------------------------
### GET /api/usersettings
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Retrieves all key-value settings associated with the currently authenticated user.
```APIDOC
## GET /api/usersettings
### Description
Gets all user settings for the current user. Settings are returned as a collection of key/value pairs.
### Method
GET
### Endpoint
/api/usersettings
### Response
#### Success Response (200)
- **settings** (object) - A dictionary of key/value pairs representing user settings.
#### Response Example
{
"theme": "dark",
"notifications": "enabled"
}
```
--------------------------------
### EventUpdateModel Example (JSON)
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Example JSON structure for the EventUpdateModel, used for updating leakage event details. It includes event type, value, and optional solved status and comments.
```json
{
"eventType": 0,
"value": 0,
"solvedType": 0,
"solvedComment": "string",
"solvedTime": "2026-03-17T12:31:37.225Z"
}
```
--------------------------------
### GET /api/roles/permissions
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Retrieves all available user roles along with their associated permissions.
```APIDOC
## GET /api/roles/permissions
### Description
Get all available user roles with permissions. Returns JSON. Requires 'ManageUsers' or 'manageCompanyUsers' permission.
### Method
GET
### Endpoint
/api/roles/permissions
### Response
#### Success Response (200)
- **Status** (string) - OK
#### Response Example
{}
```
--------------------------------
### GET /api/roles
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Retrieves a list of all available user roles within the system.
```APIDOC
## GET /api/roles
### Description
Gets all available user roles. Requires 'ManageUsers' or 'manageCompanyUsers' permission.
### Method
GET
### Endpoint
/api/roles
### Response
#### Success Response (200)
- **Status** (string) - OK
#### Response Example
{}
```
--------------------------------
### GET /api/beat
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Provides a heartbeat for token and license confirmation. This endpoint should be called at a 2-minute interval and returns either 'ok' or an error message.
```APIDOC
## GET /api/beat
### Description
Heartbeat for token and license confirmation. Should be called in 2 minutes interval. Returns ok or error message.
### Method
GET
### Endpoint
/api/beat
### Parameters
#### Path Parameters
None
#### Query Parameters
None
#### Request Body
None
### Request Example
None
### Response
#### Success Response (200)
- **OK** (string) - Indicates a successful heartbeat.
#### Response Example
```json
{}
```
```
--------------------------------
### POST /api/Login
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Authenticates a user against the system. Supports standard login, two-factor authentication initiation, and phone setup requirements.
```APIDOC
## POST /api/Login
### Description
Authenticates a user. Depending on the account configuration, this returns a token for simple login, or triggers a two-phase authentication flow (verification code or phone setup).
### Method
POST
### Endpoint
/api/Login
### Parameters
#### Request Body
- **Company** (string) - Optional - The company identifier.
- **Login** (string) - Optional - The user login name.
- **Password** (string) - Optional - The user password.
- **IsActiveDirectory** (boolean) - Optional - Whether to use Active Directory authentication.
- **ActiveDirectoryDomain** (string) - Optional - The domain for Active Directory.
### Request Example
{
"Company": "string",
"Login": "string",
"Password": "string",
"IsActiveDirectory": true,
"ActiveDirectoryDomain": "string"
}
### Response
#### Success Response (200)
- **Token** (string) - Authentication token for subsequent requests.
- **Type** (string) - Indicates authentication status (e.g., 'SimpleLogin').
#### Success Response (201 - Verification Required)
- **RequestId** (string) - ID for the verification code process.
- **Type** (string) - Value: 'VerificationCodeRequired'.
#### Success Response (202 - Phone Setup Required)
- **RequestId** (string) - ID for the phone setup process.
- **Type** (string) - Value: 'NewPhoneRequired'.
#### Response Example
{
"Token": "string",
"Company": "string",
"UserName": "string",
"Type": "SimpleLogin"
}
```
--------------------------------
### GET /api/users
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Retrieves a list of all users with limited details. No permissions are required for this endpoint.
```APIDOC
## GET /api/users
### Description
Gets all users with limited details. This functionality is used for scenario sharing and requires no permissions.
### Method
GET
### Endpoint
/api/users
### Response
#### Success Response (200)
- **Id** (string) - User unique identifier
- **Company** (string) - Company name
- **UserName** (string) - Username
- **FullName** (string) - Full name of the user
#### Response Example
[
{
"Id": "00000000-0000-0000-0000-000000000000",
"Company": "string",
"UserName": "string",
"FullName": "string"
}
]
```
--------------------------------
### GET /api/users/details
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Retrieves a list of all users with their full profile details. Requires 'manageUsers' or 'manageCompanyUsers' permission.
```APIDOC
## GET /api/users/details
### Description
Gets all users with details. Required 'manageUsers' or 'manageCompanyUsers' permission.
### Method
GET
### Endpoint
/api/users/details
### Response
#### Success Response (200)
- **Array** (list) - List of user objects containing Email, Role, Permissions, Enabled, and profile info.
#### Response Example
[
{
"Email": "string",
"Role": "string",
"Permissions": ["string"],
"Enabled": true,
"Id": "00000000-0000-0000-0000-000000000000",
"FullName": "string"
}
]
```
--------------------------------
### GET /api/OAuthConfig
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Retrieves the OAuth configuration. Returns an error response if the backend is not configured to support OAuth.
```APIDOC
## GET /api/OAuthConfig
### Description
Returns the OAuth config. Returns error response if backend not configured to support it.
### Method
GET
### Endpoint
/api/OAuthConfig
### Parameters
#### Path Parameters
None
#### Query Parameters
None
#### Request Body
None
### Request Example
None
### Response
#### Success Response (200)
- **OAuthConfigModel** (object) - Contains the OAuth configuration details.
- **ClientId** (string, optional)
- **ClientSecret** (string, optional)
- **Scope** (string, optional)
- **AuthorizationEndpoint** (string, optional)
- **TokenEndpoint** (string, optional)
- **LogoutEndpoint** (string, optional)
- **RevocationEndpoint** (string, optional)
- **ApiEndpoint** (string, optional)
- **Discovery** (string, optional)
#### Response Example
```json
{
"ClientId": "string",
"ClientSecret": "string",
"Scope": "string",
"AuthorizationEndpoint": "string",
"TokenEndpoint": "string",
"LogoutEndpoint": "string",
"RevocationEndpoint": "string",
"ApiEndpoint": "string",
"Discovery": "string"
}
```
```
--------------------------------
### Retrieve all users via GET /api/users
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Retrieves a list of all users with limited details. This endpoint does not require authentication and is used for scenario sharing.
```json
[
{
"Id": "00000000-0000-0000-0000-000000000000",
"Company": "string",
"UserName": "string",
"FullName": "string"
}
]
```
```xml
00000000-0000-0000-0000-000000000000
string
string
string
```
--------------------------------
### GET /api/leakage/setup/init
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Retrieves the initial configuration for the LM system, including leakage and event units. The response provides details on workspace, environments, units, system type, and various configuration flags.
```APIDOC
## GET /api/leakage/setup/init
### Description
Get the initial configuration of LM. Include leakage units and event units. See model for response attributes description.
### Method
GET
### Endpoint
/api/leakage/setup/init
### Parameters
#### Query Parameters
None
#### Request Body
None
### Response
#### Success Response (200)
- **workspace** (string, optional) - workspace (parameter for Geoserver layers)
- **environments** (string, optional) - Environments configuration. Each environment in environments configuration contains localized environment name.
- **leakageUnit** (string, optional) - Units for leakage table. Translated.
- **limitsUnit** (string, optional) - Units for limits table. Label is fixed in code.
- **systemType** (string, optional) - The system type ('full' or 'simple')
- **isConfigEditorAvailable** (boolean, optional) - If download configuration editor should be available
- **managerEnvironments** (string, optional) - Environments for manager sets
- **managerChartDef** (string, optional) - Time series ids for manager charts
- **visibleTabs** (Array[string], optional) - List of tabs, which should be visible
- **allowNrwUpdateTemplate** (boolean, optional) - If to allow update template on NRW reports tab
- **fakeNow** (string, optional) - If defined then the UI should pretend that now is the defined date
#### Response Example
```json
{
"workspace": "string",
"environments": "string",
"leakageUnit": "string",
"limitsUnit": "string",
"systemType": "string",
"isConfigEditorAvailable": true,
"managerEnvironments": "string",
"managerChartDef": "string",
"visibleTabs": [
"string"
],
"allowNrwUpdateTemplate": true,
"fakeNow": "2026-03-17T12:31:37.272Z"
}
```
```
--------------------------------
### GET /api/leakage/install/install
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Prepares the database by creating necessary structures in the public workspace. This endpoint should be executed before the first login. It preserves user data while resetting specific tables and creating views and functions.
```APIDOC
## GET /api/leakage/install/install
### Description
Prepares the database by creating necessary structures in the public workspace. This endpoint should be executed before the first login. It preserves user data while resetting specific tables and creating views and functions. It reads the IPO workspace setting 'LeakageMonitorSettings/FCViewName' to get the main FC name, which must be in the root of GIS manager. Adjustments to 'SQL\Install_public_workspace.sql' are needed for adding new layers.
### Method
GET
### Endpoint
/api/leakage/install/install
#### Parameters
None
#### Request Body
None
### Response
#### Success Response (200)
- **Model**: Inline Model {}
- **Example Value**: {}
#### Response Example
```json
{}
```
```
--------------------------------
### Get Leakage Event Edit Info Response (XML)
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Example XML response for retrieving leakage event edit information. It returns a list of lists, where each inner list contains editable items with their IDs, names, values, and editability status.
```xml
string
string
true
```
--------------------------------
### POST /api/leakage/systemSetup/createSystem
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Creates the LM system. Values are expected in default DB units.
```APIDOC
## POST /api/leakage/systemSetup/createSystem
### Description
Creates the LM system. Values are expected in default DB units - no recalculation performed.
### Method
POST
### Endpoint
/api/leakage/systemSetup/createSystem
### Parameters
#### Path Parameters
None
#### Query Parameters
None
#### Request Body
- **model** (object) - Required
- **fileId** (string, optional) - The ID of the file to import.
- **srid** (integer, optional) - The SRID for the system.
### Request Example
```json
{
"fileId": "string",
"srid": 0
}
```
```xml
string
1
```
### Response
#### Success Response (200)
- **status** (string, optional) - 'succeed' || 'warning' || 'error'
- **message** (string, optional) - Translated message based on status.
- **log** (Array[string], optional) - Performed actions list.
- **warnings** (Array[string], optional) - Warnings if any.
- **error** (string, optional) - Error if any.
- **id** (string, optional) - ID used for system update.
#### Response Example
```json
{
"status": "string",
"message": "string",
"log": [
"string"
],
"warnings": [
"string"
],
"error": "string",
"id": "00000000-0000-0000-0000-000000000000"
}
```
```xml
string
string
string
string
string
00000000-0000-0000-0000-000000000000
```
```
--------------------------------
### Get Leakage Event Edit Info Response (JSON)
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Example JSON response for retrieving leakage event edit information. It returns a list of lists, where each inner list contains editable items with their IDs, names, values, and editability status.
```json
[
[
{
"id": "string",
"name": "string",
"value": {},
"editable": true
}
]
]
```
--------------------------------
### TreeViewRequestModel Example (JSON)
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Defines the parameters for requesting a zone tree. It supports different modes ('all', 'withoutData', 'withData') and optional environment ID, from date, and to date, which are required for filtered modes.
```json
{
"mode": "string",
"envId": "string",
"fromDate": "2026-03-17T12:31:37.314Z",
"toDate": "2026-03-17T12:31:37.314Z"
}
```
--------------------------------
### POST /api/leakage/systemSetup/importData
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Imports data and runs the engine. Values are expected in default DB units.
```APIDOC
## POST /api/leakage/systemSetup/importData
### Description
Imports data and runs the engine. Values are expected in default DB units - no recalculation performed.
### Method
POST
### Endpoint
/api/leakage/systemSetup/importData
### Parameters
#### Path Parameters
None
#### Query Parameters
None
#### Request Body
- **styleId** (string) - Path parameter, required.
- **styleDef** (object) - Body parameter, required.
- **spliters** (Array[number], optional) - Required. The list should contain at least 1 number.
- **fill** (Array[string], optional) - Required. The string should start with # character followed by 6-digit HEX code of a color. Length of the list should be one more than splitters length.
### Request Example
```json
{
"spliters": [
0
],
"fill": [
"string"
]
}
```
```xml
1.1
string
```
### Response
#### Success Response (200)
(No specific response model provided in the input for this endpoint, assuming a generic success response)
#### Response Example
(No example provided in the input)
```
--------------------------------
### Create a new user via POST /api/users
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Creates a new user account and returns the created user details. Requires 'manageUsers' or 'manageCompanyUsers' permission.
```json
{
"Company": "string",
"UserName": "string",
"Email": "string",
"FullName": "string",
"Password": "string",
"Role": "string",
"ApplicationUrl": "string",
"ValidUntil": "2026-03-17T12:31:37.159Z",
"UseTwoPhaseAuth": true
}
```
```xml
string
string
string
string
string
string
string
1970-01-01T00:00:00.001Z
true
```
--------------------------------
### POST /api/users
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Creates a new user in the system. Requires 'manageUsers' or 'manageCompanyUsers' permission.
```APIDOC
## POST /api/users
### Description
Creates a new user and returns the created user details. Requires 'manageUsers' or 'manageCompanyUsers' permission.
### Method
POST
### Endpoint
/api/users
### Request Body
- **Company** (string) - Optional
- **UserName** (string) - Optional
- **Email** (string) - Optional
- **FullName** (string) - Optional
- **Password** (string) - Optional
- **Role** (string) - Optional
- **ApplicationUrl** (string) - Optional
- **ValidUntil** (string) - Optional
- **UseTwoPhaseAuth** (boolean) - Optional
### Request Example
{
"Company": "string",
"UserName": "string",
"Email": "string",
"FullName": "string",
"Password": "string",
"Role": "string",
"ApplicationUrl": "string",
"ValidUntil": "2026-03-17T12:31:37.159Z",
"UseTwoPhaseAuth": true
}
### Response
#### Success Response (200)
- **Id** (string) - Created user ID
- **Email** (string) - User email
- **Role** (string) - User role
- **Enabled** (boolean) - Account status
```
--------------------------------
### POST /api/LoginWithAccessToken
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Validates the provided access token, creates the user in WNA if they don't exist, requests the license, and attaches the muwa authtoken to it. All other requests must contain 'muwa-authtoken' and 'Authorization' headers. Returns the user model as normal login with type SimpleLogin (two-phase authentication is not allowed).
```APIDOC
## POST /api/LoginWithAccessToken
### Description
Validates the auth token. Creates the user in WNA if not exists. Requests the license and attaches the muwa authtoken to it. All other request must contain 'muwa-authtoken' header and 'Authorization' header. Returns the user model as normal login with type SimpleLogin (two phase autentication on our side is not allowed)
### Method
POST
### Endpoint
/api/LoginWithAccessToken
### Parameters
#### Path Parameters
None
#### Query Parameters
None
#### Request Body
- **user** (object) - User authentication details.
- **company** (string, optional)
- **userName** (string, optional)
### Request Example
```json
{
"company": "string",
"userName": "string"
}
```
### Response
#### Success Response (200)
- **AuthenticationToken** (object) - Contains user authentication details.
- **Token** (string, optional)
- **Company** (string, optional)
- **UserName** (string, optional)
- **Email** (string, optional)
- **Role** (string, optional)
- **Permissions** (Array[string], optional)
- **FullName** (string, optional)
- **UseTwoPhaseAuth** (boolean, optional)
- **ModuleAvailability** (object, optional)
- **HasWd** (boolean, optional)
- **HasCs** (boolean, optional)
- **HasSwmm** (boolean, optional)
- **EngineAvailability** (object, optional)
- **HasWdEngine** (boolean, optional)
- **HasCsEngine** (boolean, optional)
- **HasSwmmEngine** (boolean, optional)
- **PasswordExpired** (boolean, optional)
- **Type** (string, optional, read only)
#### Response Example
```json
{
"Token": "string",
"Company": "string",
"UserName": "string",
"Email": "string",
"Role": "string",
"Permissions": [
"string"
],
"FullName": "string",
"UseTwoPhaseAuth": true,
"ModuleAvailability": {
"HasWd": true,
"HasCs": true,
"HasSwmm": true
},
"EngineAvailability": {
"HasWdEngine": true,
"HasCsEngine": true,
"HasSwmmEngine": true
},
"PasswordExpired": true,
"Type": "string"
}
```
```
--------------------------------
### TreeViewRequestModel Example (XML)
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Defines the parameters for requesting a zone tree in XML format. It supports different modes ('all', 'withoutData', 'withData') and optional environment ID, from date, and to date, which are required for filtered modes.
```xml
string
string
1970-01-01T00:00:00.001Z
1970-01-01T00:00:00.001Z
```
--------------------------------
### GET /api/leakage/gislayers/sampleStyleDefinitions/{geometryType}
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Retrieves a sample style definition for a GIS layer based on its geometry type. The geometry type is typically obtained from a previous GET styleDefinition call and can be one of 'multipoint', 'multilinestring', or 'multipolygon'.
```APIDOC
## GET /api/leakage/gislayers/sampleStyleDefinitions/{geometryType}
### Description
Retrieves a sample style definition for a GIS layer based on its geometry type. The geometry type is typically obtained from a previous GET styleDefinition call and can be one of 'multipoint', 'multilinestring', or 'multipolygon'.
### Method
GET
### Endpoint
/api/leakage/gislayers/sampleStyleDefinitions/{geometryType}
#### Path Parameters
- **geometryType** (string) - Required - The type of geometry for the layer (e.g., 'multipoint', 'multilinestring', 'multipolygon').
#### Request Body
None
### Response
#### Success Response (200)
- **size** (Array[integer], optional) - Defines the size of the graphical elements.
- **spliters** (Array[number], optional) - Required. 6 items. Defines splitters for styling.
- **fill** (Array[string], optional) - Optional. 7 items. Defines fill colors.
- **fillOpacity** (Array[number], optional) - Optional. 7 items. Defines fill opacity.
- **stroke** (Array[string], optional) - Optional. 7 items. Defines stroke colors.
- **strokeWidth** (Array[number], optional) - Optional. 7 items. Defines stroke width.
#### Response Example
```json
{
"size": [
0
],
"spliters": [
0
],
"fill": [
"string"
],
"fillOpacity": [
0
],
"stroke": [
"string"
],
"strokeWidth": [
0
]
}
```
```
--------------------------------
### Create System Request Model (JSON/XML)
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Defines the request model for creating a system, including an optional file ID and SRID. Supports JSON and XML formats.
```json
{
"fileId": "string",
"srid": 0
}
```
```xml
string
1
```
--------------------------------
### General Settings API
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Endpoints for managing system-wide general settings using key-based access.
```APIDOC
## DELETE /api/generalsettings/{key}
### Description
Deletes a general setting for a given key.
### Method
DELETE
### Endpoint
/api/generalsettings/{key}
### Parameters
#### Path Parameters
- **key** (string) - Required - The unique key of the setting to delete.
### Response
#### Success Response (200)
- **status** (string) - OK
---
## GET /api/generalsettings/{key}
### Description
Retrieves the value of a general setting for a specified key.
### Method
GET
### Endpoint
/api/generalsettings/{key}
### Parameters
#### Path Parameters
- **key** (string) - Required - The unique key of the setting to retrieve.
### Response
#### Success Response (200)
- **value** (string) - The setting value.
---
## PUT /api/generalsettings/{key}
### Description
Creates or updates a general setting for a given key.
### Method
PUT
### Endpoint
/api/generalsettings/{key}
### Parameters
#### Path Parameters
- **key** (string) - Required - The unique key of the setting.
#### Request Body
- **value** (string) - Required - The value to store for the key.
```
--------------------------------
### GET /api/leakage/reports
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Retrieves the configuration for leakage reports.
```APIDOC
## GET /api/leakage/reports
### Description
Get the reports configuration.
### Method
GET
### Endpoint
/api/leakage/reports
### Response
#### Success Response (200)
- **Response Body** - The response body contains the report configuration. (Specific structure not detailed in the provided text)
### Response Example
(No specific example provided in the input text)
```
--------------------------------
### POST /api/leakage/systemSetup/importData
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Imports data into the system. Requires a file ID for the data to be imported.
```APIDOC
## POST /api/leakage/systemSetup/importData
### Description
Imports data into the system. Requires a file ID for the data to be imported.
### Method
POST
### Endpoint
/api/leakage/systemSetup/importData
### Parameters
#### Query Parameters
- **model** (object) - Required - The data model for the import.
### Request Body
- **fileId** (string) - Optional - The ID of the file to import.
### Request Example
```json
{
"fileId": "string"
}
```
### Response
#### Success Response (200)
- **status** (string) - The status of the operation ('succeed', 'warning', 'error').
- **message** (string) - A translated message based on the status.
- **log** (Array[string]) - A list of performed actions.
- **warnings** (Array[string]) - A list of any warnings.
- **error** (string) - Any error message.
- **id** (string) - The ID used for system update.
#### Response Example
```json
{
"status": "succeed",
"message": "Data imported successfully.",
"log": [
"File processed."
],
"warnings": [],
"error": null,
"id": "00000000-0000-0000-0000-000000000000"
}
```
```
--------------------------------
### GET /api/gis/projections
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Retrieves a list of available GIS projections.
```APIDOC
## GET /api/gis/projections
### Description
Gets a list of available projections.
### Method
GET
### Endpoint
/api/gis/projections
### Response
#### Success Response (200)
- **Inline Model** (array) - An array of projection objects.
- **srid** (integer, optional) - The SRID of the projection.
- **name** (string, optional) - The name of the projection.
- **authName** (string, optional) - The authentication name of the projection.
- **authSrid** (integer, optional) - The authentication SRID of the projection.
### Response Example
```json
[
{
"srid": 0,
"name": "string",
"authName": "string",
"authSrid": 0
}
]
```
```
--------------------------------
### Install Endpoint Response (XML)
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Represents a response from the '/api/leakage/install/install' endpoint. The provided XML is marked as invalid and likely serves as a placeholder or error indicator.
```xml
```
--------------------------------
### GET /api/Text/{id}
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Retrieves text data for a specific ID.
```APIDOC
## GET /api/Text/{id}
### Description
Retrieves text data for a specific ID.
### Method
GET
### Endpoint
/api/Text/{id}
### Parameters
#### Path Parameters
- **id** (string) - Required - The ID of the text to retrieve.
### Response
#### Success Response (200)
- **object** - Returns an empty object for a successful response.
#### Response Example
{}
```
--------------------------------
### POST /api/singleStorage
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Creates a new storage item. If an item with the same name and type already exists for the user, an exception is thrown.
```APIDOC
## POST /api/singleStorage
### Description
Creates a new storage item. If a bookmark with the same name and type already exists for the user, an exception will be thrown. Returns the ID of the newly created item.
### Method
POST
### Endpoint
/api/singleStorage
### Parameters
#### Request Body
- **item** (StorageItemModel) - Required - The storage item to create.
- **id** (integer, optional) - The unique identifier of the item.
- **name** (string, optional) - The name of the item.
- **type** (string, optional) - The type of the item.
- **content** (string, optional) - The content of the item.
- **isPublic** (boolean, optional) - Indicates if the item is public.
- **user** (UserNameCompanyModel, optional) - Information about the user who owns the item.
- **company** (string, optional) - The company the user belongs to.
- **userName** (string, optional) - The username.
### Request Example
```json
{
"id": 0,
"name": "string",
"type": "string",
"content": "string",
"isPublic": true,
"user": {
"company": "string",
"userName": "string"
}
}
```
### Response
#### Success Response (200)
- **id** (integer) - The ID of the newly created storage item.
#### Response Example
```json
{
"id": 123
}
```
```
--------------------------------
### GET /api/leakage/supplyZones/zoneIdTagList
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Returns the list of supply zone ID-tag pairs.
```APIDOC
## GET /api/leakage/supplyZones/zoneIdTagList
### Description
Returns the list of supply zone ID-tag pairs.
### Method
GET
### Endpoint
/api/leakage/supplyZones/zoneIdTagList
### Parameters
#### Path Parameters
None
#### Query Parameters
None
### Request Example
None
### Response
#### Success Response (200)
- **Id** (integer, optional) - Required
- **Tag** (string, optional) - Optional
#### Response Example
```json
[
{
"Id": 0,
"Tag": "string"
}
]
```
```xml
1
string
```
```
--------------------------------
### GET /api/leakage/backup/status
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Retrieves the current status of a backup or restore operation.
```APIDOC
## GET /api/leakage/backup/status
### Description
Returns the current status of the backup or restore process. Returns null if no operation is running.
### Method
GET
### Endpoint
/api/leakage/backup/status
### Response
#### Success Response (200)
- **operation** (string) - The type of operation (backup/restore).
- **startedBy** (string) - User who initiated the operation.
- **status** (string) - Current status (waiting, backuping, restoring, canceling).
#### Response Example
{
"operation": "backup",
"startedBy": "admin",
"status": "backuping"
}
```
--------------------------------
### GET /api/leakage/alarms/configuration
Source: https://development.waternet.dhigroup.com/lm_full_webapi/swagger/ui/index
Retrieves the current configuration settings for system alarms.
```APIDOC
## GET /api/leakage/alarms/configuration
### Description
Get the alarms configuration.
### Method
GET
### Endpoint
/api/leakage/alarms/configuration
### Response
#### Success Response (200)
- **Status** (string) - OK
```