接口文档

冰柠乐接口文档


CPS上报接口文档

<p>[TOC]</p> <h1>文档介绍</h1> <p>数据上报CPS接口。接入前先在CPS后台添加对应的游戏appid,提供生成加密密钥 secret_key。 接口主域名为 <code>https://cps.moyangmoyang.com</code> 全部采用POST请求,请求必须有加密签名,支持JSON和表单格式</p> <h1>签名加密</h1> <pre><code>1)参数名进行升序排序后 2)sha1(源字符串+&amp;#039;&amp;amp;secret_key=&amp;#039;+secret_key)生成签名sign 3) 生成的签名小写,无需转换 提供加密代码实例: PHP代码: function check_sign(data, secret_key) { let keys = Object.keys(data); keys.sort(); let tmp = []; for (let i = 0; i &amp;lt; keys.length; i++) { tmp.push(keys[i] + &amp;#039;=&amp;#039; + data[keys[i]]); } console.log(tmp.join(&amp;#039;&amp;amp;&amp;#039;)); let str = tmp.join(&amp;#039;&amp;amp;&amp;#039;) + &amp;#039;&amp;amp;secret_key=&amp;#039; + secret_key; let sign = md5(str); console.log(sign); }</code></pre> <h1>返回格式</h1> <p>        正常响应code为1:{&quot;code&quot;:1,&quot;msg&quot;:&quot;ok&quot;,&quot;time&quot;:1574923247,&quot;data&quot;:[]}         错误响应code为0:{&quot;code&quot;:0,&quot;msg&quot;:&quot;error&quot;,&quot;time&quot;:1574923247,&quot;data&quot;:[]}</p> <h1>1.上报注册用户信息(必须首先上报)</h1> <p>&lt;div style=&quot;background: #fda7b4;padding: 12px; border-radius: 8px; color: #000;&quot;&gt;⚡ <strong>注意</strong> 必须上报,必须首先上报这个 &lt;/div&gt;</p> <h2>1.1接口说明</h2> <p>&lt;div style=&quot;background: #9efca6;padding: 12px; border-radius: 8px; color: #000;&quot;&gt;✍上报第一次进入游戏的新用户,account_id和其他信息 <code>url:</code> <code>https://cps.moyangmoyang.com/api/web/userinfo</code> &lt;/div&gt; &lt;div style=&quot;background: #FFE4B5;padding: 12px; border-radius: 8px; color: #000;&quot;&gt;⚠️ <strong>注意</strong> 后续接口依赖于已存在的用户数据,所以此接口必须先完成上报才能接入后续上报 &lt;/div&gt;</p> <h2>1.2参数说明</h2> <p>|参数名|必选|类型|说明| |:----    |:---|:----- |-----   | |account_id |是  |string |玩家openid(唯一)  | |game_appid |是  |string | 游戏appid   | |channel_id     |是  |string | 主渠道(场景值),没有填默认值(空间玩吧填写 wanba,小游戏填写场景值)   | |sub_channel_id     |是  |string | 子渠道,没有填默认值test_sub_channel_id (空间玩吧填写 平台pf值【例如wanba_ts.9、weixin.95】)   | |shareid     |是  |string | 通过哪个用户的分享进来,分享用户的account_id,没有传0 | |sign     |是  |string | 生成签名   |</p> <h2>1.3示例代码</h2> <p>密钥:uIwdb8zNNxdY7KWe(示例)</p> <pre><code class="language-javascript">{&amp;quot;game_appid&amp;quot;:&amp;quot;1108007508&amp;quot;,&amp;quot;account_id&amp;quot;:&amp;quot;34D015FCDA78A87A07FA5CF3B5276523&amp;quot;,&amp;quot;channel_id&amp;quot;:&amp;quot;wanba&amp;quot;,&amp;quot;sub_channel_id&amp;quot;:&amp;quot;wanba_ts.121&amp;quot;,&amp;quot;shareid&amp;quot;:&amp;quot;0&amp;quot;,&amp;quot;sign&amp;quot;:&amp;quot;a40dd81454f1bc71f162238513b72248608151fd&amp;quot;}</code></pre> <h1>2.登录活跃信息上报</h1> <h2>2.1接口说明</h2> <p>&lt;div style=&quot;background: #9efca6;padding: 12px; border-radius: 8px; color: #000;&quot;&gt;✍用户每次打开登陆游戏时候上报 <code>url:</code> <code>https://cps.moyangmoyang.com/api/web/login</code> &lt;/div&gt; &lt;div style=&quot;background: #FFE4B5;padding: 12px; border-radius: 8px; color: #000;&quot;&gt;⚠️ <strong>注意</strong> 如果是当天注册的新用户,只需上报注册api/web/userinfo信息即可,无需再调用此接口 &lt;/div&gt;</p> <h2>2.2参数说明</h2> <p>|参数名|必选|类型|说明| |:----    |:---|:----- |-----   | |game_appid |是  |string |玩家openid(唯一)  | |channel_id |是  |string | 主渠道(场景值),没有填默认值(空间玩吧填写 wanba, 小程序填写场景值)   | |sub_channel_id     |是  |string | 子渠道,没有填默认值test_sub_channel_id (空间玩吧填写 平台pf值【例如wanba_ts.9、weixin.95】)   | |account_id     |是  |string | account_id | |sign     |是  |string | 生成签名   |</p> <h2>2.3示例代码</h2> <pre><code class="language-javascript">{&amp;quot;game_appid&amp;quot;:&amp;quot;1108007508&amp;quot;,&amp;quot;account_id&amp;quot;:&amp;quot;34D015FCDA78A87A07FA5CF3B5276523&amp;quot;,&amp;quot;channel_id&amp;quot;:&amp;quot;wanba&amp;quot;,&amp;quot;sub_channel_id&amp;quot;:&amp;quot;wanba_ts.121&amp;quot;,&amp;quot;shareid&amp;quot;:&amp;quot;0&amp;quot;,&amp;quot;sign&amp;quot;:&amp;quot;a40dd81454f1bc71f162238513b72248608151fd&amp;quot;}</code></pre> <h1>3.创建角色信息上报</h1> <h2>3.1接口说明</h2> <p>&lt;div style=&quot;background: #9efca6;padding: 12px; border-radius: 8px; color: #000;&quot;&gt;✍用户创建角色时上报,只需上报游戏内第一次创角 <code>url:</code> <code>https://cps.moyangmoyang.com/api/web/create_role</code> &lt;/div&gt;</p> <h2>3.2参数说明</h2> <p>|参数名|必选|类型|说明| |:----    |:---|:----- |-----   | |role_id |是  |string |角色ID (若无角色唯一id,则传account_id)  | |nickname |是  |string | 角色名称  | |server_id     |是  |int | 区服ID   | |server_name     |是  |string | 区服名称 | |game_appid     |是  |string | 游戏appid | |account_id     |是  |string | account_id | |sign     |是  |string | 生成签名   |</p> <h2>3.3示例代码</h2> <pre><code class="language-javascript">{&amp;quot;role_id&amp;quot;:&amp;quot;111&amp;quot;,&amp;quot;account_id&amp;quot;:&amp;quot;34D015FCDA78A87A07FA5CF3B5276533&amp;quot;,&amp;quot;game_appid&amp;quot;:&amp;quot;1108007508&amp;quot;,&amp;quot;server_id&amp;quot;:&amp;quot;10&amp;quot;,&amp;quot;server_name&amp;quot;:&amp;quot;游戏一服&amp;quot;,&amp;quot;nickname&amp;quot;:&amp;quot;昵称&amp;quot;,&amp;quot;sign&amp;quot;:&amp;quot;a8e3dd1dce43a05bc0ba673a164fe277017e5951&amp;quot;}</code></pre> <h1>4.在线时长上报</h1> <h2>4.1接口说明</h2> <p>&lt;div style=&quot;background: #9efca6;padding: 12px; border-radius: 8px; color: #000;&quot;&gt;✍统计在线时长(用户打开到退出的停留时长) <code>url:</code> <code>https://cps.moyangmoyang.com/api/web/timing</code> &lt;/div&gt;</p> <h2>4.2参数说明</h2> <p>|参数名|必选|类型|说明| |:----    |:---|:----- |-----   | |timing |是  |int |在线时长(秒)可以分片上传,可以退出后一次性传,同用户后台会自动累加  | |game_appid |是  |string | 游戏appid  | |account_id     |是  |string | account_id   | |sign     |是  |string | 生成签名   |</p> <h2>4.3示例代码</h2> <pre><code class="language-javascript">{&amp;quot;game_appid&amp;quot;:&amp;quot;1108007508&amp;quot;,&amp;quot;account_id&amp;quot;:&amp;quot;34D015FCDA78A87A07FA5CF3B5276533&amp;quot;,&amp;quot;timing&amp;quot;:100,&amp;quot;sign&amp;quot;:&amp;quot;e05c4a1847b6ee053e4cb9714122e6936e5ab826&amp;quot;}</code></pre> <h1>5.分享成功上报</h1> <h2>5.1接口说明</h2> <p>&lt;div style=&quot;background: #9efca6;padding: 12px; border-radius: 8px; color: #000;&quot;&gt;✍统计分享次数 <code>url:</code> <code>https://cps.moyangmoyang.com/api/web/share</code> &lt;/div&gt;</p> <h2>5.2参数说明</h2> <p>|参数名|必选|类型|说明| |:----    |:---|:----- |-----   | |game_appid |是  |string | 游戏appid  | |account_id     |是  |string | account_id   | |sign     |是  |string | 生成签名   |</p> <h2>5.3示例代码</h2> <pre><code class="language-javascript">{&amp;quot;game_appid&amp;quot;:&amp;quot;1108007508&amp;quot;,&amp;quot;account_id&amp;quot;:&amp;quot;34D015FCDA78A87A07FA5CF3B5276533&amp;quot;,&amp;quot;sign&amp;quot;:&amp;quot;697da02d9fe47d3249bc96860bbd2cbf0bdab1f7&amp;quot;}</code></pre> <h1>6.支付成功订单上报</h1> <h2>6.1接口说明</h2> <p>&lt;div style=&quot;background: #9efca6;padding: 12px; border-radius: 8px; color: #000;&quot;&gt;✍支付成功的订单上报 <code>url:</code> <code>https://cps.moyangmoyang.com/api/web/order</code> &lt;/div&gt; &lt;div style=&quot;background: #FFE4B5;padding: 12px; border-radius: 8px; color: #000;&quot;&gt;⚠️ <strong>注意</strong> 必须是支付成功的才上报,未支付成功的不要上报,做好筛选 &lt;/div&gt;</p> <h2>6.2参数说明</h2> <p>|参数名|必选|类型|说明| |:----    |:---|:----- |-----   | |goods_count |是  |int | 商品数量  | |goods_name |是  |string | 商品名称 由接入方提供 如:元宝  | |goods_identifier |是  |string | 商品ID  | |pay_amount |是  |int | 支付金额(元) 由接入方提供 如:1.0元  | |order_sn |是  |string | 订单编号(游戏方生成的订单号)  | |game_appid |是  |string | 游戏appid  | |account_id     |是  |string | account_id   | |role_id |是  |string | 角色ID,没有就乱写一个  | |role_name |是  |string | 角色名称  | |server_id |是  |string | 区服ID  | |server_name |是  |string | 区服名称  | |sign     |是  |string | 生成签名   |</p> <h2>6.3示例代码</h2> <pre><code class="language-javascript">{&amp;quot;game_appid&amp;quot;:&amp;quot;1108007508&amp;quot;,&amp;quot;account_id&amp;quot;:&amp;quot;34D015FCDA78A87A07FA5CF3B5276533&amp;quot;,&amp;quot;goods_count&amp;quot;:&amp;quot;1&amp;quot;,&amp;quot;goods_name&amp;quot;:&amp;quot;元宝&amp;quot;,&amp;quot;pay_amount&amp;quot;:&amp;quot;1&amp;quot;,&amp;quot;role_id&amp;quot;:&amp;quot;10&amp;quot;,&amp;quot;role_name&amp;quot;:&amp;quot;角色名&amp;quot;,&amp;quot;server_id&amp;quot;:&amp;quot;10&amp;quot;,&amp;quot;server_name&amp;quot;:&amp;quot;游戏一服&amp;quot;,&amp;quot;order_sn&amp;quot;:&amp;quot;20191018111114110&amp;quot;,&amp;quot;sign&amp;quot;:&amp;quot;c58afbace59e20ba93bcba92c97888600eb0c9c5&amp;quot;}</code></pre> <h1>7.关卡等级上报</h1> <h2>7.1接口说明</h2> <p>&lt;div style=&quot;background: #9efca6;padding: 12px; border-radius: 8px; color: #000;&quot;&gt;✍关卡等级或者分数记录上报 <code>url:</code> <code>https://cps.moyangmoyang.com/api/web/game_level</code> &lt;/div&gt;</p> <h2>7.2参数说明</h2> <p>|参数名|必选|类型|说明| |:----    |:---|:----- |-----   | |game_appid |是  |string | 游戏appid  | |account_id     |是  |string | account_id   | |level |是  |int | 等级或者积分  | |sign     |是  |string | 生成签名   |</p> <h2>7.3示例代码</h2> <pre><code class="language-javascript">{&amp;quot;game_appid&amp;quot;:&amp;quot;1108007508&amp;quot;,&amp;quot;account_id&amp;quot;:&amp;quot;34D015FCDA78A87A07FA5CF3B5276533&amp;quot;,”level”:1,&amp;quot;sign&amp;quot;:&amp;quot;697da02d9fe47d3249bc96860bbd2cbf0bdab1f7&amp;quot;}</code></pre> <h1>8.订阅记录上报(没接订阅接口不用接)</h1> <h2>8.1接口说明</h2> <p>&lt;div style=&quot;background: #9efca6;padding: 12px; border-radius: 8px; color: #000;&quot;&gt;✍订阅用户信息接口上报 <code>url:</code> <code>https://cps.moyangmoyang.com/api/web/subscribe</code> &lt;/div&gt;</p> <h2>8.2参数说明</h2> <p>|参数名|必选|类型|说明| |:----    |:---|:----- |-----   | |game_appid |是  |string | 游戏appid  | |account_id     |是  |string | account_id   | |sign     |是  |string | 生成签名   |</p> <h2>8.3示例代码</h2> <pre><code class="language-javascript">{&amp;quot;game_appid&amp;quot;:&amp;quot;1108007508&amp;quot;,&amp;quot;account_id&amp;quot;:&amp;quot;34D015FCDA78A87A07FA5CF3B5276533&amp;quot;,&amp;quot;sign&amp;quot;:&amp;quot;697da02d9fe47d3249bc96860bbd2cbf0bdab1f7&amp;quot;}</code></pre> <h1>9.视频广告点击</h1> <h2>9.1接口说明</h2> <p>&lt;div style=&quot;background: #9efca6;padding: 12px; border-radius: 8px; color: #000;&quot;&gt;✍广告show出来的时候上报 <code>url:</code> <code>https://cps.moyangmoyang.com/api/web/video_click</code> &lt;/div&gt;</p> <h2>9.2参数说明</h2> <p>|参数名|必选|类型|说明| |:----    |:---|:----- |-----   | |game_appid |是  |string | 游戏appid  | |account_id     |是  |string | account_id   | |sign     |是  |string | 生成签名   |</p> <h2>9.3示例代码</h2> <pre><code class="language-javascript">{&amp;quot;game_appid&amp;quot;:&amp;quot;1108007508&amp;quot;,&amp;quot;account_id&amp;quot;:&amp;quot;34D015FCDA78A87A07FA5CF3B5276533&amp;quot;,&amp;quot;sign&amp;quot;:&amp;quot;697da02d9fe47d3249bc96860bbd2cbf0bdab1f7&amp;quot;}</code></pre> <h1>10.视频广告关闭</h1> <h2>10.1接口说明</h2> <p>&lt;div style=&quot;background: #9efca6;padding: 12px; border-radius: 8px; color: #000;&quot;&gt;✍广告close的时候上报 <code>url:</code> <code>https://cps.moyangmoyang.com/api/web/watch</code> &lt;/div&gt;</p> <h2>10.2参数说明</h2> <p>|参数名|必选|类型|说明| |:----    |:---|:----- |-----   | |game_appid |是  |string | 游戏appid  | |account_id     |是  |string | account_id   | |sign     |是  |string | 生成签名   |</p> <h2>10.3示例代码</h2> <pre><code class="language-javascript">{&amp;quot;game_appid&amp;quot;:&amp;quot;1108007508&amp;quot;,&amp;quot;account_id&amp;quot;:&amp;quot;34D015FCDA78A87A07FA5CF3B5276533&amp;quot;,&amp;quot;sign&amp;quot;:&amp;quot;697da02d9fe47d3249bc96860bbd2cbf0bdab1f7&amp;quot;}</code></pre> <h1>11.打点上报</h1> <h2>11.1接口说明</h2> <p>&lt;div style=&quot;background: #9efca6;padding: 12px; border-radius: 8px; color: #000;&quot;&gt;✍游戏埋点 一、埋点流程: 大厅玩家点击游戏icon拉起下载--服务器下载资源包--下载完成进行安装--游戏窗口启动--进入选服界面--玩家创角--创角成功--进入游戏主界面。 二、步骤解释: 1、启动器下载(即玩家在大厅点击下载开始就算) 2、下载资源包(有下载器则视为下载win包,若直接是win包则从更新资源算起) 3、拉起游戏窗体(下载器游戏即为游戏在电脑界面窗口模式展开,win包则按游戏更新完资源开启窗口为节点计算) 4、选服、创角(顾名思义,进入此步骤则打点计算流失率)</p> <p><code>url:</code> <code>https://cps.moyangmoyang.com/api/web/dot_record</code> &lt;/div&gt;</p> <h2>11.2参数说明</h2> <p>|参数名|必选|类型|说明| |:----    |:---|:----- |-----   | |game_appid |是  |string | 游戏appid  | |key     |是  |string | 打点上报关键字,见下方说明   | |sign     |是  |string | 生成签名   |</p> <h2>11.3key说明</h2> <p>|节点说明|对应传递的key值| |:----     |-----   | |启动器下载 | download  | |开始loading(下载资源包)     | start_loading   | |结束loading(下载完成)     |end_loading   | |拉起游戏窗体     |start_up   | |进入选服界面    |server_list   | |显示创角选角页面     |role_list   | |创角成功     |create_role   | |成功进入开始游戏     |play   | &lt;div style=&quot;background: #FFE4B5;padding: 12px; border-radius: 8px; color: #000;&quot;&gt;⚠️ <strong>注意</strong> 下方自定义key节点需要先接入完打点数据返回成功之后,联系运营添加白名单才能接入 key的节点可自定义, 比如:加载20%-&gt;key1,加载40%-&gt;key2,加载60%-&gt;key3,加载80%-&gt;key4,加载100%-&gt;key5 &lt;/div&gt; <strong>自定义key说明:</strong></p> <p>|节点说明|对应传递的key值| |:----     |-----   | |自定义key1 | key1  | |自定义key2 | key2  | |自定义key3 |key3   | |自定义key4 |key4   | |自定义key5  |key5   |</p> <h2>11.4示例</h2> <pre><code>下载节点的传送参数 {&amp;quot;game_appid&amp;quot;:&amp;quot;1108007508&amp;quot;,&amp;quot;key&amp;quot;:&amp;quot;download&amp;quot;,&amp;quot;sign&amp;quot;:&amp;quot;db6d4938e7a96b545d219d962b85bd564525ae81&amp;quot;}</code></pre>

页面列表

ITEM_HTML