golang: Google Play退款订单数据查询

本文介绍了如何使用Google Play Developer API查询退款数据,包括Voided Purchases API的使用步骤、access_token的获取方法以及查询限制。同时提供了一个简单的查询demo,帮助开发者了解如何处理查询参数如startTime、endTime和maxResults等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Google Play Developer API

https://developers.google.com/android-publisher

查询退款数据

链接中开发者文档中Voided Purchases API已经给出了查询退款订单的步骤,本文给出了文档中没有提到的access_token的获取方式,并给出一个简单的demo

查询链接

GET https://www.googleapis.com/androidpublisher/v3/applications/${
   yourPkgName}/purchases/voidedpurchases?access_token=${
   AccessTokne}

接口限制

  1. 每天 6000 次查询(一天是从太平洋时间午夜开始,并于次日同一时间结束)
  2. 在任何时长为 30 秒的期限内查询 30 次。

其他参数说明

  • startTime 在响应中看到的最早作废的购买交易的时间。默认情况下,startTime 设为 30 天以前。最长只能查询到30天内的记录。
  • endTime 在响应中看到的最晚作废的购买交易的时间。默认情况下,endTime 设为当前时间。
  • maxResults: 每个响应中出现的已作废购买交易的数量上限。默认值为 1000,最大值1000。
  • token 之前响应中的继续令牌
  • type : 0/1。取值为0,系统只会返回已作废的应用内购买。取值为1 ,系统将返回已作废的应用内购买和已作废的订阅购买。默认值为 0。
    参数以&key=value的形式拼接在链接后

AccessToken获取
// PS:首先你应该能拿到应用的包名和授权账号密钥对应的公钥,这里使用的是.json格式的公钥

import (
	"context"
	"net/http"
	
	"golang.org/x/oauth2"
	"golang.org/x/oauth2/google"
	"google.golang.org/api/androidpublisher/v3"
)
const credentials = []byte(``) // 公钥的json串
func getGoogleApiAccessToken() (token string, err error) {
   
	c := &http.Client{
   Timeout: 10 * time.Second}
	ctx := context.WithValue(context.Background(), oauth2.HTTPClient, c)

	conf, err := google.JWTConfigFromJSON(credentials, androidpublisher.AndroidpublisherScope)
	if err != nil {
   
		return "", err
	}

	val := conf.Client(ctx).Transport.(*oauth2.Transport)
	tokenObj, err := val.Source.Token(
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值