Skip to content
App Brain

Developer tools

Build on the index

The catalogue, its history and its chart snapshots are available over HTTP as JSON. No SDK to embed, no key to request for the public endpoints, and the same data the site itself renders from.

Listings available
155
Markets in the charts
20
Response format
JSON
Authentication
Only for writes

Endpoints

Everything here is a normal WordPress REST route, so cookie or application-password authentication works the way it does in any other WordPress project.

Public and authenticated API endpoints
Method Path Access
GET /wp-json/appcompass/v1/suggest?q={term} Autocomplete across listings and developers. Returns titles, package names, categories and install buckets. Public
POST /wp-json/appcompass/v1/watchlist Adds a listing to the signed-in member's watchlist. Takes an app_id. Signed in
DELETE /wp-json/appcompass/v1/watchlist Removes a listing from the watchlist. Signed in
GET /wp-json/wp/v2/ac_app The catalogue itself, through the standard WordPress REST collection: paging, search and ordering all behave as they do everywhere else. Public

What a listing looks like

The shape of one record, with a real listing's values.

{
    "package": "com.tessellate.blossommatch",
    "title": "Blossom Match",
    "tagline": "Match-three with hand-made levels",
    "developer": "Tessellate Games",
    "category": "casual",
    "is_game": true,
    "rating": 4.84,
    "rating_count": 25082313,
    "installs": 1848459000,
    "price": 0,
    "currency": "USD",
    "contains_ads": true,
    "has_iap": true,
    "released_at": "2021-09-05",
    "play_url": "https://play.google.com/store/apps/details?id=com.tessellate.blossommatch"
}

Things worth knowing before you build

The limits and the caveats, up front rather than in a footnote.

The figures are estimates

Installs, growth and chart positions are modelled from the index. They are good for direction and scale and wrong for anything that needs an exact number. Google Play is the source of truth for a listing's own figures.

No binaries, ever

The API returns metadata and links. It does not serve APK files, and it has no endpoint that would. Install links point at Google Play.

History is daily, then weekly

The recent window is stored a day at a time; older history thins to weekly. A chart over two years has fewer points at the left-hand end, which is deliberate rather than missing data.

Writes need a signed-in user

Read endpoints are open. Anything that changes state — the watchlist — requires authentication and is scoped to that user's own records.

Snapshots, not a live feed

Chart positions move when a new snapshot is built, not continuously. Polling more often than daily will return the same rows.

It is WordPress underneath

Listings are a custom post type and categories a taxonomy, so the standard WP REST collection, its filters and its pagination headers all work without anything special.

Have a look at a response

The search endpoint takes a term and needs no key. Open it in a browser and you will see exactly what the site's own search box receives.

Appcompass is not affiliated with Google, and Android and Google Play are trademarks of Google LLC.