Get acquisitions data for your games and apps
Use this method in the Microsoft Store analytics API to get aggregate acquisition data in JSON format for UWP apps and Xbox One games that were ingested through the Xbox Developer Portal (XDP) and available in the XDP Analytics dashboard.
Note
This API does not provide daily aggregate data before Oct 1st 2016.
Prerequisites
To use this method, you need to first do the following:
- If you have not done so already, complete all the prerequisites for the Microsoft Store analytics API.
- Obtain an Azure AD access token to use in the request header for this method. After you obtain an access token, you have 60 minutes to use it before it expires. After the token expires, you can obtain a new one.
Request
Request syntax
Method | Request URI |
---|---|
GET | https://manage.devcenter.microsoft.com/v1.0/my/analytics/acquisitions |
Request header
Header | Type | Description |
---|---|---|
Authorization | string | Required. The Azure AD access token in the form Bearer <token> . |
Request parameters
Parameter | Type | Description | Required |
---|---|---|---|
applicationId | string | The product ID of the Xbox One game for which you are retrieving acquisition data. To get the product ID of your game, navigate to your game in the XDP Analytics Program and retrieve the product ID from the URL. Alternatively, if you download your acquisitions data from the Partner Center analytics report, the product ID is included in the .tsv file. | Yes |
startDate | date | The start date in the date range of acquisition data to retrieve. The default is the current date. | No |
endDate | date | The end date in the date range of acquisition data to retrieve. The default is the current date. | No |
filter | string | One or more statements that filter the rows in the response. Each statement contains a field name from the response body and value that are associated with the eq or ne operators, and statements can be combined using and or or. String values must be surrounded by single quotes in the filter parameter. For example, filter=market eq 'US' and gender eq 'm'. You can specify the following fields from the response body:
|
No |
aggregationLevel | string | Specifies the time range for which to retrieve aggregate data. Can be one of the following strings: day, week, or month. If unspecified, the default is day. | No |
orderby | string | A statement that orders the result data values for each acquisition. The syntax is orderby=field [order],field [order],... The field parameter can be one of the following strings:
|
No |
groupby | string | A statement that applies data aggregation only to the specified fields. You can specify the following fields:
|
No |
Request example
The following example demonstrates several requests for getting Xbox One game acquisition data. Replace the applicationId value with the product ID for your game.
GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/acquisitions?applicationId=9WZDNCRFHXHT&startDate=1/1/2017&endDate=2/1/2019&top=10&skip=0 HTTP/1.1
Authorization: Bearer <your access token>
GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/acquisitions?applicationId=9WZDNCRFHXHT&startDate=1/1/2017&endDate=2/1/2019&skip=0&filter=market eq 'US' and gender eq 'm' HTTP/1.1
Authorization: Bearer <your access token>
Response
Response body
Value | Type | Description |
---|---|---|
Value | array | An array of objects that contain aggregate acquisition data for the game. For more information about the data in each object, see the acquisition values section below. |
TotalCount | integer | The total number of rows in the data result for the query. |
Acquisition values
Elements in the Value array contain the following values.
Value | Type | Description |
---|---|---|
date | string | The first date in the date range for the acquisition data. If the request specified a single day, this value is that date. If the request specified a week, month, or other date range, this value is the first date in that date range. |
applicationId | string | The product ID of the Xbox One game for which you are retrieving acquisition data. |
applicationName | string | The display name of the game. |
acquisitionType | string | One of the following strings that indicates the type of acquisition:
|
age | string | One of the following strings that indicates the age group of the user who made the acquisition:
|
deviceType | string | One of the following strings that specifies the type of device that completed the acquisition:
|
gender | string | One of the following strings that specifies the gender of the user who made the acquisition:
|
market | string | The ISO 3166 country code of the market where the acquisition occurred. |
osVersion | string | The OS version on which the acquisition occurred. For this method, this value is always either Windows 10 or Windows 11. |
paymentInstrumentType | string | One of the following strings that indicates the payment instruction used for the acquisition:
|
sandboxId | string | The sandbox ID created for the game. This can be the value RETAIL or a private sandbox ID. |
storeClient | string | One of the following strings that indicates the version of the Store where the acquisition occurred:
|
xboxTitleId | string | The Xbox Live title ID (represented in hexadecimal value) assigned by the Xbox Developer Portal (XDP) for Xbox Live-enabled games. |
acquisitionQuantity | number | The number of acquisitions that occurred during the specified aggregation level. |
purchasePriceUSDAmount | number | The amount paid by the customer for the acquisition, converted to USD, using the monthly exchange rate. |
purchaseTaxUSDAmount | number | The tax amount applied to the acquisition, converted to USD. |
localCurrencyCode | string | Local Currency code based on the country of the Partner Center account. |
xboxProductId | string | Xbox Product ID of the product from XDP, if applicable. |
availabilityId | string | Availability ID of the product from XDP, if applicable. |
skuId | string | SKU ID of the product from XDP, if applicable. |
skuDisplayName | string | SKU display name of the product from XDP, if applicable. |
xboxParentProductId | string | Xbox Parent Product ID of the product from XDP, if applicable. |
parentProductName | string | Parent Product Name of the product from XDP, if applicable. |
productTypeName | string | Product Type Name of the product from XDP, if applicable. |
purchaseTaxType | string | Purchase Tax Type of the product from XDP, if applicable. |
purchasePriceLocalAmount | number | Purchase Price Local Amount of the product from XDP, if applicable. |
purchaseTaxLocalAmount | number | Purchase Tax Local Amount of the product from XDP, if applicable. |
Response example
The following example demonstrates an example JSON response body for this request.
{
"Value": [
{
"date": "2019-01-15T01:00:00.0000000Z",
"applicationId": "9WZDNCRFHXHT",
"applicationName": null,
"acquisitionType": "Paid",
"age": null,
"deviceType": "Phone",
"gender": null,
"market": "US",
"osVersion": "Windows 11",
"paymentInstrumentType": null,
"sandboxId": "RETAIL",
"storeClient": "Microsoft Store (client)",
"xboxTitleId": null,
"localCurrencyCode": "USD",
"xboxProductId": null,
"availabilityId": "B42LRTSZ2MCJ",
"skuId": "0010",
"skuDisplayName": null,
"xboxParentProductId": null,
"parentProductName": null,
"productTypeName": "Game",
"purchaseTaxType": "TaxesNotIncluded",
"acquisitionQuantity": 1,
"purchasePriceUSDAmount": 3.08,
"purchasePriceLocalAmount": 3.08,
"purchaseTaxUSDAmount": 0.09,
"purchaseTaxLocalAmount": 0.09
}
],
"@nextLink": null,
"TotalCount": 12221
}