PeerTube (SepiaSearch) API
Free PeerTube search API with no key: search videos across the federated PeerTube network via SepiaSearch, with duration, channel and licence data. Tested.
Endpoint tested and returned HTTP 200 on 20 Aug 2026
What is the PeerTube (SepiaSearch) API?
SepiaSearch is a free, key-free search API across the federated PeerTube network, indexing videos from thousands of independent instances with metadata including duration, channel, licence and view counts.
PeerTube is a decentralised, self-hostable video platform, which means there is no single catalogue to search. SepiaSearch solves that by indexing across instances, giving you one endpoint for the whole federated network.
Because PeerTube is favoured by creators who care about licensing, a genuinely useful proportion of results carry explicit Creative Commons licences — the `licence` field is populated far more often than on commercial platforms.
Quick facts
- Base URL
https://sepiasearch.org/api/v1/search- Authentication
- No API key required. Individual PeerTube instances expose the same API at their own domains.
- Rate limit
- No published hard limit; fair use expected.
- Pricing
- Free and open source.
- CORS
- Enabled — callable directly from browser JavaScript
- Official docs
- Read the docs
How to use the PeerTube (SepiaSearch) API
Every request below was executed against the live API on 20 Aug 2026, and the response shown is the real body it returned — not an illustration.
1. Search federated PeerTube videos
GET https://sepiasearch.org/api/v1/search/videos?search=linux&count=1
curl 'https://sepiasearch.org/api/v1/search/videos?search=linux&count=1'const res = await fetch("https://sepiasearch.org/api/v1/search/videos?search=linux&count=1");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);import requests
res = requests.get("https://sepiasearch.org/api/v1/search/videos?search=linux&count=1", timeout=20)
res.raise_for_status()
print(res.json()){
"total": 16180,
"data": [
{
"id": 167978,
"uuid": "da5463ca-fbc7-4311-948a-356594d5c70a",
"shortUUID": "sXGnj113k5GYzdzzYmr4cY",
"score": 1,
"createdAt": "2025-05-11T20:36:00.942Z",
"updatedAt": "2026-08-13T18:00:34.304Z",
"publishedAt": "2025-05-11T20:43:40.247Z",
"originallyPublishedAt": null,
"category": {
"id": 15,
"label": "Science & Technology"
},
"licence": {
"id": null,
"label": "Unknown"
},
"language": {
"id": "en",
"label": "English"
},
"privacy": {
"id": 1,
"label": "Public"
},
"name": "Installing Linux Doesn't Need to Change. The Experience Does.",
"description": "People online complain that Linux is hard to install for new users. But who are these people and why do they levy these complaints? The biggest barrier for the new Linux user isn't the installer; it's the experience, the lack of empathy, and complacency of supposed Linux users.\r\n\r\nWebsite: https://trafotin.com\r\n\r\nDonate:\r\n✨ Patreon: https://patreon.com/trafotin\r\n▶️ YouTube Membership: https://www.youtube.com/channel/UC5U7mHlhP6s6478wd7ZvnhA/join\r\n\r\nLinks:\r\n▶️ YouTube: https://www.youtube.com/@trafotin?sub_confirmation=1\r\n🦑 Peertube: https://spectra.video/c/trafotin\r\n🐘 Mastodon: https://vt.social/@trafotin\r\n🦋 Bluesky: https://bsky.app/profile/trafotin.com\r\n𝕏 (Formerly Twitter): https://x.com/trafotin\r\n\r\n🪙 Crypto:\r\nXMR: 84ZpcYxjfkT7uFGXgmi2jH2wyhUBMx8hGBJ3sAp478rKSShMAJHR3DhVVPSwCAskReRBPifzpA5Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
search | string | Required | Search query. linux |
count | integer | Optional | Results per page, max 100. 10 |
start | integer | Optional | Pagination offset. 10 |
durationMin / durationMax | integer | Optional | Duration filter in seconds. 600 |
sort | string | Optional | -match, -publishedAt or -views. -publishedAt |
Response fields
totalinteger- Total videos matching the search.
data[].uuidstring- Video identifier.
data[].namestring- Video title.
data[].durationinteger- Length in seconds.
data[].channelobject- Publishing channel with its host instance.
data[].licenceobject- Licence, often an explicit Creative Commons one.
data[].urlstring- Canonical video URL on its home instance.
What you can build with the PeerTube (SepiaSearch) API
- Search the federated video network without platform lock-in
- Find openly licensed video content for reuse
- Build an alternative video discovery interface
- Aggregate independent creator content
Common errors and how to fix them
Empty data array
No videos matched.
Fix: The federated catalogue is much smaller than commercial platforms; broaden the query.
Video unavailable on its instance
Instances go offline or defederate.
Fix: The `url` points at the home instance — handle failures gracefully.
Inconsistent metadata
Instances are independently operated.
Fix: Field completeness varies; null-check before rendering.
PeerTube (SepiaSearch) API — frequently asked questions
What is PeerTube?
A decentralised, self-hostable video platform where anyone can run an instance. There is no central catalogue, which is why a federated search service like SepiaSearch exists.
Is the API free?
Yes, completely free with no API key. Individual PeerTube instances also expose the same API at their own domains.
Can I find openly licensed videos?
Yes, and unusually often. PeerTube attracts creators who care about licensing, so the `licence` field is populated with explicit Creative Commons terms far more frequently than on commercial platforms.
Can I search a single instance instead?
Yes. Every PeerTube instance exposes the same REST API, so point the same code at that instance's domain to search only its content.
Tools that pair with this API
JSON Formatter
Format, beautify and minify JSON online with 2-space, 4-space or tab indentation. Sort keys alphabetically and catch syntax errors instantly — free and private.
Timestamp Converter
Convert timestamps to human-readable dates and dates back to timestamps. Auto-detects seconds vs milliseconds, shows local, UTC and ISO 8601 formats.
Alternatives to PeerTube (SepiaSearch) API
If PeerTube (SepiaSearch) does not fit, these video & streaming apis cover similar ground. Every one was called before publishing, and each links to its own reference page with a working curl command and the response it returned.
| API | What it does | Auth | CORS | Last verified |
|---|---|---|---|---|
| TVmaze | Free TV show API with no key: series info, full episode guides, cast, air dates and daily schedules with images. Genuinely open, no signup. Tested example. | No key | Yes | 19 Aug 2026 |
| Noembed | Free oEmbed proxy API with no key: get embed HTML, thumbnails and metadata for YouTube, Vimeo, Twitter and 200+ other sites from one endpoint. Tested. | No key | Yes | 19 Aug 2026 |
| IPTV-org | Free IPTV-org API with no key: 10,000+ TV channels worldwide with countries, languages, categories, logos and stream metadata as static JSON. Tested example. | No key | Yes | 19 Aug 2026 |
| YouTube oEmbed | Free YouTube oEmbed endpoint with no API key: video title, author, thumbnail and embed HTML from any video URL. No quota, unlike the Data API. Tested. | No key | No | 20 Aug 2026 |
| Shoof Aflam | Shoof Aflam publishes a free, key-free API over 14,900+ Arabic movies and series with per-platform streaming availability, ratings and posters, as static JSON. Tested example included. | No key | No | 21 Aug 2026 |
| The Simpsons API | A free, key-free Simpsons API: 1,182 characters with catchphrases and occupations, plus episodes and locations, paginated with a Rick-and-Morty-style envelope. Live example included. | No key | Yes | 21 Aug 2026 |
PeerTube (SepiaSearch) is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 20 Aug 2026; always check the official documentation before relying on this API in production, as terms and limits can change.