摸鱼派社区开放 API 使用文档 V2.1.2
摸鱼派 API 文档
注意事项
- 请一定要在请求时带上 UA,推荐使用 Chrome 的 UA,空 UA 将返回 500 状态码
- 对单个接口的访问频率必须控制在最低1次/30秒,否则IP可能进入小黑屋(WebSocket、发送消息接口除外)
摸鱼派与OpenAPI
为了方便大家调试 API,我们开通了摸鱼派 API 的 ApiFox 团队,团队内集合了摸鱼派 API 的集合样例(欢迎补全),如想加入请在评论区回复你的 ApiFox 注册邮箱,我们将进行邀请。
🌟 Swagger UI
摸鱼派内嵌 Swagger UI,可在线对摸鱼派 API 进行调试(如有疏漏请私信项目支持开摆 @8888 )
使用地址:https://fishpi.cn/swagger/index.html
✨ OpenAPI
我们将采用 OpenAPI 标准的 API JSON 文件进行了公开,你可以将其直接导入到 ApiFox 使用,或者想怎么用都可以 😄
OpenAPI JSON 文件地址:https://fishpi.cn/swagger/swagger.json
鉴权
摸鱼派社区 API 引入了 apiKey
的概念,对 API 的请求不需要提供 Cookie,只需要在参数中带上申请的 apiKey
即可。
注意:凡是 POST 请求,请求体必须是 JSON 格式,例如:
{ "nameOrEmail":"","userPassword":"" }
获取 apiKey
POST
/api/getKey
用于 API 获取摸鱼派的通用密钥,Key
即身份,Key
长期有效,如果服务器重启,则需要重新获取,建议配合 /api/user
接口定期检测 Key
是否有效。
请求:
Key | 说明 | 示例 |
---|---|---|
nameOrEmail | 用户名或邮箱地址 | username |
userPassword | 使用 MD5 加密后的密码* | e10adc3949ba59abbe56e057f20f883e |
mfaCode | 两步认证一次性密码(如未设置留空) | 123456 |
请求示例:
curl --location --request POST 'https://fishpi.cn/api/getKey' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36' \
--data-raw '{
"nameOrEmail":"username",
"userPassword":"e10adc3949ba59abbe56e057f20f883e",
"mfaCode":"123456"
}'
* 注意:这里不支持直接传递明文,必须是32位小写MD5加密后的密码
响应:
Key | 说明 | 示例 |
---|---|---|
Key | API 通用密钥,用于用户身份识别 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
msg | 错误信息 | 密码错误 |
code | 0 为请求成功,-1 失败 | -1 |
查询用户信息
GET
/api/user?apiKey=<Key>
通过指定的 API Key 查询用户信息(可以用来定期验证 API Key 是否有效)
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
请求示例:
curl --location --request GET 'https://fishpi.cn/api/user?apiKey=oXTQTD4ljryXoIxa1lySgEl6aObrIhSS'
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36' \
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为0则密钥有效,为-1则密钥无效 | 0 |
msg | 错误信息 | Invalid Api Key. |
data* | 对应用户详细信息 | { ... } |
- oId | Id | 1630512345670 |
- userNo | 用户序号 | 26 |
- userName | 用户名 | imlinhanchao |
- userRole | 用户组 | OP |
- userNickname | 昵称 | 我是跳跳吧 |
- userAvatarURL | 头像地址 | https://... |
- userCity | 最近所在城市,根据用户 IP 确定 | 深圳 |
- userOnlineFlag | 是否在线 | true |
- onlineMinute | 在线时长,单位分钟 | 85467 |
- userPoint | 积分 | 183939 |
- userAppRole | 角色 | 0 = 黑客,1 = 画家 |
- userIntro | 签名 | 人生而自由,卻無往不在枷鎖之中。 |
- userURL | URL | https://... |
- cardBg | 卡片背景 | https://... |
- followingUserCount | 关注用户 | 5 |
- sysMetal | 徽章列表, JSON字符串 | { ... } |
-- list | 徽章列表数据 | [ ... ] |
--- attr | 徽章数据,包含徽章图地址url , 背景色 backcolor , 前景色 fontcolor |
url=https://...&backcolor=b91c22&fontcolor=ffffff |
--- name | 徽章名称 | Operator |
--- description | 徽章描述 | 摸鱼派官方开发组成员 |
--- data | 徽章数据 | 无 |
* 注意:若密钥无效,无
data
项目
注册用户
以下关于注册用户接口的内容我以提供注册思路为导向进行编写,方便大家对接。
第一步 获取一个图形验证码,要求用户识别并填写,带入到第二步的请求中
获取图形验证码可访问 GET /captcha
第二步 向摸鱼派请求获取短信验证码
POST /register
请求:
Key | 说明 | 示例 |
---|---|---|
userName | 用户名 | adlered |
userPhone | 手机号 | 13261327290 |
invitecode | 邀请码(选填,无则留空,必须提供让用户填写邀请人的输入框,如果用户留空,可以将作者作为邀请人,但如果用户主动填写了邀请人,则必须按用户输入请求) | 000000 |
captcha | 第一步的验证码(大小写不敏感) | abcd |
第三步 验证短信验证码是否正确
GET /verify?code=<code>
请求:
Key | 说明 | 示例 |
---|---|---|
code | 短信验证码 | 123456 |
返回结果后请验证返回 JSON 中 code 的值是否为 0,如为 0 则验证码正确,并记录下返回的userId。
第四步 设定密码和邮箱
POST /register2?r=<r>
请注意!请将密码在本地MD5加密后再放到 userPassword 中!不接受明文密码!
Key | 说明 | 示例 |
---|---|---|
userAppRole | 角色(0为黑客,1为画家) | 0 |
userPassword | 使用 MD5 加密后的密码 * | e10adc3949ba59abbe56e057f20f883e |
userId | 请填写第三步返回的userId | 1652062402334 |
r | 邀请人的用户名(选填,无邀请人则留空) | csfwff |
code 返回 0 则注册成功!
通用
查询成员信息
GET
/user/<username>?apiKey=<Key>
查询某个成员的信息
请求:
Key | 说明 | 示例 |
---|---|---|
username | 用户名 | taozhiyu |
apiKey | 通用密钥* | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
* 选填,填写后
canFollow
返回值可以显示是否已经关注该用户
请求示例:
curl --location --request GET 'https://fishpi.cn/user/taozhiyu?apiKey=oXTQTD4ljryXoIxa1lySgEl6aObrIhSS'\
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36' \
响应:
Key | 说明 | 示例 |
---|---|---|
oId | Id | 1630512345670 |
userNo | 用户序号 | 26 |
userName | 用户名 | imlinhanchao |
userRole | 用户组 | OP |
userNickname | 昵称 | 我是跳跳吧 |
userAvatarURL | 头像地址 | https://... |
userCity | 最近所在城市,根据用户 IP 确定 | 深圳 |
userOnlineFlag | 是否在线 | true |
onlineMinute | 在线时长,单位分钟 | 85467 |
userPoint | 积分 | 183939 |
canFollow | 是否可以关注 | no/yes/hide |
userAppRole | 角色 | 0 = 黑客,1 = 画家 |
userIntro | 签名 | 人生而自由,卻無往不在枷鎖之中。 |
userURL | URL | https://... |
cardBg | 卡片背景 | https://... |
followingUserCount | 关注用户 | 5 |
sysMetal | 徽章列表, JSON字符串 | { ... } |
- list | 徽章列表数据 | [ ... ] |
-- attr | 徽章数据,包含徽章图地址url , 背景色 backcolor , 前景色 fontcolor |
url=https://...&backcolor=b91c22&fontcolor=ffffff |
-- name | 徽章名称 | Operator |
-- description | 徽章描述 | 摸鱼派官方开发组成员 |
-- data | 徽章数据 | 无 |
用户名联想
POST /users/names
通过现有的字符串推断完整的用户名(列表)
请求:
Key | 说明 | 示例 |
---|---|---|
name | 不完整的用户名 | ad |
请求示例:
curl --location --request POST 'https://fishpi.cn/users/names' \
--header 'Content-Type: application/json' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36' \
--data-raw '{
"name":"ad"
}'
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为0则密钥有效,为-1则密钥无效 | 0 |
msg | 错误信息 | |
data | 用户列表 | [ ... ] |
- userAvatarURL | 头像 | https://... |
- userName | 用户名 | adlered |
用户常用表情
GET /users/emotions?apiKey=<Key>
获取用户常用表情
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
请求示例:
curl --location --request GET 'https://fishpi.cn/users/emotions?apiKey=oXTQTD4ljryXoIxa1lySgEl6aObrIhSS' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为0则密钥有效,为-1则密钥无效 | 0 |
msg | 错误信息 | |
data | 表情列表 | [ ... ] |
-<< emoji name> |
Key 为 emoji 代码,值为对应 emoji | "smile":"😄" |
获取活跃度
GET /user/liveness?apiKey=<Key>
获取用户活跃度
警告⚠️️️️️️️️️️️️:
本接口负载较大,请至少将请求间隔延长至30秒,建议每次循环取 (30,60] 秒的随机数,如间隔小于30秒,登录状态会被直接注销!
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
请求示例:
curl --location --request GET 'https://fishpi.cn/user/liveness?apiKey=oXTQTD4ljryXoIxa1lySgEl6aObrIhSS' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'
响应:
Key | 说明 | 示例 |
---|---|---|
liveness | 活跃度 | 80.20 |
获取签到状态
GET /user/checkedIn?apiKey=<Key>
获取用户是否签到
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
请求示例:
curl --location --request GET 'https://fishpi.cn/user/checkedIn?apiKey=oXTQTD4ljryXoIxa1lySgEl6aObrIhSS' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'
响应:
Key | 说明 | 示例 |
---|---|---|
checkedIn | 是否签到 | true |
领取昨日活跃奖励
GET /activity/yesterday-liveness-reward-api?apiKey=<Key>
领取昨日活跃奖励
请求示例:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
请求示例:
curl --location --request GET 'https://fishpi.cn/activity/yesterday-liveness-reward-api?apiKey=oXTQTD4ljryXoIxa1lySgEl6aObrIhSS' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'
响应:
Key | 说明 | 示例 |
---|---|---|
sum | 领取到的积分,-1 表示已领取 | 300 |
查询昨日奖励领取状态
GET /api/activity/is-collected-liveness
查询昨日活跃奖励是否已被领取
请求示例:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
请求示例:
curl --location --request GET 'https://fishpi.cn/api/activity/is-collected-liveness?apiKey=oXTQTD4ljryXoIxa1lySgEl6aObrIhSS' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'
响应:
Key | 说明 | 示例 |
---|---|---|
isCollectedYesterdayLivenessReward | true 表示已领取 | true |
举报
POST /report
举报内容接口
请注意! 该接口为复用接口,请确保 Content-Type
为 application/x-www-form-urlencoded
而非JSON,否则将无法请求成功
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
reportDataId | 举报 Id | 1651126540998 |
reportDataType | 举报数据类型 | 0:文章,1:评论,2:用户,3:聊天消息 |
reportType | 举报类型 | 0:垃圾广告,1: H,2:违规,3:侵权,4:人身攻击,5:冒充他人账号,6:垃圾广告账号,7:违规泄露个人信息,49:其他 |
reportMemo | 举报理由 | 该用户涉嫌发送违规内容 |
请求示例:
curl --location --request POST 'https://fishpi.cn/report' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36' \
--header 'Content-Type: application/json' \
--data-raw '{
"apiKey":"oXTQTD4ljryXoIxa1lySgEl6aObrIhSS",
"reportDataId":"1651126540998",
"reportDataType":3,
"reportType":49,
"reportMemo":"",
}'
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为 0 则密钥有效,为 -1 则密钥无效 | 0 |
msg | 错误消息 |
查询最近注册的20个用户
GET /api/user/recentReg
转账
POST /point/transfer
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
userName | 收款人 | adlered |
amount | 转账金额 | 100 |
memo | 转账备注 | hello |
关注用户
POST /follow/user
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
followingId | 关注对象的oId | 1659430635383 |
取关用户
POST /unfollow/user
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
followingId | 关注对象的oId | 1659430635383 |
通知
通知计数
GET /notifications/unread/count
获取用户未阅读的通知计数
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
请求示例:
curl --location --request GET 'https://fishpi.cn/notifications/unread/count?apiKey=oXTQTD4ljryXoIxa1lySgEl6aObrIhSS' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为 0 则密钥有效,为 -1 则密钥无效 | 0 |
userNotifyStatus | 是否启用 Web 通知 | 0 |
unreadNotificationCnt | 未读通知数 | 0 |
unreadReplyNotificationCnt | 未读回复通知数 | 0 |
unreadPointNotificationCnt | 未读积分通知数 | 0 |
unreadAtNotificationCnt | 未读 @ 通知数 | 0 |
unreadBroadcastNotificationCnt | 未读同城通知数 | 0 |
unreadSysAnnounceNotificationCnt | 未读系统通知数 | 0 |
unreadNewFollowerNotificationCnt | 未读关注者通知数 | 0 |
unreadFollowingNotificationCnt | 未读关注通知数 | 0 |
unreadCommentedNotificationCnt | 未读评论通知数 | 0 |
通知详情
GET /api/getNotifications?apiKey=<Key>&type=<type>[&page=<page>]
获取详细通知列表
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
type | 要获取的通知类型 | point |
p | 页数可选,默认为1 | 1 |
通知类型:
Type | 说明 |
---|---|
point | 积分 |
commented | 收到的回帖 |
reply | 收到的回复 |
at | 提及我的 |
following | 我关注的 |
broadcast | 同城 |
sys-announce | 系统 |
请求示例:
curl --location --request GET 'https://fishpi.cn/api/getNotifications?apiKey=oXTQTD4ljryXoIxa1lySgEl6aObrIhSS&type=point' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'
积分(point)通知响应:
Key | 说明 | 示例 |
---|---|---|
code | 为0则密钥有效,为-1则密钥无效 | 0 |
msg | 错误信息 | |
data | 通知数据列表 | [ ... ] |
- hasRead | 是否已读 | true |
- createTime | 创建时间 | Tue Dec 21 11:33:31 CST 2021 |
- description | 通知描述,格式为 HTML | PickerFinsh 已通过你的邀请链接注册,感谢你对社区的贡献 ♥️ |
收到的回帖/回复(commented/reply)通知响应:
Key | 说明 | 示例 |
---|---|---|
code | 为0则密钥有效,为-1则密钥无效 | 0 |
msg | 错误信息 | |
data | 通知数据列表 | [ ... ] |
- hasRead | 是否已读 | true |
- commentAuthorName | 回帖作者 | Tocker |
- commentAuthorThumbnailURL | 回帖作者头像缩略图 | https://... |
- commentCreateTime | 回帖时间 | Sun Dec 19 09:57:03 CST 2021 |
- commentSharpURL | 回帖地址 | /article/1637143985245?p=1&m=1#1639879022994 |
- commentContent | 回帖内容,内容为 HTML | 牛蛙牛蛙 |
- commentArticleType | 回帖的文章类型 | 0 |
- commentArticleTitle | 回帖文章标题 | 摸鱼派聊天室应用 |
- commentArticlePerfect | 是否精选的文章 | 1 |
收到的 @ (at) 通知响应:
Key | 说明 | 示例 |
---|---|---|
code | 为0则密钥有效,为-1则密钥无效 | 0 |
msg | 错误信息 | |
data | 通知数据列表 | [ ... ] |
- hasRead | 是否已读 | true, |
- userName | 发起 @ 用户 | imlinhanchao |
- userAvatarURL | 发起 @ 用户头像 | https://file.fishpi.cn/2021/09/1502581-141c6da3.png", |
- deleted | 是否已删除 | false, |
- createTime" | 创建时间 | Mon Dec 20 10:00:56 CST 2021", |
- content | @ 的内容 | @imlinhanchao 大佬一直在线 还可以看直播" |
我关注的(following) 通知响应:
Key | 说明 | 示例 |
---|---|---|
code | 为0则密钥有效,为-1则密钥无效 | 0 |
msg | 错误信息 | |
data | 通知数据列表 | [ ... ] |
- hasRead | 是否已读 | true |
- articleTitle | 文章标题 | 【社区维护日志】IP 黑名单列表 |
- isComment | 是否评论 | false |
- articleTags | 文章标签 | 摸鱼派,熊孩子 |
- url | 文章地址 | 【社区维护日志】IP 黑名单列表 |
- articleType | 文章类型 | 0 |
- createTime | 创建时间 | Fri Dec 17 13:35:58 CST 2021 |
- authorName | 文章作者 | adlered |
- articlePerfect | 是否精选文章 | 0 |
- thumbnailURL | 作者头像缩略图 | https://... |
- articleCommentCount | 文章评论数 | 17 |
| 系统(sys-announce)通知响应: | | |
Key | 说明 | 示例 |
---|---|---|
code | 为0则密钥有效,为-1则密钥无效 | 0 |
msg | 错误信息 | |
data | 通知数据列表 | [ ... ] |
- hasRead | 是否已读 | true |
- createTime | 创建日期 | Mon Dec 13 11:43:38 CST 2021" |
- description | 通知描述 | 【12.13 国家公祭日】南京大屠杀 - 勿忘历史,吾辈自强! " |
批量已读类型的通知
GET /notifications/make-read/<type>?apiKey=<Key>
将制定类型的通知标记为已读
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
type | 要已读的通知类型 | point |
| 通知类型: | |
Type | 说明 |
---|---|
point | 积分 |
commented | 收到的回帖 |
reply | 收到的回复 |
at | 提及我的 |
following | 我关注的 |
broadcast | 同城 |
sys-announce | 系统 |
请求示例:
curl --location --request GET 'https://fishpi.cn/notifications/make-read/point?apiKey=oXTQTD4ljryXoIxa1lySgEl6aObrIhSS' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'
已读所有消息
GET /notifications/all-read?apiKey=<Key>
将全部通知标记为已读
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
type | 要已读的通知类型 | point |
请求示例:
curl --location --request GET 'https://fishpi.cn/notifications/all-read?apiKey=oXTQTD4ljryXoIxa1lySgEl6aObrIhSS' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'
聊天室
连接聊天室
请注意:下方连接聊天室的内容已被废弃,请跳转至: 【聊天室 API】集群式摸鱼派聊天室 Beta 上线啦!
WSS /chat-room-channel?apiKey=<Key>
聊天室接收消息的WebSocket
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
事件处理:
Event | 说明 |
---|---|
open | 连接打开,定时每 3 分钟发送-hb- |
close | 连接关闭 |
error | 连接出错,需重新连接 |
message | 收到消息,内容为 JSON 字符串,需自行序列号 |
消息结构:
Key | 所属类型 | 说明 | 示例 |
---|---|---|---|
type | all | 消息类型online(在线) / discussChanged(话题变更) / revoke(撤回) / msg(聊天) / redPacketStatus(红包领取) | msg |
在线消息 | |||
onlineChatCnt | online | 在线人数 | 35 |
users | online | 在线用户列表 | [ ... ] |
- homePage | online | 用户首页 | https://fishpi.cn/member/... |
- userAvatarURL | online | 用户头像 | https://... |
- userName | online | 用户名 | adlered |
话题变更 | |||
- newDiscuss | discussChanged | 新的话题内容 | 今天上班吗 |
聊天消息 | |||
oId | msg | 消息 Id | 1640074796395 |
time | msg | 发布时间 | 2021-12-21 16:19:56 |
client | msg | 客户端来源 | Web/Latest |
userName | msg | 用户名 | adlered |
userNickname | msg | 昵称 | 陈辉 |
userAvatarURL | msg | 用户头像 | https://... |
sysMetal | msg | 徽章列表, JSON字符串 | { ... } |
- list | msg - sysMetal | 徽章列表数据 | [ ... ] |
-- attr | msg - sysMetal | 徽章数据,包含徽章图地址url , 背景色 backcolor , 前景色 fontcolor |
url=https://...&backcolor=b91c22&fontcolor=ffffff |
-- name | msg - sysMetal | msg | 徽章名称 |
-- description - sysMetal | 徽章描述 | 摸鱼派官方开发组成员 | |
-- data | msg - sysMetal | 徽章数据 | 无 |
content | msg | 消息内容,HTML 格式,如果是红包,则是 JSON | +1 或 {...} |
- msg | msg - redPacket | 红包祝福语 | 摸鱼者,事竟成! |
- recivers | msg - redPacket | 红包接收者用户名,专属红包有效 | [ ... ] |
- msgType | msg - redPacket | 固定 redPacket | redPacket |
- money | msg - redPacket | 红包积分 | 32 |
- count | msg - redPacket | 红包个数 | 2 |
- type | msg - redPacket | 红包类型 | random |
- got | msg - redPacket | 已领取个数 | 1 |
- who | msg - redPacket | 已领取者信息 | [ ... ] |
-- userName | msg - redPacket | 用户名 | dannio |
-- avatar | msg - redPacket | 用户头像 | https://... |
-- userMoney - redPacket | msg | 领取到的积分 | 23 |
-- time | msg - redPacket | 领取时间 | 2021-12-21 16:26:43 |
md | msg | 消息内容,Markdown 格式,红包消息无此栏位 | ![image.png](https://...) |
撤回消息 | |||
oId | revoke | 撤回消息的 Id | 1640076642484 |
红包领取消息 | |||
oId | redPacketStatus | 消息 Id | 1640075201124 |
count | redPacketStatus | 红包个数 | 2 |
got | redPacketStatus | 已领取个数 | 1 |
whoGive | redPacketStatus | 发送者用户名 | adlered |
whoGot | redPacketStatus | 领取者用户名 | hewei |
聊天历史消息
GET /chat-room/more?apiKey=<Key>&page=<page>
获取更多聊天信息
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
page | 頁碼 | 1 |
请求示例:
curl --location --request GET 'https://fishpi.cn/chat-room/more?page=1&apiKey=5r1qeYe4tDx0No9uEpXA4rK2peczjZ40' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为 0 则密钥有效,为 -1 则密钥无效 | 0 |
msg | 错误信息 | |
data | 消息列表 | [ ... ] |
- oId | 消息 Id | 1640074796395 |
- time | 发布时间 | 2021-12-21 16:19:56 |
- userName | 用户名 | adlered |
- userNickname | 昵称 | 陈辉 |
- userAvatarURL | 用户头像 | https://... |
- client | 客户端来源 | Web/Latest |
- sysMetal | 徽章列表, JSON字符串 | { ... } |
-- list | 徽章列表数据 | [ ... ] |
--- attr | 徽章数据,包含徽章图地址url , 背景色 backcolor , 前景色 fontcolor |
url=https://...&backcolor=b91c22&fontcolor=ffffff |
--- name | 徽章名称 | Operator |
--- description | 徽章描述 | 摸鱼派官方开发组成员 |
--- data | 徽章数据 | 无 |
- content | 消息内容,HTML 格式,如果是红包,则是 JSON | +1 或 {...} |
-- msg | 红包祝福语 | 摸鱼者,事竟成! |
-- recivers | 红包接收者用户名,专属红包有效 | [ ... ] |
-- msgType | 固定 redPacket | redPacket |
-- money | 红包积分 | 32 |
-- count | 红包个数 | 2 |
-- type | 红包类型 | random |
-- got | 已领取个数 | 1 |
-- who | 已领取者信息 | [ ... ] |
--- userName | 用户名 | dannio |
--- avatar | 用户头像 | https://... |
--- userMoney | 领取到的积分 | 23 |
--- time | 领取时间 | 2021-12-21 16:26:43 |
GET /chat-room/getMessage
通过聊天消息的oId获取前后消息,避免重复的问题,也可以用于快捷跳转至某条消息
注意:使用本接口必须已经登录或填写正确的apiKey,否则将返回401
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
oId | 消息oId | 1650609438569 |
size | 显示消息个数(不包括当mode为0时实际个数乘以2) | 25 |
mode | mode = 0 显示本条及之前、之后的消息mode = 1 显示本条及之前的消息mode = 2 显示本条及之后的消息 | 0 |
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为 0 则密钥有效,为 -1 则密钥无效 | 0 |
msg | 错误信息 | |
data | 消息列表 | [ ... ] |
- oId | 消息 Id | 1640074796395 |
- time | 发布时间 | 2021-12-21 16:19:56 |
- userName | 用户名 | adlered |
- userNickname | 昵称 | 陈辉 |
- userAvatarURL | 用户头像 | https://... |
- sysMetal | 徽章列表, JSON字符串 | { ... } |
-- list | 徽章列表数据 | [ ... ] |
--- attr | 徽章数据,包含徽章图地址url , 背景色 backcolor , 前景色 fontcolor |
url=https://...&backcolor=b91c22&fontcolor=ffffff |
--- name | 徽章名称 | Operator |
--- description | 徽章描述 | 摸鱼派官方开发组成员 |
--- data | 徽章数据 | 无 |
- content | 消息内容,HTML 格式,如果是红包,则是 JSON | +1 或 {...} |
-- msg | 红包祝福语 | 摸鱼者,事竟成! |
-- recivers | 红包接收者用户名,专属红包有效 | [ ... ] |
-- msgType | 固定 redPacket | redPacket |
-- money | 红包积分 | 32 |
-- count | 红包个数 | 2 |
-- type | 红包类型 | random |
-- got | 已领取个数 | 1 |
-- who | 已领取者信息 | [ ... ] |
--- userName | 用户名 | dannio |
--- avatar | 用户头像 | https://... |
--- userMoney | 领取到的积分 | 23 |
--- time | 领取时间 | 2021-12-21 16:26:43 |
发送消息
POST /chat-room/send
发送聊天室消息
请求:
* 如果是发送红包,则需要发送
[redpacket]{...}[/redpacket]
的格式
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
client | 格式:标识/版本 标识必须为:Web PC Mobile Windows macOS iOS Android Extension IDEA Chrome Edge VSCode Python Golang Linux IceNet ElvesOnline Harmony Other 版本允许使用字符:中文、大小写英文、数字、英文句号、英文横线、空格,最大32字符,超过则自动截断 |
Windows/V1.0.0 |
content | 消息正文(支持Markdown格式)。 | ... 或 [redpacket]{...}[/redpacket] * |
- msg | 红包祝福语 | 摸鱼者,事竟成! |
- money | 红包包含积分,如果是平分红包,则是单个红包积分 | 32 |
- count | 红包个数 | 2 |
- recivers | 接收者用户名列表,专属红包有效 | [ ... ] |
- type | 红包类型,random(拼手气红包), average(平分红包),specify(专属红包),heartbeat(心跳红包),rockPaperScissors(猜拳红包) | random |
- gesture | 猜拳红包必须参数,表示发送者出招,0 = 石头,1 = 剪刀,2 = 布 | 0 |
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为 0 则密钥有效,为 -1 则密钥无效 | 0 |
撤回消息
DELETE /chat-room/revoke/<oId>
撤回聊天室消息(限制用户每24小时一次,管理员无限次)
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
oId | 消息 Id | 1640078407444 |
请求示例:
curl --location --request DELETE 'https://fishpi.cn/chat-room/revoke/1640078407444' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36' \
--header 'Content-Type: application/json' \
--data-raw '{
"apiKey":"oXTQTD4ljryXoIxa1lySgEl6aObrIhSS"
}'
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为 0 则密钥有效,为 -1 则密钥无效 | 0 |
msg | 错误消息 | 撤回成功。 |
获取消息 Markdown
GET /cr/raw/<oId>
查看聊天室消息的 Markdown 原文,引用时使用。
请求:
Key | 说明 | 示例 |
---|---|---|
oId | 消息 Id | 1641290717190 |
请求示例:
curl --location --request GET 'https://fishpi.cn/cr/raw/1641290717190' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36' \
响应示例:
<img alt="trollface" class="emoji" src="https://file.fishpi.cn/vditor/dist/images/emoji/trollface.png" title="trollface" />
<!-- Generated by Rhythm (https://github.com/csfwff/rhythm) in 1ms, 2022/01/04 18:07:36 -->
打开红包
POST /chat-room/red-packet/open
拆开聊天室红包
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
oId | 消息 Id | 1640078407444 |
gesture | 打开猜拳红包必须参数,表示领取者出招 | 0 |
请求示例:
curl --location --request POST 'https://fishpi.cn/chat-room/red-packet/open' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36' \
--header 'Content-Type: application/json' \
--data-raw '{
"apiKey":"5r1qeYe4tDx0No9uEpXA4rK2peczjZ40",
"oId":"1640075201124"
}'
响应:
Key | 说明 | 示例 |
---|---|---|
recivers | 红包接收者用户名列表,专属红包有效 | [ ... ] |
who | 已打开红包的用户 | [ ... ] |
- userName | 用户名 | dannio |
- avatar | 用户头像 | https://... |
- userMoney | 领取到的积分 | 23 |
- time | 领取时间 | 2021-12-21 16:26:43 |
info | 红包信息 | { ... } |
- msg | 玩的就是心跳! | |
- userName | 发送者用户名 | hewei |
- userAvatarURL | 发送者头像 | https://... |
- count | 红包个数 | 2 |
- got | 已领取个数 | 2 |
- gesture | 猜拳红包参数,表示发送者出招,0 = 石头,1 = 剪刀,2 = 布 | 0 |
获取表情包
POST /api/cloud/get
从云获取指定 Key 内容,这里用于获取用户表情包
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
gameId | 数据 Id | emojis |
请求示例:
curl --location --request POST 'https://fishpi.cn/api/cloud/get' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36' \
--header 'Content-Type: application/json' \
--data-raw '{
"apiKey":"oXTQTD4ljryXoIxa1lySgEl6aObrIhSS",
"gameId":"emojis"
}'
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为 0 则密钥有效,为 -1 则密钥无效 | 0 |
data | 数据字符串,表情包内容为表情地址列表 JSON 字符串 | ["url1", "url2"] |
同步表情包
POST /api/cloud/sync
同步指定 Key 数据到云,这里用于同步用户表情包
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
gameId | 数据 Id | emojis |
data* | 数据字符串,表情包内容为表情地址列表 JSON 字符串 | ["url1", "url2"] |
*此处数据需确保符合格式,否则会影响其他客户端正常解析数据。
*列表为覆盖式上传,请自行获取旧表情包列表,追加提交。
请求示例:
curl --location --request POST 'https://fishpi.cn/api/cloud/get' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36' \
--header 'Content-Type: application/json' \
--data-raw '{
"apiKey":"oXTQTD4ljryXoIxa1lySgEl6aObrIhSS",
"gameId":"emojis",
"data":"[\"url1\", \"url2\"]"
}'
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为 0 则密钥有效,为 -1 则密钥无效 | 0 |
msg | 错误消息 |
获取禁言中成员列表(思过崖)
GET /chat-room/si-guo-list
图床
上传图片
POST /upload
上传图片或视频
限制
- 大小:<=20M,
- 文件格式:jpg, jpeg, png, gif, mp4
- 请求类型:multipart/form-data
请求:
Key | 说明 | 示例 |
---|---|---|
file[] | 文件 | |
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为 0 则密钥有效,为 -1 则密钥无效 | 0 |
msg | 错误消息 | |
data | 上传结果 | { ... } |
- errFiles | 上传失败的文件名列表 | [ '文件名.jpg' ] |
- succMap | 上传成功的文件信息 | { ... } |
--<文件名> |
文件地址 | https://... |
帖子
发贴
POST /article
发表帖子
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
其它参数 | 自行发帖抓包 |
更新贴子
PUT /article/<id>
更新帖子
请求:
Key | 说明 | 示例 |
---|---|---|
id | 帖子 Id | ... |
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
其它参数 | 自行发帖抓包 |
帖子列表
特别注意
所有帖子列表API都支持翻页功能,可在请求后加入参数 ?p=<Page>
自定义页码。
所有帖子列表APi都支持定义每页显示文章数量,可在请求后加入参数 ?size=<Size>
自定义数量。
最近
- 最近帖子列表:
GET /api/articles/recent
- 热门帖子列表:
GET /api/articles/recent/hot
- 点赞帖子列表:
GET /api/articles/recent/good
- 最近回复帖子列表:
GET /api/articles/recent/reply
按标签
- 列出帖子:
GET /api/articles/tag/<标签URI>
- 按热门程度列出帖子:
GET /api/articles/tag/<标签URI>/hot
- 按点赞列出帖子:
GET /api/articles/tag/<标签URI>/good
- 按最近回复列出帖子:
GET /api/articles/tag/<标签URI>/reply
- 按优选列出帖子:
GET /api/articles/tag/<标签URI>/perfect
注:标签URI可在点开某个标签的页面后,在URL中提取,例如系统公告的标签URI为 announcement
。
按领域
- 列出帖子:
GET /api/articles/domain/<领域URI>
注:领域URI与标签URI同理,都可以从领域的页面的URL中提取。
响应(帖子列表通用):
Key | 说明 | 示例 |
---|---|---|
code | 为 0 则密钥有效,为 -1 则密钥无效 | 0 |
msg | 错误消息 | |
articleTitle | 文章标题 | |
articleTags | 文章标签 | |
articlePreviewContent | 文章简略文 | |
articleAuthor | 文章作者信息 | |
还有很多参数,不难理解,大家先自己悟,我有时间再更新 |
获取指定帖子
获取指定帖子的评论、文章内容、目录、点赞数量等。
GET /api/article/<文章ID>?apiKey=<Key>
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
请求示例:
curl --location --request GET 'https://fishpi.cn/api/article/1636516552191?apiKey=oXTQTD4ljryXoIxa1lySgEl6aObrIhSS'
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36' \
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为 0 则密钥有效,为 -1 则密钥无效 | 0 |
msg | 错误消息 | |
data | 帖子数据 | {...} |
- article | 帖子数据 | {...} |
-- articleTitleEmoj | 文章标题 | 摸鱼派社区开放 API 使用文档 V2.0.0 |
-- articleTitleEmojUnicode | 文章标题 | 摸鱼派社区开放 API 使用文档 V2.0.0 |
-- articleTitle | 文章标题 | 摸鱼派社区开放 API 使用文档 V2.0.0 |
-- articleCreateTimeStr | 文章创建时间字符串 | 2021-11-10 11:55:52 |
-- articleCreateTime | 文章创建时间 | Wed Nov 10 11:55:52 CST 2021 |
-- articlePermalink | 文章固定链接 | /article/1636516552191 |
-- timeAgo | 发布时间简写 | 5 个月前 |
-- articleUpdateTimeStr | 最后更新时间 | 2022-04-28 18:11:30 |
-- articleUpdateTime | 文章更新时间 | Thu Apr 28 18:11:30 CST 2022 |
-- articleLatestCmtTime | 文章最后修改时间 | Thu Apr 28 14:32:40 CST 2022 |
-- articleType | 文章类型,0 = 帖子,1 = 机要,2 = 同城广播,3 = 思绪,5 = 问答 | 0 |
-- articleStickRemains | 置顶序号 | 0 |
-- articleStick | 是否置顶 | 0 |
-- articleViewCount | 文章浏览数 | 2176 |
-- articleThankCnt | 文章感谢数 | 7 |
-- thankedCnt | 文章感谢数 | 7 |
-- articleCommentCount | 文章评论数 | 27 |
-- articleBadCnt | 反对数 | 0 |
-- articleGoodCnt | 赞同数 | 3 |
-- articleWatchCnt | 关注数 | 1 |
-- articleCollectCnt | 收藏数 | 2 |
-- articleHeat | 文章点击数 | 1 |
-- articleAnonymousView | 文章匿名浏览量 | 0 |
-- articleViewCntDisplayFormat | 文章浏览量简写 | 2.2K |
-- articleShowInList | 是否在列表展示 | 1 |
-- articlePerfect | 文章是否优选 | 0 |
-- articleCommentable | 文章是否启用评论 | true |
-- rewarded | 是否开启打赏 | false |
-- rewardedCnt | 打赏人数 | 0 |
-- articleRewardPoint | 文章打赏积分 | 0 |
-- articleQnAOfferPoint | 悬赏积分 | 0 |
-- offered | 是否悬赏 | false |
-- articleAnonymous | 是否匿名 | 0 |
-- articleAuthorName | 作者用户名 | adlered |
-- isFollowing | 是否已关注 | false |
-- isWatching | 是否关注 | false |
-- isMyArticle | 是否是我的文章 | false |
-- thanked | 是否感谢 | true |
-- articleEditorType | 编辑器类型 | 0 |
-- articleAudioURL | 文章音频地址 | |
-- articleToC | 文章目录渲染后的 HTML | ... |
-- articlePreviewContent | 文章预览内容 | ... |
-- articleContent | 文章内容 HTML | <...> |
-- articleThumbnailURL | 文章缩略图 | |
-- articleImg1URL | 第一张图片地址 | |
-- articleVote | 文章点赞数 | 0 |
-- articleRandomDouble | 文章随机数 | 0.33495039072745036 |
-- articleAuthorIntro | 作者签名 | 业余开源爱好者 |
-- articleCity | 发布地址 | 北京 |
-- articleIP | 发布者 IP | 114.249.118.167 |
-- articleAuthorId | 发布者Id | "1630399192600" |
-- articleAuthorURL | 作者首页地址 | https://github.com/adlered |
-- articleAuthor | 作者用户信息 | {...} |
-- articleAuthorThumbnailURL210 | 作者头像缩略图 | https:/... |
-- articleAuthorThumbnailURL48 | 作者头像缩略图 | https://... |
-- articleAuthorThumbnailURL20 | 作者头像缩略图 | https://... |
-- articlePushOrder | 推送 Email 推送顺序 | 0 |
-- articleTags | 文章标签 | 系统公告,摸鱼派,API |
-- oId | 文章id | 1636516552191 |
-- articleTagObjs | 文章标签信息 | [...] |
-- articleRewardContent | 打赏内容 | <...> |
-- redditScore | reddit分数 | 6283.477121254719 |
-- articleStatus | 文章状态, 0 = 正常,1 = 封禁,2 = 锁定 | 0 |
-- pagination | 分页信息 | {...} |
--- paginationPageCount | 评论分页数 | 1 |
--- paginationPageNums | 建议分页页码 | [ 1 ] |
-- discussionViewable | 评论是否可见 | true |
-- articleRevisionCount | 文章修改次数 | 37 |
-- articleLatestCmterName | 文章最后评论者 | iwpz |
-- cmtTimeAgo | 最后评论时间简写 | 5 天前 |
-- articleLatestCmtTimeStr | 文章最后评论时间 | 2022-04-28 14:32:40 |
-- articleComments | 文章的评论 | [...] |
-- articleNiceComments | 文章最佳评论 | [...] |
标签信息
Key | 说明 | 示例 |
---|---|---|
oId | 标签 ID | 1630652039941 |
tagTitle | 标签名 | 有趣 |
tagDescription | 标签描述 | |
tagStatus | 标签状态, 0 = 正常,1 = 封禁 | 0 |
tagURI | 标签地址 | %e6%9c%89%e8%b6%a3 |
tagIconPath | icon 图地址 | https://... |
tagCommentCount | 回帖计数 | 164 |
tagReferenceCount | 引用计数 | 15 |
tagFollowerCount | 关注数 | 477 |
tagBadCnt | 反对数 | 0 |
tagGoodCnt | 点赞数 | 0 |
tagLinkCount | 标签相关链接计数 | 0 |
tagSeoTitle | 标签 SEO 标题 | 有趣 |
tagSeoDesc | 标签 SEO 描述 | |
tagSeoKeywords | 标签关键字 | 有趣 |
tagCSS | 标签自定义 CSS | |
tagAd | 标签广告内容 | |
tagShowSideAd | 是否展示广告,0 = 是,1 = 否 | 0 |
tagRandomDouble | 标签随机数 | 0.9355077930993895 |
评论与作者用户信息
Key | 说明 | 示例 |
---|---|---|
userOnlineFlag | 用户是否在线 | false |
onlineMinute | 用户在线时长 | 651 |
userPointStatus | 是否公开积分列表, 0 = 公开,1 = 不公开 | 0 |
userFollowerStatus | 是否公开关注者列表, 0 = 公开,1 = 不公开 | 0 |
userCommentStatus | 是否公开回帖列表, 0 = 公开,1 = 不公开 | 0 |
userOnlineStatus | 是否公开在线状态, 0 = 公开,1 = 不公开 | 0 |
userUAStatus | 是否公开 UA 信息, 0 = 公开,1 = 不公开 | 0 |
userWatchingArticleStatus | 是否公开关注帖子列表 | 0 |
userFollowingTagStatus | 是否公开关注标签列表 | 0 |
userJoinPointRank | 是否加入积分排行 | 0 |
userJoinUsedPointRank | 是否加入消费排行 | 0 |
userFollowingArticleStatus | 是否公开收藏帖子列表 | 0 |
userArticleStatus | 是否公开帖子列表 | 0 |
userBreezemoonStatus | 是否公开清风明月列表 | 0 |
userKeyboardShortcutsStatus | 是否启用键盘快捷键 | 1 |
chatRoomPictureStatus | 是否聊天室图片自动模糊 | 1 |
userForwardPageStatus | 是否启用站外链接跳转页面 | 1 |
userCommentViewMode | 回帖浏览模式 | 1 |
userGuideStep | 用户完成新手指引步数 | 0 |
userCurrentCheckinStreakStart | 上次登录日期 | 20220413 |
userTags | 用户标签 | ...,... |
sysMetal | 用户徽章 | [...] |
userTimezone | 用户时区 | Asia/Shanghai |
userURL | 用户个人主页 | http://... |
userIndexRedirectURL | 自定义首页跳转地址 | |
userLatestArticleTime | 最近发帖时间 | 1646191348504 |
userTagCount | 标签计数 | 0 |
userNickname | 昵称 | 大白菜 |
userListViewMode | 回帖浏览模式, 0 = 传统, 1 = 实时 | 1 |
userLongestCheckinStreak | 最长连续签到 | 4 |
userAvatarType | 用户头像类型 | 2 |
userSubMailSendTime | 用户确认邮件发送时间 | 1645580075949 |
userUpdateTime | 用户最后更新时间 | 1650763072011 |
userSubMailStatus | 用户邮箱绑定状态 | 0 |
userLatestLoginTime | 用户最后登录时间 | 1650763072011 |
userAppRole | 应用角色 | 0 |
userAvatarViewMode | 头像查看模式 | 0 |
userStatus | 用户状态 | 0 |
userLongestCheckinStreakEnd | 用户上次最长连续签到日期 | 20220226 |
userLatestCmtTime | 上次回帖时间 | 1651195288787 |
userProvince | 用户省份 | 河北省 |
userCurrentCheckinStreak | 用户当前连续签到计数 | 1 |
userNo | 用户编号 | 4611 |
userAvatarURL | 用户头像 | https://... |
userLanguage | 用户语言 | zh_CN |
userCurrentCheckinStreakEnd | 上次签到日期 | 20220413 |
userReplyWatchArticleStatus | 是否回帖后自动关注帖子 | 1 |
userCheckinTime | 用户上次签到时间 | 1649835297813 |
userUsedPoint | 用户消费积分 | 805 |
userPoint | 用户积分 | 5264 |
userCommentCount | 用户回帖数量 | 41 |
userIntro | 用户个性签名 | |
userMobileSkin | 移动端主题 | mobile |
userListPageSize | 分页每页条目 | 60 |
oId | 用户 ID | 1645580042349 |
userName | 用户Id | 2516484465 |
userGeoStatus | 是否公开 IP 地理信息 | 0 |
userLongestCheckinStreakStart | 最长连续签到起始日 | 20220223 |
userSkin | 用户主题 | classic |
userNotifyStatus | 是否启用 Web 通知 | 0 |
userFollowingUserStatus | 公开关注用户列表 | 0 |
userArticleCount | 文章数 | 3 |
userRole | 用户角色 | 1630553360689 |
评论信息
Key | 说明 | 示例 |
---|---|---|
commentCreateTimeStr | 评论日期 | 2021-12-02 22:01:15 |
commentAuthorId | 评论作者 Id | 1630586509670 |
commentUA | 评论 UA | |
commentScore | 评论分数 | 0.549092369988321 |
commentCreateTime | 评论创建时间 | Thu Dec 02 22:01:15 CST 2021 |
commentAuthorURL | 评论作者 URL | https://my.hancel.org/about |
commentVote | 评论点赞数 | -1 |
timeAgo | 评论日期简写 | 4 个月前 |
commentOriginalCommentId | 评论原始oId | |
sysMetal | 徽章 | [...] |
commentGoodCnt | 点赞数 | 2 |
commentVisible | 评论是否可见 | 0 |
commentOnArticleId | 评论在文章中的 ID | 1638373310692 |
rewardedCnt | 感谢数 | 3 |
commentThankLabel | 感谢文案 | 确定赠送 15 积分给 imlinhanchao 以表谢意? |
commentSharpURL | 固定连接 | /article/1638373310692#1638453675866 |
commentAnonymous | 是否匿名 | 0 |
commentIP | 评论 ID | 58.152.85.25 |
commentReplyCnt | 回复数 | 0 |
oId | 评论ID | 1638453675866 |
commentContent | 评论内容 | <...> |
commentStatus | 评论状态 | 0 |
commenter | 评论者用户信息 | {...} |
paginationCurrentPageNum | 评论所在页码 | 1 |
commentAuthorName | 评论者用户名 | imlinhanchao |
commentThankCnt | 感谢数 | 3 |
commentBadCnt | 反对数 | 0 |
rewarded | 是否感谢了 | false |
commentAuthorThumbnailURL | 评论作者头像 | https://... |
commentAudioURL | 评论音频地址 | |
commentQnAOffered | 是否被采纳 | 0 |
获取指定用户的帖子列表
GET /api/user/{userName}/articles
请求:
Key | 说明 | 示例 |
---|---|---|
p | 页码(第几页) | 1 |
size | 每页显示多少条结果(可能由于部分用户权限设置,最终显示条数低于该结果,属正常情况) | 20 |
userName | 用户名(本参数为URL参数,请注意) | adler |
给文章点赞
POST /vote/up/article
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
dataId | 文章的oId | 1645002736006 |
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为0则成功 | 0 |
type | -1为点赞成功,0代表已经点过赞了,所以帮你取消了点赞 | -1 |
感谢文章
POST /article/thank?articleId={文章oId}
注意:文章oId在URL上传参,apiKey还是通过POST进行哦。
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为0则成功 | 0 |
获取帖子的评论列表
获取指定帖子的评论列表。
获取第一页时,data中会有articleNiceComment
,即优质回帖。
GET /api/comment/<文章ID>?apiKey=<Key>&p=<页数>
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
评论/回复
POST /comment
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
articleId | 文章的oId | 1645002736006 |
commentAnonymous | 是否匿名评论,是填写true,否填写false | false |
commentVisible | 是否仅楼主可见,是填写true,否填写false | false |
commentContent | 评论原文(Markdown格式) | hello world |
commentOriginalCommentId | (选填)如果是回复某个评论,传递此参数并填写值为要回复的评论的oId | 1646216549324 |
更新评论
PUT /comment/{评论oId}
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
articleId | 文章的oId | 1645002736006 |
commentAnonymous | 是否匿名评论,是填写true,否填写false | false |
commentVisible | 是否仅楼主可见,是填写true,否填写false | false |
commentContent | 评论原文(Markdown格式) | hello world |
给评论点赞
POST /vote/up/comment
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
dataId | 评论的oId | 1645002736006 |
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为0则成功 | 0 |
type | -1为点赞成功,0代表已经点过赞了,所以帮你取消了点赞 | -1 |
感谢评论
POST /comment/thank
注意:不能给自己点感谢!会报错,记得做处理哦。
另外,感谢是不能取消的,会扣除15积分送给对方。
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
commentId | 评论的oId | 1645002736006 |
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为0则成功 | 0 |
删除评论
POST /comment/{评论的oId}/remove
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为0则成功 | 0 |
获取帖子当前正在阅读的人数
POST /api/article/heat/{articleId}
注意:如果你注意到了
/article-channel
频道中有{"articleId":"1631779202219","type":"articleHeat","operation":"+"}
这种消息的时候,operation是加号代表又来了一个阅读的人,减号代表走了一个阅读的人,可以和本API进行结合,实时展示共同阅读人数
请求:
Key | 说明 | 示例 |
---|---|---|
articleId | 文章的oId | 1636516552191 |
响应:
Key | 说明 | 示例 |
---|---|---|
articleHeat | 阅读人数 | 1 |
清风明月
获取清风明月列表
GET /api/breezemoons
请求:
Key | 说明 | 示例 |
---|---|---|
p | 页码(第几页) | 1 |
size | 每页显示多少条结果(可能由于部分用户权限设置,最终显示条数低于该结果,属正常情况) | 20 |
请求示例:
curl --location --request GET 'https://fishpi.cn/api/breezemoons?p=1&size=20' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36' \
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为0则获取成功 | 0 |
breezemoons | 数据列表 | [ ... ] |
- breezemoonAuthorName | 发布者用户名 | |
- breezemoonUpdated | 最后更新时间 | |
- oId | 清风明月ID | |
- breezemoonCreated | 创建时间 | |
- breezemoonAuthorThumbnailURL48 | 发布者头像URL | |
- timeAgo | 发布时间 | |
- breezemoonContent | 正文 | |
- breezemoonCreateTime | 创建时间 | |
- breezemoonCity | 发布城市(可能为空,请注意做判断) |
发布清风明月
POST /breezemoon
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
breezemoonContent | 清风明月正文 | helloworld |
请求示例:
curl --location --request POST 'https://fishpi.cn/breezemoon' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36' \
--header 'Content-Type: application/json' \
--data-raw '{
"apiKey":"oXTQTD4ljryXoIxa1lySgEl6aObrIhSS",
"breezemoonContent":"helloworld"
}'
响应:
Key | 说明 | 示例 |
---|---|---|
code | 为 0 则成功 | 0 |
msg | 错误消息 |
获取指定用户的清风明月列表
GET /api/user/{userName}/breezemoons
请求:
Key | 说明 | 示例 |
---|---|---|
p | 页码(第几页) | 1 |
size | 每页显示多少条结果(可能由于部分用户权限设置,最终显示条数低于该结果,属正常情况) | 20 |
userName | 用户名(本参数为URL参数,请注意) | adlered |
私信
私信部分已重构
新版私信系统全部采用摸鱼派开放 API 进行请求,全动态(包括 Web 端),API 已全部开发完毕,但是 API 文档还得等等(没时间写),如果你需要重构私信系统,请先自行抓包哦~
敏感cāo作
永久注销删除用户
注意!使用本接口将抹除该用户在社区中的数据(部分关联数据保留)无法恢复。
该接口需要重复请求2次,第1次请求不会进行任何cāo作,仅进行提醒。
POST /settings/deactivate
请求:
Key | 说明 | 示例 |
---|---|---|
apiKey | 通用密钥 | oXTQTD4ljryXoIxa1lySgEl6aObrIhSS |
金手指
注意注意注意注意注意⚠️️️️️️️️️️️️️️️️️️
金手指接口用于将摸鱼派某些敏感接口提供给第三方接入,主要用于向摸鱼派上传游戏成绩、验证用户数据、给用户颁发勋章等功能。
这些接口普通用户无法使用!必须有专用的密钥才可以使用!如没有金手指使用权限,请跳过阅读此部分内容(申请金手指密钥请联系 @adlered )。
上传摸鱼大闯关关卡数据
POST /api/games/mofish/score
请求:
Key | 说明 | 示例 |
---|---|---|
goldFingerKey | game 类型的金手指密钥 |
省略 |
userName | 用户在摸鱼派的用户名 | adlered |
stage | 关卡数 | 10 |
time | 通过此关时间(毫秒级时间戳) | 1654486459786 |
查询用户最近登录的IP地址
POST /user/query/latest-login-ip
请求:
Key | 说明 | 示例 |
---|---|---|
goldFingerKey | query 类型的金手指密钥 |
省略 |
userName | 用户在摸鱼派的用户名 | adlered |
添加勋章
POST /user/edit/give-metal
请求:
Key | 说明 | 示例 |
---|---|---|
goldFingerKey | metal 类型的金手指密钥 |
省略 |
userName | 用户在摸鱼派的用户名 | adlered |
name | 勋章名称 | 测试勋章 |
description | 勋章描述 | XXX活动奖励勋章 |
attr | 勋章属性(请严格按照示例填写属性,backcolor为背景色,fontcolor为文字颜色) | url=[图标URL]&backcolor=0000ff&fontcolor=ffffff |
data | 勋章数据(暂时无需填写,留空即可) | 请留空 |
移除勋章
POST /user/edit/remove-metal
请求:
Key | 说明 | 示例 |
---|---|---|
goldFingerKey | metal 类型的金手指密钥 |
省略 |
userName | 用户在摸鱼派的用户名 | adlered |
name | 勋章名称 | 测试勋章 |
移除勋章(通过userId)
POST /user/edit/remove-metal-by-user-id
请求:
Key | 说明 | 示例 |
---|---|---|
goldFingerKey | metal 类型的金手指密钥 |
省略 |
userId | 用户在摸鱼派的oId | 1636516552191 |
name | 勋章名称 | 测试勋章 |
查询用户背包
POST /user/query/items
请求:
Key | 说明 | 示例 |
---|---|---|
goldFingerKey | item 类型的金手指密钥 |
省略 |
userName | 用户在摸鱼派的用户名 | adlered |
调整用户背包
POST /user/edit/items
请求:
Key | 说明 | 示例 |
---|---|---|
goldFingerKey | item 类型的金手指密钥 |
省略 |
userName | 用户在摸鱼派的用户名 | adlered |
item | 物品名称 | checkin2days |
sum | 物品数量,填写正数(如10)则发放指定数量物品,填写负数(如-10)则从背包中扣除指定数量物品,如物品数量不足则归零 | 10 |
调整用户积分
POST /user/edit/points
请求:
Key | 说明 | 示例 |
---|---|---|
goldFingerKey | point 类型的金手指密钥 |
省略 |
userName | 用户在摸鱼派的用户名 | adlered |
point | 积分,正数(例如100)为增加积分,负数(例如-50)为扣除积分 | 100 |
memo | 必填!请规范备注请求来源、原因、交易内容,如填写不够详细,将被取消使用point 类型金手指密钥的权限 |
请求来源:小冰游戏;原因:玩家adlered购买道具;交易内容:新手套装x1 |
获取用户活跃度
POST /user/liveness
获取指定用户的活跃度
请求:
Key | 说明 | 示例 |
---|---|---|
goldFingerKey | liveness 类型的金手指密钥 |
省略 |
userName | 用户名 | adlered |
响应:
Key | 说明 | 示例 |
---|---|---|
liveness | 活跃度 | 80.20 |
领取指定用户的昨日活跃奖励
POST /activity/yesterday-liveness-reward-api
为指定用户领取他的昨日活跃奖励
请求:
Key | 说明 | 示例 |
---|---|---|
goldFingerKey | liveness 类型的金手指密钥 |
省略 |
userName | 用户名 | adlered |
响应:
Key | 说明 | 示例 |
---|---|---|
sum | 领取了多少积分 | 80 |
api需求:获取用户实时活跃度
不是什么大事。就是我取apiKey的时候凭直觉用"apiKey"取了个null。debug完又凭眼瞎用"key"取了个null。原来是"Key"啊😭
!好家伙,这就去搞客户端