AI 智能

大约 5 分钟

AI 智能

环信即时通讯云提供 REST API 获取 app 下的机器人列表。如果需要该功能相关的其他 REST API,请联系环信商务。

前提条件

要调用环信即时通讯 RESTful API,请确保满足以下要求:

认证方式

环信即时通讯 REST API 要求 Bearer HTTP 认证。每次发送 HTTP 请求时,都必须在请求头部填入如下 Authorization 字段:

Authorization: Bearer YourAppToken

为提高项目的安全性,环信使用 Token(动态密钥)对即将登录即时通讯系统的用户进行鉴权。本文介绍的即时通讯所有 REST API 均需使用 App Token 的鉴权方式,详见 使用 App Token 鉴权

获取 app 下的机器人列表

你可以调用该 API 获取你的 app 下的机器人列表。

调用频率上限:100 次/秒/App Key

HTTP 请求

GET https://{host}/{org_name}/{app_name}/robot/rule?&page={page}&size={size}

路径参数

参数类型是否必需描述
hostString环信即时通讯 IM 分配的用于访问 RESTful API 的域名。详见 获取环信即时通讯 IM 的信息
org_nameString环信即时通讯 IM 为每个公司(组织)分配的唯一标识。详见 获取环信即时通讯 IM 的信息
app_nameString你在环信即时通讯云控制台创建应用时填入的应用名称。详见 获取环信即时通讯 IM 的信息

查询参数

字段类型是否必选备注
pageInt当前页码,默认值为 0
sizeInt每页返回的机器人数量,取值范围为 [1,20],默认值为 10

请求 header

参数类型是否必需描述
AuthorizationStringApp 管理员的鉴权 token,格式为 Bearer YourAppToken,其中 Bearer 为固定字符,后面为英文空格和获取到的 app token。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中的字段描述如下:

字段类型描述
statusString是否成功获取 app 下的机器人列表。OK 表示成功获取。
entitiesJSONArrayapp 下的机器人详情。
- idString机器人 ID。
- nameString机器人名称。
- appkeyString应用的唯一标识,由 OrgnameAppname 组成,生成后不允许修改。在环信即时通讯云控制台open in new window应用详情 页面查看。
- robotIdStringrobot ID。
- robotAppIdStringrobot ID 对应的 robot app ID。
- msgTypeString消息类型,目前固定值为 txt,即文本消息。
- targetTypeString会话类型,目前固定值为 chat,即单聊。
- targetIdList机器人对应的 IM 的用户 ID。目前只有一个用户 ID。
- providerTypeStringAI 大模型厂商,目前固定值为 MINIMAX
- providerIdString机器人对应的厂商 ID。
- timeoutInt超时时间,目前未启用。
- statusString机器人的状态,ACTIVE 为启用状态,默认是启用。
- createDateTimeDATETIME开通使用 MiniMax AI 聊天服务的时间。
- updateDateTimeDATETIME更新 MiniMax AI 聊天服务开通状态的时间。
- providerTextApiString厂商支持的 AI 接口,默认使用 chatcompletion_pro,当前不支持可选。
- providerModelString厂商支持的 AI 模型类别。
- providerAttributeJSONObject机器人的一些属性。
- historyNumInt传递给机器人的历史消息数,固定为 10。开发者忽略该字段。
- avatarString机器人头像图片链接。
- restMsgLimitInt发送的 REST 消息大小值。该字段为内部使用,开发者可忽略。
- providerPayloadJSONObject调用厂商接口时的一些参数。
- top_pInt控制生成环节采样范围,参数值越小,生成结果越稳定。关于该参数的更多详情,请参阅 MiniMax 官方文档open in new window
- tokens_to_generateInt机器人回复的最大生成 token 数。关于该参数的更多详情,请参阅 MiniMax 官方文档open in new window
- temperatureInt控制生成环境采样随机性,参数值越小,生成结果越稳定。关于该参数的更多详情,请参阅 MiniMax 官方文档open in new window
- providerContentString具体机器人的设定,长度影响接口性能。
- textTypeString固定值,该字段为内部使用,开发者可忽略。
sizeInt当前页面返回的机器人数量。
pageInt当前页码。
elementsInt当前页面返回的机器人数量。
totalPagesInt总页数。
totalElementsIntApp 下的机器人总数。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考 错误码 了解可能的原因。

示例

请求示例

# 将 <YourAppToken> 替换为你在服务端生成的 App Token
curl --location 'http://XXXX/XXXX/XXXX/robot/rule?page=0&size=10'  
-H 'Authorization: Bearer <YourAppToken>'

响应示例

{
    "status": "OK",
    "entities": [
        {
            "id": "1eUOZ3RFpJA2BFSsaB8n5EFrETh",
            "name": "Kyler_Robel",
            "appkey": "easemob-demo#test",
            "robotId": "f5f07c60ce95ca4f496870665d0e868d",
            "robotAppId": "1eRg1UCOhrvkMw1q47G7tToUduJ",
            "msgType": "TEXT",
            "targetType": "CHAT",
            "targetId": [
                "some_user_id371-916-6147"
            ],
            "providerType": "MINIMAX",
            "providerId": "1eUOZ28DChC1LUc5a5YSvSoPPnq",
            "timeout": 3000,
            "status": "ACTIVE",
            "createDateTime": "2024-05-29T09:30:56.427220Z",
            "updateDateTime": "2024-05-29T09:37:40.969794Z",
            "providerTextApi": "chatcompletion_pro",
            "providerModel": "abab6.5-chat",
            "providerAttribute": {
                "historyNum": 10,
                "avatar": "http://placeimg.com/640/480",
                "restMsgLimit": 1024
            },
            "providerPayload": {
                "top_p": 0.9,
                "tokens_to_generate": 2048,
                "temperature": 0.1
            },
            "providerContent": "putMessage我是助理222",
            "textType": "DEFAULT"
        },
        {
            "id": "1eUbgljnq7yhHqgQ7cjKw5mOUxC",
            "name": "Dessie81",
            "appkey": "easemob-demo#test",
            "robotId": "f5f07c60ce95ca4f496870665d0e868d",
            "robotAppId": "1eRg1UCOhrvkMw1q47G7tToUduJ",
            "msgType": "TEXT",
            "targetType": "CHAT",
            "targetId": [
                "some_user_id379-312-1146"
            ],
            "providerType": "MINIMAX",
            "providerId": "1eUbgjWOKkzbaRCysbLozPy4E4h",
            "timeout": 3000,
            "status": "ACTIVE",
            "createDateTime": "2024-05-29T11:18:51.454156Z",
            "updateDateTime": "2024-05-29T11:46:19.333387Z",
            "providerTextApi": "chatcompletion_pro",
            "providerModel": "abab6.5-chat",
            "providerAttribute": {
                "historyNum": 10,
                "avatar": "http://placeimg.com/640/480",
                "restMsgLimit": 1024
            },
            "providerPayload": {
                "top_p": 0.9,
                "tokens_to_generate": 2048,
                "temperature": 0.1
            },
            "providerContent": "putMessage我是助理222",
            "textType": "DEFAULT"
        }
    ],
    "size": 10,
    "page": 0,
    "elements": 2,
    "totalPages": 1,
    "totalElements": 2
}

错误码

HTTP 状态码错误类型错误提示可能原因处理建议
401unauthorizedUnable to authenticate (OAuth)token 不合法,可能过期或 token 错误。使用新的 token 访问。
500Internal Server ErrorInternal Server Error服务内部错误。检查请求参数是否合理。
400Bad RequestRequest param error请求参数错误。检查请求参数是否合理。

关于其他错误,你可以参考 响应状态码 了解可能的原因。