跳转至

应用内信息 API

应用内信息检索API是一个用于获取访问网络商店的用户的应用服务器、渠道和角色信息的API。此API从Hive服务器向开发者的应用服务器发送请求,开发者的服务器将响应返回给Hive服务器。

概述

在使用Hive社区和网络商店时,需要连接用户的应用服务器、频道和角色信息,以实现如下所示的网络商店购买用户界面。


整个过程,包括使用此 API,可以总结如下。

  1. 应用开发者:通过配置API端点准备服务器URL
  2. 应用开发者:在Hive控制台中设置要发送到Hive服务器的信息 游戏内信息
  3. Hive服务器:应用开发者向注册的服务器URL发送POST API请求,并接收数据作为响应
  4. Hive服务器:将接收到的应用服务器、频道和角色信息发送到前端
  5. 网店前端:在网店购买UI中显示下拉菜单

API 端点配置 (服务器 URL)

Hive控制台社区与网络商店 > 网络商店 > 网络商店设置 > 游戏内信息中注册API端点。


API 端点在接收到请求时必须在请求参数中接收用户信息(cs_code),并且应在响应中返回应用服务器、频道和角色信息。API 端点的配置如下所示,对应于 Hive 控制台(生产、沙盒、测试)。

控制台环境 API 端点
生产 https://{URL}/webstore-profile
沙盒 https://{URL}/webstore-profile
测试 https://{URL}/webstore-profile

API请求 (Hive 服务器 → 应用服务器) 配置

这是从Hive服务器发送到应用服务器的POST请求信息。您将收到应用服务器列表、服务器中包含的频道以及响应中的角色列表。

API 信息 描述
方法 POST
响应格式 JSON
内容类型 application/json


以下是请求体信息。

名称 类型 必需 (必需: O, 可选: X) 描述
cs_code 字符串 O 用户唯一标识符


这是请求体的一个示例。

{
  cs_code: "c_1234123"
}

API 响应 (应用服务器 → Hive 服务器) 配置

这是在响应成功时必须从应用服务器传递到Hive服务器的响应值信息。对于每个产品基于角色等级的购买限制功能,即使在Hive控制台的应用内信息中未选择角色,也必须传递角色等级信息。如果未选择角色且数组中有多个角色(data.channels.characters),则使用数组第一个元素对应角色的等级。

名称 类型 必需 (必需: O, 可选: X) 描述
result_code 整数 O 结果代码
result_message 字符串 O 结果消息
cs_code 字符串 O 用户的唯一标识符
data 数组 O 服务器列表 (如果没有用户信息,响应值: "[ ]")
data.server_id 字符串 O 服务器的唯一标识符
data.server_name 字符串 O 服务器名称
data.channels 数组 O 包含在服务器中的频道列表
data.channels.channel_id 字符串 O 频道的唯一标识符 (如果频道未使用,响应值: "0")
data.channels.channel_name 字符串 O 频道名称 (如果频道未使用,响应值: "-")
data.channels.characters 数组 O 包含在频道中的角色列表
data.channels.characters.character_id 字符串 O 角色的唯一标识符 (如果角色未使用,响应值: "-")
data.channels.characters.character_name 字符串 O 角色名称 (如果角色未使用,响应值: "-")
data.channels.characters.character_level 字符串 O 角色等级 (如果角色等级不可用,响应值: "0")


以下是响应成功时响应值的示例。

// When you activated the server, the channel, and the character in the console
{
  "result_code": 200,
  "result_message": "success",
  "cs_code": "c_123412341234",
  "data": [
    {
      "server_id": "1",
      "server_name": "Server 1",
      "channels": [{
        "channel_id": "1",
        "channel_name": "Channel 1",
        "characters": [{
            "character_id": "A",
            "character_name": "Character A",
            "character_level": "99"
          },
          {
            "character_id": "B",
            "character_name": "Character B",
            "character_level": "10"
          }
        ]
      }]
    }
  ]
}


// When you activated the server and the character in the console
{
  "result_code": 200,
  "result_message": "success",
  "cs_code": "c_123412341234",
  "data": [
    {
      "server_id": "2",
      "server_name": "Server 2",
      "channels": [{
        "channel_id": "0",
        "channel_name": "-",
        "characters": [{
            "character_id": "C",
            "character_name": "Character C",
            "character_level": "11"
          },
          {
            "character_id": "D",
            "character_name": "Character E",
            "character_level": "12"
          }
        ]
      }]
    }
  ]
}


 // When you activated the server and the channel in the console
{
  "result_code": 200,
  "result_message": "success",
  "cs_code": "c_123412341234",
  "data": [
    {
      "server_id": "3",
      "server_name": "Server 3",
      "channels": [{
        "channel_id": "2",
        "channel_name": "Channel 2",
        "characters": [{
          "character_id": "-",
          "character_name": "-",
          "character_level": "99"
        }]
      }]
    }
  ]
}


// When you activated the server in the console
{
  "result_code": 200,
  "result_message": "success",
  "cs_code": "c_123412341234",
  "data": [
    {
      "server_id": "4",
      "server_name": "Server 4",
      "channels": [{
        "channel_id": "0",
        "channel_name": "-",
        "characters": [{
          "character_id": "-",
          "character_name": "-",
          "character_level": "99"
        }]
      }]
    }
  ]
}


// When you activated the server, the channel, and the character in the console: multiple channels
{
    "result_code": 200,
    "result_message": "success",
    "cs_code": "c_123412341234",
    "data": [
        {
            "server_id": "1",
            "server_name": "Server 1",
            "channels": [
                {
                    "channel_id": "1",
                    "channel_name": "Channel 1",
                    "characters": [
                        {
                            "character_id": "A",
                            "character_name": "Character A",
                            "character_level": "99"
                        }, {
                            "character_id": "B",
                            "character_name": "Character B",
                            "character_level": "10"
                        }
                    ]
                }, {
                    "channel_id": "2",
                    "channel_name": "Channel 2",
                    "characters": [
                        {
                            "character_id": "A2",
                            "character_name": "Character A2",
                            "character_level": "99"
                        }, {
                            "character_id": "B2",
                            "character_name": "Character B2",
                            "character_level": "10"
                        }
                    ]
                }
            ]
        }
    ]
}


以下是响应代码 (result_code)。

代码 描述
200 成功
204 没有关于用户的信息
500 服务器错误