Search apps by name

Get the application ids matching an app name, or part of one, on the App Store and on Google Play in a single call, ranked by store relevance.

Price

DatapointDescriptionCredits/request
candidate objectHash containing the application id, the title and the icon of each candidate, for both stores.11


The price does not change with limit. A rejected parameter costs 1 credit. A request that reaches neither store costs nothing.

Every endpoint of the AppTweak API takes an application id: a numeric id on the App Store, a package name on Google Play. This endpoint is the way in when all you have is a name: it searches both stores in one call and returns the candidates side by side, so you can pick the right app before spending credits on data endpoints. The response will be a JSON which contains one array of candidates per store, ranked by store relevance, without pagination.

Good to know

• This is a store search and not an exact lookup: candidates come back ranked by store relevance, and the first one is not necessarily the app you meant. Check title before using an id.
• If one store is unavailable the request still succeeds, with that store's array empty, and still costs 11 credits.
• Each store applies its own default language for the requested country, and the two are not always the same: for in, the App Store is searched in en and Google Play in in.

Query Params
string
required

The app name, or part of it, to search for. Surrounding whitespace is stripped and an empty value returns a 422.
Example: strava

integer
1 to 10
Defaults to 5

The number of candidates you want to fetch per store, from 1 to 10. It does not change the price.
Default: 5

string
^[a-z]{2}$
Defaults to us

Two-letter country code (us, gb, fr). Accepted values: GET /api/public/apptweak/countries with store=ios or store=android. It selects the storefront to search. The search language is not a parameter: each store applies its own default language for that country.
Default: us

Responses

401

Missing or invalid x-apptweak-key.

403

The credit balance is too low for the 11 credits this call costs (NotEnoughCreditsError). Nothing is charged.

422

A parameter is missing, empty or out of range. error.parameter names it. Charged 1 credit.

429

Rate limit exceeded: 10 requests per minute on this endpoint, 60 per 10 seconds across the API. Retry with backoff.

503

Neither store could be reached (ServiceUnavailableError). Uncharged: metadata.request.cost is 0.

Language
Credentials
Header
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json