一、简介
如果游戏涉及跨端时,此份文档需配合《服务端接口文档》一起使用
此文档描述了使用SDK的CP(内容提供商)用到的与WINGSDK后台交付的所有接口的详细定义。接口分两种:
1、WINGSDK后台实现,CP后台调用。
2、CP后台实现,WINGSDK后台调用。
名词说明:
名词 | 说明 |
---|---|
CP | 内容提供商(Content Provider)游戏、应用等 |
第三方平台登录 | 通过第三方社交平台的OAuth authentication登录第三方帐号,并绑定WINGSDK帐号 |
二、登录
1、第三方帐号登录
接口说明:
类别 | 参数 |
---|---|
接口提供方 | WINGSDK平台 |
接口调用方 | CP |
接口实现方式 | HTTP/POST |
接口描述 | 第三方帐号登录。请在服务端调用,WINGSDK平台可能会加上IP限制 |
生产环境 | https://api.wingsdk.com/cpapi/v2/init.do |
测试环境 | 暂无 |
支持Http Method | POST |
返回信息格式 | JSON |
输入参数说明:
参数名 | 类型 | 是否必须 | 参数说明 |
---|---|---|---|
appId | String | Y | Sdk平台分配的应用id |
platform | String | Y | 登录平台:FACEBOOK,APPSELF(应用内登录),VK(俄罗斯社交平台) |
accessToken | String(200) | N | 第三方平台accessToken,应用内登录,此字段即为CP验证用户信息字段 |
ghwToken | String | N | |
userId | Long | N | GHW 用户Id,ghwToken不为空;ghwToken必须跟userId匹配才能登录成功。 |
puserId | String | N | 第三方平台openId,(VK登录此参数必须) |
extInfo | String | N | 额外信息,不参与签名,用于回传给CP |
userIp | String | N | 客户端用户IP |
osign | String | Y | 验证用的加密串 Md5( appId+ secureKey + platform+ accessToken+ ghwToken+ userId) |
注意:
1、如果请求有token参数,则必须带上userId参数,并且未过期,平台会判断token与userId是否匹配,不匹配视为非法请求。
2、每次登录成功,平台会记录登录日志。
返回结果说明: JSON 格式
失败返回错误码,请参照三、返回状态码说明;
参数名 | 类型 | 是否必须 | 参数说明 |
---|---|---|---|
code | String | Y | 状态码,请参照三、返回状态码说明 |
msg | String | Y | 结果描述 |
userId | Long | N | 用户Id,(注册)登录成功的时候返回 |
token | String | N | 在线token,(注册)登录成功的时候返回,如果传入的token未过期,而且userId没变(非新设备,非新用户)直接返回原来的token,否则返回更新后的token |
puserId | String | N | 用户在第三方平台的Id,访客登录返回NULL;如果是应用内登录,即返回CP 用户ID |
platform | String | N | 平台标识 FACEBOOK, APPLE, GOOGLE,GUEST,APPSELF |
isFirstLogin | int | N | 是否是首次登录,0 否 1 是 |
2、获取用户的第三方绑定帐号列表
接口说明:
类别 | 参数 |
---|---|
接口提供方 | WINGSDK平台 |
接口调用方 | CP |
接口实现方式 | HTTP/POST |
接口描述 | 第三方帐号登录。请在服务端调用,WINGSDK平台可能会加上IP限制 |
生产环境 | https://api.wingsdk.com/cpapi/v2/bind_list.do |
测试环境 | 暂无 |
支持Http Method | POST |
返回信息格式 | JSON |
输入参数说明:
参数名 | 类型 | 是否必须 | 参数说明 |
---|---|---|---|
appId | String | Y | Sdk平台分配的应用id |
userId | Long | Y | 需要绑定平台帐号的用户Id(SDK) |
ghwToken | String(100) | Y | GHW 在线token,不能为空,token过期(code=4014)不能解绑 |
userIp | String | N | 客户端用户IP |
osign | String | Y | 验证用的加密串 Md5( appId+ secureKey + ghwToken + userId ) 参数为空用空字符串””代替参与签名 |
返回结果说明: JSON 格式
失败返回错误码,请参照三、返回状态码说明;
1 2 3 4 5 6 7 8 9 |
{ code:200,//查询结果,非200表示查询异常 size:3,//绑定帐号数量 data:[{ puserId:G:123453q45,//第三方平台openId,当平台为GUEST时,puserId即为deviceId platform: GOOGLE,//绑定平台标识 FACEBOOK、 APPLE、GOOGLE、GUEST },{},...] } |
3、解绑第三方平台账户接口
接口说明:
类别 | 参数 |
---|---|
接口提供方 | WINGSDK平台 |
接口调用方 | CP |
接口实现方式 | HTTP/POST |
接口描述 | 第三方帐号登录。请在服务端调用,WINGSDK平台可能会加上IP限制 |
生产环境 | https://api.wingsdk.com/cpapi/v2/disbind.do |
测试环境 | 暂无 |
支持Http Method | POST |
返回信息格式 | JSON |
输入参数说明:
参数名 | 类型 | 是否必须 | 参数说明 |
---|---|---|---|
appId | String | Y | Sdk平台分配的应用id |
userId | long | Y | 需要解绑平台帐号的用户Id(SDK) |
platform | String | Y | 需要解绑帐号的平台标识,FACEBOOK、 APPLE、GOOGLE、GUEST(访客) |
puserId | String | Y | 需要绑定平台帐号Id |
ghwToken | String | Y | GHW 在线token,不能为空,token过期(code=4014)不能解绑 |
userIp | String | N | 客户端用户IP |
osign | String | Y | 验证用的加密串 Md5( appId+ secureKey + ghwToken+ platform+ pUserId+ userId ) 参数为空用空字符串””代替参与签名 |
返回结果说明: JSON 格式
失败返回错误码,请参照三、返回状态码说明;
参数名 | 类型 | 是否必须 | 参数说明 |
---|---|---|---|
code | String | Y | 状态码,请参照三、返回状态码说明 |
msg | String | Y | 结果描述 |
4、绑定平台账户接口
接口说明:
类别 | 参数 |
---|---|
接口提供方 | WINGSDK平台 |
接口调用方 | CP |
接口实现方式 | HTTP/POST |
接口描述 | 第三方帐号登录。请在服务端调用,WINGSDK平台可能会加上IP限制 |
生产环境 | https://api.wingsdk.com/cpapi/v2/binding.do |
测试环境 | 暂无 |
支持Http Method | POST |
返回信息格式 | JSON |
输入参数说明:
参数名 | 类型 | 是否必须 | 参数说明 |
---|---|---|---|
appId | String | Y | Sdk平台分配的应用id |
userId | long | Y | 需要绑定平台帐号的用户Id(SDK) |
preUserId | String | Y | 已绑定的其它第三方平台的用户ID,用于验证,如果以前是访客登录,此参数与userId一致 |
prePlatform | String | Y | 已绑定的其它第三方平台标识,FACEBOOK,APPLE,GOOGLE,GUEST(访客) |
userIp | String | N | 客户端用户IP |
puserId | String | N | 要绑定的第三方平台openId, 绑定VK帐号必须有此字段 |
platform | String | Y | 需要绑定帐号的平台标识,FACEBOOK、 APPLE、GOOGLE、GUEST(访客), VK |
accessToken | String(100) | N | 第三方验证token,Game Center登录将验证信息转成JSON传入此参数 |
extInfo | String | N | 额外信息,不参与签名,用于回传给CP |
osign | String | Y | 验证用的加密串 Md5( appId+ secureKey + accessToken+ platform+ prePlatform+ preUserId+ userId ) 参数为空用空字符串””代替参与签名 |
返回结果说明: JSON 格式
失败返回错误码,请参照三、返回状态码说明;
参数名 | 类型 | 是否必须 | 参数说明 |
---|---|---|---|
code | String | Y | 状态码,请参照三、返回状态码说明 |
mssg | String | Y | 结果描述 |
puserId | String | N | 绑定的第三方平台帐号 |
三、返回状态码说明
通用返回状态码说明(参考了Http状态码设计):
状态码code | 说明 |
---|---|
200 | 成功 |
400 | 错误请求:请求参数有错,头信息有误等,导致请求无法被正确理解 |
401 | 请求未认证:访问受限资源是缺少认证信息,或者认证未通过 |
403 | 禁止访问:由于应用上下文原因或请求端上下文的原因被禁止访问资源,例如IP限制等; |
404 | 找不到被访问资源:接口不存在、页面不存在或对应的业务实体找不到 |
500 | 服务器内部故障 |
501 | 所请求接口或页面未实现 |
平台自定义状态码说明:
状态码code | 说明 |
---|---|
4010 | 无效appId: appId不存在或未开启 |
4011 | 无效osign:osign校验失败 |
4012 | 请求已过期:ots校验失败 |
4013 | 第三方平台验证失败 |
4014 | 客户端token过期 |
4015 | 用户已经绑定此平台帐号 |
4016 | prePlatform验证失败 |
4017 | 未找到用户 |
4018 | 此平台的已经有其它帐号绑定了该用户 |
4019 | 无效orderId |
4020 | 订单验证失败 |
4021 | FB邀请奖励事件未找到奖励政策 |
4022 | 闪退发送报告重复 |
4023 | 未找到渠道信息 |
4024 | 不可以进行解绑操作 |
4025 | 汇率转换失败 |
4026 | 支付渠道已关闭 |