Skip to content

SearchAPI (Google)

GET /search/searchapi, forwarded to GET https://www.searchapi.io/api/v1/search. SearchAPI takes its request as URL query parameters, not a body.

Terminal window
curl "https://api.withgrowl.com/v1/search/searchapi?engine=google&q=travel%20to%20vietnam&gl=us&hl=en" \
-H "Authorization: Bearer elo_pub_..."

Common parameters are below. The query string goes to SearchAPI as sent, so everything in SearchAPI’s reference works; that reference is the complete, current schema.

ParameterDescription
engineRequired. Must be google.
qThe search query. Google operators work: site:vietnam.travel keeps one domain.
glCountry code, lower case, for example us.
hlLanguage code, lower case, for example en.
locationA place name, for example Austin, Texas, United States.
numResults per page.
pagePage number.

Results are under organic_results. Each has title, link and snippet, and favicon when Google shows one.

{
"organic_results": [
{
"position": 1,
"title": "Visit Vietnam: The Official Tourism Website of Vietnam",
"link": "https://vietnam.travel/",
"snippet": "Discover the highlights of Vietnam through the country's official tourism website.",
"favicon": "https://vietnam.travel/favicon.ico"
}
]
}

Set engine=google_shopping instead of google for product listings with prices, rather than web pages.

Terminal window
curl "https://api.withgrowl.com/v1/search/searchapi?engine=google_shopping&q=wireless%20mouse&gl=us&hl=en" \
-H "Authorization: Bearer elo_pub_..."

This is a passthrough, so the response is SearchAPI’s own google_shopping result, unchanged: results under shopping_results, with filters and all_filters_token for Google Shopping’s own refinement options.

{
"search_metadata": { ... },
"search_parameters": { ... },
"search_information": { ... },
"filters": [ ... ],
"shopping_results": [
{
"position": 1,
"title": "Logitech M170 Wireless Mouse",
"price": "$14.99",
"product_link": "https://www.google.com/search?ibp=oshop&...",
"product_id": "17308555370929559341"
}
],
"all_filters_token": "..."
}

Truncated (...) above for readability; SearchAPI’s own reference has the full shape.