
語言 🇹🇼 繁體中文
文件說明
入門
API 參考
彙總
稽核日誌
驗證
從評論封鎖
檢查已封鎖評論
評論
網域設定
電子郵件範本
事件日誌
動態貼文
檢舉評論
GIF
標籤
審核
審核者
通知計數
通知
頁面回應
頁面
待處理 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.swift 檔案:
dependencies: [
.package(url: "https://github.com/fastcomments/fastcomments-swift.git", from: "3.0.0")
]
或在 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 包含數個模組:
-
Client Module - 用於 FastComments REST APIs 的 API 用戶端
- 提供所有 API 模型的完整型別定義
- 已驗證 (
DefaultAPI)、公開 (PublicAPI)、以及審核 (ModerationAPI) 方法 - 完整的 async/await 支援
- 詳細的 API 文件請參見 client/README.md
-
SSO Module - 伺服器端的 Single Sign-On 實用工具
- 用於使用者驗證的安全 token 產生
- 支援簡易與安全兩種 SSO 模式
- 使用 CryptoKit 的基於 HMAC-SHA256 的 token 簽名
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", // 使用者 ID
email: "user@example.com", // 電子郵件
username: "johndoe", // 使用者名稱
avatar: "https://example.com/avatar.jpg" // 大頭貼 URL
)
// Generate SSO token
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"
)
// Generate simple SSO token
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 - Client-Safe Methods
PublicAPI 包含可安全從客戶端程式碼(iOS/macOS 應用)呼叫的方法。這些方法:
- 不需要 API 金鑰
- 可使用 SSO 令牌進行驗證
- 依使用者/裝置進行速率限制
- 適用於面向最終使用者的應用程式
範例使用情境: 在 iOS 應用中取得與建立評論
DefaultAPI - Server-Side Methods
DefaultAPI 包含需要 API 金鑰的已驗證方法。這些方法:
- 需要您的 FastComments API 金鑰
- 僅應從伺服器端程式碼呼叫
- 完全存取您的 FastComments 資料
- 依租戶進行速率限制
範例使用情境: 管理操作、大量資料匯出、使用者管理
ModerationAPI - Moderator Dashboard Methods
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 令牌無法運作:
- 在生產環境使用安全模式:在生產環境中,始終使用帶有您的 API 金鑰的
FastCommentsSSO.createSecure() - 僅限伺服器端:在您的伺服器上產生安全的 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
aggregate 
Aggregates documents by grouping them (if groupBy is provided) and applying multiple operations. Different operations (e.g. sum, countDistinct, avg, etc.) are supported.
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| parentTenantId | string | query | 否 | |
| includeStats | boolean | query | 否 |
回應
範例

getAuditLogs 
Parameters
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| limit | number | query | 否 | |
| skip | number | query | 否 | |
| order | string | query | 否 | |
| after | number | query | 否 | |
| before | number | query | 否 |
Response
Returns: GetAuditLogsResponse
Example

logoutPublic 
回應
回傳: APIEmptyResponse
範例

blockFromCommentPublic 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | path | Yes | |
| sso | string | query | No |
回應
回傳: BlockSuccess
範例

unBlockCommentPublic 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| sso | string | query | 否 |
回應
回傳: UnblockSuccess
範例

checkedCommentsForBlocked 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentIds | string | query | Yes | 以逗號分隔的評論 ID 列表。 |
| sso | string | query | No |
回應
Returns: 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 | 否 |
回應
返回:SaveCommentsResponseWithPresence
範例

deleteComment 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| contextUserId | string | query | 否 | |
| isLive | boolean | query | 否 |
回應
範例

deleteCommentPublic 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| commentId | string | path | Yes | |
| broadcastId | string | query | Yes | |
| editKey | string | query | No | |
| sso | string | query | No |
回應
返回: PublicAPIDeleteCommentResponse
範例

deleteCommentVote 
Parameters
| 名稱 | 類型 | 位置 | 必要 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| commentId | string | path | 是 | |
| voteId | string | path | 是 | |
| urlId | string | query | 是 | |
| broadcastId | string | query | 是 | |
| editKey | string | query | 否 | |
| sso | string | query | 否 |
Response
Example

flagComment 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| userId | string | query | 否 | |
| anonUserId | string | query | 否 |
回傳
Returns: FlagCommentResponse
範例

getComment 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| id | string | path | Yes |
回應
範例

getComments 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| page | integer | query | No | |
| limit | integer | query | No | |
| skip | integer | query | No | |
| asTree | boolean | query | No | |
| skipChildren | integer | query | No | |
| limitChildren | integer | query | No | |
| maxTreeDepth | integer | query | No | |
| urlId | string | query | No | |
| userId | string | query | No | |
| anonUserId | string | query | No | |
| contextUserId | string | query | No | |
| hashTag | string | query | No | |
| parentId | string | query | No | |
| direction | string | query | No | |
| fromDate | integer | query | No | |
| toDate | integer | query | No |
回應
範例

getCommentsPublic 
req tenantId urlId
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| urlId | string | query | 是 | |
| page | integer | query | 否 | |
| direction | string | query | 否 | |
| sso | string | query | 否 | |
| skip | integer | query | 否 | |
| skipChildren | integer | query | 否 | |
| limit | integer | query | 否 | |
| limitChildren | integer | query | 否 | |
| countChildren | boolean | query | 否 | |
| fetchPageForCommentId | string | query | 否 | |
| includeConfig | boolean | query | 否 | |
| countAll | boolean | query | 否 | |
| includei10n | boolean | query | 否 | |
| locale | string | query | 否 | |
| modules | string | query | 否 | |
| isCrawler | boolean | query | 否 | |
| includeNotificationCount | boolean | query | 否 | |
| asTree | boolean | query | 否 | |
| maxTreeDepth | integer | query | 否 | |
| useFullTranslationIds | boolean | query | 否 | |
| parentId | string | query | 否 | |
| searchText | string | query | 否 | |
| hashTags | array | query | 否 | |
| userId | string | query | 否 | |
| customConfigStr | string | query | 否 | |
| afterCommentId | string | query | 否 | |
| beforeCommentId | string | query | 否 |
回應
返回:GetCommentsResponseWithPresencePublicComment
範例

getCommentText 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| commentId | string | path | Yes | |
| editKey | string | query | No | |
| sso | string | query | No |
回應
返回:PublicAPIGetCommentTextResponse
範例

getCommentVoteUserNames 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| commentId | string | path | Yes | |
| dir | integer | query | Yes | |
| sso | string | query | No |
回應
回傳: GetCommentVoteUserNamesSuccessResponse
範例

lockComment 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| commentId | string | path | 是 | |
| broadcastId | string | query | 是 | |
| sso | string | query | 否 |
回應
回傳: APIEmptyResponse
範例

pinComment 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| 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 
Parameters
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| isLive | boolean | query | No | |
| doSpamCheck | boolean | query | No | |
| sendEmails | boolean | query | No | |
| populateNotifications | boolean | query | No |
Response
Returns: [SaveCommentsBulkResponse]
Example

setCommentText 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| commentId | string | path | Yes | |
| broadcastId | string | query | Yes | |
| editKey | string | query | No | |
| sso | string | query | No |
回應
返回: PublicAPISetCommentTextResponse
範例

unBlockUserFromComment 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| userId | string | query | 否 | |
| anonUserId | string | query | 否 |
回應
返回: UnblockSuccess
範例

unFlagComment 
參數
| 名稱 | 類型 | 位置 | 必須 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| userId | string | query | 否 | |
| anonUserId | string | query | 否 |
回應
範例

unLockComment 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| commentId | string | path | 是 | |
| broadcastId | string | query | 是 | |
| sso | string | query | 否 |
回應
回傳: APIEmptyResponse
範例

unPinComment 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | 路徑 | 是 | |
| commentId | string | 路徑 | 是 | |
| broadcastId | string | 查詢 | 是 | |
| sso | string | 查詢 | 否 |
回應
回傳:ChangeCommentPinStatusResponse
範例

updateComment 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| id | string | path | Yes | |
| contextUserId | string | query | No | |
| doSpamCheck | boolean | query | No | |
| isLive | boolean | query | No |
回應
範例

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 | No | |
| direction | string | query | No | |
| repliesToUserId | string | query | No | |
| page | number | query | No | |
| includei10n | boolean | query | No | |
| locale | string | query | No | |
| isCrawler | boolean | query | No |
回應
Returns: GetCommentsForUserResponse
範例

addDomainConfig 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
回應
範例

deleteDomainConfig 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| domain | string | path | 是 |
回應
Returns: DeleteDomainConfigResponse
範例

getDomainConfig 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| domain | string | path | 是 |
回應
範例

getDomainConfigs 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 |
回應
範例

patchDomainConfig 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| domainToUpdate | string | path | 是 |
回應
範例

putDomainConfig 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| domainToUpdate | string | path | 是 |
回應
範例

createEmailTemplate 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 |
回應
回傳:CreateEmailTemplateResponse
範例

deleteEmailTemplate 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
回應
回傳: APIEmptyResponse
範例

deleteEmailTemplateRenderError 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| errorId | string | path | 是 |
回應
回傳: APIEmptyResponse
範例

getEmailTemplate 
參數
| 名稱 | 類型 | 位置 | 必要 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
回應
範例

getEmailTemplateDefinitions 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
回傳
回傳: GetEmailTemplateDefinitionsResponse
範例

getEmailTemplateRenderErrors 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | 查詢 | 是 | |
| id | string | 路徑 | 是 | |
| skip | number | 查詢 | 否 |
回應
回傳: GetEmailTemplateRenderErrorsResponse
範例

getEmailTemplates 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| skip | number | query | 否 |
回應
範例

renderEmailTemplate 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | 查詢 | 是 | |
| locale | string | 查詢 | 否 |
回應
回傳: RenderEmailTemplateResponse
範例

updateEmailTemplate 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| 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 | 否 |
回應
範例

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 | 是 | |
| broadcastId | string | query | 否 | |
| isLive | boolean | query | 否 | |
| doSpamCheck | boolean | query | 否 | |
| skipDupCheck | boolean | query | 否 |
回應
範例

createFeedPostPublic 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| broadcastId | string | query | 否 | |
| sso | string | query | 否 |
回應
範例

deleteFeedPostPublic 
參數
| 名稱 | 型別 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| postId | string | path | Yes | |
| broadcastId | string | query | No | |
| sso | string | query | No |
回應
返回: DeleteFeedPostPublicResponse
範例

getFeedPosts 
req tenantId afterId
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| afterId | string | query | No | |
| limit | integer | query | No | |
| tags | array | query | No |
回應
範例

getFeedPostsPublic 
req tenantId afterId
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| afterId | string | query | No | |
| limit | integer | query | No | |
| tags | array | query | No | |
| sso | string | query | No | |
| isCrawler | boolean | query | No | |
| includeUserInfo | boolean | query | No |
回應
範例

getFeedPostsStats 
參數
| 名稱 | 類型 | 位置 | 必需 | 說明 |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| postIds | array | query | Yes | |
| sso | string | query | No |
回應
範例

getUserReactsPublic 
參數
| 名稱 | 類型 | 位置 | 必需 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| postIds | array | query | 否 | |
| sso | string | query | 否 |
回應
範例

reactFeedPostPublic 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| postId | string | path | Yes | |
| isUndo | boolean | query | No | |
| broadcastId | string | query | No | |
| sso | string | query | No |
回應
示例

updateFeedPost 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
回應
回傳: APIEmptyResponse
範例

updateFeedPostPublic 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| postId | string | path | 是 | |
| broadcastId | string | query | 否 | |
| sso | string | query | 否 |
回應
範例

flagCommentPublic 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| isFlagged | boolean | query | 是 | |
| sso | string | query | 否 |
回應
回傳: APIEmptyResponse
範例

getGifLarge 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | 路徑 | 是 | |
| largeInternalURLSanitized | string | 查詢 | 是 |
回應
範例

getGifsSearch 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| search | string | query | Yes | |
| locale | string | query | No | |
| rating | string | query | No | |
| page | number | query | No |
回應
Returns: GetGifsSearchResponse
範例

getGifsTrending 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| locale | string | query | 否 | |
| rating | string | query | 否 | |
| page | number | query | 否 |
回應
範例

addHashTag 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
回應
範例

addHashTagsBulk 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
回應
範例

deleteHashTag 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| tag | string | path | 是 |
回應
範例

getHashTags 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| page | number | query | No |
回應
Returns: GetHashTagsResponse
範例

patchHashTag 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| tag | string | path | Yes |
回應
Returns: UpdateHashTagResponse
範例

deleteModerationVote 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| voteId | string | path | 是 | |
| broadcastId | string | query | 否 | |
| sso | string | query | 否 |
回應
範例

getApiComments 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| page | number | query | 否 | |
| count | number | query | 否 | |
| text-search | string | query | 否 | |
| byIPFromComment | string | query | 否 | |
| filters | string | query | 否 | |
| searchFilters | string | query | 否 | |
| sorts | string | query | 否 | |
| demo | boolean | query | 否 | |
| sso | string | query | 否 |
回應
返回: ModerationAPIGetCommentsResponse
範例

getApiExportStatus 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| batchJobId | string | query | No | |
| sso | string | query | No |
回應
回傳:ModerationExportStatusResponse
範例

getApiIds 
參數
| 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 | |
| afterId | string | query | No | |
| demo | boolean | query | No | |
| sso | string | query | No |
回應
Returns: ModerationAPIGetCommentIdsResponse
範例

getBanUsersFromComment 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | path | Yes | |
| sso | string | query | No |
回應
返回:GetBannedUsersFromCommentResponse
範例

getCommentBanStatus 
參數
| 名稱 | 類型 | 位置 | 必要 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | path | Yes | |
| sso | string | query | No |
回應
返回:GetCommentBanStatusResponse
範例

getCommentChildren 
參數
| 名稱 | 類型 | 位置 | 必要 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | path | Yes | |
| sso | string | query | No |
回應
返回: ModerationAPIChildCommentsResponse
範例

getCount 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| text-search | string | query | No | |
| byIPFromComment | string | query | No | |
| filter | string | query | No | |
| searchFilters | string | query | No | |
| demo | boolean | query | No | |
| sso | string | query | No |
回應
返回:ModerationAPICountCommentsResponse
範例

getCounts 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| sso | string | query | No |
回應
Returns: GetBannedUsersCountResponse
範例

getLogs 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | path | Yes | |
| sso | string | query | No |
回應
回傳: ModerationAPIGetLogsResponse
範例

getManualBadges 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| sso | string | query | No |
回應
返回:GetTenantManualBadgesResponse
範例

getManualBadgesForUser 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| badgesUserId | string | query | No | |
| commentId | string | query | No | |
| sso | string | query | No |
回應
返回:GetUserManualBadgesResponse
範例

getModerationComment 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | path | Yes | |
| includeEmail | boolean | query | No | |
| includeIP | boolean | query | No | |
| sso | string | query | No |
回應
返回:ModerationAPICommentResponse
範例

getModerationCommentText 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | path | Yes | |
| sso | string | query | No |
回應
範例

getPreBanSummary 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | path | Yes | |
| includeByUserIdAndEmail | boolean | query | No | |
| includeByIP | boolean | query | No | |
| includeByEmailDomain | boolean | query | No | |
| sso | string | query | No |
回應
範例

getSearchCommentsSummary 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| value | string | query | No | |
| filters | string | query | No | |
| searchFilters | string | query | No | |
| sso | string | query | No |
回應
返回: 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 | 是 | |
| value | string | query | 否 | |
| sso | string | query | 否 |
回應
返回:ModerationUserSearchResponse
示例

getTrustFactor 
參數
| 名稱 | 型別 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| userId | string | query | 否 | |
| sso | string | query | 否 |
回應
範例

getUserBanPreference 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| sso | string | query | No |
回應
回傳: 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 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| text-search | string | query | 否 | |
| byIPFromComment | string | query | 否 | |
| filters | string | query | 否 | |
| searchFilters | string | query | 否 | |
| sorts | string | query | 否 | |
| sso | string | query | 否 |
回應
Returns: ModerationExportResponse
範例

postBanUserFromComment 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| 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 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| includeByUserIdAndEmail | boolean | query | No | |
| includeByIP | boolean | query | No | |
| includeByEmailDomain | boolean | query | No | |
| sso | string | query | No |
回應
Returns: BulkPreBanSummary
範例

postCommentsByIds 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| sso | string | query | 否 |
回應
回傳: 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 | 否 |
回應
回傳: APIEmptyResponse
範例

postSetCommentApprovalStatus 
Parameters
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| approved | boolean | query | 否 | |
| broadcastId | string | query | 否 | |
| sso | string | query | 否 |
回應
範例

postSetCommentReviewStatus 
參數
| 名稱 | 型別 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | path | Yes | |
| reviewed | boolean | query | No | |
| broadcastId | string | query | No | |
| sso | string | query | No |
回應
返回: APIEmptyResponse
範例

postSetCommentSpamStatus 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | 查詢 | 是 | |
| commentId | string | 路徑 | 是 | |
| spam | boolean | 查詢 | 否 | |
| permNotSpam | boolean | 查詢 | 否 | |
| broadcastId | string | 查詢 | 否 | |
| sso | string | 查詢 | 否 |
回應
範例

postSetCommentText 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| broadcastId | string | query | 否 | |
| sso | string | query | 否 |
回應
範例

postUnFlagComment 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| broadcastId | string | query | 否 | |
| sso | string | query | 否 |
回應
Returns: APIEmptyResponse
範例

postVote 
Parameters
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| commentId | string | path | 是 | |
| direction | string | query | 否 | |
| broadcastId | string | query | 否 | |
| sso | string | query | 否 |
Response
返回: VoteResponse
Example

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 |
回應
範例

putCloseThread 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| urlId | string | query | Yes | |
| sso | string | query | No |
回應
回傳: APIEmptyResponse
範例

putRemoveBadge 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| badgeId | string | query | 是 | |
| userId | string | query | 否 | |
| commentId | string | query | 否 | |
| broadcastId | string | query | 否 | |
| sso | string | query | 否 |
回應
範例

putReopenThread 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| urlId | string | query | Yes | |
| sso | string | query | No |
回應
回傳: APIEmptyResponse
範例

setTrustFactor 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| userId | string | query | 否 | |
| trustFactor | string | query | 否 | |
| sso | string | query | 否 |
回應
範例

createModerator 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 |
回應
範例

deleteModerator 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| 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 | query | 是 | |
| skip | number | query | 否 |
回應
範例

sendInvite 
參數
| 名稱 | 型別 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| fromName | string | query | 是 |
回應
回傳: APIEmptyResponse
範例

updateModerator 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
回應
範例

deleteNotificationCount 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
回應
回傳: APIEmptyResponse
範例

getCachedNotificationCount 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
回應
回傳: 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 | Yes | |
| userId | string | query | No | |
| urlId | string | query | No | |
| fromCommentId | string | query | No | |
| viewed | boolean | query | No | |
| type | string | query | No | |
| skip | number | query | No |
回應
範例

updateNotification 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| userId | string | query | 否 |
回應
回傳: APIEmptyResponse
範例

createV1PageReact 
參數
| 名稱 | Type | Location | 必要 | 說明 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| urlId | string | query | 是 | |
| title | string | query | 否 |
回應
範例

createV2PageReact 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| urlId | string | query | 是 | |
| id | string | query | 是 | |
| title | string | query | 否 |
回傳
範例

deleteV1PageReact 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| urlId | string | query | 是 |
回應
範例

deleteV2PageReact 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| urlId | string | query | 是 | |
| id | string | query | 是 |
回應
範例

getV1PageLikes 
參數
| 名稱 | 類型 | Location | 必要 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| urlId | string | query | 是 |
回應
回傳: GetV1PageLikes
範例

getV2PageReacts 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| urlId | string | query | 是 |
回應
回傳: GetV2PageReacts
範例

getV2PageReactUsers 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| urlId | string | query | 是 | |
| id | string | query | 是 |
回傳
回傳:GetV2PageReactUsersResponse
範例

addPage 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
回應
範例

deletePage 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
回傳
Returns: DeletePageAPIResponse
範例

getOfflineUsers 
Past commenters on the page who are NOT currently online. Sorted by displayName.
頁面上過去的評論者(目前未在線)。依 displayName 排序。
Use this after exhausting /users/online to render a "Members" section.
在耗盡 /users/online 後使用,以呈現「成員」區段。
Cursor pagination on commenterName: server walks the partial {tenantId, urlId, commenterName} index from afterName forward via $gt, no $skip cost.
在 commenterName 上使用游標分頁:伺服器從 afterName 開始,透過 $gt 向前走訪部分 {tenantId, urlId, commenterName} 索引,無 $skip 成本。
Parameters
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| urlId | string | query | Yes | 頁面 URL 識別碼(在伺服器端清理)。 |
| afterName | string | query | No | 游標:從先前的回應中傳入 nextAfterName。(可選) |
| afterUserId | string | query | No | 游標平手斷點:從先前的回應中傳入 nextAfterUserId。當 afterName 被設定時此為必填,以避免因名稱相同而遺漏條目。(可選) |
Response
範例

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 
參數
| 名稱 | Type | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | 查詢 | 是 | |
| urlId | string | 查詢 | 是 |
回應
範例

getPages 
參數
| 名稱 | 型別 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
回應
範例

getUsersInfo 
批次取得租戶的使用者資訊。給定 userIds,回傳來自 User / SSOUser 的顯示資訊。 由評論小工具使用,以補充剛透過 presence 事件出現的使用者資訊。 無頁面上下文:隱私會統一強制執行(私人檔案會被遮蔽)。
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| ids | string | query | 是 | 逗號分隔的 userIds。 |
回應
範例

patchPage 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| id | string | path | Yes |
回傳
範例

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 | 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 | |
| skip | number | query | No |
回應
返回:GetPendingWebhookEventsResponse
範例

createQuestionConfig 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
回應
回傳: CreateQuestionConfigResponse
範例

deleteQuestionConfig 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
回應
回傳: APIEmptyResponse
範例

getQuestionConfig 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
回應
範例

getQuestionConfigs 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| skip | number | query | 否 |
回應
回傳: GetQuestionConfigsResponse
範例

updateQuestionConfig 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
回應
回傳: APIEmptyResponse
範例

createQuestionResult 
參數
| 名稱 | Type | Location | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
回應
回傳: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 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
回應
範例

deleteSSOUser 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| 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 | Yes | |
| string | path | Yes |
回應
回傳: GetSSOUserByEmailAPIResponse
範例

getSSOUserById 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
回應
範例

getSSOUsers 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| skip | integer | query | 否 |
回傳
範例

patchSSOUser 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| id | string | path | Yes | |
| updateComments | boolean | query | No |
回應
範例

putSSOUser 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| 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 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| userId | string | query | 否 |
回應
回傳: GetSubscriptionsAPIResponse
範例

updateSubscription 
參數
| 名稱 | 類型 | 位置 | 必要 | 描述 |
|---|---|---|---|---|
| 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 | Yes | |
| id | string | path | Yes |
回應
範例

getTenantPackages 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| skip | number | query | 否 |
回應
範例

replaceTenantPackage 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
回應
範例

updateTenantPackage 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
回應
回傳: APIEmptyResponse
範例

createTenantUser 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 |
回應
範例

deleteTenantUser 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| deleteComments | string | query | 否 | |
| commentDeleteMode | string | query | 否 |
回應
範例

getTenantUser 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
回應
範例

getTenantUsers 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| skip | number | query | 否 |
回應
範例

replaceTenantUser 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| updateComments | string | query | 否 |
回應
回傳: APIEmptyResponse
範例

sendLoginLink 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| redirectURL | string | query | 否 |
回應
範例

updateTenantUser 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| updateComments | string | query | 否 |
回應
回傳: APIEmptyResponse
範例

createTenant 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 |
回應
範例

deleteTenant 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | 查詢 | 是 | |
| id | string | 路徑 | 是 | |
| sure | string | 查詢 | 否 |
回應
回傳: APIEmptyResponse
範例

getTenant 
參數
| 名稱 | Type | Location | 必要 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
回應
範例

getTenants 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| 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 
參數
| 名稱 | 型別 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| userId | string | query | 否 |
回應
範例

getTickets 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| userId | string | query | No | |
| state | number | query | No | |
| skip | number | query | No | |
| limit | number | query | No |
回應
範例

getTranslations 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| namespace | string | path | 是 | |
| component | string | path | 是 | |
| locale | string | query | 否 | |
| useFullTranslationIds | boolean | query | 否 |
回應
範例

uploadImage 
上傳並調整圖像大小
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | path | 是 | |
| sizePreset | string | query | 否 | 尺寸預設值: "Default" (1000x1000px) 或 "CrossPlatform" (為流行裝置建立多種尺寸) |
| urlId | string | query | 否 | 上傳發生的頁面 ID,用於設定(可選) |
回應
範例

getUserBadgeProgressById 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
回應
回傳:APIGetUserBadgeProgressResponse
範例

getUserBadgeProgressByUserId 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| userId | string | path | Yes |
回應
Returns: APIGetUserBadgeProgressResponse
範例

getUserBadgeProgressList 
參數
| 名稱 | 類型 | 位置 | 必要 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| userId | string | query | 否 | |
| limit | number | query | 否 | |
| skip | number | query | 否 |
回應
返回:APIGetUserBadgeProgressListResponse
範例

createUserBadge 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 |
回應
範例

deleteUserBadge 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
回應
範例

getUserBadge 
參數
| 名稱 | 類型 | 位置 | 必要 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
回應
範例

getUserBadges 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| userId | string | query | No | |
| badgeId | string | query | No | |
| type | number | query | No | |
| displayedOnComments | boolean | query | No | |
| limit | number | query | No | |
| skip | number | query | No |
回應
Returns: APIGetUserBadgesResponse
範例

updateUserBadge 
參數
| 名稱 | 型別 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 |
回應
範例

getUserNotificationCount 
參數
| 名稱 | 型別 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| sso | string | query | 否 |
回應
回傳: GetUserNotificationCountResponse
範例

getUserNotifications 
Parameters
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| urlId | string | query | No | 用於判斷目前的頁面是否已訂閱。 |
| pageSize | integer | query | No | |
| afterId | string | query | No | |
| includeContext | boolean | query | No | |
| afterCreatedAt | integer | query | No | |
| unreadOnly | boolean | query | No | |
| dmOnly | boolean | query | No | |
| noDm | boolean | query | No | |
| includeTranslations | boolean | query | No | |
| includeTenantNotifications | boolean | query | No | |
| sso | string | query | No |
Response
範例

resetUserNotificationCount 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| 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 |
回應
Returns: ResetUserNotificationsResponse
範例

updateUserNotificationCommentSubscriptionStatus 
啟用或停用針對特定評論的通知。
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| notificationId | string | path | 是 | |
| optedInOrOut | string | path | 是 | |
| commentId | string | query | 是 | |
| sso | string | query | 否 |
回應
回傳: UpdateUserNotificationCommentSubscriptionStatusResponse
範例

updateUserNotificationPageSubscriptionStatus 
啟用或停用頁面通知。當使用者訂閱頁面時,會為新的根評論建立通知,並且也
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| urlId | string | query | 是 | |
| url | string | query | 是 | |
| pageTitle | string | query | 是 | |
| subscribedOrUnsubscribed | string | path | 是 | |
| sso | string | query | 否 |
回應
回傳: UpdateUserNotificationPageSubscriptionStatusResponse
範例

updateUserNotificationStatus 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | 查詢參數 | 是 | |
| notificationId | string | 路徑參數 | 是 | |
| newStatus | string | 路徑參數 | 是 | |
| sso | string | 查詢參數 | 否 |
回應
回傳:UpdateUserNotificationStatusResponse
範例

getUserPresenceStatuses 
參數
| 名稱 | 型別 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| urlIdWS | string | query | 是 | |
| userIds | string | query | 是 |
回應
回傳: GetUserPresenceStatusesResponse
範例

searchUsers 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| 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 | 是 |
回應
範例

createVote 
參數
| 名稱 | 類型 | 位置 | 必填 | 說明 |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | query | Yes | |
| direction | string | query | Yes | |
| userId | string | query | No | |
| anonUserId | string | query | No |
回應
回傳: VoteResponse
範例

deleteVote 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| id | string | path | 是 | |
| editKey | string | query | 否 |
回應
範例

getVotes 
參數
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| urlId | string | query | 是 |
回應
範例

getVotesForUser 
參數
| 名稱 | 類型 | 位置 | 必填 | 描述 |
|---|---|---|---|---|
| tenantId | string | query | 是 | |
| urlId | string | query | 是 | |
| userId | string | query | 否 | |
| anonUserId | string | query | 否 |
回應
範例

需要幫助?
如果您在使用 Swift SDK 時遇到任何問題或有任何疑問,請:
貢獻
歡迎貢獻!請造訪 GitHub 存放庫 以取得貢獻指南。