如何通过Rest API获取指定时段内某应用的所有购买令牌?
我来帮你搞定这个问题!其实Google Play Developer API是有办法批量获取指定时间段内的购买记录(包含购买令牌)的,只是你可能没找到对应的端点,我给你梳理两个常用的方案:
1. 用 Orders API 批量拉取所有订单
这个是最通用的方式,不管是一次性应用内购买还是订阅,都能通过orders.list端点获取。你只需要指定你的应用包名、起始和结束时间,就能筛选出对应时间段的所有订单,每个订单里都会包含你需要的purchaseToken。
举个请求示例(你可以根据实际情况替换参数):
GET https://androidpublisher.googleapis.com/androidpublisher/v3/applications/com.your.app.package/orders?startTime=2024-03-01T00:00:00Z&endTime=2024-03-31T23:59:59Z
如果需要按特定产品过滤,还可以加上productId参数。另外如果返回结果太多,API会分页,记得处理返回里的nextPageToken来获取全部数据。
2. 针对订阅类购买的专用端点
如果你只需要订阅产品的购买记录,还可以用purchases.subscriptionsv2.query端点,它支持按时间范围、状态等条件筛选订阅记录,同样能拿到对应的购买令牌。不过这个端点更偏向订阅场景的细节筛选,如果你要覆盖所有购买类型,还是第一个方案更全面。
几个关键提醒
- 调用这些API前,确保你的服务账号已经获得了
Android Publisher的权限,并且完成了OAuth2认证,不然会被拒绝访问。 - 时间参数必须用RFC 3339格式,比如
YYYY-MM-DDTHH:MM:SSZ,别写错格式哦。
内容的提问来源于stack exchange,提问作者Sachin Singh
相关产品推荐
相关产品推荐

