Search
Search YouTube with optional filters for content type, sort order, upload date, duration, and features. Returns paginated results.
Search YouTube with optional filters for content type, sort order, upload date, duration, and features. Returns paginated results.
Authorization
bearerAuth API key from your dashboard. Prefix with Bearer in the Authorization header.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/search" \ -H "Content-Type: application/json" \ -d '{ "q": "typescript tutorial" }'{ "success": true, "requestId": "string", "cacheState": "hit | miss", "creditsUsed": "number", "creditsRemaining": "number", "data": { "query": { "q": "string" }, "items": [ { "type": "video | short | channel | playlist | movie", "id": "string", "videoUrl": "string", "title": "string", "author": "string", "authorId": "string", "description": "string", "duration": "string", "durationSec": "number", "durationText": "string", "isLive": "boolean", "isUpcoming": "boolean", "isVerified": "boolean", "viewCount": "number", "viewCountText": "string", "publishedAt": "string | null", "publishedAtText": "string", "thumbnails": [ { "url": "string", "width": "number", "height": "number" } ] } ], "continuationToken": "string | null", "estimatedResults": "number" }}{ "success": false, "code": "UNAUTHORIZED", "error": "string", "details": null}{ "success": false, "code": "UNAUTHORIZED", "error": "string", "details": null}{ "success": false, "code": "UNAUTHORIZED", "error": "string", "details": null}{ "success": false, "code": "UNAUTHORIZED", "error": "string", "details": null}{ "success": false, "code": "UNAUTHORIZED", "error": "string", "details": null}Video POST
Fetch video details, transcript, comments, or replies. Pass type: details for metadata, transcript for timestamped captions, comments for top-level comments, or replies for a comment thread (pass the repliesToken from a comment as continuationToken).
Channel POST
Retrieve channel metadata and content by channelUrl. Use the tab field to switch between videos, shorts, playlists, and about info.