Skip to content

General search V2

POST/v1/api/youtube/web-v2/general-search-v2

Search YouTube videos, Shorts, channels, and playlists Returns cleaned structured data (compared to get_general_search which returns raw data) Supports multiple filter conditions and sorting options Supports pagination for loading more results

Request body

Call this sync operation at its vendor-qualified URL. The model identity is encoded in the path; only operation-specific input fields belong in the request body.

Optional<string | null>continuation_token

Pagination token (pass from previous response for next page)

Optional<string | null>duration

Video duration filter - short(<4min)/medium(4-20min)/long(>20min)

Allowed values: short, medium, long

Optional<string | null>features

Feature filter (comma separated) - live/4k/hd/subtitles/creative_commons/360/vr180/3d/hdr

Optional<string | null>keyword

Search keyword (required for first request)

Optional<string | null>sort_by

Sort by - relevance/upload_date/view_count/rating

Allowed values: relevance, upload_date, view_count, rating

Optional<string | null>type

Result type filter - video/channel/playlist/movie

Allowed values: video, channel, playlist, movie

Optional<string | null>upload_date

Upload date filter - last_hour/today/this_week/this_month/this_year

Allowed values: last_hour, today, this_week, this_month, this_year

Response Schema

A synchronous completed response contains exactly one outputs item with only data. Failed and timeout responses contain error and never outputs.

stringidrequired

Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.

stringstatusrequired

Current public run status.

Allowed values: pending, running, completed, failed, timeout

stringmodelrequired

Public SandBase model name used for this run.

Optional<array<object>>outputs

Present only for completed runs. Contains exactly one item whose only field is data.

Optional<object | array>outputs[0].data

Operation-specific business payload. This reference uses an empty object when no safe example can be confirmed.

Optional<object>error

Present only for failed or timeout runs. Contains a public error type and sanitized message.

Optional<string>error.type

Stable public error category.

Optional<string>error.message

Sanitized error message safe to show to clients.

Optional<object>usage

Usage details when available.

API capabilities

array<string>capability_tagsrequired

Capabilities declared by the API registry.

Default: api, youtube

stringexecution_moderequired

Execution mode declared by the API registry.

Default: sync

pending response

{"id":"f3d2e8a1-7c4b-4a12-9d2e-123456789abc","status":"pending","model":"youtube/web-v2/general-search-v2"}

running response

{"id":"f3d2e8a1-7c4b-4a12-9d2e-123456789abc","status":"running","model":"youtube/web-v2/general-search-v2"}

completed response

{"id":"f3d2e8a1-7c4b-4a12-9d2e-123456789abc","status":"completed","model":"youtube/web-v2/general-search-v2","outputs":[{"data":{}}]}

failed response

{"id":"f3d2e8a1-7c4b-4a12-9d2e-123456789abc","status":"failed","model":"youtube/web-v2/general-search-v2","error":{"type":"upstream_error","message":"upstream request failed"}}

timeout response

{"id":"f3d2e8a1-7c4b-4a12-9d2e-123456789abc","status":"timeout","model":"youtube/web-v2/general-search-v2","error":{"type":"upstream_error","message":"upstream request failed"}}