Golden 777 soft
转账模式 V1.0
API对接文档
更新记录
版本 | 更新日期 | 描述 |
1.0.0 | 2024-10-08 | 修订文件初版 |
1.0.1 | 2025-03-25 | 投注历史记录增加gameid参数 |
|
|
|
1.文档概述
1.1,文档目的:本API对接文档用于指导运营商如何正确集成游戏API,以实现与游戏平台的无缝对接。
本文档介绍转账模式的对接方式。所谓转账模式,即指玩家需要从玩家钱包将金额转账至
G7S 游戏系统钱包才可进行游戏。这也表示,玩家需将盈利的金额从 G7S 游戏系统钱
包转账至中心钱包后才可进行提款。
2.系统要求
2.1,游戏尺寸要求
G7S游戏以 H5 制作并有横版竖版两种方式呈现,在尺寸规格上有最低要求。有关 iframe 中的
游戏尺寸,请参阅以下内容:
• 横版尺寸 : 1280 x 720
• 竖版尺寸 : 720 x 1280
2.2,硬件
| Android | iOS | Windows |
操作系统版本 | 5.0或以上 | 14.0或以上 | 7或以上 |
内存 | 2GB | 2GB | 2GB |
中央处理器 | ARM Cortex-A9 或以上
| iPhone 8或以上 | • 1 千兆赫 (GHz) 或更快 • 基于 32-bit (x86) 或 64- bit (x64) 处理器 • 至少双核
|
储存 | 2GB 和以上
| 2GB 和以上
| 2GB 和以上
|
2.3,浏览器
• Microsoft Edge : 版本 79 或更高版本
• Google Chrome : 版本 59 或更高版本
• Safari : 版本 11.1 或更高版本
• 其他 : 基于 Chromium 的浏览器需同等于 Google Chrome 59 或更高版本
2.4,不支持的浏览器
• Android : 火狐浏览器及 CM 浏览器
• iOS : CM 浏览器
• 桌面 : UC 浏览器、百度浏览器、夸克浏览器、 CM 浏览器、IE 浏览器
3.游戏启动
API功能简述:API让您得以通过编程方式使用G7S工具和服务。您可以通过这些 API检索信息,并创建、修改或删除G7S所提供的各种服务,例如创建游戏等。G7S的API皆按服务划分。每种服务在本文档中都有个别的章节。本文档所包含的所有API 都是可选的,运营商可依据需求选择API对接。
3.1,游戏登录方式
G7S 支持URL scheme模式登录授权方式:
• URL scheme模式适用于 iOS、Android 和浏览器,它使用令牌参数进行登录;
3.1.1 URL Scheme 方式
URL scheme 模式是游戏启动的常规方法。 玩家需要通过运营商的网站或App登录,并通过运营商的游戏大厅页面启动游戏。
注解:
● 运营商需提供登录页面(运营商服务器主控)以供玩家登录。
● 当玩家成功登录时,运营商需调用G7S游戏登录API
● 运营商需提供令牌验证API ,并用于运营商玩家令牌的身份验证。
登录流程
运营商需提供一个登录页面,玩家登录成功后选择G7S平台通过API接口创建玩家账号和获取最新游戏列表,获取游戏列表成功之后玩家根据喜好选择进入G7S游戏,进入G7S游戏之前要先进行钱包转入操作,运营商平台金额转入G7S后调用创建游戏API登录G7S游戏。
3.1.2 Web大厅模式
G7S Web大厅是个响应式的网页,玩家可以在这里玩到所有的G7S游戏。它为玩家提供了全新的体验,呈现美观、具吸引力、丰富且有效率的UI设计。我们建议运营商将G7S Web大厅整合到您的网站。玩家需要通过运营商网站登录,并通过G7S Web大厅启动G7S游戏。
3.2,游戏登录限制
G7S游戏不支持一个账号多重登录或一个玩家同时打开多个游戏。以上操作将导致玩家被 锁定,同时将被踢出游戏及报错:
4.对接API
4.1请求参数
该 API 使用 HTTP 表单方式以及 RESTful 终点架构。运营商需根据以下内容格式发送请求:Content-Type: application/x-www-form-urlencoded
4.2请求方法:POST
4.3 签名:
要求运营商使用约定的密钥进行哈希校验,使用HAMAC-SHA256算法生成token。
例如trace_id=8431207b-6af0-4526-9409-037d8af625b2&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&nickname=test123
哈希校验之后的token:
c5bfe2c78ff0ce1538838e5d95dabac7eac61b278dda1a7b86d45bf7df69279b
之后数据为:trace_id=8431207b-6af0-4526-9409-037d8af625b2&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&nickname=test123&access_token=c5bfe2c78ff0ce1538838e5d95dabac7eac61b278dda1a7b86d45bf7df69279b
4.4 数据加密
为保证运营商和G7S数据传输安全性,我们建议对数据进行AES加解密,AES密钥和运营商约定。如上面签名之后的数据AES加密后为:1hVqPUFHOX4g4BMt4j076gpkup9z+O5VUe1qtUeAOup04ACHaaXSb0qH69ObzydN1248PvfJVCaGiWzk2XXOD4UATqLTxEpzAl1OUB6/k9Xr/LFmS0Dq0zc9NUnBdpl/ZmSITizzaEw02DjASoIoSnInfUiccakP4zS1rbPXsjFx2FZXDZzGKnVv3kxHseHMlF0pSAa3UGeh6efIKUQuX/2CWEtynPLyYTFy/3TcAd1mTEev9HmoSuzq+tySpnmmoV3dPyLPSNPcrlNikRgB7S1favNOyMlBkoZjeLM3bUQkDndKWnOoLZjoUaoANA4f
4.5 返回结果
API 返回 JSON 格式的返回结果。对于成功和失败的 API 请求,G7S将会返回 HTTP 状态码为 200 的 API 返回结果。API 对于全部 API 方式都使用全球 JSON 格式的返回结果,其内容类型如下:Content-Type: application/json
参数:error_code [错误提示码]
message [提示信息]
data [API返回信息,json格式将会依据各个API而有所不同]
例子:
成功的返回结果
{
"error_code":0,
"message":"success",
"data": {
[API method response. JSON object format may vary depending on API methods]
}
}
失败/错误的返回结果
{
"error_code": "[Error code]",
"message": "[Error message]" ,
"data": null
}
5.API接口
5.1创建玩家
在G7S游戏系统中创建新玩家帐户,URL Scheme方式需要先调用该接口
请求参数
API URL: {G7SSoftAPIDomain}/v1/Player/Create
HTTP 方法 : POST
主体参数
参数名称 | 数据类型 | 必需项 | 描述 |
trace_id | string | ● | 请求的唯一标识符(如GUID,时间戳(毫秒级)) |
access_id | string | ● | 运营商的唯一标识符 |
access_token | string | ● | 签名 |
access_key | string | ● | 和运营商约定的密钥 |
username | string | ● | 玩家账号(唯一标识符) |
nickname | string | ● | 玩家的用户名 |
例子:
参数:trace_id=22f908d2-77ac-4007-b2f5-ff4d36f5220e&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&nickname=test123
哈希校验之后:
trace_id=22f908d2-77ac-4007-b2f5-ff4d36f5220e&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&nickname=test123&access_token=373c2a1ef59a3bfc80712824be04a28acadbf112f1fa760c91d5bc7363dba317
URL:
https://api.g7s-bo.me/v1/Player/Create?data=%2FSlDs8g2cJQwr1s%2FPgt6ascH4kV9d7bKLKEpVtlYVsIwYgL68dRRNlTFSlk%2FlSmg1248PvfJVCaGiWzk2XXOD4UATqLTxEpzAl1OUB6%2Fk9Xr%2FLFmS0Dq0zc9NUnBdpl%2FZmSITizzaEw02DjASoIoSnInfUiccakP4zS1rbPXsjFx2FZXDZzGKnVv3kxHseHMlF0pSAa3UGeh6efIKUQuX6ge8EW%2BGgpWrX0PeP0%2FqMeUNMHXVi2sZcQqnFRaaa8EPP5J2BFkt4JrICyk0%2F4EnQ33PPB2o6Xix8Z6C%2FrvF9SyS0oz1%2B15mdRlnnfA1Ybn
返回结果
主体参数:JSON对象
参数名 | 数据类型 | 描述 |
error_code | integer | 错误号 |
示例:
{
"error_code":0,
"message":"success"
}
5.2Web大厅登录
玩家需要通过运营商网站登录,并通过GS Web大厅启动G7S游戏。
请求参数
API URL: {G7SSoftAPIDomain}/v1/Player/LoginGame
HTTP 方法 : POST
主体参数
参数名称 | 数据类型 | 必需项 | 描述 |
trace_id | string | ● | 请求的唯一标识符(如GUID,时间戳(毫秒级)) |
access_id | string | ● | 运营商的唯一标识符 |
access_token | string | ● | 签名 |
access_key | string | ● | 和运营商约定的密钥 |
username | string | ● | 玩家账号(唯一标识符) |
nickname | string | ● | 玩家的用户名 |
machine_id | string | ● | 机器码 32字符 |
transaction_ticket | string | ● | 交易编号 |
amount | decimal | ● | 携带金额 |
currency | string | ● | 玩家选择的币种 |
lang | string | ● | Web 大厅的显示语言(cn:中文 en:英文) |
例子:
参数:trace_id=926e6daa-8ceb-415b-bc17-715f155c5198&access_id=G7S_10109_02_01&access_key=a1b25cde5f3gh46dijkdl&username=test4001&nickname=test4001&machine_id=1368705481109.9287&transaction_ticket=bc47d168bcd9458b80eb9c4899ff6684&amount=100¤cy=USD&lang=cn
哈希校验之后:
trace_id=926e6daa-8ceb-415b-bc17-715f155c5198&access_id=G7S_10109_02_01&access_key=a1b25cde5f3gh46dijkdl&username=test4001&nickname=test4001&machine_id=1368705481109.9287&transaction_ticket=bc47d168bcd9458b80eb9c4899ff6684&amount=100¤cy=USD&lang=cn&access_token=4b26739c32728c99203104e71f3b6b76fd59428d3085b27e46151f4d09d00aed
URL:
https://api.g7s-bo.me/v1/Player/LoginGame?data=jLg3QGbvSB9u9qTCvfQx1RAYqQK%2BIdCJs5LyiiMzCLodfcATLLxwZaFivjAGztVn5usMLaMGyX99z%2Fkl8z16I1ALZo3yQy0rI6yfqJldo%2FJGQPBoCQZGzYGZSoIqQ2hnH6ESVGo0MEfDp49hnVUVmAXaFvZ1EVvHZIlGO7eApBcOzhp5GcJ12MLNvxki7Ja8TDtEn9sxUj5HwEMbnWBk0btINP74u3QMDwBSKFIPmbihcQq3wHvQ6GnKitI0rZq6kmYA%2B1yvbPOQLx99m5hWrR48EWaeLVy8vlI8nEsMnHqnTK3NTwBculYkcMiBdYohoxWicdZsJe6zBP%2ByCSgnR9K0S%2B6CunnM62siRS%2BOQko3O5zRv186apMUlB%2Fd9ZphsmNrRjk3NgsojRc8uF6ZlfJpZpd2WWY%2Bq%2F8HyHV9m9SXopXKIWV4w3tadQPy2%2Bd7
返回结果
主体参数:JSON对象
参数名 | 数据类型 | 描述 |
error_code | integer | 错误号 |
data | json | 玩家数据 |
channelId | integer | 渠道ID |
accessId | string | 运营商的唯一标识符 |
userName | string | 玩家账号 |
platformId | int | 平台ID |
balance_after | decimal | G7S平台余额 |
amount | decimal | 转入金额 |
game_url | string | G7SWeb大厅登录跳转链接 |
示例:
{
"error_code":0,
"message":"success",
"data":{
"channelId":10109,
"accessId":"G7S_10109_02_01",
"userName":"test4001",
"platformId":100,
"balance_after": 1000,
"amount": 1000,
"game_url":"http://G7S.web-lobby?AccessID=G7S_10109_02_01&username=test40 01&ChannelID=10109&PlatformID=100"
}
}
5.3踢出玩家
将玩家从G7S游戏中踢出,玩家仍然可以重新登录游戏。
请求参数
API URL: {G7SSoftAPIDomain}/v1/Player/KickOut
HTTP 方法 : POST
主体参数
参数名称 | 数据类型 | 必需项 | 描述 |
trace_id | string | ● | 请求的唯一标识符(如GUID,时间戳(毫秒级)) |
access_id | string | ● | 运营商的唯一标识符 |
access_token | string | ● | 签名 |
access_key | string | ● | 和运营商约定的密钥 |
username | string | ● | 玩家账号(唯一标识符) |
例子:
参数:
trace_id=dcea4ca3-d07d-462c-9efc-2562d4ec48a1&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123
哈希校验之后:
trace_id=dcea4ca3-d07d-462c-9efc-2562d4ec48a1&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&access_token=a9b1922926bc0e70c418b300e6e2f064925b06303f1cd2da596fedf815b2d6bf
URL:
https://api.g7s-bo.me/v1/Player/KickOut?data=KvUwBN6jKu3gBRUqwLTwu205JFvc0nF%2FbemPTvRGqESlthnSAjdsebZXm9Uk%2BmQJ1248PvfJVCaGiWzk2XXOD4UATqLTxEpzAl1OUB6%2Fk9Xr%2FLFmS0Dq0zc9NUnBdpl%2FZmSITizzaEw02DjASoIoSnInfUiccakP4zS1rbPXsjHXpqMBouO9YN2IES5rGkqB53mKlrAqvQUfqrrJ%2F2%2Be0sVoBOEHSNDwfhRbk3S91I89iVhoY8xUTXyrUjXkbHQq4mZVEJCBbwoHbJfpx1nrimsqyL4HWOWvtN6M73ZZH0I%3D
返回结果
主体参数:JSON对象
参数名 | 数据类型 | 描述 |
error_code | integer | 错误号 |
示例:
{
"error_code":1001,
"message":"fail"
}
5.4冻结玩家
冻结玩家帐户,被冻结的玩家将无法再访问G7S游戏。
请求参数
API URL: {G7SSoftAPIDomain}/v1/Player/Freeze
HTTP 方法 : POST
主体参数
参数名称 | 数据类型 | 必需项 | 描述 |
trace_id | string | ● | 请求的唯一标识符(如GUID,时间戳(毫秒级)) |
access_id | string | ● | 运营商的唯一标识符 |
access_token | string | ● | 签名 |
access_key | string | ● | 和运营商约定的密钥 |
username | string | ● | 玩家账号(唯一标识符) |
例子:
参数:
trace_id=dcea4ca3-d07d-462c-9efc-2562d4ec48a1&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123
哈希校验之后:
trace_id=dcea4ca3-d07d-462c-9efc-2562d4ec48a1&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&access_token=a9b1922926bc0e70c418b300e6e2f064925b06303f1cd2da596fedf815b2d6bf
URL:
https://api.g7s-bo.me/v1/Player/Freeze?data=KvUwBN6jKu3gBRUqwLTwu205JFvc0nF%2FbemPTvRGqESlthnSAjdsebZXm9Uk%2BmQJ1248PvfJVCaGiWzk2XXOD4UATqLTxEpzAl1OUB6%2Fk9Xr%2FLFmS0Dq0zc9NUnBdpl%2FZmSITizzaEw02DjASoIoSnInfUiccakP4zS1rbPXsjHXpqMBouO9YN2IES5rGkqB53mKlrAqvQUfqrrJ%2F2%2Be0sVoBOEHSNDwfhRbk3S91I89iVhoY8xUTXyrUjXkbHQq4mZVEJCBbwoHbJfpx1nrimsqyL4HWOWvtN6M73ZZH0I%3D
返回结果
主体参数:JSON对象
参数名 | 数据类型 | 描述 |
error_code | integer | 错误号 |
示例:
{
"error_code": 0,
"message":"success"
}
5.5恢复玩家
恢复被冻结的玩家帐户。
请求参数
API URL: {G7SSoftAPIDomain}/v1/Player/Recover
HTTP 方法 : POST
主体参数
参数名称 | 数据类型 | 必需项 | 描述 |
trace_id | string | ● | 请求的唯一标识符(如GUID,时间戳(毫秒级)) |
access_id | string | ● | 运营商的唯一标识符 |
access_token | string | ● | 签名 |
access_key | string | ● | 和运营商约定的密钥 |
username | string | ● | 玩家账号(唯一标识符) |
例子:
参数:
trace_id=dcea4ca3-d07d-462c-9efc-2562d4ec48a1&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123
哈希校验之后:
trace_id=dcea4ca3-d07d-462c-9efc-2562d4ec48a1&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&access_token=a9b1922926bc0e70c418b300e6e2f064925b06303f1cd2da596fedf815b2d6bf
URL:
https://api.g7s-bo.me/v1/Player/Recover?data=KvUwBN6jKu3gBRUqwLTwu205JFvc0nF%2FbemPTvRGqESlthnSAjdsebZXm9Uk%2BmQJ1248PvfJVCaGiWzk2XXOD4UATqLTxEpzAl1OUB6%2Fk9Xr%2FLFmS0Dq0zc9NUnBdpl%2FZmSITizzaEw02DjASoIoSnInfUiccakP4zS1rbPXsjHXpqMBouO9YN2IES5rGkqB53mKlrAqvQUfqrrJ%2F2%2Be0sVoBOEHSNDwfhRbk3S91I89iVhoY8xUTXyrUjXkbHQq4mZVEJCBbwoHbJfpx1nrimsqyL4HWOWvtN6M73ZZH0I%3D
返回结果
主体参数:JSON对象
参数名 | 数据类型 | 描述 |
error_code | integer | 错误号 |
示例:
{
"error_code": 0,
"message":"success"
}
5.6游戏列表
获取已经开放的游戏列表。
请求参数
API URL: {G7SSoftAPIDomain}/v1/Game/GetGamelist
HTTP 方法 : POST
主体参数
参数名称 | 数据类型 | 必需项 | 描述 |
trace_id | string | ● | 请求的唯一标识符(如GUID,时间戳(毫秒级)) |
access_id | string | ● | 运营商的唯一标识符 |
access_token | string | ● | 签名 |
access_key | string | ● | 和运营商约定的密钥 |
username | string | ● | 玩家账号(唯一标识符) |
lang | string | ● | 显示语言(cn:中文 en:英文) |
例子:
参数:trace_id=6076105a-a152-489a-9f05-bf9507097d4d&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&lang=cn
哈希校验之后:
trace_id=6076105a-a152-489a-9f05-bf9507097d4d&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&lang=cn&access_token=9f7876553cdf3566534f6742c11fe05ff36c98900356fff9a61b0e5c76005c61
URL:
https://api.g7s-bo.me/v1/Game/GetGamelist?data=uGXw65E9wOG9msXYBJ1CyCF4Mj6GWwMo6dPGuCas7rwA2OcrwOBEpSQiIz4dnUix1248PvfJVCaGiWzk2XXOD4UATqLTxEpzAl1OUB6%2Fk9Xr%2FLFmS0Dq0zc9NUnBdpl%2FZmSITizzaEw02DjASoIoSnInfUiccakP4zS1rbPXsjHqYhEmPDdwh1MJR34aGUWJURTI%2FFQYCd5Ny9JN%2FWH%2BA%2BnAglPQ122N1%2FxPoO7hSP41r6wiMFTcnCOk9FSx8wrRu2IVepwHvfCTAy%2BfUYBDXqv2jhpPe3yI0PDgISpM4n4%3D
返回结果
主体参数:JSON对象
参数名 | 数据类型 | 描述 |
error_code | integer | 错误号 |
game_id | integer | 游戏ID |
game_name | string | 游戏名称 |
status | Integer | 可用状态 |
示例:
{
"error_code":0,
"message":"success",
"data":[
{
"game_id":3002,
"game_name":"kingkong's rampage",
"status":1,
"bigIconUrl":"http://192.168.2.100:6002/BigIcon/3002.png",
"middleIconUrl":"http://192.168.2.100:6002/MiddleIcon/3002.png",
"smallIconUrl":"http://192.168.2.100:6002/SmallIcon/3002.png"},
{
"game_id":3003,
"game_name":"zombie awaken",
"status":1,
"bigIconUrl":"http://192.168.2.100:6002/BigIcon/3003.png",
"middleIconUrl":"http://192.168.2.100:6002/MiddleIcon/3003.png",
"smallIconUrl":"http://192.168.2.100:6002/SmallIcon/3003.png"},
]
}
5.7创建游戏
登录G7S游戏。
请求参数
API URL: {G7SSoftAPIDomain}/v1/Game/CreateGame
HTTP 方法 : POST
主体参数
参数名称 | 数据类型 | 必需项 | 描述 |
trace_id | string | ● | 请求的唯一标识符(如GUID,时间戳(毫秒级)) |
access_id | string | ● | 运营商的唯一标识符 |
access_token | string | ● | 签名 |
access_key | string | ● | 和运营商约定的密钥 |
username | string | ● | 玩家账号(唯一标识符) |
lang | string | ● | 显示语言(cn:中文 en:英文) |
game_id | integer | ● | 游戏ID |
例子:
参数:
trace_id=9fc06915-4cea-4791-a7d0-d3a723ac01c2&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&lang=cn&game_id=3002
哈希校验之后:
trace_id=9fc06915-4cea-4791-a7d0-d3a723ac01c2&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&lang=cn&game_id=3002&access_token=0d3d38c2bfd473b7e91b43ee8d202ed546d760684dd8c8303c3074e83684dfa7
URL:
https://api.g7s-bo.me/v1/Game/CreateGame?data=Q5nRBK%2F%2FqfiK0gtZGDiwUIXaUb%2FS0O64VyRAns5n4fC3GjqBFWlTvXykBqaesWd51248PvfJVCaGiWzk2XXOD4UATqLTxEpzAl1OUB6%2Fk9Xr%2FLFmS0Dq0zc9NUnBdpl%2FZmSITizzaEw02DjASoIoSnInfUiccakP4zS1rbPXsjF6mzorbMC7eA%2B5KzmWw62CQc2lSU2okPK6VYLneBVISp%2BtbAdqKCFJJLU3KmIVmQKUHLnP0vs790BCXogI%2BoCOfSWVG%2BlSz%2BWV3%2BH2QbQM3SLuZkyS6gVY2F812l%2BiAfC6g9IzupAZEZ5%2BdiLtEnuP
返回结果
主体参数:JSON对象
参数名 | 数据类型 | 描述 |
error_code | integer | 错误号 |
game_url | string | 游戏跳转URL |
示例:
{
error_code:0,
message:'success',
game_url:"http://192.168.2.100:6002/test_allGame/?10003?access_id=f5595ea286dad2f91816f0b9&userName=test123&userid=73885&userGUID=D3D25599-738C-4E6A-B19A-8BFE52A390BB&ServerAddr=192.168.2.100&serverPort=3003&lang=cn&gameid=3002&channelID=0"
}
5.8钱包转入
充值现金至特定玩家的现金钱包。
注解:
• transaction_ticket是每笔交易的唯一识别码。运营商需要为每笔传送请求发送新的识别码
• 对于重复请求,G7S不对玩家钱包余额进行任何操作,但返回转账成功的响应。
请求参数
API URL: {G7SSoftAPIDomain}/v1/Transfer/TransferIn
HTTP 方法 : POST
主体参数
参数名称 | 数据类型 | 必需项 | 描述 |
trace_id | string | ● | 请求的唯一标识符(如GUID,时间戳(毫秒级)) |
access_id | string | ● | 运营商的唯一标识符 |
access_token | string | ● | 签名 |
access_key | string | ● | 和运营商约定的密钥 |
username | string | ● | 玩家账号(唯一标识符) |
transaction_ticket | string | ● | 交易凭证,运营商平台生成并确保每 |
amount | decimal | ● | 转账金额(小数点后两位) |
currency | string | ● | 玩家选择的币种 |
例子:
参数:
trace_id=5aab853b-dcfb-463d-82c5-b1b45bb678c2&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&transaction_ticket=T20250111104037Utest123&amount=100¤cy=USD
哈希校验之后:
trace_id=5aab853b-dcfb-463d-82c5-b1b45bb678c2&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&transaction_ticket=T20250111104037Utest123&amount=100¤cy=USD&access_token=9e18366087eb6670f6c1cfe606454b4de2a3b2f010a2b765f421d3a1ac978c5d
URL:
https://api.g7s-bo.me/v1/Transfer/TransferIn?data=yfDTIJFyP%2Ba%2F5EZNRm%2B7htPLBpc4xwilkybwsDsIMDGYzeoI3Cu6RNKQ3BodUuIo1248PvfJVCaGiWzk2XXOD4UATqLTxEpzAl1OUB6%2Fk9Xr%2FLFmS0Dq0zc9NUnBdpl%2FZmSITizzaEw02DjASoIoSnInfUiccakP4zS1rbPXsjFmaSFV8FZQBhp4BCf3gTc1Uw%2FLXUL6Eb2Xh6nWeAFbcBcU3F4tv9fFYGMg3Rj2K9mMAux%2FE1vmPwm6sD2QSVyXQUu61HpEVFTyClKDSWEjLwC5QeGtTjElbwq7xM8vJUMYrnAwngdlS8lXg97a3DhrID0xk%2BY8If3YOV4QK8v4dTDd%2B633Y8jxvB%2FXYkzAcBCkownVC4QdMB3Seu%2B5PodU
返回结果
主体参数:JSON对象
参数名 | 数据类型 | 描述 |
error_code | integer | 错误号 |
transaction_id | string | 交易编号 |
balance_before | decimal | 交易前的玩家余额 |
balance_after | decimal | 交易后的玩家余额 |
amount | decimal | 交易金额 |
示例:
{
"error_code":0,
"message":"success",
"data":
{
"transaction_id":"T20250111112429Utest123",
"balance_before":0,
"balance_after":99.99,
"amount":99.99
}
}
5.9钱包转出
将特定玩家的现金钱包的余额转出。
注解:
• transaction_ticket是每笔交易的唯一识别码。运营商需要为每笔传送请求发送新的识别码
• 对于重复请求,G7S不对玩家钱包余额进行任何操作,但返回转账成功的响应。
请求参数
API URL: {G7SSoftAPIDomain}/v1/Transfer/TransferOut
HTTP 方法 : POST
主体参数
参数名称 | 数据类型 | 必需项 | 描述 |
trace_id | string | ● | 请求的唯一标识符(如GUID,时间戳(毫秒级)) |
access_id | string | ● | 运营商的唯一标识符 |
access_token | string | ● | 签名 |
access_key | string | ● | 和运营商约定的密钥 |
username | string | ● | 玩家账号(唯一标识符) |
transaction_ticket | string | ● | 交易凭证,运营商平台生成并确保每 |
amount | decimal | ● | 转账金额 注:小数点后两位最低 0.01 |
currency | string | ● | 玩家选择的币种 |
例子:
参数:
trace_id=f4f1445e-1411-43fc-abc2-a69954850658&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&transaction_ticket=T20250111104947Utest123&amount=99.99¤cy=USD
哈希校验之后:
trace_id=f4f1445e-1411-43fc-abc2-a69954850658&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&transaction_ticket=T20250111104947Utest123&amount=99.99¤cy=USD&access_token=116335951ab5a2b3bb5a0e3ff02d12bde636048bff5d263e833c7042504de7b1
URL:
https://api.g7s-bo.me/v1/Transfer/TransferOut?data=LF3J7rHoTZTEo9HpqLI%2B58%2ByMfgpmbzlTODWgV1lJsIyMlvlHB2hCloT2YTmCdby1248PvfJVCaGiWzk2XXOD4UATqLTxEpzAl1OUB6%2Fk9Xr%2FLFmS0Dq0zc9NUnBdpl%2FZmSITizzaEw02DjASoIoSnInfUiccakP4zS1rbPXsjFmaSFV8FZQBhp4BCf3gTc1Uw%2FLXUL6Eb2Xh6nWeAFbcAtHMKRX2Hr%2F1GZkIy2akf%2BuyzAdB%2BNpaQ9nTvH6y6J5HPq%2BEAziOi6PFJ0jFFXDkjkRCfwMxvt6t4njKxvET2%2FM%2FcurXFilFOkBtHEfZAmKr%2F0aCQ1cHTTaFrOFPuCAbwGNWWTNX41ZSAhpPCXicIvAX2xsO%2FWWCNPAoTYnfMmW
返回结果
主体参数:JSON对象
参数名 | 数据类型 | 描述 |
error_code | integer | 错误号 |
transaction_id | string | 交易编号 |
balance_before | decimal | 交易前的玩家余额 |
balance_after | decimal | 交易后的玩家余额 |
amount | decimal | 交易金额 |
示例:
{
"error_code":0,
"message":"success",
"data":
{
"transaction_id":"T20250111112505Utest123",
"balance_before":94.19,
"balance_after":0,
"amount":94.19
}
}
5.10钱包转出所有余额
将特定玩家的现金钱包的所有余额转出。
注解:
• transaction_ticket是每笔交易的唯一识别码。运营商需要为每笔传送请求发送新的识别码
• 对于重复请求,G7S不对玩家钱包余额进行任何操作,但返回转账成功的响应。
请求参数
API URL: {G7SSoftAPIDomain}/v1/Transfer/TransferAllOut
HTTP 方法 : POST
主体参数
参数名称 | 数据类型 | 必需项 | 描述 |
trace_id | string | ● | 请求的唯一标识符(如GUID,时间戳(毫秒级)) |
access_id | string | ● | 运营商的唯一标识符 |
access_token | string | ● | 签名 |
access_key | string | ● | 和运营商约定的密钥 |
username | string | ● | 玩家账号(唯一标识符) |
transaction_ticket | string | ● | 交易凭证,运营商平台生成并确保每 |
currency | string | ● | 玩家选择的币种 |
例子:
参数:
trace_id=e62b56cf-f723-4147-84ae-035e881a2aab&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&transaction_ticket=T20250111111329Utest123¤cy=USD
哈希校验之后:
trace_id=e62b56cf-f723-4147-84ae-035e881a2aab&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&transaction_ticket=T20250111111329Utest123¤cy=USD&access_token=201010e950e41e1749d24549da29235ba82756f19850142d0f82e50cf22f7b5b
URL:
https://api.g7s-bo.me/v1/Transfer/TransferAllOut?data=PH6opbqltUh1fAirc%2B6q%2FBiAWNthU6Cv2hx2WiOhyAa2jIXcEc7ob0tRIY71bSRq1248PvfJVCaGiWzk2XXOD4UATqLTxEpzAl1OUB6%2Fk9Xr%2FLFmS0Dq0zc9NUnBdpl%2FZmSITizzaEw02DjASoIoSnInfUiccakP4zS1rbPXsjFmaSFV8FZQBhp4BCf3gTc1Uw%2FLXUL6Eb2Xh6nWeAFbcOwFLIq21%2F1srl57mSDGtauE7nB8S1ALgJo3r8ViDxdouKds1fTyXVm5wjAYjoFCM9jhDvxDjdVIzfTvFBdvOZvZjnPTEyk9ZoealJtDDdIvkroK9v%2BHTE1yen93ye7NAgrVnkrTsGqFe%2FeZx5fYSKQ%3D
返回结果
主体参数:JSON对象
参数名 | 数据类型 | 描述 |
error_code | integer | 错误号 |
transaction_id | string | 交易编号 |
balance_before | decimal | 交易前的玩家余额 |
balance_after | decimal | 交易后的玩家余额 |
amount | decimal | 交易金额 |
示例:
{
"error_code":0,
"message":"success",
"data":
{
"transaction_id":"T20250111111329Utest123",
"balance_before":99.99,
"balance_after":0,
"amount":99.99
}
}
5.11钱包余额
获取特定玩家的现金钱包的余额。
请求参数
API URL: {G7SSoftAPIDomain}/v1/Transfer/BalanceQuery
HTTP 方法 : POST
主体参数
参数名称 | 数据类型 | 必需项 | 描述 |
trace_id | string | ● | 请求的唯一标识符(如GUID,时间戳(毫秒级)) |
access_id | string | ● | 运营商的唯一标识符 |
access_token | string | ● | 签名 |
access_key | string | ● | 和运营商约定的密钥 |
username | string | ● | 玩家账号(唯一标识符) |
例子:
参数:
trace_id=9b6349dd-cc93-4dc7-af99-10fe8fd25905&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123
哈希校验之后:
trace_id=9b6349dd-cc93-4dc7-af99-10fe8fd25905&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&access_token=1f49a16ce950ad10a65a61ef68fb81a55fcd592f909662949072a0d12b28d467
URL:
https://api.g7s-bo.me/v1/Transfer/BalanceQuery?data=oDLXZp5b9putE79ZR3PVmZ7Gtapp86PKAta%2FRDPWa7RIiGpN%2FZ%2FbcPWlinZYcpLG1248PvfJVCaGiWzk2XXOD4UATqLTxEpzAl1OUB6%2Fk9Xr%2FLFmS0Dq0zc9NUnBdpl%2FZmSITizzaEw02DjASoIoSnInfUiccakP4zS1rbPXsjHXpqMBouO9YN2IES5rGkqBwAsp0fAFDFjXEE2rBvOLJOtqQ7nlk%2Bvdy4sRyKbfvxUnCOJuoQVRNRGd7pT0FMaJcHZZuhs6G3kST0eliN%2FMQ2sqyL4HWOWvtN6M73ZZH0I%3D
返回结果
主体参数:JSON对象
参数名 | 数据类型 | 描述 |
error_code | integer | 错误号 |
balance | decimal | 余额 |
示例:
{
"error_code":0,
"message":"success",
"data":
{
"balance":99.99
}
}
5.12投注历史记录
获取特定玩家投注历史记录:
请求参数API URL: {G7SSoftAPIDomain}/v1/History/GetHistory
HTTP 方法 : POST
主体参数
参数名称 | 数据类型 | 必需项 | 描述 |
trace_id | string | ● | 请求的唯一标识符(如GUID,时间戳(毫秒级)) |
access_id | string | ● | 运营商的唯一标识符 |
access_token | string | ● | 签名 |
access_key | string | ● | 和运营商约定的密钥 |
username | string | ● | 玩家账号(唯一标识符) |
begin_timestamp | integer | ● | 开始时间(Unix时间戳-世界标准时间 (UTC)) |
end_timestamp | integer | ● | 结束时间(Unix 时间戳-世界标准时间 (UTC)) |
row_count | integer | ● | 每批的记录数 |
page_number | integer | ● | 页号 |
game_id | integer | ● | 游戏ID(注:0或者未指定表示所有游戏) |
time_zone | integer | ● | 时区 |
例子:
参数:
trace_id=7db816cd-cfd0-4485-8854-00f002bdbc37&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=2697144&begin_timestamp=1742745600&end_timestamp=1742788457&row_count=5&page_number=0&game_id=0&time_zone=8
哈希校验之后:
trace_id=9aec1529-5e92-499c-8bb0-cd4395ca0284&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&begin_timestamp=1736524800&end_timestamp=1736564029&row_count=20&page_number=0&game_id=0&time_zone=8&access_token=865ae40e1dc11951ad7c6c313dbce06712d0b78c7baf30747569a2973c1034c0
URL:
https://api.g7s-bo.me/v1/History/GetHistory?data=iDhuEjxATqNAXTLfpjt33oXoiz7omWRN5XZ3AUfzhmMxVZf%2BBg2N8yvY7NIbG%2FgQ1248PvfJVCaGiWzk2XXOD4UATqLTxEpzAl1OUB6%2Fk9Xr%2FLFmS0Dq0zc9NUnBdpl%2FZmSITizzaEw02DjASoIoSnUwK1m4KMG7Ai4%2BFcKec4uZlZvk5rYpKPF9rypq5bxa7G%2FtKNb1I29Esc88L5Df8OQWB%2BZxWkFNszUGt0fTTmh3tYLjiEZFApOsfy7jPxqtqIHGsBKg16%2FTrb5ruIEISg7afyEkjCej5hH5LP%2F2%2FPHYajZ1Pl8avY3EUkZT%2BhZ12RnnMjplZBuv5XyAP5beDwccU%2F2aTwPqpC%2BocLE9joqTQkDAqWbnS7PQZcHve%2Bbo2g9lfyDZy3PUJvNesdveI8msRZrW5D2JLIOf2hJI2rY%3D
返回结果
主体参数:JSON对象
参数名 | 数据类型 | 描述 |
error_code | integer | 错误号 |
game_id | integer | 游戏ID |
bet_timestamp | integer | 下注时间(Unix时间戳) |
bet_amount | decimal | 下注金额 |
win_amount | decimal | 赢取金额 |
bet_amountAll | decimal | 总下注金额 |
win_amountAll | decimal | 总赢取金额 |
示例:
{
"error_code": 0,
"message": "success",
"recordCount": 2,
"bet_amountAll": 6,
"win_amountAll": 0.4,
"data":[
{"game_id":9041,"bet_amount":3,"win_amount":0.2,"bet_timestamp":1736565891},
{"game_id":9041,"bet_amount":3,"win_amount":0,"bet_timestamp":1736565889} ]
}
5.13投注汇总
获取特定玩家投注汇总:
请求参数API URL: {G7SSoftAPIDomain}/v1/History/GetHistorySummary
HTTP 方法 : POST
主体参数
参数名称 | 数据类型 | 必需项 | 描述 |
trace_id | string | ● | 请求的唯一标识符(如GUID,时间戳(毫秒级)) |
access_id | string | ● | 运营商的唯一标识符 |
access_token | string | ● | 签名 |
access_key | string | ● | 和运营商约定的密钥 |
username | string | ● | 玩家账号(唯一标识符) |
begin_timestamp | integer | ● | 开始时间(Unix时间戳-世界标准时间 (UTC)) |
end_timestamp | integer | ● | 结束时间(Unix 时间戳-世界标准时间 (UTC)) |
game_id | integer | ● | 游戏ID(注:0或者未指定表示所有游戏) |
time_zone | integer | ● | 时区 |
例子:
参数:
trace_id=a945a0e9-0139-4edb-ab2e-a4b0a4d0686d&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=2697144&begin_timestamp=1744387200&end_timestamp=1744442618&game_id=0&time_zone=8
哈希校验之后:
trace_id=a945a0e9-0139-4edb-ab2e-a4b0a4d0686d&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=2697144&begin_timestamp=1744387200&end_timestamp=1744442618&game_id=0&time_zone=8&access_token=4005beae77aaf5bb64af0ba900c979230e15037bad2104c0bd755c5d65ebace8
URL:
https://api.g7s-bo.me/v1/History/GetHistorySummary?data=%2BrHZWLH0VCB2vPnndn%2BZtIwqGACyPSkoba%2Be6AcmOOPuVH7chLK9FEyPhtz4NbgS1248PvfJVCaGiWzk2XXOD4UATqLTxEpzAl1OUB6%2Fk9Xr%2FLFmS0Dq0zc9NUnBdpl%2FZmSITizzaEw02DjASoIoSnUwK1m4KMG7Ai4%2BFcKec4uZlZvk5rYpKPF9rypq5bxa33G6Fwt7NsIO%2FytBiPGnOdfSHx%2FKbtNcGeR5X791IUu1mQeJOp04Ptwz%2F8oK6kMaNVchtWxcuAaCUVcZH9XFpx9WL8v6raMRmyLJ6FHC%2FdMBOEqJpLGFdM0ugbFQnHQNJw7JkBCt9atG4KInsi%2BWr%2FdzejbWRt90Ms3QcWmlAHxf4PwOWbzF3nJ77H0PBkC0
返回结果
主体参数:JSON对象
参数名 | 数据类型 | 描述 |
error_code | integer | 错误号 |
game_id | integer | 游戏ID |
bet_amount | decimal | 下注金额 |
win_amount | decimal | 赢取金额 |
示例:
{
"error_code":0,
"message":"success",
"data":{"bet_amount":6,"win_amount":-5.8,"game_id":0}
}
5.14钱包转入转出记录
获取特定玩家钱包的转入转出记录:
请求参数API URL: {G7SSoftAPIDomain}/v1/Transfer/TransferHistory
HTTP 方法 : POST
主体参数
参数名称 | 数据类型 | 必需项 | 描述 |
trace_id | string | ● | 请求的唯一标识符(如GUID,时间戳(毫秒级)) |
access_id | string | ● | 运营商的唯一标识符 |
access_token | string | ● | 签名 |
access_key | string | ● | 和运营商约定的密钥 |
username | string | ● | 玩家账号(唯一标识符) |
begin_timestamp | integer | ● | 开始时间(Unix时间戳-世界标准时间 (UTC)) |
end_timestamp | integer | ● | 结束时间(Unix 时间戳-世界标准时间 (UTC)) |
row_count | integer | ● | 每批的记录数 |
page_number | integer | ● | 页号 |
operationType | integer | ● | 转账类型(0:全部,1:转入,2:转出) |
time_zone | integer | ● | 时区 |
例子:
参数:
trace_id=9c91620f-d111-465d-a0b2-d07a5fa7ddd2&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&begin_timestamp=1736524800&end_timestamp=1736564201&row_count=20&page_number=0&operationType=0&time_zone=8
哈希校验之后:
data: trace_id=9c91620f-d111-465d-a0b2-d07a5fa7ddd2&access_id=f5595ea286dad2f91816f0b9&access_key=a1b25cde5f3gh46dijkdl&username=test123&begin_timestamp=1736524800&end_timestamp=1736564201&row_count=20&page_number=0&operationType=0&time_zone=8&access_token=d36834dbae87406f1513a44cb44179fcf3cba9969fc296fc7f2e29957b86df4d
URL:
https://api.g7s-bo.me/v1/Transfer/TransferHistory?data=%2BrHZWLH0VCB2vPnndn%2BZtIwqGACyPSkoba%2Be6AcmOOPuVH7chLK9FEyPhtz4NbgS1248PvfJVCaGiWzk2XXOD4UATqLTxEpzAl1OUB6%2Fk9Xr%2FLFmS0Dq0zc9NUnBdpl%2FZmSITizzaEw02DjASoIoSnUwK1m4KMG7Ai4%2BFcKec4uZlZvk5rYpKPF9rypq5bxa33G6Fwt7NsIO%2FytBiPGnOdfSHx%2FKbtNcGeR5X791IUu1mQeJOp04Ptwz%2F8oK6kMaNVchtWxcuAaCUVcZH9XFpx9WL8v6raMRmyLJ6FHC%2FdMBOEqJpLGFdM0ugbFQnHQNJw7JkBCt9atG4KInsi%2BWr%2FdzejbWRt90Ms3QcWmlAHxf4PwOWbzF3nJ77H0PBkC0
返回结果
主体参数:JSON对象
参数名 | 数据类型 | 描述 |
error_code | integer | 错误号 |
recordCount | integer | 记录数目 |
Score | decimal | 转账金额 |
OperationType | integer | 转账类型(1:转入,2:转出) |
InsertTimestamp | integer | 转账时间(Unix时间戳-世界标准时间 (UTC)) |
示例:
{
"error_code":0,
"message":"success",
"recordCount":2,
"data":[
{"Score":99.99,"OperationType":1,"InsertTimestamp":1736565516},
{"Score":99.99,"OperationType":2,"InsertTimestamp":1736565209}
]
}
6.错误处理
操作提示error_code为1003,请检查运营商标识符access_id填写是否正确。
操作提示error_code为1008,请检查API接口参数是否完整。
操作提示error_code为1009,请检查密钥是否正确,哈希校验生成的token是否正确。
钱包转出操作提示error_code为1015,message内容为“You are in the game, please end the game first”。可以调用踢出玩家(KickOut) API,将玩家从G7S游戏中退出就可以再次进行钱包转出操作。
示例
{
"error_code":1015,
"message":"You are in the game, please end the game first"
}
7.安全建议
· 数据加密:建议运营商使用HTTPS加密数据传输,确保数据安全。
· 防重放攻击:建议使用时间戳或唯一标识符,防止重放攻击。
8.限制
8.1,IP限制
中国大陆地区的玩家将无法访问G7S游戏
8.2,货币限制
以下为不被 G7S 所支持的货币:
• HKD
• MOP
• MYR
• SGD
• TWD
• VES
• MBTC,UBTC,USDT,TUSD & USDC 除外的所有加密货
9.附录
9.1,错误代码
错误号 | 错误描述 |
0 | 操作成功 |
1000 | 请求无效 |
1001 | 操作失败 |
1002 | 内部错误 |
1003 | 无效的运营商 |
1004 | 玩家账号已存在 |
1005 | 玩家正在进行另一项操作,请稍后再试 |
1006 | 玩家账号不存在 |
1007 | 玩家已锁定 |
1008 | 参数不全 |
1009 | 签名无效 |
1010 | 钱包转账金额低于最低值 |
1011 | 帐号关闭 |
1012 | 重复操作 |
1013 | 钱包余额不足,转出失败 |
1014 | 游戏维护中,请稍等再试 |
1015 | 玩家正在游戏中,请先退出游戏 |
1016 | 无效的渠道号 |
1017 | 运营商信息错误 |
1018 | 运营商余额错误或不足 |
9.2,货币代码
货币代码 | 描述 |
$ | 美金 |
¥ | 人民币 |
|
|
9.3,平台
代码 | 类型 | 平台 |
1 | 网页端 | Windows |
2 | Macos | |
3 | Android | |
4 | ios | |
5 | 其他 | |
6 |
|
|
9.4,语言
代码 | 描述 |
en | 英语 |
tc | 繁体中文 |
pt | 葡萄牙语 |
vn | 越南语 |
idn | 印度尼西亚语 |
esp | 西班牙语 |