@openremote/rest 1.32.0 → 1.32.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9,180 +9,69 @@ export interface HttpClient<O> {
9
9
  options?: O;
10
10
  }): RestResponse<R>;
11
11
  }
12
- export declare class StatusResourceClient<O> {
13
- protected httpClient: HttpClient<O>;
14
- constructor(httpClient: HttpClient<O>);
15
- /**
16
- * Returns health data keyed by registered health-provider name. A null provider result is represented as JSON null.
17
- * HTTP GET /health
18
- * Java method: org.openremote.model.system.StatusResource.getHealthStatus
19
- */
20
- getHealthStatus(options?: O): RestResponse<{
21
- [index: string]: any;
22
- }>;
23
- /**
24
- * Returns public bootstrap information, including the Manager version and identity-provider URL.
25
- * HTTP GET /info
26
- * Java method: org.openremote.model.system.StatusResource.getInfo
27
- */
28
- getInfo(options?: O): RestResponse<{
29
- [index: string]: any;
30
- }>;
31
- }
32
- export declare class UserResourceClient<O> {
12
+ export declare class DashboardResourceClient<O> {
33
13
  protected httpClient: HttpClient<O>;
34
14
  constructor(httpClient: HttpClient<O>);
35
15
  /**
36
- * Stores the supplied non-empty locale string as the caller's identity-provider locale attribute. The target realm must be active unless the caller is a superuser.
37
- * HTTP PUT /user/locale
38
- * Java method: org.openremote.model.security.UserResource.updateCurrentUserLocale
39
- */
40
- updateCurrentUserLocale(locale: string, options?: O): RestResponse<void>;
41
- /**
42
- * Executes a UserQuery. Non-super users are forced into their authenticated realm and cannot see system accounts; callers with read-users but not read-admin receive basic fields only. The target realm must be active unless the caller is a superuser.
43
- * HTTP POST /user/query
44
- * Java method: org.openremote.model.security.UserResource.query
45
- */
46
- query(query: Model.UserQuery, options?: O): RestResponse<Model.User[]>;
47
- /**
48
- * Initiates the identity provider's configured password-reset action for the caller's own account. The target realm must be active unless the caller is a superuser.
49
- * HTTP PUT /user/request-password-reset
50
- * Java method: org.openremote.model.security.UserResource.requestPasswordResetCurrent
51
- */
52
- requestPasswordResetCurrent(options?: O): RestResponse<void>;
53
- /**
54
- * Replaces the caller's own identity-provider credential using the supplied credential representation. The target realm must be active unless the caller is a superuser.
55
- * HTTP PUT /user/reset-password
56
- * Java method: org.openremote.model.security.UserResource.updatePasswordCurrent
57
- */
58
- updatePasswordCurrent(credential: Model.Credential, options?: O): RestResponse<void>;
59
- /**
60
- * Updates the caller's own profile. A supplied user ID must match the access token; role and realm administration are not provided by this endpoint. The target realm must be active unless the caller is a superuser.
61
- * HTTP PUT /user/update
62
- * Java method: org.openremote.model.security.UserResource.updateCurrent
63
- */
64
- updateCurrent(user: Model.User, options?: O): RestResponse<Model.User>;
65
- /**
66
- * Returns the identity-provider record corresponding to the current access token. The target realm must be active unless the caller is a superuser.
67
- * HTTP GET /user/user
68
- * Java method: org.openremote.model.security.UserResource.getCurrent
69
- */
70
- getCurrent(options?: O): RestResponse<Model.User>;
71
- /**
72
- * Returns realm-level role names assigned to the caller. The target realm must be active unless the caller is a superuser.
73
- * HTTP GET /user/userRealmRoles
74
- * Java method: org.openremote.model.security.UserResource.getCurrentUserRealmRoles
75
- */
76
- getCurrentUserRealmRoles(options?: O): RestResponse<string[]>;
77
- /**
78
- * Returns role names assigned to the caller for the named identity-provider client. The target realm must be active unless the caller is a superuser.
79
- * HTTP GET /user/userRoles/{clientId}
80
- * Java method: org.openremote.model.security.UserResource.getCurrentUserClientRoles
81
- */
82
- getCurrentUserClientRoles(clientId: string, options?: O): RestResponse<string[]>;
83
- /**
84
- * Terminates the active MQTT connection identified by sessionID. The realm must match the session owner's realm. Authenticated users may disconnect their own sessions without an additional client role. Disconnecting another user's session requires the openremote client role write:admin or superuser status. Non-superusers are limited to their own active realm; superusers may disconnect sessions across realms, including inactive realms.
85
- * Response code 403 - The realm is inactive for a non-superuser, or the caller is neither the session owner, a user with write:admin, nor a superuser
86
- * Response code 404 - The session or its owning user does not exist, or the session does not belong to the specified realm
87
- * Response code 405 - A non-superuser cannot access the session owner's realm
88
- * HTTP DELETE /user/{realm}/disconnect/{sessionID}
89
- * Java method: org.openremote.model.security.UserResource.disconnectUserSession
90
- */
91
- disconnectUserSession(realm: string, sessionID: string, options?: O): RestResponse<void>;
92
- /**
93
- * Asks the identity provider to send or initiate its configured password-reset action for the specified user. The target realm must be active unless the caller is a superuser.
94
- * Response code 405 - The caller cannot mutate a user in the requested realm
95
- * HTTP PUT /user/{realm}/request-password-reset/{userId}
96
- * Java method: org.openremote.model.security.UserResource.requestPasswordReset
97
- */
98
- requestPasswordReset(realm: string, userId: string, options?: O): RestResponse<void>;
99
- /**
100
- * Replaces a user's credential in an administered realm using the supplied credential representation. The target realm must be active unless the caller is a superuser.
101
- * Response code 405 - The caller cannot mutate a user in the requested realm
102
- * HTTP PUT /user/{realm}/reset-password/{userId}
103
- * Java method: org.openremote.model.security.UserResource.updatePassword
104
- */
105
- updatePassword(realm: string, userId: string, credential: Model.Credential, options?: O): RestResponse<void>;
106
- /**
107
- * Generates and returns a new client secret for a service user in an administered realm. The target realm must be active unless the caller is a superuser.
108
- * HTTP GET /user/{realm}/reset-secret/{userId}
109
- * Java method: org.openremote.model.security.UserResource.resetSecret
110
- */
111
- resetSecret(realm: string, userId: string, options?: O): RestResponse<string>;
112
- /**
113
- * Creates, updates, or removes role definitions for the default OpenRemote client in the requested realm. The target realm must be active unless the caller is a superuser.
114
- * HTTP PUT /user/{realm}/roles
115
- * Java method: org.openremote.model.security.UserResource.updateRoles
116
- */
117
- updateRoles(realm: string, roles: Model.Role[], options?: O): RestResponse<void>;
118
- /**
119
- * Returns realm-level role names assigned to one user. Without read-admin permission, callers may retrieve only their own roles. The target realm must be active unless the caller is a superuser.
120
- * HTTP GET /user/{realm}/userRealmRoles/{userId}
121
- * Java method: org.openremote.model.security.UserResource.getUserRealmRoles
122
- */
123
- getUserRealmRoles(realm: string, userId: string, options?: O): RestResponse<string[]>;
124
- /**
125
- * Replaces the user's assigned realm-level role names in an administered realm. The target realm must be active unless the caller is a superuser.
126
- * HTTP PUT /user/{realm}/userRealmRoles/{userId}
127
- * Java method: org.openremote.model.security.UserResource.updateUserRealmRoles
128
- */
129
- updateUserRealmRoles(realm: string, userId: string, roles: string[], options?: O): RestResponse<void>;
130
- /**
131
- * Returns role names assigned to one user for the named client. Without read-admin permission, callers may retrieve only their own roles. The target realm must be active unless the caller is a superuser.
132
- * HTTP GET /user/{realm}/userRoles/{userId}/{clientId}
133
- * Java method: org.openremote.model.security.UserResource.getUserClientRoles
16
+ * Creates a dashboard in an accessible realm. The server assigns the authenticated user as owner and initially stores the dashboard with shared access.
17
+ * HTTP POST /dashboard
18
+ * Java method: org.openremote.model.dashboard.DashboardResource.create
134
19
  */
135
- getUserClientRoles(realm: string, userId: string, clientId: string, options?: O): RestResponse<string[]>;
20
+ create(dashboard: Model.Dashboard, options?: O): RestResponse<Model.Dashboard>;
136
21
  /**
137
- * Replaces the user's assigned role names for the named client in an administered realm. The target realm must be active unless the caller is a superuser.
138
- * HTTP PUT /user/{realm}/userRoles/{userId}/{clientId}
139
- * Java method: org.openremote.model.security.UserResource.updateUserClientRoles
22
+ * Updates an existing dashboard when the authenticated user can modify it in the dashboard's realm.
23
+ * HTTP PUT /dashboard
24
+ * Java method: org.openremote.model.dashboard.DashboardResource.update
140
25
  */
141
- updateUserClientRoles(realm: string, userId: string, clientId: string, roles: string[], options?: O): RestResponse<void>;
26
+ update(dashboard: Model.Dashboard, options?: O): RestResponse<Model.Dashboard>;
142
27
  /**
143
- * Returns active MQTT sessions for one user, including connection ID, creation time, and remote address. Without read-admin permission, callers may inspect only themselves. The target realm must be active unless the caller is a superuser.
144
- * HTTP GET /user/{realm}/userSessions/{userId}
145
- * Java method: org.openremote.model.security.UserResource.getUserSessions
28
+ * Returns dashboards visible to the caller in the requested realm. Anonymous callers receive public dashboards only; authenticated access also depends on roles, ownership, and linked assets.
29
+ * HTTP GET /dashboard/all/{realm}
30
+ * Java method: org.openremote.model.dashboard.DashboardResource.getAllRealmDashboards
146
31
  */
147
- getUserSessions(realm: string, userId: string, options?: O): RestResponse<Model.UserSession[]>;
32
+ getAllRealmDashboards(realm: string, options?: O): RestResponse<Model.Dashboard[]>;
148
33
  /**
149
- * Creates an identity-provider user in a realm administered by the caller and returns the resulting user record. The target realm must be active unless the caller is a superuser.
150
- * HTTP POST /user/{realm}/users
151
- * Java method: org.openremote.model.security.UserResource.create
34
+ * Executes a dashboard query after constraining it to the caller's realm, roles, ownership, and asset access. A missing body uses the request realm and default visibility rules.
35
+ * HTTP POST /dashboard/query
36
+ * Java method: org.openremote.model.dashboard.DashboardResource.query
152
37
  */
153
- create(realm: string, user: Model.User, options?: O): RestResponse<Model.User>;
38
+ query(dashboardQuery: Model.DashboardQuery, options?: O): RestResponse<Model.Dashboard[]>;
154
39
  /**
155
- * Updates an existing identity-provider user in an administered realm. The master administrator cannot be disabled. The target realm must be active unless the caller is a superuser.
156
- * Response code 405 - The requested cross-realm or protected master-administrator mutation is not allowed
157
- * HTTP PUT /user/{realm}/users
158
- * Java method: org.openremote.model.security.UserResource.update
40
+ * Permanently removes a dashboard when the authenticated user can modify it in the requested realm.
41
+ * HTTP DELETE /dashboard/{realm}/{dashboardId}
42
+ * Java method: org.openremote.model.dashboard.DashboardResource.delete
159
43
  */
160
- update(realm: string, user: Model.User, options?: O): RestResponse<Model.User>;
44
+ delete(realm: string, dashboardId: string, options?: O): RestResponse<void>;
161
45
  /**
162
- * Permanently deletes a user from an administered realm. The master-realm administrator cannot be deleted. The target realm must be active unless the caller is a superuser.
163
- * Response code 405 - The master-realm administrator cannot be deleted
164
- * HTTP DELETE /user/{realm}/users/{userId}
165
- * Java method: org.openremote.model.security.UserResource.delete
46
+ * Returns one dashboard only when it is visible to the caller. Inaccessible and nonexistent dashboards both return 404 to avoid disclosing their existence.
47
+ * HTTP GET /dashboard/{realm}/{dashboardId}
48
+ * Java method: org.openremote.model.dashboard.DashboardResource.get
166
49
  */
167
- delete(realm: string, userId: string, options?: O): RestResponse<void>;
50
+ get(realm: string, dashboardId: string, options?: O): RestResponse<Model.Dashboard>;
51
+ }
52
+ export declare class AppResourceClient<O> {
53
+ protected httpClient: HttpClient<O>;
54
+ constructor(httpClient: HttpClient<O>);
168
55
  /**
169
- * Returns all role definitions exposed by the named identity-provider client. Realm-administrator access is required. The target realm must be active unless the caller is a superuser.
170
- * HTTP GET /user/{realm}/{clientId}/roles
171
- * Java method: org.openremote.model.security.UserResource.getClientRoles
56
+ * Returns the identifiers of applications installed in the Manager web root.
57
+ * HTTP GET /apps
58
+ * Java method: org.openremote.model.apps.AppResource.getApps
172
59
  */
173
- getClientRoles(realm: string, clientId: string, options?: O): RestResponse<Model.Role[]>;
60
+ getApps(options?: O): RestResponse<string[]>;
174
61
  /**
175
- * Creates, updates, or removes role definitions for a named identity-provider client. The target realm must be active unless the caller is a superuser.
176
- * HTTP PUT /user/{realm}/{clientId}/roles
177
- * Java method: org.openremote.model.security.UserResource.updateClientRoles
62
+ * Loads the public console_config.json document used to configure console clients before sign-in.
63
+ * HTTP GET /apps/consoleConfig
64
+ * Java method: org.openremote.model.apps.AppResource.getConsoleConfig
178
65
  */
179
- updateClientRoles(realm: string, clientId: string, roles: Model.Role[], options?: O): RestResponse<void>;
66
+ getConsoleConfig(options?: O): RestResponse<any>;
180
67
  /**
181
- * Returns one user when it belongs to the requested accessible realm. Without read-admin permission, callers may retrieve only their own user. The target realm must be active unless the caller is a superuser.
182
- * HTTP GET /user/{realm}/{userId}
183
- * Java method: org.openremote.model.security.UserResource.get
68
+ * Loads each installed application's info.json file and returns the documents keyed by application identifier.
69
+ * HTTP GET /apps/info
70
+ * Java method: org.openremote.model.apps.AppResource.getAppInfos
184
71
  */
185
- get(realm: string, userId: string, options?: O): RestResponse<Model.User>;
72
+ getAppInfos(options?: O): RestResponse<{
73
+ [index: string]: any;
74
+ }>;
186
75
  }
187
76
  export declare class ProvisioningResourceClient<O> {
188
77
  protected httpClient: HttpClient<O>;
@@ -212,131 +101,134 @@ export declare class ProvisioningResourceClient<O> {
212
101
  */
213
102
  updateProvisioningConfig(id: number, provisioningConfig: Model.ProvisioningConfigUnion<any, any>, options?: O): RestResponse<void>;
214
103
  }
215
- export declare class AssetPredictedDatapointResourceClient<O> {
104
+ export declare class GatewayServiceResourceClient<O> {
216
105
  protected httpClient: HttpClient<O>;
217
106
  constructor(httpClient: HttpClient<O>);
218
107
  /**
219
- * Queries predicted values for one attribute using the supplied time-range and aggregation criteria. Anonymous access requires public-read access on both asset and attribute.
220
- * HTTP POST /asset/predicted/{assetId}/{attributeName}
221
- * Java method: org.openremote.model.datapoint.AssetPredictedDatapointResource.getPredictedDatapoints
108
+ * Requests a TCP tunnel through a connected gateway and returns its allocated local endpoint. When realm is omitted, the authenticated realm is used.
109
+ * Response code 417 - The gateway could not establish the requested tunnel
110
+ * HTTP POST /gateway/tunnel
111
+ * Java method: org.openremote.model.gateway.GatewayServiceResource.startTunnel
222
112
  */
223
- getPredictedDatapoints(assetId: string, attributeName: string, query: Model.AssetDatapointQueryUnion, options?: O): RestResponse<Model.ValueDatapoint<any>[]>;
113
+ startTunnel(tunnelInfo: Model.GatewayTunnelInfo, options?: O): RestResponse<Model.GatewayTunnelInfo>;
224
114
  /**
225
- * Replaces or adds predicted values for one attribute. Anonymous access is allowed only when the asset and attribute are public-write; authenticated callers require attribute-write access.
226
- * HTTP PUT /asset/predicted/{assetId}/{attributeName}
227
- * Java method: org.openremote.model.datapoint.AssetPredictedDatapointResource.writePredictedDatapoints
115
+ * Stops the tunnel identified by the supplied gateway, target, and port information. When realm is omitted, the authenticated realm is used.
116
+ * HTTP DELETE /gateway/tunnel
117
+ * Java method: org.openremote.model.gateway.GatewayServiceResource.stopTunnel
228
118
  */
229
- writePredictedDatapoints(assetId: string, attributeName: string, predictedDatapoints: Model.ValueDatapoint<any>[], options?: O): RestResponse<void>;
230
- }
231
- export declare class DashboardResourceClient<O> {
232
- protected httpClient: HttpClient<O>;
233
- constructor(httpClient: HttpClient<O>);
119
+ stopTunnel(tunnelInfo: Model.GatewayTunnelInfo, options?: O): RestResponse<void>;
234
120
  /**
235
- * Creates a dashboard in an accessible realm. The server assigns the authenticated user as owner and initially stores the dashboard with shared access.
236
- * HTTP POST /dashboard
237
- * Java method: org.openremote.model.dashboard.DashboardResource.create
121
+ * Returns active tunnels for all gateway assets in the requested realm. Restricted users cannot list an entire realm.
122
+ * HTTP GET /gateway/tunnel/{realm}
123
+ * Java method: org.openremote.model.gateway.GatewayServiceResource.getAllActiveTunnelInfos
238
124
  */
239
- create(dashboard: Model.Dashboard, options?: O): RestResponse<Model.Dashboard>;
125
+ getAllActiveTunnelInfos(realm: string, options?: O): RestResponse<Model.GatewayTunnelInfo[]>;
240
126
  /**
241
- * Updates an existing dashboard when the authenticated user can modify it in the dashboard's realm.
242
- * HTTP PUT /dashboard
243
- * Java method: org.openremote.model.dashboard.DashboardResource.update
127
+ * Returns active tunnels for one gateway asset. Restricted users may query only a linked gateway.
128
+ * HTTP GET /gateway/tunnel/{realm}/{id}
129
+ * Java method: org.openremote.model.gateway.GatewayServiceResource.getGatewayActiveTunnelInfos
244
130
  */
245
- update(dashboard: Model.Dashboard, options?: O): RestResponse<Model.Dashboard>;
131
+ getGatewayActiveTunnelInfos(realm: string, id: string, options?: O): RestResponse<Model.GatewayTunnelInfo[]>;
246
132
  /**
247
- * Returns dashboards visible to the caller in the requested realm. Anonymous callers receive public dashboards only; authenticated access also depends on roles, ownership, and linked assets.
248
- * HTTP GET /dashboard/all/{realm}
249
- * Java method: org.openremote.model.dashboard.DashboardResource.getAllRealmDashboards
133
+ * Returns the tunnel matching realm, gateway, target host, and target port, or null when no active tunnel matches.
134
+ * Response code 204 - No active tunnel matches the requested endpoint
135
+ * HTTP GET /gateway/tunnel/{realm}/{id}/{target}/{targetPort}
136
+ * Java method: org.openremote.model.gateway.GatewayServiceResource.getActiveTunnelInfo
250
137
  */
251
- getAllRealmDashboards(realm: string, options?: O): RestResponse<Model.Dashboard[]>;
138
+ getActiveTunnelInfo(realm: string, id: string, target: string, targetPort: number, options?: O): RestResponse<Model.GatewayTunnelInfo>;
139
+ }
140
+ export declare class AssetDatapointResourceClient<O> {
141
+ protected httpClient: HttpClient<O>;
142
+ constructor(httpClient: HttpClient<O>);
252
143
  /**
253
- * Executes a dashboard query after constraining it to the caller's realm, roles, ownership, and asset access. A missing body uses the request realm and default visibility rules.
254
- * HTTP POST /dashboard/query
255
- * Java method: org.openremote.model.dashboard.DashboardResource.query
144
+ * Streams a ZIP archive containing exported datapoints for one or more attribute references over the requested inclusive time range. attributeRefs is a JSON-encoded array of objects with id and name fields.
145
+ * Response code 200 - A ZIP archive containing the exported data
146
+ * HTTP GET /asset/datapoint/export
147
+ * Java method: org.openremote.model.datapoint.AssetDatapointResource.getDatapointExport
256
148
  */
257
- query(dashboardQuery: Model.DashboardQuery, options?: O): RestResponse<Model.Dashboard[]>;
149
+ getDatapointExport(queryParams?: {
150
+ attributeRefs?: string;
151
+ fromTimestamp?: number;
152
+ toTimestamp?: number;
153
+ format?: Model.DatapointExportFormat;
154
+ }, options?: O): RestResponse<any>;
258
155
  /**
259
- * Permanently removes a dashboard when the authenticated user can modify it in the requested realm.
260
- * HTTP DELETE /dashboard/{realm}/{dashboardId}
261
- * Java method: org.openremote.model.dashboard.DashboardResource.delete
156
+ * Returns the oldest and newest stored timestamps for one attribute. The asset and attribute must be readable by the authenticated user and configured for datapoint storage.
157
+ * HTTP GET /asset/datapoint/periods
158
+ * Java method: org.openremote.model.datapoint.AssetDatapointResource.getDatapointPeriod
262
159
  */
263
- delete(realm: string, dashboardId: string, options?: O): RestResponse<void>;
160
+ getDatapointPeriod(queryParams?: {
161
+ assetId?: string;
162
+ attributeName?: string;
163
+ }, options?: O): RestResponse<Model.DatapointPeriod>;
264
164
  /**
265
- * Returns one dashboard only when it is visible to the caller. Inaccessible and nonexistent dashboards both return 404 to avoid disclosing their existence.
266
- * HTTP GET /dashboard/{realm}/{dashboardId}
267
- * Java method: org.openremote.model.dashboard.DashboardResource.get
165
+ * Returns stored historical values for one attribute. A null body returns the available series; a polymorphic query body controls the time range and retrieval or aggregation strategy. Anonymous access requires public-read access on both asset and attribute.
166
+ * HTTP POST /asset/datapoint/{assetId}/{attributeName}
167
+ * Java method: org.openremote.model.datapoint.AssetDatapointResource.getDatapoints
268
168
  */
269
- get(realm: string, dashboardId: string, options?: O): RestResponse<Model.Dashboard>;
169
+ getDatapoints(assetId: string, attributeName: string, query: Model.AssetDatapointQueryUnion, options?: O): RestResponse<Model.ValueDatapoint<any>[]>;
270
170
  }
271
- export declare class AlarmResourceClient<O> {
171
+ export declare class ExternalServiceResourceClient<O> {
272
172
  protected httpClient: HttpClient<O>;
273
173
  constructor(httpClient: HttpClient<O>);
274
174
  /**
275
- * Creates a manual alarm in an accessible realm and optionally links it to the supplied asset IDs. The authenticated user or client becomes the alarm source.
276
- * HTTP POST /alarm
277
- * Java method: org.openremote.model.alarm.AlarmResource.createAlarm
278
- */
279
- createAlarm(alarm: Model.Alarm, queryParams?: {
280
- assetIds?: string[];
281
- }, options?: O): RestResponse<Model.SentAlarm>;
282
- /**
283
- * Returns alarms in the requested accessible realm, optionally filtered by status, linked asset, or assignee. When realm is omitted, the authenticated realm is used.
284
- * HTTP GET /alarm
285
- * Java method: org.openremote.model.alarm.AlarmResource.getAlarms
175
+ * Returns all active realm-scoped service registrations for an active realm accessible to the caller.
176
+ * Response code 200 - List of registered external services
177
+ * HTTP GET /service
178
+ * Java method: org.openremote.model.services.ExternalServiceResource.getServices
286
179
  */
287
- getAlarms(queryParams?: {
180
+ getServices(queryParams?: {
288
181
  realm?: string;
289
- status?: Model.AlarmStatus;
290
- assetId?: string;
291
- assigneeId?: string;
292
- }, options?: O): RestResponse<Model.SentAlarm[]>;
182
+ }, options?: O): RestResponse<Model.ExternalService[]>;
293
183
  /**
294
- * Permanently removes all alarms identified by the request body after verifying access to every alarm's realm.
295
- * HTTP DELETE /alarm
296
- * Java method: org.openremote.model.alarm.AlarmResource.removeAlarms
184
+ * Registers a realm-scoped service instance for the request realm. The caller must be a service account; the returned object contains the assigned instance ID and initial lease state.
185
+ * Response code 200 - Service registered successfully
186
+ * Response code 400 - Invalid external service object
187
+ * Response code 409 - ExternalService instance already registered
188
+ * HTTP POST /service
189
+ * Java method: org.openremote.model.services.ExternalServiceResource.registerService
297
190
  */
298
- removeAlarms(ids: number[], options?: O): RestResponse<void>;
191
+ registerService(service: Model.ExternalService, options?: O): RestResponse<Model.ExternalService>;
299
192
  /**
300
- * Adds links between assets and one existing alarm.
301
-
302
- The request body is a list for backward compatibility, but this operation now has single-alarm semantics:
303
- every item must contain the same `id.realm` and the same `id.alarmId`. The alarm must exist in that realm,
304
- every asset must exist in the same realm, and the authenticated user must have access to that realm. Requests
305
- containing mixed alarm IDs or realms are rejected as bad requests.
306
-
307
- Existing links are left unchanged; duplicate links in the request or links that already exist are ignored.
308
- This operation does not remove existing links from the alarm.
309
-
310
- * HTTP PUT /alarm/assets
311
- * Java method: org.openremote.model.alarm.AlarmResource.setAssetLinks
193
+ * Returns active registrations marked as globally available across realms.
194
+ * Response code 200 - List of registered external services
195
+ * HTTP GET /service/global
196
+ * Java method: org.openremote.model.services.ExternalServiceResource.getGlobalServices
312
197
  */
313
- setAssetLinks(links: Model.AlarmAssetLink[], options?: O): RestResponse<void>;
198
+ getGlobalServices(options?: O): RestResponse<Model.ExternalService[]>;
314
199
  /**
315
- * Returns one alarm when its realm is active and accessible to the authenticated user.
316
- * HTTP GET /alarm/{alarmId}
317
- * Java method: org.openremote.model.alarm.AlarmResource.getAlarm
200
+ * Registers a service visible in every realm. The caller must be a super-user service account and the request must use the master realm.
201
+ * Response code 200 - Service registered successfully
202
+ * Response code 400 - Invalid external service object
203
+ * Response code 409 - ExternalService instance already registered
204
+ * HTTP POST /service/global
205
+ * Java method: org.openremote.model.services.ExternalServiceResource.registerGlobalService
318
206
  */
319
- getAlarm(alarmId: number, options?: O): RestResponse<Model.SentAlarm>;
207
+ registerGlobalService(service: Model.ExternalService, options?: O): RestResponse<Model.ExternalService>;
320
208
  /**
321
- * Permanently removes one alarm after verifying access to its realm.
322
- * HTTP DELETE /alarm/{alarmId}
323
- * Java method: org.openremote.model.alarm.AlarmResource.removeAlarm
209
+ * Removes an active service registration. The caller must be the service account that registered it; global-service removal additionally requires a super user.
210
+ * Response code 204 - Service deregistered successfully
211
+ * Response code 404 - Service instance not found
212
+ * HTTP DELETE /service/{serviceId}/{instanceId}
213
+ * Java method: org.openremote.model.services.ExternalServiceResource.deregisterService
324
214
  */
325
- removeAlarm(alarmId: number, options?: O): RestResponse<void>;
215
+ deregisterService(serviceId: string, instanceId: number, options?: O): RestResponse<void>;
326
216
  /**
327
- * Updates the mutable state of an existing alarm after verifying access to its current realm.
328
- * HTTP PUT /alarm/{alarmId}
329
- * Java method: org.openremote.model.alarm.AlarmResource.updateAlarm
217
+ * Returns one registered instance by stable service ID and numeric instance ID, after verifying access to the service's realm.
218
+ * Response code 200 - ExternalService retrieved successfully
219
+ * Response code 404 - ExternalService not found
220
+ * HTTP GET /service/{serviceId}/{instanceId}
221
+ * Java method: org.openremote.model.services.ExternalServiceResource.getService
330
222
  */
331
- updateAlarm(alarmId: number, alarm: Model.SentAlarm, options?: O): RestResponse<void>;
223
+ getService(serviceId: string, instanceId: number, options?: O): RestResponse<Model.ExternalService>;
332
224
  /**
333
- * Returns links from the alarm to assets in the explicitly supplied accessible realm.
334
- * HTTP GET /alarm/{alarmId}/assets
335
- * Java method: org.openremote.model.alarm.AlarmResource.getAssetLinks
225
+ * Extends the lease of one service instance. The caller must be the service account that registered it; global-service heartbeats additionally require a super user.
226
+ * Response code 204 - Heartbeat sent successfully
227
+ * Response code 404 - Service instance not found
228
+ * HTTP PUT /service/{serviceId}/{instanceId}
229
+ * Java method: org.openremote.model.services.ExternalServiceResource.heartbeat
336
230
  */
337
- getAssetLinks(alarmId: number, queryParams?: {
338
- realm?: string;
339
- }, options?: O): RestResponse<Model.AlarmAssetLink[]>;
231
+ heartbeat(serviceId: string, instanceId: number, options?: O): RestResponse<void>;
340
232
  }
341
233
  export declare class GatewayClientResourceClient<O> {
342
234
  protected httpClient: HttpClient<O>;
@@ -381,382 +273,376 @@ export declare class GatewayClientResourceClient<O> {
381
273
  */
382
274
  getConnectionStatus(realm: string, options?: O): RestResponse<Model.ConnectionStatus>;
383
275
  }
384
- export declare class AssetResourceClient<O> {
276
+ export declare class MapResourceClient<O> {
385
277
  protected httpClient: HttpClient<O>;
386
278
  constructor(httpClient: HttpClient<O>);
387
279
  /**
388
- * Creates an asset in an accessible realm and returns the persisted representation. The server generates an ID when absent; supplied IDs must be globally unique and 22 characters long.
389
- * HTTP POST /asset
390
- * Java method: org.openremote.model.asset.AssetResource.create
280
+ * Returns realm-aware public MapLibre settings with externally reachable URLs derived from proxy headers.
281
+ * HTTP GET /map
282
+ * Java method: org.openremote.model.map.MapResource.getSettings
391
283
  */
392
- create(asset: Model.Asset, options?: O): RestResponse<Model.Asset>;
284
+ getSettings(options?: O): RestResponse<{
285
+ [id: string]: unknown;
286
+ }>;
393
287
  /**
394
- * Permanently deletes every asset identified by repeated assetId query parameters, subject to realm and restricted-user access rules.
395
- * HTTP DELETE /asset
396
- * Java method: org.openremote.model.asset.AssetResource.delete
288
+ * Stores the map configuration and returns the resulting public MapLibre settings.
289
+ * HTTP PUT /map
290
+ * Java method: org.openremote.model.map.MapResource.saveSettings
397
291
  */
398
- delete(queryParams?: {
399
- assetId?: string[];
400
- }, options?: O): RestResponse<void>;
292
+ saveSettings(mapConfig: Model.MapConfig, options?: O): RestResponse<{
293
+ [id: string]: unknown;
294
+ }>;
401
295
  /**
402
- * Submits a batch of attribute states using current server time and returns one result per input item. Authorization and processing failures are encoded in each AttributeWriteResult rather than returned as an HTTP error.
403
- * HTTP PUT /asset/attributes
404
- * Java method: org.openremote.model.asset.AssetResource.writeAttributeValues
296
+ * Deletes the installed custom MBTiles database and returns the fallback public map settings.
297
+ * HTTP DELETE /map/deleteMap
298
+ * Java method: org.openremote.model.map.MapResource.deleteMap
405
299
  */
406
- writeAttributeValues(attributeStates: Model.AttributeState[], options?: O): RestResponse<Model.AttributeWriteResult[]>;
300
+ deleteMap(options?: O): RestResponse<{
301
+ [id: string]: unknown;
302
+ }>;
407
303
  /**
408
- * Submits a batch of complete attribute events and returns one result per input item. Supplied timestamps are preserved; authorization and processing failures are encoded per result rather than returned as an HTTP error.
409
- * HTTP PUT /asset/attributes/timestamp
410
- * Java method: org.openremote.model.asset.AssetResource.writeAttributeEvents
304
+ * Reports whether custom MBTiles data is installed and the maximum accepted upload size.
305
+ * HTTP GET /map/getCustomMapInfo
306
+ * Java method: org.openremote.model.map.MapResource.getCustomMapInfo
411
307
  */
412
- writeAttributeEvents(attributeEvents: Model.AttributeEvent[], options?: O): RestResponse<Model.AttributeWriteResult[]>;
308
+ getCustomMapInfo(options?: O): RestResponse<{
309
+ [id: string]: unknown;
310
+ }>;
413
311
  /**
414
- * Returns only the number of assets matching an AssetQuery after applying the caller's realm, public, and linked-asset access constraints.
415
- * HTTP POST /asset/count
416
- * Java method: org.openremote.model.asset.AssetResource.queryCount
312
+ * Returns a pre-compressed Mapbox vector tile for the requested zoom, column, and row coordinates.
313
+ * Response code 200 - Gzip-compressed vector tile
314
+ * Response code 204 - No tile exists at the requested coordinates
315
+ * HTTP GET /map/tile/{zoom}/{column}/{row}
316
+ * Java method: org.openremote.model.map.MapResource.getTile
417
317
  */
418
- queryCount(query: Model.AssetQuery, options?: O): RestResponse<number>;
318
+ getTile(zoom: number, column: number, row: number, options?: O): RestResponse<any>;
419
319
  /**
420
- * Clears the parent reference of every asset listed in repeated assetIds query parameters.
421
- * HTTP DELETE /asset/parent
422
- * Java method: org.openremote.model.asset.AssetResource.updateNoneParent
320
+ * Stores the raw request body as the realm's custom MBTiles database and returns the resulting public map settings.
321
+ * HTTP POST /map/upload
322
+ * Java method: org.openremote.model.map.MapResource.uploadMap
423
323
  */
424
- updateNoneParent(queryParams?: {
425
- assetIds?: string[];
426
- }, options?: O): RestResponse<void>;
324
+ uploadMap(queryParams?: {
325
+ filename?: string;
326
+ }, options?: O): RestResponse<{
327
+ [id: string]: unknown;
328
+ }>;
329
+ }
330
+ export declare class RulesResourceClient<O> {
331
+ protected httpClient: HttpClient<O>;
332
+ constructor(httpClient: HttpClient<O>);
427
333
  /**
428
- * Returns the asset identity and properties without loading attributes or path data. The same access rules as getAsset apply.
429
- * HTTP GET /asset/partial/{assetId}
430
- * Java method: org.openremote.model.asset.AssetResource.getPartial
334
+ * Creates and deploys a global ruleset and returns its numeric ID. Super-user access is required; legacy JavaScript rulesets cannot be created.
335
+ * HTTP POST /rules
336
+ * Java method: org.openremote.model.rules.RulesResource.createGlobalRuleset
431
337
  */
432
- getPartial(assetId: string, options?: O): RestResponse<Model.Asset>;
338
+ createGlobalRuleset(ruleset: Model.GlobalRuleset, options?: O): RestResponse<number>;
433
339
  /**
434
- * Executes an AssetQuery after constraining realm and linked-asset access. Anonymous callers receive public-readable assets only; the query select clause controls which fields are populated.
435
- * HTTP POST /asset/query
436
- * Java method: org.openremote.model.asset.AssetResource.queryAssets
340
+ * Returns global rulesets filtered by repeated language parameters. fullyPopulate controls whether rule source and other large fields are loaded; super-user access is required.
341
+ * HTTP GET /rules
342
+ * Java method: org.openremote.model.rules.RulesResource.getGlobalRulesets
437
343
  */
438
- queryAssets(query: Model.AssetQuery, options?: O): RestResponse<Model.Asset[]>;
344
+ getGlobalRulesets(queryParams?: {
345
+ language?: Model.RulesetLang[];
346
+ fullyPopulate?: boolean;
347
+ }, options?: O): RestResponse<Model.GlobalRuleset[]>;
439
348
  /**
440
- * Applies the same authorization and selection rules as queryAssets, then returns a hierarchy optimized for tree display rather than a flat asset array.
441
- * HTTP POST /asset/tree
442
- * Java method: org.openremote.model.asset.AssetResource.queryAssetTree
349
+ * Creates and deploys a ruleset for an accessible asset and returns its numeric ID. The assetId is taken from the request body.
350
+ * HTTP POST /rules/asset
351
+ * Java method: org.openremote.model.rules.RulesResource.createAssetRuleset
443
352
  */
444
- queryAssetTree(query: Model.AssetQuery, options?: O): RestResponse<Model.AssetTree>;
353
+ createAssetRuleset(ruleset: Model.AssetRuleset, options?: O): RestResponse<number>;
445
354
  /**
446
- * Returns partial linked assets for a restricted user, root assets for an unrestricted realm user, and an empty array for a super user. Attributes and paths are omitted; use getAsset for full details.
447
- * HTTP GET /asset/user/current
448
- * Java method: org.openremote.model.asset.AssetResource.getCurrentUserAssets
355
+ * Returns asset rulesets filtered by language. Callers without full access receive public rulesets only; a nonexistent asset produces an empty array.
356
+ * HTTP GET /rules/asset/for/{assetId}
357
+ * Java method: org.openremote.model.rules.RulesResource.getAssetRulesets
449
358
  */
450
- getCurrentUserAssets(options?: O): RestResponse<Model.Asset[]>;
359
+ getAssetRulesets(assetId: string, queryParams?: {
360
+ language?: Model.RulesetLang[];
361
+ fullyPopulate?: boolean;
362
+ }, options?: O): RestResponse<Model.AssetRuleset[]>;
451
363
  /**
452
- * Creates all supplied links as one operation. Every item must identify the same realm and user, and every referenced realm, user, and asset must exist.
453
- * HTTP POST /asset/user/link
454
- * Java method: org.openremote.model.asset.AssetResource.createUserAssetLinks
364
+ * Permanently removes and undeploys one ruleset from an accessible asset.
365
+ * HTTP DELETE /rules/asset/{id}
366
+ * Java method: org.openremote.model.rules.RulesResource.deleteAssetRuleset
455
367
  */
456
- createUserAssetLinks(userAssets: Model.UserAssetLink[], options?: O): RestResponse<void>;
368
+ deleteAssetRuleset(id: number, options?: O): RestResponse<void>;
457
369
  /**
458
- * Returns user-asset links in the required realm, optionally filtered by userId and assetId. Missing users or assets produce an empty result; restricted users cannot call this operation.
459
- * HTTP GET /asset/user/link
460
- * Java method: org.openremote.model.asset.AssetResource.getUserAssetLinks
370
+ * Returns one fully populated asset ruleset when the caller can access its realm and owning asset.
371
+ * HTTP GET /rules/asset/{id}
372
+ * Java method: org.openremote.model.rules.RulesResource.getAssetRuleset
461
373
  */
462
- getUserAssetLinks(queryParams?: {
463
- realm?: string;
464
- userId?: string;
465
- assetId?: string;
466
- }, options?: O): RestResponse<Model.UserAssetLink[]>;
374
+ getAssetRuleset(id: number, options?: O): RestResponse<Model.AssetRuleset>;
467
375
  /**
468
- * Removes all supplied links. Every item must identify the same realm and user.
469
- * HTTP POST /asset/user/link/delete
470
- * Java method: org.openremote.model.asset.AssetResource.deleteUserAssetLinks
471
- */
472
- deleteUserAssetLinks(userAssets: Model.UserAssetLink[], options?: O): RestResponse<void>;
376
+ * Replaces and redeploys one asset ruleset. The ID must match and an existing ruleset cannot be reassigned to another asset.
377
+ * HTTP PUT /rules/asset/{id}
378
+ * Java method: org.openremote.model.rules.RulesResource.updateAssetRuleset
379
+ */
380
+ updateAssetRuleset(id: number, ruleset: Model.AssetRuleset, options?: O): RestResponse<void>;
473
381
  /**
474
- * Removes every asset link belonging to the user in the requested realm.
475
- * HTTP DELETE /asset/user/link/{realm}/{userId}
476
- * Java method: org.openremote.model.asset.AssetResource.deleteAllUserAssetLinks
382
+ * Extracts geofence definitions relevant to the asset. Anonymous access requires a public-readable asset; authenticated restricted users require an asset link.
383
+ * HTTP GET /rules/geofences/{assetId}
384
+ * Java method: org.openremote.model.rules.RulesResource.getAssetGeofences
477
385
  */
478
- deleteAllUserAssetLinks(realm: string, userId: string, options?: O): RestResponse<void>;
386
+ getAssetGeofences(assetId: string, options?: O): RestResponse<Model.GeofenceDefinition[]>;
479
387
  /**
480
- * Removes the link identified by realm, user, and asset. The caller must be allowed to administer asset links in that realm.
481
- * HTTP DELETE /asset/user/link/{realm}/{userId}/{assetId}
482
- * Java method: org.openremote.model.asset.AssetResource.deleteUserAssetLink
388
+ * Returns runtime status and error counts for an accessible asset engine. Returns null when the asset or its engine does not exist.
389
+ * Response code 204 - The asset or its rules engine does not exist
390
+ * HTTP GET /rules/info/asset/{assetId}
391
+ * Java method: org.openremote.model.rules.RulesResource.getAssetEngineInfo
483
392
  */
484
- deleteUserAssetLink(realm: string, userId: string, assetId: string, options?: O): RestResponse<void>;
393
+ getAssetEngineInfo(assetId: string, options?: O): RestResponse<Model.RulesEngineInfo>;
485
394
  /**
486
- * Returns a fully loaded asset including its path and attributes. Access is constrained to the caller's realm and, for restricted users, linked assets.
487
- * HTTP GET /asset/{assetId}
488
- * Java method: org.openremote.model.asset.AssetResource.get
395
+ * Returns runtime status and compilation/execution error counts for the global engine, or null when that engine is not running. Super-user access is required.
396
+ * Response code 204 - The global rules engine is not running
397
+ * HTTP GET /rules/info/global
398
+ * Java method: org.openremote.model.rules.RulesResource.getGlobalEngineInfo
489
399
  */
490
- get(assetId: string, options?: O): RestResponse<Model.Asset>;
400
+ getGlobalEngineInfo(options?: O): RestResponse<Model.RulesEngineInfo>;
491
401
  /**
492
- * Replaces mutable asset data while preserving the path identifier. Realm, parent, restricted-user, and private-metadata rules are validated; disallowed restricted-user fields may be ignored.
493
- * HTTP PUT /asset/{assetId}
494
- * Java method: org.openremote.model.asset.AssetResource.update
402
+ * Returns runtime status and error counts for an accessible realm engine, or null when that engine is not running. Restricted users cannot inspect realm engines.
403
+ * Response code 204 - The requested realm rules engine is not running
404
+ * HTTP GET /rules/info/realm/{realm}
405
+ * Java method: org.openremote.model.rules.RulesResource.getRealmEngineInfo
495
406
  */
496
- update(assetId: string, asset: Model.Asset, options?: O): RestResponse<Model.Asset>;
407
+ getRealmEngineInfo(realm: string, options?: O): RestResponse<Model.RulesEngineInfo>;
497
408
  /**
498
- * Submits an asynchronous attribute write using the current server time. The result reports whether the event was accepted, not whether downstream processing ultimately succeeded. Anonymous writes require public-write metadata.
499
- * Response code 400 - The attribute write failed
500
- * Response code 406 - The supplied value is not valid for the attribute
501
- * Response code 429 - The attribute event queue is full; retry the write later
502
- * HTTP PUT /asset/{assetId}/attribute/{attributeName}
503
- * Java method: org.openremote.model.asset.AssetResource.writeAttributeValue
409
+ * Creates and deploys a ruleset in its body realm and returns its numeric ID. Restricted users cannot create realm rulesets; legacy JavaScript is not accepted.
410
+ * HTTP POST /rules/realm
411
+ * Java method: org.openremote.model.rules.RulesResource.createRealmRuleset
504
412
  */
505
- writeAttributeValue$PUT$asset_assetId_attribute_attributeName(assetId: string, attributeName: string, value: any, options?: O): RestResponse<Model.AttributeWriteResult>;
413
+ createRealmRuleset(ruleset: Model.RealmRuleset, options?: O): RestResponse<number>;
506
414
  /**
507
- * Submits an asynchronous attribute write using the supplied Unix timestamp in milliseconds. The result reports acceptance only; anonymous writes require public-write metadata.
508
- * Response code 400 - The attribute write failed
509
- * Response code 406 - The supplied value is not valid for the attribute
510
- * Response code 429 - The attribute event queue is full; retry the write later
511
- * HTTP PUT /asset/{assetId}/attribute/{attributeName}/{timestamp}
512
- * Java method: org.openremote.model.asset.AssetResource.writeAttributeValue
415
+ * Returns realm rulesets filtered by language. Anonymous, restricted, or callers without read-rules permission receive public rulesets only; fullyPopulate controls loading of rule source.
416
+ * HTTP GET /rules/realm/for/{realm}
417
+ * Java method: org.openremote.model.rules.RulesResource.getRealmRulesets
513
418
  */
514
- writeAttributeValue$PUT$asset_assetId_attribute_attributeName_timestamp(assetId: string, attributeName: string, timestamp: number, value: any, options?: O): RestResponse<Model.AttributeWriteResult>;
419
+ getRealmRulesets(realm: string, queryParams?: {
420
+ language?: Model.RulesetLang[];
421
+ fullyPopulate?: boolean;
422
+ }, options?: O): RestResponse<Model.RealmRuleset[]>;
515
423
  /**
516
- * Sets parentAssetId as the parent of every asset listed in repeated assetIds query parameters. Parent and children must satisfy realm, access, and hierarchy constraints.
517
- * HTTP PUT /asset/{parentAssetId}/child
518
- * Java method: org.openremote.model.asset.AssetResource.updateParent
424
+ * Permanently removes and undeploys one ruleset from an accessible realm.
425
+ * HTTP DELETE /rules/realm/{id}
426
+ * Java method: org.openremote.model.rules.RulesResource.deleteRealmRuleset
519
427
  */
520
- updateParent(parentAssetId: string, queryParams?: {
521
- assetIds?: string[];
522
- }, options?: O): RestResponse<void>;
428
+ deleteRealmRuleset(id: number, options?: O): RestResponse<void>;
429
+ /**
430
+ * Returns one fully populated realm ruleset when its realm is accessible to the caller.
431
+ * HTTP GET /rules/realm/{id}
432
+ * Java method: org.openremote.model.rules.RulesResource.getRealmRuleset
433
+ */
434
+ getRealmRuleset(id: number, options?: O): RestResponse<Model.RealmRuleset>;
435
+ /**
436
+ * Replaces and redeploys one realm ruleset. Path and body IDs and the existing realm must match; legacy JavaScript cannot be updated.
437
+ * HTTP PUT /rules/realm/{id}
438
+ * Java method: org.openremote.model.rules.RulesResource.updateRealmRuleset
439
+ */
440
+ updateRealmRuleset(id: number, ruleset: Model.RealmRuleset, options?: O): RestResponse<void>;
441
+ /**
442
+ * Permanently removes and undeploys one global ruleset. Super-user access is required.
443
+ * HTTP DELETE /rules/{id}
444
+ * Java method: org.openremote.model.rules.RulesResource.deleteGlobalRuleset
445
+ */
446
+ deleteGlobalRuleset(id: number, options?: O): RestResponse<void>;
447
+ /**
448
+ * Returns one fully populated global ruleset including transient deployment status and errors. Super-user access is required.
449
+ * HTTP GET /rules/{id}
450
+ * Java method: org.openremote.model.rules.RulesResource.getGlobalRuleset
451
+ */
452
+ getGlobalRuleset(id: number, options?: O): RestResponse<Model.GlobalRuleset>;
453
+ /**
454
+ * Replaces and redeploys the identified global ruleset. Path and body IDs must match; legacy JavaScript rulesets cannot be updated.
455
+ * HTTP PUT /rules/{id}
456
+ * Java method: org.openremote.model.rules.RulesResource.updateGlobalRuleset
457
+ */
458
+ updateGlobalRuleset(id: number, ruleset: Model.GlobalRuleset, options?: O): RestResponse<void>;
523
459
  }
524
- export declare class ConfigurationResourceClient<O> {
460
+ export declare class ConsoleResourceClient<O> {
525
461
  protected httpClient: HttpClient<O>;
526
462
  constructor(httpClient: HttpClient<O>);
527
463
  /**
528
- * Returns the public Manager application configuration used by clients before and after authentication.
529
- * HTTP GET /configuration/manager
530
- * Java method: org.openremote.model.manager.ConfigurationResource.getManagerConfig
464
+ * Creates an anonymous console registration when id is absent, or updates an existing registration when id is present. Authenticated new registrations are linked to the caller; updates require that link. The returned registration contains the durable asset ID for later calls.
465
+ * HTTP POST /console/register
466
+ * Java method: org.openremote.model.console.ConsoleResource.register
531
467
  */
532
- getManagerConfig(options?: O): RestResponse<Model.ManagerAppConfig>;
468
+ register(consoleRegistration: Model.ConsoleRegistration, options?: O): RestResponse<Model.ConsoleRegistration>;
469
+ }
470
+ export declare class FlowResourceClient<O> {
471
+ protected httpClient: HttpClient<O>;
472
+ constructor(httpClient: HttpClient<O>);
533
473
  /**
534
- * Replaces manager_config.json and returns the stored configuration. This administrative change affects Manager UI branding and behavior.
535
- * HTTP PUT /configuration/manager
536
- * Java method: org.openremote.model.manager.ConfigurationResource.update
474
+ * Returns every supported flow node definition except the internal LOG_OUTPUT node.
475
+ * HTTP GET /flow
476
+ * Java method: org.openremote.model.rules.flow.FlowResource.getAllNodeDefinitions
537
477
  */
538
- update(managerConfiguration: Model.ManagerAppConfig, options?: O): RestResponse<Model.ManagerAppConfig>;
478
+ getAllNodeDefinitions(options?: O): RestResponse<Model.Node[]>;
539
479
  /**
540
- * Decodes and stores the supplied FileInfo under the requested relative path, then returns its Manager API path.
541
- * HTTP POST /configuration/manager/file
542
- * Java method: org.openremote.model.manager.ConfigurationResource.fileUpload
480
+ * Resolves one flow node definition by its model name.
481
+ * HTTP GET /flow/{name}
482
+ * Java method: org.openremote.model.rules.flow.FlowResource.getNodeDefinition
543
483
  */
544
- fileUpload(fileInfo: Model.FileInfo, queryParams?: {
545
- path?: string;
546
- }, options?: O): RestResponse<string>;
484
+ getNodeDefinition(name: string, options?: O): RestResponse<Model.Node>;
547
485
  /**
548
- * Streams a previously uploaded configuration image using its detected media type.
549
- * Response code 200 - The image file
550
- * HTTP GET /configuration/manager/image/{filename: .+}
551
- * Java method: org.openremote.model.manager.ConfigurationResource.getManagerConfigImage
486
+ * Returns supported flow node definitions whose category matches the requested node type.
487
+ * HTTP GET /flow/{type}
488
+ * Java method: org.openremote.model.rules.flow.FlowResource.getAllNodeDefinitionsByType
552
489
  */
553
- getManagerConfigImage(filename: string, options?: O): RestResponse<any>;
490
+ getAllNodeDefinitionsByType(type: Model.NodeType, options?: O): RestResponse<Model.Node[]>;
554
491
  }
555
- export declare class ExternalServiceResourceClient<O> {
492
+ export declare class UserResourceClient<O> {
556
493
  protected httpClient: HttpClient<O>;
557
494
  constructor(httpClient: HttpClient<O>);
558
495
  /**
559
- * Returns all active realm-scoped service registrations for an active realm accessible to the caller.
560
- * Response code 200 - List of registered external services
561
- * HTTP GET /service
562
- * Java method: org.openremote.model.services.ExternalServiceResource.getServices
496
+ * Stores the supplied non-empty locale string as the caller's identity-provider locale attribute. The target realm must be active unless the caller is a superuser.
497
+ * HTTP PUT /user/locale
498
+ * Java method: org.openremote.model.security.UserResource.updateCurrentUserLocale
563
499
  */
564
- getServices(queryParams?: {
565
- realm?: string;
566
- }, options?: O): RestResponse<Model.ExternalService[]>;
500
+ updateCurrentUserLocale(locale: string, options?: O): RestResponse<void>;
567
501
  /**
568
- * Registers a realm-scoped service instance for the request realm. The caller must be a service account; the returned object contains the assigned instance ID and initial lease state.
569
- * Response code 200 - Service registered successfully
570
- * Response code 400 - Invalid external service object
571
- * Response code 409 - ExternalService instance already registered
572
- * HTTP POST /service
573
- * Java method: org.openremote.model.services.ExternalServiceResource.registerService
502
+ * Executes a UserQuery. Non-super users are forced into their authenticated realm and cannot see system accounts; callers with read-users but not read-admin receive basic fields only. The target realm must be active unless the caller is a superuser.
503
+ * HTTP POST /user/query
504
+ * Java method: org.openremote.model.security.UserResource.query
574
505
  */
575
- registerService(service: Model.ExternalService, options?: O): RestResponse<Model.ExternalService>;
506
+ query(query: Model.UserQuery, options?: O): RestResponse<Model.User[]>;
576
507
  /**
577
- * Returns active registrations marked as globally available across realms.
578
- * Response code 200 - List of registered external services
579
- * HTTP GET /service/global
580
- * Java method: org.openremote.model.services.ExternalServiceResource.getGlobalServices
508
+ * Initiates the identity provider's configured password-reset action for the caller's own account. The target realm must be active unless the caller is a superuser.
509
+ * HTTP PUT /user/request-password-reset
510
+ * Java method: org.openremote.model.security.UserResource.requestPasswordResetCurrent
581
511
  */
582
- getGlobalServices(options?: O): RestResponse<Model.ExternalService[]>;
512
+ requestPasswordResetCurrent(options?: O): RestResponse<void>;
583
513
  /**
584
- * Registers a service visible in every realm. The caller must be a super-user service account and the request must use the master realm.
585
- * Response code 200 - Service registered successfully
586
- * Response code 400 - Invalid external service object
587
- * Response code 409 - ExternalService instance already registered
588
- * HTTP POST /service/global
589
- * Java method: org.openremote.model.services.ExternalServiceResource.registerGlobalService
514
+ * Replaces the caller's own identity-provider credential using the supplied credential representation. The target realm must be active unless the caller is a superuser.
515
+ * HTTP PUT /user/reset-password
516
+ * Java method: org.openremote.model.security.UserResource.updatePasswordCurrent
590
517
  */
591
- registerGlobalService(service: Model.ExternalService, options?: O): RestResponse<Model.ExternalService>;
518
+ updatePasswordCurrent(credential: Model.Credential, options?: O): RestResponse<void>;
592
519
  /**
593
- * Removes an active service registration. The caller must be the service account that registered it; global-service removal additionally requires a super user.
594
- * Response code 204 - Service deregistered successfully
595
- * Response code 404 - Service instance not found
596
- * HTTP DELETE /service/{serviceId}/{instanceId}
597
- * Java method: org.openremote.model.services.ExternalServiceResource.deregisterService
520
+ * Updates the caller's own profile. A supplied user ID must match the access token; role and realm administration are not provided by this endpoint. The target realm must be active unless the caller is a superuser.
521
+ * HTTP PUT /user/update
522
+ * Java method: org.openremote.model.security.UserResource.updateCurrent
598
523
  */
599
- deregisterService(serviceId: string, instanceId: number, options?: O): RestResponse<void>;
524
+ updateCurrent(user: Model.User, options?: O): RestResponse<Model.User>;
600
525
  /**
601
- * Returns one registered instance by stable service ID and numeric instance ID, after verifying access to the service's realm.
602
- * Response code 200 - ExternalService retrieved successfully
603
- * Response code 404 - ExternalService not found
604
- * HTTP GET /service/{serviceId}/{instanceId}
605
- * Java method: org.openremote.model.services.ExternalServiceResource.getService
526
+ * Returns the identity-provider record corresponding to the current access token. The target realm must be active unless the caller is a superuser.
527
+ * HTTP GET /user/user
528
+ * Java method: org.openremote.model.security.UserResource.getCurrent
606
529
  */
607
- getService(serviceId: string, instanceId: number, options?: O): RestResponse<Model.ExternalService>;
530
+ getCurrent(options?: O): RestResponse<Model.User>;
608
531
  /**
609
- * Extends the lease of one service instance. The caller must be the service account that registered it; global-service heartbeats additionally require a super user.
610
- * Response code 204 - Heartbeat sent successfully
611
- * Response code 404 - Service instance not found
612
- * HTTP PUT /service/{serviceId}/{instanceId}
613
- * Java method: org.openremote.model.services.ExternalServiceResource.heartbeat
532
+ * Returns realm-level role names assigned to the caller. The target realm must be active unless the caller is a superuser.
533
+ * HTTP GET /user/userRealmRoles
534
+ * Java method: org.openremote.model.security.UserResource.getCurrentUserRealmRoles
614
535
  */
615
- heartbeat(serviceId: string, instanceId: number, options?: O): RestResponse<void>;
616
- }
617
- export declare class MapResourceClient<O> {
618
- protected httpClient: HttpClient<O>;
619
- constructor(httpClient: HttpClient<O>);
536
+ getCurrentUserRealmRoles(options?: O): RestResponse<string[]>;
620
537
  /**
621
- * Returns realm-aware public MapLibre settings with externally reachable URLs derived from proxy headers.
622
- * HTTP GET /map
623
- * Java method: org.openremote.model.map.MapResource.getSettings
538
+ * Returns role names assigned to the caller for the named identity-provider client. The target realm must be active unless the caller is a superuser.
539
+ * HTTP GET /user/userRoles/{clientId}
540
+ * Java method: org.openremote.model.security.UserResource.getCurrentUserClientRoles
624
541
  */
625
- getSettings(options?: O): RestResponse<{
626
- [id: string]: unknown;
627
- }>;
542
+ getCurrentUserClientRoles(clientId: string, options?: O): RestResponse<string[]>;
628
543
  /**
629
- * Stores the map configuration and returns the resulting public MapLibre settings.
630
- * HTTP PUT /map
631
- * Java method: org.openremote.model.map.MapResource.saveSettings
544
+ * Terminates the active MQTT connection identified by sessionID. The realm must match the session owner's realm. Authenticated users may disconnect their own sessions without an additional client role. Disconnecting another user's session requires the openremote client role write:admin or superuser status. Non-superusers are limited to their own active realm; superusers may disconnect sessions across realms, including inactive realms.
545
+ * Response code 403 - The realm is inactive for a non-superuser, or the caller is neither the session owner, a user with write:admin, nor a superuser
546
+ * Response code 404 - The session or its owning user does not exist, or the session does not belong to the specified realm
547
+ * Response code 405 - A non-superuser cannot access the session owner's realm
548
+ * HTTP DELETE /user/{realm}/disconnect/{sessionID}
549
+ * Java method: org.openremote.model.security.UserResource.disconnectUserSession
632
550
  */
633
- saveSettings(mapConfig: Model.MapConfig, options?: O): RestResponse<{
634
- [id: string]: unknown;
635
- }>;
551
+ disconnectUserSession(realm: string, sessionID: string, options?: O): RestResponse<void>;
636
552
  /**
637
- * Deletes the installed custom MBTiles database and returns the fallback public map settings.
638
- * HTTP DELETE /map/deleteMap
639
- * Java method: org.openremote.model.map.MapResource.deleteMap
553
+ * Asks the identity provider to send or initiate its configured password-reset action for the specified user. The target realm must be active unless the caller is a superuser.
554
+ * Response code 405 - The caller cannot mutate a user in the requested realm
555
+ * HTTP PUT /user/{realm}/request-password-reset/{userId}
556
+ * Java method: org.openremote.model.security.UserResource.requestPasswordReset
640
557
  */
641
- deleteMap(options?: O): RestResponse<{
642
- [id: string]: unknown;
643
- }>;
558
+ requestPasswordReset(realm: string, userId: string, options?: O): RestResponse<void>;
644
559
  /**
645
- * Reports whether custom MBTiles data is installed and the maximum accepted upload size.
646
- * HTTP GET /map/getCustomMapInfo
647
- * Java method: org.openremote.model.map.MapResource.getCustomMapInfo
560
+ * Replaces a user's credential in an administered realm using the supplied credential representation. The target realm must be active unless the caller is a superuser.
561
+ * Response code 405 - The caller cannot mutate a user in the requested realm
562
+ * HTTP PUT /user/{realm}/reset-password/{userId}
563
+ * Java method: org.openremote.model.security.UserResource.updatePassword
648
564
  */
649
- getCustomMapInfo(options?: O): RestResponse<{
650
- [id: string]: unknown;
651
- }>;
565
+ updatePassword(realm: string, userId: string, credential: Model.Credential, options?: O): RestResponse<void>;
652
566
  /**
653
- * Returns a pre-compressed Mapbox vector tile for the requested zoom, column, and row coordinates.
654
- * Response code 200 - Gzip-compressed vector tile
655
- * Response code 204 - No tile exists at the requested coordinates
656
- * HTTP GET /map/tile/{zoom}/{column}/{row}
657
- * Java method: org.openremote.model.map.MapResource.getTile
567
+ * Generates and returns a new client secret for a service user in an administered realm. The target realm must be active unless the caller is a superuser.
568
+ * HTTP GET /user/{realm}/reset-secret/{userId}
569
+ * Java method: org.openremote.model.security.UserResource.resetSecret
570
+ */
571
+ resetSecret(realm: string, userId: string, options?: O): RestResponse<string>;
572
+ /**
573
+ * Creates, updates, or removes role definitions for the default OpenRemote client in the requested realm. The target realm must be active unless the caller is a superuser.
574
+ * HTTP PUT /user/{realm}/roles
575
+ * Java method: org.openremote.model.security.UserResource.updateRoles
658
576
  */
659
- getTile(zoom: number, column: number, row: number, options?: O): RestResponse<any>;
577
+ updateRoles(realm: string, roles: Model.Role[], options?: O): RestResponse<void>;
660
578
  /**
661
- * Stores the raw request body as the realm's custom MBTiles database and returns the resulting public map settings.
662
- * HTTP POST /map/upload
663
- * Java method: org.openremote.model.map.MapResource.uploadMap
579
+ * Returns realm-level role names assigned to one user. Without read-admin permission, callers may retrieve only their own roles. The target realm must be active unless the caller is a superuser.
580
+ * HTTP GET /user/{realm}/userRealmRoles/{userId}
581
+ * Java method: org.openremote.model.security.UserResource.getUserRealmRoles
664
582
  */
665
- uploadMap(queryParams?: {
666
- filename?: string;
667
- }, options?: O): RestResponse<{
668
- [id: string]: unknown;
669
- }>;
670
- }
671
- export declare class AssetDatapointResourceClient<O> {
672
- protected httpClient: HttpClient<O>;
673
- constructor(httpClient: HttpClient<O>);
583
+ getUserRealmRoles(realm: string, userId: string, options?: O): RestResponse<string[]>;
674
584
  /**
675
- * Streams a ZIP archive containing exported datapoints for one or more attribute references over the requested inclusive time range. attributeRefs is a JSON-encoded array of objects with id and name fields.
676
- * Response code 200 - A ZIP archive containing the exported data
677
- * HTTP GET /asset/datapoint/export
678
- * Java method: org.openremote.model.datapoint.AssetDatapointResource.getDatapointExport
585
+ * Replaces the user's assigned realm-level role names in an administered realm. The target realm must be active unless the caller is a superuser.
586
+ * HTTP PUT /user/{realm}/userRealmRoles/{userId}
587
+ * Java method: org.openremote.model.security.UserResource.updateUserRealmRoles
679
588
  */
680
- getDatapointExport(queryParams?: {
681
- attributeRefs?: string;
682
- fromTimestamp?: number;
683
- toTimestamp?: number;
684
- format?: Model.DatapointExportFormat;
685
- }, options?: O): RestResponse<any>;
589
+ updateUserRealmRoles(realm: string, userId: string, roles: string[], options?: O): RestResponse<void>;
686
590
  /**
687
- * Returns the oldest and newest stored timestamps for one attribute. The asset and attribute must be readable by the authenticated user and configured for datapoint storage.
688
- * HTTP GET /asset/datapoint/periods
689
- * Java method: org.openremote.model.datapoint.AssetDatapointResource.getDatapointPeriod
591
+ * Returns role names assigned to one user for the named client. Without read-admin permission, callers may retrieve only their own roles. The target realm must be active unless the caller is a superuser.
592
+ * HTTP GET /user/{realm}/userRoles/{userId}/{clientId}
593
+ * Java method: org.openremote.model.security.UserResource.getUserClientRoles
690
594
  */
691
- getDatapointPeriod(queryParams?: {
692
- assetId?: string;
693
- attributeName?: string;
694
- }, options?: O): RestResponse<Model.DatapointPeriod>;
595
+ getUserClientRoles(realm: string, userId: string, clientId: string, options?: O): RestResponse<string[]>;
695
596
  /**
696
- * Returns stored historical values for one attribute. A null body returns the available series; a polymorphic query body controls the time range and retrieval or aggregation strategy. Anonymous access requires public-read access on both asset and attribute.
697
- * HTTP POST /asset/datapoint/{assetId}/{attributeName}
698
- * Java method: org.openremote.model.datapoint.AssetDatapointResource.getDatapoints
597
+ * Replaces the user's assigned role names for the named client in an administered realm. The target realm must be active unless the caller is a superuser.
598
+ * HTTP PUT /user/{realm}/userRoles/{userId}/{clientId}
599
+ * Java method: org.openremote.model.security.UserResource.updateUserClientRoles
699
600
  */
700
- getDatapoints(assetId: string, attributeName: string, query: Model.AssetDatapointQueryUnion, options?: O): RestResponse<Model.ValueDatapoint<any>[]>;
701
- }
702
- export declare class SyslogResourceClient<O> {
703
- protected httpClient: HttpClient<O>;
704
- constructor(httpClient: HttpClient<O>);
601
+ updateUserClientRoles(realm: string, userId: string, clientId: string, roles: string[], options?: O): RestResponse<void>;
705
602
  /**
706
- * Returns the current log-storage and retention configuration.
707
- * HTTP GET /syslog/config
708
- * Java method: org.openremote.model.syslog.SyslogResource.getConfig
603
+ * Returns active MQTT sessions for one user, including connection ID, creation time, and remote address. Without read-admin permission, callers may inspect only themselves. The target realm must be active unless the caller is a superuser.
604
+ * HTTP GET /user/{realm}/userSessions/{userId}
605
+ * Java method: org.openremote.model.security.UserResource.getUserSessions
709
606
  */
710
- getConfig(options?: O): RestResponse<Model.SyslogConfig>;
607
+ getUserSessions(realm: string, userId: string, options?: O): RestResponse<Model.UserSession[]>;
711
608
  /**
712
- * Validates and applies log-storage and retention settings.
713
- * HTTP PUT /syslog/config
714
- * Java method: org.openremote.model.syslog.SyslogResource.updateConfig
609
+ * Creates an identity-provider user in a realm administered by the caller and returns the resulting user record. The target realm must be active unless the caller is a superuser.
610
+ * HTTP POST /user/{realm}/users
611
+ * Java method: org.openremote.model.security.UserResource.create
715
612
  */
716
- updateConfig(config: Model.SyslogConfig, options?: O): RestResponse<void>;
613
+ create(realm: string, user: Model.User, options?: O): RestResponse<Model.User>;
717
614
  /**
718
- * Permanently removes all events from the configured syslog storage.
719
- * HTTP DELETE /syslog/event
720
- * Java method: org.openremote.model.syslog.SyslogResource.clearEvents
615
+ * Updates an existing identity-provider user in an administered realm. The master administrator cannot be disabled. The target realm must be active unless the caller is a superuser.
616
+ * Response code 405 - The requested cross-realm or protected master-administrator mutation is not allowed
617
+ * HTTP PUT /user/{realm}/users
618
+ * Java method: org.openremote.model.security.UserResource.update
721
619
  */
722
- clearEvents(options?: O): RestResponse<void>;
620
+ update(realm: string, user: Model.User, options?: O): RestResponse<Model.User>;
723
621
  /**
724
- * Returns a page of log events filtered by severity, Unix-millisecond time range, categories, and subcategories. RFC 8288 Link headers point to the next and last pages.
725
- * Response code 200 - The requested page of syslog events
726
- * HTTP GET /syslog/event
727
- * Java method: org.openremote.model.syslog.SyslogResource.getEvents
622
+ * Permanently deletes a user from an administered realm. The master-realm administrator cannot be deleted. The target realm must be active unless the caller is a superuser.
623
+ * Response code 405 - The master-realm administrator cannot be deleted
624
+ * HTTP DELETE /user/{realm}/users/{userId}
625
+ * Java method: org.openremote.model.security.UserResource.delete
728
626
  */
729
- getEvents(queryParams?: {
730
- level?: Model.SyslogLevel;
731
- per_page?: number;
732
- page?: number;
733
- from?: number;
734
- to?: number;
735
- category?: Model.SyslogCategory[];
736
- subCategory?: string[];
737
- }, options?: O): RestResponse<any>;
738
- }
739
- export declare class FlowResourceClient<O> {
740
- protected httpClient: HttpClient<O>;
741
- constructor(httpClient: HttpClient<O>);
627
+ delete(realm: string, userId: string, options?: O): RestResponse<void>;
742
628
  /**
743
- * Returns every supported flow node definition except the internal LOG_OUTPUT node.
744
- * HTTP GET /flow
745
- * Java method: org.openremote.model.rules.flow.FlowResource.getAllNodeDefinitions
629
+ * Returns all role definitions exposed by the named identity-provider client. Realm-administrator access is required. The target realm must be active unless the caller is a superuser.
630
+ * HTTP GET /user/{realm}/{clientId}/roles
631
+ * Java method: org.openremote.model.security.UserResource.getClientRoles
746
632
  */
747
- getAllNodeDefinitions(options?: O): RestResponse<Model.Node[]>;
633
+ getClientRoles(realm: string, clientId: string, options?: O): RestResponse<Model.Role[]>;
748
634
  /**
749
- * Resolves one flow node definition by its model name.
750
- * HTTP GET /flow/{name}
751
- * Java method: org.openremote.model.rules.flow.FlowResource.getNodeDefinition
635
+ * Creates, updates, or removes role definitions for a named identity-provider client. The target realm must be active unless the caller is a superuser.
636
+ * HTTP PUT /user/{realm}/{clientId}/roles
637
+ * Java method: org.openremote.model.security.UserResource.updateClientRoles
752
638
  */
753
- getNodeDefinition(name: string, options?: O): RestResponse<Model.Node>;
639
+ updateClientRoles(realm: string, clientId: string, roles: Model.Role[], options?: O): RestResponse<void>;
754
640
  /**
755
- * Returns supported flow node definitions whose category matches the requested node type.
756
- * HTTP GET /flow/{type}
757
- * Java method: org.openremote.model.rules.flow.FlowResource.getAllNodeDefinitionsByType
641
+ * Returns one user when it belongs to the requested accessible realm. Without read-admin permission, callers may retrieve only their own user. The target realm must be active unless the caller is a superuser.
642
+ * HTTP GET /user/{realm}/{userId}
643
+ * Java method: org.openremote.model.security.UserResource.get
758
644
  */
759
- getAllNodeDefinitionsByType(type: Model.NodeType, options?: O): RestResponse<Model.Node[]>;
645
+ get(realm: string, userId: string, options?: O): RestResponse<Model.User>;
760
646
  }
761
647
  export declare class NotificationResourceClient<O> {
762
648
  protected httpClient: HttpClient<O>;
@@ -805,167 +691,53 @@ export declare class NotificationResourceClient<O> {
805
691
  * HTTP GET /notification/count
806
692
  * Java method: org.openremote.model.notification.NotificationResource.getNotificationsCount
807
693
  */
808
- getNotificationsCount(queryParams?: {
809
- type?: string;
810
- from?: number;
811
- to?: number;
812
- realmId?: string;
813
- userId?: string;
814
- assetId?: string;
815
- source?: Model.NotificationSource;
816
- }, options?: O): RestResponse<number>;
817
- /**
818
- * Permanently removes one sent-notification record. This operation is restricted to a super user and is idempotent when the ID does not exist.
819
- * HTTP DELETE /notification/{notificationId}
820
- * Java method: org.openremote.model.notification.NotificationResource.removeNotification
821
- */
822
- removeNotification(notificationId: number, options?: O): RestResponse<void>;
823
- /**
824
- * Marks one target's notification as acknowledged and stores the optional JSON acknowledgement value. Access rules are identical to notificationDelivered.
825
- * HTTP PUT /notification/{notificationId}/acknowledged
826
- * Java method: org.openremote.model.notification.NotificationResource.notificationAcknowledged
827
- */
828
- notificationAcknowledged(notificationId: number, acknowledgement: any, queryParams?: {
829
- targetId?: string;
830
- }, options?: O): RestResponse<void>;
831
- /**
832
- * Marks one target's notification as delivered after matching both notificationId and targetId. Anonymous callers may update notifications sent to a public asset; authenticated callers are constrained to their own user, realm, or accessible assets.
833
- * HTTP PUT /notification/{notificationId}/delivered
834
- * Java method: org.openremote.model.notification.NotificationResource.notificationDelivered
835
- */
836
- notificationDelivered(notificationId: number, queryParams?: {
837
- targetId?: string;
838
- }, options?: O): RestResponse<void>;
839
- }
840
- export declare class RulesResourceClient<O> {
841
- protected httpClient: HttpClient<O>;
842
- constructor(httpClient: HttpClient<O>);
843
- /**
844
- * Creates and deploys a global ruleset and returns its numeric ID. Super-user access is required; legacy JavaScript rulesets cannot be created.
845
- * HTTP POST /rules
846
- * Java method: org.openremote.model.rules.RulesResource.createGlobalRuleset
847
- */
848
- createGlobalRuleset(ruleset: Model.GlobalRuleset, options?: O): RestResponse<number>;
849
- /**
850
- * Returns global rulesets filtered by repeated language parameters. fullyPopulate controls whether rule source and other large fields are loaded; super-user access is required.
851
- * HTTP GET /rules
852
- * Java method: org.openremote.model.rules.RulesResource.getGlobalRulesets
853
- */
854
- getGlobalRulesets(queryParams?: {
855
- language?: Model.RulesetLang[];
856
- fullyPopulate?: boolean;
857
- }, options?: O): RestResponse<Model.GlobalRuleset[]>;
858
- /**
859
- * Creates and deploys a ruleset for an accessible asset and returns its numeric ID. The assetId is taken from the request body.
860
- * HTTP POST /rules/asset
861
- * Java method: org.openremote.model.rules.RulesResource.createAssetRuleset
862
- */
863
- createAssetRuleset(ruleset: Model.AssetRuleset, options?: O): RestResponse<number>;
864
- /**
865
- * Returns asset rulesets filtered by language. Callers without full access receive public rulesets only; a nonexistent asset produces an empty array.
866
- * HTTP GET /rules/asset/for/{assetId}
867
- * Java method: org.openremote.model.rules.RulesResource.getAssetRulesets
868
- */
869
- getAssetRulesets(assetId: string, queryParams?: {
870
- language?: Model.RulesetLang[];
871
- fullyPopulate?: boolean;
872
- }, options?: O): RestResponse<Model.AssetRuleset[]>;
873
- /**
874
- * Permanently removes and undeploys one ruleset from an accessible asset.
875
- * HTTP DELETE /rules/asset/{id}
876
- * Java method: org.openremote.model.rules.RulesResource.deleteAssetRuleset
877
- */
878
- deleteAssetRuleset(id: number, options?: O): RestResponse<void>;
879
- /**
880
- * Returns one fully populated asset ruleset when the caller can access its realm and owning asset.
881
- * HTTP GET /rules/asset/{id}
882
- * Java method: org.openremote.model.rules.RulesResource.getAssetRuleset
883
- */
884
- getAssetRuleset(id: number, options?: O): RestResponse<Model.AssetRuleset>;
885
- /**
886
- * Replaces and redeploys one asset ruleset. The ID must match and an existing ruleset cannot be reassigned to another asset.
887
- * HTTP PUT /rules/asset/{id}
888
- * Java method: org.openremote.model.rules.RulesResource.updateAssetRuleset
889
- */
890
- updateAssetRuleset(id: number, ruleset: Model.AssetRuleset, options?: O): RestResponse<void>;
891
- /**
892
- * Extracts geofence definitions relevant to the asset. Anonymous access requires a public-readable asset; authenticated restricted users require an asset link.
893
- * HTTP GET /rules/geofences/{assetId}
894
- * Java method: org.openremote.model.rules.RulesResource.getAssetGeofences
895
- */
896
- getAssetGeofences(assetId: string, options?: O): RestResponse<Model.GeofenceDefinition[]>;
897
- /**
898
- * Returns runtime status and error counts for an accessible asset engine. Returns null when the asset or its engine does not exist.
899
- * Response code 204 - The asset or its rules engine does not exist
900
- * HTTP GET /rules/info/asset/{assetId}
901
- * Java method: org.openremote.model.rules.RulesResource.getAssetEngineInfo
902
- */
903
- getAssetEngineInfo(assetId: string, options?: O): RestResponse<Model.RulesEngineInfo>;
904
- /**
905
- * Returns runtime status and compilation/execution error counts for the global engine, or null when that engine is not running. Super-user access is required.
906
- * Response code 204 - The global rules engine is not running
907
- * HTTP GET /rules/info/global
908
- * Java method: org.openremote.model.rules.RulesResource.getGlobalEngineInfo
909
- */
910
- getGlobalEngineInfo(options?: O): RestResponse<Model.RulesEngineInfo>;
911
- /**
912
- * Returns runtime status and error counts for an accessible realm engine, or null when that engine is not running. Restricted users cannot inspect realm engines.
913
- * Response code 204 - The requested realm rules engine is not running
914
- * HTTP GET /rules/info/realm/{realm}
915
- * Java method: org.openremote.model.rules.RulesResource.getRealmEngineInfo
916
- */
917
- getRealmEngineInfo(realm: string, options?: O): RestResponse<Model.RulesEngineInfo>;
918
- /**
919
- * Creates and deploys a ruleset in its body realm and returns its numeric ID. Restricted users cannot create realm rulesets; legacy JavaScript is not accepted.
920
- * HTTP POST /rules/realm
921
- * Java method: org.openremote.model.rules.RulesResource.createRealmRuleset
922
- */
923
- createRealmRuleset(ruleset: Model.RealmRuleset, options?: O): RestResponse<number>;
924
- /**
925
- * Returns realm rulesets filtered by language. Anonymous, restricted, or callers without read-rules permission receive public rulesets only; fullyPopulate controls loading of rule source.
926
- * HTTP GET /rules/realm/for/{realm}
927
- * Java method: org.openremote.model.rules.RulesResource.getRealmRulesets
928
- */
929
- getRealmRulesets(realm: string, queryParams?: {
930
- language?: Model.RulesetLang[];
931
- fullyPopulate?: boolean;
932
- }, options?: O): RestResponse<Model.RealmRuleset[]>;
933
- /**
934
- * Permanently removes and undeploys one ruleset from an accessible realm.
935
- * HTTP DELETE /rules/realm/{id}
936
- * Java method: org.openremote.model.rules.RulesResource.deleteRealmRuleset
937
- */
938
- deleteRealmRuleset(id: number, options?: O): RestResponse<void>;
694
+ getNotificationsCount(queryParams?: {
695
+ type?: string;
696
+ from?: number;
697
+ to?: number;
698
+ realmId?: string;
699
+ userId?: string;
700
+ assetId?: string;
701
+ source?: Model.NotificationSource;
702
+ }, options?: O): RestResponse<number>;
939
703
  /**
940
- * Returns one fully populated realm ruleset when its realm is accessible to the caller.
941
- * HTTP GET /rules/realm/{id}
942
- * Java method: org.openremote.model.rules.RulesResource.getRealmRuleset
704
+ * Permanently removes one sent-notification record. This operation is restricted to a super user and is idempotent when the ID does not exist.
705
+ * HTTP DELETE /notification/{notificationId}
706
+ * Java method: org.openremote.model.notification.NotificationResource.removeNotification
943
707
  */
944
- getRealmRuleset(id: number, options?: O): RestResponse<Model.RealmRuleset>;
708
+ removeNotification(notificationId: number, options?: O): RestResponse<void>;
945
709
  /**
946
- * Replaces and redeploys one realm ruleset. Path and body IDs and the existing realm must match; legacy JavaScript cannot be updated.
947
- * HTTP PUT /rules/realm/{id}
948
- * Java method: org.openremote.model.rules.RulesResource.updateRealmRuleset
710
+ * Marks one target's notification as acknowledged and stores the optional JSON acknowledgement value. Access rules are identical to notificationDelivered.
711
+ * HTTP PUT /notification/{notificationId}/acknowledged
712
+ * Java method: org.openremote.model.notification.NotificationResource.notificationAcknowledged
949
713
  */
950
- updateRealmRuleset(id: number, ruleset: Model.RealmRuleset, options?: O): RestResponse<void>;
714
+ notificationAcknowledged(notificationId: number, acknowledgement: any, queryParams?: {
715
+ targetId?: string;
716
+ }, options?: O): RestResponse<void>;
951
717
  /**
952
- * Permanently removes and undeploys one global ruleset. Super-user access is required.
953
- * HTTP DELETE /rules/{id}
954
- * Java method: org.openremote.model.rules.RulesResource.deleteGlobalRuleset
718
+ * Marks one target's notification as delivered after matching both notificationId and targetId. Anonymous callers may update notifications sent to a public asset; authenticated callers are constrained to their own user, realm, or accessible assets.
719
+ * HTTP PUT /notification/{notificationId}/delivered
720
+ * Java method: org.openremote.model.notification.NotificationResource.notificationDelivered
955
721
  */
956
- deleteGlobalRuleset(id: number, options?: O): RestResponse<void>;
722
+ notificationDelivered(notificationId: number, queryParams?: {
723
+ targetId?: string;
724
+ }, options?: O): RestResponse<void>;
725
+ }
726
+ export declare class AssetPredictedDatapointResourceClient<O> {
727
+ protected httpClient: HttpClient<O>;
728
+ constructor(httpClient: HttpClient<O>);
957
729
  /**
958
- * Returns one fully populated global ruleset including transient deployment status and errors. Super-user access is required.
959
- * HTTP GET /rules/{id}
960
- * Java method: org.openremote.model.rules.RulesResource.getGlobalRuleset
730
+ * Queries predicted values for one attribute using the supplied time-range and aggregation criteria. Anonymous access requires public-read access on both asset and attribute.
731
+ * HTTP POST /asset/predicted/{assetId}/{attributeName}
732
+ * Java method: org.openremote.model.datapoint.AssetPredictedDatapointResource.getPredictedDatapoints
961
733
  */
962
- getGlobalRuleset(id: number, options?: O): RestResponse<Model.GlobalRuleset>;
734
+ getPredictedDatapoints(assetId: string, attributeName: string, query: Model.AssetDatapointQueryUnion, options?: O): RestResponse<Model.ValueDatapoint<any>[]>;
963
735
  /**
964
- * Replaces and redeploys the identified global ruleset. Path and body IDs must match; legacy JavaScript rulesets cannot be updated.
965
- * HTTP PUT /rules/{id}
966
- * Java method: org.openremote.model.rules.RulesResource.updateGlobalRuleset
736
+ * Replaces or adds predicted values for one attribute. Anonymous access is allowed only when the asset and attribute are public-write; authenticated callers require attribute-write access.
737
+ * HTTP PUT /asset/predicted/{assetId}/{attributeName}
738
+ * Java method: org.openremote.model.datapoint.AssetPredictedDatapointResource.writePredictedDatapoints
967
739
  */
968
- updateGlobalRuleset(id: number, ruleset: Model.GlobalRuleset, options?: O): RestResponse<void>;
740
+ writePredictedDatapoints(assetId: string, attributeName: string, predictedDatapoints: Model.ValueDatapoint<any>[], options?: O): RestResponse<void>;
969
741
  }
970
742
  export declare class AssetModelResourceClient<O> {
971
743
  protected httpClient: HttpClient<O>;
@@ -1028,65 +800,196 @@ export declare class AssetModelResourceClient<O> {
1028
800
  [index: string]: Model.ValueDescriptor;
1029
801
  }>;
1030
802
  }
1031
- export declare class GatewayServiceResourceClient<O> {
803
+ export declare class StatusResourceClient<O> {
1032
804
  protected httpClient: HttpClient<O>;
1033
805
  constructor(httpClient: HttpClient<O>);
1034
806
  /**
1035
- * Requests a TCP tunnel through a connected gateway and returns its allocated local endpoint. When realm is omitted, the authenticated realm is used.
1036
- * Response code 417 - The gateway could not establish the requested tunnel
1037
- * HTTP POST /gateway/tunnel
1038
- * Java method: org.openremote.model.gateway.GatewayServiceResource.startTunnel
807
+ * Returns health data keyed by registered health-provider name. A null provider result is represented as JSON null.
808
+ * HTTP GET /health
809
+ * Java method: org.openremote.model.system.StatusResource.getHealthStatus
1039
810
  */
1040
- startTunnel(tunnelInfo: Model.GatewayTunnelInfo, options?: O): RestResponse<Model.GatewayTunnelInfo>;
811
+ getHealthStatus(options?: O): RestResponse<{
812
+ [index: string]: any;
813
+ }>;
1041
814
  /**
1042
- * Stops the tunnel identified by the supplied gateway, target, and port information. When realm is omitted, the authenticated realm is used.
1043
- * HTTP DELETE /gateway/tunnel
1044
- * Java method: org.openremote.model.gateway.GatewayServiceResource.stopTunnel
815
+ * Returns public bootstrap information, including the Manager version and identity-provider URL.
816
+ * HTTP GET /info
817
+ * Java method: org.openremote.model.system.StatusResource.getInfo
1045
818
  */
1046
- stopTunnel(tunnelInfo: Model.GatewayTunnelInfo, options?: O): RestResponse<void>;
819
+ getInfo(options?: O): RestResponse<{
820
+ [index: string]: any;
821
+ }>;
822
+ }
823
+ export declare class AgentResourceClient<O> {
824
+ protected httpClient: HttpClient<O>;
825
+ constructor(httpClient: HttpClient<O>);
1047
826
  /**
1048
- * Returns active tunnels for all gateway assets in the requested realm. Restricted users cannot list an entire realm.
1049
- * HTTP GET /gateway/tunnel/{realm}
1050
- * Java method: org.openremote.model.gateway.GatewayServiceResource.getAllActiveTunnelInfos
827
+ * Runs the agent protocol's asset discovery, waits up to ten seconds for results, returns the discovered tree, and asynchronously persists discovered assets below the agent.
828
+ * HTTP GET /agent/assetDiscovery/{agentId}
829
+ * Java method: org.openremote.model.asset.agent.AgentResource.doProtocolAssetDiscovery
1051
830
  */
1052
- getAllActiveTunnelInfos(realm: string, options?: O): RestResponse<Model.GatewayTunnelInfo[]>;
831
+ doProtocolAssetDiscovery(agentId: string, queryParams?: {
832
+ realm?: string;
833
+ }, options?: O): RestResponse<Model.AssetTreeNode[]>;
1053
834
  /**
1054
- * Returns active tunnels for one gateway asset. Restricted users may query only a linked gateway.
1055
- * HTTP GET /gateway/tunnel/{realm}/{id}
1056
- * Java method: org.openremote.model.gateway.GatewayServiceResource.getGatewayActiveTunnelInfos
835
+ * Decodes the supplied FileInfo, asks the agent protocol to import it, persists the returned asset tree below the agent, and returns that tree.
836
+ * Response code 405 - The selected agent protocol does not support asset import
837
+ * HTTP POST /agent/assetImport/{agentId}
838
+ * Java method: org.openremote.model.asset.agent.AgentResource.doProtocolAssetImport
1057
839
  */
1058
- getGatewayActiveTunnelInfos(realm: string, id: string, options?: O): RestResponse<Model.GatewayTunnelInfo[]>;
840
+ doProtocolAssetImport(agentId: string, fileInfo: Model.FileInfo, queryParams?: {
841
+ realm?: string;
842
+ }, options?: O): RestResponse<Model.AssetTreeNode[]>;
1059
843
  /**
1060
- * Returns the tunnel matching realm, gateway, target host, and target port, or null when no active tunnel matches.
1061
- * Response code 204 - No active tunnel matches the requested endpoint
1062
- * HTTP GET /gateway/tunnel/{realm}/{id}/{target}/{targetPort}
1063
- * Java method: org.openremote.model.gateway.GatewayServiceResource.getActiveTunnelInfo
844
+ * Runs instance discovery for an agent type and returns candidate Agent assets. parentId selects local versus edge-gateway discovery; non-super users are always constrained to their authenticated realm.
845
+ * Response code 415 - The selected agent protocol does not support instance discovery
846
+ * HTTP GET /agent/instanceDiscovery/{agentType}
847
+ * Java method: org.openremote.model.asset.agent.AgentResource.doProtocolInstanceDiscovery
1064
848
  */
1065
- getActiveTunnelInfo(realm: string, id: string, target: string, targetPort: number, options?: O): RestResponse<Model.GatewayTunnelInfo>;
849
+ doProtocolInstanceDiscovery(agentType: string, queryParams?: {
850
+ parentId?: string;
851
+ realm?: string;
852
+ }, options?: O): RestResponse<Model.Agent[]>;
1066
853
  }
1067
- export declare class AppResourceClient<O> {
854
+ export declare class AssetResourceClient<O> {
1068
855
  protected httpClient: HttpClient<O>;
1069
856
  constructor(httpClient: HttpClient<O>);
1070
857
  /**
1071
- * Returns the identifiers of applications installed in the Manager web root.
1072
- * HTTP GET /apps
1073
- * Java method: org.openremote.model.apps.AppResource.getApps
858
+ * Creates an asset in an accessible realm and returns the persisted representation. The server generates an ID when absent; supplied IDs must be globally unique and 22 characters long.
859
+ * HTTP POST /asset
860
+ * Java method: org.openremote.model.asset.AssetResource.create
1074
861
  */
1075
- getApps(options?: O): RestResponse<string[]>;
862
+ create(asset: Model.Asset, options?: O): RestResponse<Model.Asset>;
1076
863
  /**
1077
- * Loads the public console_config.json document used to configure console clients before sign-in.
1078
- * HTTP GET /apps/consoleConfig
1079
- * Java method: org.openremote.model.apps.AppResource.getConsoleConfig
864
+ * Permanently deletes every asset identified by repeated assetId query parameters, subject to realm and restricted-user access rules.
865
+ * HTTP DELETE /asset
866
+ * Java method: org.openremote.model.asset.AssetResource.delete
1080
867
  */
1081
- getConsoleConfig(options?: O): RestResponse<any>;
868
+ delete(queryParams?: {
869
+ assetId?: string[];
870
+ }, options?: O): RestResponse<void>;
1082
871
  /**
1083
- * Loads each installed application's info.json file and returns the documents keyed by application identifier.
1084
- * HTTP GET /apps/info
1085
- * Java method: org.openremote.model.apps.AppResource.getAppInfos
872
+ * Submits a batch of attribute states using current server time and returns one result per input item. Authorization and processing failures are encoded in each AttributeWriteResult rather than returned as an HTTP error.
873
+ * HTTP PUT /asset/attributes
874
+ * Java method: org.openremote.model.asset.AssetResource.writeAttributeValues
875
+ */
876
+ writeAttributeValues(attributeStates: Model.AttributeState[], options?: O): RestResponse<Model.AttributeWriteResult[]>;
877
+ /**
878
+ * Submits a batch of complete attribute events and returns one result per input item. Supplied timestamps are preserved; authorization and processing failures are encoded per result rather than returned as an HTTP error.
879
+ * HTTP PUT /asset/attributes/timestamp
880
+ * Java method: org.openremote.model.asset.AssetResource.writeAttributeEvents
881
+ */
882
+ writeAttributeEvents(attributeEvents: Model.AttributeEvent[], options?: O): RestResponse<Model.AttributeWriteResult[]>;
883
+ /**
884
+ * Returns only the number of assets matching an AssetQuery after applying the caller's realm, public, and linked-asset access constraints.
885
+ * HTTP POST /asset/count
886
+ * Java method: org.openremote.model.asset.AssetResource.queryCount
887
+ */
888
+ queryCount(query: Model.AssetQuery, options?: O): RestResponse<number>;
889
+ /**
890
+ * Clears the parent reference of every asset listed in repeated assetIds query parameters.
891
+ * HTTP DELETE /asset/parent
892
+ * Java method: org.openremote.model.asset.AssetResource.updateNoneParent
893
+ */
894
+ updateNoneParent(queryParams?: {
895
+ assetIds?: string[];
896
+ }, options?: O): RestResponse<void>;
897
+ /**
898
+ * Returns the asset identity and properties without loading attributes or path data. The same access rules as getAsset apply.
899
+ * HTTP GET /asset/partial/{assetId}
900
+ * Java method: org.openremote.model.asset.AssetResource.getPartial
901
+ */
902
+ getPartial(assetId: string, options?: O): RestResponse<Model.Asset>;
903
+ /**
904
+ * Executes an AssetQuery after constraining realm and linked-asset access. Anonymous callers receive public-readable assets only; the query select clause controls which fields are populated.
905
+ * HTTP POST /asset/query
906
+ * Java method: org.openremote.model.asset.AssetResource.queryAssets
907
+ */
908
+ queryAssets(query: Model.AssetQuery, options?: O): RestResponse<Model.Asset[]>;
909
+ /**
910
+ * Applies the same authorization and selection rules as queryAssets, then returns a hierarchy optimized for tree display rather than a flat asset array.
911
+ * HTTP POST /asset/tree
912
+ * Java method: org.openremote.model.asset.AssetResource.queryAssetTree
913
+ */
914
+ queryAssetTree(query: Model.AssetQuery, options?: O): RestResponse<Model.AssetTree>;
915
+ /**
916
+ * Returns partial linked assets for a restricted user, root assets for an unrestricted realm user, and an empty array for a super user. Attributes and paths are omitted; use getAsset for full details.
917
+ * HTTP GET /asset/user/current
918
+ * Java method: org.openremote.model.asset.AssetResource.getCurrentUserAssets
919
+ */
920
+ getCurrentUserAssets(options?: O): RestResponse<Model.Asset[]>;
921
+ /**
922
+ * Creates all supplied links as one operation. Every item must identify the same realm and user, and every referenced realm, user, and asset must exist.
923
+ * HTTP POST /asset/user/link
924
+ * Java method: org.openremote.model.asset.AssetResource.createUserAssetLinks
925
+ */
926
+ createUserAssetLinks(userAssets: Model.UserAssetLink[], options?: O): RestResponse<void>;
927
+ /**
928
+ * Returns user-asset links in the required realm, optionally filtered by userId and assetId. Missing users or assets produce an empty result; restricted users cannot call this operation.
929
+ * HTTP GET /asset/user/link
930
+ * Java method: org.openremote.model.asset.AssetResource.getUserAssetLinks
931
+ */
932
+ getUserAssetLinks(queryParams?: {
933
+ realm?: string;
934
+ userId?: string;
935
+ assetId?: string;
936
+ }, options?: O): RestResponse<Model.UserAssetLink[]>;
937
+ /**
938
+ * Removes all supplied links. Every item must identify the same realm and user.
939
+ * HTTP POST /asset/user/link/delete
940
+ * Java method: org.openremote.model.asset.AssetResource.deleteUserAssetLinks
941
+ */
942
+ deleteUserAssetLinks(userAssets: Model.UserAssetLink[], options?: O): RestResponse<void>;
943
+ /**
944
+ * Removes every asset link belonging to the user in the requested realm.
945
+ * HTTP DELETE /asset/user/link/{realm}/{userId}
946
+ * Java method: org.openremote.model.asset.AssetResource.deleteAllUserAssetLinks
947
+ */
948
+ deleteAllUserAssetLinks(realm: string, userId: string, options?: O): RestResponse<void>;
949
+ /**
950
+ * Removes the link identified by realm, user, and asset. The caller must be allowed to administer asset links in that realm.
951
+ * HTTP DELETE /asset/user/link/{realm}/{userId}/{assetId}
952
+ * Java method: org.openremote.model.asset.AssetResource.deleteUserAssetLink
953
+ */
954
+ deleteUserAssetLink(realm: string, userId: string, assetId: string, options?: O): RestResponse<void>;
955
+ /**
956
+ * Returns a fully loaded asset including its path and attributes. Access is constrained to the caller's realm and, for restricted users, linked assets.
957
+ * HTTP GET /asset/{assetId}
958
+ * Java method: org.openremote.model.asset.AssetResource.get
959
+ */
960
+ get(assetId: string, options?: O): RestResponse<Model.Asset>;
961
+ /**
962
+ * Replaces mutable asset data while preserving the path identifier. Realm, parent, restricted-user, and private-metadata rules are validated; disallowed restricted-user fields may be ignored.
963
+ * HTTP PUT /asset/{assetId}
964
+ * Java method: org.openremote.model.asset.AssetResource.update
965
+ */
966
+ update(assetId: string, asset: Model.Asset, options?: O): RestResponse<Model.Asset>;
967
+ /**
968
+ * Submits an asynchronous attribute write using the current server time. The result reports whether the event was accepted, not whether downstream processing ultimately succeeded. Anonymous writes require public-write metadata.
969
+ * Response code 400 - The attribute write failed
970
+ * Response code 406 - The supplied value is not valid for the attribute
971
+ * Response code 429 - The attribute event queue is full; retry the write later
972
+ * HTTP PUT /asset/{assetId}/attribute/{attributeName}
973
+ * Java method: org.openremote.model.asset.AssetResource.writeAttributeValue
974
+ */
975
+ writeAttributeValue$PUT$asset_assetId_attribute_attributeName(assetId: string, attributeName: string, value: any, options?: O): RestResponse<Model.AttributeWriteResult>;
976
+ /**
977
+ * Submits an asynchronous attribute write using the supplied Unix timestamp in milliseconds. The result reports acceptance only; anonymous writes require public-write metadata.
978
+ * Response code 400 - The attribute write failed
979
+ * Response code 406 - The supplied value is not valid for the attribute
980
+ * Response code 429 - The attribute event queue is full; retry the write later
981
+ * HTTP PUT /asset/{assetId}/attribute/{attributeName}/{timestamp}
982
+ * Java method: org.openremote.model.asset.AssetResource.writeAttributeValue
983
+ */
984
+ writeAttributeValue$PUT$asset_assetId_attribute_attributeName_timestamp(assetId: string, attributeName: string, timestamp: number, value: any, options?: O): RestResponse<Model.AttributeWriteResult>;
985
+ /**
986
+ * Sets parentAssetId as the parent of every asset listed in repeated assetIds query parameters. Parent and children must satisfy realm, access, and hierarchy constraints.
987
+ * HTTP PUT /asset/{parentAssetId}/child
988
+ * Java method: org.openremote.model.asset.AssetResource.updateParent
1086
989
  */
1087
- getAppInfos(options?: O): RestResponse<{
1088
- [index: string]: any;
1089
- }>;
990
+ updateParent(parentAssetId: string, queryParams?: {
991
+ assetIds?: string[];
992
+ }, options?: O): RestResponse<void>;
1090
993
  }
1091
994
  export declare class RealmResourceClient<O> {
1092
995
  protected httpClient: HttpClient<O>;
@@ -1131,94 +1034,191 @@ export declare class RealmResourceClient<O> {
1131
1034
  */
1132
1035
  update(name: string, realm: Model.Realm, options?: O): RestResponse<void>;
1133
1036
  }
1134
- export declare class AgentResourceClient<O> {
1037
+ export declare class AlarmResourceClient<O> {
1135
1038
  protected httpClient: HttpClient<O>;
1136
1039
  constructor(httpClient: HttpClient<O>);
1137
1040
  /**
1138
- * Runs the agent protocol's asset discovery, waits up to ten seconds for results, returns the discovered tree, and asynchronously persists discovered assets below the agent.
1139
- * HTTP GET /agent/assetDiscovery/{agentId}
1140
- * Java method: org.openremote.model.asset.agent.AgentResource.doProtocolAssetDiscovery
1041
+ * Creates a manual alarm in an accessible realm and optionally links it to the supplied asset IDs. The authenticated user or client becomes the alarm source.
1042
+ * HTTP POST /alarm
1043
+ * Java method: org.openremote.model.alarm.AlarmResource.createAlarm
1141
1044
  */
1142
- doProtocolAssetDiscovery(agentId: string, queryParams?: {
1143
- realm?: string;
1144
- }, options?: O): RestResponse<Model.AssetTreeNode[]>;
1045
+ createAlarm(alarm: Model.Alarm, queryParams?: {
1046
+ assetIds?: string[];
1047
+ }, options?: O): RestResponse<Model.SentAlarm>;
1145
1048
  /**
1146
- * Decodes the supplied FileInfo, asks the agent protocol to import it, persists the returned asset tree below the agent, and returns that tree.
1147
- * Response code 405 - The selected agent protocol does not support asset import
1148
- * HTTP POST /agent/assetImport/{agentId}
1149
- * Java method: org.openremote.model.asset.agent.AgentResource.doProtocolAssetImport
1049
+ * Returns alarms in the requested accessible realm, optionally filtered by status, linked asset, or assignee. When realm is omitted, the authenticated realm is used.
1050
+ * HTTP GET /alarm
1051
+ * Java method: org.openremote.model.alarm.AlarmResource.getAlarms
1150
1052
  */
1151
- doProtocolAssetImport(agentId: string, fileInfo: Model.FileInfo, queryParams?: {
1053
+ getAlarms(queryParams?: {
1152
1054
  realm?: string;
1153
- }, options?: O): RestResponse<Model.AssetTreeNode[]>;
1055
+ status?: Model.AlarmStatus;
1056
+ assetId?: string;
1057
+ assigneeId?: string;
1058
+ }, options?: O): RestResponse<Model.SentAlarm[]>;
1154
1059
  /**
1155
- * Runs instance discovery for an agent type and returns candidate Agent assets. parentId selects local versus edge-gateway discovery; non-super users are always constrained to their authenticated realm.
1156
- * Response code 415 - The selected agent protocol does not support instance discovery
1157
- * HTTP GET /agent/instanceDiscovery/{agentType}
1158
- * Java method: org.openremote.model.asset.agent.AgentResource.doProtocolInstanceDiscovery
1060
+ * Permanently removes all alarms identified by the request body after verifying access to every alarm's realm.
1061
+ * HTTP DELETE /alarm
1062
+ * Java method: org.openremote.model.alarm.AlarmResource.removeAlarms
1159
1063
  */
1160
- doProtocolInstanceDiscovery(agentType: string, queryParams?: {
1161
- parentId?: string;
1064
+ removeAlarms(ids: number[], options?: O): RestResponse<void>;
1065
+ /**
1066
+ * Adds links between assets and one existing alarm.
1067
+
1068
+ The request body is a list for backward compatibility, but this operation now has single-alarm semantics:
1069
+ every item must contain the same `id.realm` and the same `id.alarmId`. The alarm must exist in that realm,
1070
+ every asset must exist in the same realm, and the authenticated user must have access to that realm. Requests
1071
+ containing mixed alarm IDs or realms are rejected as bad requests.
1072
+
1073
+ Existing links are left unchanged; duplicate links in the request or links that already exist are ignored.
1074
+ This operation does not remove existing links from the alarm.
1075
+
1076
+ * HTTP PUT /alarm/assets
1077
+ * Java method: org.openremote.model.alarm.AlarmResource.setAssetLinks
1078
+ */
1079
+ setAssetLinks(links: Model.AlarmAssetLink[], options?: O): RestResponse<void>;
1080
+ /**
1081
+ * Returns one alarm when its realm is active and accessible to the authenticated user.
1082
+ * HTTP GET /alarm/{alarmId}
1083
+ * Java method: org.openremote.model.alarm.AlarmResource.getAlarm
1084
+ */
1085
+ getAlarm(alarmId: number, options?: O): RestResponse<Model.SentAlarm>;
1086
+ /**
1087
+ * Permanently removes one alarm after verifying access to its realm.
1088
+ * HTTP DELETE /alarm/{alarmId}
1089
+ * Java method: org.openremote.model.alarm.AlarmResource.removeAlarm
1090
+ */
1091
+ removeAlarm(alarmId: number, options?: O): RestResponse<void>;
1092
+ /**
1093
+ * Updates the mutable state of an existing alarm after verifying access to its current realm.
1094
+ * HTTP PUT /alarm/{alarmId}
1095
+ * Java method: org.openremote.model.alarm.AlarmResource.updateAlarm
1096
+ */
1097
+ updateAlarm(alarmId: number, alarm: Model.SentAlarm, options?: O): RestResponse<void>;
1098
+ /**
1099
+ * Returns links from the alarm to assets in the explicitly supplied accessible realm.
1100
+ * HTTP GET /alarm/{alarmId}/assets
1101
+ * Java method: org.openremote.model.alarm.AlarmResource.getAssetLinks
1102
+ */
1103
+ getAssetLinks(alarmId: number, queryParams?: {
1162
1104
  realm?: string;
1163
- }, options?: O): RestResponse<Model.Agent[]>;
1105
+ }, options?: O): RestResponse<Model.AlarmAssetLink[]>;
1164
1106
  }
1165
- export declare class ConsoleResourceClient<O> {
1107
+ export declare class ConfigurationResourceClient<O> {
1166
1108
  protected httpClient: HttpClient<O>;
1167
1109
  constructor(httpClient: HttpClient<O>);
1168
1110
  /**
1169
- * Creates an anonymous console registration when id is absent, or updates an existing registration when id is present. Authenticated new registrations are linked to the caller; updates require that link. The returned registration contains the durable asset ID for later calls.
1170
- * HTTP POST /console/register
1171
- * Java method: org.openremote.model.console.ConsoleResource.register
1111
+ * Returns the public Manager application configuration used by clients before and after authentication.
1112
+ * HTTP GET /configuration/manager
1113
+ * Java method: org.openremote.model.manager.ConfigurationResource.getManagerConfig
1172
1114
  */
1173
- register(consoleRegistration: Model.ConsoleRegistration, options?: O): RestResponse<Model.ConsoleRegistration>;
1115
+ getManagerConfig(options?: O): RestResponse<Model.ManagerAppConfig>;
1116
+ /**
1117
+ * Replaces manager_config.json and returns the stored configuration. This administrative change affects Manager UI branding and behavior.
1118
+ * HTTP PUT /configuration/manager
1119
+ * Java method: org.openremote.model.manager.ConfigurationResource.update
1120
+ */
1121
+ update(managerConfiguration: Model.ManagerAppConfig, options?: O): RestResponse<Model.ManagerAppConfig>;
1122
+ /**
1123
+ * Decodes and stores the supplied FileInfo under the requested relative path, then returns its Manager API path.
1124
+ * HTTP POST /configuration/manager/file
1125
+ * Java method: org.openremote.model.manager.ConfigurationResource.fileUpload
1126
+ */
1127
+ fileUpload(fileInfo: Model.FileInfo, queryParams?: {
1128
+ path?: string;
1129
+ }, options?: O): RestResponse<string>;
1130
+ /**
1131
+ * Streams a previously uploaded configuration image using its detected media type.
1132
+ * Response code 200 - The image file
1133
+ * HTTP GET /configuration/manager/image/{filename: .+}
1134
+ * Java method: org.openremote.model.manager.ConfigurationResource.getManagerConfigImage
1135
+ */
1136
+ getManagerConfigImage(filename: string, options?: O): RestResponse<any>;
1137
+ }
1138
+ export declare class SyslogResourceClient<O> {
1139
+ protected httpClient: HttpClient<O>;
1140
+ constructor(httpClient: HttpClient<O>);
1141
+ /**
1142
+ * Returns the current log-storage and retention configuration.
1143
+ * HTTP GET /syslog/config
1144
+ * Java method: org.openremote.model.syslog.SyslogResource.getConfig
1145
+ */
1146
+ getConfig(options?: O): RestResponse<Model.SyslogConfig>;
1147
+ /**
1148
+ * Validates and applies log-storage and retention settings.
1149
+ * HTTP PUT /syslog/config
1150
+ * Java method: org.openremote.model.syslog.SyslogResource.updateConfig
1151
+ */
1152
+ updateConfig(config: Model.SyslogConfig, options?: O): RestResponse<void>;
1153
+ /**
1154
+ * Permanently removes all events from the configured syslog storage.
1155
+ * HTTP DELETE /syslog/event
1156
+ * Java method: org.openremote.model.syslog.SyslogResource.clearEvents
1157
+ */
1158
+ clearEvents(options?: O): RestResponse<void>;
1159
+ /**
1160
+ * Returns a page of log events filtered by severity, Unix-millisecond time range, categories, and subcategories. RFC 8288 Link headers point to the next and last pages.
1161
+ * Response code 200 - The requested page of syslog events
1162
+ * HTTP GET /syslog/event
1163
+ * Java method: org.openremote.model.syslog.SyslogResource.getEvents
1164
+ */
1165
+ getEvents(queryParams?: {
1166
+ level?: Model.SyslogLevel;
1167
+ per_page?: number;
1168
+ page?: number;
1169
+ from?: number;
1170
+ to?: number;
1171
+ category?: Model.SyslogCategory[];
1172
+ subCategory?: string[];
1173
+ }, options?: O): RestResponse<any>;
1174
1174
  }
1175
1175
  export type RestResponse<R> = Promise<Axios.GenericAxiosResponse<R>>;
1176
1176
  export declare class ApiClient {
1177
- protected _statusResource: AxiosStatusResourceClient;
1178
- protected _userResource: AxiosUserResourceClient;
1179
- protected _provisioningResource: AxiosProvisioningResourceClient;
1180
- protected _assetPredictedDatapointResource: AxiosAssetPredictedDatapointResourceClient;
1181
1177
  protected _dashboardResource: AxiosDashboardResourceClient;
1182
- protected _alarmResource: AxiosAlarmResourceClient;
1183
- protected _gatewayClientResource: AxiosGatewayClientResourceClient;
1184
- protected _assetResource: AxiosAssetResourceClient;
1185
- protected _configurationResource: AxiosConfigurationResourceClient;
1178
+ protected _appResource: AxiosAppResourceClient;
1179
+ protected _provisioningResource: AxiosProvisioningResourceClient;
1180
+ protected _gatewayServiceResource: AxiosGatewayServiceResourceClient;
1181
+ protected _assetDatapointResource: AxiosAssetDatapointResourceClient;
1186
1182
  protected _externalServiceResource: AxiosExternalServiceResourceClient;
1183
+ protected _gatewayClientResource: AxiosGatewayClientResourceClient;
1187
1184
  protected _mapResource: AxiosMapResourceClient;
1188
- protected _assetDatapointResource: AxiosAssetDatapointResourceClient;
1189
- protected _syslogResource: AxiosSyslogResourceClient;
1185
+ protected _rulesResource: AxiosRulesResourceClient;
1186
+ protected _consoleResource: AxiosConsoleResourceClient;
1190
1187
  protected _flowResource: AxiosFlowResourceClient;
1188
+ protected _userResource: AxiosUserResourceClient;
1191
1189
  protected _notificationResource: AxiosNotificationResourceClient;
1192
- protected _rulesResource: AxiosRulesResourceClient;
1190
+ protected _assetPredictedDatapointResource: AxiosAssetPredictedDatapointResourceClient;
1193
1191
  protected _assetModelResource: AxiosAssetModelResourceClient;
1194
- protected _gatewayServiceResource: AxiosGatewayServiceResourceClient;
1195
- protected _appResource: AxiosAppResourceClient;
1196
- protected _realmResource: AxiosRealmResourceClient;
1192
+ protected _statusResource: AxiosStatusResourceClient;
1197
1193
  protected _agentResource: AxiosAgentResourceClient;
1198
- protected _consoleResource: AxiosConsoleResourceClient;
1194
+ protected _assetResource: AxiosAssetResourceClient;
1195
+ protected _realmResource: AxiosRealmResourceClient;
1196
+ protected _alarmResource: AxiosAlarmResourceClient;
1197
+ protected _configurationResource: AxiosConfigurationResourceClient;
1198
+ protected _syslogResource: AxiosSyslogResourceClient;
1199
1199
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1200
- get StatusResource(): AxiosStatusResourceClient;
1201
- get UserResource(): AxiosUserResourceClient;
1202
- get ProvisioningResource(): AxiosProvisioningResourceClient;
1203
- get AssetPredictedDatapointResource(): AxiosAssetPredictedDatapointResourceClient;
1204
1200
  get DashboardResource(): AxiosDashboardResourceClient;
1205
- get AlarmResource(): AxiosAlarmResourceClient;
1206
- get GatewayClientResource(): AxiosGatewayClientResourceClient;
1207
- get AssetResource(): AxiosAssetResourceClient;
1208
- get ConfigurationResource(): AxiosConfigurationResourceClient;
1201
+ get AppResource(): AxiosAppResourceClient;
1202
+ get ProvisioningResource(): AxiosProvisioningResourceClient;
1203
+ get GatewayServiceResource(): AxiosGatewayServiceResourceClient;
1204
+ get AssetDatapointResource(): AxiosAssetDatapointResourceClient;
1209
1205
  get ExternalServiceResource(): AxiosExternalServiceResourceClient;
1206
+ get GatewayClientResource(): AxiosGatewayClientResourceClient;
1210
1207
  get MapResource(): AxiosMapResourceClient;
1211
- get AssetDatapointResource(): AxiosAssetDatapointResourceClient;
1212
- get SyslogResource(): AxiosSyslogResourceClient;
1208
+ get RulesResource(): AxiosRulesResourceClient;
1209
+ get ConsoleResource(): AxiosConsoleResourceClient;
1213
1210
  get FlowResource(): AxiosFlowResourceClient;
1211
+ get UserResource(): AxiosUserResourceClient;
1214
1212
  get NotificationResource(): AxiosNotificationResourceClient;
1215
- get RulesResource(): AxiosRulesResourceClient;
1213
+ get AssetPredictedDatapointResource(): AxiosAssetPredictedDatapointResourceClient;
1216
1214
  get AssetModelResource(): AxiosAssetModelResourceClient;
1217
- get GatewayServiceResource(): AxiosGatewayServiceResourceClient;
1218
- get AppResource(): AxiosAppResourceClient;
1219
- get RealmResource(): AxiosRealmResourceClient;
1215
+ get StatusResource(): AxiosStatusResourceClient;
1220
1216
  get AgentResource(): AxiosAgentResourceClient;
1221
- get ConsoleResource(): AxiosConsoleResourceClient;
1217
+ get AssetResource(): AxiosAssetResourceClient;
1218
+ get RealmResource(): AxiosRealmResourceClient;
1219
+ get AlarmResource(): AxiosAlarmResourceClient;
1220
+ get ConfigurationResource(): AxiosConfigurationResourceClient;
1221
+ get SyslogResource(): AxiosSyslogResourceClient;
1222
1222
  }
1223
1223
  import * as Axios from "axios";
1224
1224
  declare module "axios" {
@@ -1226,70 +1226,70 @@ declare module "axios" {
1226
1226
  data: R;
1227
1227
  }
1228
1228
  }
1229
- export declare class AxiosStatusResourceClient extends StatusResourceClient<Axios.AxiosRequestConfig> {
1229
+ export declare class AxiosDashboardResourceClient extends DashboardResourceClient<Axios.AxiosRequestConfig> {
1230
1230
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1231
1231
  }
1232
- export declare class AxiosUserResourceClient extends UserResourceClient<Axios.AxiosRequestConfig> {
1232
+ export declare class AxiosAppResourceClient extends AppResourceClient<Axios.AxiosRequestConfig> {
1233
1233
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1234
1234
  }
1235
1235
  export declare class AxiosProvisioningResourceClient extends ProvisioningResourceClient<Axios.AxiosRequestConfig> {
1236
1236
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1237
1237
  }
1238
- export declare class AxiosAssetPredictedDatapointResourceClient extends AssetPredictedDatapointResourceClient<Axios.AxiosRequestConfig> {
1238
+ export declare class AxiosGatewayServiceResourceClient extends GatewayServiceResourceClient<Axios.AxiosRequestConfig> {
1239
1239
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1240
1240
  }
1241
- export declare class AxiosDashboardResourceClient extends DashboardResourceClient<Axios.AxiosRequestConfig> {
1241
+ export declare class AxiosAssetDatapointResourceClient extends AssetDatapointResourceClient<Axios.AxiosRequestConfig> {
1242
1242
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1243
1243
  }
1244
- export declare class AxiosAlarmResourceClient extends AlarmResourceClient<Axios.AxiosRequestConfig> {
1244
+ export declare class AxiosExternalServiceResourceClient extends ExternalServiceResourceClient<Axios.AxiosRequestConfig> {
1245
1245
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1246
1246
  }
1247
1247
  export declare class AxiosGatewayClientResourceClient extends GatewayClientResourceClient<Axios.AxiosRequestConfig> {
1248
1248
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1249
1249
  }
1250
- export declare class AxiosAssetResourceClient extends AssetResourceClient<Axios.AxiosRequestConfig> {
1250
+ export declare class AxiosMapResourceClient extends MapResourceClient<Axios.AxiosRequestConfig> {
1251
1251
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1252
1252
  }
1253
- export declare class AxiosConfigurationResourceClient extends ConfigurationResourceClient<Axios.AxiosRequestConfig> {
1253
+ export declare class AxiosRulesResourceClient extends RulesResourceClient<Axios.AxiosRequestConfig> {
1254
1254
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1255
1255
  }
1256
- export declare class AxiosExternalServiceResourceClient extends ExternalServiceResourceClient<Axios.AxiosRequestConfig> {
1256
+ export declare class AxiosConsoleResourceClient extends ConsoleResourceClient<Axios.AxiosRequestConfig> {
1257
1257
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1258
1258
  }
1259
- export declare class AxiosMapResourceClient extends MapResourceClient<Axios.AxiosRequestConfig> {
1259
+ export declare class AxiosFlowResourceClient extends FlowResourceClient<Axios.AxiosRequestConfig> {
1260
1260
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1261
1261
  }
1262
- export declare class AxiosAssetDatapointResourceClient extends AssetDatapointResourceClient<Axios.AxiosRequestConfig> {
1262
+ export declare class AxiosUserResourceClient extends UserResourceClient<Axios.AxiosRequestConfig> {
1263
1263
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1264
1264
  }
1265
- export declare class AxiosSyslogResourceClient extends SyslogResourceClient<Axios.AxiosRequestConfig> {
1265
+ export declare class AxiosNotificationResourceClient extends NotificationResourceClient<Axios.AxiosRequestConfig> {
1266
1266
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1267
1267
  }
1268
- export declare class AxiosFlowResourceClient extends FlowResourceClient<Axios.AxiosRequestConfig> {
1268
+ export declare class AxiosAssetPredictedDatapointResourceClient extends AssetPredictedDatapointResourceClient<Axios.AxiosRequestConfig> {
1269
1269
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1270
1270
  }
1271
- export declare class AxiosNotificationResourceClient extends NotificationResourceClient<Axios.AxiosRequestConfig> {
1271
+ export declare class AxiosAssetModelResourceClient extends AssetModelResourceClient<Axios.AxiosRequestConfig> {
1272
1272
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1273
1273
  }
1274
- export declare class AxiosRulesResourceClient extends RulesResourceClient<Axios.AxiosRequestConfig> {
1274
+ export declare class AxiosStatusResourceClient extends StatusResourceClient<Axios.AxiosRequestConfig> {
1275
1275
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1276
1276
  }
1277
- export declare class AxiosAssetModelResourceClient extends AssetModelResourceClient<Axios.AxiosRequestConfig> {
1277
+ export declare class AxiosAgentResourceClient extends AgentResourceClient<Axios.AxiosRequestConfig> {
1278
1278
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1279
1279
  }
1280
- export declare class AxiosGatewayServiceResourceClient extends GatewayServiceResourceClient<Axios.AxiosRequestConfig> {
1280
+ export declare class AxiosAssetResourceClient extends AssetResourceClient<Axios.AxiosRequestConfig> {
1281
1281
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1282
1282
  }
1283
- export declare class AxiosAppResourceClient extends AppResourceClient<Axios.AxiosRequestConfig> {
1283
+ export declare class AxiosRealmResourceClient extends RealmResourceClient<Axios.AxiosRequestConfig> {
1284
1284
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1285
1285
  }
1286
- export declare class AxiosRealmResourceClient extends RealmResourceClient<Axios.AxiosRequestConfig> {
1286
+ export declare class AxiosAlarmResourceClient extends AlarmResourceClient<Axios.AxiosRequestConfig> {
1287
1287
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1288
1288
  }
1289
- export declare class AxiosAgentResourceClient extends AgentResourceClient<Axios.AxiosRequestConfig> {
1289
+ export declare class AxiosConfigurationResourceClient extends ConfigurationResourceClient<Axios.AxiosRequestConfig> {
1290
1290
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1291
1291
  }
1292
- export declare class AxiosConsoleResourceClient extends ConsoleResourceClient<Axios.AxiosRequestConfig> {
1292
+ export declare class AxiosSyslogResourceClient extends SyslogResourceClient<Axios.AxiosRequestConfig> {
1293
1293
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1294
1294
  }
1295
1295
  //# sourceMappingURL=restclient.d.ts.map