{ "$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" } } } } } } } } }