@pellux/goodvibes-contracts 1.14.0 → 1.16.0
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.
- package/artifacts/operator-contract.json +548 -11
- package/artifacts/operator-openapi.json +639 -7
- package/artifacts/peer-contract.json +8 -4
- package/artifacts/python/homeassistant_operator_client.py +2 -2
- package/dist/generated/foundation-client-types.d.ts +101 -0
- package/dist/generated/foundation-client-types.d.ts.map +1 -1
- package/dist/generated/foundation-metadata.d.ts +2 -2
- package/dist/generated/foundation-metadata.js +2 -2
- package/dist/generated/mock-daemon-fixtures.d.ts.map +1 -1
- package/dist/generated/mock-daemon-fixtures.js +147 -1
- package/dist/generated/operator-contract.d.ts.map +1 -1
- package/dist/generated/operator-contract.js +548 -11
- package/dist/generated/operator-method-ids.d.ts +1 -1
- package/dist/generated/operator-method-ids.d.ts.map +1 -1
- package/dist/generated/operator-method-ids.js +4 -0
- package/dist/generated/peer-contract.d.ts.map +1 -1
- package/dist/generated/peer-contract.js +8 -4
- package/dist/generated/webui-facade.d.ts +2 -2
- package/dist/generated/webui-facade.d.ts.map +1 -1
- package/dist/generated/webui-facade.js +155 -1
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -0
- package/package.json +1 -1
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
"openapi": "3.1.0",
|
|
3
3
|
"info": {
|
|
4
4
|
"title": "GoodVibes Operator API",
|
|
5
|
-
"version": "1.
|
|
6
|
-
"description": "Generated from the operator contract (packages/contracts/artifacts/operator-contract.json).
|
|
5
|
+
"version": "1.16.0",
|
|
6
|
+
"description": "Generated from the operator contract (packages/contracts/artifacts/operator-contract.json). 419 cataloged methods: 368 with dedicated REST bindings, 51 reachable only through the generic invoke endpoint. 97 methods lack typed SDK client IO and are marked with `x-typed-client-io: false` — they are represented honestly, never omitted. Regenerate with `bun run openapi:generate`; drift fails `contracts:check`."
|
|
7
7
|
},
|
|
8
8
|
"servers": [
|
|
9
9
|
{
|
|
@@ -26622,6 +26622,15 @@
|
|
|
26622
26622
|
"items": {}
|
|
26623
26623
|
}
|
|
26624
26624
|
]
|
|
26625
|
+
},
|
|
26626
|
+
"persistedTo": {
|
|
26627
|
+
"type": "string"
|
|
26628
|
+
},
|
|
26629
|
+
"tier": {
|
|
26630
|
+
"type": "string"
|
|
26631
|
+
},
|
|
26632
|
+
"daemonOwned": {
|
|
26633
|
+
"type": "boolean"
|
|
26625
26634
|
}
|
|
26626
26635
|
},
|
|
26627
26636
|
"required": [
|
|
@@ -68977,7 +68986,8 @@
|
|
|
68977
68986
|
"status.request",
|
|
68978
68987
|
"location.request",
|
|
68979
68988
|
"session.message",
|
|
68980
|
-
"automation.run"
|
|
68989
|
+
"automation.run",
|
|
68990
|
+
"device.capability"
|
|
68981
68991
|
]
|
|
68982
68992
|
}
|
|
68983
68993
|
},
|
|
@@ -70259,7 +70269,8 @@
|
|
|
70259
70269
|
"status.request",
|
|
70260
70270
|
"location.request",
|
|
70261
70271
|
"session.message",
|
|
70262
|
-
"automation.run"
|
|
70272
|
+
"automation.run",
|
|
70273
|
+
"device.capability"
|
|
70263
70274
|
]
|
|
70264
70275
|
},
|
|
70265
70276
|
"command": {
|
|
@@ -71967,7 +71978,8 @@
|
|
|
71967
71978
|
"status.request",
|
|
71968
71979
|
"location.request",
|
|
71969
71980
|
"session.message",
|
|
71970
|
-
"automation.run"
|
|
71981
|
+
"automation.run",
|
|
71982
|
+
"device.capability"
|
|
71971
71983
|
]
|
|
71972
71984
|
},
|
|
71973
71985
|
"command": {
|
|
@@ -72349,7 +72361,8 @@
|
|
|
72349
72361
|
"status.request",
|
|
72350
72362
|
"location.request",
|
|
72351
72363
|
"session.message",
|
|
72352
|
-
"automation.run"
|
|
72364
|
+
"automation.run",
|
|
72365
|
+
"device.capability"
|
|
72353
72366
|
]
|
|
72354
72367
|
},
|
|
72355
72368
|
"command": {
|
|
@@ -72667,7 +72680,8 @@
|
|
|
72667
72680
|
"status.request",
|
|
72668
72681
|
"location.request",
|
|
72669
72682
|
"session.message",
|
|
72670
|
-
"automation.run"
|
|
72683
|
+
"automation.run",
|
|
72684
|
+
"device.capability"
|
|
72671
72685
|
]
|
|
72672
72686
|
},
|
|
72673
72687
|
"command": {
|
|
@@ -74026,6 +74040,588 @@
|
|
|
74026
74040
|
]
|
|
74027
74041
|
}
|
|
74028
74042
|
},
|
|
74043
|
+
"/api/devices/grants": {
|
|
74044
|
+
"get": {
|
|
74045
|
+
"operationId": "devices.grants.list",
|
|
74046
|
+
"summary": "List Device Capability Grants",
|
|
74047
|
+
"description": "The durable \"always allow\" grants a person gave, per capability and per device, with when each was granted, when it expires, and how often it has been used — plus the recent ledger of grants given, used, revoked, and expired.",
|
|
74048
|
+
"tags": [
|
|
74049
|
+
"runtime"
|
|
74050
|
+
],
|
|
74051
|
+
"responses": {
|
|
74052
|
+
"200": {
|
|
74053
|
+
"description": "Success",
|
|
74054
|
+
"content": {
|
|
74055
|
+
"application/json": {
|
|
74056
|
+
"schema": {
|
|
74057
|
+
"type": "object",
|
|
74058
|
+
"properties": {
|
|
74059
|
+
"grants": {
|
|
74060
|
+
"type": "array",
|
|
74061
|
+
"items": {
|
|
74062
|
+
"type": "object",
|
|
74063
|
+
"properties": {
|
|
74064
|
+
"grantId": {
|
|
74065
|
+
"type": "string"
|
|
74066
|
+
},
|
|
74067
|
+
"nodeId": {
|
|
74068
|
+
"type": "string"
|
|
74069
|
+
},
|
|
74070
|
+
"nodeKind": {
|
|
74071
|
+
"type": "string"
|
|
74072
|
+
},
|
|
74073
|
+
"capabilityId": {
|
|
74074
|
+
"type": "string"
|
|
74075
|
+
},
|
|
74076
|
+
"capabilityTitle": {
|
|
74077
|
+
"type": "string"
|
|
74078
|
+
},
|
|
74079
|
+
"scope": {
|
|
74080
|
+
"type": "string"
|
|
74081
|
+
},
|
|
74082
|
+
"grantedAt": {
|
|
74083
|
+
"type": "number"
|
|
74084
|
+
},
|
|
74085
|
+
"expiresAt": {
|
|
74086
|
+
"type": "number"
|
|
74087
|
+
},
|
|
74088
|
+
"lastUsedAt": {
|
|
74089
|
+
"anyOf": [
|
|
74090
|
+
{
|
|
74091
|
+
"type": "number"
|
|
74092
|
+
},
|
|
74093
|
+
{
|
|
74094
|
+
"type": "null"
|
|
74095
|
+
}
|
|
74096
|
+
]
|
|
74097
|
+
},
|
|
74098
|
+
"useCount": {
|
|
74099
|
+
"type": "number"
|
|
74100
|
+
},
|
|
74101
|
+
"grantedBy": {
|
|
74102
|
+
"type": "string"
|
|
74103
|
+
}
|
|
74104
|
+
},
|
|
74105
|
+
"required": [
|
|
74106
|
+
"grantId",
|
|
74107
|
+
"nodeId",
|
|
74108
|
+
"nodeKind",
|
|
74109
|
+
"capabilityId",
|
|
74110
|
+
"capabilityTitle",
|
|
74111
|
+
"scope",
|
|
74112
|
+
"grantedAt",
|
|
74113
|
+
"expiresAt",
|
|
74114
|
+
"lastUsedAt",
|
|
74115
|
+
"useCount",
|
|
74116
|
+
"grantedBy"
|
|
74117
|
+
],
|
|
74118
|
+
"additionalProperties": false
|
|
74119
|
+
}
|
|
74120
|
+
},
|
|
74121
|
+
"audit": {
|
|
74122
|
+
"type": "array",
|
|
74123
|
+
"items": {
|
|
74124
|
+
"type": "object",
|
|
74125
|
+
"properties": {
|
|
74126
|
+
"id": {
|
|
74127
|
+
"type": "string"
|
|
74128
|
+
},
|
|
74129
|
+
"action": {
|
|
74130
|
+
"type": "string"
|
|
74131
|
+
},
|
|
74132
|
+
"grantId": {
|
|
74133
|
+
"type": "string"
|
|
74134
|
+
},
|
|
74135
|
+
"nodeId": {
|
|
74136
|
+
"type": "string"
|
|
74137
|
+
},
|
|
74138
|
+
"capabilityId": {
|
|
74139
|
+
"type": "string"
|
|
74140
|
+
},
|
|
74141
|
+
"at": {
|
|
74142
|
+
"type": "number"
|
|
74143
|
+
},
|
|
74144
|
+
"actor": {
|
|
74145
|
+
"type": "string"
|
|
74146
|
+
},
|
|
74147
|
+
"reason": {
|
|
74148
|
+
"type": "string"
|
|
74149
|
+
}
|
|
74150
|
+
},
|
|
74151
|
+
"required": [
|
|
74152
|
+
"id",
|
|
74153
|
+
"action",
|
|
74154
|
+
"grantId",
|
|
74155
|
+
"nodeId",
|
|
74156
|
+
"capabilityId",
|
|
74157
|
+
"at",
|
|
74158
|
+
"actor",
|
|
74159
|
+
"reason"
|
|
74160
|
+
],
|
|
74161
|
+
"additionalProperties": false
|
|
74162
|
+
}
|
|
74163
|
+
}
|
|
74164
|
+
},
|
|
74165
|
+
"required": [
|
|
74166
|
+
"grants",
|
|
74167
|
+
"audit"
|
|
74168
|
+
],
|
|
74169
|
+
"additionalProperties": false
|
|
74170
|
+
}
|
|
74171
|
+
}
|
|
74172
|
+
}
|
|
74173
|
+
},
|
|
74174
|
+
"default": {
|
|
74175
|
+
"$ref": "#/components/responses/Error"
|
|
74176
|
+
}
|
|
74177
|
+
},
|
|
74178
|
+
"x-typed-client-io": true,
|
|
74179
|
+
"x-access": "authenticated",
|
|
74180
|
+
"x-transport": [
|
|
74181
|
+
"http",
|
|
74182
|
+
"ws"
|
|
74183
|
+
],
|
|
74184
|
+
"x-scopes": [
|
|
74185
|
+
"read:remote"
|
|
74186
|
+
],
|
|
74187
|
+
"parameters": [
|
|
74188
|
+
{
|
|
74189
|
+
"name": "nodeId",
|
|
74190
|
+
"in": "query",
|
|
74191
|
+
"required": false,
|
|
74192
|
+
"schema": {
|
|
74193
|
+
"type": "string"
|
|
74194
|
+
}
|
|
74195
|
+
},
|
|
74196
|
+
{
|
|
74197
|
+
"name": "limit",
|
|
74198
|
+
"in": "query",
|
|
74199
|
+
"required": false,
|
|
74200
|
+
"schema": {
|
|
74201
|
+
"type": "number"
|
|
74202
|
+
}
|
|
74203
|
+
}
|
|
74204
|
+
]
|
|
74205
|
+
}
|
|
74206
|
+
},
|
|
74207
|
+
"/api/devices/grants/revoke": {
|
|
74208
|
+
"post": {
|
|
74209
|
+
"operationId": "devices.grants.revoke",
|
|
74210
|
+
"summary": "Revoke a Device Capability Grant",
|
|
74211
|
+
"description": "Delete durable grants by grant id, by device, by capability, or any combination. Revoked grants are removed rather than flagged, so the next request for that capability asks the person again. Returns exactly what was removed.",
|
|
74212
|
+
"tags": [
|
|
74213
|
+
"runtime"
|
|
74214
|
+
],
|
|
74215
|
+
"responses": {
|
|
74216
|
+
"200": {
|
|
74217
|
+
"description": "Success",
|
|
74218
|
+
"content": {
|
|
74219
|
+
"application/json": {
|
|
74220
|
+
"schema": {
|
|
74221
|
+
"type": "object",
|
|
74222
|
+
"properties": {
|
|
74223
|
+
"revoked": {
|
|
74224
|
+
"type": "number"
|
|
74225
|
+
},
|
|
74226
|
+
"removals": {
|
|
74227
|
+
"type": "array",
|
|
74228
|
+
"items": {
|
|
74229
|
+
"type": "object",
|
|
74230
|
+
"properties": {
|
|
74231
|
+
"grantId": {
|
|
74232
|
+
"type": "string"
|
|
74233
|
+
},
|
|
74234
|
+
"nodeId": {
|
|
74235
|
+
"type": "string"
|
|
74236
|
+
},
|
|
74237
|
+
"capabilityId": {
|
|
74238
|
+
"type": "string"
|
|
74239
|
+
},
|
|
74240
|
+
"scope": {
|
|
74241
|
+
"type": "string"
|
|
74242
|
+
},
|
|
74243
|
+
"reason": {
|
|
74244
|
+
"type": "string"
|
|
74245
|
+
},
|
|
74246
|
+
"removedAt": {
|
|
74247
|
+
"type": "number"
|
|
74248
|
+
}
|
|
74249
|
+
},
|
|
74250
|
+
"required": [
|
|
74251
|
+
"grantId",
|
|
74252
|
+
"nodeId",
|
|
74253
|
+
"capabilityId",
|
|
74254
|
+
"scope",
|
|
74255
|
+
"reason",
|
|
74256
|
+
"removedAt"
|
|
74257
|
+
],
|
|
74258
|
+
"additionalProperties": false
|
|
74259
|
+
}
|
|
74260
|
+
}
|
|
74261
|
+
},
|
|
74262
|
+
"required": [
|
|
74263
|
+
"revoked",
|
|
74264
|
+
"removals"
|
|
74265
|
+
],
|
|
74266
|
+
"additionalProperties": false
|
|
74267
|
+
}
|
|
74268
|
+
}
|
|
74269
|
+
}
|
|
74270
|
+
},
|
|
74271
|
+
"default": {
|
|
74272
|
+
"$ref": "#/components/responses/Error"
|
|
74273
|
+
}
|
|
74274
|
+
},
|
|
74275
|
+
"x-typed-client-io": true,
|
|
74276
|
+
"x-access": "authenticated",
|
|
74277
|
+
"x-transport": [
|
|
74278
|
+
"http",
|
|
74279
|
+
"ws"
|
|
74280
|
+
],
|
|
74281
|
+
"x-scopes": [
|
|
74282
|
+
"write:config"
|
|
74283
|
+
],
|
|
74284
|
+
"requestBody": {
|
|
74285
|
+
"required": true,
|
|
74286
|
+
"content": {
|
|
74287
|
+
"application/json": {
|
|
74288
|
+
"schema": {
|
|
74289
|
+
"type": "object",
|
|
74290
|
+
"properties": {
|
|
74291
|
+
"grantId": {
|
|
74292
|
+
"type": "string"
|
|
74293
|
+
},
|
|
74294
|
+
"nodeId": {
|
|
74295
|
+
"type": "string"
|
|
74296
|
+
},
|
|
74297
|
+
"capabilityId": {
|
|
74298
|
+
"type": "string"
|
|
74299
|
+
},
|
|
74300
|
+
"note": {
|
|
74301
|
+
"type": "string"
|
|
74302
|
+
}
|
|
74303
|
+
},
|
|
74304
|
+
"additionalProperties": false
|
|
74305
|
+
}
|
|
74306
|
+
}
|
|
74307
|
+
}
|
|
74308
|
+
}
|
|
74309
|
+
}
|
|
74310
|
+
},
|
|
74311
|
+
"/api/devices/housekeeping": {
|
|
74312
|
+
"post": {
|
|
74313
|
+
"operationId": "devices.housekeeping.run",
|
|
74314
|
+
"summary": "Run Device Housekeeping",
|
|
74315
|
+
"description": "Sweep the device grants ledger and the retained captures now: expired and orphaned grants removed, captures past their retention window deleted, torn or missing capture files reaped. Returns the itemised disclosure of everything removed and why.",
|
|
74316
|
+
"tags": [
|
|
74317
|
+
"runtime"
|
|
74318
|
+
],
|
|
74319
|
+
"responses": {
|
|
74320
|
+
"200": {
|
|
74321
|
+
"description": "Success",
|
|
74322
|
+
"content": {
|
|
74323
|
+
"application/json": {
|
|
74324
|
+
"schema": {
|
|
74325
|
+
"type": "object",
|
|
74326
|
+
"properties": {
|
|
74327
|
+
"summary": {
|
|
74328
|
+
"type": "string"
|
|
74329
|
+
},
|
|
74330
|
+
"sweptAt": {
|
|
74331
|
+
"type": "number"
|
|
74332
|
+
},
|
|
74333
|
+
"grantsRemoved": {
|
|
74334
|
+
"type": "array",
|
|
74335
|
+
"items": {
|
|
74336
|
+
"type": "object",
|
|
74337
|
+
"properties": {
|
|
74338
|
+
"grantId": {
|
|
74339
|
+
"type": "string"
|
|
74340
|
+
},
|
|
74341
|
+
"nodeId": {
|
|
74342
|
+
"type": "string"
|
|
74343
|
+
},
|
|
74344
|
+
"capabilityId": {
|
|
74345
|
+
"type": "string"
|
|
74346
|
+
},
|
|
74347
|
+
"scope": {
|
|
74348
|
+
"type": "string"
|
|
74349
|
+
},
|
|
74350
|
+
"reason": {
|
|
74351
|
+
"type": "string"
|
|
74352
|
+
},
|
|
74353
|
+
"removedAt": {
|
|
74354
|
+
"type": "number"
|
|
74355
|
+
}
|
|
74356
|
+
},
|
|
74357
|
+
"required": [
|
|
74358
|
+
"grantId",
|
|
74359
|
+
"nodeId",
|
|
74360
|
+
"capabilityId",
|
|
74361
|
+
"scope",
|
|
74362
|
+
"reason",
|
|
74363
|
+
"removedAt"
|
|
74364
|
+
],
|
|
74365
|
+
"additionalProperties": false
|
|
74366
|
+
}
|
|
74367
|
+
},
|
|
74368
|
+
"grantsRetained": {
|
|
74369
|
+
"type": "number"
|
|
74370
|
+
},
|
|
74371
|
+
"capturesRemoved": {
|
|
74372
|
+
"type": "array",
|
|
74373
|
+
"items": {
|
|
74374
|
+
"type": "object",
|
|
74375
|
+
"properties": {
|
|
74376
|
+
"artifactId": {
|
|
74377
|
+
"type": "string"
|
|
74378
|
+
},
|
|
74379
|
+
"nodeId": {
|
|
74380
|
+
"type": "string"
|
|
74381
|
+
},
|
|
74382
|
+
"capabilityId": {
|
|
74383
|
+
"type": "string"
|
|
74384
|
+
},
|
|
74385
|
+
"fileName": {
|
|
74386
|
+
"type": "string"
|
|
74387
|
+
},
|
|
74388
|
+
"reason": {
|
|
74389
|
+
"type": "string"
|
|
74390
|
+
},
|
|
74391
|
+
"removedAt": {
|
|
74392
|
+
"type": "number"
|
|
74393
|
+
},
|
|
74394
|
+
"byteLength": {
|
|
74395
|
+
"type": "number"
|
|
74396
|
+
}
|
|
74397
|
+
},
|
|
74398
|
+
"required": [
|
|
74399
|
+
"artifactId",
|
|
74400
|
+
"nodeId",
|
|
74401
|
+
"capabilityId",
|
|
74402
|
+
"fileName",
|
|
74403
|
+
"reason",
|
|
74404
|
+
"removedAt",
|
|
74405
|
+
"byteLength"
|
|
74406
|
+
],
|
|
74407
|
+
"additionalProperties": false
|
|
74408
|
+
}
|
|
74409
|
+
},
|
|
74410
|
+
"capturesRetained": {
|
|
74411
|
+
"type": "number"
|
|
74412
|
+
},
|
|
74413
|
+
"bytesReclaimed": {
|
|
74414
|
+
"type": "number"
|
|
74415
|
+
}
|
|
74416
|
+
},
|
|
74417
|
+
"required": [
|
|
74418
|
+
"summary",
|
|
74419
|
+
"sweptAt",
|
|
74420
|
+
"grantsRemoved",
|
|
74421
|
+
"grantsRetained",
|
|
74422
|
+
"capturesRemoved",
|
|
74423
|
+
"capturesRetained",
|
|
74424
|
+
"bytesReclaimed"
|
|
74425
|
+
],
|
|
74426
|
+
"additionalProperties": false
|
|
74427
|
+
}
|
|
74428
|
+
}
|
|
74429
|
+
}
|
|
74430
|
+
},
|
|
74431
|
+
"default": {
|
|
74432
|
+
"$ref": "#/components/responses/Error"
|
|
74433
|
+
}
|
|
74434
|
+
},
|
|
74435
|
+
"x-typed-client-io": true,
|
|
74436
|
+
"x-access": "authenticated",
|
|
74437
|
+
"x-transport": [
|
|
74438
|
+
"http",
|
|
74439
|
+
"ws"
|
|
74440
|
+
],
|
|
74441
|
+
"x-scopes": [
|
|
74442
|
+
"write:config"
|
|
74443
|
+
],
|
|
74444
|
+
"requestBody": {
|
|
74445
|
+
"required": true,
|
|
74446
|
+
"content": {
|
|
74447
|
+
"application/json": {
|
|
74448
|
+
"schema": {
|
|
74449
|
+
"type": "object",
|
|
74450
|
+
"properties": {},
|
|
74451
|
+
"additionalProperties": false
|
|
74452
|
+
}
|
|
74453
|
+
}
|
|
74454
|
+
}
|
|
74455
|
+
}
|
|
74456
|
+
}
|
|
74457
|
+
},
|
|
74458
|
+
"/api/devices/nodes": {
|
|
74459
|
+
"get": {
|
|
74460
|
+
"operationId": "devices.nodes.list",
|
|
74461
|
+
"summary": "List Paired Device Nodes",
|
|
74462
|
+
"description": "Every phone paired as a device node, with the capabilities it announced, the ones it did not offer, and the ones it announced but cannot currently serve because its connection is not a secure context. Node-kind neutral: a web app node and a native app node are described identically.",
|
|
74463
|
+
"tags": [
|
|
74464
|
+
"runtime"
|
|
74465
|
+
],
|
|
74466
|
+
"responses": {
|
|
74467
|
+
"200": {
|
|
74468
|
+
"description": "Success",
|
|
74469
|
+
"content": {
|
|
74470
|
+
"application/json": {
|
|
74471
|
+
"schema": {
|
|
74472
|
+
"type": "object",
|
|
74473
|
+
"properties": {
|
|
74474
|
+
"nodes": {
|
|
74475
|
+
"type": "array",
|
|
74476
|
+
"items": {
|
|
74477
|
+
"type": "object",
|
|
74478
|
+
"properties": {
|
|
74479
|
+
"nodeId": {
|
|
74480
|
+
"type": "string"
|
|
74481
|
+
},
|
|
74482
|
+
"nodeKind": {
|
|
74483
|
+
"type": "string"
|
|
74484
|
+
},
|
|
74485
|
+
"nodeKindLabel": {
|
|
74486
|
+
"type": "string"
|
|
74487
|
+
},
|
|
74488
|
+
"label": {
|
|
74489
|
+
"type": "string"
|
|
74490
|
+
},
|
|
74491
|
+
"platform": {
|
|
74492
|
+
"type": "string"
|
|
74493
|
+
},
|
|
74494
|
+
"appVersion": {
|
|
74495
|
+
"type": "string"
|
|
74496
|
+
},
|
|
74497
|
+
"contractVersion": {
|
|
74498
|
+
"type": "number"
|
|
74499
|
+
},
|
|
74500
|
+
"contractCompatible": {
|
|
74501
|
+
"type": "boolean"
|
|
74502
|
+
},
|
|
74503
|
+
"supported": {
|
|
74504
|
+
"type": "array",
|
|
74505
|
+
"items": {
|
|
74506
|
+
"type": "string"
|
|
74507
|
+
}
|
|
74508
|
+
},
|
|
74509
|
+
"undeclared": {
|
|
74510
|
+
"type": "array",
|
|
74511
|
+
"items": {
|
|
74512
|
+
"type": "string"
|
|
74513
|
+
}
|
|
74514
|
+
},
|
|
74515
|
+
"gatedBySecureContext": {
|
|
74516
|
+
"type": "array",
|
|
74517
|
+
"items": {
|
|
74518
|
+
"type": "string"
|
|
74519
|
+
}
|
|
74520
|
+
},
|
|
74521
|
+
"unknownDeclared": {
|
|
74522
|
+
"type": "array",
|
|
74523
|
+
"items": {
|
|
74524
|
+
"type": "string"
|
|
74525
|
+
}
|
|
74526
|
+
}
|
|
74527
|
+
},
|
|
74528
|
+
"required": [
|
|
74529
|
+
"nodeId",
|
|
74530
|
+
"nodeKind",
|
|
74531
|
+
"nodeKindLabel",
|
|
74532
|
+
"label",
|
|
74533
|
+
"platform",
|
|
74534
|
+
"appVersion",
|
|
74535
|
+
"contractVersion",
|
|
74536
|
+
"contractCompatible",
|
|
74537
|
+
"supported",
|
|
74538
|
+
"undeclared",
|
|
74539
|
+
"gatedBySecureContext",
|
|
74540
|
+
"unknownDeclared"
|
|
74541
|
+
],
|
|
74542
|
+
"additionalProperties": false
|
|
74543
|
+
}
|
|
74544
|
+
},
|
|
74545
|
+
"capabilities": {
|
|
74546
|
+
"type": "array",
|
|
74547
|
+
"items": {
|
|
74548
|
+
"type": "object",
|
|
74549
|
+
"properties": {
|
|
74550
|
+
"id": {
|
|
74551
|
+
"type": "string"
|
|
74552
|
+
},
|
|
74553
|
+
"family": {
|
|
74554
|
+
"type": "string"
|
|
74555
|
+
},
|
|
74556
|
+
"title": {
|
|
74557
|
+
"type": "string"
|
|
74558
|
+
},
|
|
74559
|
+
"purpose": {
|
|
74560
|
+
"type": "string"
|
|
74561
|
+
},
|
|
74562
|
+
"effect": {
|
|
74563
|
+
"type": "string"
|
|
74564
|
+
},
|
|
74565
|
+
"sensitivity": {
|
|
74566
|
+
"type": "string"
|
|
74567
|
+
},
|
|
74568
|
+
"producesArtifact": {
|
|
74569
|
+
"type": "boolean"
|
|
74570
|
+
},
|
|
74571
|
+
"allowAlwaysOffered": {
|
|
74572
|
+
"type": "boolean"
|
|
74573
|
+
}
|
|
74574
|
+
},
|
|
74575
|
+
"required": [
|
|
74576
|
+
"id",
|
|
74577
|
+
"family",
|
|
74578
|
+
"title",
|
|
74579
|
+
"purpose",
|
|
74580
|
+
"effect",
|
|
74581
|
+
"sensitivity",
|
|
74582
|
+
"producesArtifact",
|
|
74583
|
+
"allowAlwaysOffered"
|
|
74584
|
+
],
|
|
74585
|
+
"additionalProperties": false
|
|
74586
|
+
}
|
|
74587
|
+
},
|
|
74588
|
+
"mode": {
|
|
74589
|
+
"type": "string"
|
|
74590
|
+
},
|
|
74591
|
+
"allowAlwaysOffer": {
|
|
74592
|
+
"type": "string"
|
|
74593
|
+
},
|
|
74594
|
+
"captureRetentionHours": {
|
|
74595
|
+
"type": "number"
|
|
74596
|
+
}
|
|
74597
|
+
},
|
|
74598
|
+
"required": [
|
|
74599
|
+
"nodes",
|
|
74600
|
+
"capabilities",
|
|
74601
|
+
"mode",
|
|
74602
|
+
"allowAlwaysOffer",
|
|
74603
|
+
"captureRetentionHours"
|
|
74604
|
+
],
|
|
74605
|
+
"additionalProperties": false
|
|
74606
|
+
}
|
|
74607
|
+
}
|
|
74608
|
+
}
|
|
74609
|
+
},
|
|
74610
|
+
"default": {
|
|
74611
|
+
"$ref": "#/components/responses/Error"
|
|
74612
|
+
}
|
|
74613
|
+
},
|
|
74614
|
+
"x-typed-client-io": true,
|
|
74615
|
+
"x-access": "authenticated",
|
|
74616
|
+
"x-transport": [
|
|
74617
|
+
"http",
|
|
74618
|
+
"ws"
|
|
74619
|
+
],
|
|
74620
|
+
"x-scopes": [
|
|
74621
|
+
"read:remote"
|
|
74622
|
+
]
|
|
74623
|
+
}
|
|
74624
|
+
},
|
|
74029
74625
|
"/api/runtime/metrics": {
|
|
74030
74626
|
"get": {
|
|
74031
74627
|
"operationId": "runtime.metrics.get",
|
|
@@ -94060,6 +94656,42 @@
|
|
|
94060
94656
|
"inputSchemaCoverage": "typed",
|
|
94061
94657
|
"outputSchemaCoverage": "typed"
|
|
94062
94658
|
},
|
|
94659
|
+
{
|
|
94660
|
+
"id": "devices.grants.list",
|
|
94661
|
+
"category": "runtime",
|
|
94662
|
+
"access": "authenticated",
|
|
94663
|
+
"rest": "GET /api/devices/grants",
|
|
94664
|
+
"typedClientIo": true,
|
|
94665
|
+
"inputSchemaCoverage": "typed",
|
|
94666
|
+
"outputSchemaCoverage": "typed"
|
|
94667
|
+
},
|
|
94668
|
+
{
|
|
94669
|
+
"id": "devices.grants.revoke",
|
|
94670
|
+
"category": "runtime",
|
|
94671
|
+
"access": "authenticated",
|
|
94672
|
+
"rest": "POST /api/devices/grants/revoke",
|
|
94673
|
+
"typedClientIo": true,
|
|
94674
|
+
"inputSchemaCoverage": "typed",
|
|
94675
|
+
"outputSchemaCoverage": "typed"
|
|
94676
|
+
},
|
|
94677
|
+
{
|
|
94678
|
+
"id": "devices.housekeeping.run",
|
|
94679
|
+
"category": "runtime",
|
|
94680
|
+
"access": "authenticated",
|
|
94681
|
+
"rest": "POST /api/devices/housekeeping",
|
|
94682
|
+
"typedClientIo": true,
|
|
94683
|
+
"inputSchemaCoverage": "typed",
|
|
94684
|
+
"outputSchemaCoverage": "typed"
|
|
94685
|
+
},
|
|
94686
|
+
{
|
|
94687
|
+
"id": "devices.nodes.list",
|
|
94688
|
+
"category": "runtime",
|
|
94689
|
+
"access": "authenticated",
|
|
94690
|
+
"rest": "GET /api/devices/nodes",
|
|
94691
|
+
"typedClientIo": true,
|
|
94692
|
+
"inputSchemaCoverage": "typed",
|
|
94693
|
+
"outputSchemaCoverage": "typed"
|
|
94694
|
+
},
|
|
94063
94695
|
{
|
|
94064
94696
|
"id": "runtime.metrics.get",
|
|
94065
94697
|
"category": "runtime",
|