@crombolo/contracts 0.11.0 → 0.12.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.
@@ -0,0 +1,1365 @@
1
+ {
2
+ "openapi": "3.1.1",
3
+ "info": {
4
+ "title": "Umbraco Delivery API",
5
+ "description": "You can find out more about the Umbraco Delivery API in [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api).",
6
+ "version": "Latest"
7
+ },
8
+ "paths": {
9
+ "/umbraco/delivery/api/v2/content": {
10
+ "get": {
11
+ "tags": ["Content"],
12
+ "operationId": "GetContent2.0",
13
+ "parameters": [
14
+ {
15
+ "name": "fetch",
16
+ "in": "query",
17
+ "description": "Specifies the content items to fetch. Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api#query-parameters) for more details on this.",
18
+ "schema": {
19
+ "type": "string"
20
+ },
21
+ "examples": {
22
+ "Select all": {
23
+ "value": ""
24
+ },
25
+ "Select all ancestors of a node by id": {
26
+ "value": "ancestors:id"
27
+ },
28
+ "Select all ancestors of a node by path": {
29
+ "value": "ancestors:path"
30
+ },
31
+ "Select all children of a node by id": {
32
+ "value": "children:id"
33
+ },
34
+ "Select all children of a node by path": {
35
+ "value": "children:path"
36
+ },
37
+ "Select all descendants of a node by id": {
38
+ "value": "descendants:id"
39
+ },
40
+ "Select all descendants of a node by path": {
41
+ "value": "descendants:path"
42
+ }
43
+ }
44
+ },
45
+ {
46
+ "name": "filter",
47
+ "in": "query",
48
+ "description": "Defines how to filter the fetched content items. Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api#query-parameters) for more details on this.",
49
+ "schema": {
50
+ "type": "array",
51
+ "items": {
52
+ "type": "string"
53
+ }
54
+ },
55
+ "examples": {
56
+ "Default filter": {
57
+ "value": [""]
58
+ },
59
+ "Filter by content type (equals)": {
60
+ "value": ["contentType:alias1"]
61
+ },
62
+ "Filter by name (contains)": {
63
+ "value": ["name:nodeName"]
64
+ },
65
+ "Filter by creation date (less than)": {
66
+ "value": ["createDate<2024-01-01"]
67
+ },
68
+ "Filter by update date (greater than or equal)": {
69
+ "value": ["updateDate>:2023-01-01"]
70
+ }
71
+ }
72
+ },
73
+ {
74
+ "name": "sort",
75
+ "in": "query",
76
+ "description": "Defines how to sort the found content items. Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api#query-parameters) for more details on this.",
77
+ "schema": {
78
+ "type": "array",
79
+ "items": {
80
+ "type": "string"
81
+ }
82
+ },
83
+ "examples": {
84
+ "Default sort": {
85
+ "value": [""]
86
+ },
87
+ "Sort by create date": {
88
+ "value": ["createDate:asc", "createDate:desc"]
89
+ },
90
+ "Sort by level": {
91
+ "value": ["level:asc", "level:desc"]
92
+ },
93
+ "Sort by name": {
94
+ "value": ["name:asc", "name:desc"]
95
+ },
96
+ "Sort by sort order": {
97
+ "value": ["sortOrder:asc", "sortOrder:desc"]
98
+ },
99
+ "Sort by update date": {
100
+ "value": ["updateDate:asc", "updateDate:desc"]
101
+ }
102
+ }
103
+ },
104
+ {
105
+ "name": "skip",
106
+ "in": "query",
107
+ "description": "Specifies the number of found content items to skip. Use this to control pagination of the response.",
108
+ "schema": {
109
+ "type": "integer",
110
+ "format": "int32",
111
+ "default": 0
112
+ }
113
+ },
114
+ {
115
+ "name": "take",
116
+ "in": "query",
117
+ "description": "Specifies the number of found content items to take. Use this to control pagination of the response.",
118
+ "schema": {
119
+ "type": "integer",
120
+ "format": "int32",
121
+ "default": 10
122
+ }
123
+ },
124
+ {
125
+ "name": "expand",
126
+ "in": "query",
127
+ "description": "Defines the properties that should be expanded in the response. Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api#query-parameters) for more details on this.",
128
+ "schema": {
129
+ "type": "string"
130
+ },
131
+ "examples": {
132
+ "Expand none": {
133
+ "value": ""
134
+ },
135
+ "Expand all properties": {
136
+ "value": "properties[$all]"
137
+ },
138
+ "Expand specific property": {
139
+ "value": "properties[alias1]"
140
+ },
141
+ "Expand specific properties": {
142
+ "value": "properties[alias1,alias2]"
143
+ },
144
+ "Expand nested properties": {
145
+ "value": "properties[alias1[properties[nestedAlias1,nestedAlias2]]]"
146
+ }
147
+ }
148
+ },
149
+ {
150
+ "name": "fields",
151
+ "in": "query",
152
+ "description": "Explicitly defines which properties should be included in the response (by default all properties are included). Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api#query-parameters) for more details on this.",
153
+ "schema": {
154
+ "type": "string"
155
+ },
156
+ "examples": {
157
+ "Include all properties": {
158
+ "value": "properties[$all]"
159
+ },
160
+ "Include only specific property": {
161
+ "value": "properties[alias1]"
162
+ },
163
+ "Include only specific properties": {
164
+ "value": "properties[alias1,alias2]"
165
+ },
166
+ "Include only specific nested properties": {
167
+ "value": "properties[alias1[properties[nestedAlias1,nestedAlias2]]]"
168
+ }
169
+ }
170
+ },
171
+ {
172
+ "name": "Accept-Language",
173
+ "in": "header",
174
+ "description": "Defines the language to return. Use this when querying language variant content items.",
175
+ "schema": {
176
+ "type": "string"
177
+ },
178
+ "examples": {
179
+ "Default": {
180
+ "value": ""
181
+ },
182
+ "English culture": {
183
+ "value": "en-us"
184
+ }
185
+ }
186
+ },
187
+ {
188
+ "name": "Accept-Segment",
189
+ "in": "header",
190
+ "description": "Defines the segment to return. Use this when querying segment variant content items.",
191
+ "schema": {
192
+ "type": "string"
193
+ },
194
+ "examples": {
195
+ "Default": {
196
+ "value": ""
197
+ },
198
+ "Segment One": {
199
+ "value": "segment-one"
200
+ }
201
+ }
202
+ },
203
+ {
204
+ "name": "Preview",
205
+ "in": "header",
206
+ "description": "Whether to request draft content.",
207
+ "schema": {
208
+ "type": "boolean"
209
+ }
210
+ },
211
+ {
212
+ "name": "Start-Item",
213
+ "in": "header",
214
+ "description": "URL segment or GUID of a root content item.",
215
+ "schema": {
216
+ "type": "string"
217
+ }
218
+ }
219
+ ],
220
+ "responses": {
221
+ "200": {
222
+ "description": "OK",
223
+ "content": {
224
+ "application/json": {
225
+ "schema": {
226
+ "$ref": "#/components/schemas/PagedIApiContentResponseModel"
227
+ }
228
+ }
229
+ }
230
+ },
231
+ "400": {
232
+ "description": "Bad Request",
233
+ "content": {
234
+ "application/json": {
235
+ "schema": {
236
+ "$ref": "#/components/schemas/ProblemDetails"
237
+ }
238
+ }
239
+ }
240
+ },
241
+ "404": {
242
+ "description": "Not Found"
243
+ }
244
+ },
245
+ "security": [
246
+ {
247
+ "ApiKeyAuth": []
248
+ }
249
+ ]
250
+ }
251
+ },
252
+ "/umbraco/delivery/api/v2/content/item/{id}": {
253
+ "get": {
254
+ "tags": ["Content"],
255
+ "operationId": "GetContentItemById2.0",
256
+ "parameters": [
257
+ {
258
+ "name": "id",
259
+ "in": "path",
260
+ "required": true,
261
+ "schema": {
262
+ "type": "string",
263
+ "format": "uuid"
264
+ }
265
+ },
266
+ {
267
+ "name": "expand",
268
+ "in": "query",
269
+ "description": "Defines the properties that should be expanded in the response. Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api#query-parameters) for more details on this.",
270
+ "schema": {
271
+ "type": "string"
272
+ },
273
+ "examples": {
274
+ "Expand none": {
275
+ "value": ""
276
+ },
277
+ "Expand all properties": {
278
+ "value": "properties[$all]"
279
+ },
280
+ "Expand specific property": {
281
+ "value": "properties[alias1]"
282
+ },
283
+ "Expand specific properties": {
284
+ "value": "properties[alias1,alias2]"
285
+ },
286
+ "Expand nested properties": {
287
+ "value": "properties[alias1[properties[nestedAlias1,nestedAlias2]]]"
288
+ }
289
+ }
290
+ },
291
+ {
292
+ "name": "fields",
293
+ "in": "query",
294
+ "description": "Explicitly defines which properties should be included in the response (by default all properties are included). Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api#query-parameters) for more details on this.",
295
+ "schema": {
296
+ "type": "string"
297
+ },
298
+ "examples": {
299
+ "Include all properties": {
300
+ "value": "properties[$all]"
301
+ },
302
+ "Include only specific property": {
303
+ "value": "properties[alias1]"
304
+ },
305
+ "Include only specific properties": {
306
+ "value": "properties[alias1,alias2]"
307
+ },
308
+ "Include only specific nested properties": {
309
+ "value": "properties[alias1[properties[nestedAlias1,nestedAlias2]]]"
310
+ }
311
+ }
312
+ },
313
+ {
314
+ "name": "Accept-Language",
315
+ "in": "header",
316
+ "description": "Defines the language to return. Use this when querying language variant content items.",
317
+ "schema": {
318
+ "type": "string"
319
+ },
320
+ "examples": {
321
+ "Default": {
322
+ "value": ""
323
+ },
324
+ "English culture": {
325
+ "value": "en-us"
326
+ }
327
+ }
328
+ },
329
+ {
330
+ "name": "Accept-Segment",
331
+ "in": "header",
332
+ "description": "Defines the segment to return. Use this when querying segment variant content items.",
333
+ "schema": {
334
+ "type": "string"
335
+ },
336
+ "examples": {
337
+ "Default": {
338
+ "value": ""
339
+ },
340
+ "Segment One": {
341
+ "value": "segment-one"
342
+ }
343
+ }
344
+ },
345
+ {
346
+ "name": "Preview",
347
+ "in": "header",
348
+ "description": "Whether to request draft content.",
349
+ "schema": {
350
+ "type": "boolean"
351
+ }
352
+ },
353
+ {
354
+ "name": "Start-Item",
355
+ "in": "header",
356
+ "description": "URL segment or GUID of a root content item.",
357
+ "schema": {
358
+ "type": "string"
359
+ }
360
+ }
361
+ ],
362
+ "responses": {
363
+ "200": {
364
+ "description": "OK",
365
+ "content": {
366
+ "application/json": {
367
+ "schema": {
368
+ "$ref": "#/components/schemas/IApiContentResponseModel"
369
+ }
370
+ }
371
+ }
372
+ },
373
+ "401": {
374
+ "description": "Unauthorized"
375
+ },
376
+ "403": {
377
+ "description": "Forbidden"
378
+ },
379
+ "404": {
380
+ "description": "Not Found"
381
+ }
382
+ },
383
+ "security": [
384
+ {
385
+ "ApiKeyAuth": []
386
+ }
387
+ ]
388
+ }
389
+ },
390
+ "/umbraco/delivery/api/v2/content/item/{path}": {
391
+ "get": {
392
+ "tags": ["Content"],
393
+ "operationId": "GetContentItemByPath2.0",
394
+ "parameters": [
395
+ {
396
+ "name": "path",
397
+ "in": "path",
398
+ "required": true,
399
+ "schema": {
400
+ "type": "string",
401
+ "default": ""
402
+ }
403
+ },
404
+ {
405
+ "name": "expand",
406
+ "in": "query",
407
+ "description": "Defines the properties that should be expanded in the response. Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api#query-parameters) for more details on this.",
408
+ "schema": {
409
+ "type": "string"
410
+ },
411
+ "examples": {
412
+ "Expand none": {
413
+ "value": ""
414
+ },
415
+ "Expand all properties": {
416
+ "value": "properties[$all]"
417
+ },
418
+ "Expand specific property": {
419
+ "value": "properties[alias1]"
420
+ },
421
+ "Expand specific properties": {
422
+ "value": "properties[alias1,alias2]"
423
+ },
424
+ "Expand nested properties": {
425
+ "value": "properties[alias1[properties[nestedAlias1,nestedAlias2]]]"
426
+ }
427
+ }
428
+ },
429
+ {
430
+ "name": "fields",
431
+ "in": "query",
432
+ "description": "Explicitly defines which properties should be included in the response (by default all properties are included). Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api#query-parameters) for more details on this.",
433
+ "schema": {
434
+ "type": "string"
435
+ },
436
+ "examples": {
437
+ "Include all properties": {
438
+ "value": "properties[$all]"
439
+ },
440
+ "Include only specific property": {
441
+ "value": "properties[alias1]"
442
+ },
443
+ "Include only specific properties": {
444
+ "value": "properties[alias1,alias2]"
445
+ },
446
+ "Include only specific nested properties": {
447
+ "value": "properties[alias1[properties[nestedAlias1,nestedAlias2]]]"
448
+ }
449
+ }
450
+ },
451
+ {
452
+ "name": "Accept-Language",
453
+ "in": "header",
454
+ "description": "Defines the language to return. Use this when querying language variant content items.",
455
+ "schema": {
456
+ "type": "string"
457
+ },
458
+ "examples": {
459
+ "Default": {
460
+ "value": ""
461
+ },
462
+ "English culture": {
463
+ "value": "en-us"
464
+ }
465
+ }
466
+ },
467
+ {
468
+ "name": "Accept-Segment",
469
+ "in": "header",
470
+ "description": "Defines the segment to return. Use this when querying segment variant content items.",
471
+ "schema": {
472
+ "type": "string"
473
+ },
474
+ "examples": {
475
+ "Default": {
476
+ "value": ""
477
+ },
478
+ "Segment One": {
479
+ "value": "segment-one"
480
+ }
481
+ }
482
+ },
483
+ {
484
+ "name": "Preview",
485
+ "in": "header",
486
+ "description": "Whether to request draft content.",
487
+ "schema": {
488
+ "type": "boolean"
489
+ }
490
+ },
491
+ {
492
+ "name": "Start-Item",
493
+ "in": "header",
494
+ "description": "URL segment or GUID of a root content item.",
495
+ "schema": {
496
+ "type": "string"
497
+ }
498
+ }
499
+ ],
500
+ "responses": {
501
+ "200": {
502
+ "description": "OK",
503
+ "content": {
504
+ "application/json": {
505
+ "schema": {
506
+ "$ref": "#/components/schemas/IApiContentResponseModel"
507
+ }
508
+ }
509
+ }
510
+ },
511
+ "401": {
512
+ "description": "Unauthorized"
513
+ },
514
+ "403": {
515
+ "description": "Forbidden"
516
+ },
517
+ "404": {
518
+ "description": "Not Found"
519
+ }
520
+ },
521
+ "security": [
522
+ {
523
+ "ApiKeyAuth": []
524
+ }
525
+ ]
526
+ }
527
+ },
528
+ "/umbraco/delivery/api/v2/content/items": {
529
+ "get": {
530
+ "tags": ["Content"],
531
+ "operationId": "GetContentItems2.0",
532
+ "parameters": [
533
+ {
534
+ "name": "id",
535
+ "in": "query",
536
+ "schema": {
537
+ "type": "array",
538
+ "items": {
539
+ "type": "string",
540
+ "format": "uuid"
541
+ }
542
+ }
543
+ },
544
+ {
545
+ "name": "expand",
546
+ "in": "query",
547
+ "description": "Defines the properties that should be expanded in the response. Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api#query-parameters) for more details on this.",
548
+ "schema": {
549
+ "type": "string"
550
+ },
551
+ "examples": {
552
+ "Expand none": {
553
+ "value": ""
554
+ },
555
+ "Expand all properties": {
556
+ "value": "properties[$all]"
557
+ },
558
+ "Expand specific property": {
559
+ "value": "properties[alias1]"
560
+ },
561
+ "Expand specific properties": {
562
+ "value": "properties[alias1,alias2]"
563
+ },
564
+ "Expand nested properties": {
565
+ "value": "properties[alias1[properties[nestedAlias1,nestedAlias2]]]"
566
+ }
567
+ }
568
+ },
569
+ {
570
+ "name": "fields",
571
+ "in": "query",
572
+ "description": "Explicitly defines which properties should be included in the response (by default all properties are included). Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api#query-parameters) for more details on this.",
573
+ "schema": {
574
+ "type": "string"
575
+ },
576
+ "examples": {
577
+ "Include all properties": {
578
+ "value": "properties[$all]"
579
+ },
580
+ "Include only specific property": {
581
+ "value": "properties[alias1]"
582
+ },
583
+ "Include only specific properties": {
584
+ "value": "properties[alias1,alias2]"
585
+ },
586
+ "Include only specific nested properties": {
587
+ "value": "properties[alias1[properties[nestedAlias1,nestedAlias2]]]"
588
+ }
589
+ }
590
+ },
591
+ {
592
+ "name": "Accept-Language",
593
+ "in": "header",
594
+ "description": "Defines the language to return. Use this when querying language variant content items.",
595
+ "schema": {
596
+ "type": "string"
597
+ },
598
+ "examples": {
599
+ "Default": {
600
+ "value": ""
601
+ },
602
+ "English culture": {
603
+ "value": "en-us"
604
+ }
605
+ }
606
+ },
607
+ {
608
+ "name": "Accept-Segment",
609
+ "in": "header",
610
+ "description": "Defines the segment to return. Use this when querying segment variant content items.",
611
+ "schema": {
612
+ "type": "string"
613
+ },
614
+ "examples": {
615
+ "Default": {
616
+ "value": ""
617
+ },
618
+ "Segment One": {
619
+ "value": "segment-one"
620
+ }
621
+ }
622
+ },
623
+ {
624
+ "name": "Preview",
625
+ "in": "header",
626
+ "description": "Whether to request draft content.",
627
+ "schema": {
628
+ "type": "boolean"
629
+ }
630
+ },
631
+ {
632
+ "name": "Start-Item",
633
+ "in": "header",
634
+ "description": "URL segment or GUID of a root content item.",
635
+ "schema": {
636
+ "type": "string"
637
+ }
638
+ }
639
+ ],
640
+ "responses": {
641
+ "200": {
642
+ "description": "OK",
643
+ "content": {
644
+ "application/json": {
645
+ "schema": {
646
+ "type": "array",
647
+ "items": {
648
+ "$ref": "#/components/schemas/IApiContentResponseModel"
649
+ }
650
+ }
651
+ }
652
+ }
653
+ },
654
+ "401": {
655
+ "description": "Unauthorized"
656
+ },
657
+ "403": {
658
+ "description": "Forbidden"
659
+ }
660
+ },
661
+ "security": [
662
+ {
663
+ "ApiKeyAuth": []
664
+ }
665
+ ]
666
+ }
667
+ },
668
+ "/umbraco/delivery/api/v2/media": {
669
+ "get": {
670
+ "tags": ["Media"],
671
+ "operationId": "GetMedia2.0",
672
+ "parameters": [
673
+ {
674
+ "name": "fetch",
675
+ "in": "query",
676
+ "description": "Specifies the media items to fetch. Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api/media-delivery-api#query-parameters) for more details on this.",
677
+ "schema": {
678
+ "type": "string"
679
+ },
680
+ "examples": {
681
+ "Select all children at root level": {
682
+ "value": "children:/"
683
+ },
684
+ "Select all children of a media item by id": {
685
+ "value": "children:id"
686
+ },
687
+ "Select all children of a media item by path": {
688
+ "value": "children:path"
689
+ }
690
+ }
691
+ },
692
+ {
693
+ "name": "filter",
694
+ "in": "query",
695
+ "description": "Defines how to filter the fetched media items. Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api/media-delivery-api#query-parameters) for more details on this.",
696
+ "schema": {
697
+ "type": "array",
698
+ "items": {
699
+ "type": "string"
700
+ }
701
+ },
702
+ "examples": {
703
+ "Default filter": {
704
+ "value": [""]
705
+ },
706
+ "Filter by media type": {
707
+ "value": ["mediaType:alias1"]
708
+ },
709
+ "Filter by name": {
710
+ "value": ["name:nodeName"]
711
+ }
712
+ }
713
+ },
714
+ {
715
+ "name": "sort",
716
+ "in": "query",
717
+ "description": "Defines how to sort the found media items. Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api/media-delivery-api#query-parameters) for more details on this.",
718
+ "schema": {
719
+ "type": "array",
720
+ "items": {
721
+ "type": "string"
722
+ }
723
+ },
724
+ "examples": {
725
+ "Default sort": {
726
+ "value": [""]
727
+ },
728
+ "Sort by create date": {
729
+ "value": ["createDate:asc", "createDate:desc"]
730
+ },
731
+ "Sort by name": {
732
+ "value": ["name:asc", "name:desc"]
733
+ },
734
+ "Sort by sort order": {
735
+ "value": ["sortOrder:asc", "sortOrder:desc"]
736
+ },
737
+ "Sort by update date": {
738
+ "value": ["updateDate:asc", "updateDate:desc"]
739
+ }
740
+ }
741
+ },
742
+ {
743
+ "name": "skip",
744
+ "in": "query",
745
+ "description": "Specifies the number of found media items to skip. Use this to control pagination of the response.",
746
+ "schema": {
747
+ "type": "integer",
748
+ "format": "int32",
749
+ "default": 0
750
+ }
751
+ },
752
+ {
753
+ "name": "take",
754
+ "in": "query",
755
+ "description": "Specifies the number of found media items to take. Use this to control pagination of the response.",
756
+ "schema": {
757
+ "type": "integer",
758
+ "format": "int32",
759
+ "default": 10
760
+ }
761
+ },
762
+ {
763
+ "name": "expand",
764
+ "in": "query",
765
+ "description": "Defines the properties that should be expanded in the response. Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api/media-delivery-api#query-parameters) for more details on this.",
766
+ "schema": {
767
+ "type": "string"
768
+ },
769
+ "examples": {
770
+ "Expand none": {
771
+ "value": ""
772
+ },
773
+ "Expand all properties": {
774
+ "value": "properties[$all]"
775
+ },
776
+ "Expand specific property": {
777
+ "value": "properties[alias1]"
778
+ },
779
+ "Expand specific properties": {
780
+ "value": "properties[alias1,alias2]"
781
+ },
782
+ "Expand nested properties": {
783
+ "value": "properties[alias1[properties[nestedAlias1,nestedAlias2]]]"
784
+ }
785
+ }
786
+ },
787
+ {
788
+ "name": "fields",
789
+ "in": "query",
790
+ "description": "Explicitly defines which properties should be included in the response (by default all properties are included). Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api/media-delivery-api#query-parameters) for more details on this.",
791
+ "schema": {
792
+ "type": "string"
793
+ },
794
+ "examples": {
795
+ "Include all properties": {
796
+ "value": "properties[$all]"
797
+ },
798
+ "Include only specific property": {
799
+ "value": "properties[alias1]"
800
+ },
801
+ "Include only specific properties": {
802
+ "value": "properties[alias1,alias2]"
803
+ },
804
+ "Include only specific nested properties": {
805
+ "value": "properties[alias1[properties[nestedAlias1,nestedAlias2]]]"
806
+ }
807
+ }
808
+ }
809
+ ],
810
+ "responses": {
811
+ "200": {
812
+ "description": "OK",
813
+ "content": {
814
+ "application/json": {
815
+ "schema": {
816
+ "$ref": "#/components/schemas/PagedIApiMediaWithCropsResponseModel"
817
+ }
818
+ }
819
+ }
820
+ },
821
+ "400": {
822
+ "description": "Bad Request",
823
+ "content": {
824
+ "application/json": {
825
+ "schema": {
826
+ "$ref": "#/components/schemas/ProblemDetails"
827
+ }
828
+ }
829
+ }
830
+ }
831
+ },
832
+ "security": [
833
+ {
834
+ "ApiKeyAuth": []
835
+ }
836
+ ]
837
+ }
838
+ },
839
+ "/umbraco/delivery/api/v2/media/item/{id}": {
840
+ "get": {
841
+ "tags": ["Media"],
842
+ "operationId": "GetMediaItemById2.0",
843
+ "parameters": [
844
+ {
845
+ "name": "id",
846
+ "in": "path",
847
+ "required": true,
848
+ "schema": {
849
+ "type": "string",
850
+ "format": "uuid"
851
+ }
852
+ },
853
+ {
854
+ "name": "expand",
855
+ "in": "query",
856
+ "description": "Defines the properties that should be expanded in the response. Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api/media-delivery-api#query-parameters) for more details on this.",
857
+ "schema": {
858
+ "type": "string"
859
+ },
860
+ "examples": {
861
+ "Expand none": {
862
+ "value": ""
863
+ },
864
+ "Expand all properties": {
865
+ "value": "properties[$all]"
866
+ },
867
+ "Expand specific property": {
868
+ "value": "properties[alias1]"
869
+ },
870
+ "Expand specific properties": {
871
+ "value": "properties[alias1,alias2]"
872
+ },
873
+ "Expand nested properties": {
874
+ "value": "properties[alias1[properties[nestedAlias1,nestedAlias2]]]"
875
+ }
876
+ }
877
+ },
878
+ {
879
+ "name": "fields",
880
+ "in": "query",
881
+ "description": "Explicitly defines which properties should be included in the response (by default all properties are included). Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api/media-delivery-api#query-parameters) for more details on this.",
882
+ "schema": {
883
+ "type": "string"
884
+ },
885
+ "examples": {
886
+ "Include all properties": {
887
+ "value": "properties[$all]"
888
+ },
889
+ "Include only specific property": {
890
+ "value": "properties[alias1]"
891
+ },
892
+ "Include only specific properties": {
893
+ "value": "properties[alias1,alias2]"
894
+ },
895
+ "Include only specific nested properties": {
896
+ "value": "properties[alias1[properties[nestedAlias1,nestedAlias2]]]"
897
+ }
898
+ }
899
+ }
900
+ ],
901
+ "responses": {
902
+ "200": {
903
+ "description": "OK",
904
+ "content": {
905
+ "application/json": {
906
+ "schema": {
907
+ "$ref": "#/components/schemas/IApiMediaWithCropsResponseModel"
908
+ }
909
+ }
910
+ }
911
+ },
912
+ "404": {
913
+ "description": "Not Found"
914
+ }
915
+ },
916
+ "security": [
917
+ {
918
+ "ApiKeyAuth": []
919
+ }
920
+ ]
921
+ }
922
+ },
923
+ "/umbraco/delivery/api/v2/media/item/{path}": {
924
+ "get": {
925
+ "tags": ["Media"],
926
+ "operationId": "GetMediaItemByPath2.0",
927
+ "parameters": [
928
+ {
929
+ "name": "path",
930
+ "in": "path",
931
+ "required": true,
932
+ "schema": {
933
+ "type": "string"
934
+ }
935
+ },
936
+ {
937
+ "name": "expand",
938
+ "in": "query",
939
+ "description": "Defines the properties that should be expanded in the response. Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api/media-delivery-api#query-parameters) for more details on this.",
940
+ "schema": {
941
+ "type": "string"
942
+ },
943
+ "examples": {
944
+ "Expand none": {
945
+ "value": ""
946
+ },
947
+ "Expand all properties": {
948
+ "value": "properties[$all]"
949
+ },
950
+ "Expand specific property": {
951
+ "value": "properties[alias1]"
952
+ },
953
+ "Expand specific properties": {
954
+ "value": "properties[alias1,alias2]"
955
+ },
956
+ "Expand nested properties": {
957
+ "value": "properties[alias1[properties[nestedAlias1,nestedAlias2]]]"
958
+ }
959
+ }
960
+ },
961
+ {
962
+ "name": "fields",
963
+ "in": "query",
964
+ "description": "Explicitly defines which properties should be included in the response (by default all properties are included). Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api/media-delivery-api#query-parameters) for more details on this.",
965
+ "schema": {
966
+ "type": "string"
967
+ },
968
+ "examples": {
969
+ "Include all properties": {
970
+ "value": "properties[$all]"
971
+ },
972
+ "Include only specific property": {
973
+ "value": "properties[alias1]"
974
+ },
975
+ "Include only specific properties": {
976
+ "value": "properties[alias1,alias2]"
977
+ },
978
+ "Include only specific nested properties": {
979
+ "value": "properties[alias1[properties[nestedAlias1,nestedAlias2]]]"
980
+ }
981
+ }
982
+ }
983
+ ],
984
+ "responses": {
985
+ "200": {
986
+ "description": "OK",
987
+ "content": {
988
+ "application/json": {
989
+ "schema": {
990
+ "$ref": "#/components/schemas/IApiMediaWithCropsResponseModel"
991
+ }
992
+ }
993
+ }
994
+ },
995
+ "404": {
996
+ "description": "Not Found"
997
+ }
998
+ },
999
+ "security": [
1000
+ {
1001
+ "ApiKeyAuth": []
1002
+ }
1003
+ ]
1004
+ }
1005
+ },
1006
+ "/umbraco/delivery/api/v2/media/items": {
1007
+ "get": {
1008
+ "tags": ["Media"],
1009
+ "operationId": "GetMediaItems2.0",
1010
+ "parameters": [
1011
+ {
1012
+ "name": "id",
1013
+ "in": "query",
1014
+ "schema": {
1015
+ "type": "array",
1016
+ "items": {
1017
+ "type": "string",
1018
+ "format": "uuid"
1019
+ }
1020
+ }
1021
+ },
1022
+ {
1023
+ "name": "expand",
1024
+ "in": "query",
1025
+ "description": "Defines the properties that should be expanded in the response. Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api/media-delivery-api#query-parameters) for more details on this.",
1026
+ "schema": {
1027
+ "type": "string"
1028
+ },
1029
+ "examples": {
1030
+ "Expand none": {
1031
+ "value": ""
1032
+ },
1033
+ "Expand all properties": {
1034
+ "value": "properties[$all]"
1035
+ },
1036
+ "Expand specific property": {
1037
+ "value": "properties[alias1]"
1038
+ },
1039
+ "Expand specific properties": {
1040
+ "value": "properties[alias1,alias2]"
1041
+ },
1042
+ "Expand nested properties": {
1043
+ "value": "properties[alias1[properties[nestedAlias1,nestedAlias2]]]"
1044
+ }
1045
+ }
1046
+ },
1047
+ {
1048
+ "name": "fields",
1049
+ "in": "query",
1050
+ "description": "Explicitly defines which properties should be included in the response (by default all properties are included). Refer to [the documentation](https://docs.umbraco.com/umbraco-cms/reference/content-delivery-api/media-delivery-api#query-parameters) for more details on this.",
1051
+ "schema": {
1052
+ "type": "string"
1053
+ },
1054
+ "examples": {
1055
+ "Include all properties": {
1056
+ "value": "properties[$all]"
1057
+ },
1058
+ "Include only specific property": {
1059
+ "value": "properties[alias1]"
1060
+ },
1061
+ "Include only specific properties": {
1062
+ "value": "properties[alias1,alias2]"
1063
+ },
1064
+ "Include only specific nested properties": {
1065
+ "value": "properties[alias1[properties[nestedAlias1,nestedAlias2]]]"
1066
+ }
1067
+ }
1068
+ }
1069
+ ],
1070
+ "responses": {
1071
+ "200": {
1072
+ "description": "OK",
1073
+ "content": {
1074
+ "application/json": {
1075
+ "schema": {
1076
+ "type": "array",
1077
+ "items": {
1078
+ "$ref": "#/components/schemas/IApiMediaWithCropsResponseModel"
1079
+ }
1080
+ }
1081
+ }
1082
+ }
1083
+ }
1084
+ },
1085
+ "security": [
1086
+ {
1087
+ "ApiKeyAuth": []
1088
+ }
1089
+ ]
1090
+ }
1091
+ }
1092
+ },
1093
+ "components": {
1094
+ "schemas": {
1095
+ "IApiContentResponseModel": {
1096
+ "required": [
1097
+ "contentType",
1098
+ "createDate",
1099
+ "updateDate",
1100
+ "route",
1101
+ "id",
1102
+ "properties",
1103
+ "cultures"
1104
+ ],
1105
+ "type": "object",
1106
+ "properties": {
1107
+ "contentType": {
1108
+ "type": ["null", "string"]
1109
+ },
1110
+ "name": {
1111
+ "type": ["null", "string"]
1112
+ },
1113
+ "createDate": {
1114
+ "type": "string",
1115
+ "format": "date-time"
1116
+ },
1117
+ "updateDate": {
1118
+ "type": "string",
1119
+ "format": "date-time"
1120
+ },
1121
+ "route": {
1122
+ "$ref": "#/components/schemas/IApiContentRouteModel"
1123
+ },
1124
+ "id": {
1125
+ "type": "string",
1126
+ "format": "uuid"
1127
+ },
1128
+ "properties": {
1129
+ "type": ["null", "object"]
1130
+ },
1131
+ "cultures": {
1132
+ "type": ["null", "object"],
1133
+ "additionalProperties": {
1134
+ "$ref": "#/components/schemas/IApiContentRouteModel"
1135
+ }
1136
+ }
1137
+ }
1138
+ },
1139
+ "IApiContentRouteModel": {
1140
+ "required": ["path", "startItem"],
1141
+ "type": "object",
1142
+ "properties": {
1143
+ "path": {
1144
+ "type": ["null", "string"]
1145
+ },
1146
+ "queryString": {
1147
+ "type": ["null", "string"]
1148
+ },
1149
+ "startItem": {
1150
+ "$ref": "#/components/schemas/IApiContentStartItemModel"
1151
+ }
1152
+ }
1153
+ },
1154
+ "IApiContentStartItemModel": {
1155
+ "required": ["id", "path"],
1156
+ "type": "object",
1157
+ "properties": {
1158
+ "id": {
1159
+ "type": "string",
1160
+ "format": "uuid"
1161
+ },
1162
+ "path": {
1163
+ "type": ["null", "string"]
1164
+ }
1165
+ }
1166
+ },
1167
+ "IApiMediaWithCropsResponseModel": {
1168
+ "required": [
1169
+ "path",
1170
+ "createDate",
1171
+ "updateDate",
1172
+ "id",
1173
+ "name",
1174
+ "mediaType",
1175
+ "url",
1176
+ "properties"
1177
+ ],
1178
+ "type": "object",
1179
+ "properties": {
1180
+ "path": {
1181
+ "type": ["null", "string"]
1182
+ },
1183
+ "createDate": {
1184
+ "type": "string",
1185
+ "format": "date-time"
1186
+ },
1187
+ "updateDate": {
1188
+ "type": "string",
1189
+ "format": "date-time"
1190
+ },
1191
+ "focalPoint": {
1192
+ "$ref": "#/components/schemas/ImageFocalPointModel"
1193
+ },
1194
+ "crops": {
1195
+ "type": ["null", "array"],
1196
+ "items": {
1197
+ "$ref": "#/components/schemas/ImageCropModel"
1198
+ }
1199
+ },
1200
+ "id": {
1201
+ "type": "string",
1202
+ "format": "uuid"
1203
+ },
1204
+ "name": {
1205
+ "type": ["null", "string"]
1206
+ },
1207
+ "mediaType": {
1208
+ "type": ["null", "string"]
1209
+ },
1210
+ "url": {
1211
+ "type": ["null", "string"]
1212
+ },
1213
+ "extension": {
1214
+ "type": ["null", "string"]
1215
+ },
1216
+ "width": {
1217
+ "type": ["null", "integer"],
1218
+ "format": "int32"
1219
+ },
1220
+ "height": {
1221
+ "type": ["null", "integer"],
1222
+ "format": "int32"
1223
+ },
1224
+ "bytes": {
1225
+ "type": ["null", "integer"],
1226
+ "format": "int32"
1227
+ },
1228
+ "properties": {
1229
+ "type": ["null", "object"]
1230
+ }
1231
+ }
1232
+ },
1233
+ "ImageCropCoordinatesModel": {
1234
+ "required": ["x1", "y1", "x2", "y2"],
1235
+ "type": "object",
1236
+ "properties": {
1237
+ "x1": {
1238
+ "type": "number",
1239
+ "format": "double"
1240
+ },
1241
+ "y1": {
1242
+ "type": "number",
1243
+ "format": "double"
1244
+ },
1245
+ "x2": {
1246
+ "type": "number",
1247
+ "format": "double"
1248
+ },
1249
+ "y2": {
1250
+ "type": "number",
1251
+ "format": "double"
1252
+ }
1253
+ }
1254
+ },
1255
+ "ImageCropModel": {
1256
+ "required": ["alias", "width", "height", "coordinates"],
1257
+ "type": "object",
1258
+ "properties": {
1259
+ "alias": {
1260
+ "type": ["null", "string"]
1261
+ },
1262
+ "width": {
1263
+ "type": "integer",
1264
+ "format": "int32"
1265
+ },
1266
+ "height": {
1267
+ "type": "integer",
1268
+ "format": "int32"
1269
+ },
1270
+ "coordinates": {
1271
+ "$ref": "#/components/schemas/ImageCropCoordinatesModel"
1272
+ }
1273
+ }
1274
+ },
1275
+ "ImageFocalPointModel": {
1276
+ "required": ["left", "top"],
1277
+ "type": "object",
1278
+ "properties": {
1279
+ "left": {
1280
+ "type": "number",
1281
+ "format": "double"
1282
+ },
1283
+ "top": {
1284
+ "type": "number",
1285
+ "format": "double"
1286
+ }
1287
+ }
1288
+ },
1289
+ "PagedIApiContentResponseModel": {
1290
+ "required": ["total", "items"],
1291
+ "type": "object",
1292
+ "properties": {
1293
+ "total": {
1294
+ "type": "integer",
1295
+ "format": "int64"
1296
+ },
1297
+ "items": {
1298
+ "type": "array",
1299
+ "items": {
1300
+ "$ref": "#/components/schemas/IApiContentResponseModel"
1301
+ }
1302
+ }
1303
+ }
1304
+ },
1305
+ "PagedIApiMediaWithCropsResponseModel": {
1306
+ "required": ["total", "items"],
1307
+ "type": "object",
1308
+ "properties": {
1309
+ "total": {
1310
+ "type": "integer",
1311
+ "format": "int64"
1312
+ },
1313
+ "items": {
1314
+ "type": "array",
1315
+ "items": {
1316
+ "$ref": "#/components/schemas/IApiMediaWithCropsResponseModel"
1317
+ }
1318
+ }
1319
+ }
1320
+ },
1321
+ "ProblemDetails": {
1322
+ "type": "object",
1323
+ "properties": {
1324
+ "type": {
1325
+ "type": ["null", "string"]
1326
+ },
1327
+ "title": {
1328
+ "type": ["null", "string"]
1329
+ },
1330
+ "status": {
1331
+ "type": ["null", "integer"],
1332
+ "format": "int32"
1333
+ },
1334
+ "detail": {
1335
+ "type": ["null", "string"]
1336
+ },
1337
+ "instance": {
1338
+ "type": ["null", "string"]
1339
+ }
1340
+ }
1341
+ }
1342
+ },
1343
+ "securitySchemes": {
1344
+ "ApiKeyAuth": {
1345
+ "type": "apiKey",
1346
+ "description": "API key specified through configuration to authorize access to the API.",
1347
+ "name": "Api-Key",
1348
+ "in": "header"
1349
+ }
1350
+ }
1351
+ },
1352
+ "security": [
1353
+ {
1354
+ "ApiKeyAuth": []
1355
+ }
1356
+ ],
1357
+ "tags": [
1358
+ {
1359
+ "name": "Content"
1360
+ },
1361
+ {
1362
+ "name": "Media"
1363
+ }
1364
+ ]
1365
+ }