diff options
Diffstat (limited to 'support/doc/api')
-rw-r--r-- | support/doc/api/embeds.md | 8 | ||||
-rw-r--r-- | support/doc/api/openapi.yaml | 207 |
2 files changed, 186 insertions, 29 deletions
diff --git a/support/doc/api/embeds.md b/support/doc/api/embeds.md index 1dd1443e7..fd5507e38 100644 --- a/support/doc/api/embeds.md +++ b/support/doc/api/embeds.md | |||
@@ -52,7 +52,7 @@ player.pause() | |||
52 | ## Embed URL parameters | 52 | ## Embed URL parameters |
53 | 53 | ||
54 | You can customize PeerTube player by specifying URL query parameters. | 54 | You can customize PeerTube player by specifying URL query parameters. |
55 | For example `https://my-instance.example.com/videos/embed/52a10666-3a18-4e73-93da-e8d3c12c305a??start=1s&stop=18s&loop=1&autoplay=1&muted=1&warningTitle=0&controlBar=0&peertubeLink=0&p2p=0` | 55 | For example `https://my-instance.example.com/videos/embed/52a10666-3a18-4e73-93da-e8d3c12c305a?start=1s&stop=18s&loop=1&autoplay=1&muted=1&warningTitle=0&controlBar=0&peertubeLink=0&p2p=0` |
56 | 56 | ||
57 | ### start | 57 | ### start |
58 | 58 | ||
@@ -108,6 +108,10 @@ Most web browsers disable video autoplay if the user did not interact with the v | |||
108 | 108 | ||
109 | Value must be `0` or `1`. | 109 | Value must be `0` or `1`. |
110 | 110 | ||
111 | ### playbackRate | ||
112 | |||
113 | Force the default playback rate (`0.75`, `1.5` etc). | ||
114 | |||
111 | ### title | 115 | ### title |
112 | 116 | ||
113 | Hide embed title. | 117 | Hide embed title. |
@@ -142,7 +146,7 @@ Value must be a valid color (`red` or `rgba(100, 100, 100, 0.5)`). | |||
142 | 146 | ||
143 | Force a specific player engine. | 147 | Force a specific player engine. |
144 | 148 | ||
145 | Value must be a valid mode (`webtorrent` or `p2p-media-loader`). | 149 | Value must be a valid mode (`web-video` or `p2p-media-loader`). |
146 | 150 | ||
147 | ### api | 151 | ### api |
148 | 152 | ||
diff --git a/support/doc/api/openapi.yaml b/support/doc/api/openapi.yaml index cd50e86a6..2dfad9987 100644 --- a/support/doc/api/openapi.yaml +++ b/support/doc/api/openapi.yaml | |||
@@ -300,6 +300,8 @@ tags: | |||
300 | - name: Runner Registration Token | 300 | - name: Runner Registration Token |
301 | description: | | 301 | description: | |
302 | Manage runner registration token | 302 | Manage runner registration token |
303 | - name: Video Passwords | ||
304 | description: Operation on video passwords | ||
303 | 305 | ||
304 | x-tagGroups: | 306 | x-tagGroups: |
305 | - name: Static endpoints | 307 | - name: Static endpoints |
@@ -337,6 +339,7 @@ x-tagGroups: | |||
337 | - Video Transcoding | 339 | - Video Transcoding |
338 | - Live Videos | 340 | - Live Videos |
339 | - Channels Sync | 341 | - Channels Sync |
342 | - Video Passwords | ||
340 | - name: Search | 343 | - name: Search |
341 | tags: | 344 | tags: |
342 | - Search | 345 | - Search |
@@ -363,11 +366,11 @@ x-tagGroups: | |||
363 | - Runners | 366 | - Runners |
364 | 367 | ||
365 | paths: | 368 | paths: |
366 | '/static/webseed/{filename}': | 369 | '/static/web-videos/{filename}': |
367 | get: | 370 | get: |
368 | tags: | 371 | tags: |
369 | - Static Video Files | 372 | - Static Video Files |
370 | summary: Get public WebTorrent video file | 373 | summary: Get public Web Video file |
371 | parameters: | 374 | parameters: |
372 | - $ref: '#/components/parameters/staticFilename' | 375 | - $ref: '#/components/parameters/staticFilename' |
373 | responses: | 376 | responses: |
@@ -375,11 +378,11 @@ paths: | |||
375 | description: successful operation | 378 | description: successful operation |
376 | '404': | 379 | '404': |
377 | description: not found | 380 | description: not found |
378 | '/static/webseed/private/{filename}': | 381 | '/static/web-videos/private/{filename}': |
379 | get: | 382 | get: |
380 | tags: | 383 | tags: |
381 | - Static Video Files | 384 | - Static Video Files |
382 | summary: Get private WebTorrent video file | 385 | summary: Get private Web Video file |
383 | parameters: | 386 | parameters: |
384 | - $ref: '#/components/parameters/staticFilename' | 387 | - $ref: '#/components/parameters/staticFilename' |
385 | - $ref: '#/components/parameters/videoFileToken' | 388 | - $ref: '#/components/parameters/videoFileToken' |
@@ -571,7 +574,7 @@ paths: | |||
571 | - $ref: '#/components/parameters/include' | 574 | - $ref: '#/components/parameters/include' |
572 | - $ref: '#/components/parameters/privacyOneOf' | 575 | - $ref: '#/components/parameters/privacyOneOf' |
573 | - $ref: '#/components/parameters/hasHLSFiles' | 576 | - $ref: '#/components/parameters/hasHLSFiles' |
574 | - $ref: '#/components/parameters/hasWebtorrentFiles' | 577 | - $ref: '#/components/parameters/hasWebVideoFiles' |
575 | responses: | 578 | responses: |
576 | '200': | 579 | '200': |
577 | description: successful operation | 580 | description: successful operation |
@@ -655,7 +658,7 @@ paths: | |||
655 | - $ref: '#/components/parameters/include' | 658 | - $ref: '#/components/parameters/include' |
656 | - $ref: '#/components/parameters/privacyOneOf' | 659 | - $ref: '#/components/parameters/privacyOneOf' |
657 | - $ref: '#/components/parameters/hasHLSFiles' | 660 | - $ref: '#/components/parameters/hasHLSFiles' |
658 | - $ref: '#/components/parameters/hasWebtorrentFiles' | 661 | - $ref: '#/components/parameters/hasWebVideoFiles' |
659 | responses: | 662 | responses: |
660 | '200': | 663 | '200': |
661 | description: successful operation | 664 | description: successful operation |
@@ -745,7 +748,7 @@ paths: | |||
745 | - $ref: '#/components/parameters/include' | 748 | - $ref: '#/components/parameters/include' |
746 | - $ref: '#/components/parameters/privacyOneOf' | 749 | - $ref: '#/components/parameters/privacyOneOf' |
747 | - $ref: '#/components/parameters/hasHLSFiles' | 750 | - $ref: '#/components/parameters/hasHLSFiles' |
748 | - $ref: '#/components/parameters/hasWebtorrentFiles' | 751 | - $ref: '#/components/parameters/hasWebVideoFiles' |
749 | - $ref: '#/components/parameters/skipCount' | 752 | - $ref: '#/components/parameters/skipCount' |
750 | - $ref: '#/components/parameters/start' | 753 | - $ref: '#/components/parameters/start' |
751 | - $ref: '#/components/parameters/count' | 754 | - $ref: '#/components/parameters/count' |
@@ -915,7 +918,7 @@ paths: | |||
915 | description: > | 918 | description: > |
916 | Arises when: | 919 | Arises when: |
917 | - the emailer is disabled and the instance is open to registrations | 920 | - the emailer is disabled and the instance is open to registrations |
918 | - webtorrent and hls are disabled with transcoding enabled - you need at least one enabled | 921 | - web videos and hls are disabled with transcoding enabled - you need at least one enabled |
919 | delete: | 922 | delete: |
920 | summary: Delete instance runtime configuration | 923 | summary: Delete instance runtime configuration |
921 | operationId: delCustomConfig | 924 | operationId: delCustomConfig |
@@ -1870,7 +1873,7 @@ paths: | |||
1870 | - $ref: '#/components/parameters/include' | 1873 | - $ref: '#/components/parameters/include' |
1871 | - $ref: '#/components/parameters/privacyOneOf' | 1874 | - $ref: '#/components/parameters/privacyOneOf' |
1872 | - $ref: '#/components/parameters/hasHLSFiles' | 1875 | - $ref: '#/components/parameters/hasHLSFiles' |
1873 | - $ref: '#/components/parameters/hasWebtorrentFiles' | 1876 | - $ref: '#/components/parameters/hasWebVideoFiles' |
1874 | - $ref: '#/components/parameters/skipCount' | 1877 | - $ref: '#/components/parameters/skipCount' |
1875 | - $ref: '#/components/parameters/start' | 1878 | - $ref: '#/components/parameters/start' |
1876 | - $ref: '#/components/parameters/count' | 1879 | - $ref: '#/components/parameters/count' |
@@ -2359,6 +2362,7 @@ paths: | |||
2359 | - OAuth2: [] | 2362 | - OAuth2: [] |
2360 | parameters: | 2363 | parameters: |
2361 | - $ref: '#/components/parameters/idOrUUID' | 2364 | - $ref: '#/components/parameters/idOrUUID' |
2365 | - $ref: '#/components/parameters/videoPasswordHeader' | ||
2362 | responses: | 2366 | responses: |
2363 | '200': | 2367 | '200': |
2364 | description: successful operation | 2368 | description: successful operation |
@@ -2414,7 +2418,7 @@ paths: | |||
2414 | - $ref: '#/components/parameters/include' | 2418 | - $ref: '#/components/parameters/include' |
2415 | - $ref: '#/components/parameters/privacyOneOf' | 2419 | - $ref: '#/components/parameters/privacyOneOf' |
2416 | - $ref: '#/components/parameters/hasHLSFiles' | 2420 | - $ref: '#/components/parameters/hasHLSFiles' |
2417 | - $ref: '#/components/parameters/hasWebtorrentFiles' | 2421 | - $ref: '#/components/parameters/hasWebVideoFiles' |
2418 | - $ref: '#/components/parameters/skipCount' | 2422 | - $ref: '#/components/parameters/skipCount' |
2419 | - $ref: '#/components/parameters/start' | 2423 | - $ref: '#/components/parameters/start' |
2420 | - $ref: '#/components/parameters/count' | 2424 | - $ref: '#/components/parameters/count' |
@@ -2578,6 +2582,8 @@ paths: | |||
2578 | format: date-time | 2582 | format: date-time |
2579 | scheduleUpdate: | 2583 | scheduleUpdate: |
2580 | $ref: '#/components/schemas/VideoScheduledUpdate' | 2584 | $ref: '#/components/schemas/VideoScheduledUpdate' |
2585 | videoPasswords: | ||
2586 | $ref: '#/components/schemas/AddVideoPasswords' | ||
2581 | encoding: | 2587 | encoding: |
2582 | thumbnailfile: | 2588 | thumbnailfile: |
2583 | contentType: image/jpeg | 2589 | contentType: image/jpeg |
@@ -2590,6 +2596,7 @@ paths: | |||
2590 | - Video | 2596 | - Video |
2591 | parameters: | 2597 | parameters: |
2592 | - $ref: '#/components/parameters/idOrUUID' | 2598 | - $ref: '#/components/parameters/idOrUUID' |
2599 | - $ref: '#/components/parameters/videoPasswordHeader' | ||
2593 | responses: | 2600 | responses: |
2594 | '200': | 2601 | '200': |
2595 | description: successful operation | 2602 | description: successful operation |
@@ -2597,6 +2604,8 @@ paths: | |||
2597 | application/json: | 2604 | application/json: |
2598 | schema: | 2605 | schema: |
2599 | $ref: '#/components/schemas/VideoDetails' | 2606 | $ref: '#/components/schemas/VideoDetails' |
2607 | '403': | ||
2608 | description: provide a correct password to access this password protected video | ||
2600 | delete: | 2609 | delete: |
2601 | summary: Delete a video | 2610 | summary: Delete a video |
2602 | operationId: delVideo | 2611 | operationId: delVideo |
@@ -2618,6 +2627,7 @@ paths: | |||
2618 | - Video | 2627 | - Video |
2619 | parameters: | 2628 | parameters: |
2620 | - $ref: '#/components/parameters/idOrUUID' | 2629 | - $ref: '#/components/parameters/idOrUUID' |
2630 | - $ref: '#/components/parameters/videoPasswordHeader' | ||
2621 | responses: | 2631 | responses: |
2622 | '200': | 2632 | '200': |
2623 | description: successful operation | 2633 | description: successful operation |
@@ -3267,6 +3277,7 @@ paths: | |||
3267 | - Live Videos | 3277 | - Live Videos |
3268 | parameters: | 3278 | parameters: |
3269 | - $ref: '#/components/parameters/idOrUUID' | 3279 | - $ref: '#/components/parameters/idOrUUID' |
3280 | - $ref: '#/components/parameters/videoPasswordHeader' | ||
3270 | responses: | 3281 | responses: |
3271 | '200': | 3282 | '200': |
3272 | description: successful operation | 3283 | description: successful operation |
@@ -3657,6 +3668,27 @@ paths: | |||
3657 | items: | 3668 | items: |
3658 | $ref: '#/components/schemas/VideoBlacklist' | 3669 | $ref: '#/components/schemas/VideoBlacklist' |
3659 | 3670 | ||
3671 | /api/v1/videos/{id}/storyboards: | ||
3672 | get: | ||
3673 | summary: List storyboards of a video | ||
3674 | operationId: listVideoStoryboards | ||
3675 | tags: | ||
3676 | - Video | ||
3677 | parameters: | ||
3678 | - $ref: '#/components/parameters/idOrUUID' | ||
3679 | responses: | ||
3680 | '200': | ||
3681 | description: successful operation | ||
3682 | content: | ||
3683 | application/json: | ||
3684 | schema: | ||
3685 | type: object | ||
3686 | properties: | ||
3687 | storyboards: | ||
3688 | type: array | ||
3689 | items: | ||
3690 | $ref: '#/components/schemas/Storyboard' | ||
3691 | |||
3660 | /api/v1/videos/{id}/captions: | 3692 | /api/v1/videos/{id}/captions: |
3661 | get: | 3693 | get: |
3662 | summary: List captions of a video | 3694 | summary: List captions of a video |
@@ -3665,6 +3697,7 @@ paths: | |||
3665 | - Video Captions | 3697 | - Video Captions |
3666 | parameters: | 3698 | parameters: |
3667 | - $ref: '#/components/parameters/idOrUUID' | 3699 | - $ref: '#/components/parameters/idOrUUID' |
3700 | - $ref: '#/components/parameters/videoPasswordHeader' | ||
3668 | responses: | 3701 | responses: |
3669 | '200': | 3702 | '200': |
3670 | description: successful operation | 3703 | description: successful operation |
@@ -3728,6 +3761,70 @@ paths: | |||
3728 | '404': | 3761 | '404': |
3729 | description: video or language or caption for that language not found | 3762 | description: video or language or caption for that language not found |
3730 | 3763 | ||
3764 | /api/v1/videos/{id}/passwords: | ||
3765 | get: | ||
3766 | summary: List video passwords | ||
3767 | security: | ||
3768 | - OAuth2: | ||
3769 | - user | ||
3770 | tags: | ||
3771 | - Video Passwords | ||
3772 | parameters: | ||
3773 | - $ref: '#/components/parameters/idOrUUID' | ||
3774 | - $ref: '#/components/parameters/start' | ||
3775 | - $ref: '#/components/parameters/count' | ||
3776 | - $ref: '#/components/parameters/sort' | ||
3777 | responses: | ||
3778 | '204': | ||
3779 | description: successful operation | ||
3780 | content: | ||
3781 | application/json: | ||
3782 | schema: | ||
3783 | $ref: '#/components/schemas/VideoPasswordList' | ||
3784 | '400': | ||
3785 | description: video is not password protected | ||
3786 | put: | ||
3787 | summary: Update video passwords | ||
3788 | security: | ||
3789 | - OAuth2: | ||
3790 | - user | ||
3791 | tags: | ||
3792 | - Video Passwords | ||
3793 | parameters: | ||
3794 | - $ref: '#/components/parameters/idOrUUID' | ||
3795 | requestBody: | ||
3796 | content: | ||
3797 | application/json: | ||
3798 | schema: | ||
3799 | type: object | ||
3800 | properties: | ||
3801 | passwords: | ||
3802 | $ref: '#/components/schemas/AddVideoPasswords' | ||
3803 | responses: | ||
3804 | '204': | ||
3805 | description: successful operation | ||
3806 | '400': | ||
3807 | description: video is not password protected | ||
3808 | |||
3809 | /api/v1/videos/{id}/passwords/{videoPasswordId}: | ||
3810 | delete: | ||
3811 | summary: Delete a video password | ||
3812 | security: | ||
3813 | - OAuth2: | ||
3814 | - user | ||
3815 | tags: | ||
3816 | - Video Passwords | ||
3817 | parameters: | ||
3818 | - $ref: '#/components/parameters/idOrUUID' | ||
3819 | - $ref: '#/components/parameters/videoPasswordId' | ||
3820 | responses: | ||
3821 | '204': | ||
3822 | description: successful operation | ||
3823 | '403': | ||
3824 | description: cannot delete the last password of the protected video | ||
3825 | '400': | ||
3826 | description: video is not password protected | ||
3827 | |||
3731 | /api/v1/video-channels: | 3828 | /api/v1/video-channels: |
3732 | get: | 3829 | get: |
3733 | summary: List video channels | 3830 | summary: List video channels |
@@ -3836,7 +3933,7 @@ paths: | |||
3836 | - $ref: '#/components/parameters/include' | 3933 | - $ref: '#/components/parameters/include' |
3837 | - $ref: '#/components/parameters/privacyOneOf' | 3934 | - $ref: '#/components/parameters/privacyOneOf' |
3838 | - $ref: '#/components/parameters/hasHLSFiles' | 3935 | - $ref: '#/components/parameters/hasHLSFiles' |
3839 | - $ref: '#/components/parameters/hasWebtorrentFiles' | 3936 | - $ref: '#/components/parameters/hasWebVideoFiles' |
3840 | - $ref: '#/components/parameters/skipCount' | 3937 | - $ref: '#/components/parameters/skipCount' |
3841 | - $ref: '#/components/parameters/start' | 3938 | - $ref: '#/components/parameters/start' |
3842 | - $ref: '#/components/parameters/count' | 3939 | - $ref: '#/components/parameters/count' |
@@ -4554,6 +4651,7 @@ paths: | |||
4554 | - $ref: '#/components/parameters/start' | 4651 | - $ref: '#/components/parameters/start' |
4555 | - $ref: '#/components/parameters/count' | 4652 | - $ref: '#/components/parameters/count' |
4556 | - $ref: '#/components/parameters/commentsSort' | 4653 | - $ref: '#/components/parameters/commentsSort' |
4654 | - $ref: '#/components/parameters/videoPasswordHeader' | ||
4557 | responses: | 4655 | responses: |
4558 | '200': | 4656 | '200': |
4559 | description: successful operation | 4657 | description: successful operation |
@@ -4600,6 +4698,7 @@ paths: | |||
4600 | parameters: | 4698 | parameters: |
4601 | - $ref: '#/components/parameters/idOrUUID' | 4699 | - $ref: '#/components/parameters/idOrUUID' |
4602 | - $ref: '#/components/parameters/threadId' | 4700 | - $ref: '#/components/parameters/threadId' |
4701 | - $ref: '#/components/parameters/videoPasswordHeader' | ||
4603 | responses: | 4702 | responses: |
4604 | '200': | 4703 | '200': |
4605 | description: successful operation | 4704 | description: successful operation |
@@ -4618,6 +4717,7 @@ paths: | |||
4618 | parameters: | 4717 | parameters: |
4619 | - $ref: '#/components/parameters/idOrUUID' | 4718 | - $ref: '#/components/parameters/idOrUUID' |
4620 | - $ref: '#/components/parameters/commentId' | 4719 | - $ref: '#/components/parameters/commentId' |
4720 | - $ref: '#/components/parameters/videoPasswordHeader' | ||
4621 | responses: | 4721 | responses: |
4622 | '200': | 4722 | '200': |
4623 | description: successful operation | 4723 | description: successful operation |
@@ -4668,6 +4768,7 @@ paths: | |||
4668 | - Video Rates | 4768 | - Video Rates |
4669 | parameters: | 4769 | parameters: |
4670 | - $ref: '#/components/parameters/idOrUUID' | 4770 | - $ref: '#/components/parameters/idOrUUID' |
4771 | - $ref: '#/components/parameters/videoPasswordHeader' | ||
4671 | requestBody: | 4772 | requestBody: |
4672 | content: | 4773 | content: |
4673 | application/json: | 4774 | application/json: |
@@ -4703,15 +4804,15 @@ paths: | |||
4703 | description: successful operation | 4804 | description: successful operation |
4704 | '404': | 4805 | '404': |
4705 | description: video does not exist | 4806 | description: video does not exist |
4706 | '/api/v1/videos/{id}/webtorrent': | 4807 | '/api/v1/videos/{id}/web-videos': |
4707 | delete: | 4808 | delete: |
4708 | summary: Delete video WebTorrent files | 4809 | summary: Delete video Web Video files |
4709 | security: | 4810 | security: |
4710 | - OAuth2: | 4811 | - OAuth2: |
4711 | - admin | 4812 | - admin |
4712 | tags: | 4813 | tags: |
4713 | - Video Files | 4814 | - Video Files |
4714 | operationId: delVideoWebTorrent | 4815 | operationId: delVideoWebVideos |
4715 | parameters: | 4816 | parameters: |
4716 | - $ref: '#/components/parameters/idOrUUID' | 4817 | - $ref: '#/components/parameters/idOrUUID' |
4717 | responses: | 4818 | responses: |
@@ -4741,7 +4842,7 @@ paths: | |||
4741 | type: string | 4842 | type: string |
4742 | enum: | 4843 | enum: |
4743 | - hls | 4844 | - hls |
4744 | - webtorrent | 4845 | - web-video |
4745 | required: | 4846 | required: |
4746 | - transcodingType | 4847 | - transcodingType |
4747 | responses: | 4848 | responses: |
@@ -4779,7 +4880,7 @@ paths: | |||
4779 | - $ref: '#/components/parameters/privacyOneOf' | 4880 | - $ref: '#/components/parameters/privacyOneOf' |
4780 | - $ref: '#/components/parameters/uuids' | 4881 | - $ref: '#/components/parameters/uuids' |
4781 | - $ref: '#/components/parameters/hasHLSFiles' | 4882 | - $ref: '#/components/parameters/hasHLSFiles' |
4782 | - $ref: '#/components/parameters/hasWebtorrentFiles' | 4883 | - $ref: '#/components/parameters/hasWebVideoFiles' |
4783 | - $ref: '#/components/parameters/skipCount' | 4884 | - $ref: '#/components/parameters/skipCount' |
4784 | - $ref: '#/components/parameters/start' | 4885 | - $ref: '#/components/parameters/start' |
4785 | - $ref: '#/components/parameters/count' | 4886 | - $ref: '#/components/parameters/count' |
@@ -6370,13 +6471,13 @@ components: | |||
6370 | schema: | 6471 | schema: |
6371 | type: boolean | 6472 | type: boolean |
6372 | description: '**PeerTube >= 4.0** Display only videos that have HLS files' | 6473 | description: '**PeerTube >= 4.0** Display only videos that have HLS files' |
6373 | hasWebtorrentFiles: | 6474 | hasWebVideoFiles: |
6374 | name: hasWebtorrentFiles | 6475 | name: hasWebVideoFiles |
6375 | in: query | 6476 | in: query |
6376 | required: false | 6477 | required: false |
6377 | schema: | 6478 | schema: |
6378 | type: boolean | 6479 | type: boolean |
6379 | description: '**PeerTube >= 4.0** Display only videos that have WebTorrent files' | 6480 | description: '**PeerTube >= 4.0** Display only videos that have Web Video files' |
6380 | privacyOneOf: | 6481 | privacyOneOf: |
6381 | name: privacyOneOf | 6482 | name: privacyOneOf |
6382 | in: query | 6483 | in: query |
@@ -6525,7 +6626,20 @@ components: | |||
6525 | required: true | 6626 | required: true |
6526 | schema: | 6627 | schema: |
6527 | $ref: '#/components/schemas/UUIDv4' | 6628 | $ref: '#/components/schemas/UUIDv4' |
6528 | 6629 | videoPasswordId: | |
6630 | name: videoPasswordId | ||
6631 | in: path | ||
6632 | required: true | ||
6633 | description: The video password id | ||
6634 | schema: | ||
6635 | $ref: '#/components/schemas/id' | ||
6636 | videoPasswordHeader: | ||
6637 | name: x-peertube-video-password | ||
6638 | description: Required on password protected video | ||
6639 | in: header | ||
6640 | required: false | ||
6641 | schema: | ||
6642 | type: string | ||
6529 | securitySchemes: | 6643 | securitySchemes: |
6530 | OAuth2: | 6644 | OAuth2: |
6531 | description: | | 6645 | description: | |
@@ -7015,7 +7129,7 @@ components: | |||
7015 | maxLength: 120 | 7129 | maxLength: 120 |
7016 | thumbnailPath: | 7130 | thumbnailPath: |
7017 | type: string | 7131 | type: string |
7018 | example: /static/thumbnails/a65bc12f-9383-462e-81ae-8207e8b434ee.jpg | 7132 | example: /lazy-static/thumbnails/a65bc12f-9383-462e-81ae-8207e8b434ee.jpg |
7019 | previewPath: | 7133 | previewPath: |
7020 | type: string | 7134 | type: string |
7021 | example: /lazy-static/previews/a65bc12f-9383-462e-81ae-8207e8b434ee.jpg | 7135 | example: /lazy-static/previews/a65bc12f-9383-462e-81ae-8207e8b434ee.jpg |
@@ -7108,7 +7222,7 @@ components: | |||
7108 | items: | 7222 | items: |
7109 | $ref: '#/components/schemas/VideoFile' | 7223 | $ref: '#/components/schemas/VideoFile' |
7110 | description: | | 7224 | description: | |
7111 | WebTorrent/raw video files. If WebTorrent is disabled on the server: | 7225 | Web compatible video files. If Web Video is disabled on the server: |
7112 | 7226 | ||
7113 | - field will be empty | 7227 | - field will be empty |
7114 | - video files will be found in `streamingPlaylists[].files` field | 7228 | - video files will be found in `streamingPlaylists[].files` field |
@@ -7416,6 +7530,20 @@ components: | |||
7416 | type: array | 7530 | type: array |
7417 | items: | 7531 | items: |
7418 | $ref: '#/components/schemas/VideoCommentThreadTree' | 7532 | $ref: '#/components/schemas/VideoCommentThreadTree' |
7533 | Storyboard: | ||
7534 | properties: | ||
7535 | storyboardPath: | ||
7536 | type: string | ||
7537 | totalHeight: | ||
7538 | type: integer | ||
7539 | totalWidth: | ||
7540 | type: integer | ||
7541 | spriteHeight: | ||
7542 | type: integer | ||
7543 | spriteWidth: | ||
7544 | type: integer | ||
7545 | spriteDuration: | ||
7546 | type: integer | ||
7419 | VideoCaption: | 7547 | VideoCaption: |
7420 | properties: | 7548 | properties: |
7421 | language: | 7549 | language: |
@@ -7640,7 +7768,7 @@ components: | |||
7640 | properties: | 7768 | properties: |
7641 | enabled: | 7769 | enabled: |
7642 | type: boolean | 7770 | type: boolean |
7643 | webtorrent: | 7771 | web_videos: |
7644 | type: object | 7772 | type: object |
7645 | properties: | 7773 | properties: |
7646 | enabled: | 7774 | enabled: |
@@ -8006,15 +8134,15 @@ components: | |||
8006 | type: boolean | 8134 | type: boolean |
8007 | 2160p: | 8135 | 2160p: |
8008 | type: boolean | 8136 | type: boolean |
8009 | webtorrent: | 8137 | web_videos: |
8010 | type: object | 8138 | type: object |
8011 | description: WebTorrent-specific settings | 8139 | description: Web Video specific settings |
8012 | properties: | 8140 | properties: |
8013 | enabled: | 8141 | enabled: |
8014 | type: boolean | 8142 | type: boolean |
8015 | hls: | 8143 | hls: |
8016 | type: object | 8144 | type: object |
8017 | description: HLS-specific settings | 8145 | description: HLS specific settings |
8018 | properties: | 8146 | properties: |
8019 | enabled: | 8147 | enabled: |
8020 | type: boolean | 8148 | type: boolean |
@@ -8228,6 +8356,8 @@ components: | |||
8228 | description: Video preview file | 8356 | description: Video preview file |
8229 | type: string | 8357 | type: string |
8230 | format: binary | 8358 | format: binary |
8359 | videoPasswords: | ||
8360 | $ref: '#/components/schemas/AddVideoPasswords' | ||
8231 | required: | 8361 | required: |
8232 | - channelId | 8362 | - channelId |
8233 | - name | 8363 | - name |
@@ -9391,7 +9521,7 @@ components: | |||
9391 | type: string | 9521 | type: string |
9392 | enum: | 9522 | enum: |
9393 | - 'p2p-media-loader' | 9523 | - 'p2p-media-loader' |
9394 | - 'webtorrent' | 9524 | - 'web-video' |
9395 | resolution: | 9525 | resolution: |
9396 | type: number | 9526 | type: number |
9397 | description: Current player video resolution | 9527 | description: Current player video resolution |
@@ -9616,6 +9746,29 @@ components: | |||
9616 | privatePayload: | 9746 | privatePayload: |
9617 | type: object | 9747 | type: object |
9618 | 9748 | ||
9749 | VideoPassword: | ||
9750 | properties: | ||
9751 | id: | ||
9752 | $ref: '#/components/schemas/id' | ||
9753 | password: | ||
9754 | type: string | ||
9755 | minLength: 2 | ||
9756 | videoId: | ||
9757 | $ref: '#/components/schemas/id' | ||
9758 | VideoPasswordList: | ||
9759 | properties: | ||
9760 | total: | ||
9761 | type: integer | ||
9762 | example: 1 | ||
9763 | data: | ||
9764 | type: array | ||
9765 | items: | ||
9766 | $ref: '#/components/schemas/VideoPassword' | ||
9767 | AddVideoPasswords: | ||
9768 | type: array | ||
9769 | items: | ||
9770 | $ref: "#/components/schemas/VideoPassword/properties/password" | ||
9771 | uniqueItems: true | ||
9619 | callbacks: | 9772 | callbacks: |
9620 | searchIndex: | 9773 | searchIndex: |
9621 | 'https://search.example.org/api/v1/search/videos': | 9774 | 'https://search.example.org/api/v1/search/videos': |