Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
openapi: 3.2.0
info:
title: PeerTube Logs API
version: 8.1.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: The PeerTube API is built on HTTP(S) and is RESTful.
servers:
- url: https://peertube2.cpy.re
description: Live Test Server (live data - latest nightly version)
- url: https://peertube3.cpy.re
description: Live Test Server (live data - latest RC version)
- url: https://peertube.cpy.re
description: Live Test Server (live data - stable version)
tags:
- name: Logs
description: Operations dealing with client, server and audit logs.
paths:
/api/v1/server/logs/client:
post:
tags:
- Logs
summary: Send client log
operationId: sendClientLog
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SendClientLog'
responses:
'204':
description: successful operation
/api/v1/server/logs:
get:
tags:
- Logs
summary: Get instance logs
operationId: getInstanceLogs
security:
- OAuth2:
- admin
responses:
'200':
description: successful operation
content:
application/json:
schema:
type: array
items:
type: string
/api/v1/server/audit-logs:
get:
tags:
- Logs
summary: Get instance audit logs
operationId: getInstanceAuditLogs
security:
- OAuth2:
- admin
responses:
'200':
description: successful operation
content:
application/json:
schema:
type: array
items:
type: string
components:
schemas:
SendClientLog:
properties:
message:
type: string
url:
type: string
description: URL of the current user page
level:
enum:
- error
- warn
stackTrace:
type: string
description: Stack trace of the error if there is one
userAgent:
type: string
description: User agent of the web browser that sends the message
meta:
type: string
description: Additional information regarding this log
required:
- message
- url
- level
securitySchemes:
OAuth2:
description: 'Authenticating via OAuth requires the following steps:
- Have an activated account
- [Generate] an access token for that account at `/api/v1/users/token`.
- Make requests with the *Authorization: Bearer <token\>* header
- Profit, depending on the role assigned to the account
Note that the __access token is valid for 1 day__ and is given
along with a __refresh token valid for 2 weeks__.
[Generate]: https://docs.joinpeertube.org/api/rest-getting-started
'
type: oauth2
flows:
password:
tokenUrl: /api/v1/users/token
scopes:
admin: Admin scope
moderator: Moderator scope
user: User scope
externalDocs:
url: https://docs.joinpeertube.org/api-rest-reference.html
x-tagGroups:
- name: Static endpoints
tags:
- Static Video Files
- name: Download
tags:
- Video Download
- name: Feeds
tags:
- Video Feeds
- name: Auth
tags:
- Register
- Session
- name: Accounts
tags:
- Accounts
- Users
- User Exports
- User Imports
- My User
- My Subscriptions
- My Notifications
- My History
- name: Videos
tags:
- Video
- Video Upload
- Video Imports
- Video Captions
- Video Chapters
- Video Channels
- Video Comments
- Video Rates
- Video Playlists
- Video Stats
- Ownership Change
- Video Mirroring
- Video Files
- Video Transcoding
- Live Videos
- Channels Sync
- Video Passwords
- Video Embed Privacy
- name: Search
tags:
- Search
- name: Moderation
tags:
- Abuses
- Video Blocks
- Account Blocklist
- Server Blocklist
- Automatic Tags
- Watched Words
- name: Instance
tags:
- Config
- Client Config
- Homepage
- Instance Follows
- Instance Redundancy
- Plugins
- Stats
- Logs
- Job
- name: Remote Jobs
tags:
- Runner Registration Token
- Runner Jobs
- Runners