@fleetless/contracts 6.0.0-next.3 → 6.1.0-next.1

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 (41) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/artifacts/openapi.json +636 -1
  3. package/artifacts/routes.json +101 -0
  4. package/artifacts/schema/addon-catalogue-entry.schema.json +75 -0
  5. package/artifacts/schema/addon-key.schema.json +11 -0
  6. package/artifacts/schema/admin-plan-change-request.schema.json +171 -0
  7. package/artifacts/schema/asset-plan-limit-details.schema.json +108 -0
  8. package/artifacts/schema/audit-actor.schema.json +2 -1
  9. package/artifacts/schema/audit-event.schema.json +2 -1
  10. package/artifacts/schema/audit-list-response.schema.json +2 -1
  11. package/artifacts/schema/org-addons.schema.json +39 -0
  12. package/artifacts/schema/org-lock.schema.json +23 -0
  13. package/artifacts/schema/org-locked-details.schema.json +17 -0
  14. package/artifacts/schema/org-plan-usage.schema.json +45 -0
  15. package/artifacts/schema/org-plan.schema.json +450 -0
  16. package/artifacts/schema/pending-plan-change.schema.json +112 -0
  17. package/artifacts/schema/plan-catalogue-entry.schema.json +226 -0
  18. package/artifacts/schema/plan-change-keep.schema.json +45 -0
  19. package/artifacts/schema/plan-change-reason.schema.json +10 -0
  20. package/artifacts/schema/plan-change-request.schema.json +71 -0
  21. package/artifacts/schema/plan-currency.schema.json +8 -0
  22. package/artifacts/schema/plan-features.schema.json +37 -0
  23. package/artifacts/schema/plan-id.schema.json +10 -0
  24. package/artifacts/schema/plan-limit-details.schema.json +87 -0
  25. package/artifacts/schema/plan-limits.schema.json +113 -0
  26. package/artifacts/schema/plan-overrides.schema.json +103 -0
  27. package/artifacts/schema/plan-prices.schema.json +33 -0
  28. package/artifacts/schema/plan-required-details.schema.json +42 -0
  29. package/dist/audit.d.ts +10 -0
  30. package/dist/audit.js +8 -1
  31. package/dist/errors.d.ts +138 -1
  32. package/dist/errors.js +94 -0
  33. package/dist/index.d.ts +6 -2
  34. package/dist/index.js +11 -1
  35. package/dist/plans.d.ts +525 -0
  36. package/dist/plans.js +442 -0
  37. package/dist/realtime.d.ts +2 -0
  38. package/dist/realtime.js +6 -0
  39. package/dist/routes.d.ts +5 -1
  40. package/dist/routes.js +58 -0
  41. package/package.json +1 -1
@@ -0,0 +1,226 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "id": {
6
+ "type": "string",
7
+ "enum": [
8
+ "basic",
9
+ "plus",
10
+ "pro",
11
+ "enterprise"
12
+ ]
13
+ },
14
+ "name": {
15
+ "type": "string",
16
+ "minLength": 1,
17
+ "description": "The plan's display name: Basic, Plus, Pro or Enterprise."
18
+ },
19
+ "limits": {
20
+ "type": "object",
21
+ "properties": {
22
+ "seats": {
23
+ "anyOf": [
24
+ {
25
+ "type": "integer",
26
+ "exclusiveMinimum": 0,
27
+ "maximum": 9007199254740991
28
+ },
29
+ {
30
+ "type": "null"
31
+ }
32
+ ]
33
+ },
34
+ "robots": {
35
+ "anyOf": [
36
+ {
37
+ "type": "integer",
38
+ "exclusiveMinimum": 0,
39
+ "maximum": 9007199254740991
40
+ },
41
+ {
42
+ "type": "null"
43
+ }
44
+ ]
45
+ },
46
+ "apps": {
47
+ "anyOf": [
48
+ {
49
+ "type": "integer",
50
+ "exclusiveMinimum": 0,
51
+ "maximum": 9007199254740991
52
+ },
53
+ {
54
+ "type": "null"
55
+ }
56
+ ]
57
+ },
58
+ "app_users": {
59
+ "anyOf": [
60
+ {
61
+ "type": "integer",
62
+ "exclusiveMinimum": 0,
63
+ "maximum": 9007199254740991
64
+ },
65
+ {
66
+ "type": "null"
67
+ }
68
+ ]
69
+ },
70
+ "live_video_ms_per_month": {
71
+ "anyOf": [
72
+ {
73
+ "type": "integer",
74
+ "exclusiveMinimum": 0,
75
+ "maximum": 9007199254740991
76
+ },
77
+ {
78
+ "type": "null"
79
+ }
80
+ ]
81
+ },
82
+ "asset_bytes_per_robot": {
83
+ "anyOf": [
84
+ {
85
+ "type": "integer",
86
+ "exclusiveMinimum": 0,
87
+ "maximum": 9007199254740991
88
+ },
89
+ {
90
+ "type": "null"
91
+ }
92
+ ]
93
+ },
94
+ "history_days": {
95
+ "anyOf": [
96
+ {
97
+ "type": "integer",
98
+ "exclusiveMinimum": 0,
99
+ "maximum": 9007199254740991
100
+ },
101
+ {
102
+ "type": "null"
103
+ }
104
+ ]
105
+ },
106
+ "audit_days": {
107
+ "anyOf": [
108
+ {
109
+ "type": "integer",
110
+ "exclusiveMinimum": 0,
111
+ "maximum": 9007199254740991
112
+ },
113
+ {
114
+ "type": "null"
115
+ }
116
+ ]
117
+ }
118
+ },
119
+ "required": [
120
+ "seats",
121
+ "robots",
122
+ "apps",
123
+ "app_users",
124
+ "live_video_ms_per_month",
125
+ "asset_bytes_per_robot",
126
+ "history_days",
127
+ "audit_days"
128
+ ],
129
+ "additionalProperties": false
130
+ },
131
+ "features": {
132
+ "type": "object",
133
+ "properties": {
134
+ "app_mcp": {
135
+ "type": "boolean"
136
+ },
137
+ "two_factor": {
138
+ "type": "boolean"
139
+ },
140
+ "require_two_factor": {
141
+ "type": "boolean"
142
+ },
143
+ "app_oidc": {
144
+ "type": "boolean"
145
+ },
146
+ "hosted_logo": {
147
+ "type": "boolean"
148
+ },
149
+ "audit_export": {
150
+ "type": "boolean"
151
+ },
152
+ "addons": {
153
+ "type": "boolean"
154
+ }
155
+ },
156
+ "required": [
157
+ "app_mcp",
158
+ "two_factor",
159
+ "require_two_factor",
160
+ "app_oidc",
161
+ "hosted_logo",
162
+ "audit_export",
163
+ "addons"
164
+ ],
165
+ "additionalProperties": false
166
+ },
167
+ "prices": {
168
+ "anyOf": [
169
+ {
170
+ "type": "object",
171
+ "properties": {
172
+ "eur_month": {
173
+ "type": "integer",
174
+ "minimum": 0,
175
+ "maximum": 9007199254740991
176
+ },
177
+ "usd_month": {
178
+ "type": "integer",
179
+ "minimum": 0,
180
+ "maximum": 9007199254740991
181
+ },
182
+ "eur_year": {
183
+ "type": "integer",
184
+ "minimum": 0,
185
+ "maximum": 9007199254740991
186
+ },
187
+ "usd_year": {
188
+ "type": "integer",
189
+ "minimum": 0,
190
+ "maximum": 9007199254740991
191
+ }
192
+ },
193
+ "required": [
194
+ "eur_month",
195
+ "usd_month",
196
+ "eur_year",
197
+ "usd_year"
198
+ ],
199
+ "additionalProperties": false
200
+ },
201
+ {
202
+ "type": "null"
203
+ }
204
+ ],
205
+ "description": "`null` for Enterprise: sold by contract, on request."
206
+ },
207
+ "support": {
208
+ "type": "string",
209
+ "enum": [
210
+ "community",
211
+ "email",
212
+ "priority",
213
+ "named_contact"
214
+ ]
215
+ }
216
+ },
217
+ "required": [
218
+ "id",
219
+ "name",
220
+ "limits",
221
+ "features",
222
+ "prices",
223
+ "support"
224
+ ],
225
+ "additionalProperties": false
226
+ }
@@ -0,0 +1,45 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "robots": {
6
+ "type": "array",
7
+ "items": {
8
+ "type": "string",
9
+ "format": "uuid",
10
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
11
+ }
12
+ },
13
+ "apps": {
14
+ "type": "array",
15
+ "items": {
16
+ "type": "string",
17
+ "format": "uuid",
18
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
19
+ }
20
+ },
21
+ "app_users": {
22
+ "type": "array",
23
+ "items": {
24
+ "type": "string",
25
+ "format": "uuid",
26
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
27
+ }
28
+ },
29
+ "developers": {
30
+ "type": "array",
31
+ "items": {
32
+ "type": "string",
33
+ "format": "uuid",
34
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
35
+ }
36
+ }
37
+ },
38
+ "required": [
39
+ "robots",
40
+ "apps",
41
+ "app_users",
42
+ "developers"
43
+ ],
44
+ "additionalProperties": false
45
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "string",
4
+ "enum": [
5
+ "downgrade",
6
+ "cancel",
7
+ "migration",
8
+ "lock"
9
+ ]
10
+ }
@@ -0,0 +1,71 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "target_plan": {
6
+ "type": "string",
7
+ "enum": [
8
+ "basic",
9
+ "plus",
10
+ "pro",
11
+ "enterprise"
12
+ ]
13
+ },
14
+ "keep": {
15
+ "anyOf": [
16
+ {
17
+ "type": "object",
18
+ "properties": {
19
+ "robots": {
20
+ "type": "array",
21
+ "items": {
22
+ "type": "string",
23
+ "format": "uuid",
24
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
25
+ }
26
+ },
27
+ "apps": {
28
+ "type": "array",
29
+ "items": {
30
+ "type": "string",
31
+ "format": "uuid",
32
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
33
+ }
34
+ },
35
+ "app_users": {
36
+ "type": "array",
37
+ "items": {
38
+ "type": "string",
39
+ "format": "uuid",
40
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
41
+ }
42
+ },
43
+ "developers": {
44
+ "type": "array",
45
+ "items": {
46
+ "type": "string",
47
+ "format": "uuid",
48
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
49
+ }
50
+ }
51
+ },
52
+ "required": [
53
+ "robots",
54
+ "apps",
55
+ "app_users",
56
+ "developers"
57
+ ],
58
+ "additionalProperties": false
59
+ },
60
+ {
61
+ "type": "null"
62
+ }
63
+ ]
64
+ }
65
+ },
66
+ "required": [
67
+ "target_plan",
68
+ "keep"
69
+ ],
70
+ "additionalProperties": false
71
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "string",
4
+ "enum": [
5
+ "eur",
6
+ "usd"
7
+ ]
8
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "app_mcp": {
6
+ "type": "boolean"
7
+ },
8
+ "two_factor": {
9
+ "type": "boolean"
10
+ },
11
+ "require_two_factor": {
12
+ "type": "boolean"
13
+ },
14
+ "app_oidc": {
15
+ "type": "boolean"
16
+ },
17
+ "hosted_logo": {
18
+ "type": "boolean"
19
+ },
20
+ "audit_export": {
21
+ "type": "boolean"
22
+ },
23
+ "addons": {
24
+ "type": "boolean"
25
+ }
26
+ },
27
+ "required": [
28
+ "app_mcp",
29
+ "two_factor",
30
+ "require_two_factor",
31
+ "app_oidc",
32
+ "hosted_logo",
33
+ "audit_export",
34
+ "addons"
35
+ ],
36
+ "additionalProperties": false
37
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "string",
4
+ "enum": [
5
+ "basic",
6
+ "plus",
7
+ "pro",
8
+ "enterprise"
9
+ ]
10
+ }
@@ -0,0 +1,87 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "limit": {
6
+ "type": "string",
7
+ "enum": [
8
+ "seats",
9
+ "robots",
10
+ "apps",
11
+ "app_users",
12
+ "live_video_ms_per_month",
13
+ "asset_bytes_per_robot"
14
+ ]
15
+ },
16
+ "used": {
17
+ "type": "integer",
18
+ "minimum": 0,
19
+ "maximum": 9007199254740991
20
+ },
21
+ "max": {
22
+ "type": "integer",
23
+ "minimum": 0,
24
+ "maximum": 9007199254740991
25
+ },
26
+ "plan": {
27
+ "type": "string",
28
+ "enum": [
29
+ "basic",
30
+ "plus",
31
+ "pro",
32
+ "enterprise"
33
+ ]
34
+ },
35
+ "lifted_by": {
36
+ "type": "object",
37
+ "properties": {
38
+ "plan": {
39
+ "anyOf": [
40
+ {
41
+ "type": "string",
42
+ "enum": [
43
+ "basic",
44
+ "plus",
45
+ "pro",
46
+ "enterprise"
47
+ ]
48
+ },
49
+ {
50
+ "type": "null"
51
+ }
52
+ ]
53
+ },
54
+ "addon": {
55
+ "anyOf": [
56
+ {
57
+ "type": "string",
58
+ "enum": [
59
+ "seats",
60
+ "robots",
61
+ "apps",
62
+ "app_user_packs",
63
+ "live_video_packs"
64
+ ]
65
+ },
66
+ {
67
+ "type": "null"
68
+ }
69
+ ]
70
+ }
71
+ },
72
+ "required": [
73
+ "plan",
74
+ "addon"
75
+ ],
76
+ "additionalProperties": false
77
+ }
78
+ },
79
+ "required": [
80
+ "limit",
81
+ "used",
82
+ "max",
83
+ "plan",
84
+ "lifted_by"
85
+ ],
86
+ "additionalProperties": false
87
+ }
@@ -0,0 +1,113 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "seats": {
6
+ "anyOf": [
7
+ {
8
+ "type": "integer",
9
+ "exclusiveMinimum": 0,
10
+ "maximum": 9007199254740991
11
+ },
12
+ {
13
+ "type": "null"
14
+ }
15
+ ]
16
+ },
17
+ "robots": {
18
+ "anyOf": [
19
+ {
20
+ "type": "integer",
21
+ "exclusiveMinimum": 0,
22
+ "maximum": 9007199254740991
23
+ },
24
+ {
25
+ "type": "null"
26
+ }
27
+ ]
28
+ },
29
+ "apps": {
30
+ "anyOf": [
31
+ {
32
+ "type": "integer",
33
+ "exclusiveMinimum": 0,
34
+ "maximum": 9007199254740991
35
+ },
36
+ {
37
+ "type": "null"
38
+ }
39
+ ]
40
+ },
41
+ "app_users": {
42
+ "anyOf": [
43
+ {
44
+ "type": "integer",
45
+ "exclusiveMinimum": 0,
46
+ "maximum": 9007199254740991
47
+ },
48
+ {
49
+ "type": "null"
50
+ }
51
+ ]
52
+ },
53
+ "live_video_ms_per_month": {
54
+ "anyOf": [
55
+ {
56
+ "type": "integer",
57
+ "exclusiveMinimum": 0,
58
+ "maximum": 9007199254740991
59
+ },
60
+ {
61
+ "type": "null"
62
+ }
63
+ ]
64
+ },
65
+ "asset_bytes_per_robot": {
66
+ "anyOf": [
67
+ {
68
+ "type": "integer",
69
+ "exclusiveMinimum": 0,
70
+ "maximum": 9007199254740991
71
+ },
72
+ {
73
+ "type": "null"
74
+ }
75
+ ]
76
+ },
77
+ "history_days": {
78
+ "anyOf": [
79
+ {
80
+ "type": "integer",
81
+ "exclusiveMinimum": 0,
82
+ "maximum": 9007199254740991
83
+ },
84
+ {
85
+ "type": "null"
86
+ }
87
+ ]
88
+ },
89
+ "audit_days": {
90
+ "anyOf": [
91
+ {
92
+ "type": "integer",
93
+ "exclusiveMinimum": 0,
94
+ "maximum": 9007199254740991
95
+ },
96
+ {
97
+ "type": "null"
98
+ }
99
+ ]
100
+ }
101
+ },
102
+ "required": [
103
+ "seats",
104
+ "robots",
105
+ "apps",
106
+ "app_users",
107
+ "live_video_ms_per_month",
108
+ "asset_bytes_per_robot",
109
+ "history_days",
110
+ "audit_days"
111
+ ],
112
+ "additionalProperties": false
113
+ }