Google organic search results for a query
From SerpApi, through Joshu Data Bodega.
Part of Google Keyword Data serp organic.
- Price
- $0.017 per call
No calls measured in the last 30 days.
Prices include the router's 10% markup and are paid from the usage wallet. Checked on November 11, 2026.
Inputs
qstring, requiredthe search query; Google search operators work here
crstring, optionalrestrict to countries, e.g. countryUS; multiple joined by |
glstring, optionalcountry code for the search, e.g. us, uk
hlstring, optionalinterface language code, e.g. en
lrstring, optionalrestrict to languages, e.g. lang_en; multiple joined by |
latnumber, optionallatitude; requires lon and a matching gl
lonnumber, optionallongitude; requires lat
tbmstring, optionalswitches the Google vertical: isch (images), vid, nws, shop, lcl, pts
tbsstring, optionaladvanced Google filters, e.g. date range
nfprstring, optional1 disables Google's auto-correction to a different spelling
safestring, optionalactive | off
uulestring, optionalGoogle's encoded location, as an alternative to `location`
startinteger, optionalresult offset for pagination — 0, 10, 20 … This is how you page; see the note about `num`
devicestring, optionaldesktop (default) | tablet | mobile
enginestring, requiredthe engine selector — must be this literal string
filterstring, optional0 turns off Google's similar-results and omitted-results filters
radiusinteger, optionalmetres around lat/lon; 1-199 on desktop, 1-1000 on mobile
locationstring, optionalcity-level origin of the search, e.g. "Austin, Texas, United States". Mutually exclusive with uule and with lat/lon
google_domainstring, optionaldefault google.com; e.g. google.co.uk
Call it
curl https://hello.joshu.me/api/router/call \
-H "Authorization: Bearer $JOSHU_ROUTER_KEY" \
-H "Content-Type: application/json" \
-d '{
"endpoint": "serpapi.google.serp.organic",
"params": {
"q": "coffee",
"engine": "google"
}
}'