Google Play app search by keyword, or store charts
serpapi.google-play.search.appsSearch apps on Google Play by keyword, or pull a store chart without a keyword
- Price
- $0.015/successAt provider cost
- Success rate
- 100%Last 30 days · 796 calls
- Latency p50
- 1.1 sp95 5.7 s
- Last verified
- Jul 28, 2026Verified working
GEThttps://toolswitch.dev/v1/tools/serpapi.google-play.search.apps?q=coffee&engine=google_playPreview- Uses platform quota
- Synchronous response
- Reads public data
Parameters
A keyword search answers in `organic_results`; a `chart` query answers in `top_charts` instead, alongside `chart_options`. This is the only engine here where the query term is optional — a bare engine=google_play call is a valid, BILLABLE request that returns the store's default browse content, so always send `q` or `chart` deliberately. For a single app's detail page SerpApi has a separate `google_play_product` engine.
| Parameter | Type | Required | Description | Example |
|---|---|---|---|---|
| Query parameters | ||||
q | string | Optional | the search term. OPTIONAL on this engine — omit it and supply `chart` to browse top-charts instead of searching | coffee |
gl | string | Optional | country code, e.g. us | us |
hl | string | Optional | interface language code | en |
age | string | Optional | age bracket within the FAMILY category | |
chart | string | Optional | browse a chart instead of searching, e.g. topselling_free, topselling_paid | |
engine | string | Required | google_play | |
store_device | string | Optional | phone | tablet | tv | chromebook | watch | car. NOTE: the param is `store_device`; there is no `store` param on this engine | |
apps_category | string | Optional | restrict to a Play category | |
see_more_token | string | Optional | ||
next_page_token | string | Optional | ||
section_page_token | string | Optional | ||
- Query parameters
qstringOptionalthe search term. OPTIONAL on this engine — omit it and supply `chart` to browse top-charts instead of searching
Example:
coffeeglstringOptionalcountry code, e.g. us
Example:
ushlstringOptionalinterface language code
Example:
enagestringOptionalage bracket within the FAMILY category
chartstringOptionalbrowse a chart instead of searching, e.g. topselling_free, topselling_paid
enginestringRequiredExample:
google_playstore_devicestringOptionalphone | tablet | tv | chromebook | watch | car. NOTE: the param is `store_device`; there is no `store` param on this engine
apps_categorystringOptionalrestrict to a Play category
see_more_tokenstringOptionalnext_page_tokenstringOptionalsection_page_tokenstringOptional
Code samples
Replace $TOOLSWITCH_KEY with the key you created in the console.
curl -X GET 'https://toolswitch.dev/v1/tools/serpapi.google-play.search.apps?q=coffee&engine=google_play' \
-H "X-Toolswitch-Key: $TOOLSWITCH_KEY"import os
import requests
response = requests.request(
"GET",
"https://toolswitch.dev/v1/tools/serpapi.google-play.search.apps?q=coffee&engine=google_play",
headers={"X-Toolswitch-Key": os.environ["TOOLSWITCH_KEY"]},
)
response.raise_for_status()
print(response.text)const response = await fetch("https://toolswitch.dev/v1/tools/serpapi.google-play.search.apps?q=coffee&engine=google_play", {
method: "GET",
headers: {
"X-Toolswitch-Key": process.env.TOOLSWITCH_KEY ?? "",
},
});
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
console.log(await response.text());This gateway API is in preview; its URL and authentication may change. The example parameters are sample data. Calls are billed at $0.015/success, including the service fee.