Paid News 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/news-search
POST /api/x402/news-search/post
PAYMENT-SIGNATURE) -> 402 Payment Required with requirements JSONPAYMENT-SIGNATUREPAYMENT-SIGNATURE -> Server settles and returns JSONWith @springmint/x402-payment or x402-sdk-go, payment is automatic.
bash
curl -s "https://www.cpbox.io/api/x402/news-search?q=space+exploration" \
-H "Accept: application/json"
bash
curl -s "https://www.cpbox.io/api/x402/news-search" \
-H "Accept: application/json" \
-G \
--data-urlencode "q=cybersecurity" \
--data-urlencode "country=US" \
--data-urlencode "freshness=pd" \
--data-urlencode "count=20"
bash
curl -s "https://www.cpbox.io/api/x402/news-search" \
-H "Accept: application/json" \
-G \
--data-urlencode "q=climate summit" \
--data-urlencode "freshness=2026-01-01to2026-01-31"
bash
npx @springmint/x402-payment \
--url https://www.cpbox.io/api/x402/news-search \
--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)safesearchstringNostrictAdult content filter ( off/ moderate/ strict)freshnessstringNo-Time filter ( pd/ pw/ pm/ py or date range)spellcheckboolNotrueAuto-correct queryextra_snippetsboolNo-Up to 5 additional excerpts per resultgogglesstring or arrayNo-Custom ranking filter (URL or inline; repeat param for multiple)operatorsboolNotrueApply search operatorsinclude_fetch_metadataboolNofalseInclude fetch timestamps in results
ValueDescriptionpdPast day (24 hours) - ideal for breaking newspwPast week (7 days)pmPast month (31 days)pyPast year (365 days)YYYY-MM-DDtoYYYY-MM-DDCustom date range
json
{
"type": "news",
"query": {
"original": "space exploration"
},
"results": [
{
"type": "news_result",
"title": "New Developments in Space Exploration",
"url": "https://news.example.com/space-exploration",
"description": "Recent missions have advanced our understanding of...",
"age": "2 hours ago",
"page_age": "2026-01-15T14:30:00",
"page_fetched": "2026-01-15T15:00:00Z",
"meta_url": {
"scheme": "https",
"netloc": "news.example.com",
"hostname": "news.example.com",
"favicon": "https://imgs.search.provider/favicon/news.example.com",
"path": "/space-exploration"
},
"thumbnail": {
"src": "https://imgs.search.provider/..."
}
}
]
}
FieldTypeDescriptiontypestringAlways "news"``query.originalstringThe original search queryquery.alteredstring?Spellcheck-corrected query (if changed)query.cleanedstring?Cleaned/normalized query from spellcheckerquery.spellcheck_offbool?Whether spellcheck was disabledquery.show_strict_warningbool?True if strict safesearch blocked resultsquery.search_operatorsobject?Applied search operatorsquery.search_operators.appliedboolWhether operators were appliedquery.search_operators.cleaned_querystring?Query after operator processingquery.search_operators.siteslist[str]?Domains from site: operatorsresults[].typestringAlways "news_result"``results[].titlestringArticle titleresults[].urlstringSource URL of the articleresults[].descriptionstring?Article description/summaryresults[].agestring?Human-readable age (e.g. "2 hours ago")results[].page_agestring?Publication date from source (ISO datetime)results[].page_fetchedstring?When page was last fetched (ISO datetime)results[].fetched_content_timestampint?Fetch timestamp (only with include_fetch_metadata=true)results[].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 pathresults[].thumbnail.srcstringServed thumbnail URLresults[].thumbnail.originalstring?Original thumbnail URLresults[].extra_snippetslist[str]?Up to 5 additional excerpts per result
Goggles let you re-rank news results — boost trusted outlets or suppress unwanted sources.
MethodExampleHosted--data-urlencode "goggles=https://<hosted-goggle-url>"Inline--data-urlencode 'goggles=$discard\n$site=example.com'
Hosted goggles should be hosted on a public URL and include
! name:,! description:,! author:headers. Inline rules need no registration.
Syntax: $boost=N / $downrank=N (1–10), $discard, $site=example.com. Combine with commas: $site=example.com,boost=3. Separate rules with \n ( %0A).
Allow list: $discard\n$site=docs.python.org\n$site=developer.mozilla.org — Block list: $discard,site=pinterest.com\n$discard,site=quora.com
Resources: See your upstream provider's Goggles documentation.
Use search operators to refine results:
site:local-paper.com - Limit to specific news site"exact phrase" - Match exact phrase-exclude - Exclude termSet operators=false to disable operator parsing.
freshness=pd for the most recent articles on a topic.freshness=YYYY-MM-DDtoYYYY-MM-DD to find articles from specific time periods.country, search_lang, and ui_lang for cross-locale results.include_fetch_metadata=true for fetched_content_timestamp on each result.strictoffset (0-9) with countextra_snippets=true