Paid Videos Search proxy via x402 pay-per-use (HTTP 402).
Prerequisites: This skill requires x402-payment. Complete the setup steps before first use.
Security: Documentation only — no executable code or credentials. Wallet/keys stay on your machine; never stored here.
RoleDomainAPI Providerhttps://www.cpbox.ioFacilitatorhttps://www.cppay.finance
http
GET /api/x402/videos-search
POST /api/x402/videos-search/post
402 Payment Required with requirements JSONPAYMENT-SIGNATURE -> result JSONWith @springmint/x402-payment or x402-sdk-go, payment is automatic.
bash
curl -s "https://www.cpbox.io/api/x402/videos-search?q=python+tutorial" \
-H "Accept: application/json"
bash
curl -s "https://www.cpbox.io/api/x402/videos-search" \
-H "Accept: application/json" \
-G \
--data-urlencode "q=machine learning explained" \
--data-urlencode "country=US" \
--data-urlencode "search_lang=en" \
--data-urlencode "count=20" \
--data-urlencode "freshness=pm"
bash
npx @springmint/x402-payment \
--url "https://www.cpbox.io/api/x402/videos-search?q=python+tutorial&count=20" \
--method GET
ParameterTypeRequiredDefaultDescriptionqstringYes-Search query (1-400 chars, max 50 words)countrystringNoUSSearch country (2-letter country code or ALL)search_langstringNoenLanguage preference (2+ char language code)ui_langstringNoen-USUI language (e.g., "en-US")countintNo20Number of results (1-50)offsetintNo0Page offset (0-9)safesearchstringNomoderateAdult content filter ( off/ moderate/ strict)freshnessstringNo-Time filter ( pd/ pw/ pm/ py or date range)spellcheckboolNotrueAuto-correct queryoperatorsboolNotrueApply search operatorsinclude_fetch_metadataboolNofalseInclude fetched_content_timestamp in results
ValueDescriptionpdPast day (24 hours)pwPast week (7 days)pmPast month (31 days)pyPast year (365 days)YYYY-MM-DDtoYYYY-MM-DDCustom date range
json
{
"type": "videos",
"query": {
"original": "python tutorial",
"spellcheck_off": false
},
"extra": {
"might_be_offensive": false
},
"results": [
{
"type": "video_result",
"title": "Python Tutorial for Beginners",
"url": "https://www.youtube.com/watch?v=rfscVS0vtbw",
"description": "Learn Python programming from scratch...",
"age": "February 12, 2025",
"page_age": "2025-02-12T00:00:00",
"page_fetched": "2025-02-12T15:00:00Z",
"thumbnail": {
"src": "https://imgs.search.provider/...",
"original": "https://i.ytimg.com/vi/rfscVS0vtbw/hqdefault.jpg"
},
"video": {
"duration": "03:45:00",
"views": 1523000,
"creator": "freeCodeCamp",
"publisher": "YouTube",
"requires_subscription": false,
"tags": ["python", "programming"],
"author": {
"name": "freeCodeCamp.org",
"url": "https://www.youtube.com/@freecodecamp"
}
},
"meta_url": {
"scheme": "https",
"netloc": "youtube.com",
"hostname": "www.youtube.com",
"favicon": "https://imgs.search.provider/...",
"path": "\u203a watch"
}
}
]
}
FieldTypeDescriptiontypestringAlways "videos"``query.originalstringThe original search queryquery.alteredstring?Spellcheck-corrected query (if changed)query.cleanedstring?Cleaned/normalized queryquery.spellcheck_offbool?Whether spellcheck was disabledquery.show_strict_warningbool?True if strict safesearch blocked adult resultsquery.search_operatorsobject?Applied search operators ( applied, cleaned_query, sites)extra.might_be_offensiveboolWhether results may contain offensive contentresults[].typestringAlways "video_result"``results[].urlstringSource URL of the videoresults[].titlestringVideo titleresults[].descriptionstring?Video descriptionresults[].agestring?Human-readable age (e.g. "6 months ago") or absolute date (e.g. "February 12, 2025")results[].page_agestring?Page age from source (ISO datetime)results[].page_fetchedstring?ISO datetime when page was last fetched (e.g. 2025-02-12T15:00:00Z)results[].fetched_content_timestampint?Fetch timestamp (only with include_fetch_metadata=true)results[].video.durationstring?Time string (variable format)results[].video.viewsint?View count as integerresults[].video.creatorstring?Channel/creator nameresults[].video.publisherstring?Platform (YouTube, Vimeo, etc.)results[].video.requires_subscriptionbool?Whether video requires a subscriptionresults[].video.tagslist[str]?Tags relevant to the videoresults[].video.authorobject?Author profileresults[].video.author.namestringAuthor nameresults[].video.author.urlstringAuthor profile URLresults[].video.author.long_namestring?Extended author nameresults[].video.author.imgstring?Author profile image URLresults[].thumbnail.srcstringServed thumbnail URLresults[].thumbnail.originalstring?Original thumbnail URLresults[].meta_url.schemestring?URL protocol schemeresults[].meta_url.netlocstring?Network locationresults[].meta_url.hostnamestring?Lowercased domain nameresults[].meta_url.faviconstring?Favicon URLresults[].meta_url.pathstring?URL path
Use search operators to refine results:
site:youtube.com - Limit to specific site"exact phrase" - Match exact phrase-exclude - Exclude termSet operators=false to disable operator parsing.
video.duration, video.views, and video.creator metadata to filter and rank results programmatically. Prefer videos-search over web-search when you need a dedicated video index with richer metadata (duration, views, creator, tags) and up to 50 results per request.freshness=pd or freshness=pw to track newly published video content on trending topics or specific subjects.site:youtube.com or site:vimeo.com operators to target specific video platforms.offset (0-9) with count for more results