Plus (ThinkSNS+)

Plus (ThinkSNS+)

  • 文档 [New]
  • 文档
  • REST API v2
  • 反馈
  • GitHub

›动态

基本

  • 概述
  • 启动信息
  • Json Web Token 授权
  • 验证码
  • 位置
  • 标签
  • 消息通知
  • 钱包(旧版本)
  • Plus Pay(新钱包-支付工具)
  • 支付能力
  • 文件
  • 关于我们
  • 广告
  • 举报
  • 积分
  • 环信
  • 评论
  • 文件存储

用户

  • 用户
  • 注册
  • 收到的评论
  • 收到的喜欢
  • 关注
  • 标签
  • 身份认证
  • 找人
  • 排行榜
  • 反馈
  • 打赏用户
  • 未读消息
  • 签到
  • 消息

动态

  • 发布动态
  • 获取动态
  • 删除动态
  • 设置评论收费
  • 评论
  • 喜欢
  • 收藏
  • 置顶
  • 打赏
  • 排行榜
  • 举报
  • 积分部分新增接口
  • 话题

音乐

  • 音乐
  • 专辑
  • 点赞
  • 评论
  • 收藏

问答

  • 概述
  • 话题
  • 问题
  • 评论
  • 回答
  • 回答 · 打赏
  • 回答 · 围观
  • 用户 · 关注问题
  • 用户 · 喜欢回答
  • 用户 · 收藏回答
  • 用户 · 申请精选
  • 排行榜
  • 举报
  • 问答部分积分相关新增接口

资讯

  • 概述
  • 分类
  • 投稿
  • 获取
  • 评论
  • 喜欢
  • 打赏
  • 置顶
  • 收藏
  • 排行榜
  • 举报
  • 资讯部分积分相关新增接口

圈子

  • 概述
  • 分类
  • 圈子
  • 圈子 · 管理
  • 圈子 · 举报
  • 圈子 · 成员
  • 帖子
  • 帖子 · 评论
  • 帖子 · 喜欢
  • 帖子 · 收藏
  • 帖子 · 打赏
  • 帖子 · 置顶
  • 圈子部分积分相关新增接口
Edit

话题

话题为新 API 规范产物,服务器返回的时间均以 ISO 8601 Zulu 格式 yyy-mm-ddThh-ii-ssZ 格式返回。

List all topics(获取全部话题)

GET /feed/topics

请求查询参数:

NameTypeDescription
qstring搜索关键词,允许任何字符串。
limitinteger本次请求请求的数据条数,默认 15 条,允许的范围 1 - 100。
directionstring用于基于数据 id 字段的排序方向设置,允许 asc 或者 desc,默认 desc
indexinteger数据查询定位值,来源于数据 id 字段。
onlystring可选,该字段只有一个固定值 hot,当出现 only 值的时候其他参数全部失效,转而 API 只返回热门话题数据。

响应:

Status: 200 OK
[
    {
        "id": 1,                             // 话题 ID, 主要用于查询定位。
        "name": "Plus",                      // 话题名称
        "logo": {...},                       // 参考 https://slimkit.github.io/docs/api-v2-core-file-storage.html#文件附带信息
        "created_at": "2018-07-23T15:04:23Z" // Zulu 格式,话题创建时间
    },
    // ...
]

Create an topic(创建一个话题)

POST /feed/topics

请求内容参数:

NameTypeDescription
namestring必须,话题名称最长 100 个字。
descstring可选,话题描述最长 500 个字。
logoFILE_STORAGE_NODE<string>可选,话题 Logo 调用文件存储接口返回的 node 标识。

响应:

Status: 201 Created
{
    "id": 1 // 话题创建成功后的 ID 标识
}

Follow a topic(关注一个话题)

PUT /user/feed-topics/:topicID

响应:

Status: 204 No Content

Unfollow a topic(取消关注一个话题)

DELETE /user/feed-topics/:topicID

响应:

Status: 204 No Content

Edit an topic(编辑一个话题)

PATCH /feed/topics/:topicID

请求内容参数:

NameTypeDescription
descstring可选,话题描述最长 500 个字。
logoFILE_STORAGE_NODE<string>可选,话题 Logo 调用文件存储接口返回的 node 标识。

响应:

Status: 204 No Content

Get a single topic(获取一个话题详情)

GET /feed/topics/:topicID

如果携带 Authorization 则会返回关注状态,否则不会返回!

响应:

Status: 200 OK
{
    "id": 1,               // 话题 ID
    "name": "Plus",        // 话题名称
    "logo": null,
    "desc": "啊哈哈",       // 话题描述
    "creator_user_id": 1,  // 话题创建者 User ID
    "feeds_count": 2,      // 话题下有都少动态
    "followers_count": 1,  // 有多少人关注了这个话题
    "has_followed": true,  // 当前 Authorization 用户是否关注了话题
    "participants": [2, 3, 5] // 最多三个,参与者需求,按照参与时间倒序!
}

List feeds for a topic(获取话题下的动态列表)

GET /feed/topics/:topicID/feeds

请求查询参数:

NameTypeDescription
limitinteger本次请求请求的数据条数,默认 15 条,允许的范围 1 - 100。
directionstring用于基于数据 index 字段的排序方向设置,允许 asc 或者 desc,默认 desc
indexinteger数据查询定位值,来源于数据 index 字段。

响应:

Status: 200 OK

Body 部分和《动态获取》接口保持一直。 保持数据格式一致的做法是为了避免新内容造成客户端重写 Controller 考虑,相比其他接口,本接口数据内容会多出一个 index 字段。

List participants for a topic(获取话题下的参与者列表)

GET /feed/topics/:topicID/participants

请求查询参数:

NameTypeDescription
limitinteger本次请求的数据条数,默认 15 条,允许的范围 1 - 100。
offsetinteger本次请求的数据偏移两,默认 0 条。

响应:

Status: 200 OK
[
    1, // 用户 ID
    2,
    3,
    /// ...
]

Report a topic(举报一个话题)

PUT /user/report-feed-topics/:topicID

请求内容参数:

NameTypeDescription
messagestring必须,举报理由,不得超过 255 个字。

响应:

Status: 204 No Content
← 积分部分新增接口音乐 →
  • List all topics(获取全部话题)
  • Create an topic(创建一个话题)
  • Follow a topic(关注一个话题)
  • Unfollow a topic(取消关注一个话题)
  • Edit an topic(编辑一个话题)
  • Get a single topic(获取一个话题详情)
  • List feeds for a topic(获取话题下的动态列表)
  • List participants for a topic(获取话题下的参与者列表)
  • Report a topic(举报一个话题)
Plus (ThinkSNS+)
More
GitHubStar
Copyright © 2019 Chengdu ZhiYiChuangXiang Technology Co., Ltd. All rights reserved.