# Invidious API

**Canonical:** https://apis.io/apis/invidious/invidious-api/  
**Provider:** Invidious — https://apis.io/providers/invidious/  
**Documentation:** https://docs.invidious.io/api

Invidious API is one of 2 APIs that [Invidious](https://apis.io/providers/invidious/) publishes on the [APIs.io](https://apis.io/) network, described by a machine-readable OpenAPI specification. This API exposes 6 JSON Schema definitions. The published artifact set on APIs.io includes an OpenAPI specification and 6 JSON Schemas.

Invidious API as documented publicly: 55 operations. Contract generated from the documentation by API Evangelist (2026-10-28); not the provider's own document.

## Operations (55)

| Method | Path | Summary |
|---|---|---|
| GET | `/` | GET / |
| GET | `/api/v1/annotations/{id}` | Returns annotation XML from YouTube's /annotations_invideo endpoint. |
| GET | `/api/v1/auth/feed` | Get subscription feed for the authenticated user. |
| GET | `/api/v1/auth/history` | Get the history of videos played by the user. |
| DELETE | `/api/v1/auth/history/{id}` | Delete a video from the user watched history. |
| POST | `/api/v1/auth/history/{id}` | Set a video as watched. |
| GET | `/api/v1/auth/notifications` | Provides an EventSource for receiving changes from each topic in topics. |
| POST | `/api/v1/auth/notifications` | Same as above GET endpoint, however topics is moved into post body as Content-Type: application/x-www-form-urlencoded. |
| GET | `/api/v1/auth/playlists` | Get list of playlists for the given user. |
| POST | `/api/v1/auth/playlists` | Create new playlist. |
| DELETE | `/api/v1/auth/playlists/{id}` | Delete a given playlist :id. |
| GET | `/api/v1/auth/playlists/{id}` | Returns same result as unauthenticated /api/v1/playlists/:id. |
| PATCH | `/api/v1/auth/playlists/{id}` | Modify a playlist's description, title, description, or privacy. |
| POST | `/api/v1/auth/playlists/{id}/videos` | Add a video to the given playlist :id. |
| DELETE | `/api/v1/auth/playlists/{id}/videos/{index}` | Delete a video from the given playlist :id with indexId :index. |
| GET | `/api/v1/auth/preferences` | Get preferences for authenticated user. |
| POST | `/api/v1/auth/preferences` | Patch user preferences. |
| GET | `/api/v1/auth/subscriptions` | Get user's subscriptions. |
| DELETE | `/api/v1/auth/subscriptions/{ucid}` | Removes a given ucid from a user's subscriptions. |
| POST | `/api/v1/auth/subscriptions/{ucid}` | Add a given ucid to a user's subscriptions. |
| GET | `/api/v1/auth/tokens` | Get a list of tokens for the authenticated user. |
| POST | `/api/v1/auth/tokens/register` | Create a new token for the authenticated user. |
| POST | `/api/v1/auth/tokens/unregister` | Revoke a token for the authenticated user. |
| GET | `/api/v1/captions/{id}` | Returns captions for a video in WebVTT format or selected caption track. |
| GET | `/api/v1/channels/{id}` | Get channel information including author details, subscriber count, total views, and latest videos. |
| GET | `/api/v1/channels/{id}/channels` | Get related channels for a given channel. |
| GET | `/api/v1/channels/{id}/community` | Get community posts from a channel. |
| GET | `/api/v1/channels/{id}/latest` | Get the latest videos from a channel, same as requesting /api/v1/channels/:id/videos without URL parameters. |
| GET | `/api/v1/channels/{id}/playlists` | Get playlists from a channel. |
| GET | `/api/v1/channels/{id}/podcasts` | Get podcasts from a channel. |
| GET | `/api/v1/channels/{id}/releases` | Get releases from a channel. |
| GET | `/api/v1/channels/{id}/shorts` | Get shorts from a channel. |
| GET | `/api/v1/channels/{id}/streams` | Get streams from a channel. |
| GET | `/api/v1/channels/{id}/videos` | Get videos from a channel. |
| GET | `/api/v1/channels/{ucid}/search` | Search within a channel's videos and playlists. |
| GET | `/api/v1/clips` | Returns information about a clip including its start time, end time, title, and associated video. |
| GET | `/api/v1/comments/{id}` | Returns comments for a video. |
| GET | `/api/v1/hashtag/{tag}` | Returns videos with the specified hashtag. |
| GET | `/api/v1/mixes/{rdid}` | Returns information about a mix. |
| GET | `/api/v1/playlists/{plid}` | Returns information about a playlist. |
| GET | `/api/v1/popular` | Returns a list of popular videos. |
| GET | `/api/v1/post/{id}` | Get a specific community post. |
| GET | `/api/v1/post/{id}/comments` | Retrieve comments for a post. |
| GET | `/api/v1/resolveurl` | Resolves a YouTube URL to its corresponding API object identifiers. |
| GET | `/api/v1/search` | Search for videos, playlists, channels, and more. |
| GET | `/api/v1/search/suggestions` | Returns search suggestions based on a query. |
| GET | `/api/v1/stats` | Returns current stats for the Invidious instance. |
| GET | `/api/v1/trending` | Returns a list of trending videos. |
| GET | `/api/v1/videos/{id}` | Returns video information and metadata. |
| GET | `/iv-org/invidious/refs/heads/master/config/config.example.yml` | GET /iv-org/invidious/refs/heads/master/config/config.example.yml |
| GET | `/iv-org/invidious/refs/heads/master/config/sql/$initdb.sql` | GET /iv-org/invidious/refs/heads/master/config/sql/$initdb.sql |
| GET | `/login` | GET /login |
| GET | `/vi/JoP_Tte7z7o/mqdefault.jpg` | Get video thumbnail image |
| GET | `/vi/lJcqAzWFWLs/mqdefault.jpg` | Get video thumbnail image |
| GET | `/watch` | Watch a video on Invidious |

## Machine-readable artifacts (7)

- **OpenAPI** — https://artifacts.apis.io/invidious/openapi/_ae-authored/invidious-openapi-generated.yml
- **JSONSchema** — https://artifacts.apis.io/invidious/json-schema/invidious-get-api-v1-videos-id-response-schema.json
- **JSONSchema** — https://artifacts.apis.io/invidious/json-schema/invidious-get-api-v1-search-response-schema.json
- **JSONSchema** — https://artifacts.apis.io/invidious/json-schema/invidious-get-api-v1-auth-preferences-response-schema.json
- **JSONSchema** — https://artifacts.apis.io/invidious/json-schema/invidious-get-api-v1-channels-id-response-schema.json
- **JSONSchema** — https://artifacts.apis.io/invidious/json-schema/invidious-get-api-v1-trending-response-schema.json
- **JSONSchema** — https://artifacts.apis.io/invidious/json-schema/invidious-get-api-v1-post-id-comments-response-schema.json

## Other Invidious APIs (1)

- [Invidious API](https://apis.io/apis/invidious/invidious-api-2/)

---

Profiled by [API Evangelist](https://apievangelist.com) and published on [APIs.io](https://apis.io/apis/invidious/invidious-api/). The API's provider profile, Kin Score and agent-readiness rating are at https://apis.io/providers/invidious/.
