PeerTube · Schema
ServerConfig
VideoDecentralizedFederationOpen-SourceActivityPubSelf-HostedStreaming
Properties
| Name | Type | Description |
|---|---|---|
| instance | object | |
| search | object | |
| plugin | object | |
| theme | object | |
| object | ||
| contactForm | object | |
| serverVersion | string | |
| serverCommit | string | |
| signup | object | |
| transcoding | object | |
| import | object | |
| export | object | |
| autoBlacklist | object | |
| avatar | object | |
| video | object | |
| videoCaption | object | |
| user | object | |
| trending | object | |
| tracker | object | |
| followings | object | |
| federation | object | |
| homepage | object | |
| openTelemetry | object | PeerTube >= 6.1 |
| views | object | PeerTube >= 6.1 |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/peertube/main/json-schema/ServerConfig.json",
"title": "ServerConfig",
"properties": {
"instance": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"shortDescription": {
"type": "string"
},
"defaultClientRoute": {
"type": "string"
},
"isNSFW": {
"type": "boolean"
},
"defaultNSFWPolicy": {
"type": "string"
},
"serverCountry": {
"type": "string"
},
"defaultLanguage": {
"type": "string"
},
"support": {
"type": "object",
"properties": {
"text": {
"type": "string"
}
}
},
"social": {
"type": "object",
"properties": {
"externalLink": {
"type": "string"
},
"mastodonLink": {
"type": "string"
},
"blueskyLink": {
"type": "string"
},
"xLink": {
"type": "string"
}
}
},
"customizations": {
"type": "object",
"properties": {
"javascript": {
"type": "string"
},
"css": {
"type": "string"
}
}
},
"avatars": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ActorImage"
}
},
"banners": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ActorImage"
}
}
}
},
"search": {
"type": "object",
"properties": {
"remoteUri": {
"type": "object",
"properties": {
"users": {
"type": "boolean"
},
"anonymous": {
"type": "boolean"
}
}
}
}
},
"plugin": {
"type": "object",
"properties": {
"registered": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"theme": {
"type": "object",
"properties": {
"registered": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"email": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
}
}
},
"contactForm": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
}
}
},
"serverVersion": {
"type": "string"
},
"serverCommit": {
"type": "string"
},
"signup": {
"type": "object",
"properties": {
"allowed": {
"type": "boolean"
},
"allowedForCurrentIP": {
"type": "boolean"
},
"requiresEmailVerification": {
"type": "boolean"
}
}
},
"transcoding": {
"type": "object",
"properties": {
"hls": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
}
}
},
"web_videos": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
}
}
},
"enabledResolutions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/VideoResolutionSet"
}
}
}
},
"import": {
"type": "object",
"properties": {
"videos": {
"type": "object",
"properties": {
"http": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
}
}
},
"torrent": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
}
}
}
}
},
"videoChannelSynchronization": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
}
}
},
"users": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
}
}
}
}
},
"export": {
"type": "object",
"properties": {
"users": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"exportExpiration": {
"type": "number",
"description": "In milliseconds"
},
"maxUserVideoQuota": {
"type": "number",
"description": "In bytes"
}
}
}
}
},
"autoBlacklist": {
"type": "object",
"properties": {
"videos": {
"type": "object",
"properties": {
"ofUsers": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
}
}
}
}
}
}
},
"avatar": {
"type": "object",
"properties": {
"file": {
"type": "object",
"properties": {
"size": {
"type": "object",
"properties": {
"max": {
"type": "integer"
}
}
}
}
},
"extensions": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"video": {
"type": "object",
"properties": {
"image": {
"type": "object",
"properties": {
"extensions": {
"type": "array",
"items": {
"type": "string"
}
},
"size": {
"type": "object",
"properties": {
"max": {
"type": "integer"
}
}
}
}
},
"file": {
"type": "object",
"properties": {
"extensions": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
},
"videoCaption": {
"type": "object",
"properties": {
"file": {
"type": "object",
"properties": {
"size": {
"type": "object",
"properties": {
"max": {
"type": "integer"
}
}
},
"extensions": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
},
"user": {
"type": "object",
"properties": {
"videoQuota": {
"type": "integer",
"description": "In bytes",
"example": 16810141515
},
"videoQuotaDaily": {
"type": "integer",
"description": "In bytes",
"example": 1681014151
}
}
},
"trending": {
"type": "object",
"properties": {
"videos": {
"type": "object",
"properties": {
"intervalDays": {
"type": "integer"
}
}
}
}
},
"tracker": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
}
}
},
"followings": {
"type": "object",
"properties": {
"instance": {
"type": "object",
"properties": {
"autoFollowIndex": {
"type": "object",
"properties": {
"indexUrl": {
"type": "string",
"format": "url"
}
}
}
}
}
}
},
"federation": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
}
}
},
"homepage": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
}
}
},
"openTelemetry": {
"type": "object",
"description": "PeerTube >= 6.1",
"properties": {
"metrics": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"playbackStatsInterval": {
"type": "number",
"description": "Milliseconds"
}
}
}
}
},
"views": {
"type": "object",
"description": "PeerTube >= 6.1",
"properties": {
"views": {
"type": "object",
"properties": {
"watchingInterval": {
"type": "object",
"properties": {
"anonymous": {
"type": "number",
"description": "Milliseconds"
},
"users": {
"type": "number",
"description": "Milliseconds"
}
}
}
}
}
}
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/ServerConfig"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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.
A second provider on the same verified email joins the account you already have.