获取应用购置

使用 Microsoft Store 分析 API 中的此方法,可以以 JSON 格式获取给定日期范围内和使用其他可选筛选器时的某个应用的聚合购置数据。 还可以在合作伙伴中心的购置报告中获取此信息。

先决条件

若要使用此方法,首先需要执行以下操作:

  • 完成 Microsoft Store 分析 API 的所有先决条件(如果尚未这样做)。
  • 获取 Azure AD 访问令牌,以供在此方法的请求标头中使用。 获取访问令牌后,在它到期前,你有 60 分钟的使用时间。 该令牌到期后,可以获取新的令牌。

请求

请求语法

方法 请求 URI
GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/appacquisitions

请求头

标头 类型 说明
授权 字符串 必需。 Azure AD 访问令牌的格式为 Bearertoken<>。

请求参数

参数 类型 描述 必需
applicationId string 要检索购置数据的应用的存储 ID
startDate date 要检索的购置数据日期范围中的开始日期。 默认是当前日期。
endDate date 要检索的购置数据日期范围中的结束日期。 默认是当前日期。
top int 要在请求中返回的数据行数。 如果未指定,最大值和默认值为 10000。 当查询中存在多行数据时,响应正文中包含的下一个链接可用于请求下一页数据。
skip int 要在查询中跳过的行数。 使用此参数可以浏览较大的数据集。 例如,top=10000 和 skip=0,将检索前 10000 行数据;top=10000 和 skip=10000,将检索之后的 10000 行数据,依此类推。
filter string 在响应中筛选行的一条或多条语句。 每条语句包含的响应正文中的字段名称和值使用 eqne 运算符进行关联,并且语句可以使用 andor 进行组合。 filter 参数中的字符串值必须使用单引号引起来。 例如,filter=market eq 'US' and gender eq 'm'

可以指定响应正文中的以下字段:

  • acquisitionType
  • ageGroup
  • storeClient
  • 性别
  • market
  • osVersion
  • deviceType
  • orderName
aggregationLevel string 指定用于检索聚合数据的时间范围。 可以是以下字符串之一:dayweekmonth。 如果未指定,默认值为 day
orderby string 对每个购置的结果数据值进行排序的语句。 语法为 orderby=field [order],field [order],...,其中 field 参数可以是以下字符串之一:
  • date
  • acquisitionType
  • ageGroup
  • storeClient
  • 性别
  • market
  • osVersion
  • deviceType
  • orderName

order 参数是可选的,可以是 ascdesc,用于指定每个字段的升序或降序排列。 默认值为 asc

下面是一个 orderby 字符串的示例:orderby=date,market

groupby string 仅将数据聚合应用于指定字段的语句。 可以指定的字段如下所示:
  • date
  • applicationName
  • acquisitionType
  • ageGroup
  • storeClient
  • 性别
  • market
  • osVersion
  • deviceType
  • orderName

返回的数据行将包含 groupby 参数中指定的字段以及以下字段:

  • date
  • applicationId
  • acquisitionQuantity

groupby 参数可以与 aggregationLevel 参数结合使用。 例如:&groupby=ageGroup,market&aggregationLevel=week

请求示例

如下示例展示了一些用来获取应用购置数据的请求。 将 applicationId 值替换为你的应用的 Store ID。

GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/appacquisitions?applicationId=9NBLGGGZ5QDR&startDate=1/1/2015&endDate=2/1/2015&top=10&skip=0  HTTP/1.1
Authorization: Bearer <your access token>

GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/appacquisitions?applicationId=9NBLGGGZ5QDR&startDate=8/1/2015&endDate=8/31/2015&skip=0&filter=market eq 'US' and gender eq 'm'  HTTP/1.1
Authorization: Bearer <your access token>

响应

响应正文

类型 说明
Value 数组 一组包含应用的聚合购置数据的对象。 有关每个对象中的数据的详细信息,请参阅下面的购置值部分。
@nextLink string 如果存在其他数据页,则此字符串包含一个你可用来请求下一页数据的 URI。 例如,当请求的 top 参数设置为 10000,但查询的购置数据超过 10000 行时,将会返回此值。
TotalCount int 查询的数据结果中的行总数。

购置价格

Value 数组中的元素包含以下值。

Value 类型 说明
date string 购置数据的日期范围内的第一个日期。 如果请求指定了某一天,此值就是该日期。 如果请求指定了一周、月或其他日期范围,此值是该日期范围内的第一个日期。
applicationId string 要检索其购置数据的应用的 Store ID。
applicationName string 应用的显示名称。
deviceType string 用来指定发生购置的设备类型的以下字符串之一:
  • 电脑
  • 电话
  • Console-Xbox One
  • Console-Xbox 系列 X
  • IoT
  • Holographic
  • 未知
orderName string 订单的名称。
storeClient string 以下字符串之一,指示发生购置的 Microsoft Store 版本:
  • Windows Phone Store(客户端)
  • Microsoft Store (client)(或 Windows Store (client),前提是查询 2018 年 3 月 23 日之前的数据)
  • Microsoft Store (web)(或 Windows Store (web),前提是查询 2018 年 3 月 23 日之前的数据)
  • 组织批量购买
  • 其他
osVersion string 用来指定发生购置的 OS 版本的以下字符串之一:
  • Windows Phone 7.5
  • Windows Phone 8
  • Windows Phone 8.1
  • Windows Phone 10
  • Windows 8
  • Windows 8.1
  • Windows 10
  • Windows 11
  • 未知
market string 发生购置的市场的 ISO 3166 国家/地区代码。
gender string 以下字符串之一,指定进行购置的用户的性别:
  • m
  • f
  • 未知
ageGroup string 用来指定进行购置的用户年龄组的以下字符串之一:
  • 小于 13
  • 13-17
  • 18-24
  • 25-34
  • 35-44
  • 44-55
  • 大于 55
  • 未知
acquisitionType string 以下字符串之一,指示购置类型:
  • 免费
  • 试用
  • 已付
  • 促销代码
  • Iap
  • 订阅 Iap
  • 私人受众
  • 预订
  • Xbox Game Pass(或者为 Game Pass,前提是在 2018 年 3 月 23 之前查询数据)
  • 磁盘
  • 预付代码
acquisitionQuantity number 在指定的聚合级别期间发生的购置次数。

请求和响应示例

如下代码片段展示了这些请求的一些示例请求和 JSON 响应正文。

示例请求

GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/appacquisitions?applicationId=9NBLGGGZ5QDR  HTTP/1.1
Authorization: Bearer <your access token>

示例响应

{
    "Value": [
        {
            "applicationId": "9NBLGGGZ5QDR",
            "date": "2022-07-29",
            "acquisitionQuantity": 7,
            "purchasePriceUSDAmount": 0.0,
            "purchasePriceLocalAmount": 0.0,
            "purchaseTaxUSDAmount": 0.0,
            "purchaseTaxLocalAmount": 0.0
        },
  ],
  "TotalCount": 1,
  "DataFreshnessTimestamp": "2022-07-29T08:42:00"
}

示例请求

GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/appacquisitions?applicationId=9NBLGGGZ5QDR&startDate=8/1/2021&endDate=12/21/2021&skip=0&filter=market&groupby=date,applicationName,acquisitionType,ageGroup,storeClient,gender,market,osVersion,deviceType  HTTP/1.1
Authorization: Bearer <your access token>

示例响应

	{
    "Value": [
        {
            "applicationId": "9NBLGGGZ5QDR",
            "applicationName": "Contoso Demo",
            "acquisitionType": "Free",
            "storeClient": "Microsoft Store (client)",
            "gender": "f",
            "market": "TW",
            "osVersion": "Windows 10",
            "deviceType": "PC",
            "date": "2021-08-01",
            "acquisitionQuantity": 1,
            "purchasePriceUSDAmount": 0.0,
            "purchasePriceLocalAmount": 0.0,
            "purchaseTaxUSDAmount": 0.0,
            "purchaseTaxLocalAmount": 0.0
        },
        {
            "applicationId": "9NBLGGGZ5QDR",
            "applicationName": "Contoso Demo",
            "acquisitionType": "Free",
            "storeClient": "Microsoft Store (client)",
            "gender": "Unknown",
            "market": "BR",
            "osVersion": "Windows 10",
            "deviceType": "PC",
            "date": "2021-08-01",
            "acquisitionQuantity": 1,
            "purchasePriceUSDAmount": 0.0,
            "purchasePriceLocalAmount": 0.0,
            "purchaseTaxUSDAmount": 0.0,
            "purchaseTaxLocalAmount": 0.0
        },
      ],  
  "TotalCount": 2,
  "DataFreshnessTimestamp": "2022-07-29T08:42:00"
 }