@shipeasy/openapi 1.5.0 → 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 (101) hide show
  1. package/README.md +37 -0
  2. package/dist/chunk-EPLLHLZN.js +1616 -0
  3. package/dist/chunk-EPLLHLZN.js.map +1 -0
  4. package/dist/chunk-SPH5HWCD.js +3326 -0
  5. package/dist/chunk-SPH5HWCD.js.map +1 -0
  6. package/dist/client-pVkoo3Bf.d.ts +11186 -0
  7. package/dist/client.d.ts +1 -0
  8. package/dist/client.js +215 -0
  9. package/dist/client.js.map +1 -0
  10. package/dist/custom.d.ts +64 -0
  11. package/dist/custom.js +292 -0
  12. package/dist/custom.js.map +1 -0
  13. package/dist/index.d.ts +29 -17
  14. package/dist/index.js +253 -2458
  15. package/dist/index.js.map +1 -0
  16. package/dist/node-context.d.ts +85 -0
  17. package/dist/node-context.js +110 -0
  18. package/dist/node-context.js.map +1 -0
  19. package/dist/schemas.d.ts +7920 -0
  20. package/dist/schemas.js +1083 -0
  21. package/dist/schemas.js.map +1 -0
  22. package/openapi.json +15297 -3044
  23. package/openapi.yaml +13979 -0
  24. package/package.json +37 -21
  25. package/spec/components/errors.yaml +53 -0
  26. package/spec/components/parameters.yaml +24 -0
  27. package/spec/components/responses.yaml +107 -0
  28. package/spec/components/schemas/alert-rules.yaml +175 -0
  29. package/spec/components/schemas/attributes.yaml +157 -0
  30. package/spec/components/schemas/common.yaml +87 -0
  31. package/spec/components/schemas/configs.yaml +371 -0
  32. package/spec/components/schemas/connectors.yaml +593 -0
  33. package/spec/components/schemas/errors-api.yaml +209 -0
  34. package/spec/components/schemas/events.yaml +321 -0
  35. package/spec/components/schemas/experiments.yaml +865 -0
  36. package/spec/components/schemas/gate-templates.yaml +198 -0
  37. package/spec/components/schemas/gates.yaml +890 -0
  38. package/spec/components/schemas/i18n.yaml +478 -0
  39. package/spec/components/schemas/keys.yaml +186 -0
  40. package/spec/components/schemas/killswitches.yaml +309 -0
  41. package/spec/components/schemas/metrics.yaml +547 -0
  42. package/spec/components/schemas/ops.yaml +1011 -0
  43. package/spec/components/schemas/projects.yaml +222 -0
  44. package/spec/components/schemas/search.yaml +46 -0
  45. package/spec/components/schemas/universes.yaml +127 -0
  46. package/spec/openapi.yaml +348 -0
  47. package/spec/paths/alert-rules.yaml +250 -0
  48. package/spec/paths/attributes.yaml +261 -0
  49. package/spec/paths/configs.yaml +744 -0
  50. package/spec/paths/connectors.yaml +748 -0
  51. package/spec/paths/errors.yaml +382 -0
  52. package/spec/paths/events.yaml +366 -0
  53. package/spec/paths/experiments.yaml +777 -0
  54. package/spec/paths/gate-templates.yaml +263 -0
  55. package/spec/paths/gates.yaml +451 -0
  56. package/spec/paths/i18n.yaml +544 -0
  57. package/spec/paths/keys.yaml +181 -0
  58. package/spec/paths/killswitches.yaml +557 -0
  59. package/spec/paths/metrics.yaml +302 -0
  60. package/spec/paths/ops.yaml +446 -0
  61. package/spec/paths/projects.yaml +210 -0
  62. package/spec/paths/search.yaml +62 -0
  63. package/spec/paths/universes.yaml +247 -0
  64. package/dist/resources/alert-rules.d.ts +0 -50
  65. package/dist/resources/alert-rules.js +0 -75
  66. package/dist/resources/configs.d.ts +0 -681
  67. package/dist/resources/configs.js +0 -509
  68. package/dist/resources/experiments.d.ts +0 -849
  69. package/dist/resources/experiments.js +0 -707
  70. package/dist/resources/gates.d.ts +0 -808
  71. package/dist/resources/gates.js +0 -522
  72. package/dist/resources/index.d.ts +0 -2749
  73. package/dist/resources/index.js +0 -2391
  74. package/dist/resources/killswitches.d.ts +0 -436
  75. package/dist/resources/killswitches.js +0 -514
  76. package/dist/resources/universes.d.ts +0 -185
  77. package/dist/resources/universes.js +0 -234
  78. package/dist/schemas/alert-rules.d.ts +0 -65
  79. package/dist/schemas/alert-rules.js +0 -37
  80. package/dist/schemas/configs.d.ts +0 -154
  81. package/dist/schemas/configs.js +0 -134
  82. package/dist/schemas/constants.d.ts +0 -6
  83. package/dist/schemas/constants.js +0 -7
  84. package/dist/schemas/experiments.d.ts +0 -229
  85. package/dist/schemas/experiments.js +0 -221
  86. package/dist/schemas/folder.d.ts +0 -10
  87. package/dist/schemas/folder.js +0 -8
  88. package/dist/schemas/gates.d.ts +0 -386
  89. package/dist/schemas/gates.js +0 -190
  90. package/dist/schemas/index.d.ts +0 -11
  91. package/dist/schemas/index.js +0 -762
  92. package/dist/schemas/killswitches.d.ts +0 -110
  93. package/dist/schemas/killswitches.js +0 -226
  94. package/dist/schemas/metric-name.d.ts +0 -5
  95. package/dist/schemas/metric-name.js +0 -6
  96. package/dist/schemas/pagination.d.ts +0 -37
  97. package/dist/schemas/pagination.js +0 -44
  98. package/dist/schemas/universes.d.ts +0 -35
  99. package/dist/schemas/universes.js +0 -55
  100. package/dist/transport.d.ts +0 -30
  101. package/dist/transport.js +0 -44
@@ -0,0 +1,544 @@
1
+ /api/admin/i18n/profiles:
2
+ get:
3
+ operationId: listI18nProfiles
4
+ summary: List i18n profiles
5
+ description: |-
6
+ Returns every locale profile in the project (e.g. `en:prod`, `fr:prod`).
7
+
8
+ **Use case:** Discover which locale profiles exist before pushing keys or publishing a chunk.
9
+ tags:
10
+ - Profiles
11
+ parameters:
12
+ - $ref: ../components/parameters.yaml#/ProjectId
13
+ responses:
14
+ "200":
15
+ description: List i18n profiles
16
+ content:
17
+ application/json:
18
+ schema:
19
+ $ref: ../components/schemas/i18n.yaml#/ListI18nProfilesResponse
20
+ example:
21
+ - id: i18n_01j7w8a1b2c3
22
+ name: en:prod
23
+ locales:
24
+ - en
25
+ default_locale: en
26
+ "400":
27
+ $ref: ../components/responses.yaml#/BadRequest
28
+ "401":
29
+ $ref: ../components/responses.yaml#/Unauthorized
30
+ "403":
31
+ $ref: ../components/responses.yaml#/Forbidden
32
+ "404":
33
+ $ref: ../components/responses.yaml#/NotFound
34
+ "409":
35
+ $ref: ../components/responses.yaml#/Conflict
36
+ "422":
37
+ $ref: ../components/responses.yaml#/UnprocessableEntity
38
+ x-error-codes:
39
+ - BAD_REQUEST
40
+ - UNAUTHORIZED
41
+ - FORBIDDEN
42
+ x-cli:
43
+ name: list
44
+ post:
45
+ operationId: createI18nProfile
46
+ summary: Create an i18n profile
47
+ description: |-
48
+ Create a locale profile. `name` is the stable handle (e.g. `fr:prod`).
49
+
50
+ **Use case:** Stand up a new locale before seeding its keys.
51
+ tags:
52
+ - Profiles
53
+ parameters:
54
+ - $ref: ../components/parameters.yaml#/ProjectId
55
+ requestBody:
56
+ required: true
57
+ content:
58
+ application/json:
59
+ schema:
60
+ $ref: ../components/schemas/i18n.yaml#/CreateI18nProfileRequest
61
+ example:
62
+ name: fr:prod
63
+ locales:
64
+ - fr
65
+ default_locale: fr
66
+ responses:
67
+ "201":
68
+ description: Create an i18n profile
69
+ content:
70
+ application/json:
71
+ schema:
72
+ $ref: ../components/schemas/i18n.yaml#/CreateI18nProfileResponse
73
+ example:
74
+ id: i18n_01j7w8a1b2c4
75
+ name: fr:prod
76
+ "400":
77
+ $ref: ../components/responses.yaml#/BadRequest
78
+ "401":
79
+ $ref: ../components/responses.yaml#/Unauthorized
80
+ "403":
81
+ $ref: ../components/responses.yaml#/Forbidden
82
+ "404":
83
+ $ref: ../components/responses.yaml#/NotFound
84
+ "409":
85
+ $ref: ../components/responses.yaml#/Conflict
86
+ "422":
87
+ $ref: ../components/responses.yaml#/UnprocessableEntity
88
+ x-error-codes:
89
+ - BAD_REQUEST
90
+ - UNAUTHORIZED
91
+ - FORBIDDEN
92
+ - ALREADY_EXISTS
93
+ - VALIDATION
94
+ x-cli:
95
+ name: create
96
+ /api/admin/i18n/keys:
97
+ get:
98
+ operationId: listI18nKeys
99
+ summary: List i18n keys
100
+ description: |-
101
+ List keys for a profile, optionally filtered to a name `prefix`.
102
+
103
+ **Use case:** Read the current keys (and values) for a profile — e.g. to diff before a push.
104
+ tags:
105
+ - Keys
106
+ parameters:
107
+ - $ref: ../components/parameters.yaml#/ProjectId
108
+ - name: profile_id
109
+ in: query
110
+ required: false
111
+ description: Profile id to list keys for.
112
+ schema:
113
+ type: string
114
+ - name: prefix
115
+ in: query
116
+ required: false
117
+ description: Only keys whose name starts with this.
118
+ schema:
119
+ type: string
120
+ - name: q
121
+ in: query
122
+ required: false
123
+ description: Free-text search — matches keys whose name OR value contains this substring (case-insensitive). Use it to find the key behind a piece of on-screen copy.
124
+ schema:
125
+ type: string
126
+ - name: limit
127
+ in: query
128
+ required: false
129
+ description: Max keys to return (1–500).
130
+ schema:
131
+ type: integer
132
+ minimum: 1
133
+ maximum: 500
134
+ responses:
135
+ "200":
136
+ description: List i18n keys
137
+ content:
138
+ application/json:
139
+ schema:
140
+ $ref: ../components/schemas/i18n.yaml#/ListI18nKeysResponse
141
+ example:
142
+ keys:
143
+ - id: key_01j7
144
+ key: checkout.cta
145
+ value: Buy now
146
+ "400":
147
+ $ref: ../components/responses.yaml#/BadRequest
148
+ "401":
149
+ $ref: ../components/responses.yaml#/Unauthorized
150
+ "403":
151
+ $ref: ../components/responses.yaml#/Forbidden
152
+ "404":
153
+ $ref: ../components/responses.yaml#/NotFound
154
+ "409":
155
+ $ref: ../components/responses.yaml#/Conflict
156
+ "422":
157
+ $ref: ../components/responses.yaml#/UnprocessableEntity
158
+ x-error-codes:
159
+ - BAD_REQUEST
160
+ - UNAUTHORIZED
161
+ - FORBIDDEN
162
+ x-cli:
163
+ name: list
164
+ post:
165
+ operationId: pushI18nKeys
166
+ summary: Push new i18n keys (insert-only)
167
+ description: |-
168
+ Add NEW keys to a profile. Insert-only — existing keys are left untouched (overwrite one with `updateI18nKey`).
169
+
170
+ **Use case:** Seed newly-extracted keys without clobbering translations already in the profile.
171
+ tags:
172
+ - Keys
173
+ parameters:
174
+ - $ref: ../components/parameters.yaml#/ProjectId
175
+ requestBody:
176
+ required: true
177
+ content:
178
+ application/json:
179
+ schema:
180
+ $ref: ../components/schemas/i18n.yaml#/PushI18nKeysRequest
181
+ example:
182
+ profile_id: i18n_01j7w8a1b2c3
183
+ keys:
184
+ - key: checkout.cta
185
+ value: Buy now
186
+ responses:
187
+ "201":
188
+ description: Push new i18n keys (insert-only)
189
+ content:
190
+ application/json:
191
+ schema:
192
+ $ref: ../components/schemas/i18n.yaml#/PushI18nKeysResponse
193
+ example:
194
+ added:
195
+ - checkout.cta
196
+ skipped: []
197
+ pushed_count: 1
198
+ skipped_count: 0
199
+ "400":
200
+ $ref: ../components/responses.yaml#/BadRequest
201
+ "401":
202
+ $ref: ../components/responses.yaml#/Unauthorized
203
+ "403":
204
+ $ref: ../components/responses.yaml#/Forbidden
205
+ "404":
206
+ $ref: ../components/responses.yaml#/NotFound
207
+ "409":
208
+ $ref: ../components/responses.yaml#/Conflict
209
+ "422":
210
+ $ref: ../components/responses.yaml#/UnprocessableEntity
211
+ x-error-codes:
212
+ - BAD_REQUEST
213
+ - UNAUTHORIZED
214
+ - FORBIDDEN
215
+ - ALREADY_EXISTS
216
+ - VALIDATION
217
+ x-cli:
218
+ name: push
219
+ /api/admin/i18n/keys/{id}:
220
+ put:
221
+ operationId: updateI18nKey
222
+ summary: Update one i18n key
223
+ description: |-
224
+ Overwrite a single existing key's value — the only overwrite path.
225
+
226
+ The change goes live on its own: the profile's KV snapshot is rebuilt and the CDN purged as part of this call, so no separate profile publish is needed.
227
+
228
+ **Use case:** Correct or re-translate a single string in place.
229
+ tags:
230
+ - Keys
231
+ parameters:
232
+ - $ref: ../components/parameters.yaml#/ProjectId
233
+ - name: id
234
+ in: path
235
+ required: true
236
+ description: The key's id.
237
+ schema:
238
+ type: string
239
+ requestBody:
240
+ required: true
241
+ content:
242
+ application/json:
243
+ schema:
244
+ $ref: ../components/schemas/i18n.yaml#/UpdateI18nKeyRequest
245
+ example:
246
+ value: Buy it now
247
+ responses:
248
+ "200":
249
+ description: Update one i18n key
250
+ content:
251
+ application/json:
252
+ schema:
253
+ $ref: ../components/schemas/i18n.yaml#/UpdateI18nKeyResponse
254
+ example:
255
+ id: key_01j7
256
+ "400":
257
+ $ref: ../components/responses.yaml#/BadRequest
258
+ "401":
259
+ $ref: ../components/responses.yaml#/Unauthorized
260
+ "403":
261
+ $ref: ../components/responses.yaml#/Forbidden
262
+ "404":
263
+ $ref: ../components/responses.yaml#/NotFound
264
+ "409":
265
+ $ref: ../components/responses.yaml#/Conflict
266
+ "422":
267
+ $ref: ../components/responses.yaml#/UnprocessableEntity
268
+ x-error-codes:
269
+ - BAD_REQUEST
270
+ - UNAUTHORIZED
271
+ - FORBIDDEN
272
+ - NOT_FOUND
273
+ - VALIDATION
274
+ x-cli:
275
+ name: update
276
+ positional:
277
+ - id
278
+ /api/admin/i18n/drafts:
279
+ get:
280
+ operationId: listI18nDrafts
281
+ summary: List translation drafts
282
+ description: |-
283
+ List staged translation drafts awaiting review/publish.
284
+
285
+ **Use case:** Review machine-translation drafts before publishing them to a locale.
286
+ tags:
287
+ - Drafts
288
+ parameters:
289
+ - $ref: ../components/parameters.yaml#/ProjectId
290
+ responses:
291
+ "200":
292
+ description: List translation drafts
293
+ content:
294
+ application/json:
295
+ schema:
296
+ $ref: ../components/schemas/i18n.yaml#/ListI18nDraftsResponse
297
+ example:
298
+ - id: draft_01j7
299
+ "400":
300
+ $ref: ../components/responses.yaml#/BadRequest
301
+ "401":
302
+ $ref: ../components/responses.yaml#/Unauthorized
303
+ "403":
304
+ $ref: ../components/responses.yaml#/Forbidden
305
+ "404":
306
+ $ref: ../components/responses.yaml#/NotFound
307
+ "409":
308
+ $ref: ../components/responses.yaml#/Conflict
309
+ "422":
310
+ $ref: ../components/responses.yaml#/UnprocessableEntity
311
+ x-error-codes:
312
+ - BAD_REQUEST
313
+ - UNAUTHORIZED
314
+ - FORBIDDEN
315
+ x-cli:
316
+ name: list
317
+ post:
318
+ operationId: createI18nDraft
319
+ summary: Create a translation draft
320
+ description: |-
321
+ Stage a new translation draft against a target profile, optionally seeding its keys from a source profile.
322
+
323
+ **Use case:** Open a machine-translation draft for review before publishing it to a locale.
324
+ tags:
325
+ - Drafts
326
+ parameters:
327
+ - $ref: ../components/parameters.yaml#/ProjectId
328
+ requestBody:
329
+ required: true
330
+ content:
331
+ application/json:
332
+ schema:
333
+ $ref: ../components/schemas/i18n.yaml#/CreateI18nDraftRequest
334
+ example:
335
+ name: fr:prod
336
+ profile_id: 3f1a6c2e-1b2c-4d5e-8f90-0a1b2c3d4e5f
337
+ responses:
338
+ "200":
339
+ description: Create a translation draft
340
+ content:
341
+ application/json:
342
+ schema:
343
+ $ref: ../components/schemas/i18n.yaml#/CreateI18nDraftResponse
344
+ example:
345
+ id: draft_01j7
346
+ name: fr:prod
347
+ profileId: 3f1a6c2e-1b2c-4d5e-8f90-0a1b2c3d4e5f
348
+ status: open
349
+ "400":
350
+ $ref: ../components/responses.yaml#/BadRequest
351
+ "401":
352
+ $ref: ../components/responses.yaml#/Unauthorized
353
+ "403":
354
+ $ref: ../components/responses.yaml#/Forbidden
355
+ "404":
356
+ $ref: ../components/responses.yaml#/NotFound
357
+ "409":
358
+ $ref: ../components/responses.yaml#/Conflict
359
+ "422":
360
+ $ref: ../components/responses.yaml#/UnprocessableEntity
361
+ x-error-codes:
362
+ - BAD_REQUEST
363
+ - UNAUTHORIZED
364
+ - FORBIDDEN
365
+ - NOT_FOUND
366
+ - VALIDATION
367
+ x-cli:
368
+ name: create
369
+ /api/admin/i18n/drafts/{draftId}:
370
+ patch:
371
+ operationId: updateI18nDraft
372
+ summary: Update a translation draft
373
+ description: |-
374
+ Transition a draft's lifecycle state (`open` / `merged` / `abandoned`).
375
+
376
+ **Use case:** Mark a reviewed draft as merged, or abandon one that should not ship.
377
+ tags:
378
+ - Drafts
379
+ parameters:
380
+ - $ref: ../components/parameters.yaml#/ProjectId
381
+ - name: draftId
382
+ in: path
383
+ required: true
384
+ description: The draft id to update.
385
+ schema:
386
+ type: string
387
+ requestBody:
388
+ required: true
389
+ content:
390
+ application/json:
391
+ schema:
392
+ $ref: ../components/schemas/i18n.yaml#/UpdateI18nDraftRequest
393
+ example:
394
+ status: merged
395
+ responses:
396
+ "200":
397
+ description: Update a translation draft
398
+ content:
399
+ application/json:
400
+ schema:
401
+ $ref: ../components/schemas/i18n.yaml#/UpdateI18nDraftResponse
402
+ example:
403
+ id: draft_01j7
404
+ status: merged
405
+ "400":
406
+ $ref: ../components/responses.yaml#/BadRequest
407
+ "401":
408
+ $ref: ../components/responses.yaml#/Unauthorized
409
+ "403":
410
+ $ref: ../components/responses.yaml#/Forbidden
411
+ "404":
412
+ $ref: ../components/responses.yaml#/NotFound
413
+ "409":
414
+ $ref: ../components/responses.yaml#/Conflict
415
+ "422":
416
+ $ref: ../components/responses.yaml#/UnprocessableEntity
417
+ x-error-codes:
418
+ - BAD_REQUEST
419
+ - UNAUTHORIZED
420
+ - FORBIDDEN
421
+ - NOT_FOUND
422
+ - VALIDATION
423
+ x-cli:
424
+ name: update
425
+ positional:
426
+ - draftId
427
+ /api/admin/i18n/profiles/{profileId}/publish:
428
+ post:
429
+ operationId: publishI18nProfile
430
+ summary: Publish a profile live
431
+ description: |-
432
+ Publish a profile to the CDN — rebuild its KV snapshot + purge the edge. Publishing is PROFILE-WIDE: the whole profile is snapshotted into one KV blob, so the optional `chunk` in the body is an audit label only (it does not scope what ships).
433
+
434
+ **Use case:** Ship the latest translations live after pushing/updating keys.
435
+ tags:
436
+ - Profiles
437
+ parameters:
438
+ - $ref: ../components/parameters.yaml#/ProjectId
439
+ - name: profileId
440
+ in: path
441
+ required: true
442
+ description: The profile id to publish.
443
+ schema:
444
+ type: string
445
+ requestBody:
446
+ required: true
447
+ content:
448
+ application/json:
449
+ schema:
450
+ $ref: ../components/schemas/i18n.yaml#/PublishI18nProfileRequest
451
+ example:
452
+ chunk: default
453
+ responses:
454
+ "201":
455
+ description: Publish a profile chunk
456
+ content:
457
+ application/json:
458
+ schema:
459
+ $ref: ../components/schemas/i18n.yaml#/PublishI18nProfileResponse
460
+ example:
461
+ ok: true
462
+ "400":
463
+ $ref: ../components/responses.yaml#/BadRequest
464
+ "401":
465
+ $ref: ../components/responses.yaml#/Unauthorized
466
+ "403":
467
+ $ref: ../components/responses.yaml#/Forbidden
468
+ "404":
469
+ $ref: ../components/responses.yaml#/NotFound
470
+ "409":
471
+ $ref: ../components/responses.yaml#/Conflict
472
+ "422":
473
+ $ref: ../components/responses.yaml#/UnprocessableEntity
474
+ x-error-codes:
475
+ - BAD_REQUEST
476
+ - UNAUTHORIZED
477
+ - FORBIDDEN
478
+ - NOT_FOUND
479
+ - VALIDATION
480
+ x-cli:
481
+ name: publish
482
+ positional:
483
+ - profileId
484
+ /api/admin/i18n/set:
485
+ post:
486
+ operationId: setI18nLabel
487
+ summary: Set a key's value and publish it live
488
+ description: |-
489
+ Upsert a single key's value into a profile and immediately publish the whole profile (KV rebuild + CDN purge) so the new value is live in one call. The key is inserted when new and overwritten when it already exists. `profile` is a profile name — omit it to target the project's default-marked profile, or pass a name to target another locale.
490
+
491
+ **Use case:** Correct or replace one live string and ship it without a separate `push` + `publish`.
492
+ tags:
493
+ - Keys
494
+ parameters:
495
+ - $ref: ../components/parameters.yaml#/ProjectId
496
+ requestBody:
497
+ required: true
498
+ content:
499
+ application/json:
500
+ schema:
501
+ $ref: ../components/schemas/i18n.yaml#/SetI18nLabelRequest
502
+ example:
503
+ key: home.cta
504
+ value: Get started
505
+ responses:
506
+ "200":
507
+ description: Set a key's value and publish it live
508
+ content:
509
+ application/json:
510
+ schema:
511
+ $ref: ../components/schemas/i18n.yaml#/SetI18nLabelResponse
512
+ example:
513
+ ok: true
514
+ profile: en:prod
515
+ key: home.cta
516
+ value: Get started
517
+ version: "7"
518
+ key_count: 42
519
+ changed: true
520
+ purged: purged
521
+ kv_verified: true
522
+ "400":
523
+ $ref: ../components/responses.yaml#/BadRequest
524
+ "401":
525
+ $ref: ../components/responses.yaml#/Unauthorized
526
+ "403":
527
+ $ref: ../components/responses.yaml#/Forbidden
528
+ "404":
529
+ $ref: ../components/responses.yaml#/NotFound
530
+ "409":
531
+ $ref: ../components/responses.yaml#/Conflict
532
+ "422":
533
+ $ref: ../components/responses.yaml#/UnprocessableEntity
534
+ x-error-codes:
535
+ - BAD_REQUEST
536
+ - UNAUTHORIZED
537
+ - FORBIDDEN
538
+ - NOT_FOUND
539
+ - VALIDATION
540
+ x-cli:
541
+ name: set
542
+ positional:
543
+ - key
544
+ - value