losant_rest 1.7.2 → 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (119) hide show
  1. checksums.yaml +4 -4
  2. data/docs/_schemas.md +7347 -4603
  3. data/docs/application.md +47 -0
  4. data/docs/applicationApiToken.md +3 -0
  5. data/docs/applicationApiTokens.md +2 -0
  6. data/docs/applicationKey.md +3 -0
  7. data/docs/applicationKeys.md +2 -0
  8. data/docs/applications.md +2 -0
  9. data/docs/auditLog.md +1 -0
  10. data/docs/auditLogs.md +1 -0
  11. data/docs/auth.md +4 -0
  12. data/docs/dashboard.md +4 -0
  13. data/docs/dashboards.md +2 -0
  14. data/docs/data.md +2 -0
  15. data/docs/dataTable.md +5 -0
  16. data/docs/dataTableRow.md +3 -0
  17. data/docs/dataTableRows.md +9 -3
  18. data/docs/dataTables.md +2 -0
  19. data/docs/device.md +12 -0
  20. data/docs/deviceRecipe.md +4 -0
  21. data/docs/deviceRecipes.md +2 -0
  22. data/docs/devices.md +4 -0
  23. data/docs/edgeDeployments.md +4 -0
  24. data/docs/event.md +3 -0
  25. data/docs/events.md +4 -0
  26. data/docs/experience.md +52 -8
  27. data/docs/experienceDomain.md +3 -0
  28. data/docs/experienceDomains.md +2 -0
  29. data/docs/experienceEndpoint.md +4 -0
  30. data/docs/experienceEndpoints.md +9 -1
  31. data/docs/experienceGroup.md +3 -0
  32. data/docs/experienceGroups.md +2 -0
  33. data/docs/experienceSlug.md +133 -0
  34. data/docs/experienceSlugs.md +87 -0
  35. data/docs/experienceUser.md +3 -0
  36. data/docs/experienceUsers.md +2 -0
  37. data/docs/experienceVersion.md +133 -0
  38. data/docs/experienceVersions.md +93 -0
  39. data/docs/experienceView.md +4 -0
  40. data/docs/experienceViews.md +3 -0
  41. data/docs/file.md +4 -0
  42. data/docs/files.md +2 -0
  43. data/docs/flow.md +8 -0
  44. data/docs/flowVersion.md +4 -0
  45. data/docs/flowVersions.md +2 -0
  46. data/docs/flows.md +54 -1
  47. data/docs/integration.md +3 -0
  48. data/docs/integrations.md +2 -0
  49. data/docs/me.md +19 -3
  50. data/docs/org.md +10 -0
  51. data/docs/orgInvites.md +2 -0
  52. data/docs/orgs.md +2 -0
  53. data/docs/solution.md +3 -0
  54. data/docs/solutionUser.md +3 -0
  55. data/docs/solutionUsers.md +2 -0
  56. data/docs/solutions.md +2 -0
  57. data/docs/webhook.md +3 -0
  58. data/docs/webhooks.md +2 -0
  59. data/lib/losant_rest/application.rb +47 -0
  60. data/lib/losant_rest/client.rb +18 -2
  61. data/lib/losant_rest/data_table_rows.rb +3 -3
  62. data/lib/losant_rest/experience.rb +62 -11
  63. data/lib/losant_rest/experience_endpoint.rb +2 -0
  64. data/lib/losant_rest/experience_endpoints.rb +11 -1
  65. data/lib/losant_rest/experience_slug.rb +174 -0
  66. data/lib/losant_rest/experience_slugs.rb +124 -0
  67. data/lib/losant_rest/experience_version.rb +174 -0
  68. data/lib/losant_rest/experience_versions.rb +136 -0
  69. data/lib/losant_rest/experience_view.rb +2 -0
  70. data/lib/losant_rest/experience_views.rb +2 -0
  71. data/lib/losant_rest/flows.rb +66 -1
  72. data/lib/losant_rest/version.rb +1 -1
  73. data/lib/losant_rest.rb +4 -0
  74. data/schemas/apiTokens.json +128 -0
  75. data/schemas/application.json +6 -0
  76. data/schemas/applicationApiTokenPost.json +18 -0
  77. data/schemas/applications.json +6 -0
  78. data/schemas/dataTableRowInMultiple.json +20 -0
  79. data/schemas/dataTableRowInsert.json +42 -0
  80. data/schemas/dataTableRowInsertResult.json +54 -0
  81. data/schemas/edgeDeployment.json +119 -0
  82. data/schemas/emailVerificationVerify.json +20 -0
  83. data/schemas/experienceBootstrapOptions.json +25 -0
  84. data/schemas/experienceBootstrapResult.json +16 -0
  85. data/schemas/experienceDomain.json +5 -0
  86. data/schemas/experienceDomainPatch.json +12 -0
  87. data/schemas/experienceDomainPost.json +12 -0
  88. data/schemas/experienceDomains.json +5 -0
  89. data/schemas/experienceSlug.json +37 -0
  90. data/schemas/experienceSlugPatch.json +25 -0
  91. data/schemas/experienceSlugPost.json +28 -0
  92. data/schemas/experienceSlugs.json +57 -0
  93. data/schemas/experienceVersion.json +82 -0
  94. data/schemas/experienceVersionPatch.json +19 -0
  95. data/schemas/experienceVersionPost.json +35 -0
  96. data/schemas/experienceVersions.json +102 -0
  97. data/schemas/file.json +3 -0
  98. data/schemas/files.json +3 -0
  99. data/schemas/flow.json +5 -0
  100. data/schemas/flowPatch.json +1 -0
  101. data/schemas/flowPost.json +2 -0
  102. data/schemas/flowVersion.json +622 -433
  103. data/schemas/flowVersionPost.json +1 -0
  104. data/schemas/flowVersions.json +622 -433
  105. data/schemas/flows.json +6 -0
  106. data/schemas/flowsImportPost.json +3 -0
  107. data/schemas/flowsImportResult.json +628 -434
  108. data/schemas/githubLogin.json +18 -0
  109. data/schemas/me.json +12 -0
  110. data/schemas/mqttPublishBody.json +20 -0
  111. data/schemas/org.json +12 -0
  112. data/schemas/orgs.json +12 -0
  113. data/schemas/passwordResetFinish.json +31 -0
  114. data/schemas/passwordResetInput.json +19 -0
  115. data/schemas/passwordResetResponse.json +18 -0
  116. data/schemas/solutionMe.json +150 -0
  117. data/schemas/userCredentials.json +18 -0
  118. data/schemas/userPost.json +388 -0
  119. metadata +32 -2
@@ -45,7 +45,7 @@ module LosantRest
45
45
  # * {string} perPage - How many items to return per page
46
46
  # * {string} filterField - Field to filter the results by. Blank or not provided means no filtering. Accepted values are: name
47
47
  # * {string} filter - Filter to apply against the filtered field. Supports globbing. Blank or not provided means no filtering.
48
- # * {string} flowClass - Filter the workflows by the given flow class. Accepted values are: edge, cloud, customNode
48
+ # * {string} flowClass - Filter the workflows by the given flow class. Accepted values are: edge, cloud, customNode, experience
49
49
  # * {hash} triggerFilter - Array of triggers to filter by - always filters against default flow version. (https://api.losant.com/#/definitions/flowTriggerFilter)
50
50
  # * {string} includeCustomNodes - If the result of the request should also include the details of any custom nodes referenced by the returned workflows
51
51
  # * {string} losantdomain - Domain scope of request (rarely needed)
@@ -91,6 +91,71 @@ module LosantRest
91
91
  body: body)
92
92
  end
93
93
 
94
+ # Returns the flows by version for an application
95
+ #
96
+ # Authentication:
97
+ # The client must be configured with a valid api
98
+ # access token to call this action. The token
99
+ # must include at least one of the following scopes:
100
+ # all.Application, all.Application.read, all.Organization, all.Organization.read, all.User, all.User.read, flows.*, or flows.getByVersion.
101
+ #
102
+ # Parameters:
103
+ # * {string} applicationId - ID associated with the application
104
+ # * {string} sortField - Field to sort the results by. Accepted values are: name, id, creationDate, lastUpdated
105
+ # * {string} sortDirection - Direction to sort the results by. Accepted values are: asc, desc
106
+ # * {string} page - Which page of results to return
107
+ # * {string} perPage - How many items to return per page
108
+ # * {string} filterField - Field to filter the results by. Blank or not provided means no filtering. Accepted values are: name
109
+ # * {string} filter - Filter to apply against the filtered field. Supports globbing. Blank or not provided means no filtering.
110
+ # * {string} flowClass - Filter the workflows by the given flow class. Accepted values are: edge, cloud, customNode, experience
111
+ # * {string} version - Return the workflow versions for the given version.
112
+ # * {hash} triggerFilter - Array of triggers to filter by - always filters against default flow version. (https://api.losant.com/#/definitions/flowTriggerFilter)
113
+ # * {string} includeCustomNodes - If the result of the request should also include the details of any custom nodes referenced by the returned workflows
114
+ # * {string} losantdomain - Domain scope of request (rarely needed)
115
+ # * {boolean} _actions - Return resource actions in response
116
+ # * {boolean} _links - Return resource link in response
117
+ # * {boolean} _embedded - Return embedded resources in response
118
+ #
119
+ # Responses:
120
+ # * 200 - Collection of flow versions (https://api.losant.com/#/definitions/flowVersions)
121
+ #
122
+ # Errors:
123
+ # * 400 - Error if malformed request (https://api.losant.com/#/definitions/error)
124
+ # * 404 - Error if application was not found (https://api.losant.com/#/definitions/error)
125
+ def get_by_version(params = {})
126
+ params = Utils.symbolize_hash_keys(params)
127
+ query_params = { _actions: false, _links: true, _embedded: true }
128
+ headers = {}
129
+ body = nil
130
+
131
+ raise ArgumentError.new("applicationId is required") unless params.has_key?(:applicationId)
132
+ raise ArgumentError.new("version is required") unless params.has_key?(:version)
133
+
134
+ query_params[:sortField] = params[:sortField] if params.has_key?(:sortField)
135
+ query_params[:sortDirection] = params[:sortDirection] if params.has_key?(:sortDirection)
136
+ query_params[:page] = params[:page] if params.has_key?(:page)
137
+ query_params[:perPage] = params[:perPage] if params.has_key?(:perPage)
138
+ query_params[:filterField] = params[:filterField] if params.has_key?(:filterField)
139
+ query_params[:filter] = params[:filter] if params.has_key?(:filter)
140
+ query_params[:flowClass] = params[:flowClass] if params.has_key?(:flowClass)
141
+ query_params[:version] = params[:version] if params.has_key?(:version)
142
+ query_params[:triggerFilter] = params[:triggerFilter] if params.has_key?(:triggerFilter)
143
+ query_params[:includeCustomNodes] = params[:includeCustomNodes] if params.has_key?(:includeCustomNodes)
144
+ headers[:losantdomain] = params[:losantdomain] if params.has_key?(:losantdomain)
145
+ query_params[:_actions] = params[:_actions] if params.has_key?(:_actions)
146
+ query_params[:_links] = params[:_links] if params.has_key?(:_links)
147
+ query_params[:_embedded] = params[:_embedded] if params.has_key?(:_embedded)
148
+
149
+ path = "/applications/#{params[:applicationId]}/flows/version"
150
+
151
+ @client.request(
152
+ method: :get,
153
+ path: path,
154
+ query: query_params,
155
+ headers: headers,
156
+ body: body)
157
+ end
158
+
94
159
  # Import a set of flows and flow versions
95
160
  #
96
161
  # Authentication:
@@ -21,5 +21,5 @@
21
21
  # SOFTWARE.
22
22
 
23
23
  module LosantRest
24
- VERSION = "1.7.2"
24
+ VERSION = "1.8.0"
25
25
  end
data/lib/losant_rest.rb CHANGED
@@ -53,8 +53,12 @@ require_relative "losant_rest/experience_endpoint"
53
53
  require_relative "losant_rest/experience_endpoints"
54
54
  require_relative "losant_rest/experience_group"
55
55
  require_relative "losant_rest/experience_groups"
56
+ require_relative "losant_rest/experience_slug"
57
+ require_relative "losant_rest/experience_slugs"
56
58
  require_relative "losant_rest/experience_user"
57
59
  require_relative "losant_rest/experience_users"
60
+ require_relative "losant_rest/experience_version"
61
+ require_relative "losant_rest/experience_versions"
58
62
  require_relative "losant_rest/experience_view"
59
63
  require_relative "losant_rest/experience_views"
60
64
  require_relative "losant_rest/file"
@@ -0,0 +1,128 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "type": "object",
4
+ "properties": {
5
+ "items": {
6
+ "type": "array",
7
+ "items": {
8
+ "title": "API Token",
9
+ "description": "Schema for a single API Token",
10
+ "type": "object",
11
+ "properties": {
12
+ "id": {
13
+ "type": "string",
14
+ "pattern": "^[A-Fa-f\\d]{24}$"
15
+ },
16
+ "apiTokenId": {
17
+ "type": "string",
18
+ "pattern": "^[A-Fa-f\\d]{24}$"
19
+ },
20
+ "ownerId": {
21
+ "type": "string",
22
+ "pattern": "^[A-Fa-f\\d]{24}$"
23
+ },
24
+ "ownerType": {
25
+ "type": "string",
26
+ "enum": [
27
+ "application"
28
+ ]
29
+ },
30
+ "creatorId": {
31
+ "type": "string",
32
+ "pattern": "^[A-Fa-f\\d]{24}$"
33
+ },
34
+ "creatorType": {
35
+ "type": "string",
36
+ "enum": [
37
+ "apiToken",
38
+ "user",
39
+ "flow"
40
+ ]
41
+ },
42
+ "creatorName": {
43
+ "type": "string",
44
+ "maxLength": 1024
45
+ },
46
+ "name": {
47
+ "type": "string",
48
+ "minLength": 1,
49
+ "maxLength": 255
50
+ },
51
+ "description": {
52
+ "type": "string",
53
+ "maxLength": 32767
54
+ },
55
+ "creationDate": {
56
+ "type": "string",
57
+ "format": "date-time"
58
+ },
59
+ "lastUpdated": {
60
+ "type": "string",
61
+ "format": "date-time"
62
+ },
63
+ "expirationDate": {
64
+ "type": "string",
65
+ "format": "date-time"
66
+ },
67
+ "scope": {
68
+ "type": "array",
69
+ "items": {
70
+ "type": "string",
71
+ "minLength": 1,
72
+ "maxLength": 1024
73
+ }
74
+ },
75
+ "status": {
76
+ "type": "string",
77
+ "enum": [
78
+ "active",
79
+ "inactive"
80
+ ]
81
+ },
82
+ "token": {
83
+ "type": "string",
84
+ "minLength": 1
85
+ }
86
+ }
87
+ }
88
+ },
89
+ "count": {
90
+ "type": "integer"
91
+ },
92
+ "totalCount": {
93
+ "type": "integer"
94
+ },
95
+ "perPage": {
96
+ "type": "integer"
97
+ },
98
+ "page": {
99
+ "type": "integer"
100
+ },
101
+ "filter": {
102
+ "type": "string"
103
+ },
104
+ "filterField": {
105
+ "type": "string"
106
+ },
107
+ "sortField": {
108
+ "type": "string"
109
+ },
110
+ "sortDirection": {
111
+ "type": "string",
112
+ "enum": [
113
+ "asc",
114
+ "desc"
115
+ ]
116
+ },
117
+ "ownerId": {
118
+ "type": "string",
119
+ "pattern": "^[A-Fa-f\\d]{24}$"
120
+ },
121
+ "ownerType": {
122
+ "type": "string",
123
+ "enum": [
124
+ "application"
125
+ ]
126
+ }
127
+ }
128
+ }
@@ -108,9 +108,15 @@
108
108
  "experienceGroupCount": {
109
109
  "type": "number"
110
110
  },
111
+ "experienceSlugCount": {
112
+ "type": "number"
113
+ },
111
114
  "experienceUserCount": {
112
115
  "type": "number"
113
116
  },
117
+ "experienceVersionCount": {
118
+ "type": "number"
119
+ },
114
120
  "experienceViewCount": {
115
121
  "type": "number"
116
122
  },
@@ -49,8 +49,12 @@
49
49
  "experienceEndpoints.*",
50
50
  "experienceGroup.*",
51
51
  "experienceGroups.*",
52
+ "experienceSlug.*",
53
+ "experienceSlugs.*",
52
54
  "experienceUser.*",
53
55
  "experienceUsers.*",
56
+ "experienceVersion.*",
57
+ "experienceVersions.*",
54
58
  "experienceView.*",
55
59
  "experienceViews.*",
56
60
  "integration.*",
@@ -68,6 +72,8 @@
68
72
  "application.debug",
69
73
  "application.delete",
70
74
  "application.get",
75
+ "application.mqttPublishMessage",
76
+ "application.mqttSubscriptionStream",
71
77
  "application.patch",
72
78
  "application.payloadCounts",
73
79
  "applicationApiToken.delete",
@@ -136,6 +142,7 @@
136
142
  "events.patch",
137
143
  "events.post",
138
144
  "experience.delete",
145
+ "experience.bootstrap",
139
146
  "experienceDomain.delete",
140
147
  "experienceDomain.get",
141
148
  "experienceDomain.patch",
@@ -153,12 +160,22 @@
153
160
  "experienceGroups.detailedSummary",
154
161
  "experienceGroups.get",
155
162
  "experienceGroups.post",
163
+ "experienceSlug.delete",
164
+ "experienceSlug.get",
165
+ "experienceSlug.patch",
166
+ "experienceSlugs.get",
167
+ "experienceSlugs.post",
156
168
  "experienceUser.delete",
157
169
  "experienceUser.get",
158
170
  "experienceUser.patch",
159
171
  "experienceUsers.detailedSummary",
160
172
  "experienceUsers.get",
161
173
  "experienceUsers.post",
174
+ "experienceVersion.delete",
175
+ "experienceVersion.get",
176
+ "experienceVersion.patch",
177
+ "experienceVersions.get",
178
+ "experienceVersions.post",
162
179
  "experienceView.debug",
163
180
  "experienceView.delete",
164
181
  "experienceView.get",
@@ -183,6 +200,7 @@
183
200
  "flow.pressVirtualButton",
184
201
  "flow.setStorageEntry",
185
202
  "flows.get",
203
+ "flows.getByVersion",
186
204
  "flows.import",
187
205
  "flows.post",
188
206
  "flowVersion.delete",
@@ -115,9 +115,15 @@
115
115
  "experienceGroupCount": {
116
116
  "type": "number"
117
117
  },
118
+ "experienceSlugCount": {
119
+ "type": "number"
120
+ },
118
121
  "experienceUserCount": {
119
122
  "type": "number"
120
123
  },
124
+ "experienceVersionCount": {
125
+ "type": "number"
126
+ },
121
127
  "experienceViewCount": {
122
128
  "type": "number"
123
129
  },
@@ -0,0 +1,20 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "type": "array",
4
+ "items": {
5
+ "title": "Data Table Row Insert/Update",
6
+ "description": "Schema for inserting or updating a data table row",
7
+ "type": "object",
8
+ "patternProperties": {
9
+ "^[0-9a-zA-Z_-]{1,255}$": {
10
+ "type": [
11
+ "string",
12
+ "number",
13
+ "boolean",
14
+ "null"
15
+ ]
16
+ }
17
+ },
18
+ "additionalProperties": false
19
+ }
20
+ }
@@ -0,0 +1,42 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "oneOf": [
4
+ {
5
+ "title": "Data Table Row Insert/Update",
6
+ "description": "Schema for inserting or updating a data table row",
7
+ "type": "object",
8
+ "patternProperties": {
9
+ "^[0-9a-zA-Z_-]{1,255}$": {
10
+ "type": [
11
+ "string",
12
+ "number",
13
+ "boolean",
14
+ "null"
15
+ ]
16
+ }
17
+ },
18
+ "additionalProperties": false
19
+ },
20
+ {
21
+ "title": "Data Table Row Insert Multiple",
22
+ "description": "Schema for inserting data table rows",
23
+ "type": "array",
24
+ "items": {
25
+ "title": "Data Table Row Insert/Update",
26
+ "description": "Schema for inserting or updating a data table row",
27
+ "type": "object",
28
+ "patternProperties": {
29
+ "^[0-9a-zA-Z_-]{1,255}$": {
30
+ "type": [
31
+ "string",
32
+ "number",
33
+ "boolean",
34
+ "null"
35
+ ]
36
+ }
37
+ },
38
+ "additionalProperties": false
39
+ }
40
+ }
41
+ ]
42
+ }
@@ -0,0 +1,54 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "oneOf": [
4
+ {
5
+ "title": "Data Table Row",
6
+ "description": "Schema for a single Data Table Row",
7
+ "type": "object",
8
+ "properties": {
9
+ "id": {
10
+ "type": "string",
11
+ "pattern": "^[A-Fa-f\\d]{24}$"
12
+ },
13
+ "createdAt": {
14
+ "type": "string",
15
+ "format": "date-time"
16
+ },
17
+ "updatedAt": {
18
+ "type": "string",
19
+ "format": "date-time"
20
+ }
21
+ },
22
+ "patternProperties": {
23
+ "^[0-9a-zA-Z_-]{1,255}$": {
24
+ "type": [
25
+ "string",
26
+ "number",
27
+ "boolean",
28
+ "null"
29
+ ]
30
+ }
31
+ }
32
+ },
33
+ {
34
+ "type": "object",
35
+ "properties": {
36
+ "createdAt": {
37
+ "type": "string",
38
+ "format": "date-time"
39
+ },
40
+ "count": {
41
+ "type": "number"
42
+ },
43
+ "rowIds": {
44
+ "type": "array",
45
+ "items": {
46
+ "type": "string",
47
+ "pattern": "^[A-Fa-f\\d]{24}$"
48
+ },
49
+ "maxItems": 1000
50
+ }
51
+ }
52
+ }
53
+ ]
54
+ }
@@ -0,0 +1,119 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "type": "object",
4
+ "properties": {
5
+ "id": {
6
+ "type": "string",
7
+ "pattern": "^[A-Fa-f\\d]{24}$"
8
+ },
9
+ "edgeDeploymentId": {
10
+ "type": "string",
11
+ "pattern": "^[A-Fa-f\\d]{24}$"
12
+ },
13
+ "applicationId": {
14
+ "type": "string",
15
+ "pattern": "^[A-Fa-f\\d]{24}$"
16
+ },
17
+ "deviceId": {
18
+ "type": "string",
19
+ "pattern": "^[A-Fa-f\\d]{24}$"
20
+ },
21
+ "deviceName": {
22
+ "type": "string",
23
+ "minLength": 1,
24
+ "maxLength": 255
25
+ },
26
+ "flowId": {
27
+ "type": "string",
28
+ "pattern": "^[A-Fa-f\\d]{24}$"
29
+ },
30
+ "flowName": {
31
+ "type": "string",
32
+ "minLength": 1,
33
+ "maxLength": 255
34
+ },
35
+ "creationDate": {
36
+ "type": "string",
37
+ "format": "date-time"
38
+ },
39
+ "lastUpdated": {
40
+ "type": "string",
41
+ "format": "date-time"
42
+ },
43
+ "currentVersion": {
44
+ "type": [
45
+ "string",
46
+ "null"
47
+ ],
48
+ "minLength": 1,
49
+ "maxLength": 255
50
+ },
51
+ "desiredVersion": {
52
+ "type": [
53
+ "string",
54
+ "null"
55
+ ],
56
+ "minLength": 1,
57
+ "maxLength": 255
58
+ },
59
+ "logs": {
60
+ "type": "array",
61
+ "items": {
62
+ "type": "object",
63
+ "properties": {
64
+ "sourceType": {
65
+ "type": "string",
66
+ "enum": [
67
+ "flow",
68
+ "user",
69
+ "device",
70
+ "apiToken"
71
+ ]
72
+ },
73
+ "sourceId": {
74
+ "type": "string",
75
+ "pattern": "^[A-Fa-f\\d]{24}$"
76
+ },
77
+ "date": {
78
+ "type": "string",
79
+ "format": "date-time"
80
+ },
81
+ "changeType": {
82
+ "type": "string",
83
+ "enum": [
84
+ "current",
85
+ "desired"
86
+ ]
87
+ },
88
+ "newValue": {
89
+ "type": [
90
+ "string",
91
+ "null"
92
+ ],
93
+ "minLength": 1,
94
+ "maxLength": 255
95
+ },
96
+ "previousValue": {
97
+ "type": [
98
+ "string",
99
+ "null"
100
+ ],
101
+ "minLength": 1,
102
+ "maxLength": 255
103
+ },
104
+ "attemptedValue": {
105
+ "type": [
106
+ "string",
107
+ "null"
108
+ ],
109
+ "minLength": 1,
110
+ "maxLength": 255
111
+ },
112
+ "error": {
113
+ "type": "string"
114
+ }
115
+ }
116
+ }
117
+ }
118
+ }
119
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "type": "object",
4
+ "properties": {
5
+ "email": {
6
+ "type": "string",
7
+ "format": "email",
8
+ "maxLength": 1024
9
+ },
10
+ "token": {
11
+ "type": "string",
12
+ "minLength": 1
13
+ }
14
+ },
15
+ "required": [
16
+ "email",
17
+ "token"
18
+ ],
19
+ "additionalProperties": false
20
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "type": "object",
4
+ "properties": {
5
+ "replaceExisting": {
6
+ "type": "boolean",
7
+ "default": false
8
+ },
9
+ "createUsers": {
10
+ "type": "boolean",
11
+ "default": true
12
+ },
13
+ "createGroups": {
14
+ "type": "boolean",
15
+ "default": true
16
+ },
17
+ "slug": {
18
+ "type": "string",
19
+ "minLength": 4,
20
+ "maxLength": 63,
21
+ "pattern": "^[0-9a-z-]*$"
22
+ }
23
+ },
24
+ "additionalProperties": false
25
+ }
@@ -0,0 +1,16 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "type": "object",
4
+ "properties": {
5
+ "resourceSuffix": {
6
+ "type": "string"
7
+ },
8
+ "password": {
9
+ "type": "string"
10
+ },
11
+ "email": {
12
+ "type": "string"
13
+ }
14
+ },
15
+ "additionalProperties": false
16
+ }
@@ -36,6 +36,11 @@
36
36
  "type": "string",
37
37
  "maxLength": 1024,
38
38
  "minLength": 3
39
+ },
40
+ "version": {
41
+ "type": "string",
42
+ "minLength": 1,
43
+ "maxLength": 255
39
44
  }
40
45
  }
41
46
  }
@@ -38,6 +38,18 @@
38
38
  }
39
39
  ]
40
40
  },
41
+ "version": {
42
+ "$oneOf": [
43
+ {
44
+ "type": "string",
45
+ "minLength": 1,
46
+ "maxLength": 255
47
+ },
48
+ {
49
+ "type": null
50
+ }
51
+ ]
52
+ },
41
53
  "domainName": {
42
54
  "type": "string",
43
55
  "maxLength": 1024,
@@ -21,6 +21,18 @@
21
21
  "type": "string",
22
22
  "maxLength": 1024,
23
23
  "minLength": 3
24
+ },
25
+ "version": {
26
+ "$oneOf": [
27
+ {
28
+ "type": "string",
29
+ "minLength": 1,
30
+ "maxLength": 255
31
+ },
32
+ {
33
+ "type": null
34
+ }
35
+ ]
24
36
  }
25
37
  },
26
38
  "additionalProperties": false,