Skip to content

Commit 57cc13e

Browse files
authored
Forepic/35771 prelogin notice (#1148)
Add pre-login notice configuration to admin-api, expose with api/v1/frontend/configuration
1 parent e6c1eed commit 57cc13e

18 files changed

+916
-660
lines changed

ext/hivemq-edge-openapi-2025.14-SNAPSHOT.yaml

Lines changed: 66 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ paths:
101101
responses:
102102
default:
103103
content:
104-
'*/*': {}
104+
'*/*': { }
105105
description: default response
106106
/api/v1/auth/authenticate:
107107
post:
@@ -196,8 +196,8 @@ paths:
196196
Get all policies.
197197
198198
This endpoint returns the content of the policies with the content-type `application/json`.
199+
199200
200-
201201
operationId: getAllBehaviorPolicies
202202
parameters:
203203
- description: 'Comma-separated list of fields to include in the response. Allowed values are: id, createdAt, lastUpdatedAt, deserialization, matching, behavior, onTransitions'
@@ -247,7 +247,7 @@ paths:
247247
clientIdRegex: .*
248248
behavior:
249249
id: Mqtt.events
250-
arguments: {}
250+
arguments: { }
251251
onTransitions:
252252
- fromState: Any.*
253253
toState: Any.*
@@ -265,7 +265,7 @@ paths:
265265
clientIdRegex: .*
266266
behavior:
267267
id: Mqtt.events
268-
arguments: {}
268+
arguments: { }
269269
onTransitions:
270270
- fromState: Any.*
271271
toState: Any.*
@@ -288,7 +288,7 @@ paths:
288288
clientIdRegex: .*
289289
behavior:
290290
id: Mqtt.events
291-
arguments: {}
291+
arguments: { }
292292
onTransitions:
293293
- fromState: Any.*
294294
toState: Any.*
@@ -306,7 +306,7 @@ paths:
306306
clientIdRegex: .*
307307
behavior:
308308
id: Mqtt.events
309-
arguments: {}
309+
arguments: { }
310310
onTransitions:
311311
- fromState: Any.*
312312
toState: Any.*
@@ -340,7 +340,7 @@ paths:
340340
clientIdRegex: .*
341341
behavior:
342342
id: Mqtt.events
343-
arguments: {}
343+
arguments: { }
344344
onTransitions:
345345
- fromState: Any.*
346346
toState: Any.*
@@ -387,7 +387,7 @@ paths:
387387
version: latest
388388
behavior:
389389
id: Mqtt.events
390-
arguments: {}
390+
arguments: { }
391391
onTransitions:
392392
- fromState: Any.*
393393
toState: Any.*
@@ -425,10 +425,10 @@ paths:
425425
schema:
426426
schemaId: schema
427427
version: latest
428-
arguments: {}
428+
arguments: { }
429429
behavior:
430430
id: Mqtt.events
431-
arguments: {}
431+
arguments: { }
432432
onTransitions:
433433
- fromState: Any.*
434434
toState: Any.*
@@ -479,8 +479,8 @@ paths:
479479
delete:
480480
description: |-
481481
Deletes an existing policy.
482+
482483
483-
484484
operationId: deleteBehaviorPolicy
485485
parameters:
486486
- description: The identifier of the policy to delete.
@@ -537,8 +537,8 @@ paths:
537537
Get a specific policy.
538538
539539
This endpoint returns the content of the policy with the content-type `application/json`.
540+
540541
541-
542542
operationId: getBehaviorPolicy
543543
parameters:
544544
- description: The identifier of the policy.
@@ -577,10 +577,10 @@ paths:
577577
schema:
578578
schemaId: schema
579579
version: latest
580-
arguments: {}
580+
arguments: { }
581581
behavior:
582582
id: Mqtt.events
583-
arguments: {}
583+
arguments: { }
584584
onTransitions:
585585
- fromState: Any.*
586586
toState: Any.*
@@ -614,7 +614,7 @@ paths:
614614
Update a behavior policy
615615
616616
The path parameter 'policyId' must match the 'id' of the policy in the request body.
617-
617+
618618
operationId: updateBehaviorPolicy
619619
parameters:
620620
- description: The identifier of the policy.
@@ -649,7 +649,7 @@ paths:
649649
version: latest
650650
behavior:
651651
id: Mqtt.events
652-
arguments: {}
652+
arguments: { }
653653
onTransitions:
654654
- fromState: Any.*
655655
toState: Any.*
@@ -687,10 +687,10 @@ paths:
687687
schema:
688688
schemaId: schema
689689
version: latest
690-
arguments: {}
690+
arguments: { }
691691
behavior:
692692
id: Mqtt.events
693-
arguments: {}
693+
arguments: { }
694694
onTransitions:
695695
- fromState: Any.*
696696
toState: Any.*
@@ -809,8 +809,8 @@ paths:
809809
Get all data policies.
810810
811811
This endpoint returns the content of the policies with the content-type `application/json`.
812+
812813
813-
814814
operationId: getAllDataPolicies
815815
parameters:
816816
- description: 'Comma-separated list of fields to include in the response. Allowed values are: id, createdAt, lastUpdatedAt, matching, validation, onSuccess, onFailure'
@@ -1187,8 +1187,8 @@ paths:
11871187
delete:
11881188
description: |-
11891189
Deletes an existing data policy.
1190+
11901191
1191-
11921192
operationId: deleteDataPolicy
11931193
parameters:
11941194
- description: The identifier of the data policy to delete.
@@ -1239,8 +1239,8 @@ paths:
12391239
Get a specific data policy.
12401240
12411241
This endpoint returns the content of the policy with the content-type `application/json`.
1242+
12421243
1243-
12441244
operationId: getDataPolicy
12451245
parameters:
12461246
- description: The identifier of the policy.
@@ -1332,7 +1332,7 @@ paths:
13321332
13331333
The path parameter 'policyId' must match the 'id' of the policy in the request body.
13341334
The matching part of policies cannot be changed with an update.
1335-
1335+
13361336
operationId: updateDataPolicy
13371337
parameters:
13381338
- description: The identifier of the policy.
@@ -1513,8 +1513,8 @@ paths:
15131513
title: Mqtt.events
15141514
description: This FSM does not require any arguments.
15151515
type: object
1516-
required: []
1517-
properties: {}
1516+
required: [ ]
1517+
properties: { }
15181518
- if:
15191519
type: object
15201520
properties:
@@ -1527,8 +1527,8 @@ paths:
15271527
title: Publish.duplicate options
15281528
description: This FSM does not require any arguments.
15291529
type: object
1530-
required: []
1531-
properties: {}
1530+
required: [ ]
1531+
properties: { }
15321532
schema:
15331533
$ref: '#/components/schemas/JsonNode'
15341534
description: Success
@@ -1596,7 +1596,7 @@ paths:
15961596
- title: Mqtt.drop
15971597
description: Drops the MQTT packet that is currently processed
15981598
type: object
1599-
required: []
1599+
required: [ ]
16001600
metaData:
16011601
isTerminal: false
16021602
isDataOnly: false
@@ -1628,12 +1628,12 @@ paths:
16281628
- title: Mqtt.disconnect
16291629
description: Disconnects the client
16301630
type: object
1631-
required: []
1631+
required: [ ]
16321632
metaData:
16331633
isTerminal: true
16341634
isDataOnly: false
16351635
hasArguments: false
1636-
properties: {}
1636+
properties: { }
16371637
- title: Serdes.deserialize
16381638
description: Deserializes a binary MQTT message payload into a data object based on the configured JSON Schema or Protobuf schema.
16391639
type: object
@@ -1749,8 +1749,8 @@ paths:
17491749
Get all schemas.
17501750
17511751
This endpoint returns the content of the schemas with the content-type `application/json`.
1752+
17521753
1753-
17541754
operationId: getAllSchemas
17551755
parameters:
17561756
- description: 'Comma-separated list of fields to include in the response. Allowed values are: id, type, schemaDefinition, createdAt'
@@ -1959,8 +1959,8 @@ paths:
19591959
delete:
19601960
description: |-
19611961
Deletes the selected schema and all associated versions of the schema.
1962+
19621963
1963-
19641964
operationId: deleteSchema
19651965
parameters:
19661966
- description: The schema identifier of the schema versions to delete.
@@ -2017,8 +2017,8 @@ paths:
20172017
Get a specific schema.
20182018
20192019
This endpoint returns the content of the latest version of the schema with the content-type `application/json`.
2020+
20202021
2021-
20222022
operationId: getSchema
20232023
parameters:
20242024
- description: The identifier of the schema.
@@ -2487,7 +2487,7 @@ paths:
24872487
imageUrl: ''
24882488
external: true
24892489
modules:
2490-
items: []
2490+
items: [ ]
24912491
extensions:
24922492
items:
24932493
- id: extension-1
@@ -2640,12 +2640,12 @@ paths:
26402640
password: '*****'
26412641
loopPreventionEnabled: true
26422642
loopPreventionHopCount: 1
2643-
remoteSubscriptions: []
2643+
remoteSubscriptions: [ ]
26442644
localSubscriptions:
26452645
- filters:
26462646
- '#'
26472647
destination: prefix/{#}/bridge/${bridge.name}
2648-
excludes: []
2648+
excludes: [ ]
26492649
customUserProperties:
26502650
- key: test1
26512651
value: test2
@@ -2656,8 +2656,8 @@ paths:
26562656
keystorePassword: ''
26572657
privateKeyPassword: ''
26582658
truststorePassword: ''
2659-
protocols: []
2660-
cipherSuites: []
2659+
protocols: [ ]
2660+
cipherSuites: [ ]
26612661
keystoreType: JKS
26622662
truststoreType: JKS
26632663
verifyHostname: true
@@ -2777,12 +2777,12 @@ paths:
27772777
password: password
27782778
loopPreventionEnabled: true
27792779
loopPreventionHopCount: 1
2780-
remoteSubscriptions: []
2780+
remoteSubscriptions: [ ]
27812781
localSubscriptions:
27822782
- filters:
27832783
- '#'
27842784
destination: prefix/{#}/bridge/${bridge.name}
2785-
excludes: []
2785+
excludes: [ ]
27862786
customUserProperties:
27872787
- key: test1
27882788
value: test2
@@ -2793,8 +2793,8 @@ paths:
27932793
keystorePassword: ''
27942794
privateKeyPassword: ''
27952795
truststorePassword: ''
2796-
protocols: []
2797-
cipherSuites: []
2796+
protocols: [ ]
2797+
cipherSuites: [ ]
27982798
keystoreType: JKS
27992799
truststoreType: JKS
28002800
verifyHostname: true
@@ -2969,7 +2969,7 @@ paths:
29692969
event-list-result:
29702970
description: Example response with several events.
29712971
summary: Event List result
2972-
value: {}
2972+
value: { }
29732973
schema:
29742974
$ref: '#/components/schemas/EventList'
29752975
description: Success
@@ -3219,7 +3219,7 @@ paths:
32193219
description: ''
32203220
nodeType: VALUE
32213221
selectable: true
3222-
children: []
3222+
children: [ ]
32233223
schema:
32243224
$ref: '#/components/schemas/ValuesTree'
32253225
description: Success
@@ -5103,6 +5103,27 @@ components:
51035103
$ref: '#/components/schemas/Link'
51045104
required:
51055105
- items
5106+
PreLoginNotice:
5107+
type: object
5108+
description: The definition of a notice to be presented to the users before login
5109+
properties:
5110+
enabled:
5111+
type: boolean
5112+
description: Indicates whether the pre-login notice is enabled or not
5113+
default: false
5114+
title:
5115+
type: string
5116+
description: The title of the pre-login notice, also presented to the user
5117+
message:
5118+
type: string
5119+
description: The full text of the pre-login notice
5120+
consent:
5121+
type: string
5122+
description: An optional text for a consent checkbox that, if present, users will need to check to continue to the login itself
5123+
required:
5124+
- enabled
5125+
- message
5126+
- title
51065127
EnvironmentProperties:
51075128
type: object
51085129
description: A map of properties relating to the installation
@@ -5256,6 +5277,8 @@ components:
52565277
trackingAllowed:
52575278
type: boolean
52585279
description: Is the tracking of user actions allowed.
5280+
preLoginNotice:
5281+
$ref: '#/components/schemas/PreLoginNotice'
52595282
Notification:
52605283
type: object
52615284
description: List of result items that are returned by this endpoint

0 commit comments

Comments
 (0)