losant_rest 1.13.0 → 1.15.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (172) hide show
  1. checksums.yaml +4 -4
  2. data/docs/_schemas.md +19437 -10622
  3. data/docs/application.md +6 -6
  4. data/docs/applicationApiTokens.md +1 -1
  5. data/docs/applications.md +1 -1
  6. data/docs/dataTable.md +1 -1
  7. data/docs/dataTableRows.md +1 -1
  8. data/docs/dataTables.md +1 -1
  9. data/docs/device.md +43 -0
  10. data/docs/devices.md +41 -2
  11. data/docs/edgeDeployment.md +49 -0
  12. data/docs/embeddedDeployment.md +49 -0
  13. data/docs/embeddedDeployments.md +215 -0
  14. data/docs/experience.md +1 -1
  15. data/docs/experienceDomains.md +1 -1
  16. data/docs/experienceGroup.md +2 -0
  17. data/docs/experienceSlugs.md +1 -1
  18. data/docs/experienceVersion.md +3 -3
  19. data/docs/experienceVersions.md +2 -2
  20. data/docs/experienceView.md +4 -4
  21. data/docs/experienceViews.md +2 -2
  22. data/docs/file.md +5 -5
  23. data/docs/files.md +2 -2
  24. data/docs/flow.md +3 -3
  25. data/docs/flowVersions.md +44 -0
  26. data/docs/flows.md +2 -2
  27. data/docs/instance.md +40 -0
  28. data/docs/instanceApiToken.md +133 -0
  29. data/docs/instanceApiTokens.md +91 -0
  30. data/docs/instanceMembers.md +1 -1
  31. data/docs/instanceOrg.md +2 -0
  32. data/docs/instanceOrgInvite.md +139 -0
  33. data/docs/instanceOrgInvites.md +96 -0
  34. data/docs/instanceOrgMembers.md +3 -3
  35. data/docs/instanceOrgs.md +1 -1
  36. data/docs/me.md +1 -1
  37. data/docs/org.md +1 -1
  38. data/docs/userApiToken.md +125 -0
  39. data/docs/userApiTokens.md +87 -0
  40. data/lib/losant_rest/application.rb +5 -5
  41. data/lib/losant_rest/application_api_tokens.rb +1 -1
  42. data/lib/losant_rest/applications.rb +1 -1
  43. data/lib/losant_rest/client.rb +38 -2
  44. data/lib/losant_rest/data_table.rb +1 -1
  45. data/lib/losant_rest/data_table_rows.rb +1 -1
  46. data/lib/losant_rest/data_tables.rb +1 -1
  47. data/lib/losant_rest/device.rb +50 -0
  48. data/lib/losant_rest/devices.rb +48 -2
  49. data/lib/losant_rest/edge_deployment.rb +81 -0
  50. data/lib/losant_rest/embedded_deployment.rb +81 -0
  51. data/lib/losant_rest/embedded_deployments.rb +280 -0
  52. data/lib/losant_rest/experience.rb +1 -1
  53. data/lib/losant_rest/experience_domains.rb +1 -1
  54. data/lib/losant_rest/experience_group.rb +4 -0
  55. data/lib/losant_rest/experience_slugs.rb +1 -1
  56. data/lib/losant_rest/experience_version.rb +3 -3
  57. data/lib/losant_rest/experience_versions.rb +2 -2
  58. data/lib/losant_rest/experience_view.rb +4 -4
  59. data/lib/losant_rest/experience_views.rb +2 -2
  60. data/lib/losant_rest/file.rb +4 -4
  61. data/lib/losant_rest/files.rb +2 -2
  62. data/lib/losant_rest/flow.rb +3 -3
  63. data/lib/losant_rest/flow_versions.rb +50 -0
  64. data/lib/losant_rest/flows.rb +2 -2
  65. data/lib/losant_rest/instance.rb +47 -1
  66. data/lib/losant_rest/instance_api_token.rb +176 -0
  67. data/lib/losant_rest/instance_api_tokens.rb +136 -0
  68. data/lib/losant_rest/instance_member.rb +1 -1
  69. data/lib/losant_rest/instance_members.rb +2 -2
  70. data/lib/losant_rest/instance_org.rb +5 -1
  71. data/lib/losant_rest/instance_org_invite.rb +182 -0
  72. data/lib/losant_rest/instance_org_invites.rb +138 -0
  73. data/lib/losant_rest/instance_org_member.rb +1 -1
  74. data/lib/losant_rest/instance_org_members.rb +4 -4
  75. data/lib/losant_rest/instance_orgs.rb +3 -3
  76. data/lib/losant_rest/instances.rb +1 -1
  77. data/lib/losant_rest/user_api_token.rb +170 -0
  78. data/lib/losant_rest/user_api_tokens.rb +132 -0
  79. data/lib/losant_rest/version.rb +1 -1
  80. data/lib/losant_rest.rb +9 -0
  81. data/schemas/apiToken.json +2 -1
  82. data/schemas/apiTokenPost.json +439 -0
  83. data/schemas/apiTokens.json +4 -2
  84. data/schemas/application.json +32 -32
  85. data/schemas/applicationCreationByTemplateResult.json +32 -32
  86. data/schemas/applicationDashboardPost.json +28 -21
  87. data/schemas/applicationPatch.json +13 -13
  88. data/schemas/applicationPost.json +13 -13
  89. data/schemas/applicationTemplate.json +16 -16
  90. data/schemas/applicationTemplates.json +16 -16
  91. data/schemas/applications.json +32 -32
  92. data/schemas/auditLog.json +4 -0
  93. data/schemas/auditLogFilter.json +4 -0
  94. data/schemas/auditLogs.json +4 -0
  95. data/schemas/authedDevice.json +2 -1
  96. data/schemas/bulkDeleteResponse.json +12 -0
  97. data/schemas/dashboard.json +28 -21
  98. data/schemas/dashboardPatch.json +28 -21
  99. data/schemas/dashboardPost.json +28 -21
  100. data/schemas/dashboardSendReport.json +9 -5
  101. data/schemas/dashboards.json +28 -21
  102. data/schemas/dataTableRowsDelete.json +1 -1
  103. data/schemas/device.json +2 -1
  104. data/schemas/deviceClassFilter.json +4 -2
  105. data/schemas/devicePatch.json +2 -1
  106. data/schemas/devicePayloadCounts.json +24 -0
  107. data/schemas/devicePost.json +2 -1
  108. data/schemas/deviceRecipe.json +2 -1
  109. data/schemas/deviceRecipePatch.json +2 -1
  110. data/schemas/deviceRecipePost.json +2 -1
  111. data/schemas/deviceRecipes.json +2 -1
  112. data/schemas/devices.json +4 -2
  113. data/schemas/devicesExportPayloadCountPost.json +1350 -0
  114. data/schemas/devicesPatch.json +4 -2
  115. data/schemas/edgeDeployment.json +20 -0
  116. data/schemas/edgeDeployments.json +20 -0
  117. data/schemas/embeddedDeployment.json +179 -0
  118. data/schemas/embeddedDeploymentExport.json +44 -0
  119. data/schemas/embeddedDeploymentRelease.json +58 -0
  120. data/schemas/embeddedDeploymentRemove.json +25 -0
  121. data/schemas/embeddedDeploymentReplace.json +29 -0
  122. data/schemas/embeddedDeployments.json +212 -0
  123. data/schemas/eventsDeleted.json +1 -1
  124. data/schemas/experienceEndpoint.json +6 -8
  125. data/schemas/experienceEndpointPatch.json +6 -8
  126. data/schemas/experienceEndpointPost.json +6 -8
  127. data/schemas/experienceEndpoints.json +6 -8
  128. data/schemas/experienceGroup.json +6 -0
  129. data/schemas/experienceGroups.json +6 -0
  130. data/schemas/experienceLinkedResources.json +790 -85
  131. data/schemas/flow.json +252 -16
  132. data/schemas/flowPatch.json +251 -16
  133. data/schemas/flowPost.json +252 -16
  134. data/schemas/flowVersion.json +503 -33
  135. data/schemas/flowVersionPost.json +251 -16
  136. data/schemas/flowVersions.json +503 -33
  137. data/schemas/flowVersionsDeletePost.json +941 -0
  138. data/schemas/flows.json +253 -16
  139. data/schemas/flowsImportPost.json +503 -32
  140. data/schemas/flowsImportResult.json +785 -79
  141. data/schemas/githubLogin.json +38 -1
  142. data/schemas/historicalSummary.json +150 -102
  143. data/schemas/instance.json +150 -77
  144. data/schemas/instanceMember.json +10 -0
  145. data/schemas/instanceMemberPost.json +18 -3
  146. data/schemas/instanceMembers.json +14 -0
  147. data/schemas/instanceOrg.json +87 -74
  148. data/schemas/instanceOrgMember.json +14 -0
  149. data/schemas/instanceOrgMembers.json +8 -0
  150. data/schemas/instanceOrgPatch.json +64 -26
  151. data/schemas/instanceOrgPost.json +229 -25
  152. data/schemas/instanceOrgs.json +91 -74
  153. data/schemas/instancePatch.json +67 -0
  154. data/schemas/instanceReportOptionsPost.json +1 -0
  155. data/schemas/me.json +134 -105
  156. data/schemas/notebook.json +45 -0
  157. data/schemas/notebookPatch.json +30 -0
  158. data/schemas/notebookPost.json +30 -0
  159. data/schemas/notebooks.json +45 -0
  160. data/schemas/org.json +145 -110
  161. data/schemas/orgInvite.json +90 -0
  162. data/schemas/orgInviteCollection.json +130 -0
  163. data/schemas/orgInvites.json +82 -77
  164. data/schemas/orgRoleInfo.json +69 -0
  165. data/schemas/orgs.json +145 -110
  166. data/schemas/payloadStats.json +28 -12
  167. data/schemas/userCredentials.json +38 -1
  168. data/schemas/userPost.json +38 -1
  169. data/schemas/validateContextError.json +34 -0
  170. data/schemas/validateContextSuccess.json +34 -0
  171. data/schemas/virtualButtonPress.json +4 -0
  172. metadata +39 -6
@@ -19,6 +19,7 @@
19
19
  "enum": [
20
20
  "all.Application",
21
21
  "all.Application.read",
22
+ "all.Application.cli",
22
23
  "all.Device",
23
24
  "all.Device.read",
24
25
  "application.*",
@@ -41,7 +42,10 @@
41
42
  "deviceRecipe.*",
42
43
  "deviceRecipes.*",
43
44
  "devices.*",
45
+ "edgeDeployment.*",
44
46
  "edgeDeployments.*",
47
+ "embeddedDeployment.*",
48
+ "embeddedDeployments.*",
45
49
  "event.*",
46
50
  "events.*",
47
51
  "experience.*",
@@ -141,6 +145,7 @@
141
145
  "device.getLogEntries",
142
146
  "device.getState",
143
147
  "device.patch",
148
+ "device.payloadCounts",
144
149
  "device.removeData",
145
150
  "device.sendCommand",
146
151
  "device.sendState",
@@ -159,14 +164,22 @@
159
164
  "devices.detailedSummary",
160
165
  "devices.export",
161
166
  "devices.get",
167
+ "devices.payloadCounts",
162
168
  "devices.post",
163
169
  "devices.sendCommand",
164
170
  "devices.tagKeys",
165
171
  "devices.tagValues",
172
+ "edgeDeployment.get",
166
173
  "edgeDeployments.get",
167
174
  "edgeDeployments.release",
168
175
  "edgeDeployments.remove",
169
176
  "edgeDeployments.replace",
177
+ "embeddedDeployment.get",
178
+ "embeddedDeployments.get",
179
+ "embeddedDeployments.release",
180
+ "embeddedDeployments.remove",
181
+ "embeddedDeployments.replace",
182
+ "embeddedDeployments.export",
170
183
  "event.delete",
171
184
  "event.get",
172
185
  "event.patch",
@@ -250,6 +263,7 @@
250
263
  "flowVersion.log",
251
264
  "flowVersion.patch",
252
265
  "flowVersion.stats",
266
+ "flowVersions.delete",
253
267
  "flowVersions.get",
254
268
  "flowVersions.post",
255
269
  "integration.delete",
@@ -319,6 +333,7 @@
319
333
  "all.Instance.read",
320
334
  "instance.*",
321
335
  "instance.get",
336
+ "instance.patch",
322
337
  "instance.historicalSummaries",
323
338
  "instance.generateReport",
324
339
  "instanceOrg.*",
@@ -341,7 +356,21 @@
341
356
  "instanceOrgMember.delete",
342
357
  "instanceOrgMembers.*",
343
358
  "instanceOrgMembers.get",
344
- "instanceOrgMembers.post"
359
+ "instanceOrgMembers.post",
360
+ "instanceOrgInvite.*",
361
+ "instanceOrgInvite.get",
362
+ "instanceOrgInvite.delete",
363
+ "instanceOrgInvite.resendInvite",
364
+ "instanceOrgInvites.*",
365
+ "instanceOrgInvites.get",
366
+ "instanceOrgInvites.post",
367
+ "instanceApiTokens.*",
368
+ "instanceApiTokens.get",
369
+ "instanceApiTokens.post",
370
+ "instanceApiToken.*",
371
+ "instanceApiToken.get",
372
+ "instanceApiToken.patch",
373
+ "instanceApiToken.delete"
345
374
  ]
346
375
  },
347
376
  {
@@ -349,6 +378,14 @@
349
378
  "enum": [
350
379
  "all.User",
351
380
  "all.User.read",
381
+ "all.User.cli",
382
+ "userApiToken.*",
383
+ "userApiToken.get",
384
+ "userApiToken.patch",
385
+ "userApiToken.delete",
386
+ "userApiTokens.*",
387
+ "userApiTokens.get",
388
+ "userApiTokens.post",
352
389
  "applicationTemplate.*",
353
390
  "applicationTemplate.get",
354
391
  "applicationTemplates.*",
@@ -39,81 +39,94 @@
39
39
  "maxLength": 255
40
40
  },
41
41
  "limits": {
42
- "apitoken": {
43
- "type": "number"
44
- },
45
- "application": {
46
- "type": "number"
47
- },
48
- "applicationkey": {
49
- "type": "number"
50
- },
51
- "dashboard": {
52
- "type": "number"
53
- },
54
- "datatable": {
55
- "type": "number"
56
- },
57
- "device": {
58
- "type": "number"
59
- },
60
- "devicerecipe": {
61
- "type": "number"
62
- },
63
- "experiencedomain": {
64
- "type": "number"
65
- },
66
- "experienceendpoint": {
67
- "type": "number"
68
- },
69
- "experiencegroup": {
70
- "type": "number"
71
- },
72
- "experienceslug": {
73
- "type": "number"
74
- },
75
- "experienceuser": {
76
- "type": "number"
77
- },
78
- "experienceversion": {
79
- "type": "number"
80
- },
81
- "experienceview": {
82
- "type": "number"
83
- },
84
- "file": {
85
- "type": "number"
86
- },
87
- "flow": {
88
- "type": "number"
89
- },
90
- "integration": {
91
- "type": "number"
92
- },
93
- "notebook": {
94
- "type": "number"
95
- },
96
- "webhook": {
97
- "type": "number"
98
- },
99
- "dataTTL": {
100
- "type": "number"
101
- },
102
- "member": {
103
- "type": "number"
104
- },
105
- "payload": {
106
- "type": "number"
107
- },
108
- "notebookMinutesPerRun": {
109
- "type": "number"
110
- },
111
- "notebookMinutesPerMonth": {
112
- "type": "number"
42
+ "type": "object",
43
+ "properties": {
44
+ "apitoken": {
45
+ "type": "integer"
46
+ },
47
+ "application": {
48
+ "type": "integer"
49
+ },
50
+ "applicationkey": {
51
+ "type": "integer"
52
+ },
53
+ "dashboard": {
54
+ "type": "integer"
55
+ },
56
+ "datatable": {
57
+ "type": "integer"
58
+ },
59
+ "device": {
60
+ "type": "integer"
61
+ },
62
+ "devicerecipe": {
63
+ "type": "integer"
64
+ },
65
+ "experiencedomain": {
66
+ "type": "integer"
67
+ },
68
+ "experienceendpoint": {
69
+ "type": "integer"
70
+ },
71
+ "experiencegroup": {
72
+ "type": "integer"
73
+ },
74
+ "experienceslug": {
75
+ "type": "integer"
76
+ },
77
+ "experienceuser": {
78
+ "type": "integer"
79
+ },
80
+ "experienceversion": {
81
+ "type": "integer"
82
+ },
83
+ "experienceview": {
84
+ "type": "integer"
85
+ },
86
+ "file": {
87
+ "type": "integer"
88
+ },
89
+ "flow": {
90
+ "type": "integer"
91
+ },
92
+ "integration": {
93
+ "type": "integer"
94
+ },
95
+ "notebook": {
96
+ "type": "integer"
97
+ },
98
+ "webhook": {
99
+ "type": "integer"
100
+ },
101
+ "dataTTL": {
102
+ "type": "integer"
103
+ },
104
+ "member": {
105
+ "type": "integer"
106
+ },
107
+ "payload": {
108
+ "type": "integer"
109
+ },
110
+ "storage": {
111
+ "type": "integer"
112
+ },
113
+ "notebookMinutesPerRun": {
114
+ "type": "integer"
115
+ },
116
+ "notebookMinutesPerMonth": {
117
+ "type": "integer"
118
+ },
119
+ "notebookInParallel": {
120
+ "type": "integer"
121
+ },
122
+ "experienceFlowSlots": {
123
+ "type": "integer"
124
+ },
125
+ "applicationFlowSlots": {
126
+ "type": "integer"
127
+ }
113
128
  },
114
- "notebookInParallel": {
115
- "type": "number"
116
- }
129
+ "additionalProperties": false
117
130
  },
118
131
  "currentPeriodStart": {
119
132
  "type": "string",
@@ -150,6 +163,9 @@
150
163
  "dashboardCount": {
151
164
  "type": "number"
152
165
  },
166
+ "dashboardCountProrated": {
167
+ "type": "number"
168
+ },
153
169
  "dataTableCount": {
154
170
  "type": "number"
155
171
  },
@@ -229,11 +245,11 @@
229
245
  "type": "number"
230
246
  },
231
247
  "payloadCountDetails": {
232
- "title": "Payload Counts",
233
- "description": "Schema for the result of a payload count request",
248
+ "title": "Payload Stats",
249
+ "description": "Schema for the result of a payload stats request",
234
250
  "type": "object",
235
251
  "properties": {
236
- "mqttOut": {
252
+ "dataTable": {
237
253
  "type": "object",
238
254
  "patternProperties": {
239
255
  ".*": {
@@ -241,7 +257,7 @@
241
257
  }
242
258
  }
243
259
  },
244
- "mqttIn": {
260
+ "deviceCommand": {
245
261
  "type": "object",
246
262
  "patternProperties": {
247
263
  ".*": {
@@ -249,7 +265,15 @@
249
265
  }
250
266
  }
251
267
  },
252
- "dataTable": {
268
+ "deviceConnect": {
269
+ "type": "object",
270
+ "patternProperties": {
271
+ ".*": {
272
+ "type": "number"
273
+ }
274
+ }
275
+ },
276
+ "deviceDisconnect": {
253
277
  "type": "object",
254
278
  "patternProperties": {
255
279
  ".*": {
@@ -265,7 +289,7 @@
265
289
  }
266
290
  }
267
291
  },
268
- "deviceCommand": {
292
+ "endpoint": {
269
293
  "type": "object",
270
294
  "patternProperties": {
271
295
  ".*": {
@@ -273,7 +297,7 @@
273
297
  }
274
298
  }
275
299
  },
276
- "webhook": {
300
+ "event": {
277
301
  "type": "object",
278
302
  "patternProperties": {
279
303
  ".*": {
@@ -281,7 +305,7 @@
281
305
  }
282
306
  }
283
307
  },
284
- "timer": {
308
+ "flowError": {
285
309
  "type": "object",
286
310
  "patternProperties": {
287
311
  ".*": {
@@ -289,7 +313,7 @@
289
313
  }
290
314
  }
291
315
  },
292
- "event": {
316
+ "integration": {
293
317
  "type": "object",
294
318
  "patternProperties": {
295
319
  ".*": {
@@ -297,7 +321,7 @@
297
321
  }
298
322
  }
299
323
  },
300
- "virtualButton": {
324
+ "mqttIn": {
301
325
  "type": "object",
302
326
  "patternProperties": {
303
327
  ".*": {
@@ -305,7 +329,7 @@
305
329
  }
306
330
  }
307
331
  },
308
- "deviceConnect": {
332
+ "mqttOut": {
309
333
  "type": "object",
310
334
  "patternProperties": {
311
335
  ".*": {
@@ -313,7 +337,7 @@
313
337
  }
314
338
  }
315
339
  },
316
- "deviceDisconnect": {
340
+ "notebook": {
317
341
  "type": "object",
318
342
  "patternProperties": {
319
343
  ".*": {
@@ -321,7 +345,7 @@
321
345
  }
322
346
  }
323
347
  },
324
- "endpoint": {
348
+ "timer": {
325
349
  "type": "object",
326
350
  "patternProperties": {
327
351
  ".*": {
@@ -329,7 +353,15 @@
329
353
  }
330
354
  }
331
355
  },
332
- "integration": {
356
+ "virtualButton": {
357
+ "type": "object",
358
+ "patternProperties": {
359
+ ".*": {
360
+ "type": "number"
361
+ }
362
+ }
363
+ },
364
+ "webhook": {
333
365
  "type": "object",
334
366
  "patternProperties": {
335
367
  ".*": {
@@ -340,11 +372,11 @@
340
372
  }
341
373
  },
342
374
  "payloadSizeDetails": {
343
- "title": "Payload Counts",
344
- "description": "Schema for the result of a payload count request",
375
+ "title": "Payload Stats",
376
+ "description": "Schema for the result of a payload stats request",
345
377
  "type": "object",
346
378
  "properties": {
347
- "mqttOut": {
379
+ "dataTable": {
348
380
  "type": "object",
349
381
  "patternProperties": {
350
382
  ".*": {
@@ -352,7 +384,7 @@
352
384
  }
353
385
  }
354
386
  },
355
- "mqttIn": {
387
+ "deviceCommand": {
356
388
  "type": "object",
357
389
  "patternProperties": {
358
390
  ".*": {
@@ -360,7 +392,15 @@
360
392
  }
361
393
  }
362
394
  },
363
- "dataTable": {
395
+ "deviceConnect": {
396
+ "type": "object",
397
+ "patternProperties": {
398
+ ".*": {
399
+ "type": "number"
400
+ }
401
+ }
402
+ },
403
+ "deviceDisconnect": {
364
404
  "type": "object",
365
405
  "patternProperties": {
366
406
  ".*": {
@@ -376,7 +416,7 @@
376
416
  }
377
417
  }
378
418
  },
379
- "deviceCommand": {
419
+ "endpoint": {
380
420
  "type": "object",
381
421
  "patternProperties": {
382
422
  ".*": {
@@ -384,7 +424,7 @@
384
424
  }
385
425
  }
386
426
  },
387
- "webhook": {
427
+ "event": {
388
428
  "type": "object",
389
429
  "patternProperties": {
390
430
  ".*": {
@@ -392,7 +432,7 @@
392
432
  }
393
433
  }
394
434
  },
395
- "timer": {
435
+ "flowError": {
396
436
  "type": "object",
397
437
  "patternProperties": {
398
438
  ".*": {
@@ -400,7 +440,7 @@
400
440
  }
401
441
  }
402
442
  },
403
- "event": {
443
+ "integration": {
404
444
  "type": "object",
405
445
  "patternProperties": {
406
446
  ".*": {
@@ -408,7 +448,7 @@
408
448
  }
409
449
  }
410
450
  },
411
- "virtualButton": {
451
+ "mqttIn": {
412
452
  "type": "object",
413
453
  "patternProperties": {
414
454
  ".*": {
@@ -416,7 +456,7 @@
416
456
  }
417
457
  }
418
458
  },
419
- "deviceConnect": {
459
+ "mqttOut": {
420
460
  "type": "object",
421
461
  "patternProperties": {
422
462
  ".*": {
@@ -424,7 +464,7 @@
424
464
  }
425
465
  }
426
466
  },
427
- "deviceDisconnect": {
467
+ "notebook": {
428
468
  "type": "object",
429
469
  "patternProperties": {
430
470
  ".*": {
@@ -432,7 +472,7 @@
432
472
  }
433
473
  }
434
474
  },
435
- "endpoint": {
475
+ "timer": {
436
476
  "type": "object",
437
477
  "patternProperties": {
438
478
  ".*": {
@@ -440,7 +480,15 @@
440
480
  }
441
481
  }
442
482
  },
443
- "integration": {
483
+ "virtualButton": {
484
+ "type": "object",
485
+ "patternProperties": {
486
+ ".*": {
487
+ "type": "number"
488
+ }
489
+ }
490
+ },
491
+ "webhook": {
444
492
  "type": "object",
445
493
  "patternProperties": {
446
494
  ".*": {