如何通过App Store Connect API获取苹果App总下载量及日下载量
App Store Connect API拉取安装/下载量配置方案
直接按下面的参数配就行,不用找其他杂七杂八的接口,Sales and Trends的SALES类汇总报表完全能覆盖你要的指标。
核心报告类型选择
别乱选报告类型,传错了要么拿不到数据要么口径不对:
reportType固定传SALES,这是销售趋势类报表的根类型,对应后台看到的下载、安装、更新类数据reportSubType固定传SUMMARY,就是你参考的后台截图里的汇总口径报表,不用传DETAILED,那个是带渠道细分的明细,算总量容易重复计数frequency要日维度下载量就传DAILY,要算历史总安装量建议传MONTHLY拉月度汇总,比拉每日数据效率高很多,注意日粒度最多只能拉过去365天的数据
必填请求参数
所有参数都作为query参数拼接到GET请求上,缺一个直接报参数错误:
filter[reportType]:SALESfilter[reportSubType]:SUMMARYfilter[frequency]: 对应你要的时间粒度,可选值DAILY/WEEKLY/MONTHLY/YEARLYfilter[reportDate]: 严格按YYYY-MM-DD格式传,日粒度传对应自然日,周/月/年粒度传对应周期的最后一天,比如拉2024年5月的月报就传2024-05-31filter[vendorNumber]: 传你账号对应的供应商编号,在App Store Connect后台的财务报告页面能找到,是纯数字串,不是App ID也不是账号ID
注意:这个接口返回的不是JSON结构,是gzip压缩的CSV文件,请求时带好合法的JWT鉴权头,拿到响应先做gzip解压再解析CSV内容。
字段对应规则
解压完CSV直接按字段匹配就行,不用做复杂换算:
- 日下载量:筛选
product_type_identifier字段值为1的行,对应行的units值就是当日App的首次下载量,注意排除值为7(App更新)、F1(同账号跨设备重复下载)这类非首次安装的行 - 总安装量:把你统计周期内所有符合
product_type_identifier=1的行的units值累加即可,要全生命周期总安装量就从App上线当月开始拉所有月报累加就行
常见坑点
- 日维度报表不是零点就出,一般要到次日下午(UTC时间)才会生成前一天的数据,太早请求会返回404,等数据生成后再重试
- 不要用
SUBSCRIPTION或者FINANCE类报告算下载量,前者是订阅专属数据,后者是财务结算口径,和前台展示的下载量口径不一致 - 如果账号下有多个App,解析CSV的时候按
apple_identifier字段(即你的App ID)过滤就行,不会和其他App数据混在一起
内容的提问来源于stack exchange,提问作者Thilina
相关产品推荐
相关产品推荐

