What’s new in v2

Over the past few years there have been quite a few changes to Appfigures. We’ve added new stores. We’ve expanded our public data offerings. We’ve seen folks create apps in our ecosystem, both publicly and privately. With all these changes v1.1 was getting a little dusty, so a new version of the API was in order.

This new version, v2, adds access to public data and supercharges reviews, featured, and ranks. Unified product_ids let you ask for sales and public data by the same id easily. Along the way we’ve fixed quite a few bugs and ‘features’, as well as cleaned up some representations that were clunky. Overall, it will make using the API even better than it was before.

At a glance

  • New routes for /ratings, /featured, and /ranks/snapshots
  • Redesigned /reviews route
  • Access to all supported ad networks in the /reports/ads route (replacing the /iads route)
  • Enabled public data access
  • OAuth support and Client Keys
  • Added support for monthly and yearly reports for iOS/Mac apps
  • Changed /ranks route’s representation to be easier to work with
  • Improved CSV and added Excel output
  • New product ids to allow access to public and private products all with the same id
  • Added the ability to specify date offsets
  • Improved representations for /data/categories, /external_accounts, and others.
  • More ways to group sales and ad reports

Migration Tips & Gotchas

While most of the changes in v2 are new additions there are some fundamental changes that are not backwards compatible with v1.1 clients.

  1. Authentication has changed. We added OAuth and limited the power of applications using HTTP Authentication. In either case you need to make a key and pass it along to the API in your requests.

  2. Products have new ids that are shared across public and private data sources

  3. The /sales route has been moved to /reports/sales and takes more parameters in the query string rather than path.

  4. The /iads route has been replaced by /reports/ads and now supports multiple ad networks.

  5. The /reviews route has been rebuilt from the ground up.

  6. The representation of the /ranks route has been drastically simplified.

You can read more about migrating from v1.1 here.

Explained

New routes for /ratings, /featured, and /ranks/snapshots

Ratings, which used to be included in limited capacity in API v1.1 have grown into their own route.

We’ve extended the ranks routes to allow you to see top charts. This lets you see where you stand in comparison to competitors easier, or scope out the standings in a new category.

Also, featured data is finally coming to the API. It’s been available from the site for a while, but now you have the ability to get summary featured data, full reports that show changes over time, and overview counts of how many featured pages products appear in.

Redesigned /reviews route

The reviews route now allows you to search, sort, and filter reviews. And it’s fast. This is much more flexible than the old system which was limited to paging through reviews per store/product.

You can now easily see grouped counts of reviews. For instance, how many are for which version for a product, or how many are 4 stars.

Access to all supported ad networks in the /ads route

We now support more than 10 ad networks and plan to support a slew more in the future. The API now supports filtering by ad network so you can break down what revenue comes from what network. The new route is called /reports/ads, because it’s more than just /iads

Enabled public data access

You’ve been able to access ranks and reviews for any product in the App Store, Google Play, or Amazon Appstore for a long time. In old versions of the API you were only able to access data for your own apps. Now, when you enable the Public Data Access add-on you’ll be able to get ranks, reviews, ratings, featured placements, and product data from all apps.

OAuth support

The API now support OAuth 1.0. HTTP Authentication is still supported, but you can only use it against your own account.

Added support for monthly and yearly reports for Apple

Now that Monthly and Yearly reports are released by Apple, it’s only natural that you have access to them in the API as well.

Simplified /ranks route’s representation

Representing large amounts of data is a challenge and API v1.1 used too simple of an approach. The new representation in API v2 groups data by what would be a series on a chart. This gives a representation that has more data embedded in it (so you don’t have to look up category data) and is more compact.

Improved CSV and Excel output

There have been small fixes to CSV output, particularly in the /reports/sales routes. Now the fields are consistent for each grouping no matter what filter parameters you’ve selected.

We also added a support for Excel so you can get your responses in xslx format directly from the API.

Access to public and private products all with the same id

As part of public data access, we’ve made it so that there are no longer separate ids for the same app in public and private resources. Now each product is assigned a unique id by us and is kept constant across all data sources. This comes along with a group of resources that let you search and get public data for all the apps we track.

Added the ability to specify date offsets

Now in your API calls anywhere we expect a date you can give an offset. Offsets are relative to today and composed of a signed number and granularity. So to get the last 30 days of sales by product you can now call /sales/products?start=-30 or the last 6 months: /sales/products?start=-6m&granularity=monthly

Small representation changes in /data/categories, /external_accounts, and others.

  • Categories now have parent_ids to show if they have a parent category. For instance Games/Kids has Games as its parent.
  • References to itc_account_id have been replaced with ext_account_id.
  • Archive entries now have correct region and import_method fields.
  • The migration guide link is broken.

    • appfigures

      Thanks for the heads up Cesar! The link has been fixed.