
语言 🇨🇳 简体中文
文档
入门
API 参考
备注
代理租户
聚合
审计日志
认证
批处理作业
从评论阻止
检查被阻止的评论
评论
用户评论
域配置
电子邮件模板
事件日志
动态帖子
标记评论
动图
标签
我的信息
审核
版主
通知计数
通知
页面互动
页面
待处理的 Webhook 事件
投票记录
投票
问题配置
问题结果
问题结果聚合
单点登录用户
订阅
租户每日使用情况
租户套餐
租户用户
租户
工单
翻译
上传图片
用户徽章进度
用户徽章
用户通知
用户在线状态
用户搜索
用户
Webhook
FastComments Swift SDK
这是 FastComments 的官方 Swift SDK。
FastComments API 的官方 Swift SDK
仓库
AI coding agents 
为您的编码代理提供 FastComments 所需的上下文——小部件、配置、Secure SSO、REST API 和 SDK:
npx skills add fastcomments/skills
兼容 Claude Code、Codex、Cursor、Copilot、Gemini,以及所有其他由 skills CLI 支持的代理。
Installation 
Swift Package Manager
在您的 Package.swift 文件中添加以下内容:
dependencies: [
.package(url: "https://github.com/fastcomments/fastcomments-swift.git", from: "3.1.2")
]
或者在 Xcode 中:
- File > Add Packages...
- 输入仓库 URL:
https://github.com/fastcomments/fastcomments-swift.git - 选择您想使用的版本
系统要求
- Swift 5.9+
- iOS 13.0+ / macOS 10.15+ / tvOS 13.0+ / watchOS 6.0+
Library Contents 
FastComments 的 Swift SDK 由多个模块组成:
-
客户端模块 - 用于 FastComments REST API 的客户端
- 为所有 API 模型提供完整的类型定义
- 包含验证(
DefaultAPI)、公共(PublicAPI)和审核(ModerationAPI)方法 - 完整的 async/await 支持
- 详见 client/README.md 获取详细的 API 文档
-
SSO 模块 - 服务器端单点登录实用工具
- 用于用户认证的安全令牌生成
- 支持简单和安全两种 SSO 模式
- 使用 CryptoKit 基于 HMAC-SHA256 的令牌签名
Quick Start 
使用公共 API
import FastCommentsSwift
// 获取页面的评论
do {
let response = try await PublicAPI.getCommentsPublic(
tenantId: "your-tenant-id",
urlId: "page-url-id"
)
print("Found \(response.comments?.count ?? 0) comments")
for comment in response.comments ?? [] {
print("Comment: \(comment.comment ?? "")")
}
} catch {
print("Error fetching comments: \(error)")
}
使用已认证 API
import FastCommentsSwift
// 在共享配置上设置您的 API 密钥(作为 x-api-key 头发送)
FastCommentsSwiftAPIConfiguration.shared.customHeaders["x-api-key"] = "your-api-key"
// 使用已认证 API 获取评论
do {
let response = try await DefaultAPI.getComments(
tenantId: "your-tenant-id",
options: .init(urlId: "page-url-id")
)
print("Total comments: \(response.count ?? 0)")
for comment in response.comments ?? [] {
print("Comment ID: \(comment.id ?? ""), Text: \(comment.comment ?? "")")
}
} catch {
print("Error: \(error)")
}
使用审查 API
import FastCommentsSwift
// 审核方法需要使用 `sso` 令牌进行授权(使用 FastCommentsSSO 生成,参见上面的 SSO 部分)。
do {
let response = try await ModerationAPI.getApiComments(
options: .init(
page: 0,
count: 30,
sso: ssoToken
)
)
print("Found \(response.comments.count) comments to moderate")
for comment in response.comments {
print("Comment ID: \(comment.id), Text: \(comment.commentHTML)")
}
} catch {
print("Error: \(error)")
}
使用 SSO 进行身份验证
安全 SSO(推荐用于生产环境)
import FastCommentsSwift
let apiKey = "your-api-key"
// 创建安全的 SSO 用户数据(仅限服务器端!)
let userData = SecureSSOUserData(
id: "user-123", // User ID
email: "user@example.com", // Email
username: "johndoe", // Username
avatar: "https://example.com/avatar.jpg" // Avatar URL
)
// 生成 SSO 令牌
do {
let sso = try FastCommentsSSO.createSecure(apiKey: apiKey, secureSSOUserData: userData)
let token = try sso.createToken()
print("SSO Token: \(token ?? "")")
// 将此令牌传递给前端进行身份验证
} catch {
print("Error creating SSO token: \(error)")
}
简单 SSO(用于开发/测试)
import FastCommentsSwift
// 创建简单的 SSO 用户数据(无需 API 密钥)
let userData = SimpleSSOUserData(
username: "johndoe",
email: "user@example.com",
avatar: "https://example.com/avatar.jpg"
)
// 生成简单 SSO 令牌
let sso = FastCommentsSSO.createSimple(simpleSSOUserData: userData)
do {
let token = try sso.createToken()
print("Simple SSO Token: \(token ?? "")")
} catch {
print("Error creating SSO token: \(error)")
}
API Clients 
FastComments SDK 提供了三个 API 客户端:
PublicAPI - 客户端安全方法
PublicAPI 包含可安全从客户端代码(iOS/macOS 应用)调用的方法。这些方法:
- 不需要 API 密钥
- 可以使用 SSO 令牌进行身份验证
- 按用户/设备进行限流
- 适用于面向最终用户的应用程序
示例用例:在 iOS 应用中获取和创建评论
DefaultAPI - 服务器端方法
DefaultAPI 包含需要 API 密钥的已认证方法。这些方法:
- 需要您的 FastComments API 密钥
- 只能从服务器端代码调用
- 提供对您的 FastComments 数据的完整访问
- 按租户进行限流
示例用例:管理操作、大批量数据导出、用户管理
ModerationAPI - 版主仪表盘方法
ModerationAPI 提供了一个功能丰富的实时快速审核 API 套件。每个 ModerationAPI 方法都接受一个 sso 参数,并且可以通过 SSO 或 FastComments.com 会话 Cookie 进行身份验证。
示例用例:为您社区的版主构建审核体验
重要提示:切勿在客户端代码中暴露您的 API 密钥。API 密钥应仅在服务器端使用。
Making API Calls 
Swift SDK 使用现代的 async/await 语法进行所有 API 调用:
let response = try await PublicAPI.getCommentsPublic(
tenantId: "your-tenant-id",
urlId: "page-url-id"
)
Common Issues 
401 未授权错误
如果在使用已认证的 API 时遇到 401 错误:
- 检查您的 API 密钥:确保使用来自 FastComments 仪表板的正确 API 密钥
- 验证租户 ID:确保租户 ID 与您的账户匹配
- API 密钥格式:API 密钥应在共享配置中设置为
x-api-key头部:
FastCommentsSwiftAPIConfiguration.shared.customHeaders["x-api-key"] = "YOUR_API_KEY"
- 使用错误的 API:确保在已认证调用中使用
DefaultAPI(而不是PublicAPI)
SSO 令牌问题
如果 SSO 令牌无法正常工作:
- 在生产环境中使用安全模式:始终使用
FastCommentsSSO.createSecure()并传入您的 API 密钥进行生产环境部署 - 仅限服务器端:在服务器上生成安全的 SSO 令牌,切勿将 API 密钥暴露给客户端
- 检查用户数据:确保提供所有必填字段(id、email、username)
- 令牌过期:安全的 SSO 令牌包含时间戳,可能会过期。根据需要生成新的令牌。
SSL/TLS 错误
如果遇到 SSL/TLS 错误:
- 确保您的应用的 Info.plist 允许对 fastcomments.com 的 HTTPS 连接
- 检查是否未使用可能阻止连接的 App Transport Security 异常
Notes 
广播 ID
你会看到在某些 API 调用中需要传入 broadcastId。当你接收到事件时,会返回该 ID,这样如果你打算在客户端乐观地应用更改(你很可能会这么做,因为它能提供最佳体验),就可以知道要忽略该事件。请在此处传入一个 UUID。该 ID 应该足够唯一,以避免在一次会话中出现两次。
let broadcastId = UUID().uuidString
createAgentTenant 
创建一个新的 AI 代理试用账户,无需人工注册。调用此接口不需要 API 密钥。
响应中包含租户 ID、可立即用于 REST API 和 MCP 服务器的 API 密钥,以及一个认领 URL。将该认领 URL 提供给您为之工作的人员:在登录 FastComments 后打开该链接即可将账户关联到他们。未认领的账户及其密钥将在创建后 72 小时内被删除。在认领之前,账户拥有标准的试用限制。
Response
Example

aggregate 
聚合文档,通过对文档进行分组(如果提供了 groupBy)并执行多项操作来实现。支持不同的操作(例如 sum、countDistinct、avg 等)。
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| parentTenantId | string | query | No | |
| includeStats | boolean | query | No |
响应
示例

getAuditLogs 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | 要读取审计日志的租户。 |
| limit | integer | query | No | 返回多少条日志。最大 10000,默认 1000。 |
| skip | integer | query | No | 要跳过的日志数量,用于分页。 |
| order | string | query | No | 事件时间的排序方向。默认 DESC(最新的在前)。 |
| after | integer | query | No | |
| before | integer | query | No | |
| username | string | query | No | 仅返回此用户名执行的事件。 |
| ip | string | query | No | 仅返回来自此 IP 地址的事件。 |
| crudType | string | query | No | 仅返回此类型的事件:c、r、u、d 或 login。 |
| resourceName | string | query | No | 仅返回此资源的事件,例如 User 或 Moderator。 |
| targetId | string | query | No | 仅返回受影响对象具有此 ID 的事件。 |
| target | string | query | No | 对受影响对象的标签进行不区分大小写的子字符串匹配,例如用户名或电子邮件。 |
| includeManagedTenants | boolean | query | No | 还返回此租户管理的租户的事件。 |
响应
示例

logoutPublic 
响应
示例

getBatchJob 
状态、进度以及完成后批处理作业的结果。
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
示例

getBatchJobs 
The tenant's batch jobs (imports, exports, page migrations...), newest first.
Parameters
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| type | string | query | 否 | 仅此类型的作业,例如 migrate-pages。 |
| status | string | query | 否 | 仅此状态的作业:requested、running、success 或 failed。 |
| skip | integer | query | 否 | 要跳过的作业数量,用于分页。 |
Response
Returns: GetBatchJobsAPIResponse
Example

blockFromCommentPublic 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| sso | string | query | 否 |
响应
返回: BlockSuccess
示例

unBlockCommentPublic 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| sso | string | query | 否 |
响应
返回: UnblockSuccess
示例

checkedCommentsForBlocked 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentIds | string | query | 是 | 以逗号分隔的评论 id 列表。 |
| sso | string | query | 否 |
响应
返回: CheckBlockedCommentsResponse
示例

blockUserFromComment 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| userId | string | query | 否 | |
| anonUserId | string | query | 否 |
响应
返回: BlockSuccess
示例

createCommentPublic 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| urlId | string | query | 是 | |
| broadcastId | string | query | 是 | |
| sessionId | string | query | 否 | |
| sso | string | query | 否 | |
| locale | string | query | 否 |
响应
返回:SaveCommentsResponseWithPresence
示例

deleteComment 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| id | string | path | Yes | |
| contextUserId | string | query | No | |
| isLive | boolean | query | No |
响应
示例

deleteCommentPublic 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| commentId | string | path | 是 | |
| broadcastId | string | query | 是 | |
| editKey | string | query | 否 | |
| sso | string | query | 否 |
响应
返回: PublicAPIDeleteCommentResponse
示例

deleteCommentVote 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| commentId | string | path | Yes | |
| voteId | string | path | Yes | |
| urlId | string | query | Yes | |
| broadcastId | string | query | Yes | |
| editKey | string | query | No | |
| sso | string | query | No |
响应
示例

flagComment 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| userId | string | query | 否 | |
| anonUserId | string | query | 否 |
响应
示例

getComment 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
示例

getComments 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| page | integer | query | 否 | |
| limit | integer | query | 否 | |
| skip | integer | query | 否 | |
| asTree | boolean | query | 否 | |
| skipChildren | integer | query | 否 | |
| limitChildren | integer | query | 否 | |
| maxTreeDepth | integer | query | 否 | |
| urlId | string | query | 否 | |
| userId | string | query | 否 | |
| anonUserId | string | query | 否 | |
| contextUserId | string | query | 否 | |
| hashTag | string | query | 否 | |
| parentId | string | query | 否 | |
| direction | string | query | 否 | |
| fromDate | integer | query | 否 | |
| toDate | integer | query | 否 |
响应
示例

getCommentsPublic 
req tenantId urlId
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| urlId | string | query | Yes | |
| page | integer | query | No | |
| direction | string | query | No | |
| sso | string | query | No | |
| skip | integer | query | No | |
| skipChildren | integer | query | No | |
| limit | integer | query | No | |
| limitChildren | integer | query | No | |
| countChildren | boolean | query | No | |
| fetchPageForCommentId | string | query | No | |
| includeConfig | boolean | query | No | |
| countAll | boolean | query | No | |
| includei10n | boolean | query | No | |
| locale | string | query | No | |
| modules | string | query | No | |
| isCrawler | boolean | query | No | |
| includeNotificationCount | boolean | query | No | |
| asTree | boolean | query | No | |
| maxTreeDepth | integer | query | No | |
| useFullTranslationIds | boolean | query | No | |
| parentId | string | query | No | |
| searchText | string | query | No | |
| hashTags | array | query | No | |
| userId | string | query | No | |
| customConfigStr | string | query | No | |
| afterCommentId | string | query | No | |
| beforeCommentId | string | query | No | |
| questionId | string | query | No | |
| questionValue | integer | query | No |
响应
返回: GetCommentsResponseWithPresencePublicComment
示例

getCommentText 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| commentId | string | path | 是 | |
| editKey | string | query | 否 | |
| sso | string | query | 否 |
响应
Returns: PublicAPIGetCommentTextResponse
示例

getCommentVoteUserNames 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| commentId | string | path | 是 | |
| dir | integer | query | 是 | |
| sso | string | query | 否 |
响应
返回: GetCommentVoteUserNamesSuccessResponse
示例

lockComment 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| commentId | string | path | 是 | |
| broadcastId | string | query | 是 | |
| sso | string | query | 否 |
响应
返回: APIEmptyResponse
示例

pinComment 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| commentId | string | path | 是 | |
| broadcastId | string | query | 是 | |
| sso | string | query | 否 |
响应
返回: ChangeCommentPinStatusResponse
示例

saveComment 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| isLive | boolean | query | No | |
| doSpamCheck | boolean | query | No | |
| sendEmails | boolean | query | No | |
| populateNotifications | boolean | query | No |
响应
示例

saveCommentsBulk 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| isLive | boolean | query | No | |
| doSpamCheck | boolean | query | No | |
| sendEmails | boolean | query | No | |
| populateNotifications | boolean | query | No |
响应
返回:[SaveCommentsBulkResponse]
示例

setCommentText 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| commentId | string | path | 是 | |
| broadcastId | string | query | 是 | |
| editKey | string | query | 否 | |
| sso | string | query | 否 |
响应
返回: PublicAPISetCommentTextResponse
示例

translateComments 
将给定的评论翻译为小部件的语言环境。仅在匹配的小部件自定义规则将“评论翻译”设置为自动或手动时可用。
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| urlId | string | query | 是 | |
| sso | string | query | 否 | |
| locale | string | query | 否 |
响应
Returns: CommentTranslationsResponse
示例

unBlockUserFromComment 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| userId | string | query | 否 | |
| anonUserId | string | query | 否 |
响应
示例

unFlagComment 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| userId | string | query | 否 | |
| anonUserId | string | query | 否 |
响应
示例

unLockComment 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| commentId | string | path | 是 | |
| broadcastId | string | query | 是 | |
| sso | string | query | 否 |
响应
返回: APIEmptyResponse
示例

unPinComment 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| commentId | string | path | 是 | |
| broadcastId | string | query | 是 | |
| sso | string | query | 否 |
响应
返回:ChangeCommentPinStatusResponse
示例

updateComment 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| contextUserId | string | query | 否 | |
| doSpamCheck | boolean | query | 否 | |
| isLive | boolean | query | 否 |
响应
返回: APIEmptyResponse
示例

voteComment 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| commentId | string | path | Yes | |
| urlId | string | query | Yes | |
| broadcastId | string | query | Yes | |
| sessionId | string | query | No | |
| sso | string | query | No |
响应
返回:VoteResponse
示例

getCommentsForUser 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| userId | string | query | 否 | |
| direction | string | query | 否 | |
| repliesToUserId | string | query | 否 | |
| page | number | query | 否 | |
| includei10n | boolean | query | 否 | |
| locale | string | query | 否 | |
| isCrawler | boolean | query | 否 |
响应
示例

addDomainConfig 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
响应
示例

deleteDomainConfig 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| domain | string | path | 是 |
响应
返回: DeleteDomainConfigResponse
示例

getDomainConfig 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| domain | string | path | 是 |
响应
示例

getDomainConfigs 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
响应
示例

patchDomainConfig 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| domainToUpdate | string | path | Yes |
响应
示例

putDomainConfig 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| domainToUpdate | string | path | 是 |
返回
示例

createEmailTemplate 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 |
响应
返回: CreateEmailTemplateResponse
示例

deleteEmailTemplate 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
Response
返回: APIEmptyResponse
示例

deleteEmailTemplateRenderError 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| errorId | string | path | 是 |
响应
示例

getEmailTemplate 
参数
| 名称 | 类型 | 位置 | 是否必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
示例

getEmailTemplateDefinitions 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
响应
返回: GetEmailTemplateDefinitionsResponse
示例

getEmailTemplateRenderErrors 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| skip | number | query | 否 |
响应
返回: GetEmailTemplateRenderErrorsResponse
示例

getEmailTemplates 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| skip | number | query | 否 |
响应
示例

renderEmailTemplate 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| locale | string | query | 否 |
响应
返回: RenderEmailTemplateResponse
示例

updateEmailTemplate 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
返回: APIEmptyResponse
示例

getEventLog 
req tenantId urlId userIdWS
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| urlId | string | query | 是 | |
| userIdWS | string | query | 是 | |
| startTime | integer | query | 是 | |
| endTime | integer | query | 否 |
Response
示例

getGlobalEventLog 
req tenantId urlId userIdWS
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| urlId | string | query | 是 | |
| userIdWS | string | query | 是 | |
| startTime | integer | query | 是 | |
| endTime | integer | query | 否 |
响应
示例

createFeedPost 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| broadcastId | string | query | No | |
| isLive | boolean | query | No | |
| doSpamCheck | boolean | query | No | |
| skipDupCheck | boolean | query | No |
响应
示例

createFeedPostPublic 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| broadcastId | string | query | 否 | |
| sso | string | query | 否 |
响应
示例

deleteFeedPostPublic 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| postId | string | path | 是 | |
| broadcastId | string | query | 否 | |
| sso | string | query | 否 |
响应
返回:DeleteFeedPostPublicResponse
示例

getFeedPosts 
请求
tenantId
afterId
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| afterId | string | query | No | |
| limit | integer | query | No | |
| tags | array | query | No |
响应
示例

getFeedPostsPublic 
req tenantId afterId
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| afterId | string | query | 否 | |
| limit | integer | query | 否 | |
| tags | array | query | 否 | |
| sso | string | query | 否 | |
| isCrawler | boolean | query | 否 | |
| includeUserInfo | boolean | query | 否 |
响应
示例

getFeedPostsStats 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| postIds | array | query | 是 | |
| sso | string | query | 否 |
响应
示例

getUserReactsPublic 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| postIds | array | query | No | |
| sso | string | query | No |
响应
示例

reactFeedPostPublic 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| postId | string | path | 是 | |
| isUndo | boolean | query | 否 | |
| broadcastId | string | query | 否 | |
| sso | string | query | 否 |
响应
示例

updateFeedPost 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
示例

updateFeedPostPublic 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| postId | string | path | 是 | |
| broadcastId | string | query | 否 | |
| sso | string | query | 否 |
响应
示例

flagCommentPublic 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| isFlagged | boolean | query | 是 | |
| sso | string | query | 否 |
响应
返回: APIEmptyResponse
示例

getGifLarge 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| largeInternalURLSanitized | string | query | 是 |
响应
示例

getGifsSearch 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | 路径 | 是 | |
| search | string | 查询 | 是 | |
| locale | string | 查询 | 否 | |
| rating | string | 查询 | 否 | |
| page | number | 查询 | 否 |
响应
示例

getGifsTrending 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| locale | string | query | 否 | |
| rating | string | query | 否 | |
| page | number | query | 否 |
响应
示例

addHashTag 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes |
响应
示例

addHashTagsBulk 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
响应
示例

deleteHashTag 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| tag | string | path | Yes |
响应
示例

getHashTags 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| page | number | query | 否 |
响应
示例

patchHashTag 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| tag | string | path | 是 |
响应
示例

getMe 
标识当前使用的凭据:其所属的租户,以及(对于 OAuth 令牌)授权该令牌的用户。 集成使用此接口来测试连接并为其添加标签。
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
响应
示例

deleteModerationVote 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| voteId | string | path | 是 | |
| broadcastId | string | query | 否 | |
| sso | string | query | 否 |
响应
示例

getApiComments 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | 查询 | 是 | |
| page | number | 查询 | 否 | |
| count | number | 查询 | 否 | |
| text-search | string | 查询 | 否 | |
| byIPFromComment | string | 查询 | 否 | |
| filters | string | 查询 | 否 | |
| searchFilters | string | 查询 | 否 | |
| sorts | string | 查询 | 否 | |
| demo | boolean | 查询 | 否 | |
| sso | string | 查询 | 否 |
响应
返回:ModerationAPIGetCommentsResponse
示例

getApiExportStatus 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| batchJobId | string | query | 否 | |
| sso | string | query | 否 |
响应
返回: ModerationExportStatusResponse
示例

getApiIds 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| text-search | string | query | No | |
| byIPFromComment | string | query | No | |
| filters | string | query | No | |
| searchFilters | string | query | No | |
| afterId | string | query | No | |
| demo | boolean | query | No | |
| sso | string | query | No |
响应
返回:ModerationAPIGetCommentIdsResponse
示例

getBanUsersFromComment 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| sso | string | query | 否 |
响应
返回: GetBannedUsersFromCommentResponse
示例

getCommentBanStatus 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| sso | string | query | 否 |
响应
返回:GetCommentBanStatusResponse
示例

getCommentChildren 
Parameters
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| sso | string | query | 否 |
Response
返回: ModerationAPIChildCommentsResponse
示例

getCount 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| text-search | string | query | 否 | |
| byIPFromComment | string | query | 否 | |
| filter | string | query | 否 | |
| searchFilters | string | query | 否 | |
| demo | boolean | query | 否 | |
| sso | string | query | 否 |
响应
返回:ModerationAPICountCommentsResponse
示例

getCounts 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| sso | string | query | No |
响应
返回:GetBannedUsersCountResponse
示例

getLogs 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| sso | string | query | 否 |
响应
返回:ModerationAPIGetLogsResponse
示例

getManualBadges 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| sso | string | query | 否 |
响应
返回: GetTenantManualBadgesResponse
示例

getManualBadgesForUser 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| badgesUserId | string | query | No | |
| commentId | string | query | No | |
| sso | string | query | No |
响应
返回: GetUserManualBadgesResponse
示例

getModerationComment 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| includeEmail | boolean | query | 否 | |
| includeIP | boolean | query | 否 | |
| sso | string | query | 否 |
响应
返回:ModerationAPICommentResponse
示例

getModerationCommentText 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| sso | string | query | 否 |
响应
示例

getPreBanSummary 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| includeByUserIdAndEmail | boolean | query | 否 | |
| includeByIP | boolean | query | 否 | |
| includeByEmailDomain | boolean | query | 否 | |
| sso | string | query | 否 |
响应
示例

getSearchCommentsSummary 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| value | string | query | 否 | |
| filters | string | query | 否 | |
| searchFilters | string | query | 否 | |
| sso | string | query | 否 |
响应
返回:ModerationCommentSearchResponse
示例

getSearchPages 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| value | string | query | No | |
| sso | string | query | No |
响应
返回:ModerationPageSearchResponse
示例

getSearchSites 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| value | string | query | No | |
| sso | string | query | No |
响应
返回:ModerationSiteSearchResponse
示例

getSearchSuggest 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| text-search | string | query | 否 | |
| sso | string | query | 否 |
响应
示例

getSearchUsers 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| value | string | query | No | |
| sso | string | query | No |
响应
返回: ModerationUserSearchResponse
示例

getTrustFactor 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| userId | string | query | 否 | |
| sso | string | query | 否 |
响应
Returns: GetUserTrustFactorResponse
示例

getUserBanPreference 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| sso | string | query | 否 |
响应
返回:APIModerateGetUserBanPreferencesResponse
示例

getUserInternalProfile 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | query | 否 | |
| sso | string | query | 否 |
响应
返回:GetUserInternalProfileResponse
示例

postAdjustCommentVotes 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| broadcastId | string | query | 否 | |
| sso | string | query | 否 |
响应
示例

postApiExport 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| text-search | string | query | No | |
| byIPFromComment | string | query | No | |
| filters | string | query | No | |
| searchFilters | string | query | No | |
| sorts | string | query | No | |
| sso | string | query | No |
响应
示例

postBanUserFromComment 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | path | Yes | |
| banEmail | boolean | query | No | |
| banEmailDomain | boolean | query | No | |
| banIP | boolean | query | No | |
| deleteAllUsersComments | boolean | query | No | |
| bannedUntil | string | query | No | |
| isShadowBan | boolean | query | No | |
| updateId | string | query | No | |
| banReason | string | query | No | |
| sso | string | query | No |
响应
示例

postBanUserUndo 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| sso | string | query | 否 |
响应
示例

postBulkPreBanSummary 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| includeByUserIdAndEmail | boolean | query | No | |
| includeByIP | boolean | query | No | |
| includeByEmailDomain | boolean | query | No | |
| sso | string | query | No |
响应
示例

postCommentsByIds 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| sso | string | query | No |
响应
返回: ModerationAPIChildCommentsResponse
示例

postFlagComment 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | path | Yes | |
| broadcastId | string | query | No | |
| sso | string | query | No |
响应
返回: APIEmptyResponse
示例

postRemoveComment 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | path | Yes | |
| broadcastId | string | query | No | |
| sso | string | query | No |
响应
返回: PostRemoveCommentApiResponse
示例

postRestoreDeletedComment 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| broadcastId | string | query | 否 | |
| sso | string | query | 否 |
响应
示例

postSetCommentApprovalStatus 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | path | Yes | |
| approved | boolean | query | No | |
| broadcastId | string | query | No | |
| sso | string | query | No |
响应
返回: SetCommentApprovedResponse
示例

postSetCommentReviewStatus 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| reviewed | boolean | query | 否 | |
| broadcastId | string | query | 否 | |
| sso | string | query | 否 |
响应
返回: APIEmptyResponse
示例

postSetCommentSpamStatus 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | 查询 | 是 | |
| commentId | string | 路径 | 是 | |
| spam | boolean | 查询 | 否 | |
| permNotSpam | boolean | 查询 | 否 | |
| broadcastId | string | 查询 | 否 | |
| sso | string | 查询 | 否 |
响应
示例

postSetCommentText 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | path | Yes | |
| broadcastId | string | query | No | |
| sso | string | query | No |
响应
示例

postUnFlagComment 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | path | Yes | |
| broadcastId | string | query | No | |
| sso | string | query | No |
响应
返回: APIEmptyResponse
示例

postVote 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | path | Yes | |
| direction | string | query | No | |
| broadcastId | string | query | No | |
| sso | string | query | No |
响应
返回: VoteResponse
示例

putAwardBadge 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| badgeId | string | query | Yes | |
| userId | string | query | No | |
| commentId | string | query | No | |
| broadcastId | string | query | No | |
| sso | string | query | No |
响应
Returns: AwardUserBadgeResponse
示例

putCloseThread 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| urlId | string | query | 是 | |
| sso | string | query | 否 |
响应
示例

putRemoveBadge 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| badgeId | string | query | Yes | |
| userId | string | query | No | |
| commentId | string | query | No | |
| broadcastId | string | query | No | |
| sso | string | query | No |
响应
Returns: RemoveUserBadgeResponse
示例

putReopenThread 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| urlId | string | query | 是 | |
| sso | string | query | 否 |
响应
示例

setTrustFactor 
Parameters
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| userId | string | query | No | |
| trustFactor | string | query | No | |
| sso | string | query | No |
Response
返回: SetUserTrustFactorResponse
Example

createModerator 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
响应
示例

deleteModerator 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| sendEmail | string | query | 否 |
响应
返回: APIEmptyResponse
示例

getModerator 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
示例

getModerators 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | 查询 | 是 | |
| skip | number | 查询 | 否 |
响应
示例

sendInvite 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| fromName | string | query | 是 |
响应
返回: APIEmptyResponse
示例

updateModerator 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
返回: APIEmptyResponse
示例

deleteNotificationCount 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
返回
示例

getCachedNotificationCount 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
Response
返回: GetCachedNotificationCountResponse
示例

getNotificationCount 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| userId | string | query | No | |
| urlId | string | query | No | |
| fromCommentId | string | query | No | |
| viewed | boolean | query | No | |
| type | string | query | No |
响应
返回:GetNotificationCountResponse
示例

getNotifications 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| userId | string | query | 否 | |
| urlId | string | query | 否 | |
| fromCommentId | string | query | 否 | |
| viewed | boolean | query | 否 | |
| type | string | query | 否 | |
| skip | number | query | 否 |
响应
示例

updateNotification 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| userId | string | query | 否 |
响应
返回: APIEmptyResponse
示例

createV1PageReact 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| urlId | string | query | 是 | |
| title | string | query | 否 | |
| sso | string | query | 否 |
响应
Returns: CreateV1PageReact
示例

createV2PageReact 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| urlId | string | query | Yes | |
| id | string | query | Yes | |
| title | string | query | No | |
| sso | string | query | No |
响应
示例

deleteV1PageReact 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| urlId | string | query | Yes | |
| sso | string | query | No |
响应
示例

deleteV2PageReact 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| urlId | string | query | Yes | |
| id | string | query | Yes | |
| sso | string | query | No |
响应
示例

getV1PageLikes 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| urlId | string | query | Yes | |
| sso | string | query | No | |
| includeUserInfo | string | query | No | 设置后,返回点赞页面的用户(头像和用户名)。仅接受 "public",这会省略私人资料。 |
响应
示例

getV2PageReacts 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| urlId | string | query | 是 | |
| sso | string | query | 否 | |
| includeUserInfo | string | query | 否 | 设置后,返回每个 react id 的用户(头像和用户名)。仅接受 "public",会省略私人资料。 |
响应
示例

getV2PageReactUsers 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| urlId | string | query | 是 | |
| id | string | query | 是 | |
| sso | string | query | 否 |
响应
返回: GetV2PageReactUsersResponse
示例

addPage 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 |
响应
示例

deletePage 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
示例

getOfflineUsers 
当前不在线的页面历史评论者。按 displayName 排序。 在用完 /users/online 之后,使用此接口渲染“成员”部分。 基于 commenterName 的游标分页:服务器通过 $gt 从 afterName 开始沿部分索引 {tenantId, urlId, commenterName} 向前遍历,没有 $skip 开销。
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| urlId | string | query | 是 | 页面 URL 标识符(在服务端进行清理)。 |
| afterName | string | query | 否 | 游标:传入上一次响应中的 nextAfterName。 |
| afterUserId | string | query | 否 | 游标决胜键:传入上一次响应中的 nextAfterUserId。当设置了 afterName 时必须提供,以避免同名条目被丢弃。 |
响应
示例

getOnlineUsers 
当前在线的页面查看者:指其 websocket 会话当前已订阅该页面的用户。
返回 anonCount + totalCount(全房间订阅者,包括我们不枚举的匿名查看者)。
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| urlId | string | query | Yes | 页面 URL 标识符(服务器端清理后)。 |
| afterName | string | query | No | 光标:从上一次响应中传递 nextAfterName。 |
| afterUserId | string | query | No | 光标平局解决器:从上一次响应中传递 nextAfterUserId。当设置 afterName 时需要此字段,以防止名称平局导致条目丢失。 |
响应
示例

getPageByURLId 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| urlId | string | query | Yes |
响应
示例

getPageLikes 
页面的点赞数,可选包含点赞的用户。
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| urlId | string | query | 是 | |
| includeUserInfo | string | query | 否 | "public" 省略拥有私密资料的用户,"include-private" 则包含他们。 |
响应
示例

getPageReacts 
自定义页面的反应计数,可选包含做出反应的用户。
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| urlId | string | query | 是 | |
| includeUserInfo | string | query | 否 | "public" 省略拥有私密资料的用户,"include-private" 则包含他们。 |
响应
示例

getPages 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
响应
示例

getPagesPublic 
列出租户的页面。由 FChat 桌面客户端用于填充其房间列表。
要求每个页面的已解析自定义配置中 enableFChat 为 true。
需要 SSO 的页面会根据请求用户的组访问权限进行过滤。
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| cursor | string | query | 否 | 上一次请求返回的 nextCursor 不透明分页游标。与相同的 sortBy 绑定。 |
| limit | integer | query | 否 | 1..200,默认 50 |
| q | string | query | 否 | 可选的不区分大小写的标题前缀过滤器。 |
| sortBy | string | query | 否 | 排序方式。updatedAt(默认,最新优先)、commentCount(评论最多优先)或 title(按字母顺序)。 |
| hasComments | boolean | query | 否 | 如果为 true,则仅返回至少有一条评论的页面。 |
响应
示例

getUsersInfo 
为租户批量获取用户信息。根据 userIds,返回来自 User / SSOUser 的展示信息。 由评论小部件使用,以补充通过存在事件刚刚出现的用户信息。 没有页面上下文:隐私统一强制执行(私人资料将被屏蔽)。
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| ids | string | query | 是 | 以逗号分隔的 userIds。 |
响应
示例

migratePages 
将批量任务加入队列,把评论、页面及相关记录从一个 urlId 或 domain 迁移到另一个。 "urlId" 迁移仅匹配完全相同的 urlId。"domain" 迁移会在每个 urlId 和 url 中查找并替换该值。 轮询 GET /api/v1/batch-jobs/{batchJobId}:任务完成后会包含每次迁移的结果和一个 undoId。
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
响应
返回:QueuePageMigrationJobAPIResponse
示例

patchPage 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| id | string | path | Yes |
响应
示例

undoPageMigrations 
将一个批量任务加入队列,该任务会按从新到旧的顺序撤销某个 migrate-pages 任务的每一次迁移。此功能可用 90 天。 迁移之后发生变更的记录不会被改动,因此后续的编辑永远不会被覆盖。 轮询 GET /api/v1/batch-jobs/{batchJobId} 以获取已恢复/已跳过的数量。
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| undoId | string | path | 是 |
响应
返回:QueuePageMigrationJobAPIResponse
示例

deletePendingWebhookEvent 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
返回: APIEmptyResponse
示例

getPendingWebhookEventCount 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | query | No | |
| externalId | string | query | No | |
| eventType | string | query | No | |
| type | string | query | No | |
| domain | string | query | No | |
| attemptCountGT | number | query | No |
响应
返回:GetPendingWebhookEventCountResponse
示例

getPendingWebhookEvents 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | query | 否 | |
| externalId | string | query | 否 | |
| eventType | string | query | 否 | |
| type | string | query | 否 | |
| domain | string | query | 否 | |
| attemptCountGT | number | query | 否 | |
| skip | number | query | 否 |
响应
返回:GetPendingWebhookEventsResponse
示例

createPollVote 
对投票进行投票,或将现有投票移动到不同的选项。每位投票者在每个投票中最多只能有一票,因此对同一投票者再次调用此接口会移动其投票,而不是新增一票。
此接口遵循站点的投票设置:如果投票设置为仅限已登录用户,则仅包含 anonUserId 的投票将被拒绝,并且匿名投票会按 IP 按投票进行速率限制。
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
响应
示例

deletePollVote 
撤回投票。投票所投的选项会恢复其计数。
Parameters
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
Response
示例

getPollVote 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| id | string | path | Yes |
响应
示例

getPollVotes 
单个投票背后的各项投票记录,按时间从旧到新排列。
投票属于某条评论,因此投票记录总是按单个投票读取 - commentId 为必填项。这确保每个查询都能利用集合已有的索引。
遵循投票的隐私设置:匿名投票的投票记录无法读取(poll-anonymous),无论是通过此接口还是通过 id。
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | query | 是 | |
| voterId | string | query | 否 | |
| optionId | string | query | 否 | |
| skip | integer | query | 否 |
响应
示例

deletePoll 
从其评论中移除投票(poll),以及对其所做的所有投票。评论本身保持不变。
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | path | Yes |
响应
示例

getPoll 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 |
响应
示例

getPollVoters 
谁投了哪个选项。匿名投票永不显示答案,只有管理员的投票仅对管理员或版主可见。
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| commentId | string | path | Yes | |
| urlId | string | query | No | |
| page | integer | query | No | |
| search | string | query | No | |
| sso | string | query | No |
响应
返回: GetPollVoterNamesSuccessResponse
示例

patchPoll 
在原位编辑投票,保留其计数:更改问题,重新标记选项,关闭或重新打开它,
或更改谁可以看到投票者。选项通过 id 定位——要添加、删除或重新排序它们,请 PUT 完整列表。
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 |
响应
示例

putPoll 
将投票附加到评论,或设置已存在投票的完整状态。
选项通过 id 进行匹配:带有现有选项 id 的选项会保留其投票(并采用新的标签和位置),未提供 id 的选项会被添加,而列表中省略的现有选项则会被删除,连同其已投的票一起移除。
在已有投票的投票中不保留任何现有选项 id 会删除所有选项,因此需要设置 replaceVotes=true。
Parameters
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | path | Yes | |
| replaceVotes | boolean | query | No |
Response
Returns: SavePollResponse
Example

votePoll 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| commentId | string | path | 是 | |
| urlId | string | query | 否 | |
| broadcastId | string | query | 否 | |
| sso | string | query | 否 |
响应
示例

createQuestionConfig 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
响应
返回:CreateQuestionConfigResponse
示例

deleteQuestionConfig 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
示例

getQuestionConfig 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
示例

getQuestionConfigs 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| skip | number | query | 否 |
响应
示例

updateQuestionConfig 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
示例

createQuestionResult 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes |
响应
返回:CreateQuestionResultResponse
示例

deleteQuestionResult 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| id | string | path | Yes |
响应
返回: APIEmptyResponse
示例

getQuestionResult 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
示例

getQuestionResults 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| urlId | string | query | 否 | |
| userId | string | query | 否 | |
| startDate | string | query | 否 | |
| questionId | string | query | 否 | |
| questionIds | string | query | 否 | |
| skip | number | query | 否 |
响应
示例

updateQuestionResult 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| id | string | path | Yes |
响应
返回: APIEmptyResponse
示例

aggregateQuestionResults 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| questionId | string | query | No | |
| questionIds | array | query | No | |
| urlId | string | query | No | |
| timeBucket | string | query | No | |
| startDate | string | query | No | |
| forceRecalculate | boolean | query | No |
响应
返回: AggregateQuestionResultsResponse
示例

bulkAggregateQuestionResults 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| forceRecalculate | boolean | query | 否 |
响应
返回:BulkAggregateQuestionResultsResponse
示例

combineCommentsWithQuestionResults 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| questionId | string | query | 否 | |
| questionIds | array | query | 否 | |
| urlId | string | query | 否 | |
| startDate | string | query | 否 | |
| forceRecalculate | boolean | query | 否 | |
| minValue | number | query | 否 | |
| maxValue | number | query | 否 | |
| limit | number | query | 否 |
响应
返回:CombineQuestionResultsWithCommentsResponse
示例

addSSOUser 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 |
响应
示例

deleteSSOUser 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| id | string | path | Yes | |
| deleteComments | boolean | query | No | |
| commentDeleteMode | string | query | No |
响应
示例

getSSOUserByEmail 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| string | path | 是 |
响应
返回:GetSSOUserByEmailAPIResponse
示例

getSSOUserById 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
示例

getSSOUsers 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| skip | integer | query | 否 |
响应
示例

patchSSOUser 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| updateComments | boolean | query | 否 |
响应
示例

putSSOUser 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| updateComments | boolean | query | 否 |
响应
示例

createSubscription 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 |
响应
返回: CreateSubscriptionAPIResponse
示例

deleteSubscription 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| userId | string | query | 否 |
响应
返回:DeleteSubscriptionAPIResponse
示例

getSubscriptions 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| userId | string | query | 否 |
响应
返回: GetSubscriptionsAPIResponse
示例

updateSubscription 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| userId | string | query | 否 |
响应
返回: UpdateSubscriptionAPIResponse
示例

getTenantDailyUsages 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| yearNumber | number | query | 否 | |
| monthNumber | number | query | 否 | |
| dayNumber | number | query | 否 | |
| skip | number | query | 否 |
响应
返回: GetTenantDailyUsagesResponse
示例

createTenantPackage 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
响应
返回: CreateTenantPackageResponse
示例

deleteTenantPackage 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
返回: APIEmptyResponse
示例

getTenantPackage 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
示例

getTenantPackages 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| skip | number | query | 否 |
响应
示例

replaceTenantPackage 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
返回: APIEmptyResponse
示例

updateTenantPackage 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
返回: APIEmptyResponse
示例

createTenantUser 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 |
Response
示例

deleteTenantUser 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| deleteComments | string | query | 否 | |
| commentDeleteMode | string | query | 否 |
响应
示例

getTenantUser 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| id | string | path | Yes |
Response
示例

getTenantUsers 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| skip | number | query | 否 |
响应
示例

replaceTenantUser 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| updateComments | string | query | 否 |
响应
返回: APIEmptyResponse
示例

sendLoginLink 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| redirectURL | string | query | 否 |
响应
返回: APIEmptyResponse
示例

updateTenantUser 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| updateComments | string | query | 否 |
响应
示例

createTenant 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
响应
示例

deleteTenant 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| sure | string | query | 否 |
响应
示例

getTenant 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
示例

getTenants 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| meta | string | query | 否 | |
| skip | number | query | 否 |
响应
示例

updateTenant 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
返回: APIEmptyResponse
示例

changeTicketState 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| userId | string | query | 是 | |
| id | string | path | 是 |
响应
示例

createTicket 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| userId | string | query | 是 |
响应
示例

getTicket 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| userId | string | query | 否 |
响应
示例

getTickets 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| userId | string | query | 否 | |
| state | number | query | 否 | |
| skip | number | query | 否 | |
| limit | number | query | 否 |
响应
示例

getTranslations 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| namespace | string | path | 是 | |
| component | string | path | 是 | |
| locale | string | query | 否 | |
| useFullTranslationIds | boolean | query | 否 |
响应
示例

uploadImage 
上传并调整图像大小
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| sizePreset | string | query | No | 尺寸预设:"Default" (1000x1000px) 或 "CrossPlatform" (为流行设备创建尺寸) |
| urlId | string | query | No | 上传所在页面的 ID,用于配置 |
响应
Returns: UploadImageResponse
示例

getUserBadgeProgressById 
参数
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
返回: APIGetUserBadgeProgressResponse
示例

getUserBadgeProgressByUserId 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| userId | string | path | 是 |
响应
返回: APIGetUserBadgeProgressResponse
示例

getUserBadgeProgressList 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| userId | string | query | 否 | |
| limit | number | query | 否 | |
| skip | number | query | 否 |
响应
返回: APIGetUserBadgeProgressListResponse
示例

createUserBadge 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
响应
示例

deleteUserBadge 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
示例

getUserBadge 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
示例

getUserBadges 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | 查询 | 是 | |
| userId | string | 查询 | 否 | |
| badgeId | string | 查询 | 否 | |
| type | number | 查询 | 否 | |
| displayedOnComments | boolean | 查询 | 否 | |
| limit | number | 查询 | 否 | |
| skip | number | 查询 | 否 |
响应
示例

updateUserBadge 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
示例

getUserNotificationCount 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| sso | string | query | 否 |
响应
返回: GetUserNotificationCountResponse
示例

getUserNotifications 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| urlId | string | query | 否 | 用于确定当前页面是否已订阅。 |
| pageSize | integer | query | 否 | |
| afterId | string | query | 否 | |
| includeContext | boolean | query | 否 | |
| afterCreatedAt | integer | query | 否 | |
| unreadOnly | boolean | query | 否 | |
| dmOnly | boolean | query | 否 | |
| noDm | boolean | query | 否 | |
| includeTranslations | boolean | query | 否 | |
| includeTenantNotifications | boolean | query | 否 | |
| sso | string | query | 否 |
响应
示例

resetUserNotificationCount 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| sso | string | query | 否 |
响应
返回:ResetUserNotificationsResponse
示例

resetUserNotifications 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| afterId | string | query | No | |
| afterCreatedAt | integer | query | No | |
| unreadOnly | boolean | query | No | |
| dmOnly | boolean | query | No | |
| noDm | boolean | query | No | |
| sso | string | query | No |
响应
返回: ResetUserNotificationsResponse
示例

updateUserNotificationCommentSubscriptionStatus 
启用或禁用针对特定评论的通知。
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | 查询 | 是 | |
| notificationId | string | 路径 | 是 | |
| optedInOrOut | string | 路径 | 是 | |
| commentId | string | 查询 | 是 | |
| sso | string | 查询 | 否 |
响应
返回:UpdateUserNotificationCommentSubscriptionStatusResponse
示例

updateUserNotificationPageSubscriptionStatus 
启用或禁用页面的通知。当用户订阅页面时,会为新的根评论创建通知,并且还会
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| urlId | string | query | 是 | |
| url | string | query | 是 | |
| pageTitle | string | query | 是 | |
| subscribedOrUnsubscribed | string | path | 是 | |
| sso | string | query | 否 |
响应
返回: UpdateUserNotificationPageSubscriptionStatusResponse
示例

updateUserNotificationStatus 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| notificationId | string | path | 是 | |
| newStatus | string | path | 是 | |
| sso | string | query | 否 |
响应
返回: UpdateUserNotificationStatusResponse
示例

getUserPresenceStatuses 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| urlIdWS | string | query | Yes | |
| userIds | string | query | Yes |
响应
返回: GetUserPresenceStatusesResponse
示例

searchUsers 
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| urlId | string | query | 是 | |
| usernameStartsWith | string | query | 否 | |
| mentionGroupIds | array | query | 否 | |
| sso | string | query | 否 | |
| searchSection | string | query | 否 |
响应
示例

getUser 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
返回: GetUserResponse
示例

createVote 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | query | 是 | |
| direction | string | query | 是 | |
| userId | string | query | 否 | |
| anonUserId | string | query | 否 |
响应
返回:VoteResponse
示例

deleteVote 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| editKey | string | query | 否 |
响应
示例

getVotes 
参数
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| urlId | string | query | Yes |
响应
返回: GetVotesResponse
示例

getVotesForUser 
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| urlId | string | query | Yes | |
| userId | string | query | No | |
| anonUserId | string | query | No |
响应
示例

createWebhook 
将 URL 订阅到评论事件(REST hook 订阅)。再次将相同的 URL 订阅到相同的事件和域时,将返回已有的订阅。交付采用 HMAC 签名,请参阅 webhooks 指南;旧版 token 头部永不发送到 API 订阅。
参数
| 名称 | 类型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
响应
示例

deleteWebhook 
取消订阅(REST hook 取消订阅)。只能删除通过此 API 创建的订阅;在仪表板中管理的 webhook 请在仪表板中编辑。
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
响应
返回: APIEmptyResponse
示例

getWebhooks 
列出为租户配置的 webhook,包括仪表板管理的行和 API 订阅。
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| event | string | query | 否 | |
| domain | string | query | 否 | |
| source | string | query | 否 | |
| skip | number | query | 否 |
响应
示例

getWebhookSamplePayloads 
Recent comments in exactly the shape webhook deliveries use, for building integrations (for example Zapier
sample data). Every event delivers the same comment object, so event only has to be valid.
参数
| 名称 | 类型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| event | string | query | 否 | |
| limit | number | query | 否 |
响应
返回: GetWebhookSamplePayloadsResponse
示例

需要帮助?
如果您在使用 Swift SDK 时遇到任何问题或有疑问,请:
贡献
欢迎贡献!请访问 GitHub 仓库 以查看贡献指南。