Run your Custom Search
request before Google stops
Paste the customsearch/v1 request your code sends today and see it answered live by a drop-in replacement. Same parameters, same items[], new host.
If your URL includes a Google key, it is removed before the request runs and never shown back.
A Google Custom Search API alternative you can test in one paste
As of October 2026, Google's Custom Search JSON API is closed to new customers, and existing customers have until January 1, 2027 to move. Google's suggested successor searches a limited set of domains and returns a different response, so most integrations that parse items[] need a new source of web results.
Scavio serves the same request at api.scavio.dev/customsearch/v1. This tester takes your real request, drops the Google key and cx, runs everything else live, and shows you the items[] that come back next to a table of which parameters carried over. When it looks right, the migration is a host and key change.
For the full parameter and field map, with code in Python, JavaScript and cURL, read the Google Custom Search migration guide, or see the Google Search API for the full results page as JSON.
How to migrate off the Custom Search JSON API
- 1
Copy your Custom Search request
Take a request your code sends today, e.g. https://www.googleapis.com/customsearch/v1?key=…&cx=…&q=…&num=10, or just type a query and a few parameters.
- 2
Run it on the replacement
Paste it above and press Run on Scavio. Your Google key and cx are dropped; every other supported parameter is sent unchanged to api.scavio.dev/customsearch/v1.
- 3
Compare and switch
Check the parameter table and the live items[]. If they look right, change the host in your code to api.scavio.dev and use a Scavio API key.
Frequently asked questions
When does the Google Custom Search JSON API shut down?+
As of October 2026, Google's API overview says the Custom Search JSON API is closed to new customers and that existing customers have until January 1, 2027 to move to another solution. New projects already cannot enable it.
Is this a drop-in replacement?+
For web search, yes. Scavio serves the same cse.list request at api.scavio.dev/customsearch/v1 with the same query parameters and the same customsearch#search response: items[] with title, link, displayLink and snippet, plus searchInformation and queries.nextPage. Existing code changes only the host and the key.
Which Custom Search parameters carry over?+
q, num, start, gl, hl, lr, cr, safe, filter, dateRestrict, siteSearch, siteSearchFilter, exactTerms, excludeTerms, orTerms, hq, fileType and googlehost. The tester shows each parameter of your request and whether it carried over.
What happens to my cx search engine ID?+
Results come from the whole web rather than from a configured search engine, so cx has no effect. If your engine was limited to one site, pass siteSearch instead; results outside that site are removed from the response.
What doesn't carry over?+
Image search (searchType=image and the img* parameters), sort, rights, linkSite, relatedSite and the numeric range parameters have no equivalent. The tester marks any of these in your request as having no equivalent.
Is the tester free?+
Yes. You get 5 free test requests a day with no account. Sign up free to get an API key and run your Custom Search traffic on your own credits.
How much does a request cost?+
1 credit per request, the same unit for every page of results. As of October 2026, Google charged $5 per 1,000 queries after 100 free a day, with a cap of 10,000 queries a day.
What do Google's own alternatives return?+
Google points site search users to Vertex AI Search, which searches a limited set of domains you configure and returns its own response format. It does not return the public web results and items[] array that Custom Search integrations parse.
Is my Google API key safe if I paste a URL with it?+
The key is removed on our server before the request runs, is not sent to the search endpoint and is never shown back on the page. You can also replace it with any placeholder before pasting.
Can I page past the first 100 results?+
Like Custom Search, start plus num cannot exceed 100 on this endpoint, so a loop over queries.nextPage costs what it did before. For deeper result pages use POST /api/v2/google.
Replace Custom Search with one host change
Get a Scavio API key and point your existing Custom Search code at api.scavio.dev. Same parameters, same response, 1 credit per request.