skooma 0.3.6 → 0.3.7

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.
@@ -0,0 +1,1666 @@
1
+ {
2
+ "$id": "https://spec.openapis.org/oas/3.2/schema/2025-09-17",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "description": "The description of OpenAPI v3.2.x Documents without Schema Object validation",
5
+ "type": "object",
6
+ "properties": {
7
+ "openapi": {
8
+ "type": "string",
9
+ "pattern": "^3\\.2\\.\\d+(-.+)?$"
10
+ },
11
+ "$self": {
12
+ "type": "string",
13
+ "format": "uri-reference",
14
+ "$comment": "MUST NOT contain a fragment",
15
+ "pattern": "^[^#]*$"
16
+ },
17
+ "info": {
18
+ "$ref": "#/$defs/info"
19
+ },
20
+ "jsonSchemaDialect": {
21
+ "type": "string",
22
+ "format": "uri-reference",
23
+ "default": "https://spec.openapis.org/oas/3.2/dialect/2025-09-17"
24
+ },
25
+ "servers": {
26
+ "type": "array",
27
+ "items": {
28
+ "$ref": "#/$defs/server"
29
+ },
30
+ "default": [
31
+ {
32
+ "url": "/"
33
+ }
34
+ ]
35
+ },
36
+ "paths": {
37
+ "$ref": "#/$defs/paths"
38
+ },
39
+ "webhooks": {
40
+ "type": "object",
41
+ "additionalProperties": {
42
+ "$ref": "#/$defs/path-item"
43
+ }
44
+ },
45
+ "components": {
46
+ "$ref": "#/$defs/components"
47
+ },
48
+ "security": {
49
+ "type": "array",
50
+ "items": {
51
+ "$ref": "#/$defs/security-requirement"
52
+ }
53
+ },
54
+ "tags": {
55
+ "type": "array",
56
+ "items": {
57
+ "$ref": "#/$defs/tag"
58
+ }
59
+ },
60
+ "externalDocs": {
61
+ "$ref": "#/$defs/external-documentation"
62
+ }
63
+ },
64
+ "required": [
65
+ "openapi",
66
+ "info"
67
+ ],
68
+ "anyOf": [
69
+ {
70
+ "required": [
71
+ "paths"
72
+ ]
73
+ },
74
+ {
75
+ "required": [
76
+ "components"
77
+ ]
78
+ },
79
+ {
80
+ "required": [
81
+ "webhooks"
82
+ ]
83
+ }
84
+ ],
85
+ "$ref": "#/$defs/specification-extensions",
86
+ "unevaluatedProperties": false,
87
+ "$defs": {
88
+ "info": {
89
+ "$comment": "https://spec.openapis.org/oas/v3.2#info-object",
90
+ "type": "object",
91
+ "properties": {
92
+ "title": {
93
+ "type": "string"
94
+ },
95
+ "summary": {
96
+ "type": "string"
97
+ },
98
+ "description": {
99
+ "type": "string"
100
+ },
101
+ "termsOfService": {
102
+ "type": "string",
103
+ "format": "uri-reference"
104
+ },
105
+ "contact": {
106
+ "$ref": "#/$defs/contact"
107
+ },
108
+ "license": {
109
+ "$ref": "#/$defs/license"
110
+ },
111
+ "version": {
112
+ "type": "string"
113
+ }
114
+ },
115
+ "required": [
116
+ "title",
117
+ "version"
118
+ ],
119
+ "$ref": "#/$defs/specification-extensions",
120
+ "unevaluatedProperties": false
121
+ },
122
+ "contact": {
123
+ "$comment": "https://spec.openapis.org/oas/v3.2#contact-object",
124
+ "type": "object",
125
+ "properties": {
126
+ "name": {
127
+ "type": "string"
128
+ },
129
+ "url": {
130
+ "type": "string",
131
+ "format": "uri-reference"
132
+ },
133
+ "email": {
134
+ "type": "string",
135
+ "format": "email"
136
+ }
137
+ },
138
+ "$ref": "#/$defs/specification-extensions",
139
+ "unevaluatedProperties": false
140
+ },
141
+ "license": {
142
+ "$comment": "https://spec.openapis.org/oas/v3.2#license-object",
143
+ "type": "object",
144
+ "properties": {
145
+ "name": {
146
+ "type": "string"
147
+ },
148
+ "identifier": {
149
+ "type": "string"
150
+ },
151
+ "url": {
152
+ "type": "string",
153
+ "format": "uri-reference"
154
+ }
155
+ },
156
+ "required": [
157
+ "name"
158
+ ],
159
+ "dependentSchemas": {
160
+ "identifier": {
161
+ "not": {
162
+ "required": [
163
+ "url"
164
+ ]
165
+ }
166
+ }
167
+ },
168
+ "$ref": "#/$defs/specification-extensions",
169
+ "unevaluatedProperties": false
170
+ },
171
+ "server": {
172
+ "$comment": "https://spec.openapis.org/oas/v3.2#server-object",
173
+ "type": "object",
174
+ "properties": {
175
+ "url": {
176
+ "type": "string"
177
+ },
178
+ "description": {
179
+ "type": "string"
180
+ },
181
+ "name": {
182
+ "type": "string"
183
+ },
184
+ "variables": {
185
+ "type": "object",
186
+ "additionalProperties": {
187
+ "$ref": "#/$defs/server-variable"
188
+ }
189
+ }
190
+ },
191
+ "required": [
192
+ "url"
193
+ ],
194
+ "$ref": "#/$defs/specification-extensions",
195
+ "unevaluatedProperties": false
196
+ },
197
+ "server-variable": {
198
+ "$comment": "https://spec.openapis.org/oas/v3.2#server-variable-object",
199
+ "type": "object",
200
+ "properties": {
201
+ "enum": {
202
+ "type": "array",
203
+ "items": {
204
+ "type": "string"
205
+ },
206
+ "minItems": 1
207
+ },
208
+ "default": {
209
+ "type": "string"
210
+ },
211
+ "description": {
212
+ "type": "string"
213
+ }
214
+ },
215
+ "required": [
216
+ "default"
217
+ ],
218
+ "$ref": "#/$defs/specification-extensions",
219
+ "unevaluatedProperties": false
220
+ },
221
+ "components": {
222
+ "$comment": "https://spec.openapis.org/oas/v3.2#components-object",
223
+ "type": "object",
224
+ "properties": {
225
+ "schemas": {
226
+ "type": "object",
227
+ "additionalProperties": {
228
+ "$dynamicRef": "#meta"
229
+ }
230
+ },
231
+ "responses": {
232
+ "type": "object",
233
+ "additionalProperties": {
234
+ "$ref": "#/$defs/response-or-reference"
235
+ }
236
+ },
237
+ "parameters": {
238
+ "type": "object",
239
+ "additionalProperties": {
240
+ "$ref": "#/$defs/parameter-or-reference"
241
+ }
242
+ },
243
+ "examples": {
244
+ "type": "object",
245
+ "additionalProperties": {
246
+ "$ref": "#/$defs/example-or-reference"
247
+ }
248
+ },
249
+ "requestBodies": {
250
+ "type": "object",
251
+ "additionalProperties": {
252
+ "$ref": "#/$defs/request-body-or-reference"
253
+ }
254
+ },
255
+ "headers": {
256
+ "type": "object",
257
+ "additionalProperties": {
258
+ "$ref": "#/$defs/header-or-reference"
259
+ }
260
+ },
261
+ "securitySchemes": {
262
+ "type": "object",
263
+ "additionalProperties": {
264
+ "$ref": "#/$defs/security-scheme-or-reference"
265
+ }
266
+ },
267
+ "links": {
268
+ "type": "object",
269
+ "additionalProperties": {
270
+ "$ref": "#/$defs/link-or-reference"
271
+ }
272
+ },
273
+ "callbacks": {
274
+ "type": "object",
275
+ "additionalProperties": {
276
+ "$ref": "#/$defs/callbacks-or-reference"
277
+ }
278
+ },
279
+ "pathItems": {
280
+ "type": "object",
281
+ "additionalProperties": {
282
+ "$ref": "#/$defs/path-item"
283
+ }
284
+ },
285
+ "mediaTypes": {
286
+ "type": "object",
287
+ "additionalProperties": {
288
+ "$ref": "#/$defs/media-type-or-reference"
289
+ }
290
+ }
291
+ },
292
+ "patternProperties": {
293
+ "^(?:schemas|responses|parameters|examples|requestBodies|headers|securitySchemes|links|callbacks|pathItems|mediaTypes)$": {
294
+ "$comment": "Enumerating all of the property names in the regex above is necessary for unevaluatedProperties to work as expected",
295
+ "propertyNames": {
296
+ "pattern": "^[a-zA-Z0-9._-]+$"
297
+ }
298
+ }
299
+ },
300
+ "$ref": "#/$defs/specification-extensions",
301
+ "unevaluatedProperties": false
302
+ },
303
+ "paths": {
304
+ "$comment": "https://spec.openapis.org/oas/v3.2#paths-object",
305
+ "type": "object",
306
+ "patternProperties": {
307
+ "^/": {
308
+ "$ref": "#/$defs/path-item"
309
+ }
310
+ },
311
+ "$ref": "#/$defs/specification-extensions",
312
+ "unevaluatedProperties": false
313
+ },
314
+ "path-item": {
315
+ "$comment": "https://spec.openapis.org/oas/v3.2#path-item-object",
316
+ "type": "object",
317
+ "properties": {
318
+ "$ref": {
319
+ "type": "string",
320
+ "format": "uri-reference"
321
+ },
322
+ "summary": {
323
+ "type": "string"
324
+ },
325
+ "description": {
326
+ "type": "string"
327
+ },
328
+ "servers": {
329
+ "type": "array",
330
+ "items": {
331
+ "$ref": "#/$defs/server"
332
+ }
333
+ },
334
+ "parameters": {
335
+ "$ref": "#/$defs/parameters"
336
+ },
337
+ "additionalOperations": {
338
+ "type": "object",
339
+ "additionalProperties": {
340
+ "$ref": "#/$defs/operation"
341
+ },
342
+ "propertyNames": {
343
+ "$comment": "RFC9110 restricts methods to \"1*tchar\" in ABNF",
344
+ "pattern": "^[a-zA-Z0-9!#$%&'*+.^_`|~-]+$",
345
+ "not": {
346
+ "enum": [
347
+ "GET",
348
+ "PUT",
349
+ "POST",
350
+ "DELETE",
351
+ "OPTIONS",
352
+ "HEAD",
353
+ "PATCH",
354
+ "TRACE",
355
+ "QUERY"
356
+ ]
357
+ }
358
+ }
359
+ },
360
+ "get": {
361
+ "$ref": "#/$defs/operation"
362
+ },
363
+ "put": {
364
+ "$ref": "#/$defs/operation"
365
+ },
366
+ "post": {
367
+ "$ref": "#/$defs/operation"
368
+ },
369
+ "delete": {
370
+ "$ref": "#/$defs/operation"
371
+ },
372
+ "options": {
373
+ "$ref": "#/$defs/operation"
374
+ },
375
+ "head": {
376
+ "$ref": "#/$defs/operation"
377
+ },
378
+ "patch": {
379
+ "$ref": "#/$defs/operation"
380
+ },
381
+ "trace": {
382
+ "$ref": "#/$defs/operation"
383
+ },
384
+ "query": {
385
+ "$ref": "#/$defs/operation"
386
+ }
387
+ },
388
+ "$ref": "#/$defs/specification-extensions",
389
+ "unevaluatedProperties": false
390
+ },
391
+ "operation": {
392
+ "$comment": "https://spec.openapis.org/oas/v3.2#operation-object",
393
+ "type": "object",
394
+ "properties": {
395
+ "tags": {
396
+ "type": "array",
397
+ "items": {
398
+ "type": "string"
399
+ }
400
+ },
401
+ "summary": {
402
+ "type": "string"
403
+ },
404
+ "description": {
405
+ "type": "string"
406
+ },
407
+ "externalDocs": {
408
+ "$ref": "#/$defs/external-documentation"
409
+ },
410
+ "operationId": {
411
+ "type": "string"
412
+ },
413
+ "parameters": {
414
+ "$ref": "#/$defs/parameters"
415
+ },
416
+ "requestBody": {
417
+ "$ref": "#/$defs/request-body-or-reference"
418
+ },
419
+ "responses": {
420
+ "$ref": "#/$defs/responses"
421
+ },
422
+ "callbacks": {
423
+ "type": "object",
424
+ "additionalProperties": {
425
+ "$ref": "#/$defs/callbacks-or-reference"
426
+ }
427
+ },
428
+ "deprecated": {
429
+ "default": false,
430
+ "type": "boolean"
431
+ },
432
+ "security": {
433
+ "type": "array",
434
+ "items": {
435
+ "$ref": "#/$defs/security-requirement"
436
+ }
437
+ },
438
+ "servers": {
439
+ "type": "array",
440
+ "items": {
441
+ "$ref": "#/$defs/server"
442
+ }
443
+ }
444
+ },
445
+ "$ref": "#/$defs/specification-extensions",
446
+ "unevaluatedProperties": false
447
+ },
448
+ "external-documentation": {
449
+ "$comment": "https://spec.openapis.org/oas/v3.2#external-documentation-object",
450
+ "type": "object",
451
+ "properties": {
452
+ "description": {
453
+ "type": "string"
454
+ },
455
+ "url": {
456
+ "type": "string",
457
+ "format": "uri-reference"
458
+ }
459
+ },
460
+ "required": [
461
+ "url"
462
+ ],
463
+ "$ref": "#/$defs/specification-extensions",
464
+ "unevaluatedProperties": false
465
+ },
466
+ "parameters": {
467
+ "type": "array",
468
+ "items": {
469
+ "$ref": "#/$defs/parameter-or-reference"
470
+ },
471
+ "not": {
472
+ "allOf": [
473
+ {
474
+ "contains": {
475
+ "type": "object",
476
+ "properties": {
477
+ "in": {
478
+ "const": "query"
479
+ }
480
+ },
481
+ "required": [
482
+ "in"
483
+ ]
484
+ }
485
+ },
486
+ {
487
+ "contains": {
488
+ "type": "object",
489
+ "properties": {
490
+ "in": {
491
+ "const": "querystring"
492
+ }
493
+ },
494
+ "required": [
495
+ "in"
496
+ ]
497
+ }
498
+ }
499
+ ]
500
+ },
501
+ "contains": {
502
+ "type": "object",
503
+ "properties": {
504
+ "in": {
505
+ "const": "querystring"
506
+ }
507
+ },
508
+ "required": [
509
+ "in"
510
+ ]
511
+ },
512
+ "minContains": 0,
513
+ "maxContains": 1
514
+ },
515
+ "parameter": {
516
+ "$comment": "https://spec.openapis.org/oas/v3.2#parameter-object",
517
+ "type": "object",
518
+ "properties": {
519
+ "name": {
520
+ "type": "string"
521
+ },
522
+ "in": {
523
+ "enum": [
524
+ "query",
525
+ "querystring",
526
+ "header",
527
+ "path",
528
+ "cookie"
529
+ ]
530
+ },
531
+ "description": {
532
+ "type": "string"
533
+ },
534
+ "required": {
535
+ "default": false,
536
+ "type": "boolean"
537
+ },
538
+ "deprecated": {
539
+ "default": false,
540
+ "type": "boolean"
541
+ },
542
+ "schema": {
543
+ "$dynamicRef": "#meta"
544
+ },
545
+ "content": {
546
+ "$ref": "#/$defs/content",
547
+ "minProperties": 1,
548
+ "maxProperties": 1
549
+ }
550
+ },
551
+ "required": [
552
+ "name",
553
+ "in"
554
+ ],
555
+ "oneOf": [
556
+ {
557
+ "required": [
558
+ "schema"
559
+ ]
560
+ },
561
+ {
562
+ "required": [
563
+ "content"
564
+ ]
565
+ }
566
+ ],
567
+ "allOf": [
568
+ {
569
+ "$ref": "#/$defs/examples"
570
+ },
571
+ {
572
+ "$ref": "#/$defs/specification-extensions"
573
+ },
574
+ {
575
+ "if": {
576
+ "properties": {
577
+ "in": {
578
+ "const": "query"
579
+ }
580
+ }
581
+ },
582
+ "then": {
583
+ "properties": {
584
+ "allowEmptyValue": {
585
+ "default": false,
586
+ "type": "boolean"
587
+ }
588
+ }
589
+ }
590
+ },
591
+ {
592
+ "if": {
593
+ "properties": {
594
+ "in": {
595
+ "const": "querystring"
596
+ }
597
+ }
598
+ },
599
+ "then": {
600
+ "required": [
601
+ "content"
602
+ ]
603
+ }
604
+ }
605
+ ],
606
+ "dependentSchemas": {
607
+ "schema": {
608
+ "properties": {
609
+ "style": {
610
+ "type": "string"
611
+ },
612
+ "explode": {
613
+ "type": "boolean"
614
+ },
615
+ "allowReserved": {
616
+ "default": false,
617
+ "type": "boolean"
618
+ }
619
+ },
620
+ "allOf": [
621
+ {
622
+ "$ref": "#/$defs/parameter/dependentSchemas/schema/$defs/styles-for-path"
623
+ },
624
+ {
625
+ "$ref": "#/$defs/parameter/dependentSchemas/schema/$defs/styles-for-header"
626
+ },
627
+ {
628
+ "$ref": "#/$defs/parameter/dependentSchemas/schema/$defs/styles-for-query"
629
+ },
630
+ {
631
+ "$ref": "#/$defs/parameter/dependentSchemas/schema/$defs/styles-for-cookie"
632
+ },
633
+ {
634
+ "$ref": "#/$defs/styles-for-form"
635
+ }
636
+ ],
637
+ "$defs": {
638
+ "styles-for-path": {
639
+ "if": {
640
+ "properties": {
641
+ "in": {
642
+ "const": "path"
643
+ }
644
+ }
645
+ },
646
+ "then": {
647
+ "properties": {
648
+ "style": {
649
+ "default": "simple",
650
+ "enum": [
651
+ "matrix",
652
+ "label",
653
+ "simple"
654
+ ]
655
+ },
656
+ "required": {
657
+ "const": true
658
+ }
659
+ },
660
+ "required": [
661
+ "required"
662
+ ]
663
+ }
664
+ },
665
+ "styles-for-header": {
666
+ "if": {
667
+ "properties": {
668
+ "in": {
669
+ "const": "header"
670
+ }
671
+ }
672
+ },
673
+ "then": {
674
+ "properties": {
675
+ "style": {
676
+ "default": "simple",
677
+ "const": "simple"
678
+ }
679
+ }
680
+ }
681
+ },
682
+ "styles-for-query": {
683
+ "if": {
684
+ "properties": {
685
+ "in": {
686
+ "const": "query"
687
+ }
688
+ }
689
+ },
690
+ "then": {
691
+ "properties": {
692
+ "style": {
693
+ "default": "form",
694
+ "enum": [
695
+ "form",
696
+ "spaceDelimited",
697
+ "pipeDelimited",
698
+ "deepObject"
699
+ ]
700
+ }
701
+ }
702
+ }
703
+ },
704
+ "styles-for-cookie": {
705
+ "if": {
706
+ "properties": {
707
+ "in": {
708
+ "const": "cookie"
709
+ }
710
+ }
711
+ },
712
+ "then": {
713
+ "properties": {
714
+ "style": {
715
+ "default": "form",
716
+ "enum": [
717
+ "form",
718
+ "cookie"
719
+ ]
720
+ }
721
+ }
722
+ }
723
+ }
724
+ }
725
+ }
726
+ },
727
+ "unevaluatedProperties": false
728
+ },
729
+ "parameter-or-reference": {
730
+ "if": {
731
+ "type": "object",
732
+ "required": [
733
+ "$ref"
734
+ ]
735
+ },
736
+ "then": {
737
+ "$ref": "#/$defs/reference"
738
+ },
739
+ "else": {
740
+ "$ref": "#/$defs/parameter"
741
+ }
742
+ },
743
+ "request-body": {
744
+ "$comment": "https://spec.openapis.org/oas/v3.2#request-body-object",
745
+ "type": "object",
746
+ "properties": {
747
+ "description": {
748
+ "type": "string"
749
+ },
750
+ "content": {
751
+ "$ref": "#/$defs/content"
752
+ },
753
+ "required": {
754
+ "default": false,
755
+ "type": "boolean"
756
+ }
757
+ },
758
+ "required": [
759
+ "content"
760
+ ],
761
+ "$ref": "#/$defs/specification-extensions",
762
+ "unevaluatedProperties": false
763
+ },
764
+ "request-body-or-reference": {
765
+ "if": {
766
+ "type": "object",
767
+ "required": [
768
+ "$ref"
769
+ ]
770
+ },
771
+ "then": {
772
+ "$ref": "#/$defs/reference"
773
+ },
774
+ "else": {
775
+ "$ref": "#/$defs/request-body"
776
+ }
777
+ },
778
+ "content": {
779
+ "$comment": "https://spec.openapis.org/oas/v3.2#fixed-fields-10",
780
+ "type": "object",
781
+ "additionalProperties": {
782
+ "$ref": "#/$defs/media-type-or-reference"
783
+ },
784
+ "propertyNames": {
785
+ "format": "media-range"
786
+ }
787
+ },
788
+ "media-type": {
789
+ "$comment": "https://spec.openapis.org/oas/v3.2#media-type-object",
790
+ "type": "object",
791
+ "properties": {
792
+ "description": {
793
+ "type": "string"
794
+ },
795
+ "schema": {
796
+ "$dynamicRef": "#meta"
797
+ },
798
+ "itemSchema": {
799
+ "$dynamicRef": "#meta"
800
+ },
801
+ "encoding": {
802
+ "type": "object",
803
+ "additionalProperties": {
804
+ "$ref": "#/$defs/encoding"
805
+ }
806
+ },
807
+ "prefixEncoding": {
808
+ "type": "array",
809
+ "items": {
810
+ "$ref": "#/$defs/encoding"
811
+ }
812
+ },
813
+ "itemEncoding": {
814
+ "$ref": "#/$defs/encoding"
815
+ }
816
+ },
817
+ "dependentSchemas": {
818
+ "encoding": {
819
+ "properties": {
820
+ "prefixEncoding": false,
821
+ "itemEncoding": false
822
+ }
823
+ }
824
+ },
825
+ "allOf": [
826
+ {
827
+ "$ref": "#/$defs/examples"
828
+ },
829
+ {
830
+ "$ref": "#/$defs/specification-extensions"
831
+ }
832
+ ],
833
+ "unevaluatedProperties": false
834
+ },
835
+ "media-type-or-reference": {
836
+ "if": {
837
+ "type": "object",
838
+ "required": [
839
+ "$ref"
840
+ ]
841
+ },
842
+ "then": {
843
+ "$ref": "#/$defs/reference"
844
+ },
845
+ "else": {
846
+ "$ref": "#/$defs/media-type"
847
+ }
848
+ },
849
+ "encoding": {
850
+ "$comment": "https://spec.openapis.org/oas/v3.2#encoding-object",
851
+ "type": "object",
852
+ "properties": {
853
+ "contentType": {
854
+ "type": "string",
855
+ "format": "media-range"
856
+ },
857
+ "headers": {
858
+ "type": "object",
859
+ "additionalProperties": {
860
+ "$ref": "#/$defs/header-or-reference"
861
+ }
862
+ },
863
+ "style": {
864
+ "enum": [
865
+ "form",
866
+ "spaceDelimited",
867
+ "pipeDelimited",
868
+ "deepObject"
869
+ ]
870
+ },
871
+ "explode": {
872
+ "type": "boolean"
873
+ },
874
+ "allowReserved": {
875
+ "type": "boolean"
876
+ },
877
+ "encoding": {
878
+ "type": "object",
879
+ "additionalProperties": {
880
+ "$ref": "#/$defs/encoding"
881
+ }
882
+ },
883
+ "prefixEncoding": {
884
+ "type": "array",
885
+ "items": {
886
+ "$ref": "#/$defs/encoding"
887
+ }
888
+ },
889
+ "itemEncoding": {
890
+ "$ref": "#/$defs/encoding"
891
+ }
892
+ },
893
+ "dependentSchemas": {
894
+ "encoding": {
895
+ "properties": {
896
+ "prefixEncoding": false,
897
+ "itemEncoding": false
898
+ }
899
+ },
900
+ "style": {
901
+ "properties": {
902
+ "allowReserved": {
903
+ "default": false
904
+ }
905
+ }
906
+ },
907
+ "explode": {
908
+ "properties": {
909
+ "style": {
910
+ "default": "form"
911
+ },
912
+ "allowReserved": {
913
+ "default": false
914
+ }
915
+ }
916
+ },
917
+ "allowReserved": {
918
+ "properties": {
919
+ "style": {
920
+ "default": "form"
921
+ }
922
+ }
923
+ }
924
+ },
925
+ "allOf": [
926
+ {
927
+ "$ref": "#/$defs/specification-extensions"
928
+ },
929
+ {
930
+ "$ref": "#/$defs/styles-for-form"
931
+ }
932
+ ],
933
+ "unevaluatedProperties": false
934
+ },
935
+ "responses": {
936
+ "$comment": "https://spec.openapis.org/oas/v3.2#responses-object",
937
+ "type": "object",
938
+ "properties": {
939
+ "default": {
940
+ "$ref": "#/$defs/response-or-reference"
941
+ }
942
+ },
943
+ "patternProperties": {
944
+ "^[1-5](?:[0-9]{2}|XX)$": {
945
+ "$ref": "#/$defs/response-or-reference"
946
+ }
947
+ },
948
+ "minProperties": 1,
949
+ "$ref": "#/$defs/specification-extensions",
950
+ "unevaluatedProperties": false,
951
+ "if": {
952
+ "$comment": "either default, or at least one response code property must exist",
953
+ "patternProperties": {
954
+ "^[1-5](?:[0-9]{2}|XX)$": false
955
+ }
956
+ },
957
+ "then": {
958
+ "required": [
959
+ "default"
960
+ ]
961
+ }
962
+ },
963
+ "response": {
964
+ "$comment": "https://spec.openapis.org/oas/v3.2#response-object",
965
+ "type": "object",
966
+ "properties": {
967
+ "summary": {
968
+ "type": "string"
969
+ },
970
+ "description": {
971
+ "type": "string"
972
+ },
973
+ "headers": {
974
+ "type": "object",
975
+ "additionalProperties": {
976
+ "$ref": "#/$defs/header-or-reference"
977
+ }
978
+ },
979
+ "content": {
980
+ "$ref": "#/$defs/content"
981
+ },
982
+ "links": {
983
+ "type": "object",
984
+ "additionalProperties": {
985
+ "$ref": "#/$defs/link-or-reference"
986
+ }
987
+ }
988
+ },
989
+ "$ref": "#/$defs/specification-extensions",
990
+ "unevaluatedProperties": false
991
+ },
992
+ "response-or-reference": {
993
+ "if": {
994
+ "type": "object",
995
+ "required": [
996
+ "$ref"
997
+ ]
998
+ },
999
+ "then": {
1000
+ "$ref": "#/$defs/reference"
1001
+ },
1002
+ "else": {
1003
+ "$ref": "#/$defs/response"
1004
+ }
1005
+ },
1006
+ "callbacks": {
1007
+ "$comment": "https://spec.openapis.org/oas/v3.2#callback-object",
1008
+ "type": "object",
1009
+ "$ref": "#/$defs/specification-extensions",
1010
+ "additionalProperties": {
1011
+ "$ref": "#/$defs/path-item"
1012
+ }
1013
+ },
1014
+ "callbacks-or-reference": {
1015
+ "if": {
1016
+ "type": "object",
1017
+ "required": [
1018
+ "$ref"
1019
+ ]
1020
+ },
1021
+ "then": {
1022
+ "$ref": "#/$defs/reference"
1023
+ },
1024
+ "else": {
1025
+ "$ref": "#/$defs/callbacks"
1026
+ }
1027
+ },
1028
+ "example": {
1029
+ "$comment": "https://spec.openapis.org/oas/v3.2#example-object",
1030
+ "type": "object",
1031
+ "properties": {
1032
+ "summary": {
1033
+ "type": "string"
1034
+ },
1035
+ "description": {
1036
+ "type": "string"
1037
+ },
1038
+ "dataValue": true,
1039
+ "serializedValue": {
1040
+ "type": "string"
1041
+ },
1042
+ "value": true,
1043
+ "externalValue": {
1044
+ "type": "string",
1045
+ "format": "uri-reference"
1046
+ }
1047
+ },
1048
+ "allOf": [
1049
+ {
1050
+ "not": {
1051
+ "required": [
1052
+ "value",
1053
+ "externalValue"
1054
+ ]
1055
+ }
1056
+ },
1057
+ {
1058
+ "not": {
1059
+ "required": [
1060
+ "value",
1061
+ "dataValue"
1062
+ ]
1063
+ }
1064
+ },
1065
+ {
1066
+ "not": {
1067
+ "required": [
1068
+ "value",
1069
+ "serializedValue"
1070
+ ]
1071
+ }
1072
+ },
1073
+ {
1074
+ "not": {
1075
+ "required": [
1076
+ "serializedValue",
1077
+ "externalValue"
1078
+ ]
1079
+ }
1080
+ }
1081
+ ],
1082
+ "$ref": "#/$defs/specification-extensions",
1083
+ "unevaluatedProperties": false
1084
+ },
1085
+ "example-or-reference": {
1086
+ "if": {
1087
+ "type": "object",
1088
+ "required": [
1089
+ "$ref"
1090
+ ]
1091
+ },
1092
+ "then": {
1093
+ "$ref": "#/$defs/reference"
1094
+ },
1095
+ "else": {
1096
+ "$ref": "#/$defs/example"
1097
+ }
1098
+ },
1099
+ "link": {
1100
+ "$comment": "https://spec.openapis.org/oas/v3.2#link-object",
1101
+ "type": "object",
1102
+ "properties": {
1103
+ "operationRef": {
1104
+ "type": "string",
1105
+ "format": "uri-reference"
1106
+ },
1107
+ "operationId": {
1108
+ "type": "string"
1109
+ },
1110
+ "parameters": {
1111
+ "$ref": "#/$defs/map-of-strings"
1112
+ },
1113
+ "requestBody": true,
1114
+ "description": {
1115
+ "type": "string"
1116
+ },
1117
+ "server": {
1118
+ "$ref": "#/$defs/server"
1119
+ }
1120
+ },
1121
+ "oneOf": [
1122
+ {
1123
+ "required": [
1124
+ "operationRef"
1125
+ ]
1126
+ },
1127
+ {
1128
+ "required": [
1129
+ "operationId"
1130
+ ]
1131
+ }
1132
+ ],
1133
+ "$ref": "#/$defs/specification-extensions",
1134
+ "unevaluatedProperties": false
1135
+ },
1136
+ "link-or-reference": {
1137
+ "if": {
1138
+ "type": "object",
1139
+ "required": [
1140
+ "$ref"
1141
+ ]
1142
+ },
1143
+ "then": {
1144
+ "$ref": "#/$defs/reference"
1145
+ },
1146
+ "else": {
1147
+ "$ref": "#/$defs/link"
1148
+ }
1149
+ },
1150
+ "header": {
1151
+ "$comment": "https://spec.openapis.org/oas/v3.2#header-object",
1152
+ "type": "object",
1153
+ "properties": {
1154
+ "description": {
1155
+ "type": "string"
1156
+ },
1157
+ "required": {
1158
+ "default": false,
1159
+ "type": "boolean"
1160
+ },
1161
+ "deprecated": {
1162
+ "default": false,
1163
+ "type": "boolean"
1164
+ },
1165
+ "schema": {
1166
+ "$dynamicRef": "#meta"
1167
+ },
1168
+ "content": {
1169
+ "$ref": "#/$defs/content",
1170
+ "minProperties": 1,
1171
+ "maxProperties": 1
1172
+ }
1173
+ },
1174
+ "oneOf": [
1175
+ {
1176
+ "required": [
1177
+ "schema"
1178
+ ]
1179
+ },
1180
+ {
1181
+ "required": [
1182
+ "content"
1183
+ ]
1184
+ }
1185
+ ],
1186
+ "dependentSchemas": {
1187
+ "schema": {
1188
+ "properties": {
1189
+ "style": {
1190
+ "default": "simple",
1191
+ "const": "simple"
1192
+ },
1193
+ "explode": {
1194
+ "default": false,
1195
+ "type": "boolean"
1196
+ },
1197
+ "allowReserved": {
1198
+ "default": false,
1199
+ "type": "boolean"
1200
+ }
1201
+ }
1202
+ }
1203
+ },
1204
+ "allOf": [
1205
+ {
1206
+ "$ref": "#/$defs/examples"
1207
+ },
1208
+ {
1209
+ "$ref": "#/$defs/specification-extensions"
1210
+ }
1211
+ ],
1212
+ "unevaluatedProperties": false
1213
+ },
1214
+ "header-or-reference": {
1215
+ "if": {
1216
+ "type": "object",
1217
+ "required": [
1218
+ "$ref"
1219
+ ]
1220
+ },
1221
+ "then": {
1222
+ "$ref": "#/$defs/reference"
1223
+ },
1224
+ "else": {
1225
+ "$ref": "#/$defs/header"
1226
+ }
1227
+ },
1228
+ "tag": {
1229
+ "$comment": "https://spec.openapis.org/oas/v3.2#tag-object",
1230
+ "type": "object",
1231
+ "properties": {
1232
+ "name": {
1233
+ "type": "string"
1234
+ },
1235
+ "summary": {
1236
+ "type": "string"
1237
+ },
1238
+ "description": {
1239
+ "type": "string"
1240
+ },
1241
+ "externalDocs": {
1242
+ "$ref": "#/$defs/external-documentation"
1243
+ },
1244
+ "parent": {
1245
+ "type": "string"
1246
+ },
1247
+ "kind": {
1248
+ "type": "string"
1249
+ }
1250
+ },
1251
+ "required": [
1252
+ "name"
1253
+ ],
1254
+ "$ref": "#/$defs/specification-extensions",
1255
+ "unevaluatedProperties": false
1256
+ },
1257
+ "reference": {
1258
+ "$comment": "https://spec.openapis.org/oas/v3.2#reference-object",
1259
+ "type": "object",
1260
+ "properties": {
1261
+ "$ref": {
1262
+ "type": "string",
1263
+ "format": "uri-reference"
1264
+ },
1265
+ "summary": {
1266
+ "type": "string"
1267
+ },
1268
+ "description": {
1269
+ "type": "string"
1270
+ }
1271
+ }
1272
+ },
1273
+ "schema": {
1274
+ "$comment": "https://spec.openapis.org/oas/v3.2#schema-object",
1275
+ "$dynamicAnchor": "meta",
1276
+ "type": [
1277
+ "object",
1278
+ "boolean"
1279
+ ]
1280
+ },
1281
+ "security-scheme": {
1282
+ "$comment": "https://spec.openapis.org/oas/v3.2#security-scheme-object",
1283
+ "type": "object",
1284
+ "properties": {
1285
+ "type": {
1286
+ "enum": [
1287
+ "apiKey",
1288
+ "http",
1289
+ "mutualTLS",
1290
+ "oauth2",
1291
+ "openIdConnect"
1292
+ ]
1293
+ },
1294
+ "description": {
1295
+ "type": "string"
1296
+ },
1297
+ "deprecated": {
1298
+ "default": false,
1299
+ "type": "boolean"
1300
+ }
1301
+ },
1302
+ "required": [
1303
+ "type"
1304
+ ],
1305
+ "allOf": [
1306
+ {
1307
+ "$ref": "#/$defs/specification-extensions"
1308
+ },
1309
+ {
1310
+ "$ref": "#/$defs/security-scheme/$defs/type-apikey"
1311
+ },
1312
+ {
1313
+ "$ref": "#/$defs/security-scheme/$defs/type-http"
1314
+ },
1315
+ {
1316
+ "$ref": "#/$defs/security-scheme/$defs/type-http-bearer"
1317
+ },
1318
+ {
1319
+ "$ref": "#/$defs/security-scheme/$defs/type-oauth2"
1320
+ },
1321
+ {
1322
+ "$ref": "#/$defs/security-scheme/$defs/type-oidc"
1323
+ }
1324
+ ],
1325
+ "unevaluatedProperties": false,
1326
+ "$defs": {
1327
+ "type-apikey": {
1328
+ "if": {
1329
+ "properties": {
1330
+ "type": {
1331
+ "const": "apiKey"
1332
+ }
1333
+ }
1334
+ },
1335
+ "then": {
1336
+ "properties": {
1337
+ "name": {
1338
+ "type": "string"
1339
+ },
1340
+ "in": {
1341
+ "enum": [
1342
+ "query",
1343
+ "header",
1344
+ "cookie"
1345
+ ]
1346
+ }
1347
+ },
1348
+ "required": [
1349
+ "name",
1350
+ "in"
1351
+ ]
1352
+ }
1353
+ },
1354
+ "type-http": {
1355
+ "if": {
1356
+ "properties": {
1357
+ "type": {
1358
+ "const": "http"
1359
+ }
1360
+ }
1361
+ },
1362
+ "then": {
1363
+ "properties": {
1364
+ "scheme": {
1365
+ "type": "string"
1366
+ }
1367
+ },
1368
+ "required": [
1369
+ "scheme"
1370
+ ]
1371
+ }
1372
+ },
1373
+ "type-http-bearer": {
1374
+ "if": {
1375
+ "properties": {
1376
+ "type": {
1377
+ "const": "http"
1378
+ },
1379
+ "scheme": {
1380
+ "type": "string",
1381
+ "pattern": "^[Bb][Ee][Aa][Rr][Ee][Rr]$"
1382
+ }
1383
+ },
1384
+ "required": [
1385
+ "type",
1386
+ "scheme"
1387
+ ]
1388
+ },
1389
+ "then": {
1390
+ "properties": {
1391
+ "bearerFormat": {
1392
+ "type": "string"
1393
+ }
1394
+ }
1395
+ }
1396
+ },
1397
+ "type-oauth2": {
1398
+ "if": {
1399
+ "properties": {
1400
+ "type": {
1401
+ "const": "oauth2"
1402
+ }
1403
+ }
1404
+ },
1405
+ "then": {
1406
+ "properties": {
1407
+ "flows": {
1408
+ "$ref": "#/$defs/oauth-flows"
1409
+ },
1410
+ "oauth2MetadataUrl": {
1411
+ "type": "string",
1412
+ "format": "uri-reference"
1413
+ }
1414
+ },
1415
+ "required": [
1416
+ "flows"
1417
+ ]
1418
+ }
1419
+ },
1420
+ "type-oidc": {
1421
+ "if": {
1422
+ "properties": {
1423
+ "type": {
1424
+ "const": "openIdConnect"
1425
+ }
1426
+ }
1427
+ },
1428
+ "then": {
1429
+ "properties": {
1430
+ "openIdConnectUrl": {
1431
+ "type": "string",
1432
+ "format": "uri-reference"
1433
+ }
1434
+ },
1435
+ "required": [
1436
+ "openIdConnectUrl"
1437
+ ]
1438
+ }
1439
+ }
1440
+ }
1441
+ },
1442
+ "security-scheme-or-reference": {
1443
+ "if": {
1444
+ "type": "object",
1445
+ "required": [
1446
+ "$ref"
1447
+ ]
1448
+ },
1449
+ "then": {
1450
+ "$ref": "#/$defs/reference"
1451
+ },
1452
+ "else": {
1453
+ "$ref": "#/$defs/security-scheme"
1454
+ }
1455
+ },
1456
+ "oauth-flows": {
1457
+ "type": "object",
1458
+ "properties": {
1459
+ "implicit": {
1460
+ "$ref": "#/$defs/oauth-flows/$defs/implicit"
1461
+ },
1462
+ "password": {
1463
+ "$ref": "#/$defs/oauth-flows/$defs/password"
1464
+ },
1465
+ "clientCredentials": {
1466
+ "$ref": "#/$defs/oauth-flows/$defs/client-credentials"
1467
+ },
1468
+ "authorizationCode": {
1469
+ "$ref": "#/$defs/oauth-flows/$defs/authorization-code"
1470
+ },
1471
+ "deviceAuthorization": {
1472
+ "$ref": "#/$defs/oauth-flows/$defs/device-authorization"
1473
+ }
1474
+ },
1475
+ "$ref": "#/$defs/specification-extensions",
1476
+ "unevaluatedProperties": false,
1477
+ "$defs": {
1478
+ "implicit": {
1479
+ "type": "object",
1480
+ "properties": {
1481
+ "authorizationUrl": {
1482
+ "type": "string",
1483
+ "format": "uri-reference"
1484
+ },
1485
+ "refreshUrl": {
1486
+ "type": "string",
1487
+ "format": "uri-reference"
1488
+ },
1489
+ "scopes": {
1490
+ "$ref": "#/$defs/map-of-strings"
1491
+ }
1492
+ },
1493
+ "required": [
1494
+ "authorizationUrl",
1495
+ "scopes"
1496
+ ],
1497
+ "$ref": "#/$defs/specification-extensions",
1498
+ "unevaluatedProperties": false
1499
+ },
1500
+ "password": {
1501
+ "type": "object",
1502
+ "properties": {
1503
+ "tokenUrl": {
1504
+ "type": "string",
1505
+ "format": "uri-reference"
1506
+ },
1507
+ "refreshUrl": {
1508
+ "type": "string",
1509
+ "format": "uri-reference"
1510
+ },
1511
+ "scopes": {
1512
+ "$ref": "#/$defs/map-of-strings"
1513
+ }
1514
+ },
1515
+ "required": [
1516
+ "tokenUrl",
1517
+ "scopes"
1518
+ ],
1519
+ "$ref": "#/$defs/specification-extensions",
1520
+ "unevaluatedProperties": false
1521
+ },
1522
+ "client-credentials": {
1523
+ "type": "object",
1524
+ "properties": {
1525
+ "tokenUrl": {
1526
+ "type": "string",
1527
+ "format": "uri-reference"
1528
+ },
1529
+ "refreshUrl": {
1530
+ "type": "string",
1531
+ "format": "uri-reference"
1532
+ },
1533
+ "scopes": {
1534
+ "$ref": "#/$defs/map-of-strings"
1535
+ }
1536
+ },
1537
+ "required": [
1538
+ "tokenUrl",
1539
+ "scopes"
1540
+ ],
1541
+ "$ref": "#/$defs/specification-extensions",
1542
+ "unevaluatedProperties": false
1543
+ },
1544
+ "authorization-code": {
1545
+ "type": "object",
1546
+ "properties": {
1547
+ "authorizationUrl": {
1548
+ "type": "string",
1549
+ "format": "uri-reference"
1550
+ },
1551
+ "tokenUrl": {
1552
+ "type": "string",
1553
+ "format": "uri-reference"
1554
+ },
1555
+ "refreshUrl": {
1556
+ "type": "string",
1557
+ "format": "uri-reference"
1558
+ },
1559
+ "scopes": {
1560
+ "$ref": "#/$defs/map-of-strings"
1561
+ }
1562
+ },
1563
+ "required": [
1564
+ "authorizationUrl",
1565
+ "tokenUrl",
1566
+ "scopes"
1567
+ ],
1568
+ "$ref": "#/$defs/specification-extensions",
1569
+ "unevaluatedProperties": false
1570
+ },
1571
+ "device-authorization": {
1572
+ "type": "object",
1573
+ "properties": {
1574
+ "deviceAuthorizationUrl": {
1575
+ "type": "string",
1576
+ "format": "uri-reference"
1577
+ },
1578
+ "tokenUrl": {
1579
+ "type": "string",
1580
+ "format": "uri-reference"
1581
+ },
1582
+ "refreshUrl": {
1583
+ "type": "string",
1584
+ "format": "uri-reference"
1585
+ },
1586
+ "scopes": {
1587
+ "$ref": "#/$defs/map-of-strings"
1588
+ }
1589
+ },
1590
+ "required": [
1591
+ "deviceAuthorizationUrl",
1592
+ "tokenUrl",
1593
+ "scopes"
1594
+ ],
1595
+ "$ref": "#/$defs/specification-extensions",
1596
+ "unevaluatedProperties": false
1597
+ }
1598
+ }
1599
+ },
1600
+ "security-requirement": {
1601
+ "$comment": "https://spec.openapis.org/oas/v3.2#security-requirement-object",
1602
+ "type": "object",
1603
+ "additionalProperties": {
1604
+ "type": "array",
1605
+ "items": {
1606
+ "type": "string"
1607
+ }
1608
+ }
1609
+ },
1610
+ "specification-extensions": {
1611
+ "$comment": "https://spec.openapis.org/oas/v3.2#specification-extensions",
1612
+ "patternProperties": {
1613
+ "^x-": true
1614
+ }
1615
+ },
1616
+ "examples": {
1617
+ "properties": {
1618
+ "example": true,
1619
+ "examples": {
1620
+ "type": "object",
1621
+ "additionalProperties": {
1622
+ "$ref": "#/$defs/example-or-reference"
1623
+ }
1624
+ }
1625
+ },
1626
+ "not": {
1627
+ "required": [
1628
+ "example",
1629
+ "examples"
1630
+ ]
1631
+ }
1632
+ },
1633
+ "map-of-strings": {
1634
+ "type": "object",
1635
+ "additionalProperties": {
1636
+ "type": "string"
1637
+ }
1638
+ },
1639
+ "styles-for-form": {
1640
+ "if": {
1641
+ "properties": {
1642
+ "style": {
1643
+ "const": "form"
1644
+ }
1645
+ },
1646
+ "required": [
1647
+ "style"
1648
+ ]
1649
+ },
1650
+ "then": {
1651
+ "properties": {
1652
+ "explode": {
1653
+ "default": true
1654
+ }
1655
+ }
1656
+ },
1657
+ "else": {
1658
+ "properties": {
1659
+ "explode": {
1660
+ "default": false
1661
+ }
1662
+ }
1663
+ }
1664
+ }
1665
+ }
1666
+ }