+ version: 1.3.0
+ contact:
+ name: PeerTube Community
+ url: 'https://joinpeertube.org'
+ license:
+ name: AGPLv3.0
+ url: 'https://github.com/Chocobozzz/PeerTube/blob/master/LICENSE'
+ x-logo:
+ url: 'https://joinpeertube.org/img/brand.png'
+ altText: PeerTube Project Homepage
+ description: |
+ # Introduction
+ The PeerTube API is built on HTTP(S). Our API is RESTful. It has predictable
+ resource URLs. It returns HTTP response codes to indicate errors. It also
+ accepts and returns JSON in the HTTP body. You can use your favorite
+ HTTP/REST library for your programming language to use PeerTube. No official
+ SDK is currently provided, but the spec API is fully compatible with
+ [openapi-generator](https://github.com/OpenAPITools/openapi-generator/wiki/API-client-generator-HOWTO)
+ which generates a client SDK in the language of your choice.
+
+ # Authentication
+ When you sign up for an account, you are given the possibility to generate
+ sessions, and authenticate using this session token. One session token can
+ currently be used at a time.
+
+ # Errors
+ The API uses standard HTTP status codes to indicate the success or failure
+ of the API call. The body of the response will be JSON in the following
+ format.
+
+ ```
+ {
+ "code": "unauthorized_request", // example inner error code
+ "error": "Token is invalid." // example exposed error message
+ }
+ ```
+externalDocs:
+ url: https://docs.joinpeertube.org/#/api-rest-reference.html
+tags:
+ - name: Accounts
+ description: >
+ Using some features of PeerTube require authentication, for which Accounts
+ provide different levels of permission as well as associated user
+ information. Accounts also encompass remote accounts discovered across the federation.
+ - name: Config
+ description: >
+ Each server exposes public information regarding supported videos and
+ options.
+ - name: Feeds
+ description: |
+ Feeds of videos and feeds of comments allow to see updates and get them in
+ an aggregator or script of your choice.
+ - name: Job
+ description: >
+ Jobs are long-running tasks enqueued and processed by the instance
+ itself. No additional worker registration is currently available.
+ - name: Server Following
+ description: >
+ Managing servers which the instance interacts with is crucial to the
+ concept of federation in PeerTube and external video indexation. The PeerTube
+ server then deals with inter-server ActivityPub operations and propagates
+ information across its social graph by posting activities to actors' inbox
+ endpoints.
+ - name: Video Abuse
+ description: |
+ Video abuses deal with reports of local or remote videos alike.
+ - name: Video
+ description: |
+ Operations dealing with listing, uploading, fetching or modifying videos.
+ - name: Search
+ description: |
+ The search helps to find _videos_ from within the instance and beyond.
+ Videos from other instances federated by the instance (that is, instances
+ followed by the instance) can be found via keywords and other criteria of
+ the advanced search.
+ - name: Video Comment
+ description: >
+ Operations dealing with comments to a video. Comments are organized in
+ threads.
+ - name: Video Channel
+ description: >
+ Operations dealing with creation, modification and video listing of a
+ user's channels.
+ - name: Video Blacklist
+ description: >
+ Operations dealing with blacklisting videos (removing them from view and
+ preventing interactions).
+ - name: Video Rate
+ description: >
+ Voting for a video.
+x-tagGroups:
+ - name: Accounts
+ tags:
+ - Accounts
+ - User
+ - name: Videos
+ tags:
+ - Video
+ - Video Caption
+ - Video Channel
+ - Video Comment
+ - Video Following
+ - Video Rate
+ - name: Moderation
+ tags:
+ - Video Abuse
+ - Video Blacklist
+ - name: Instance Configuration
+ tags:
+ - Config
+ - Server Following
+ - name: Notifications
+ tags:
+ - Feeds
+ - name: Jobs
+ tags:
+ - Job
+ - name: Search
+ tags:
+ - Search