跳转至

Authentication

用户

POST 注册

POST /auth/register

account限制:6~16个数字字符

Body 请求参数

{
  "username": "username",
  "account": "account",
  "password": "password"
}

请求参数

名称 位置 类型 必选 说明
body body object none
» username body string 用户名
» account body string 账号
» password body string 密码

返回示例

200 Response

{
  "code": 200,
  "message": "message"
}

409 Response

{
  "code": 409,
  "message": "message"
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline
409 Conflict none Inline

返回数据结构

状态码 200

名称 类型 必选 约束 中文名 说明
» code integer true none none
» message string true none none

状态码 409

名称 类型 必选 约束 中文名 说明
» code integer true none none
» message string true none none

POST 登录

POST /auth/login

登录接口

Body 请求参数

{
  "account": "account",
  "password": "password"
}

请求参数

名称 位置 类型 必选 说明
body body object none
» account body string none
» password body string none

返回示例

200 Response

{
  "code": 200,
  "data": {
    "token": "token",
    "token_type": "token_type",
    "uid": "uid"
  },
  "message": "message"
}

400 Response

{
  "code": 400,
  "message": "message"
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline
400 Bad Request none Inline

返回数据结构

状态码 200

名称 类型 必选 约束 中文名 说明
» code integer true none none
» data object true none none
»» access_expires_in integer true none none
»» access_token string true none none
»» refresh_expires_in integer true none none
»» token_type string true none none
»» uid string true none none
» message string true none none

状态码 400

名称 类型 必选 约束 中文名 说明
» code integer true none none
» message string true none none

POST 登出

POST /auth/logout

用户登出,需要使用refresh_token执行操作,这里可以使用当前最新过期的refresh_token

请求参数

名称 位置 类型 必选 说明
refresh_token cookie string none

返回示例

200 Response

{
  "code": 200,
  "message": "message"
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline

返回数据结构

POST Token刷新

POST /auth/refresh

刷新token,包括access和refresh tokend

注意:这里应该使用refresh token访问

Body 请求参数

{
  "refresh_token": "refresh_token"
}

请求参数

名称 位置 类型 必选 说明
body body object none
» refresh_token body string none

返回示例

200 Response

{
  "code": 200,
  "data": {
    "access_expires_in": 900,
    "access_token": "access_token",
    "refresh_expires_in": 1209600,
    "refresh_token": "refresh_token",
    "token_type": "token_type"
  },
  "message": "message"
}

401 Response

{
  "code": 0,
  "message": "message"
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline
401 Unauthorized none Inline

返回数据结构

状态码 200

名称 类型 必选 约束 中文名 说明
» code integer true none none
» data object true none none
»» access_token string true none none
»» token_type string true none none
» message string true none none

状态码 401

名称 类型 必选 约束 中文名 说明
» code integer true none none
» message string true none none

GET 获取用户信息

GET /user/get-user

请求参数

名称 位置 类型 必选 说明
uid query string 要查询用户的uid
account query string 要查询用户的account

返回示例

200 Response

{
  "code": 200,
  "data": {
    "account": "account",
    "avatar": "avatar",
    "signature": "signature",
    "uid": "uid",
    "username": "username"
  },
  "message": "message"
}

404 Response

{
  "code": 0,
  "message": "message"
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline
404 Not Found none Inline

返回数据结构

状态码 200

名称 类型 必选 约束 中文名 说明
» code integer true none none
» data object true none none
»» account string true none none
»» avatar string true none none
»» signature string true none none
»» uid string true none none
»» username string true none 用户名
» message string true none none

状态码 404

名称 类型 必选 约束 中文名 说明
» code integer true none none
» message string true none none

POST 更改用户基本信息

POST /user/modify/info

一共修改12个字段 + 身份认证token 在这里没有修改token、password、uids token的验证可以是url参数 token 或者是header的Authorization字段 格式为: JWT+一个空格+token

Body 请求参数

{
    "username": "username",
    "avatar": "avatar",
    "signature": "signature",
    "account": "account",
    "email": "email",
    "create_time": "create_time",
    "last_login_time": "last_login_time",
    "status": "status",
    "level": "level",
    "posts": "posts",
    "followers": "followers",
    "following": "following"
}

请求参数

名称 位置 类型 必选 说明
token query string 用户获取的jwt token
body body object none
» username body string none
» account body string none
» avatar body string none
» signature body string none
» email body string none
» create_time body string none
» last_login_time body string none
» status body string none
» level body string none
» posts body string none
» followers body string none
» following body string none

返回示例

200 Response

{
  "code": 200,
  "data": {
    "account": "account",
    "avatar": "avatar",
    "signature": "signature",
    "uid": "uid",
    "username": "username"
  },
  "message": "message"
}

401 Response

{
  "code": 0,
  "message": "message"
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline
401 Unauthorized none Inline

返回数据结构

状态码 200

名称 类型 必选 约束 中文名 说明
» code integer true none none
» data object true none none
»» account string true none none
»» avatar string true none none
»» signature string true none none
»» uid string true none none
»» username string true none none
» message string true none none

状态码 401

名称 类型 必选 约束 中文名 说明
» code integer true none none
» message string true none none

聊天

GET 拉取指定会话的聊天记录

GET /thread/record/user

根据 1.现有消息ID 2. 指定的会话的thread_id, 获取 3.指定数量num 的聊天记录

请求参数

名称 位置 类型 必选 说明
thread_id query integer 必要参数,目标聊天室的id
existing_id query integer 必要参数,现有消息ID,用于指定返回消息的位置
num query integer 非必要参数, 用于指定返回记录的数量
token query string 必要参数,用户的token
Authorization header string none

返回示例

{
  "code": 200,
  "message": "message",
  "data": [
    {
      "message_id": 0,
      "sender_uid": "sender_uid",
      "sender_name": "sender_name",
      "sender_avatar": "sender_avatar",
      "content": "content",
      "attachment": "",
      "thread_id": 0,
      "create_time": "create_time",
      "update_time": "update_time"
    }
  ],
  "size": 0
}
{
  "code": 404,
  "message": "message",
  "data": null
}

400 Response

{
  "code": 0,
  "message": "message",
  "data": null
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline
400 Bad Request none Inline

返回数据结构

状态码 200

名称 类型 必选 约束 中文名 说明
» attachment null true none none
» content string true none none
» create_time integer true none none
» message_id integer true none none
» sender_avatar string true none none
» sender_name string true none none
» sender_uid string true none none
» status integer true none none
» thread_id integer true none none
» update_time integer true none none

状态码 400

名称 类型 必选 约束 中文名 说明
» code integer true none none
» message string true none none
» data null true none none

POST 邀请加入群聊

POST /thread/group/add-member

需要验证token(邀请者的token) user_uid为被邀请的用户uid 邀请者必须是群成员

Body 请求参数

{
  "thread_id": 0,
  "user_uid": "user_uid"
}

请求参数

名称 位置 类型 必选 说明
token query string none
body body object none
» thread_id body integer 要加入的房间号
» user_uid body string none

返回示例

200 Response

{
  "code": 200,
  "message": "message"
}

400 Response

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline
400 Bad Request none Inline

返回数据结构

状态码 200

名称 类型 必选 约束 中文名 说明
» code integer true none none
» message string true none none
» data object true none 我这还没写,我们商量完流程然后看看这些到底要返回啥东西

POST 加入群聊

POST /thread/group/join

需要验证token uid为要加入用户的uid

Body 请求参数

{
  "thread_id": 0,
  "uid": 0
}

请求参数

名称 位置 类型 必选 说明
token query string none
body body object none
» thread_id body integer none

返回示例

200 Response

{
  "code": 200,
  "message": "message"
}

400 Response

{
  "code": 0,
  "message": "message"
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline
400 Bad Request none Inline

返回数据结构

状态码 200

名称 类型 必选 约束 中文名 说明
» code integer true none none
» message string true none none

状态码 400

名称 类型 必选 约束 中文名 说明
» code integer true none none
» message string true none none

GET 重连拉取消息概览

GET /thread/record/overview

需要验证token

请求参数

名称 位置 类型 必选 说明
token query string none
existing_id query string 离线时客户端收到的最后一条消息的id

返回示例

401 Response

{
  "code": 0,
  "message": "message"
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none None
401 Unauthorized none Inline

返回数据结构

状态码 401

名称 类型 必选 约束 中文名 说明
» code integer true none none
» message string true none none

POST 创建群聊

POST /thread/create/group-chat

Body 请求参数

{
  "name": "name",
  "description": "description",
  "avatar": "avatar"
}

请求参数

名称 位置 类型 必选 说明
token query string none
body body object none
» name body string none
» description body string none
» avatar body string none

返回示例

200 Response

{
  "code": 200,
  "message": "message",
  "thread_id": 0
}

401 Response

{
  "code": 0,
  "message": "message"
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline
401 Unauthorized none Inline

返回数据结构

状态码 200

名称 类型 必选 约束 中文名 说明
» code integer true none none
» message string true none none
» thread_id integer true none none

状态码 401

名称 类型 必选 约束 中文名 说明
» code integer true none none
» message string true none none

POST 创建ai聊天

POST /thread/create/ai-chat

Body 请求参数

{
  "name": "name",
  "init_settings": "init_settings",
  "avatar": "avatar"
}

请求参数

名称 位置 类型 必选 说明
token query string none
body body object none
» name body string none
» init_settings body string none
» avatar body string 非必须

返回示例

200 Response

{
  "code": 0,
  "message": "message",
  "thread_id": 0
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline
401 Unauthorized none Inline

返回数据结构

状态码 200

名称 类型 必选 约束 中文名 说明
» code integer true none none
» message string true none none
» thread_id integer true none none

状态码 401

名称 类型 必选 约束 中文名 说明
» code integer true none none
» message string true none none

GET 查询聊天thread信息

GET /thread/info/query

请求参数

名称 位置 类型 必选 说明
token query string none
thread_id query string none

返回示例

200 Response

{
  "code": 200,
  "data": {
    "info": {
      "avatar": "avatar",
      "description": "description",
      "name": "name",
      "thread_id": 0,
      "type": 0
    },
    "members": [
      "uid"
    ]
  },
  "message": "message"
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline

返回数据结构

状态码 200

名称 类型 必选 约束 中文名 说明
» code integer true none none
» data object true none none
»» info object true none none
»»» avatar string true none none
»»» description string true none none
»»» name string true none none
»»» thread_id integer true none none
»»» type integer true none none
»» members [string] true none none
» message string true none none

GET 拉取ai聊天记录

GET /thread/record/ai

需要token,用户必须是ai创建者

请求参数

名称 位置 类型 必选 说明
thread_id query integer none
existed_time query integer 最后一条记录的时间,设置为0时返回所有记录
token query string none

返回示例

200 Response

[
  {
    "attachment": null,
    "content": "content",
    "created_time": 0,
    "message_id": "message_id",
    "reasoning_content": null,
    "role": "role",
    "thread_id": 0
  },
  {
    "attachment": null,
    "content": "content",
    "created_time": 0,
    "message_id": "message_id",
    "reasoning_content": "reasoning_content",
    "role": "role",
    "thread_id": 0
  }
]

400 Response

{
  "code": 0,
  "message": "message"
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline
400 Bad Request none Inline

返回数据结构

状态码 200

名称 类型 必选 约束 中文名 说明
» attachment null true none none
» content string true none none
» created_time integer true none none
» message_id string true none none
» reasoning_content string¦null true none none
» role string true none none
» thread_id integer true none none

状态码 400

名称 类型 必选 约束 中文名 说明
» code integer true none none
» message string true none none

关系操作

POST 发送好友申请

POST /relation/send-friend-request

Body 请求参数

{
  "acceptor_uid": "acceptor_uid",
  "message": "message"
}

请求参数

名称 位置 类型 必选 说明
Authorization header string none
body body object none
» acceptor_uid body string 想要添加的用户的uid
» message body string 想对用户说的话(后面要加字数限制)

返回示例

{
  "code": 200,
  "message": "message"
}
{
  "code": 400,
  "message": "message"
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline

返回数据结构

状态码 200

名称 类型 必选 约束 中文名 说明
» code integer true none none
» message string true none none

POST 处理好友申请

POST /relation/process-friend-request

需要token body参数为requester_uid,action 其中action 为整数枚举,1 - 接受,2 - 拒绝

Body 请求参数

{
  "requester_uid": "requester_uid",
  "action": 0
}

请求参数

名称 位置 类型 必选 说明
token query string 当前操作用户的token
body body object none
» requester_uid body string 对当前用户发起申请的用户的uid
» action body integer 当前操作用户想要进行的操作

返回示例

200 Response

{
  "code": 200,
  "data": {
    "thread_id": 0
  },
  "message": "message"
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline

返回数据结构

状态码 200

名称 类型 必选 约束 中文名 说明
» code integer true none none
» data object true none none
»» thread_id integer true none none
» message string true none none

POST 屏蔽用户

POST /relation/block

Body 请求参数

{
  "target_uid": "target_uid"
}

请求参数

名称 位置 类型 必选 说明
token query string none
body body object none
» target_uid body string 要屏蔽用户的uid

返回示例

200 Response

{
  "code": 200,
  "message": "message"
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline

返回数据结构

POST 解除屏蔽

POST /relation/unblock

Body 请求参数

{
  "target_uid": "target_uid"
}

请求参数

名称 位置 类型 必选 说明
token query string none
body body object none
» target_uid body string none

返回示例

200 Response

{
  "code": 200,
  "message": "message"
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline

返回数据结构

通知

GET 获取未读通知

GET /relation/notifications/unread

请求参数

名称 位置 类型 必选 说明
token query string 用户自己的token

返回示例

{
  "code": 200,
  "data": {
    "count": 0,
    "items": [
      {
        "created_time": 0,
        "id": 0,
        "is_read": 0,
        "payload": "payload",
        "recipient_uid": "recipient_uid",
        "sender_uid": "sender_uid",
        "type": 0
      },
      {
        "created_time": 0,
        "id": 0,
        "is_read": 0,
        "payload": "payload",
        "recipient_uid": "recipient_uid",
        "sender_uid": "sender_uid",
        "type": 0
      },
      {
        "created_time": 0,
        "id": 0,
        "is_read": 0,
        "payload": "payload",
        "recipient_uid": "recipient_uid",
        "sender_uid": "sender_uid",
        "type": 0
      }
    ]
  },
  "message": "message"
}
{
  "code": 200,
  "data": {
    "count": 0,
    "items": [
      {
        "created_time": 0,
        "id": 0,
        "is_read": 0,
        "payload": "payload",
        "recipient_uid": "recipient_uid",
        "sender_uid": "sender_uid",
        "type": 0
      },
      {
        "created_time": 0,
        "id": 0,
        "is_read": 0,
        "payload": "payload",
        "recipient_uid": "recipient_uid",
        "sender_uid": "sender_uid",
        "type": 0
      }
    ]
  },
  "message": "message"
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline

返回数据结构

状态码 200

名称 类型 必选 约束 中文名 说明
» code integer true none none
» data object true none none
»» count integer true none none
»» items [object] true none none
»»» created_time integer true none none
»»» id integer true none none
»»» is_read integer true none none
»»» payload string true none none
»»» recipient_uid string true none none
»»» sender_uid string true none none
»»» type integer true none none
» message string true none none

GET 获取全部通知(包括已读通知)

GET /relation/notifications

请求参数

名称 位置 类型 必选 说明
token query string 用户自己的token

返回示例

200 Response

{
  "code": 200,
  "data": {
    "count": 0,
    "items": [
      {
        "created_time": 0,
        "id": 0,
        "is_read": 0,
        "payload": "payload",
        "recipient_uid": "recipient_uid",
        "sender_uid": "sender_uid",
        "type": 0
      }
    ],
    "limit": 0,
    "offset": 0
  },
  "message": "message"
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline

返回数据结构

POST 确认通知已读

POST /relation/notifications/mark-read

Body 请求参数

{
  "ids": [
    "ids",
    "ids"
  ]
}

请求参数

名称 位置 类型 必选 说明
token query string 用户的token
body body object none
» ids body [string] 已经读取的通知的id数组

返回示例

200 Response

{
  "code": 200,
  "data": {
    "updated": 0
  },
  "message": "message"
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline

返回数据结构

状态码 200

名称 类型 必选 约束 中文名 说明
» code integer true none none
» data object true none none
»» updated integer true none none
» message string true none none

GET 获取未处理的好友申请

GET /relation/friend-requests

请求参数

名称 位置 类型 必选 说明
token query string none

返回示例

200 Response

{
  "code": 200,
  "data": {
    "count": 0,
    "items": [
      {
        "created_time": 0,
        "id": 0,
        "payload": "payload",
        "requester_uid": "requester_uid",
        "status": 0,
        "target_uid": "target_uid",
        "updated_time": 0
      },
      {
        "created_time": 0,
        "id": 0,
        "payload": "payload",
        "requester_uid": "requester_uid",
        "status": 0,
        "target_uid": "target_uid",
        "updated_time": 0
      }
    ]
  },
  "message": "message"
}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline

返回数据结构

文件操作

POST 文件上传(图片)

POST /file/upload/image

支持的类型仅限:"png","jpg","jpeg","gif","WebP" 大小限制为5M

Body 请求参数

image: "image"

请求参数

名称 位置 类型 必选 说明
body body object none
» image body string(binary) none

返回示例

200 Response

{}

返回结果

状态码 状态码含义 说明 数据模型
200 OK none Inline