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 id of the account'
37 description: 'starting page'
42 description: 'stopping page'
47 description: 'sorting'
50 description: successful operation
52 $ref: '#/definitions/Account'
63 description: successful operation
67 $ref: '#/definitions/Account'
78 description: successful operation
80 $ref: '#/definitions/ServerConfig'
81 /feeds/videos.{format}:
94 enum: ['xml', 'atom' 'json']
96 description: 'The format expected (xml defaults to RSS 2.0, atom to ATOM 1.0 and json to JSON FEED 1.0'
101 description: 'The id of the local account to filter to (beware, users IDs and not actors IDs which will return empty feeds'
106 description: 'The name of the local account to filter to'
109 description: successful operation
128 description: 'The id of the account'
133 description: 'starting page'
143 description: 'sorting'
146 description: successful operation
150 $ref: '#/definitions/Job'
151 '/server/following/{host}':
166 description: 'The host to unfollow '
169 description: successful operation
183 description: 'starting page'
188 description: 'stopping page'
193 description: 'sorting'
196 description: successful operation
200 $ref: '#/definitions/Follow'
214 description: 'starting page'
219 description: 'stopping page'
224 description: 'sorting'
227 description: successful operation
231 $ref: '#/definitions/Follow'
245 $ref: '#/definitions/Follow'
248 description: successful operation
263 description: 'User to create'
265 $ref: '#/definitions/AddUser'
268 description: successful operation
270 $ref: '#/definitions/AddUserResponse'
285 description: 'starting page'
290 description: 'stopping page'
295 description: 'sorting'
298 description: successful operation
302 $ref: '#/definitions/User'
318 description: 'The user id '
321 description: successful operation
336 description: 'The user id '
339 description: successful operation
341 $ref: '#/definitions/User'
356 description: 'The user id '
361 $ref: '#/definitions/UpdateUser'
364 description: successful operation
377 description: successful operation
381 $ref: '#/definitions/User'
396 $ref: '#/definitions/UpdateMe'
399 description: successful operation
400 /users/me/video-quota-used:
413 description: successful operation
416 '/users/me/videos/{videoId}/rating':
431 description: 'The video id '
434 description: successful operation
436 $ref: '#/definitions/GetMeVideoRating'
452 description: 'starting page'
457 description: 'stopping page'
462 description: 'sorting'
465 description: successful operation
469 $ref: '#/definitions/Video'
483 $ref: '#/definitions/RegisterUser'
486 description: successful operation
487 /users/me/avatar/pick:
494 - multipart/form-data
501 description: The file to upload.
504 description: successful operation
506 $ref: '#/definitions/Avatar'
520 description: 'starting page'
525 description: 'stopping page'
530 description: 'sorting'
533 description: successful operation
537 $ref: '#/definitions/Video'
548 description: successful operation
563 description: successful operation
578 description: successful operation
593 description: successful operation
611 description: 'starting page'
616 description: 'stopping page'
621 description: 'sorting'
624 description: successful operation
628 $ref: '#/definitions/Video'
636 - multipart/form-data
644 description: 'The video id'
645 - name: thumbnailfile
648 description: 'Video thumbnail file'
652 description: 'Video preview file'
656 description: 'Video category'
660 description: 'Video licence'
664 description: 'Video language'
668 description: 'Video description'
672 description: 'Text describing how to support the video uploader'
676 description: 'Whether or not this video contains sensitive content'
680 description: 'Video name'
684 description: 'Video tags'
685 - name: commentsEnabled
688 description: 'Enable or disable comments for this video'
692 enum: [Public, Unlisted]
693 description: 'Video privacy'
696 description: successful operation
698 $ref: '#/definitions/Video'
711 description: 'The video id '
714 description: successful operation
716 $ref: '#/definitions/Video'
731 description: 'The video id '
734 description: successful operation
735 "/videos/{id}/description":
748 description: 'The video id '
751 description: successful operation
754 "/videos/{id}/views":
767 description: 'The video id '
770 description: successful operation
778 - multipart/form-data
786 description: 'Video file'
787 - name: thumbnailfile
791 description: 'Video thumbnail file'
796 description: 'Video preview file'
800 description: 'Video category'
804 description: 'Video licence'
808 description: 'Video language'
812 description: 'Video description'
816 description: 'Text describing how to support the video uploader'
821 description: 'Channel id that will contain this video'
826 description: 'Whether or not this video contains sensitive content'
831 description: 'Video name'
835 description: 'Video tags'
836 - name: commentsEnabled
839 description: 'Enable or disable comments for this video'
844 enum: [Public, Unlisted, Private]
845 description: 'Video privacy'
848 description: successful operation
850 $ref: '#/definitions/VideoUploadResponse'
866 description: 'starting page'
871 description: 'stopping page'
876 description: 'sorting'
879 description: successful operation
883 $ref: '#/definitions/VideoAbuse'
884 "/videos/{id}/abuse":
899 description: 'The video id '
902 description: successful operation
903 "/videos/{videoId}/blacklist":
918 description: 'The video id '
921 description: successful operation
936 description: 'The video id '
939 description: successful operation
955 description: 'starting page'
960 description: 'stopping page'
965 description: 'sorting'
968 description: successful operation
972 $ref: '#/definitions/VideoBlacklist'
986 description: 'starting page'
991 description: 'stopping page'
996 description: 'sorting'
999 description: successful operation
1003 $ref: '#/definitions/VideoChannel'
1017 $ref: '#/definitions/VideoChannelInput'
1020 description: successful operation
1021 "/videos/channels/{id}":
1034 description: 'The video id '
1037 description: successful operation
1039 $ref: '#/definitions/VideoChannel'
1054 description: 'The video id '
1058 $ref: '#/definitions/VideoChannelInput'
1061 description: successful operation
1076 description: 'The video id '
1079 description: successful operation
1080 /videos/accounts/{accountId}/channels:
1093 description: 'The account id '
1096 description: successful operation
1100 $ref: '#/definitions/VideoChannel'
1101 "/videos/{videoId}/comment-threads":
1114 description: 'The video id '
1119 description: 'starting page'
1124 description: 'stopping page'
1129 description: 'sorting'
1132 description: successful operation
1134 $ref: '#/definitions/CommentThreadResponse'
1149 description: 'The video id '
1152 description: successful operation
1154 $ref: '#/definitions/CommentThreadPostResponse'
1155 "/videos/{videoId}/comment-threads/{threadId}":
1168 description: 'The video id '
1173 description: 'The thread id '
1176 description: successful operation
1178 $ref: '#/definitions/VideoCommentThreadTree'
1179 "/videos/{videoId}/comments/{commentId}":
1194 description: 'The video id '
1199 description: 'The comment id '
1202 description: successful operation
1204 $ref: '#/definitions/CommentThreadPostResponse'
1219 description: 'The video id '
1224 description: 'The comment id '
1227 description: successful operation
1228 "/videos/{id}/rate":
1243 description: 'The video id '
1246 description: successful operation
1256 enum: [Public, Unlisted, Private]
1270 $ref: "#/definitions/VideoConstant"
1272 $ref: "#/definitions/VideoConstant"
1274 $ref: "#/definitions/VideoConstant"
1276 $ref: "#/definitions/VideoPrivacy"
1311 $ref: "#/definitions/Avatar"
1319 $ref: "#/definitions/Account"
1377 $ref: "#/definitions/Video"
1399 $ref: "#/definitions/Account"
1400 VideoCommentThreadTree:
1403 $ref: "#/definitions/VideoComment"
1407 $ref: "#/definitions/VideoCommentThreadTree"
1437 $ref: "#/definitions/Avatar"
1440 - $ref: "#/definitions/Actor"
1458 enum: [User, Moderator, Administrator]
1464 $ref: "#/definitions/Account"
1468 $ref: "#/definitions/VideoChannel"
1513 $ref: "#/definitions/Actor"
1515 $ref: "#/definitions/Actor"
1520 enum: [pending, accepted]
1531 enum: [pending, processing, error, success]
1534 enum: [transcoding, activitypub-http]
1551 VideoUploadResponse:
1560 CommentThreadResponse:
1567 $ref: "#/definitions/VideoComment"
1568 CommentThreadPostResponse:
1571 $ref: "#/definitions/VideoComment"
1578 description: 'The user username '
1581 description: 'The user password '
1584 description: 'The user email '
1587 description: 'The user videoQuota '
1590 description: 'The user role '
1601 description: 'The user id '
1604 description: 'The updated email of the user '
1607 description: 'The updated videoQuota of the user '
1610 description: 'The updated role of the user '
1620 description: 'Your new password '
1623 description: 'Your new email '
1626 description: 'Your new displayNSFW '
1629 description: 'Your new autoPlayVideo '
1639 description: 'Id of the video '
1642 description: 'Rating of the video '
1650 description: 'The username of the user '
1653 description: 'The password of the user '
1656 description: 'The email of the user '