Introduction

The AppShift API is based on standard REST principles. You can use your browser, curl or almost any HTTP client to interact with our API. There is no need to learn a new programming language or 3rd party library.

Base URL

All of our endpoints share the same base URL. When making a request, just substitute the store identifier (i.e. "apple" or "google") and specify the endpoint you would like to access.


  https://api.appshift.com/{store}

Standards
  • All API responses will be in JSON format
  • All dates and times are stored in UTC
  • All API responses will be UTF­-8 encoded

Authentication

Requests to the REST API are protected with H​TTP Basic authentication.​To ensure all requests are made securely the API will only accept requests over SSL (HTTPS). Any request over HTTP will fail. To get started, just s​ign up ​and you will be provided with a set of API credentials.

Request/Response

Response Format

A typical response consists of two main properties, data and messages. Endpoints that return only a single value will format the data property as a JSON object. All other endpoints will return the data property as a JSON array.

Example: Single value response


  {
    "data": {
      "id": "com.pandora",
      "store": "apple",
      "title": "Pandora Radio"
      ....
    },
    messages: [{
      "context": "*",
      "level": "Information",
      "text": "Request successful
    }]
  }


Example: Multiple value response


  {
    "data": [{
      "id": "com.pandora",
      "store": "apple",
      "title": "Pandora Radio"
      ....
    }, {
      "id": "com.facebook",
      "store": "apple",
      "title": "Facebook"
      ....
    }],
    messages: [{
      "context": "*",
      "level": "Information",
      "text": "Request successful
    }]
  }


Status Codes

Standard HTTP response codes are used to communicate the status of a request.

Code Name Description
200 Ok Successful request
400 Bad Request Request was not properly formatted
401 Unauthorized Invalid credentials
404 Not Found Requested resource was not found
429 Too Many requests Request limit for your plan has been exceeded

Endpoints

Application

Find an application by ID


  GET https://api.appshift.com/{store}/application/{id}


Name Required Description
store Yes The app store you are trying to access. The following app stores are currently supported:
  • apple ­- iTunes (Apple App Store)
  • google ­- Google Play Store
id Yes The unique identifier for the app. For iTunes, this is an Apple generated numeric id or the bundle identifier. For Google Play, this is the package name.


Find a random application


  GET https://api.appshift.com/{store}/application/random


Name Required Description
store Yes The app store you are trying to access. The following app stores are currently supported:
  • apple ­- iTunes (Apple App Store)
  • google ­- Google Play Store


Full­-Text search for applications


  GET https://api.appshift.com/{store}/application?query={query}


Name Required Description
store Yes The app store you are trying to access. The following app stores are currently supported:
  • apple ­- iTunes (Apple App Store)
  • google ­- Google Play Store
query Yes Search term(s)
offset No The starting record for paged responses
limit No The maximum number of results to return


View user reviews by application


  GET https://api.appshift.com/{store}/application/{id}/review


Name Required Description
store Yes The app store you are trying to access. The following app stores are currently supported:
  • apple ­- iTunes (Apple App Store)
  • google ­- Google Play Store
id Yes The unique identifier for the app. For iTunes, this is an Apple generated numeric id or the bundle identifier. For Google Play, this is the package name.
offset No The starting record for paged responses
limit No The maximum number of results to return


View application history


  GET https://api.appshift.com/{store}/application/{id}/history


Name Required Description
store Yes The app store you are trying to access. The following app stores are currently supported:
  • apple ­- iTunes (Apple App Store)
  • google ­- Google Play Store
id Yes The unique identifier for the app. For iTunes, this is an Apple generated numeric id or the bundle identifier. For Google Play, this is the package name.
offset No The starting record for paged responses
limit No The maximum number of results to return


Collection

List all collections


  GET https://api.appshift.com/{store}/collection


Name Required Description
store Yes The app store you are trying to access. The following app stores are currently supported:
  • apple ­- iTunes (Apple App Store)
  • google ­- Google Play Store


Find a collection by ID


  GET https://api.appshift.com/{store}/collection/{id}


Name Required Description
store Yes The app store you are trying to access. The following app stores are currently supported:
  • apple ­- iTunes (Apple App Store)
  • google ­- Google Play Store
id Yes The unique identifier for the collection. The following collections are currently supported:
  • free -­ Top Free Apps
  • paid ­- Top Paid Apps
  • new ­- Top New Apps
  • grossing ­- Top Grossing Apps
  • editor ­- Editor’s Choice Apps


Category

List all categories


  GET https://api.appshift.com/{store}/category


Name Required Description
store Yes The app store you are trying to access. The following app stores are currently supported:
  • apple ­- iTunes (Apple App Store)
  • google ­- Google Play Store


Find a category by ID


  GET https://api.appshift.com/{store}/category/{id}


Name Required Description
store Yes The app store you are trying to access. The following app stores are currently supported:
  • apple ­- iTunes (Apple App Store)
  • google ­- Google Play Store
id Yes The unique identifier for the category


Developer

Find an developer by ID


  GET https://api.appshift.com/{store}/developer/{id}


Name Required Description
store Yes The app store you are trying to access. The following app stores are currently supported:
  • apple ­- iTunes (Apple App Store)
  • google ­- Google Play Store
id Yes The unique identifier for the developer


Find a random developer


  GET https://api.appshift.com/{store}/developer/random


Name Required Description
store Yes The app store you are trying to access. The following app stores are currently supported:
  • apple ­- iTunes (Apple App Store)
  • google ­- Google Play Store


Full­-Text search for developers


  GET https://api.appshift.com/{store}/developer?query={query}


Name Required Description
store Yes The app store you are trying to access. The following app stores are currently supported:
  • apple ­- iTunes (Apple App Store)
  • google ­- Google Play Store
query Yes Search term(s)
offset No The starting record for paged responses
limit No The maximum number of results to return


View developer history


  GET https://api.appshift.com/{store}/developer/{id}/history


Name Required Description
store Yes The app store you are trying to access. The following app stores are currently supported:
  • apple ­- iTunes (Apple App Store)
  • google ­- Google Play Store
id Yes The unique identifier for the developer
offset No The starting record for paged responses
limit No The maximum number of results to return