PeerTube · Schema
PlaybackMetricCreate
VideoDecentralizedFederationOpen-SourceActivityPubSelf-HostedStreaming
Properties
| Name | Type | Description |
|---|---|---|
| playerMode | string | |
| resolution | number | Current player video resolution |
| fps | number | Current player video fps |
| p2pEnabled | boolean | |
| p2pPeers | number | P2P peers connected (doesn't include WebSeed peers) |
| resolutionChanges | number | How many resolution changes occurred since the last metric creation |
| bufferStalled | number | How many times buffer has been stalled since the last metric creation |
| errors | number | How many errors occurred since the last metric creation |
| downloadedBytesP2P | number | How many bytes were downloaded with P2P since the last metric creation |
| downloadedBytesHTTP | number | How many bytes were downloaded with HTTP since the last metric creation |
| uploadedBytesP2P | number | How many bytes were uploaded with P2P since the last metric creation |
| videoId | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/peertube/main/json-schema/PlaybackMetricCreate.json",
"title": "PlaybackMetricCreate",
"properties": {
"playerMode": {
"type": "string",
"enum": [
"p2p-media-loader",
"web-video"
]
},
"resolution": {
"type": "number",
"description": "Current player video resolution"
},
"fps": {
"type": "number",
"description": "Current player video fps"
},
"p2pEnabled": {
"type": "boolean"
},
"p2pPeers": {
"type": "number",
"description": "P2P peers connected (doesn't include WebSeed peers)"
},
"resolutionChanges": {
"type": "number",
"description": "How many resolution changes occurred since the last metric creation"
},
"bufferStalled": {
"type": "number",
"description": "How many times buffer has been stalled since the last metric creation"
},
"errors": {
"type": "number",
"description": "How many errors occurred since the last metric creation"
},
"downloadedBytesP2P": {
"type": "number",
"description": "How many bytes were downloaded with P2P since the last metric creation"
},
"downloadedBytesHTTP": {
"type": "number",
"description": "How many bytes were downloaded with HTTP since the last metric creation"
},
"uploadedBytesP2P": {
"type": "number",
"description": "How many bytes were uploaded with P2P since the last metric creation"
},
"videoId": {
"oneOf": [
{
"$ref": "#/components/schemas/id"
},
{
"$ref": "#/components/schemas/UUIDv4"
},
{
"$ref": "#/components/schemas/shortUUID"
}
]
}
},
"required": [
"playerMode",
"resolutionChanges",
"errors",
"downloadedBytesP2P",
"downloadedBytesHTTP",
"uploadedBytesP2P",
"p2pEnabled",
"videoId"
]
}
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/PlaybackMetricCreate"
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.