For Agents
Upload videos, manage channels, run live streams, and moderate accounts on a PeerTube instance. Use when an agent needs to publish or manage video content on a federated, self-hosted alternative to YouTube.
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the PeerTube, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with PeerTube API.
Upload videos to a PeerTube channel and trigger transcoding to multiple resolutions
Create and manage live streams with replay and permanent live options
Moderate accounts, comments, and abuse reports across a federated instance
Manage user-facing channels, playlists, and subscriptions
GET STARTED
Use for: Upload a video to my PeerTube channel, Start a live stream on PeerTube, List all videos on a specific channel, Moderate a comment that was reported as abuse
Not supported: Does not handle commercial DRM, ad insertion, or proprietary CDN delivery — use for federated, self-hosted video publishing and management only.
PeerTube is a free, decentralized, federated video platform built on ActivityPub and WebTorrent, and the PeerTube REST API is its programmatic surface. The API spans 244 endpoints covering video upload and transcoding, channels and playlists, accounts and users, federation between instances, live streaming, comments, abuse reports, and instance administration. Authentication is via OAuth 2.0 access tokens scoped to a single account session, and rate limits are enforced at 50 calls per 10 seconds per endpoint with stricter limits on token and registration endpoints. Client integrations exist in Python, Go, and Kotlin generated from this specification.
Federate with other PeerTube instances by following and unfollowing remote actors
Configure instance-wide settings, plugins, and redundancy strategies
Patterns agents use PeerTube API for, with concrete tasks.
★ Automated Video Publishing Pipeline
A media organisation publishes long-form video to its self-hosted PeerTube instance as a YouTube alternative. After rendering, a publishing job calls POST /api/v1/videos to upload the file, sets channel, language, tags, and privacy, and PeerTube handles transcoding to multiple resolutions. This avoids vendor lock-in and keeps the content under the publisher's control.
Call POST /api/v1/videos with the rendered MP4 file, channelId 42, name 'Weekly Update', and privacy 1 (public), then poll until the transcoding job completes.
Live Streaming for Events
An events team runs a live stream from a conference using PeerTube live broadcasting. POST /api/v1/videos/live creates the live video and returns the RTMP ingestion URL and stream key. After the broadcast, the recording is preserved when saveReplay is enabled, so attendees who missed the event can watch on demand. This is a self-hosted alternative to commercial live platforms.
Create a live video with POST /api/v1/videos/live for channelId 7, saveReplay true, then return the rtmpUrl and streamKey to the broadcaster.
Federation and Content Discovery
An instance administrator follows other PeerTube instances so videos from those servers appear in the local discovery feed. POST /api/v1/server/following sends a follow request, and remote videos then federate in via ActivityPub. GET /api/v1/search/videos lets users search across the federated network. This is what makes PeerTube a network rather than a single site.
Send POST /api/v1/server/following with hosts ['videos.example.org'] to follow the remote instance, then GET /api/v1/search/videos?search=climate to confirm federated results appear.
Comment and Abuse Moderation
A community manager reviews abuse reports filed against videos and comments on the instance. GET /api/v1/abuses lists open reports and DELETE /api/v1/videos/{id}/comment-threads/{threadId} removes problematic comment threads. This keeps the federated community safer without manually trawling each video page.
List abuses with GET /api/v1/abuses?state=pending, and for each video-level abuse, delete the offending comment thread via DELETE /api/v1/videos/{id}/comment-threads/{threadId}.
Agent-Driven Content Operations
An AI content operations agent embedded in a media team's workflow handles end-to-end PeerTube tasks: upload finished renders, write descriptions, schedule premieres, and triage abuse queues. Through Jentic, the agent finds each PeerTube operation by intent and executes it without holding raw OAuth credentials, so the same workflow can run unattended overnight.
Search Jentic for 'upload video to peertube', execute POST /api/v1/videos with the rendered file, then POST /api/v1/video-playlists/{playlistId}/videos to add it to the weekly playlist.
244 endpoints — peertube is a free, decentralized, federated video platform built on activitypub and webtorrent, and the peertube rest api is its programmatic surface.
METHOD
PATH
DESCRIPTION
/api/v1/videos/upload
Upload a video file
/api/v1/videos
List videos on the instance
/api/v1/videos/live
Create a live video stream
/api/v1/search/videos
Search videos across the federated network
/api/v1/users/token
Obtain an OAuth access token
/api/v1/abuses
List abuse reports for moderation
/api/v1/server/following
Follow a remote PeerTube instance
/api/v1/videos/upload
Upload a video file
/api/v1/videos
List videos on the instance
/api/v1/videos/live
Create a live video stream
/api/v1/search/videos
Search videos across the federated network
/api/v1/users/token
Obtain an OAuth access token
Three things that make agents converge on Jentic-routed access.
Credential isolation
PeerTube OAuth client credentials and user passwords are stored encrypted in the Jentic vault. Jentic exchanges them for a bearer token via POST /api/v1/users/token at execution time and refreshes the token without exposing it to the agent.
Intent-based discovery
Agents search Jentic with intents like 'upload video to peertube' or 'start a live stream' and Jentic returns the matching PeerTube operation with its input schema, drawn from the 244-endpoint spec.
Time to first call
Direct PeerTube integration: 2-5 days for OAuth setup, multipart upload, transcoding job polling, and federation handling. Through Jentic: under 1 hour — search, load, execute.
Alternatives and complements available in the Jentic catalogue.
Vimeo API
Vimeo is a hosted commercial video platform with similar upload, channel, and live capabilities.
Choose Vimeo when the team prefers a hosted SaaS with built-in players, analytics, and DRM rather than self-hosting a federated instance.
api.video
api.video is a developer-focused video infrastructure API for upload, transcoding, and delivery.
Choose api.video when the priority is a managed transcoding and CDN pipeline rather than community federation.
Mux API
Mux provides commercial video streaming infrastructure with on-demand and live capabilities.
Choose Mux when low-latency live streaming and detailed quality-of-experience analytics matter more than self-hosting.
Cloudinary API
Cloudinary handles upstream image and video transformation that can feed into a PeerTube pipeline.
Use Cloudinary alongside PeerTube when the workflow needs heavy pre-processing such as watermarking or thumbnail generation before final upload.
Specific to using PeerTube API through Jentic.
What authentication does the PeerTube API use?
PeerTube uses OAuth 2.0 password grant. Clients obtain an access token via POST /api/v1/users/token using the username, password, and client credentials returned by GET /api/v1/oauth-clients/local. Only one access token can be used at a time per session. Through Jentic, the credentials are stored encrypted and the token is refreshed automatically.
Can I upload videos to PeerTube programmatically?
Yes. POST /api/v1/videos/upload accepts a multipart upload with the video file, channelId, name, and privacy fields. PeerTube then runs transcoding to produce multiple resolutions; the video appears on the channel once the transcoding job completes.
What are the rate limits for the PeerTube API?
PeerTube limits all /api/v1/* endpoints to 50 calls per 10 seconds by default. POST /api/v1/users/token is limited to 15 calls per 5 minutes, POST /api/v1/users/register to 2 per 5 minutes, and POST /api/v1/users/ask-send-verify-email to 3 per 5 minutes. Instance administrators can override these. A 429 response with Retry-After indicates the limit was reached.
How do I start a live stream on PeerTube through Jentic?
Search Jentic for 'create live stream on peertube', load the POST /api/v1/videos/live schema, and execute with channelId and saveReplay options. The response includes the rtmpUrl and streamKey that the broadcaster sends to from OBS or another encoder.
Does PeerTube support federation between instances?
Yes. PeerTube federates over ActivityPub. POST /api/v1/server/following sends a follow request to a remote instance and DELETE /api/v1/server/following/{host} unfollows it. Once federated, remote videos appear in local search and discovery feeds.
Is PeerTube free to use?
PeerTube itself is free and open-source software released under the AGPL. There is no per-call pricing — costs are limited to whatever hosting and bandwidth you provide for your own instance. Public instances may impose their own quotas.
/api/v1/abuses
List abuse reports for moderation
/api/v1/server/following
Follow a remote PeerTube instance