5 description: Federated (ActivityPub) video streaming platform using P2P (BitTorrent) directly in the web browser with WebTorrent and Angular.
6 host: peertube.example.com
9 description: 'In the header: *Authorization: Bearer mytoken*'
13 # authorizationUrl: https://example.com/oauth/authorize
14 tokenUrl: https://peertube.example.com/api/v1/users/token
32 description: 'The name of the account (chocobozzz or chocobozzz@peertube.cpy.re for example)'
37 description: 'starting page'
42 description: 'stopping page'
47 description: 'sorting'
50 description: successful operation
52 $ref: '#/definitions/Account'
53 '/accounts/{name}/videos':
66 description: 'The name of the account (chocobozzz or chocobozzz@peertube.cpy.re for example)'
69 description: successful operation
71 $ref: '#/definitions/Video'
82 description: successful operation
86 $ref: '#/definitions/Account'
97 description: successful operation
99 $ref: '#/definitions/ServerConfig'
100 /feeds/videos.{format}:
105 - application/atom+xml
106 - application/rss+xml
113 enum: [ 'xml', 'atom', 'json']
115 description: 'The format expected (xml defaults to RSS 2.0, atom to ATOM 1.0 and json to JSON FEED 1.0'
120 description: 'The id of the local account to filter to (beware, users IDs and not actors IDs which will return empty feeds'
125 description: 'The name of the local account to filter to'
128 description: successful operation
144 description: 'The id of the account'
149 description: 'starting page'
159 description: 'sorting'
162 description: successful operation
166 $ref: '#/definitions/Job'
167 '/server/following/{host}':
182 description: 'The host to unfollow '
185 description: successful operation
199 description: 'starting page'
204 description: 'stopping page'
209 description: 'sorting'
212 description: successful operation
216 $ref: '#/definitions/Follow'
230 description: 'starting page'
235 description: 'stopping page'
240 description: 'sorting'
243 description: successful operation
247 $ref: '#/definitions/Follow'
261 $ref: '#/definitions/Follow'
264 description: successful operation
279 description: 'User to create'
281 $ref: '#/definitions/AddUser'
284 description: successful operation
286 $ref: '#/definitions/AddUserResponse'
301 description: 'starting page'
306 description: 'stopping page'
311 description: 'sorting'
314 description: successful operation
318 $ref: '#/definitions/User'
334 description: 'The user id '
337 description: successful operation
352 description: 'The user id '
355 description: successful operation
357 $ref: '#/definitions/User'
372 description: 'The user id '
377 $ref: '#/definitions/UpdateUser'
380 description: successful operation
393 description: successful operation
397 $ref: '#/definitions/User'
412 $ref: '#/definitions/UpdateMe'
415 description: successful operation
416 /users/me/video-quota-used:
429 description: successful operation
432 '/users/me/videos/{videoId}/rating':
447 description: 'The video id '
450 description: successful operation
452 $ref: '#/definitions/GetMeVideoRating'
468 description: 'starting page'
473 description: 'stopping page'
478 description: 'sorting'
481 description: successful operation
485 $ref: '#/definitions/Video'
499 $ref: '#/definitions/RegisterUser'
502 description: successful operation
503 /users/me/avatar/pick:
510 - multipart/form-data
517 description: The file to upload.
520 description: successful operation
522 $ref: '#/definitions/Avatar'
536 description: 'starting page'
541 description: 'stopping page'
546 description: 'sorting'
549 description: successful operation
553 $ref: '#/definitions/Video'
564 description: successful operation
579 description: successful operation
594 description: successful operation
609 description: successful operation
627 description: 'starting page'
632 description: 'stopping page'
637 description: 'sorting'
640 description: successful operation
644 $ref: '#/definitions/Video'
652 - multipart/form-data
660 description: 'The video id'
661 - name: thumbnailfile
664 description: 'Video thumbnail file'
668 description: 'Video preview file'
672 description: 'Video category'
676 description: 'Video licence'
680 description: 'Video language'
684 description: 'Video description'
685 - name: waitTranscoding
688 description: 'Whether or not we wait transcoding before publish the video'
692 description: 'Text describing how to support the video uploader'
696 description: 'Whether or not this video contains sensitive content'
700 description: 'Video name'
704 description: 'Video tags'
705 - name: commentsEnabled
708 description: 'Enable or disable comments for this video'
712 enum: [Public, Unlisted]
713 description: 'Video privacy'
716 description: successful operation
718 $ref: '#/definitions/Video'
731 description: 'The video id '
734 description: successful operation
736 $ref: '#/definitions/Video'
751 description: 'The video id '
754 description: successful operation
755 "/videos/{id}/description":
768 description: 'The video id '
771 description: successful operation
774 "/videos/{id}/views":
787 description: 'The video id '
790 description: successful operation
798 - multipart/form-data
806 description: 'Video file'
807 - name: thumbnailfile
811 description: 'Video thumbnail file'
816 description: 'Video preview file'
820 description: 'Video category'
821 - name: waitTranscoding
824 description: 'Whether or not we wait transcoding before publish the video'
828 description: 'Video licence'
832 description: 'Video language'
836 description: 'Video description'
840 description: 'Text describing how to support the video uploader'
845 description: 'Channel id that will contain this video'
850 description: 'Whether or not this video contains sensitive content'
855 description: 'Video name'
859 description: 'Video tags'
860 - name: commentsEnabled
863 description: 'Enable or disable comments for this video'
868 enum: [Public, Unlisted, Private]
869 description: 'Video privacy'
872 description: successful operation
874 $ref: '#/definitions/VideoUploadResponse'
890 description: 'starting page'
895 description: 'stopping page'
900 description: 'sorting'
903 description: successful operation
907 $ref: '#/definitions/VideoAbuse'
908 "/videos/{id}/abuse":
923 description: 'The video id '
926 description: successful operation
927 "/videos/{videoId}/blacklist":
942 description: 'The video id '
945 description: successful operation
960 description: 'The video id '
963 description: successful operation
979 description: 'starting page'
984 description: 'stopping page'
989 description: 'sorting'
992 description: successful operation
996 $ref: '#/definitions/VideoBlacklist'
1010 description: 'starting page'
1015 description: 'stopping page'
1020 description: 'sorting'
1023 description: successful operation
1027 $ref: '#/definitions/VideoChannel'
1041 $ref: '#/definitions/VideoChannelInput'
1044 description: successful operation
1045 "/video-channels/{id}":
1058 description: 'The video channel id '
1061 description: successful operation
1063 $ref: '#/definitions/VideoChannel'
1078 description: 'The video channel id '
1082 $ref: '#/definitions/VideoChannelInput'
1085 description: successful operation
1100 description: 'The video channel id '
1103 description: successful operation
1104 "/video-channels/{id}/videos":
1117 description: 'The video channel id '
1120 description: successful operation
1122 $ref: '#/definitions/Video'
1123 /accounts/{name}/video-channels:
1136 description: 'The name of the account (chocobozzz or chocobozzz@peertube.cpy.re for example)'
1139 description: successful operation
1143 $ref: '#/definitions/VideoChannel'
1144 "/videos/{videoId}/comment-threads":
1157 description: 'The video id '
1162 description: 'starting page'
1167 description: 'stopping page'
1172 description: 'sorting'
1175 description: successful operation
1177 $ref: '#/definitions/CommentThreadResponse'
1192 description: 'The video id '
1195 description: successful operation
1197 $ref: '#/definitions/CommentThreadPostResponse'
1198 "/videos/{videoId}/comment-threads/{threadId}":
1211 description: 'The video id '
1216 description: 'The thread id '
1219 description: successful operation
1221 $ref: '#/definitions/VideoCommentThreadTree'
1222 "/videos/{videoId}/comments/{commentId}":
1237 description: 'The video id '
1242 description: 'The comment id '
1245 description: successful operation
1247 $ref: '#/definitions/CommentThreadPostResponse'
1262 description: 'The video id '
1267 description: 'The comment id '
1270 description: successful operation
1271 "/videos/{id}/rate":
1286 description: 'The video id '
1289 description: successful operation
1291 VideoConstantNumber:
1297 VideoConstantString:
1305 enum: [Public, Unlisted, Private]
1319 $ref: "#/definitions/VideoConstantNumber"
1321 $ref: "#/definitions/VideoConstantNumber"
1323 $ref: "#/definitions/VideoConstantString"
1325 $ref: "#/definitions/VideoPrivacy"
1360 $ref: "#/definitions/Avatar"
1368 $ref: "#/definitions/Account"
1444 $ref: "#/definitions/Account"
1445 VideoCommentThreadTree:
1448 $ref: "#/definitions/VideoComment"
1452 $ref: "#/definitions/VideoCommentThreadTree"
1482 $ref: "#/definitions/Avatar"
1485 - $ref: "#/definitions/Actor"
1503 enum: [User, Moderator, Administrator]
1509 $ref: "#/definitions/Account"
1513 $ref: "#/definitions/VideoChannel"
1558 $ref: "#/definitions/Actor"
1560 $ref: "#/definitions/Actor"
1565 enum: [pending, accepted]
1576 enum: [pending, processing, error, success]
1579 enum: [transcoding, activitypub-http]
1596 VideoUploadResponse:
1605 CommentThreadResponse:
1612 $ref: "#/definitions/VideoComment"
1613 CommentThreadPostResponse:
1616 $ref: "#/definitions/VideoComment"
1623 description: 'The user username '
1626 description: 'The user password '
1629 description: 'The user email '
1632 description: 'The user videoQuota '
1635 description: 'The user role '
1646 description: 'The user id '
1649 description: 'The updated email of the user '
1652 description: 'The updated videoQuota of the user '
1655 description: 'The updated role of the user '
1665 description: 'Your new password '
1668 description: 'Your new email '
1671 description: 'Your new displayNSFW '
1674 description: 'Your new autoPlayVideo '
1684 description: 'Id of the video '
1687 description: 'Rating of the video '
1695 description: 'The username of the user '
1698 description: 'The password of the user '
1701 description: 'The email of the user '