跳到主要内容

接口说明

1、API网关地址

生产环境

https://api.aig1234.com

测试环境

https://staging.aig1234.com

2、说明

  • 商户 ID 和商户私钥请向客服人员获取
  • 统一使用 Gzip压缩
  • 统一使用 JSON 数据格式, 消息头应为“Content-Type: application/json”。
  • 参数名称和参数说明中规定的固定值必须与列表中完全一致(大小写敏感)

3、钱包说明

  • 转账钱包:游戏侧为每个玩家创建一个钱包,提供钱包的转入/转出接口给商家侧调用,详见“钱包(转账钱包)”
  • 单一钱包:游戏侧不创建玩家的钱包,由商家侧按“钱包(单一钱包)”的接口格式实现接口,游戏侧调用商家侧提供的接口查询余额

4、MD5 签名算法

  • 设所有发送或者接收到的数据为集合 M,将集合 M 内非空参数值的参数按照参数名 ASCII 码从小到大排序(字典排序)
  • 使用 URL 键值对的格式,即 key1=value1&key2=value2…,拼接成字符串。注意:空值参数不参与签名
  • 将接口密钥放置在第 1 步中的字符串前面,用「&」合并在一起
  • 使用 md5 计算上一步中的字符串摘要(不区分大小写),将此摘要以 sign 参数一并传递给接口
Post请求范例:
  • Post请求
  • 商户私钥为 l4gnD61pz4arJyv8
  • 接口请求参数如下:
{
"agent_id": "agent001",
"user_id": "testUid03",
"user_name": "testUser",
"desc": "a test user",
"timestamp": 1734486159402
}
  • 按上面所述的算法,拼接后结果如下:
l4gnD61pz4arJyv8&agent_id=agent001&desc=a test user&timestamp=1734486159402&user_id=testUid03&user_name=testUser
  • 上面字符串计算出来的摘要结果为(不区别大小写):
9d356beca8874e340721cc3e269863bd
  • 接口调用时,完整的参数为:
curl --location 'https://staging.aig1234.com/api/member/create' \
--header 'Content-Type: application/json' \
--data '{
"agent_id": "agent001",
"user_id": "testUid03",
"user_name": "testUser",
"desc": "a test user",
"timestamp": 1734486159402,
"sign": "9d356beca8874e340721cc3e269863bd"
}'
Get请求范例:
  • Get请求
  • 商户私钥为 l4gnD61pz4arJyv8
  • 接口请求参数如下:
https://staging.aig1234.com/api/game/transaction/latest?agent_id=agent001&last_time=1732589000000&timestamp=1734486354401
  • 按上面所述的算法,拼接后结果如下:
l4gnD61pz4arJyv8&agent_id=agent001&last_time=1732589000000&timestamp=1734486354401
  • 上面字符串计算出来的摘要结果为(不区别大小写):
c9657cf532400606b83513ec494c385f
  • 接口调用时,完整的参数为:
https://staging.aig1234.com/api/game/transaction/latest?agent_id=agent001&last_time=1732589000000&timestamp=1734486354401&sign=c9657cf532400606b83513ec494c385f