losant_rest 1.23.3 → 2.1.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.
Files changed (259) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test.yml +2 -2
  3. data/.ruby-version +1 -1
  4. data/docs/_schemas.md +2088 -34
  5. data/docs/application.md +21 -21
  6. data/docs/applicationApiToken.md +1 -1
  7. data/docs/applicationApiTokens.md +1 -1
  8. data/docs/applicationCertificate.md +3 -3
  9. data/docs/applicationCertificateAuthorities.md +2 -2
  10. data/docs/applicationCertificateAuthority.md +3 -3
  11. data/docs/applicationCertificates.md +2 -2
  12. data/docs/applicationDashboard.md +4 -4
  13. data/docs/applicationDashboards.md +2 -2
  14. data/docs/applicationJobLog.md +1 -1
  15. data/docs/applicationJobLogs.md +1 -1
  16. data/docs/applicationKey.md +3 -3
  17. data/docs/applicationKeys.md +2 -2
  18. data/docs/applicationTemplate.md +1 -1
  19. data/docs/applicationTemplates.md +3 -3
  20. data/docs/applications.md +4 -4
  21. data/docs/auditLog.md +1 -1
  22. data/docs/auditLogs.md +1 -1
  23. data/docs/credential.md +4 -4
  24. data/docs/credentials.md +2 -2
  25. data/docs/dashboard.md +3 -3
  26. data/docs/dashboards.md +2 -2
  27. data/docs/data.md +3 -3
  28. data/docs/dataTable.md +5 -5
  29. data/docs/dataTableRow.md +3 -3
  30. data/docs/dataTableRows.md +6 -6
  31. data/docs/dataTables.md +2 -2
  32. data/docs/device.md +14 -14
  33. data/docs/deviceAttribute.md +3 -3
  34. data/docs/deviceAttributes.md +2 -2
  35. data/docs/deviceRecipe.md +4 -4
  36. data/docs/deviceRecipes.md +2 -2
  37. data/docs/devices.md +14 -14
  38. data/docs/edgeDeployment.md +1 -1
  39. data/docs/edgeDeployments.md +4 -4
  40. data/docs/embeddedDeployment.md +1 -1
  41. data/docs/embeddedDeployments.md +5 -5
  42. data/docs/event.md +3 -3
  43. data/docs/events.md +6 -6
  44. data/docs/experience.md +2 -2
  45. data/docs/experienceDomain.md +3 -3
  46. data/docs/experienceDomains.md +2 -2
  47. data/docs/experienceEndpoint.md +4 -4
  48. data/docs/experienceEndpoints.md +3 -3
  49. data/docs/experienceGroup.md +3 -3
  50. data/docs/experienceGroups.md +2 -2
  51. data/docs/experienceSlug.md +3 -3
  52. data/docs/experienceSlugs.md +2 -2
  53. data/docs/experienceUser.md +3 -3
  54. data/docs/experienceUsers.md +2 -2
  55. data/docs/experienceVersion.md +3 -3
  56. data/docs/experienceVersions.md +2 -2
  57. data/docs/experienceView.md +4 -4
  58. data/docs/experienceViews.md +2 -2
  59. data/docs/file.md +5 -5
  60. data/docs/files.md +2 -2
  61. data/docs/flow.md +11 -11
  62. data/docs/flowVersion.md +6 -6
  63. data/docs/flowVersions.md +3 -3
  64. data/docs/flows.md +5 -5
  65. data/docs/instance.md +8 -8
  66. data/docs/instanceApiToken.md +1 -1
  67. data/docs/instanceApiTokens.md +1 -1
  68. data/docs/instanceAuditLog.md +1 -1
  69. data/docs/instanceAuditLogs.md +1 -1
  70. data/docs/instanceCustomNode.md +5 -5
  71. data/docs/instanceCustomNodes.md +2 -2
  72. data/docs/instanceMember.md +1 -1
  73. data/docs/instanceMembers.md +1 -1
  74. data/docs/instanceNotificationRule.md +5 -5
  75. data/docs/instanceNotificationRules.md +2 -2
  76. data/docs/instanceOrg.md +7 -7
  77. data/docs/instanceOrgInvite.md +1 -1
  78. data/docs/instanceOrgInvites.md +1 -1
  79. data/docs/instanceOrgMember.md +1 -1
  80. data/docs/instanceOrgMembers.md +1 -1
  81. data/docs/instanceOrgs.md +2 -2
  82. data/docs/instanceSandbox.md +7 -7
  83. data/docs/instanceSandboxes.md +1 -1
  84. data/docs/instances.md +1 -1
  85. data/docs/integration.md +3 -3
  86. data/docs/integrations.md +2 -2
  87. data/docs/me.md +20 -20
  88. data/docs/notebook.md +9 -9
  89. data/docs/notebooks.md +2 -2
  90. data/docs/org.md +13 -13
  91. data/docs/orgs.md +2 -2
  92. data/docs/privateFile.md +5 -5
  93. data/docs/privateFiles.md +2 -2
  94. data/docs/resourceJob.md +6 -6
  95. data/docs/resourceJobs.md +2 -2
  96. data/docs/userApiToken.md +3 -3
  97. data/docs/userApiTokens.md +2 -2
  98. data/docs/userOauthToken.md +125 -0
  99. data/docs/userOauthTokens.md +87 -0
  100. data/docs/webhook.md +3 -3
  101. data/docs/webhooks.md +2 -2
  102. data/lib/platform_rest/application.rb +20 -20
  103. data/lib/platform_rest/application_api_token.rb +1 -1
  104. data/lib/platform_rest/application_api_tokens.rb +1 -1
  105. data/lib/platform_rest/application_certificate.rb +3 -3
  106. data/lib/platform_rest/application_certificate_authorities.rb +2 -2
  107. data/lib/platform_rest/application_certificate_authority.rb +3 -3
  108. data/lib/platform_rest/application_certificates.rb +2 -2
  109. data/lib/platform_rest/application_dashboard.rb +4 -4
  110. data/lib/platform_rest/application_dashboards.rb +2 -2
  111. data/lib/platform_rest/application_job_log.rb +1 -1
  112. data/lib/platform_rest/application_job_logs.rb +1 -1
  113. data/lib/platform_rest/application_key.rb +3 -3
  114. data/lib/platform_rest/application_keys.rb +2 -2
  115. data/lib/platform_rest/application_template.rb +1 -1
  116. data/lib/platform_rest/application_templates.rb +3 -3
  117. data/lib/platform_rest/applications.rb +3 -3
  118. data/lib/platform_rest/audit_log.rb +1 -1
  119. data/lib/platform_rest/audit_logs.rb +1 -1
  120. data/lib/platform_rest/client.rb +10 -2
  121. data/lib/platform_rest/credential.rb +4 -4
  122. data/lib/platform_rest/credentials.rb +2 -2
  123. data/lib/platform_rest/dashboard.rb +3 -3
  124. data/lib/platform_rest/dashboards.rb +2 -2
  125. data/lib/platform_rest/data.rb +3 -3
  126. data/lib/platform_rest/data_table.rb +5 -5
  127. data/lib/platform_rest/data_table_row.rb +3 -3
  128. data/lib/platform_rest/data_table_rows.rb +6 -6
  129. data/lib/platform_rest/data_tables.rb +2 -2
  130. data/lib/platform_rest/device.rb +14 -14
  131. data/lib/platform_rest/device_attribute.rb +3 -3
  132. data/lib/platform_rest/device_attributes.rb +2 -2
  133. data/lib/platform_rest/device_recipe.rb +4 -4
  134. data/lib/platform_rest/device_recipes.rb +2 -2
  135. data/lib/platform_rest/devices.rb +14 -14
  136. data/lib/platform_rest/edge_deployment.rb +1 -1
  137. data/lib/platform_rest/edge_deployments.rb +4 -4
  138. data/lib/platform_rest/embedded_deployment.rb +1 -1
  139. data/lib/platform_rest/embedded_deployments.rb +5 -5
  140. data/lib/platform_rest/event.rb +3 -3
  141. data/lib/platform_rest/events.rb +6 -6
  142. data/lib/platform_rest/experience.rb +2 -2
  143. data/lib/platform_rest/experience_domain.rb +3 -3
  144. data/lib/platform_rest/experience_domains.rb +2 -2
  145. data/lib/platform_rest/experience_endpoint.rb +4 -4
  146. data/lib/platform_rest/experience_endpoints.rb +3 -3
  147. data/lib/platform_rest/experience_group.rb +3 -3
  148. data/lib/platform_rest/experience_groups.rb +2 -2
  149. data/lib/platform_rest/experience_slug.rb +3 -3
  150. data/lib/platform_rest/experience_slugs.rb +2 -2
  151. data/lib/platform_rest/experience_user.rb +3 -3
  152. data/lib/platform_rest/experience_users.rb +2 -2
  153. data/lib/platform_rest/experience_version.rb +3 -3
  154. data/lib/platform_rest/experience_versions.rb +2 -2
  155. data/lib/platform_rest/experience_view.rb +4 -4
  156. data/lib/platform_rest/experience_views.rb +2 -2
  157. data/lib/platform_rest/file.rb +4 -4
  158. data/lib/platform_rest/files.rb +2 -2
  159. data/lib/platform_rest/flow.rb +11 -11
  160. data/lib/platform_rest/flow_version.rb +6 -6
  161. data/lib/platform_rest/flow_versions.rb +3 -3
  162. data/lib/platform_rest/flows.rb +5 -5
  163. data/lib/platform_rest/instance.rb +8 -8
  164. data/lib/platform_rest/instance_api_token.rb +1 -1
  165. data/lib/platform_rest/instance_api_tokens.rb +1 -1
  166. data/lib/platform_rest/instance_audit_log.rb +1 -1
  167. data/lib/platform_rest/instance_audit_logs.rb +1 -1
  168. data/lib/platform_rest/instance_custom_node.rb +5 -5
  169. data/lib/platform_rest/instance_custom_nodes.rb +2 -2
  170. data/lib/platform_rest/instance_member.rb +1 -1
  171. data/lib/platform_rest/instance_members.rb +1 -1
  172. data/lib/platform_rest/instance_notification_rule.rb +5 -5
  173. data/lib/platform_rest/instance_notification_rules.rb +2 -2
  174. data/lib/platform_rest/instance_org.rb +7 -7
  175. data/lib/platform_rest/instance_org_invite.rb +1 -1
  176. data/lib/platform_rest/instance_org_invites.rb +1 -1
  177. data/lib/platform_rest/instance_org_member.rb +1 -1
  178. data/lib/platform_rest/instance_org_members.rb +1 -1
  179. data/lib/platform_rest/instance_orgs.rb +2 -2
  180. data/lib/platform_rest/instance_sandbox.rb +7 -7
  181. data/lib/platform_rest/instance_sandboxes.rb +1 -1
  182. data/lib/platform_rest/instances.rb +1 -1
  183. data/lib/platform_rest/integration.rb +3 -3
  184. data/lib/platform_rest/integrations.rb +2 -2
  185. data/lib/platform_rest/me.rb +20 -20
  186. data/lib/platform_rest/notebook.rb +8 -8
  187. data/lib/platform_rest/notebooks.rb +2 -2
  188. data/lib/platform_rest/org.rb +13 -13
  189. data/lib/platform_rest/orgs.rb +2 -2
  190. data/lib/platform_rest/private_file.rb +4 -4
  191. data/lib/platform_rest/private_files.rb +2 -2
  192. data/lib/platform_rest/resource_job.rb +6 -6
  193. data/lib/platform_rest/resource_jobs.rb +2 -2
  194. data/lib/platform_rest/user_api_token.rb +3 -3
  195. data/lib/platform_rest/user_api_tokens.rb +2 -2
  196. data/lib/platform_rest/user_oauth_token.rb +170 -0
  197. data/lib/platform_rest/user_oauth_tokens.rb +132 -0
  198. data/lib/platform_rest/version.rb +1 -1
  199. data/lib/platform_rest/webhook.rb +3 -3
  200. data/lib/platform_rest/webhooks.rb +2 -2
  201. data/lib/platform_rest.rb +2 -0
  202. data/losant_rest.gemspec +6 -5
  203. data/schemas/advancedApplicationKeyQuery.json +9 -0
  204. data/schemas/advancedDeviceQuery.json +9 -0
  205. data/schemas/advancedEventQuery.json +9 -0
  206. data/schemas/advancedExperienceGroupQuery.json +9 -0
  207. data/schemas/advancedExperienceUserQuery.json +9 -0
  208. data/schemas/advancedInstanceOrgQuery.json +9 -0
  209. data/schemas/apiToken.json +100 -0
  210. data/schemas/apiTokenPatch.json +100 -0
  211. data/schemas/apiTokenPost.json +118 -1
  212. data/schemas/apiTokens.json +100 -0
  213. data/schemas/applicationCertificate.json +5 -0
  214. data/schemas/applicationCertificates.json +5 -0
  215. data/schemas/applicationDashboardPost.json +4 -0
  216. data/schemas/credential.json +43 -1
  217. data/schemas/credentialPatch.json +14 -0
  218. data/schemas/credentialPost.json +20 -1
  219. data/schemas/credentials.json +43 -1
  220. data/schemas/dashboard.json +4 -0
  221. data/schemas/dashboardPatch.json +4 -0
  222. data/schemas/dashboardPost.json +4 -0
  223. data/schemas/dashboards.json +4 -0
  224. data/schemas/devicesDataExport.json +9 -0
  225. data/schemas/devicesDeleteOrRestorePost.json +9 -0
  226. data/schemas/devicesExportPayloadCountPost.json +9 -0
  227. data/schemas/devicesExportPost.json +9 -0
  228. data/schemas/devicesPatch.json +9 -0
  229. data/schemas/devicesRemoveDataPost.json +9 -0
  230. data/schemas/eventsExport.json +9 -0
  231. data/schemas/githubLogin.json +18 -1
  232. data/schemas/instanceOrgMemberPatch.json +2 -2
  233. data/schemas/instanceOrgMemberPost.json +4 -4
  234. data/schemas/instanceOrgPost.json +4 -4
  235. data/schemas/lastValueQuery.json +9 -0
  236. data/schemas/multiDeviceCommand.json +9 -0
  237. data/schemas/oauthClient.json +107 -0
  238. data/schemas/oauthClientPost.json +89 -0
  239. data/schemas/oauthDcrError.json +23 -0
  240. data/schemas/oauthError.json +31 -0
  241. data/schemas/org.json +2 -2
  242. data/schemas/orgInvite.json +2 -2
  243. data/schemas/orgInviteCollection.json +2 -2
  244. data/schemas/orgInvitePost.json +2 -2
  245. data/schemas/orgInvites.json +2 -2
  246. data/schemas/orgMemberPatch.json +2 -2
  247. data/schemas/orgRoleInfo.json +2 -2
  248. data/schemas/orgs.json +2 -2
  249. data/schemas/samlResponse.json +18 -1
  250. data/schemas/timeSeriesQuery.json +9 -0
  251. data/schemas/userCredentials.json +18 -1
  252. data/schemas/userOauthToken.json +207 -0
  253. data/schemas/userOauthTokenPatch.json +123 -0
  254. data/schemas/userOauthTokenPost.json +197 -0
  255. data/schemas/userOauthTokens.json +248 -0
  256. data/schemas/userPost.json +18 -1
  257. data/test/basic_test.rb +1 -1
  258. data/test/test_helper.rb +2 -1
  259. metadata +38 -15
data/docs/_schemas.md CHANGED
@@ -261,6 +261,10 @@
261
261
  * [Notification Rule Patch](#notification-rule-patch)
262
262
  * [Notification Rule Post](#notification-rule-post)
263
263
  * [Notification Rules](#notification-rules)
264
+ * [OAuth Client](#oauth-client)
265
+ * [OAuth Client Registration Request](#oauth-client-registration-request)
266
+ * [OAuth DCR Error](#oauth-dcr-error)
267
+ * [OAuth Error](#oauth-error)
264
268
  * [Organization](#organization)
265
269
  * [Organization Invitation](#organization-invitation)
266
270
  * [Organization Invitation Action](#organization-invitation-action)
@@ -306,6 +310,10 @@
306
310
  * [Time Series Data](#time-series-data)
307
311
  * [Time Series Query](#time-series-query)
308
312
  * [User Credentials](#user-credentials)
313
+ * [User OAuth Token](#user-oauth-token)
314
+ * [User OAuth Token Patch](#user-oauth-token-patch)
315
+ * [User OAuth Token Post](#user-oauth-token-post)
316
+ * [User OAuth Tokens](#user-oauth-tokens)
309
317
  * [User Post](#user-post)
310
318
  * [Validate Context Error](#validate-context-error)
311
319
  * [Validate Context Success](#validate-context-success)
@@ -1751,6 +1759,9 @@ Schema for advanced application key queries
1751
1759
  "oneOf": [
1752
1760
  {
1753
1761
  "oneOf": [
1762
+ {
1763
+ "type": "null"
1764
+ },
1754
1765
  {
1755
1766
  "type": "object",
1756
1767
  "properties": {
@@ -1906,6 +1917,9 @@ Schema for advanced application key queries
1906
1917
  "properties": {
1907
1918
  "$eq": {
1908
1919
  "oneOf": [
1920
+ {
1921
+ "type": "null"
1922
+ },
1909
1923
  {
1910
1924
  "type": "object",
1911
1925
  "properties": {
@@ -2067,6 +2081,9 @@ Schema for advanced application key queries
2067
2081
  "properties": {
2068
2082
  "$ne": {
2069
2083
  "oneOf": [
2084
+ {
2085
+ "type": "null"
2086
+ },
2070
2087
  {
2071
2088
  "type": "object",
2072
2089
  "properties": {
@@ -4358,6 +4375,9 @@ Schema for advanced device queries
4358
4375
  "oneOf": [
4359
4376
  {
4360
4377
  "oneOf": [
4378
+ {
4379
+ "type": "null"
4380
+ },
4361
4381
  {
4362
4382
  "type": "object",
4363
4383
  "properties": {
@@ -4513,6 +4533,9 @@ Schema for advanced device queries
4513
4533
  "properties": {
4514
4534
  "$eq": {
4515
4535
  "oneOf": [
4536
+ {
4537
+ "type": "null"
4538
+ },
4516
4539
  {
4517
4540
  "type": "object",
4518
4541
  "properties": {
@@ -4674,6 +4697,9 @@ Schema for advanced device queries
4674
4697
  "properties": {
4675
4698
  "$ne": {
4676
4699
  "oneOf": [
4700
+ {
4701
+ "type": "null"
4702
+ },
4677
4703
  {
4678
4704
  "type": "object",
4679
4705
  "properties": {
@@ -6337,6 +6363,9 @@ Schema for advanced event queries
6337
6363
  "oneOf": [
6338
6364
  {
6339
6365
  "oneOf": [
6366
+ {
6367
+ "type": "null"
6368
+ },
6340
6369
  {
6341
6370
  "type": "object",
6342
6371
  "properties": {
@@ -6492,6 +6521,9 @@ Schema for advanced event queries
6492
6521
  "properties": {
6493
6522
  "$eq": {
6494
6523
  "oneOf": [
6524
+ {
6525
+ "type": "null"
6526
+ },
6495
6527
  {
6496
6528
  "type": "object",
6497
6529
  "properties": {
@@ -6653,6 +6685,9 @@ Schema for advanced event queries
6653
6685
  "properties": {
6654
6686
  "$ne": {
6655
6687
  "oneOf": [
6688
+ {
6689
+ "type": "null"
6690
+ },
6656
6691
  {
6657
6692
  "type": "object",
6658
6693
  "properties": {
@@ -7494,6 +7529,9 @@ Schema for advanced experience group queries
7494
7529
  "oneOf": [
7495
7530
  {
7496
7531
  "oneOf": [
7532
+ {
7533
+ "type": "null"
7534
+ },
7497
7535
  {
7498
7536
  "type": "object",
7499
7537
  "properties": {
@@ -7649,6 +7687,9 @@ Schema for advanced experience group queries
7649
7687
  "properties": {
7650
7688
  "$eq": {
7651
7689
  "oneOf": [
7690
+ {
7691
+ "type": "null"
7692
+ },
7652
7693
  {
7653
7694
  "type": "object",
7654
7695
  "properties": {
@@ -7810,6 +7851,9 @@ Schema for advanced experience group queries
7810
7851
  "properties": {
7811
7852
  "$ne": {
7812
7853
  "oneOf": [
7854
+ {
7855
+ "type": "null"
7856
+ },
7813
7857
  {
7814
7858
  "type": "object",
7815
7859
  "properties": {
@@ -9055,6 +9099,9 @@ Schema for advanced experience user queries
9055
9099
  "oneOf": [
9056
9100
  {
9057
9101
  "oneOf": [
9102
+ {
9103
+ "type": "null"
9104
+ },
9058
9105
  {
9059
9106
  "type": "object",
9060
9107
  "properties": {
@@ -9210,6 +9257,9 @@ Schema for advanced experience user queries
9210
9257
  "properties": {
9211
9258
  "$eq": {
9212
9259
  "oneOf": [
9260
+ {
9261
+ "type": "null"
9262
+ },
9213
9263
  {
9214
9264
  "type": "object",
9215
9265
  "properties": {
@@ -9371,6 +9421,9 @@ Schema for advanced experience user queries
9371
9421
  "properties": {
9372
9422
  "$ne": {
9373
9423
  "oneOf": [
9424
+ {
9425
+ "type": "null"
9426
+ },
9374
9427
  {
9375
9428
  "type": "object",
9376
9429
  "properties": {
@@ -13576,6 +13629,9 @@ Schema for advanced instance organization queries
13576
13629
  "oneOf": [
13577
13630
  {
13578
13631
  "oneOf": [
13632
+ {
13633
+ "type": "null"
13634
+ },
13579
13635
  {
13580
13636
  "type": "object",
13581
13637
  "properties": {
@@ -13731,6 +13787,9 @@ Schema for advanced instance organization queries
13731
13787
  "properties": {
13732
13788
  "$eq": {
13733
13789
  "oneOf": [
13790
+ {
13791
+ "type": "null"
13792
+ },
13734
13793
  {
13735
13794
  "type": "object",
13736
13795
  "properties": {
@@ -13892,6 +13951,9 @@ Schema for advanced instance organization queries
13892
13951
  "properties": {
13893
13952
  "$ne": {
13894
13953
  "oneOf": [
13954
+ {
13955
+ "type": "null"
13956
+ },
13895
13957
  {
13896
13958
  "type": "object",
13897
13959
  "properties": {
@@ -14397,6 +14459,106 @@ Schema for a single API Token
14397
14459
  "type": "string",
14398
14460
  "format": "date-time"
14399
14461
  },
14462
+ "defaultRole": {
14463
+ "type": "string",
14464
+ "enum": [
14465
+ "admin",
14466
+ "edit",
14467
+ "collaborate",
14468
+ "view",
14469
+ "none"
14470
+ ]
14471
+ },
14472
+ "orgRoles": {
14473
+ "type": "array",
14474
+ "items": {
14475
+ "type": "object",
14476
+ "properties": {
14477
+ "orgId": {
14478
+ "oneOf": [
14479
+ {
14480
+ "type": "string",
14481
+ "pattern": "^[A-Fa-f\\d]{24}$"
14482
+ },
14483
+ {
14484
+ "type": "string",
14485
+ "enum": [
14486
+ "sandbox"
14487
+ ]
14488
+ }
14489
+ ]
14490
+ },
14491
+ "role": {
14492
+ "type": "string",
14493
+ "enum": [
14494
+ "admin",
14495
+ "edit",
14496
+ "collaborate",
14497
+ "view",
14498
+ "none"
14499
+ ]
14500
+ },
14501
+ "applicationRoles": {
14502
+ "type": "array",
14503
+ "items": {
14504
+ "type": "object",
14505
+ "properties": {
14506
+ "resourceId": {
14507
+ "type": "string",
14508
+ "pattern": "^[A-Fa-f\\d]{24}$"
14509
+ },
14510
+ "role": {
14511
+ "type": "string",
14512
+ "enum": [
14513
+ "collaborate",
14514
+ "view",
14515
+ "none"
14516
+ ]
14517
+ }
14518
+ },
14519
+ "required": [
14520
+ "resourceId",
14521
+ "role"
14522
+ ],
14523
+ "additionalProperties": false
14524
+ },
14525
+ "maxItems": 100
14526
+ },
14527
+ "dashboardRoles": {
14528
+ "type": "array",
14529
+ "items": {
14530
+ "type": "object",
14531
+ "properties": {
14532
+ "resourceId": {
14533
+ "type": "string",
14534
+ "pattern": "^[A-Fa-f\\d]{24}$"
14535
+ },
14536
+ "role": {
14537
+ "type": "string",
14538
+ "enum": [
14539
+ "collaborate",
14540
+ "view",
14541
+ "none"
14542
+ ]
14543
+ }
14544
+ },
14545
+ "required": [
14546
+ "resourceId",
14547
+ "role"
14548
+ ],
14549
+ "additionalProperties": false
14550
+ },
14551
+ "maxItems": 100
14552
+ }
14553
+ },
14554
+ "required": [
14555
+ "orgId",
14556
+ "role"
14557
+ ],
14558
+ "additionalProperties": false
14559
+ },
14560
+ "maxItems": 25
14561
+ },
14400
14562
  "scope": {
14401
14563
  "type": "array",
14402
14564
  "items": {
@@ -14463,6 +14625,106 @@ Schema for the body of an API Token modification request
14463
14625
  "type": "string",
14464
14626
  "maxLength": 32767
14465
14627
  },
14628
+ "defaultRole": {
14629
+ "type": "string",
14630
+ "enum": [
14631
+ "admin",
14632
+ "edit",
14633
+ "collaborate",
14634
+ "view",
14635
+ "none"
14636
+ ]
14637
+ },
14638
+ "orgRoles": {
14639
+ "type": "array",
14640
+ "items": {
14641
+ "type": "object",
14642
+ "properties": {
14643
+ "orgId": {
14644
+ "oneOf": [
14645
+ {
14646
+ "type": "string",
14647
+ "pattern": "^[A-Fa-f\\d]{24}$"
14648
+ },
14649
+ {
14650
+ "type": "string",
14651
+ "enum": [
14652
+ "sandbox"
14653
+ ]
14654
+ }
14655
+ ]
14656
+ },
14657
+ "role": {
14658
+ "type": "string",
14659
+ "enum": [
14660
+ "admin",
14661
+ "edit",
14662
+ "collaborate",
14663
+ "view",
14664
+ "none"
14665
+ ]
14666
+ },
14667
+ "applicationRoles": {
14668
+ "type": "array",
14669
+ "items": {
14670
+ "type": "object",
14671
+ "properties": {
14672
+ "resourceId": {
14673
+ "type": "string",
14674
+ "pattern": "^[A-Fa-f\\d]{24}$"
14675
+ },
14676
+ "role": {
14677
+ "type": "string",
14678
+ "enum": [
14679
+ "collaborate",
14680
+ "view",
14681
+ "none"
14682
+ ]
14683
+ }
14684
+ },
14685
+ "required": [
14686
+ "resourceId",
14687
+ "role"
14688
+ ],
14689
+ "additionalProperties": false
14690
+ },
14691
+ "maxItems": 100
14692
+ },
14693
+ "dashboardRoles": {
14694
+ "type": "array",
14695
+ "items": {
14696
+ "type": "object",
14697
+ "properties": {
14698
+ "resourceId": {
14699
+ "type": "string",
14700
+ "pattern": "^[A-Fa-f\\d]{24}$"
14701
+ },
14702
+ "role": {
14703
+ "type": "string",
14704
+ "enum": [
14705
+ "collaborate",
14706
+ "view",
14707
+ "none"
14708
+ ]
14709
+ }
14710
+ },
14711
+ "required": [
14712
+ "resourceId",
14713
+ "role"
14714
+ ],
14715
+ "additionalProperties": false
14716
+ },
14717
+ "maxItems": 100
14718
+ }
14719
+ },
14720
+ "required": [
14721
+ "orgId",
14722
+ "role"
14723
+ ],
14724
+ "additionalProperties": false
14725
+ },
14726
+ "maxItems": 25
14727
+ },
14466
14728
  "status": {
14467
14729
  "type": "string",
14468
14730
  "enum": [
@@ -14509,6 +14771,106 @@ Schema for the body of an API Token creation request
14509
14771
  "type": "string",
14510
14772
  "format": "date-time"
14511
14773
  },
14774
+ "defaultRole": {
14775
+ "type": "string",
14776
+ "enum": [
14777
+ "admin",
14778
+ "edit",
14779
+ "collaborate",
14780
+ "view",
14781
+ "none"
14782
+ ]
14783
+ },
14784
+ "orgRoles": {
14785
+ "type": "array",
14786
+ "items": {
14787
+ "type": "object",
14788
+ "properties": {
14789
+ "orgId": {
14790
+ "oneOf": [
14791
+ {
14792
+ "type": "string",
14793
+ "pattern": "^[A-Fa-f\\d]{24}$"
14794
+ },
14795
+ {
14796
+ "type": "string",
14797
+ "enum": [
14798
+ "sandbox"
14799
+ ]
14800
+ }
14801
+ ]
14802
+ },
14803
+ "role": {
14804
+ "type": "string",
14805
+ "enum": [
14806
+ "admin",
14807
+ "edit",
14808
+ "collaborate",
14809
+ "view",
14810
+ "none"
14811
+ ]
14812
+ },
14813
+ "applicationRoles": {
14814
+ "type": "array",
14815
+ "items": {
14816
+ "type": "object",
14817
+ "properties": {
14818
+ "resourceId": {
14819
+ "type": "string",
14820
+ "pattern": "^[A-Fa-f\\d]{24}$"
14821
+ },
14822
+ "role": {
14823
+ "type": "string",
14824
+ "enum": [
14825
+ "collaborate",
14826
+ "view",
14827
+ "none"
14828
+ ]
14829
+ }
14830
+ },
14831
+ "required": [
14832
+ "resourceId",
14833
+ "role"
14834
+ ],
14835
+ "additionalProperties": false
14836
+ },
14837
+ "maxItems": 100
14838
+ },
14839
+ "dashboardRoles": {
14840
+ "type": "array",
14841
+ "items": {
14842
+ "type": "object",
14843
+ "properties": {
14844
+ "resourceId": {
14845
+ "type": "string",
14846
+ "pattern": "^[A-Fa-f\\d]{24}$"
14847
+ },
14848
+ "role": {
14849
+ "type": "string",
14850
+ "enum": [
14851
+ "collaborate",
14852
+ "view",
14853
+ "none"
14854
+ ]
14855
+ }
14856
+ },
14857
+ "required": [
14858
+ "resourceId",
14859
+ "role"
14860
+ ],
14861
+ "additionalProperties": false
14862
+ },
14863
+ "maxItems": 100
14864
+ }
14865
+ },
14866
+ "required": [
14867
+ "orgId",
14868
+ "role"
14869
+ ],
14870
+ "additionalProperties": false
14871
+ },
14872
+ "maxItems": 25
14873
+ },
14512
14874
  "scope": {
14513
14875
  "type": "array",
14514
14876
  "uniqueItems": true,
@@ -14520,6 +14882,7 @@ Schema for the body of an API Token creation request
14520
14882
  "type": "string",
14521
14883
  "enum": [
14522
14884
  "all.Application",
14885
+ "all.Application.bounded",
14523
14886
  "all.Application.read",
14524
14887
  "all.Application.cli",
14525
14888
  "all.Device",
@@ -14689,7 +15052,6 @@ Schema for the body of an API Token creation request
14689
15052
  "devices.delete",
14690
15053
  "devices.restore",
14691
15054
  "devices.removeData",
14692
- "devices.detailedSummary",
14693
15055
  "devices.deviceNames",
14694
15056
  "devices.export",
14695
15057
  "devices.get",
@@ -14847,7 +15209,11 @@ Schema for the body of an API Token creation request
14847
15209
  "type": "string",
14848
15210
  "enum": [
14849
15211
  "all.Organization",
15212
+ "all.Organization.bounded",
14850
15213
  "all.Organization.read",
15214
+ "only.Organization",
15215
+ "only.Organization.bounded",
15216
+ "only.Organization.read",
14851
15217
  "applications.*",
14852
15218
  "auditLog.*",
14853
15219
  "auditLogs.*",
@@ -14890,6 +15256,7 @@ Schema for the body of an API Token creation request
14890
15256
  "type": "string",
14891
15257
  "enum": [
14892
15258
  "all.Instance",
15259
+ "all.Instance.bounded",
14893
15260
  "all.Instance.read",
14894
15261
  "instance.*",
14895
15262
  "instance.get",
@@ -14978,8 +15345,12 @@ Schema for the body of an API Token creation request
14978
15345
  "type": "string",
14979
15346
  "enum": [
14980
15347
  "all.User",
15348
+ "all.User.bounded",
14981
15349
  "all.User.read",
14982
15350
  "all.User.cli",
15351
+ "only.User",
15352
+ "only.User.bounded",
15353
+ "only.User.read",
14983
15354
  "userApiToken.*",
14984
15355
  "userApiToken.get",
14985
15356
  "userApiToken.patch",
@@ -14987,6 +15358,13 @@ Schema for the body of an API Token creation request
14987
15358
  "userApiTokens.*",
14988
15359
  "userApiTokens.get",
14989
15360
  "userApiTokens.post",
15361
+ "userOauthToken.*",
15362
+ "userOauthToken.get",
15363
+ "userOauthToken.patch",
15364
+ "userOauthToken.delete",
15365
+ "userOauthTokens.*",
15366
+ "userOauthTokens.get",
15367
+ "userOauthTokens.post",
14990
15368
  "applicationTemplate.*",
14991
15369
  "applicationTemplate.get",
14992
15370
  "applicationTemplates.*",
@@ -15016,6 +15394,7 @@ Schema for the body of an API Token creation request
15016
15394
  "me.invite",
15017
15395
  "me.invites",
15018
15396
  "me.respondToInvite",
15397
+ "me.refreshToken",
15019
15398
  "orgs.*",
15020
15399
  "orgs.get",
15021
15400
  "orgs.post"
@@ -15127,6 +15506,106 @@ Schema for a collection of API Tokens
15127
15506
  "type": "string",
15128
15507
  "format": "date-time"
15129
15508
  },
15509
+ "defaultRole": {
15510
+ "type": "string",
15511
+ "enum": [
15512
+ "admin",
15513
+ "edit",
15514
+ "collaborate",
15515
+ "view",
15516
+ "none"
15517
+ ]
15518
+ },
15519
+ "orgRoles": {
15520
+ "type": "array",
15521
+ "items": {
15522
+ "type": "object",
15523
+ "properties": {
15524
+ "orgId": {
15525
+ "oneOf": [
15526
+ {
15527
+ "type": "string",
15528
+ "pattern": "^[A-Fa-f\\d]{24}$"
15529
+ },
15530
+ {
15531
+ "type": "string",
15532
+ "enum": [
15533
+ "sandbox"
15534
+ ]
15535
+ }
15536
+ ]
15537
+ },
15538
+ "role": {
15539
+ "type": "string",
15540
+ "enum": [
15541
+ "admin",
15542
+ "edit",
15543
+ "collaborate",
15544
+ "view",
15545
+ "none"
15546
+ ]
15547
+ },
15548
+ "applicationRoles": {
15549
+ "type": "array",
15550
+ "items": {
15551
+ "type": "object",
15552
+ "properties": {
15553
+ "resourceId": {
15554
+ "type": "string",
15555
+ "pattern": "^[A-Fa-f\\d]{24}$"
15556
+ },
15557
+ "role": {
15558
+ "type": "string",
15559
+ "enum": [
15560
+ "collaborate",
15561
+ "view",
15562
+ "none"
15563
+ ]
15564
+ }
15565
+ },
15566
+ "required": [
15567
+ "resourceId",
15568
+ "role"
15569
+ ],
15570
+ "additionalProperties": false
15571
+ },
15572
+ "maxItems": 100
15573
+ },
15574
+ "dashboardRoles": {
15575
+ "type": "array",
15576
+ "items": {
15577
+ "type": "object",
15578
+ "properties": {
15579
+ "resourceId": {
15580
+ "type": "string",
15581
+ "pattern": "^[A-Fa-f\\d]{24}$"
15582
+ },
15583
+ "role": {
15584
+ "type": "string",
15585
+ "enum": [
15586
+ "collaborate",
15587
+ "view",
15588
+ "none"
15589
+ ]
15590
+ }
15591
+ },
15592
+ "required": [
15593
+ "resourceId",
15594
+ "role"
15595
+ ],
15596
+ "additionalProperties": false
15597
+ },
15598
+ "maxItems": 100
15599
+ }
15600
+ },
15601
+ "required": [
15602
+ "orgId",
15603
+ "role"
15604
+ ],
15605
+ "additionalProperties": false
15606
+ },
15607
+ "maxItems": 25
15608
+ },
15130
15609
  "scope": {
15131
15610
  "type": "array",
15132
15611
  "items": {
@@ -16030,6 +16509,11 @@ Schema for a single Application Certificate
16030
16509
  }
16031
16510
  }
16032
16511
  },
16512
+ "certificate": {
16513
+ "type": "string",
16514
+ "maxLength": 32767,
16515
+ "minLength": 50
16516
+ },
16033
16517
  "filterType": {
16034
16518
  "oneOf": [
16035
16519
  {
@@ -16775,6 +17259,11 @@ Schema for a collection of Application Certificates
16775
17259
  }
16776
17260
  }
16777
17261
  },
17262
+ "certificate": {
17263
+ "type": "string",
17264
+ "maxLength": 32767,
17265
+ "minLength": 50
17266
+ },
16778
17267
  "filterType": {
16779
17268
  "oneOf": [
16780
17269
  {
@@ -19267,6 +19756,10 @@ Schema for the body of an Application scoped Dashboard creation request
19267
19756
  },
19268
19757
  "includeDeviceInfo": {
19269
19758
  "type": "boolean"
19759
+ },
19760
+ "maxResultsPerDevice": {
19761
+ "type": "string",
19762
+ "maxLength": 255
19270
19763
  }
19271
19764
  },
19272
19765
  "additionalProperties": false
@@ -29170,7 +29663,8 @@ Schema for a single Credential
29170
29663
  "mailgun",
29171
29664
  "snowflake",
29172
29665
  "git",
29173
- "datadog"
29666
+ "datadog",
29667
+ "certificateKeyPair"
29174
29668
  ]
29175
29669
  },
29176
29670
  "awsConfig": {
@@ -29445,6 +29939,47 @@ Schema for a single Credential
29445
29939
  }
29446
29940
  },
29447
29941
  "additionalProperties": false
29942
+ },
29943
+ "certificateKeyPairConfig": {
29944
+ "type": "object",
29945
+ "properties": {
29946
+ "certificate": {
29947
+ "type": "string",
29948
+ "maxLength": 8192
29949
+ },
29950
+ "info": {
29951
+ "type": "object",
29952
+ "properties": {
29953
+ "serialNumber": {
29954
+ "type": "string",
29955
+ "minLength": 1,
29956
+ "maxLength": 1024
29957
+ },
29958
+ "fingerprint": {
29959
+ "type": "string",
29960
+ "minLength": 1,
29961
+ "maxLength": 1024
29962
+ },
29963
+ "commonName": {
29964
+ "type": "string",
29965
+ "maxLength": 1024
29966
+ },
29967
+ "issuerName": {
29968
+ "type": "string",
29969
+ "maxLength": 1024
29970
+ },
29971
+ "notValidBefore": {
29972
+ "type": "string",
29973
+ "format": "date-time"
29974
+ },
29975
+ "notValidAfter": {
29976
+ "type": "string",
29977
+ "format": "date-time"
29978
+ }
29979
+ }
29980
+ }
29981
+ },
29982
+ "additionalProperties": false
29448
29983
  }
29449
29984
  },
29450
29985
  "additionalProperties": false,
@@ -39323,6 +39858,20 @@ Schema for a Credential update request
39323
39858
  }
39324
39859
  },
39325
39860
  "additionalProperties": false
39861
+ },
39862
+ "certificateKeyPairConfig": {
39863
+ "type": "object",
39864
+ "properties": {
39865
+ "certificate": {
39866
+ "type": "string",
39867
+ "maxLength": 8192
39868
+ },
39869
+ "privateKey": {
39870
+ "type": "string",
39871
+ "maxLength": 8196
39872
+ }
39873
+ },
39874
+ "additionalProperties": false
39326
39875
  }
39327
39876
  },
39328
39877
  "additionalProperties": false
@@ -39382,7 +39931,8 @@ Schema for a Credential creation request
39382
39931
  "mailgun",
39383
39932
  "snowflake",
39384
39933
  "git",
39385
- "datadog"
39934
+ "datadog",
39935
+ "certificateKeyPair"
39386
39936
  ]
39387
39937
  },
39388
39938
  "awsConfig": {
@@ -39776,6 +40326,24 @@ Schema for a Credential creation request
39776
40326
  "required": [
39777
40327
  "secretValue"
39778
40328
  ]
40329
+ },
40330
+ "certificateKeyPairConfig": {
40331
+ "type": "object",
40332
+ "properties": {
40333
+ "certificate": {
40334
+ "type": "string",
40335
+ "maxLength": 8192
40336
+ },
40337
+ "privateKey": {
40338
+ "type": "string",
40339
+ "maxLength": 8196
40340
+ }
40341
+ },
40342
+ "additionalProperties": false,
40343
+ "required": [
40344
+ "certificate",
40345
+ "privateKey"
40346
+ ]
39779
40347
  }
39780
40348
  },
39781
40349
  "additionalProperties": false,
@@ -39888,7 +40456,8 @@ Schema for a collection of Credentials
39888
40456
  "mailgun",
39889
40457
  "snowflake",
39890
40458
  "git",
39891
- "datadog"
40459
+ "datadog",
40460
+ "certificateKeyPair"
39892
40461
  ]
39893
40462
  },
39894
40463
  "awsConfig": {
@@ -40163,6 +40732,47 @@ Schema for a collection of Credentials
40163
40732
  }
40164
40733
  },
40165
40734
  "additionalProperties": false
40735
+ },
40736
+ "certificateKeyPairConfig": {
40737
+ "type": "object",
40738
+ "properties": {
40739
+ "certificate": {
40740
+ "type": "string",
40741
+ "maxLength": 8192
40742
+ },
40743
+ "info": {
40744
+ "type": "object",
40745
+ "properties": {
40746
+ "serialNumber": {
40747
+ "type": "string",
40748
+ "minLength": 1,
40749
+ "maxLength": 1024
40750
+ },
40751
+ "fingerprint": {
40752
+ "type": "string",
40753
+ "minLength": 1,
40754
+ "maxLength": 1024
40755
+ },
40756
+ "commonName": {
40757
+ "type": "string",
40758
+ "maxLength": 1024
40759
+ },
40760
+ "issuerName": {
40761
+ "type": "string",
40762
+ "maxLength": 1024
40763
+ },
40764
+ "notValidBefore": {
40765
+ "type": "string",
40766
+ "format": "date-time"
40767
+ },
40768
+ "notValidAfter": {
40769
+ "type": "string",
40770
+ "format": "date-time"
40771
+ }
40772
+ }
40773
+ }
40774
+ },
40775
+ "additionalProperties": false
40166
40776
  }
40167
40777
  },
40168
40778
  "additionalProperties": false,
@@ -42027,6 +42637,10 @@ Schema for a single Dashboard
42027
42637
  },
42028
42638
  "includeDeviceInfo": {
42029
42639
  "type": "boolean"
42640
+ },
42641
+ "maxResultsPerDevice": {
42642
+ "type": "string",
42643
+ "maxLength": 255
42030
42644
  }
42031
42645
  },
42032
42646
  "additionalProperties": false
@@ -49206,6 +49820,10 @@ Schema for the body of a Dashboard modification request
49206
49820
  },
49207
49821
  "includeDeviceInfo": {
49208
49822
  "type": "boolean"
49823
+ },
49824
+ "maxResultsPerDevice": {
49825
+ "type": "string",
49826
+ "maxLength": 255
49209
49827
  }
49210
49828
  },
49211
49829
  "additionalProperties": false
@@ -55643,6 +56261,10 @@ Schema for the body of a Dashboard creation request
55643
56261
  },
55644
56262
  "includeDeviceInfo": {
55645
56263
  "type": "boolean"
56264
+ },
56265
+ "maxResultsPerDevice": {
56266
+ "type": "string",
56267
+ "maxLength": 255
55646
56268
  }
55647
56269
  },
55648
56270
  "additionalProperties": false
@@ -62504,6 +63126,10 @@ Schema for a collection of Dashboards
62504
63126
  },
62505
63127
  "includeDeviceInfo": {
62506
63128
  "type": "boolean"
63129
+ },
63130
+ "maxResultsPerDevice": {
63131
+ "type": "string",
63132
+ "maxLength": 255
62507
63133
  }
62508
63134
  },
62509
63135
  "additionalProperties": false
@@ -73960,6 +74586,9 @@ Schema for exporting the data for multiple devices
73960
74586
  "oneOf": [
73961
74587
  {
73962
74588
  "oneOf": [
74589
+ {
74590
+ "type": "null"
74591
+ },
73963
74592
  {
73964
74593
  "type": "object",
73965
74594
  "properties": {
@@ -74115,6 +74744,9 @@ Schema for exporting the data for multiple devices
74115
74744
  "properties": {
74116
74745
  "$eq": {
74117
74746
  "oneOf": [
74747
+ {
74748
+ "type": "null"
74749
+ },
74118
74750
  {
74119
74751
  "type": "object",
74120
74752
  "properties": {
@@ -74276,6 +74908,9 @@ Schema for exporting the data for multiple devices
74276
74908
  "properties": {
74277
74909
  "$ne": {
74278
74910
  "oneOf": [
74911
+ {
74912
+ "type": "null"
74913
+ },
74279
74914
  {
74280
74915
  "type": "object",
74281
74916
  "properties": {
@@ -76101,6 +76736,9 @@ Schema for the body of a bulk device deletion or restoration request
76101
76736
  "oneOf": [
76102
76737
  {
76103
76738
  "oneOf": [
76739
+ {
76740
+ "type": "null"
76741
+ },
76104
76742
  {
76105
76743
  "type": "object",
76106
76744
  "properties": {
@@ -76256,6 +76894,9 @@ Schema for the body of a bulk device deletion or restoration request
76256
76894
  "properties": {
76257
76895
  "$eq": {
76258
76896
  "oneOf": [
76897
+ {
76898
+ "type": "null"
76899
+ },
76259
76900
  {
76260
76901
  "type": "object",
76261
76902
  "properties": {
@@ -76417,6 +77058,9 @@ Schema for the body of a bulk device deletion or restoration request
76417
77058
  "properties": {
76418
77059
  "$ne": {
76419
77060
  "oneOf": [
77061
+ {
77062
+ "type": "null"
77063
+ },
76420
77064
  {
76421
77065
  "type": "object",
76422
77066
  "properties": {
@@ -78217,6 +78861,9 @@ Schema for the body of a device payload count export request
78217
78861
  "oneOf": [
78218
78862
  {
78219
78863
  "oneOf": [
78864
+ {
78865
+ "type": "null"
78866
+ },
78220
78867
  {
78221
78868
  "type": "object",
78222
78869
  "properties": {
@@ -78372,6 +79019,9 @@ Schema for the body of a device payload count export request
78372
79019
  "properties": {
78373
79020
  "$eq": {
78374
79021
  "oneOf": [
79022
+ {
79023
+ "type": "null"
79024
+ },
78375
79025
  {
78376
79026
  "type": "object",
78377
79027
  "properties": {
@@ -78533,6 +79183,9 @@ Schema for the body of a device payload count export request
78533
79183
  "properties": {
78534
79184
  "$ne": {
78535
79185
  "oneOf": [
79186
+ {
79187
+ "type": "null"
79188
+ },
78536
79189
  {
78537
79190
  "type": "object",
78538
79191
  "properties": {
@@ -80327,6 +80980,9 @@ Schema for the body of a device metadata export request
80327
80980
  "oneOf": [
80328
80981
  {
80329
80982
  "oneOf": [
80983
+ {
80984
+ "type": "null"
80985
+ },
80330
80986
  {
80331
80987
  "type": "object",
80332
80988
  "properties": {
@@ -80482,6 +81138,9 @@ Schema for the body of a device metadata export request
80482
81138
  "properties": {
80483
81139
  "$eq": {
80484
81140
  "oneOf": [
81141
+ {
81142
+ "type": "null"
81143
+ },
80485
81144
  {
80486
81145
  "type": "object",
80487
81146
  "properties": {
@@ -80643,6 +81302,9 @@ Schema for the body of a device metadata export request
80643
81302
  "properties": {
80644
81303
  "$ne": {
80645
81304
  "oneOf": [
81305
+ {
81306
+ "type": "null"
81307
+ },
80646
81308
  {
80647
81309
  "type": "object",
80648
81310
  "properties": {
@@ -82684,6 +83346,9 @@ Schema for the body of a Devices modification request
82684
83346
  "oneOf": [
82685
83347
  {
82686
83348
  "oneOf": [
83349
+ {
83350
+ "type": "null"
83351
+ },
82687
83352
  {
82688
83353
  "type": "object",
82689
83354
  "properties": {
@@ -82839,6 +83504,9 @@ Schema for the body of a Devices modification request
82839
83504
  "properties": {
82840
83505
  "$eq": {
82841
83506
  "oneOf": [
83507
+ {
83508
+ "type": "null"
83509
+ },
82842
83510
  {
82843
83511
  "type": "object",
82844
83512
  "properties": {
@@ -83000,6 +83668,9 @@ Schema for the body of a Devices modification request
83000
83668
  "properties": {
83001
83669
  "$ne": {
83002
83670
  "oneOf": [
83671
+ {
83672
+ "type": "null"
83673
+ },
83003
83674
  {
83004
83675
  "type": "object",
83005
83676
  "properties": {
@@ -85602,6 +86273,9 @@ Schema for the body of a bulk data removal request
85602
86273
  "oneOf": [
85603
86274
  {
85604
86275
  "oneOf": [
86276
+ {
86277
+ "type": "null"
86278
+ },
85605
86279
  {
85606
86280
  "type": "object",
85607
86281
  "properties": {
@@ -85757,6 +86431,9 @@ Schema for the body of a bulk data removal request
85757
86431
  "properties": {
85758
86432
  "$eq": {
85759
86433
  "oneOf": [
86434
+ {
86435
+ "type": "null"
86436
+ },
85760
86437
  {
85761
86438
  "type": "object",
85762
86439
  "properties": {
@@ -85918,6 +86595,9 @@ Schema for the body of a bulk data removal request
85918
86595
  "properties": {
85919
86596
  "$ne": {
85920
86597
  "oneOf": [
86598
+ {
86599
+ "type": "null"
86600
+ },
85921
86601
  {
85922
86602
  "type": "object",
85923
86603
  "properties": {
@@ -90282,6 +90962,9 @@ Export options for events
90282
90962
  "oneOf": [
90283
90963
  {
90284
90964
  "oneOf": [
90965
+ {
90966
+ "type": "null"
90967
+ },
90285
90968
  {
90286
90969
  "type": "object",
90287
90970
  "properties": {
@@ -90437,6 +91120,9 @@ Export options for events
90437
91120
  "properties": {
90438
91121
  "$eq": {
90439
91122
  "oneOf": [
91123
+ {
91124
+ "type": "null"
91125
+ },
90440
91126
  {
90441
91127
  "type": "object",
90442
91128
  "properties": {
@@ -90598,6 +91284,9 @@ Export options for events
90598
91284
  "properties": {
90599
91285
  "$ne": {
90600
91286
  "oneOf": [
91287
+ {
91288
+ "type": "null"
91289
+ },
90601
91290
  {
90602
91291
  "type": "object",
90603
91292
  "properties": {
@@ -148581,6 +149270,7 @@ Schema for the body of a Github login request
148581
149270
  "type": "string",
148582
149271
  "enum": [
148583
149272
  "all.Application",
149273
+ "all.Application.bounded",
148584
149274
  "all.Application.read",
148585
149275
  "all.Application.cli",
148586
149276
  "all.Device",
@@ -148750,7 +149440,6 @@ Schema for the body of a Github login request
148750
149440
  "devices.delete",
148751
149441
  "devices.restore",
148752
149442
  "devices.removeData",
148753
- "devices.detailedSummary",
148754
149443
  "devices.deviceNames",
148755
149444
  "devices.export",
148756
149445
  "devices.get",
@@ -148908,7 +149597,11 @@ Schema for the body of a Github login request
148908
149597
  "type": "string",
148909
149598
  "enum": [
148910
149599
  "all.Organization",
149600
+ "all.Organization.bounded",
148911
149601
  "all.Organization.read",
149602
+ "only.Organization",
149603
+ "only.Organization.bounded",
149604
+ "only.Organization.read",
148912
149605
  "applications.*",
148913
149606
  "auditLog.*",
148914
149607
  "auditLogs.*",
@@ -148951,6 +149644,7 @@ Schema for the body of a Github login request
148951
149644
  "type": "string",
148952
149645
  "enum": [
148953
149646
  "all.Instance",
149647
+ "all.Instance.bounded",
148954
149648
  "all.Instance.read",
148955
149649
  "instance.*",
148956
149650
  "instance.get",
@@ -149039,8 +149733,12 @@ Schema for the body of a Github login request
149039
149733
  "type": "string",
149040
149734
  "enum": [
149041
149735
  "all.User",
149736
+ "all.User.bounded",
149042
149737
  "all.User.read",
149043
149738
  "all.User.cli",
149739
+ "only.User",
149740
+ "only.User.bounded",
149741
+ "only.User.read",
149044
149742
  "userApiToken.*",
149045
149743
  "userApiToken.get",
149046
149744
  "userApiToken.patch",
@@ -149048,6 +149746,13 @@ Schema for the body of a Github login request
149048
149746
  "userApiTokens.*",
149049
149747
  "userApiTokens.get",
149050
149748
  "userApiTokens.post",
149749
+ "userOauthToken.*",
149750
+ "userOauthToken.get",
149751
+ "userOauthToken.patch",
149752
+ "userOauthToken.delete",
149753
+ "userOauthTokens.*",
149754
+ "userOauthTokens.get",
149755
+ "userOauthTokens.post",
149051
149756
  "applicationTemplate.*",
149052
149757
  "applicationTemplate.get",
149053
149758
  "applicationTemplates.*",
@@ -149077,6 +149782,7 @@ Schema for the body of a Github login request
149077
149782
  "me.invite",
149078
149783
  "me.invites",
149079
149784
  "me.respondToInvite",
149785
+ "me.refreshToken",
149080
149786
  "orgs.*",
149081
149787
  "orgs.get",
149082
149788
  "orgs.post"
@@ -155386,7 +156092,7 @@ Schema for an Instance Organization member modification request
155386
156092
  ],
155387
156093
  "additionalProperties": false
155388
156094
  },
155389
- "maxItems": 1000
156095
+ "maxItems": 100
155390
156096
  },
155391
156097
  "dashboardRoles": {
155392
156098
  "type": "array",
@@ -155412,7 +156118,7 @@ Schema for an Instance Organization member modification request
155412
156118
  ],
155413
156119
  "additionalProperties": false
155414
156120
  },
155415
- "maxItems": 1000
156121
+ "maxItems": 100
155416
156122
  }
155417
156123
  },
155418
156124
  "additionalProperties": false
@@ -155479,7 +156185,7 @@ Schema for an Instance Organization member creation request
155479
156185
  ],
155480
156186
  "additionalProperties": false
155481
156187
  },
155482
- "maxItems": 1000
156188
+ "maxItems": 100
155483
156189
  },
155484
156190
  "dashboardRoles": {
155485
156191
  "type": "array",
@@ -155505,7 +156211,7 @@ Schema for an Instance Organization member creation request
155505
156211
  ],
155506
156212
  "additionalProperties": false
155507
156213
  },
155508
- "maxItems": 1000
156214
+ "maxItems": 100
155509
156215
  }
155510
156216
  },
155511
156217
  "additionalProperties": false,
@@ -155556,7 +156262,7 @@ Schema for an Instance Organization member creation request
155556
156262
  ],
155557
156263
  "additionalProperties": false
155558
156264
  },
155559
- "maxItems": 1000
156265
+ "maxItems": 100
155560
156266
  },
155561
156267
  "dashboardRoles": {
155562
156268
  "type": "array",
@@ -155582,7 +156288,7 @@ Schema for an Instance Organization member creation request
155582
156288
  ],
155583
156289
  "additionalProperties": false
155584
156290
  },
155585
- "maxItems": 1000
156291
+ "maxItems": 100
155586
156292
  },
155587
156293
  "disallowTransfer": {
155588
156294
  "type": "boolean"
@@ -156160,7 +156866,7 @@ Schema for the body of an Organization creation request within an instance
156160
156866
  ],
156161
156867
  "additionalProperties": false
156162
156868
  },
156163
- "maxItems": 1000
156869
+ "maxItems": 100
156164
156870
  },
156165
156871
  "dashboardRoles": {
156166
156872
  "type": "array",
@@ -156186,7 +156892,7 @@ Schema for the body of an Organization creation request within an instance
156186
156892
  ],
156187
156893
  "additionalProperties": false
156188
156894
  },
156189
- "maxItems": 1000
156895
+ "maxItems": 100
156190
156896
  }
156191
156897
  },
156192
156898
  "additionalProperties": false,
@@ -156237,7 +156943,7 @@ Schema for the body of an Organization creation request within an instance
156237
156943
  ],
156238
156944
  "additionalProperties": false
156239
156945
  },
156240
- "maxItems": 1000
156946
+ "maxItems": 100
156241
156947
  },
156242
156948
  "dashboardRoles": {
156243
156949
  "type": "array",
@@ -156263,7 +156969,7 @@ Schema for the body of an Organization creation request within an instance
156263
156969
  ],
156264
156970
  "additionalProperties": false
156265
156971
  },
156266
- "maxItems": 1000
156972
+ "maxItems": 100
156267
156973
  },
156268
156974
  "disallowTransfer": {
156269
156975
  "type": "boolean"
@@ -162085,6 +162791,9 @@ Schema for the body of a last value query request
162085
162791
  "oneOf": [
162086
162792
  {
162087
162793
  "oneOf": [
162794
+ {
162795
+ "type": "null"
162796
+ },
162088
162797
  {
162089
162798
  "type": "object",
162090
162799
  "properties": {
@@ -162240,6 +162949,9 @@ Schema for the body of a last value query request
162240
162949
  "properties": {
162241
162950
  "$eq": {
162242
162951
  "oneOf": [
162952
+ {
162953
+ "type": "null"
162954
+ },
162243
162955
  {
162244
162956
  "type": "object",
162245
162957
  "properties": {
@@ -162401,6 +163113,9 @@ Schema for the body of a last value query request
162401
163113
  "properties": {
162402
163114
  "$ne": {
162403
163115
  "oneOf": [
163116
+ {
163117
+ "type": "null"
163118
+ },
162404
163119
  {
162405
163120
  "type": "object",
162406
163121
  "properties": {
@@ -164998,6 +165713,9 @@ Schema for the body of a request to send a command to multiple Devices
164998
165713
  "oneOf": [
164999
165714
  {
165000
165715
  "oneOf": [
165716
+ {
165717
+ "type": "null"
165718
+ },
165001
165719
  {
165002
165720
  "type": "object",
165003
165721
  "properties": {
@@ -165153,6 +165871,9 @@ Schema for the body of a request to send a command to multiple Devices
165153
165871
  "properties": {
165154
165872
  "$eq": {
165155
165873
  "oneOf": [
165874
+ {
165875
+ "type": "null"
165876
+ },
165156
165877
  {
165157
165878
  "type": "object",
165158
165879
  "properties": {
@@ -165314,6 +166035,9 @@ Schema for the body of a request to send a command to multiple Devices
165314
166035
  "properties": {
165315
166036
  "$ne": {
165316
166037
  "oneOf": [
166038
+ {
166039
+ "type": "null"
166040
+ },
165317
166041
  {
165318
166042
  "type": "object",
165319
166043
  "properties": {
@@ -170480,6 +171204,364 @@ Schema for a collection of notification rules
170480
171204
 
170481
171205
  <br/>
170482
171206
 
171207
+ ## OAuth Client
171208
+
171209
+ Schema for an OAuth 2.0 client registration response
171210
+
171211
+ ### <a name="oauth-client-schema"></a> Schema
171212
+
171213
+ ```json
171214
+ {
171215
+ "$schema": "http://json-schema.org/draft-07/schema#",
171216
+ "type": "object",
171217
+ "properties": {
171218
+ "client_id": {
171219
+ "type": "string",
171220
+ "description": "Unique client identifier"
171221
+ },
171222
+ "client_secret": {
171223
+ "type": "string",
171224
+ "description": "Client secret (only included in registration response)"
171225
+ },
171226
+ "client_id_issued_at": {
171227
+ "type": "integer",
171228
+ "description": "Time at which the client_id was issued (seconds since epoch)"
171229
+ },
171230
+ "client_secret_expires_at": {
171231
+ "type": "integer",
171232
+ "description": "Time at which the client_secret will expire or 0 if it will not expire (seconds since epoch)"
171233
+ },
171234
+ "client_name": {
171235
+ "type": "string",
171236
+ "minLength": 1,
171237
+ "maxLength": 255,
171238
+ "description": "Human-readable name of the client"
171239
+ },
171240
+ "client_uri": {
171241
+ "type": "string",
171242
+ "format": "uri",
171243
+ "maxLength": 1024
171244
+ },
171245
+ "logo_uri": {
171246
+ "type": "string",
171247
+ "format": "uri",
171248
+ "maxLength": 32768,
171249
+ "description": "URL of the client's logo. May be an http(s) URL or a data:image/* URI."
171250
+ },
171251
+ "redirect_uris": {
171252
+ "type": "array",
171253
+ "minItems": 1,
171254
+ "maxItems": 25,
171255
+ "items": {
171256
+ "type": "string",
171257
+ "format": "uri",
171258
+ "maxLength": 1024
171259
+ },
171260
+ "description": "Array of redirect URIs for use in redirect-based flows"
171261
+ },
171262
+ "grant_types": {
171263
+ "type": "array",
171264
+ "items": {
171265
+ "type": "string",
171266
+ "enum": [
171267
+ "authorization_code",
171268
+ "refresh_token"
171269
+ ]
171270
+ },
171271
+ "description": "Array of OAuth 2.0 grant types"
171272
+ },
171273
+ "response_types": {
171274
+ "type": "array",
171275
+ "items": {
171276
+ "type": "string",
171277
+ "enum": [
171278
+ "code"
171279
+ ]
171280
+ },
171281
+ "description": "Array of OAuth 2.0 response types"
171282
+ },
171283
+ "token_endpoint_auth_method": {
171284
+ "type": "string",
171285
+ "description": "Authentication method for the token endpoint",
171286
+ "enum": [
171287
+ "client_secret_basic",
171288
+ "client_secret_post",
171289
+ "none"
171290
+ ]
171291
+ },
171292
+ "scope": {
171293
+ "type": "string",
171294
+ "maxLength": 1024,
171295
+ "description": "Space-separated list of requested scope values"
171296
+ },
171297
+ "tos_uri": {
171298
+ "type": "string",
171299
+ "format": "uri",
171300
+ "maxLength": 1024
171301
+ },
171302
+ "policy_uri": {
171303
+ "type": "string",
171304
+ "format": "uri",
171305
+ "maxLength": 1024
171306
+ },
171307
+ "creationDate": {
171308
+ "type": "string",
171309
+ "format": "date-time"
171310
+ },
171311
+ "lastUpdated": {
171312
+ "type": "string",
171313
+ "format": "date-time"
171314
+ },
171315
+ "id": {
171316
+ "type": "string",
171317
+ "pattern": "^[A-Fa-f\\d]{24}$"
171318
+ }
171319
+ }
171320
+ }
171321
+ ```
171322
+ ### <a name="oauth-client-example"></a> Example
171323
+
171324
+ ```json
171325
+ {
171326
+ "id": "575ec7417ae143cd83dc4a95",
171327
+ "client_id": "575ec7417ae143cd83dc4a95",
171328
+ "client_name": "My OAuth Application",
171329
+ "client_uri": "https://example.com",
171330
+ "logo_uri": "https://example.com/logo.png",
171331
+ "redirect_uris": [
171332
+ "https://example.com/callback",
171333
+ "http://localhost:3000/callback"
171334
+ ],
171335
+ "grant_types": [
171336
+ "authorization_code",
171337
+ "refresh_token"
171338
+ ],
171339
+ "response_types": [
171340
+ "code"
171341
+ ],
171342
+ "token_endpoint_auth_method": "client_secret_post",
171343
+ "scope": "all.User.read all.Application.read",
171344
+ "client_id_issued_at": 1465790400,
171345
+ "client_secret_expires_at": 0,
171346
+ "tos_uri": "https://example.com/terms",
171347
+ "policy_uri": "https://example.com/privacy",
171348
+ "creationDate": "2016-06-13T04:00:00.000Z",
171349
+ "lastUpdated": "2016-06-13T04:00:00.000Z"
171350
+ }
171351
+ ```
171352
+
171353
+ <br/>
171354
+
171355
+ ## OAuth Client Registration Request
171356
+
171357
+ Schema for OAuth 2.0 dynamic client registration request
171358
+
171359
+ ### <a name="oauth-client-registration-request-schema"></a> Schema
171360
+
171361
+ ```json
171362
+ {
171363
+ "$schema": "http://json-schema.org/draft-07/schema#",
171364
+ "type": "object",
171365
+ "properties": {
171366
+ "client_name": {
171367
+ "type": "string",
171368
+ "minLength": 1,
171369
+ "maxLength": 255,
171370
+ "description": "Human-readable name of the client"
171371
+ },
171372
+ "client_uri": {
171373
+ "type": "string",
171374
+ "format": "uri",
171375
+ "maxLength": 1024
171376
+ },
171377
+ "logo_uri": {
171378
+ "type": "string",
171379
+ "format": "uri",
171380
+ "maxLength": 32768,
171381
+ "description": "URL of the client's logo. May be an http(s) URL or a data:image/* URI."
171382
+ },
171383
+ "redirect_uris": {
171384
+ "type": "array",
171385
+ "minItems": 1,
171386
+ "maxItems": 25,
171387
+ "items": {
171388
+ "type": "string",
171389
+ "format": "uri",
171390
+ "maxLength": 1024
171391
+ },
171392
+ "description": "Array of redirect URIs for use in redirect-based flows"
171393
+ },
171394
+ "grant_types": {
171395
+ "type": "array",
171396
+ "items": {
171397
+ "type": "string",
171398
+ "enum": [
171399
+ "authorization_code",
171400
+ "refresh_token"
171401
+ ]
171402
+ },
171403
+ "description": "Array of OAuth 2.0 grant types"
171404
+ },
171405
+ "response_types": {
171406
+ "type": "array",
171407
+ "items": {
171408
+ "type": "string",
171409
+ "enum": [
171410
+ "code"
171411
+ ]
171412
+ },
171413
+ "description": "Array of OAuth 2.0 response types"
171414
+ },
171415
+ "token_endpoint_auth_method": {
171416
+ "type": "string",
171417
+ "description": "Authentication method for the token endpoint",
171418
+ "enum": [
171419
+ "client_secret_basic",
171420
+ "client_secret_post",
171421
+ "none"
171422
+ ]
171423
+ },
171424
+ "scope": {
171425
+ "type": "string",
171426
+ "maxLength": 1024,
171427
+ "description": "Space-separated list of requested scope values"
171428
+ },
171429
+ "contacts": {
171430
+ "type": "array",
171431
+ "maxItems": 10,
171432
+ "items": {
171433
+ "type": "string",
171434
+ "format": "email",
171435
+ "maxLength": 1024
171436
+ },
171437
+ "description": "Contact email addresses (stored but not returned in responses)"
171438
+ },
171439
+ "tos_uri": {
171440
+ "type": "string",
171441
+ "format": "uri",
171442
+ "maxLength": 1024
171443
+ },
171444
+ "policy_uri": {
171445
+ "type": "string",
171446
+ "format": "uri",
171447
+ "maxLength": 1024
171448
+ }
171449
+ }
171450
+ }
171451
+ ```
171452
+ ### <a name="oauth-client-registration-request-example"></a> Example
171453
+
171454
+ ```json
171455
+ {
171456
+ "client_name": "My OAuth Application",
171457
+ "client_uri": "https://example.com",
171458
+ "logo_uri": "https://example.com/logo.png",
171459
+ "redirect_uris": [
171460
+ "https://example.com/callback",
171461
+ "http://localhost:3000/callback"
171462
+ ],
171463
+ "contacts": [
171464
+ "admin@example.com"
171465
+ ],
171466
+ "tos_uri": "https://example.com/terms",
171467
+ "policy_uri": "https://example.com/privacy"
171468
+ }
171469
+ ```
171470
+
171471
+ <br/>
171472
+
171473
+ ## OAuth DCR Error
171474
+
171475
+ Schema for OAuth 2.0 Dynamic Client Registration error responses (RFC 7591 Section 3.2.2)
171476
+
171477
+ ### <a name="oauth-dcr-error-schema"></a> Schema
171478
+
171479
+ ```json
171480
+ {
171481
+ "$schema": "http://json-schema.org/draft-07/schema#",
171482
+ "type": "object",
171483
+ "properties": {
171484
+ "error": {
171485
+ "type": "string",
171486
+ "enum": [
171487
+ "invalid_redirect_uri",
171488
+ "invalid_client_metadata",
171489
+ "invalid_software_statement",
171490
+ "unapproved_software_statement"
171491
+ ],
171492
+ "description": "OAuth 2.0 DCR error code"
171493
+ },
171494
+ "error_description": {
171495
+ "type": "string",
171496
+ "description": "Human-readable error description"
171497
+ }
171498
+ },
171499
+ "required": [
171500
+ "error"
171501
+ ]
171502
+ }
171503
+ ```
171504
+ ### <a name="oauth-dcr-error-example"></a> Example
171505
+
171506
+ ```json
171507
+ {
171508
+ "error": "invalid_redirect_uri",
171509
+ "error_description": "HTTP redirect URIs are only allowed for localhost"
171510
+ }
171511
+ ```
171512
+
171513
+ <br/>
171514
+
171515
+ ## OAuth Error
171516
+
171517
+ Schema for OAuth 2.0 error responses (RFC 6749 Section 5.2)
171518
+
171519
+ ### <a name="oauth-error-schema"></a> Schema
171520
+
171521
+ ```json
171522
+ {
171523
+ "$schema": "http://json-schema.org/draft-07/schema#",
171524
+ "type": "object",
171525
+ "properties": {
171526
+ "error": {
171527
+ "type": "string",
171528
+ "enum": [
171529
+ "invalid_request",
171530
+ "invalid_client",
171531
+ "invalid_grant",
171532
+ "unauthorized_client",
171533
+ "unsupported_grant_type",
171534
+ "invalid_scope",
171535
+ "invalid_target",
171536
+ "temporarily_unavailable"
171537
+ ],
171538
+ "description": "OAuth 2.0 error code"
171539
+ },
171540
+ "error_description": {
171541
+ "type": "string",
171542
+ "description": "Human-readable error description"
171543
+ },
171544
+ "error_uri": {
171545
+ "type": "string",
171546
+ "description": "URI identifying a human-readable web page with information about the error"
171547
+ }
171548
+ },
171549
+ "required": [
171550
+ "error"
171551
+ ]
171552
+ }
171553
+ ```
171554
+ ### <a name="oauth-error-example"></a> Example
171555
+
171556
+ ```json
171557
+ {
171558
+ "error": "invalid_grant",
171559
+ "error_description": "The provided authorization code is invalid, expired, or revoked"
171560
+ }
171561
+ ```
171562
+
171563
+ <br/>
171564
+
170483
171565
  ## Organization
170484
171566
 
170485
171567
  Schema for a single Organization
@@ -170578,7 +171660,7 @@ Schema for a single Organization
170578
171660
  ],
170579
171661
  "additionalProperties": false
170580
171662
  },
170581
- "maxItems": 1000
171663
+ "maxItems": 100
170582
171664
  },
170583
171665
  "dashboardRoles": {
170584
171666
  "type": "array",
@@ -170604,7 +171686,7 @@ Schema for a single Organization
170604
171686
  ],
170605
171687
  "additionalProperties": false
170606
171688
  },
170607
- "maxItems": 1000
171689
+ "maxItems": 100
170608
171690
  },
170609
171691
  "twoFactorAuthEnabled": {
170610
171692
  "type": "boolean"
@@ -171210,7 +172292,7 @@ Schema for a pending invitation to an Organization
171210
172292
  ],
171211
172293
  "additionalProperties": false
171212
172294
  },
171213
- "maxItems": 1000
172295
+ "maxItems": 100
171214
172296
  },
171215
172297
  "dashboardRoles": {
171216
172298
  "type": "array",
@@ -171236,7 +172318,7 @@ Schema for a pending invitation to an Organization
171236
172318
  ],
171237
172319
  "additionalProperties": false
171238
172320
  },
171239
- "maxItems": 1000
172321
+ "maxItems": 100
171240
172322
  },
171241
172323
  "inviteDate": {
171242
172324
  "type": "string",
@@ -171423,7 +172505,7 @@ Schema for an collection of pending invitations to an Instance Organization
171423
172505
  ],
171424
172506
  "additionalProperties": false
171425
172507
  },
171426
- "maxItems": 1000
172508
+ "maxItems": 100
171427
172509
  },
171428
172510
  "dashboardRoles": {
171429
172511
  "type": "array",
@@ -171449,7 +172531,7 @@ Schema for an collection of pending invitations to an Instance Organization
171449
172531
  ],
171450
172532
  "additionalProperties": false
171451
172533
  },
171452
- "maxItems": 1000
172534
+ "maxItems": 100
171453
172535
  },
171454
172536
  "inviteDate": {
171455
172537
  "type": "string",
@@ -171644,7 +172726,7 @@ Schema for the body of a request to send an invitation
171644
172726
  ],
171645
172727
  "additionalProperties": false
171646
172728
  },
171647
- "maxItems": 1000
172729
+ "maxItems": 100
171648
172730
  },
171649
172731
  "dashboardRoles": {
171650
172732
  "type": "array",
@@ -171670,7 +172752,7 @@ Schema for the body of a request to send an invitation
171670
172752
  ],
171671
172753
  "additionalProperties": false
171672
172754
  },
171673
- "maxItems": 1000
172755
+ "maxItems": 100
171674
172756
  },
171675
172757
  "disallowTransfer": {
171676
172758
  "type": "boolean"
@@ -171897,7 +172979,7 @@ Schema for an array of pending invitations to an Organization
171897
172979
  ],
171898
172980
  "additionalProperties": false
171899
172981
  },
171900
- "maxItems": 1000
172982
+ "maxItems": 100
171901
172983
  },
171902
172984
  "dashboardRoles": {
171903
172985
  "type": "array",
@@ -171923,7 +173005,7 @@ Schema for an array of pending invitations to an Organization
171923
173005
  ],
171924
173006
  "additionalProperties": false
171925
173007
  },
171926
- "maxItems": 1000
173008
+ "maxItems": 100
171927
173009
  },
171928
173010
  "inviteDate": {
171929
173011
  "type": "string",
@@ -172114,7 +173196,7 @@ Schema for the body of a request to modify an Organization member
172114
173196
  ],
172115
173197
  "additionalProperties": false
172116
173198
  },
172117
- "maxItems": 1000
173199
+ "maxItems": 100
172118
173200
  },
172119
173201
  "dashboardRoles": {
172120
173202
  "type": "array",
@@ -172140,7 +173222,7 @@ Schema for the body of a request to modify an Organization member
172140
173222
  ],
172141
173223
  "additionalProperties": false
172142
173224
  },
172143
- "maxItems": 1000
173225
+ "maxItems": 100
172144
173226
  }
172145
173227
  },
172146
173228
  "additionalProperties": false,
@@ -172328,7 +173410,7 @@ Schema for an Organization member&#x27;s role info
172328
173410
  ],
172329
173411
  "additionalProperties": false
172330
173412
  },
172331
- "maxItems": 1000
173413
+ "maxItems": 100
172332
173414
  },
172333
173415
  "dashboardRoles": {
172334
173416
  "type": "array",
@@ -172354,7 +173436,7 @@ Schema for an Organization member&#x27;s role info
172354
173436
  ],
172355
173437
  "additionalProperties": false
172356
173438
  },
172357
- "maxItems": 1000
173439
+ "maxItems": 100
172358
173440
  }
172359
173441
  },
172360
173442
  "additionalProperties": false
@@ -172475,7 +173557,7 @@ Schema for a collection of Organizations
172475
173557
  ],
172476
173558
  "additionalProperties": false
172477
173559
  },
172478
- "maxItems": 1000
173560
+ "maxItems": 100
172479
173561
  },
172480
173562
  "dashboardRoles": {
172481
173563
  "type": "array",
@@ -172501,7 +173583,7 @@ Schema for a collection of Organizations
172501
173583
  ],
172502
173584
  "additionalProperties": false
172503
173585
  },
172504
- "maxItems": 1000
173586
+ "maxItems": 100
172505
173587
  },
172506
173588
  "twoFactorAuthEnabled": {
172507
173589
  "type": "boolean"
@@ -175494,6 +176576,7 @@ SAML Response body for login
175494
176576
  "type": "string",
175495
176577
  "enum": [
175496
176578
  "all.Application",
176579
+ "all.Application.bounded",
175497
176580
  "all.Application.read",
175498
176581
  "all.Application.cli",
175499
176582
  "all.Device",
@@ -175663,7 +176746,6 @@ SAML Response body for login
175663
176746
  "devices.delete",
175664
176747
  "devices.restore",
175665
176748
  "devices.removeData",
175666
- "devices.detailedSummary",
175667
176749
  "devices.deviceNames",
175668
176750
  "devices.export",
175669
176751
  "devices.get",
@@ -175821,7 +176903,11 @@ SAML Response body for login
175821
176903
  "type": "string",
175822
176904
  "enum": [
175823
176905
  "all.Organization",
176906
+ "all.Organization.bounded",
175824
176907
  "all.Organization.read",
176908
+ "only.Organization",
176909
+ "only.Organization.bounded",
176910
+ "only.Organization.read",
175825
176911
  "applications.*",
175826
176912
  "auditLog.*",
175827
176913
  "auditLogs.*",
@@ -175864,6 +176950,7 @@ SAML Response body for login
175864
176950
  "type": "string",
175865
176951
  "enum": [
175866
176952
  "all.Instance",
176953
+ "all.Instance.bounded",
175867
176954
  "all.Instance.read",
175868
176955
  "instance.*",
175869
176956
  "instance.get",
@@ -175952,8 +177039,12 @@ SAML Response body for login
175952
177039
  "type": "string",
175953
177040
  "enum": [
175954
177041
  "all.User",
177042
+ "all.User.bounded",
175955
177043
  "all.User.read",
175956
177044
  "all.User.cli",
177045
+ "only.User",
177046
+ "only.User.bounded",
177047
+ "only.User.read",
175957
177048
  "userApiToken.*",
175958
177049
  "userApiToken.get",
175959
177050
  "userApiToken.patch",
@@ -175961,6 +177052,13 @@ SAML Response body for login
175961
177052
  "userApiTokens.*",
175962
177053
  "userApiTokens.get",
175963
177054
  "userApiTokens.post",
177055
+ "userOauthToken.*",
177056
+ "userOauthToken.get",
177057
+ "userOauthToken.patch",
177058
+ "userOauthToken.delete",
177059
+ "userOauthTokens.*",
177060
+ "userOauthTokens.get",
177061
+ "userOauthTokens.post",
175964
177062
  "applicationTemplate.*",
175965
177063
  "applicationTemplate.get",
175966
177064
  "applicationTemplates.*",
@@ -175990,6 +177088,7 @@ SAML Response body for login
175990
177088
  "me.invite",
175991
177089
  "me.invites",
175992
177090
  "me.respondToInvite",
177091
+ "me.refreshToken",
175993
177092
  "orgs.*",
175994
177093
  "orgs.get",
175995
177094
  "orgs.post"
@@ -178062,6 +179161,9 @@ Schema for the body of a time series query request
178062
179161
  "oneOf": [
178063
179162
  {
178064
179163
  "oneOf": [
179164
+ {
179165
+ "type": "null"
179166
+ },
178065
179167
  {
178066
179168
  "type": "object",
178067
179169
  "properties": {
@@ -178217,6 +179319,9 @@ Schema for the body of a time series query request
178217
179319
  "properties": {
178218
179320
  "$eq": {
178219
179321
  "oneOf": [
179322
+ {
179323
+ "type": "null"
179324
+ },
178220
179325
  {
178221
179326
  "type": "object",
178222
179327
  "properties": {
@@ -178378,6 +179483,9 @@ Schema for the body of a time series query request
178378
179483
  "properties": {
178379
179484
  "$ne": {
178380
179485
  "oneOf": [
179486
+ {
179487
+ "type": "null"
179488
+ },
178381
179489
  {
178382
179490
  "type": "object",
178383
179491
  "properties": {
@@ -178921,6 +180029,7 @@ Schema for the body of a User authentication request
178921
180029
  "type": "string",
178922
180030
  "enum": [
178923
180031
  "all.Application",
180032
+ "all.Application.bounded",
178924
180033
  "all.Application.read",
178925
180034
  "all.Application.cli",
178926
180035
  "all.Device",
@@ -179090,7 +180199,6 @@ Schema for the body of a User authentication request
179090
180199
  "devices.delete",
179091
180200
  "devices.restore",
179092
180201
  "devices.removeData",
179093
- "devices.detailedSummary",
179094
180202
  "devices.deviceNames",
179095
180203
  "devices.export",
179096
180204
  "devices.get",
@@ -179248,7 +180356,11 @@ Schema for the body of a User authentication request
179248
180356
  "type": "string",
179249
180357
  "enum": [
179250
180358
  "all.Organization",
180359
+ "all.Organization.bounded",
179251
180360
  "all.Organization.read",
180361
+ "only.Organization",
180362
+ "only.Organization.bounded",
180363
+ "only.Organization.read",
179252
180364
  "applications.*",
179253
180365
  "auditLog.*",
179254
180366
  "auditLogs.*",
@@ -179291,6 +180403,7 @@ Schema for the body of a User authentication request
179291
180403
  "type": "string",
179292
180404
  "enum": [
179293
180405
  "all.Instance",
180406
+ "all.Instance.bounded",
179294
180407
  "all.Instance.read",
179295
180408
  "instance.*",
179296
180409
  "instance.get",
@@ -179379,8 +180492,12 @@ Schema for the body of a User authentication request
179379
180492
  "type": "string",
179380
180493
  "enum": [
179381
180494
  "all.User",
180495
+ "all.User.bounded",
179382
180496
  "all.User.read",
179383
180497
  "all.User.cli",
180498
+ "only.User",
180499
+ "only.User.bounded",
180500
+ "only.User.read",
179384
180501
  "userApiToken.*",
179385
180502
  "userApiToken.get",
179386
180503
  "userApiToken.patch",
@@ -179388,6 +180505,13 @@ Schema for the body of a User authentication request
179388
180505
  "userApiTokens.*",
179389
180506
  "userApiTokens.get",
179390
180507
  "userApiTokens.post",
180508
+ "userOauthToken.*",
180509
+ "userOauthToken.get",
180510
+ "userOauthToken.patch",
180511
+ "userOauthToken.delete",
180512
+ "userOauthTokens.*",
180513
+ "userOauthTokens.get",
180514
+ "userOauthTokens.post",
179391
180515
  "applicationTemplate.*",
179392
180516
  "applicationTemplate.get",
179393
180517
  "applicationTemplates.*",
@@ -179417,6 +180541,7 @@ Schema for the body of a User authentication request
179417
180541
  "me.invite",
179418
180542
  "me.invites",
179419
180543
  "me.respondToInvite",
180544
+ "me.refreshToken",
179420
180545
  "orgs.*",
179421
180546
  "orgs.get",
179422
180547
  "orgs.post"
@@ -179448,6 +180573,918 @@ Schema for the body of a User authentication request
179448
180573
 
179449
180574
  <br/>
179450
180575
 
180576
+ ## User OAuth Token
180577
+
180578
+ Schema for a single OAuth Token
180579
+
180580
+ ### <a name="user-oauth-token-schema"></a> Schema
180581
+
180582
+ ```json
180583
+ {
180584
+ "$schema": "http://json-schema.org/draft-07/schema#",
180585
+ "type": "object",
180586
+ "properties": {
180587
+ "id": {
180588
+ "type": "string",
180589
+ "pattern": "^[A-Fa-f\\d]{24}$"
180590
+ },
180591
+ "oauthTokenId": {
180592
+ "type": "string",
180593
+ "pattern": "^[A-Fa-f\\d]{24}$"
180594
+ },
180595
+ "name": {
180596
+ "type": "string",
180597
+ "minLength": 1,
180598
+ "maxLength": 255
180599
+ },
180600
+ "description": {
180601
+ "type": "string",
180602
+ "maxLength": 32767
180603
+ },
180604
+ "creationDate": {
180605
+ "type": "string",
180606
+ "format": "date-time"
180607
+ },
180608
+ "lastUpdated": {
180609
+ "type": "string",
180610
+ "format": "date-time"
180611
+ },
180612
+ "expirationDate": {
180613
+ "type": "string",
180614
+ "format": "date-time"
180615
+ },
180616
+ "defaultRole": {
180617
+ "type": "string",
180618
+ "enum": [
180619
+ "admin",
180620
+ "edit",
180621
+ "collaborate",
180622
+ "view",
180623
+ "none"
180624
+ ]
180625
+ },
180626
+ "orgRoles": {
180627
+ "type": "array",
180628
+ "items": {
180629
+ "type": "object",
180630
+ "properties": {
180631
+ "orgId": {
180632
+ "oneOf": [
180633
+ {
180634
+ "type": "string",
180635
+ "pattern": "^[A-Fa-f\\d]{24}$"
180636
+ },
180637
+ {
180638
+ "type": "string",
180639
+ "enum": [
180640
+ "sandbox"
180641
+ ]
180642
+ }
180643
+ ]
180644
+ },
180645
+ "role": {
180646
+ "type": "string",
180647
+ "enum": [
180648
+ "admin",
180649
+ "edit",
180650
+ "collaborate",
180651
+ "view",
180652
+ "none"
180653
+ ]
180654
+ },
180655
+ "applicationRoles": {
180656
+ "type": "array",
180657
+ "items": {
180658
+ "type": "object",
180659
+ "properties": {
180660
+ "resourceId": {
180661
+ "type": "string",
180662
+ "pattern": "^[A-Fa-f\\d]{24}$"
180663
+ },
180664
+ "role": {
180665
+ "type": "string",
180666
+ "enum": [
180667
+ "collaborate",
180668
+ "view",
180669
+ "none"
180670
+ ]
180671
+ }
180672
+ },
180673
+ "required": [
180674
+ "resourceId",
180675
+ "role"
180676
+ ],
180677
+ "additionalProperties": false
180678
+ },
180679
+ "maxItems": 100
180680
+ },
180681
+ "dashboardRoles": {
180682
+ "type": "array",
180683
+ "items": {
180684
+ "type": "object",
180685
+ "properties": {
180686
+ "resourceId": {
180687
+ "type": "string",
180688
+ "pattern": "^[A-Fa-f\\d]{24}$"
180689
+ },
180690
+ "role": {
180691
+ "type": "string",
180692
+ "enum": [
180693
+ "collaborate",
180694
+ "view",
180695
+ "none"
180696
+ ]
180697
+ }
180698
+ },
180699
+ "required": [
180700
+ "resourceId",
180701
+ "role"
180702
+ ],
180703
+ "additionalProperties": false
180704
+ },
180705
+ "maxItems": 100
180706
+ }
180707
+ },
180708
+ "required": [
180709
+ "orgId",
180710
+ "role"
180711
+ ],
180712
+ "additionalProperties": false
180713
+ },
180714
+ "maxItems": 25
180715
+ },
180716
+ "scope": {
180717
+ "type": "array",
180718
+ "uniqueItems": true,
180719
+ "items": {
180720
+ "type": "string",
180721
+ "description": "OAuth-supported user-context API scope. See the `scopes_supported` field of the OAuth authorization server metadata document at /.well-known/oauth-authorization-server for the authoritative list.",
180722
+ "enum": [
180723
+ "all.Application.read",
180724
+ "all.Application.bounded",
180725
+ "only.Organization.read",
180726
+ "only.Organization.bounded",
180727
+ "all.Organization.read",
180728
+ "all.Organization.bounded",
180729
+ "only.User.read"
180730
+ ]
180731
+ },
180732
+ "description": "API scopes for this OAuth client"
180733
+ },
180734
+ "status": {
180735
+ "type": "string",
180736
+ "enum": [
180737
+ "active",
180738
+ "inactive"
180739
+ ]
180740
+ },
180741
+ "oauth": {
180742
+ "type": "object",
180743
+ "properties": {
180744
+ "client_id": {
180745
+ "type": "string",
180746
+ "minLength": 24,
180747
+ "maxLength": 1024,
180748
+ "description": "The registered OAuth client ID (ObjectId or HTTPS URL for CIMD)"
180749
+ },
180750
+ "client_name": {
180751
+ "type": "string",
180752
+ "maxLength": 255,
180753
+ "description": "Human-readable name of the OAuth client (from client registration)"
180754
+ },
180755
+ "client_uri": {
180756
+ "type": "string",
180757
+ "maxLength": 1024,
180758
+ "description": "Informational URL for the OAuth client's homepage (from client registration)"
180759
+ },
180760
+ "logo_uri": {
180761
+ "type": "string",
180762
+ "maxLength": 32768,
180763
+ "description": "Logo URL for the OAuth client (http(s) URL or data: URI, from client registration)"
180764
+ },
180765
+ "redirect_uri": {
180766
+ "type": "string",
180767
+ "format": "uri",
180768
+ "maxLength": 1024
180769
+ },
180770
+ "resource": {
180771
+ "type": "array",
180772
+ "items": {
180773
+ "type": "string",
180774
+ "format": "uri",
180775
+ "maxLength": 1024
180776
+ },
180777
+ "description": "Resource indicator(s) per RFC 8707 — audience(s) this token is bound to"
180778
+ },
180779
+ "authorizationStatus": {
180780
+ "type": "string",
180781
+ "enum": [
180782
+ "pending",
180783
+ "authorized"
180784
+ ]
180785
+ }
180786
+ }
180787
+ }
180788
+ }
180789
+ }
180790
+ ```
180791
+ ### <a name="user-oauth-token-example"></a> Example
180792
+
180793
+ ```json
180794
+ {
180795
+ "id": "575ec7417ae143cd83dc4a95",
180796
+ "oauthTokenId": "575ec7417ae143cd83dc4a95",
180797
+ "name": "My OAuth App",
180798
+ "description": "OAuth application for automation",
180799
+ "creationDate": "2016-06-13T04:00:00.000Z",
180800
+ "lastUpdated": "2016-06-13T04:00:00.000Z",
180801
+ "scope": [
180802
+ "only.User.read",
180803
+ "all.Application.read"
180804
+ ],
180805
+ "defaultRole": "view",
180806
+ "orgRoles": [],
180807
+ "status": "active",
180808
+ "oauth": {
180809
+ "client_id": "575ec8687ae143cd83dc4a97",
180810
+ "client_name": "My OAuth Client",
180811
+ "client_uri": "https://example.com",
180812
+ "logo_uri": "https://example.com/logo.png",
180813
+ "redirect_uri": "https://example.com/callback",
180814
+ "authorizationStatus": "authorized"
180815
+ }
180816
+ }
180817
+ ```
180818
+
180819
+ <br/>
180820
+
180821
+ ## User OAuth Token Patch
180822
+
180823
+ Schema for the body of an OAuth Token modification request
180824
+
180825
+ ### <a name="user-oauth-token-patch-schema"></a> Schema
180826
+
180827
+ ```json
180828
+ {
180829
+ "$schema": "http://json-schema.org/draft-07/schema#",
180830
+ "type": "object",
180831
+ "properties": {
180832
+ "name": {
180833
+ "type": "string",
180834
+ "minLength": 1,
180835
+ "maxLength": 255
180836
+ },
180837
+ "description": {
180838
+ "type": "string",
180839
+ "maxLength": 32767
180840
+ },
180841
+ "defaultRole": {
180842
+ "type": "string",
180843
+ "enum": [
180844
+ "admin",
180845
+ "edit",
180846
+ "collaborate",
180847
+ "view",
180848
+ "none"
180849
+ ]
180850
+ },
180851
+ "orgRoles": {
180852
+ "type": "array",
180853
+ "items": {
180854
+ "type": "object",
180855
+ "properties": {
180856
+ "orgId": {
180857
+ "oneOf": [
180858
+ {
180859
+ "type": "string",
180860
+ "pattern": "^[A-Fa-f\\d]{24}$"
180861
+ },
180862
+ {
180863
+ "type": "string",
180864
+ "enum": [
180865
+ "sandbox"
180866
+ ]
180867
+ }
180868
+ ]
180869
+ },
180870
+ "role": {
180871
+ "type": "string",
180872
+ "enum": [
180873
+ "admin",
180874
+ "edit",
180875
+ "collaborate",
180876
+ "view",
180877
+ "none"
180878
+ ]
180879
+ },
180880
+ "applicationRoles": {
180881
+ "type": "array",
180882
+ "items": {
180883
+ "type": "object",
180884
+ "properties": {
180885
+ "resourceId": {
180886
+ "type": "string",
180887
+ "pattern": "^[A-Fa-f\\d]{24}$"
180888
+ },
180889
+ "role": {
180890
+ "type": "string",
180891
+ "enum": [
180892
+ "collaborate",
180893
+ "view",
180894
+ "none"
180895
+ ]
180896
+ }
180897
+ },
180898
+ "required": [
180899
+ "resourceId",
180900
+ "role"
180901
+ ],
180902
+ "additionalProperties": false
180903
+ },
180904
+ "maxItems": 100
180905
+ },
180906
+ "dashboardRoles": {
180907
+ "type": "array",
180908
+ "items": {
180909
+ "type": "object",
180910
+ "properties": {
180911
+ "resourceId": {
180912
+ "type": "string",
180913
+ "pattern": "^[A-Fa-f\\d]{24}$"
180914
+ },
180915
+ "role": {
180916
+ "type": "string",
180917
+ "enum": [
180918
+ "collaborate",
180919
+ "view",
180920
+ "none"
180921
+ ]
180922
+ }
180923
+ },
180924
+ "required": [
180925
+ "resourceId",
180926
+ "role"
180927
+ ],
180928
+ "additionalProperties": false
180929
+ },
180930
+ "maxItems": 100
180931
+ }
180932
+ },
180933
+ "required": [
180934
+ "orgId",
180935
+ "role"
180936
+ ],
180937
+ "additionalProperties": false
180938
+ },
180939
+ "maxItems": 25
180940
+ },
180941
+ "status": {
180942
+ "type": "string",
180943
+ "enum": [
180944
+ "active",
180945
+ "inactive"
180946
+ ]
180947
+ }
180948
+ },
180949
+ "additionalProperties": false
180950
+ }
180951
+ ```
180952
+ ### <a name="user-oauth-token-patch-example"></a> Example
180953
+
180954
+ ```json
180955
+ {
180956
+ "name": "Updated OAuth App Name",
180957
+ "description": "Updated description",
180958
+ "defaultRole": "edit",
180959
+ "status": "inactive"
180960
+ }
180961
+ ```
180962
+
180963
+ <br/>
180964
+
180965
+ ## User OAuth Token Post
180966
+
180967
+ Schema for the body of an OAuth Token creation request
180968
+
180969
+ ### <a name="user-oauth-token-post-schema"></a> Schema
180970
+
180971
+ ```json
180972
+ {
180973
+ "$schema": "http://json-schema.org/draft-07/schema#",
180974
+ "type": "object",
180975
+ "properties": {
180976
+ "name": {
180977
+ "type": "string",
180978
+ "minLength": 1,
180979
+ "maxLength": 255
180980
+ },
180981
+ "description": {
180982
+ "type": "string",
180983
+ "maxLength": 32767
180984
+ },
180985
+ "expirationDate": {
180986
+ "oneOf": [
180987
+ {
180988
+ "type": "string",
180989
+ "format": "date-time"
180990
+ },
180991
+ {
180992
+ "type": "null"
180993
+ }
180994
+ ],
180995
+ "description": "Session expiration. Omit for the default 1-year session, pass an ISO date for a specific expiration, or pass null for a session that does not expire."
180996
+ },
180997
+ "oauth": {
180998
+ "type": "object",
180999
+ "properties": {
181000
+ "client_id": {
181001
+ "type": "string",
181002
+ "minLength": 24,
181003
+ "maxLength": 1024,
181004
+ "description": "The registered OAuth client ID (ObjectId or HTTPS URL for CIMD)"
181005
+ },
181006
+ "redirect_uri": {
181007
+ "type": "string",
181008
+ "format": "uri",
181009
+ "maxLength": 1024
181010
+ },
181011
+ "resource": {
181012
+ "type": "array",
181013
+ "maxItems": 10,
181014
+ "items": {
181015
+ "type": "string",
181016
+ "format": "uri",
181017
+ "maxLength": 1024
181018
+ },
181019
+ "description": "Resource indicator(s) per RFC 8707 — absolute URI(s) identifying the audience(s) this token is being requested for"
181020
+ },
181021
+ "code_challenge": {
181022
+ "type": "string",
181023
+ "minLength": 43,
181024
+ "maxLength": 128,
181025
+ "pattern": "^[A-Za-z0-9_-]+$",
181026
+ "description": "PKCE code challenge (RFC 7636 base64url, 43-128 chars)"
181027
+ },
181028
+ "code_challenge_method": {
181029
+ "type": "string",
181030
+ "enum": [
181031
+ "S256"
181032
+ ],
181033
+ "description": "PKCE code challenge method"
181034
+ }
181035
+ },
181036
+ "additionalProperties": false,
181037
+ "required": [
181038
+ "client_id",
181039
+ "redirect_uri",
181040
+ "code_challenge",
181041
+ "code_challenge_method"
181042
+ ]
181043
+ },
181044
+ "defaultRole": {
181045
+ "type": "string",
181046
+ "enum": [
181047
+ "admin",
181048
+ "edit",
181049
+ "collaborate",
181050
+ "view",
181051
+ "none"
181052
+ ]
181053
+ },
181054
+ "orgRoles": {
181055
+ "type": "array",
181056
+ "items": {
181057
+ "type": "object",
181058
+ "properties": {
181059
+ "orgId": {
181060
+ "oneOf": [
181061
+ {
181062
+ "type": "string",
181063
+ "pattern": "^[A-Fa-f\\d]{24}$"
181064
+ },
181065
+ {
181066
+ "type": "string",
181067
+ "enum": [
181068
+ "sandbox"
181069
+ ]
181070
+ }
181071
+ ]
181072
+ },
181073
+ "role": {
181074
+ "type": "string",
181075
+ "enum": [
181076
+ "admin",
181077
+ "edit",
181078
+ "collaborate",
181079
+ "view",
181080
+ "none"
181081
+ ]
181082
+ },
181083
+ "applicationRoles": {
181084
+ "type": "array",
181085
+ "items": {
181086
+ "type": "object",
181087
+ "properties": {
181088
+ "resourceId": {
181089
+ "type": "string",
181090
+ "pattern": "^[A-Fa-f\\d]{24}$"
181091
+ },
181092
+ "role": {
181093
+ "type": "string",
181094
+ "enum": [
181095
+ "collaborate",
181096
+ "view",
181097
+ "none"
181098
+ ]
181099
+ }
181100
+ },
181101
+ "required": [
181102
+ "resourceId",
181103
+ "role"
181104
+ ],
181105
+ "additionalProperties": false
181106
+ },
181107
+ "maxItems": 100
181108
+ },
181109
+ "dashboardRoles": {
181110
+ "type": "array",
181111
+ "items": {
181112
+ "type": "object",
181113
+ "properties": {
181114
+ "resourceId": {
181115
+ "type": "string",
181116
+ "pattern": "^[A-Fa-f\\d]{24}$"
181117
+ },
181118
+ "role": {
181119
+ "type": "string",
181120
+ "enum": [
181121
+ "collaborate",
181122
+ "view",
181123
+ "none"
181124
+ ]
181125
+ }
181126
+ },
181127
+ "required": [
181128
+ "resourceId",
181129
+ "role"
181130
+ ],
181131
+ "additionalProperties": false
181132
+ },
181133
+ "maxItems": 100
181134
+ }
181135
+ },
181136
+ "required": [
181137
+ "orgId",
181138
+ "role"
181139
+ ],
181140
+ "additionalProperties": false
181141
+ },
181142
+ "maxItems": 25
181143
+ },
181144
+ "scope": {
181145
+ "type": "array",
181146
+ "uniqueItems": true,
181147
+ "items": {
181148
+ "type": "string",
181149
+ "description": "OAuth-supported user-context API scope. See the `scopes_supported` field of the OAuth authorization server metadata document at /.well-known/oauth-authorization-server for the authoritative list.",
181150
+ "enum": [
181151
+ "all.Application.read",
181152
+ "all.Application.bounded",
181153
+ "only.Organization.read",
181154
+ "only.Organization.bounded",
181155
+ "all.Organization.read",
181156
+ "all.Organization.bounded",
181157
+ "only.User.read"
181158
+ ]
181159
+ },
181160
+ "description": "API scopes for this OAuth client"
181161
+ }
181162
+ },
181163
+ "additionalProperties": false,
181164
+ "required": [
181165
+ "name",
181166
+ "oauth"
181167
+ ]
181168
+ }
181169
+ ```
181170
+ ### <a name="user-oauth-token-post-example"></a> Example
181171
+
181172
+ ```json
181173
+ {
181174
+ "name": "My OAuth App",
181175
+ "description": "OAuth application for automation",
181176
+ "scope": [
181177
+ "only.User.read",
181178
+ "all.Application.read"
181179
+ ],
181180
+ "defaultRole": "view",
181181
+ "oauth": {
181182
+ "client_id": "575ec8687ae143cd83dc4a97",
181183
+ "redirect_uri": "https://example.com/callback",
181184
+ "code_challenge": "E9Melhoa2OwvFrEMTJguCHaoeK1t8URWbuGJSstw-cM",
181185
+ "code_challenge_method": "S256"
181186
+ }
181187
+ }
181188
+ ```
181189
+
181190
+ <br/>
181191
+
181192
+ ## User OAuth Tokens
181193
+
181194
+ Schema for a collection of OAuth Tokens
181195
+
181196
+ ### <a name="user-oauth-tokens-schema"></a> Schema
181197
+
181198
+ ```json
181199
+ {
181200
+ "$schema": "http://json-schema.org/draft-07/schema#",
181201
+ "type": "object",
181202
+ "properties": {
181203
+ "items": {
181204
+ "type": "array",
181205
+ "items": {
181206
+ "title": "User OAuth Token",
181207
+ "description": "Schema for a single OAuth Token",
181208
+ "type": "object",
181209
+ "properties": {
181210
+ "id": {
181211
+ "type": "string",
181212
+ "pattern": "^[A-Fa-f\\d]{24}$"
181213
+ },
181214
+ "oauthTokenId": {
181215
+ "type": "string",
181216
+ "pattern": "^[A-Fa-f\\d]{24}$"
181217
+ },
181218
+ "name": {
181219
+ "type": "string",
181220
+ "minLength": 1,
181221
+ "maxLength": 255
181222
+ },
181223
+ "description": {
181224
+ "type": "string",
181225
+ "maxLength": 32767
181226
+ },
181227
+ "creationDate": {
181228
+ "type": "string",
181229
+ "format": "date-time"
181230
+ },
181231
+ "lastUpdated": {
181232
+ "type": "string",
181233
+ "format": "date-time"
181234
+ },
181235
+ "expirationDate": {
181236
+ "type": "string",
181237
+ "format": "date-time"
181238
+ },
181239
+ "defaultRole": {
181240
+ "type": "string",
181241
+ "enum": [
181242
+ "admin",
181243
+ "edit",
181244
+ "collaborate",
181245
+ "view",
181246
+ "none"
181247
+ ]
181248
+ },
181249
+ "orgRoles": {
181250
+ "type": "array",
181251
+ "items": {
181252
+ "type": "object",
181253
+ "properties": {
181254
+ "orgId": {
181255
+ "oneOf": [
181256
+ {
181257
+ "type": "string",
181258
+ "pattern": "^[A-Fa-f\\d]{24}$"
181259
+ },
181260
+ {
181261
+ "type": "string",
181262
+ "enum": [
181263
+ "sandbox"
181264
+ ]
181265
+ }
181266
+ ]
181267
+ },
181268
+ "role": {
181269
+ "type": "string",
181270
+ "enum": [
181271
+ "admin",
181272
+ "edit",
181273
+ "collaborate",
181274
+ "view",
181275
+ "none"
181276
+ ]
181277
+ },
181278
+ "applicationRoles": {
181279
+ "type": "array",
181280
+ "items": {
181281
+ "type": "object",
181282
+ "properties": {
181283
+ "resourceId": {
181284
+ "type": "string",
181285
+ "pattern": "^[A-Fa-f\\d]{24}$"
181286
+ },
181287
+ "role": {
181288
+ "type": "string",
181289
+ "enum": [
181290
+ "collaborate",
181291
+ "view",
181292
+ "none"
181293
+ ]
181294
+ }
181295
+ },
181296
+ "required": [
181297
+ "resourceId",
181298
+ "role"
181299
+ ],
181300
+ "additionalProperties": false
181301
+ },
181302
+ "maxItems": 100
181303
+ },
181304
+ "dashboardRoles": {
181305
+ "type": "array",
181306
+ "items": {
181307
+ "type": "object",
181308
+ "properties": {
181309
+ "resourceId": {
181310
+ "type": "string",
181311
+ "pattern": "^[A-Fa-f\\d]{24}$"
181312
+ },
181313
+ "role": {
181314
+ "type": "string",
181315
+ "enum": [
181316
+ "collaborate",
181317
+ "view",
181318
+ "none"
181319
+ ]
181320
+ }
181321
+ },
181322
+ "required": [
181323
+ "resourceId",
181324
+ "role"
181325
+ ],
181326
+ "additionalProperties": false
181327
+ },
181328
+ "maxItems": 100
181329
+ }
181330
+ },
181331
+ "required": [
181332
+ "orgId",
181333
+ "role"
181334
+ ],
181335
+ "additionalProperties": false
181336
+ },
181337
+ "maxItems": 25
181338
+ },
181339
+ "scope": {
181340
+ "type": "array",
181341
+ "uniqueItems": true,
181342
+ "items": {
181343
+ "type": "string",
181344
+ "description": "OAuth-supported user-context API scope. See the `scopes_supported` field of the OAuth authorization server metadata document at /.well-known/oauth-authorization-server for the authoritative list.",
181345
+ "enum": [
181346
+ "all.Application.read",
181347
+ "all.Application.bounded",
181348
+ "only.Organization.read",
181349
+ "only.Organization.bounded",
181350
+ "all.Organization.read",
181351
+ "all.Organization.bounded",
181352
+ "only.User.read"
181353
+ ]
181354
+ },
181355
+ "description": "API scopes for this OAuth client"
181356
+ },
181357
+ "status": {
181358
+ "type": "string",
181359
+ "enum": [
181360
+ "active",
181361
+ "inactive"
181362
+ ]
181363
+ },
181364
+ "oauth": {
181365
+ "type": "object",
181366
+ "properties": {
181367
+ "client_id": {
181368
+ "type": "string",
181369
+ "minLength": 24,
181370
+ "maxLength": 1024,
181371
+ "description": "The registered OAuth client ID (ObjectId or HTTPS URL for CIMD)"
181372
+ },
181373
+ "client_name": {
181374
+ "type": "string",
181375
+ "maxLength": 255,
181376
+ "description": "Human-readable name of the OAuth client (from client registration)"
181377
+ },
181378
+ "client_uri": {
181379
+ "type": "string",
181380
+ "maxLength": 1024,
181381
+ "description": "Informational URL for the OAuth client's homepage (from client registration)"
181382
+ },
181383
+ "logo_uri": {
181384
+ "type": "string",
181385
+ "maxLength": 32768,
181386
+ "description": "Logo URL for the OAuth client (http(s) URL or data: URI, from client registration)"
181387
+ },
181388
+ "redirect_uri": {
181389
+ "type": "string",
181390
+ "format": "uri",
181391
+ "maxLength": 1024
181392
+ },
181393
+ "resource": {
181394
+ "type": "array",
181395
+ "items": {
181396
+ "type": "string",
181397
+ "format": "uri",
181398
+ "maxLength": 1024
181399
+ },
181400
+ "description": "Resource indicator(s) per RFC 8707 — audience(s) this token is bound to"
181401
+ },
181402
+ "authorizationStatus": {
181403
+ "type": "string",
181404
+ "enum": [
181405
+ "pending",
181406
+ "authorized"
181407
+ ]
181408
+ }
181409
+ }
181410
+ }
181411
+ }
181412
+ }
181413
+ },
181414
+ "count": {
181415
+ "type": "integer"
181416
+ },
181417
+ "totalCount": {
181418
+ "type": "integer"
181419
+ },
181420
+ "perPage": {
181421
+ "type": "integer"
181422
+ },
181423
+ "page": {
181424
+ "type": "integer"
181425
+ },
181426
+ "filter": {
181427
+ "type": "string"
181428
+ },
181429
+ "filterField": {
181430
+ "type": "string"
181431
+ },
181432
+ "sortField": {
181433
+ "type": "string"
181434
+ },
181435
+ "sortDirection": {
181436
+ "type": "string",
181437
+ "enum": [
181438
+ "asc",
181439
+ "desc",
181440
+ "ASC",
181441
+ "DESC",
181442
+ ""
181443
+ ]
181444
+ }
181445
+ }
181446
+ }
181447
+ ```
181448
+ ### <a name="user-oauth-tokens-example"></a> Example
181449
+
181450
+ ```json
181451
+ {
181452
+ "items": [
181453
+ {
181454
+ "id": "575ec7417ae143cd83dc4a95",
181455
+ "oauthTokenId": "575ec7417ae143cd83dc4a95",
181456
+ "name": "My OAuth App",
181457
+ "description": "OAuth application for automation",
181458
+ "creationDate": "2016-06-13T04:00:00.000Z",
181459
+ "lastUpdated": "2016-06-13T04:00:00.000Z",
181460
+ "scope": [
181461
+ "only.User.read",
181462
+ "all.Application.read"
181463
+ ],
181464
+ "defaultRole": "view",
181465
+ "orgRoles": [],
181466
+ "status": "active",
181467
+ "oauth": {
181468
+ "client_id": "575ec8687ae143cd83dc4a97",
181469
+ "client_name": "My OAuth Client",
181470
+ "client_uri": "https://example.com",
181471
+ "logo_uri": "https://example.com/logo.png",
181472
+ "redirect_uri": "https://example.com/callback",
181473
+ "authorizationStatus": "authorized"
181474
+ }
181475
+ }
181476
+ ],
181477
+ "count": 1,
181478
+ "totalCount": 1,
181479
+ "perPage": 1000,
181480
+ "page": 0,
181481
+ "sortField": "name",
181482
+ "sortDirection": "asc"
181483
+ }
181484
+ ```
181485
+
181486
+ <br/>
181487
+
179451
181488
  ## User Post
179452
181489
 
179453
181490
  Schema for the body of a User creation request
@@ -179542,6 +181579,7 @@ Schema for the body of a User creation request
179542
181579
  "type": "string",
179543
181580
  "enum": [
179544
181581
  "all.Application",
181582
+ "all.Application.bounded",
179545
181583
  "all.Application.read",
179546
181584
  "all.Application.cli",
179547
181585
  "all.Device",
@@ -179711,7 +181749,6 @@ Schema for the body of a User creation request
179711
181749
  "devices.delete",
179712
181750
  "devices.restore",
179713
181751
  "devices.removeData",
179714
- "devices.detailedSummary",
179715
181752
  "devices.deviceNames",
179716
181753
  "devices.export",
179717
181754
  "devices.get",
@@ -179869,7 +181906,11 @@ Schema for the body of a User creation request
179869
181906
  "type": "string",
179870
181907
  "enum": [
179871
181908
  "all.Organization",
181909
+ "all.Organization.bounded",
179872
181910
  "all.Organization.read",
181911
+ "only.Organization",
181912
+ "only.Organization.bounded",
181913
+ "only.Organization.read",
179873
181914
  "applications.*",
179874
181915
  "auditLog.*",
179875
181916
  "auditLogs.*",
@@ -179912,6 +181953,7 @@ Schema for the body of a User creation request
179912
181953
  "type": "string",
179913
181954
  "enum": [
179914
181955
  "all.Instance",
181956
+ "all.Instance.bounded",
179915
181957
  "all.Instance.read",
179916
181958
  "instance.*",
179917
181959
  "instance.get",
@@ -180000,8 +182042,12 @@ Schema for the body of a User creation request
180000
182042
  "type": "string",
180001
182043
  "enum": [
180002
182044
  "all.User",
182045
+ "all.User.bounded",
180003
182046
  "all.User.read",
180004
182047
  "all.User.cli",
182048
+ "only.User",
182049
+ "only.User.bounded",
182050
+ "only.User.read",
180005
182051
  "userApiToken.*",
180006
182052
  "userApiToken.get",
180007
182053
  "userApiToken.patch",
@@ -180009,6 +182055,13 @@ Schema for the body of a User creation request
180009
182055
  "userApiTokens.*",
180010
182056
  "userApiTokens.get",
180011
182057
  "userApiTokens.post",
182058
+ "userOauthToken.*",
182059
+ "userOauthToken.get",
182060
+ "userOauthToken.patch",
182061
+ "userOauthToken.delete",
182062
+ "userOauthTokens.*",
182063
+ "userOauthTokens.get",
182064
+ "userOauthTokens.post",
180012
182065
  "applicationTemplate.*",
180013
182066
  "applicationTemplate.get",
180014
182067
  "applicationTemplates.*",
@@ -180038,6 +182091,7 @@ Schema for the body of a User creation request
180038
182091
  "me.invite",
180039
182092
  "me.invites",
180040
182093
  "me.respondToInvite",
182094
+ "me.refreshToken",
180041
182095
  "orgs.*",
180042
182096
  "orgs.get",
180043
182097
  "orgs.post"