FastComments.com

FastComments Nim SDK


์ด๊ฒƒ์€ FastComments์šฉ ๊ณต์‹ Nim SDK์ž…๋‹ˆ๋‹ค.

FastComments API์šฉ ๊ณต์‹ Nim SDK

์ €์žฅ์†Œ

GitHub์—์„œ ๋ณด๊ธฐ


์š”๊ตฌ ์‚ฌํ•ญ Internal Link


  • Nim >= 1.6.0
  • nimcrypto >= 0.5.4

์„ค์น˜ Internal Link


Nimble ์‚ฌ์šฉํ•˜๊ธฐ

nimble install fastcomments

์†Œ์Šค์—์„œ ๋นŒ๋“œํ•˜๊ธฐ

nimble build

๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋‚ด์šฉ

์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์—๋Š” ์ƒ์„ฑ๋œ API ํด๋ผ์ด์–ธํŠธ์™€ API ์ž‘์—…์„ ๋” ์‰ฝ๊ฒŒ ํ•ด์ฃผ๋Š” SSO ์œ ํ‹ธ๋ฆฌํ‹ฐ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

๊ณต๊ฐœ API์™€ ๋ณด์•ˆ API

API ํด๋ผ์ด์–ธํŠธ์—๋Š” api_default, api_public, api_moderation์˜ ์„ธ ๊ฐ€์ง€ API ๋ชจ๋“ˆ์ด ์žˆ์Šต๋‹ˆ๋‹ค. api_default๋Š” API ํ‚ค๊ฐ€ ํ•„์š”ํ•œ ๋ฉ”์„œ๋“œ๋ฅผ ํฌํ•จํ•˜๊ณ , api_public์€ ์ธ์ฆ ์—†์ด ๋ธŒ๋ผ์šฐ์ €/๋ชจ๋ฐ”์ผ ์žฅ์น˜ ๋“ฑ์—์„œ ์ง์ ‘ ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ๋Š” API ํ˜ธ์ถœ์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. api_moderation ๋ชจ๋“ˆ์—๋Š” ๊ด€๋ฆฌ์ž ๋Œ€์‹œ๋ณด๋“œ๋ฅผ ์œ„ํ•œ ๋ฉ”์„œ๋“œ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

api_moderation ๋ฉ”์„œ๋“œ๋Š” ๋Œ“๊ธ€ ๋ฐ ํ•ด๋‹น ๋กœ๊ทธ์˜ ๋ชฉ๋กํ™”, ๊ฐœ์ˆ˜ ์ง‘๊ณ„, ๊ฒ€์ƒ‰ ๋ฐ ๋‚ด๋ณด๋‚ด๊ธฐ; ๋Œ“๊ธ€ ์ œ๊ฑฐ/๋ณต์›, ํ”Œ๋ž˜๊ทธ ์ง€์ •, ๊ฒ€ํ† /์ŠคํŒธ/์Šน์ธ ์ƒํƒœ ์„ค์ •, ํˆฌํ‘œ ์กฐ์ •, ์Šค๋ ˆ๋“œ ์žฌ๊ฐœ๋ฐฉ/๋‹ซ๊ธฐ ๊ฐ™์€ ์ค‘์žฌ ์ž‘์—…; ์ฐจ๋‹จ(๋Œ“๊ธ€์—์„œ ์‚ฌ์šฉ์ž๋ฅผ ์ฐจ๋‹จ, ์ฐจ๋‹จ ์ทจ์†Œ, ์‚ฌ์ „ ์ฐจ๋‹จ ์š”์•ฝ, ์ฐจ๋‹จ ์ƒํƒœ ๋ฐ ํ™˜๊ฒฝ์„ค์ •, ์ฐจ๋‹จ๋œ ์‚ฌ์šฉ์ž ์ˆ˜); ๊ทธ๋ฆฌ๊ณ  ๋ฐฐ์ง€ ๋ฐ ์‹ ๋ขฐ๋„(๋ฐฐ์ง€ ์ˆ˜์—ฌ/์ œ๊ฑฐ, ์ˆ˜๋™ ๋ฐฐ์ง€ ๋ชฉ๋ก, ์‚ฌ์šฉ์ž์˜ ์‹ ๋ขฐ๋„ ๊ฐ€์ ธ์˜ค๊ธฐ/์„ค์ •, ์‚ฌ์šฉ์ž์˜ ๋‚ด๋ถ€ ํ”„๋กœํ•„ ๊ฐ€์ ธ์˜ค๊ธฐ)๋ฅผ ๋‹ค๋ฃน๋‹ˆ๋‹ค. ๋ชจ๋“  api_moderation ๋ฉ”์„œ๋“œ๋Š” ํ˜ธ์ถœ์ด SSO ๊ด€๋ฆฌ์ž ์ž๊ฒฉ์œผ๋กœ ์ธ์ฆ๋˜๋„๋ก sso ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.

๋น ๋ฅธ ์‹œ์ž‘ Internal Link

์ธ์ฆ๋œ API ์‚ฌ์šฉ (DefaultAPI)

์ค‘์š”: ์ธ์ฆ๋œ ์—”๋“œํฌ์ธํŠธ๋Š” x-api-key ํ—ค๋”์— API ํ‚ค๊ฐ€ ์„ค์ •๋˜์–ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

import httpclient
import fastcomments
import fastcomments/apis/api_default
import fastcomments/models/model_comment_data

let client = newHttpClient()
client.headers["x-api-key"] = "your-api-key"

# ์ธ์ฆ๋œ API ํ˜ธ์ถœ
let (response, httpResponse) = getComments(
  httpClient = client,
  tenantId = "your-tenant-id",
  page = 0,
  limit = 0,
  skip = 0,
  asTree = false,
  skipChildren = 0,
  limitChildren = 0,
  maxTreeDepth = 0,
  urlId = "your-url-id",
  userId = "",
  anonUserId = "",
  contextUserId = "",
  hashTag = "",
  parentId = "",
  direction = SortDirections.DESC
)

if response.isSome:
  let resp = response.get()
  if resp.comments.isSome:
    echo "Found ", resp.comments.get().len, " comments"

๊ณต๊ฐœ API ์‚ฌ์šฉ (PublicAPI)

๊ณต๊ฐœ ์—”๋“œํฌ์ธํŠธ๋Š” ์ธ์ฆ์ด ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค:

import httpclient
import fastcomments
import fastcomments/apis/api_public

let client = newHttpClient()

# ๊ณต๊ฐœ API ํ˜ธ์ถœ
let (response, httpResponse) = getCommentsPublic(
  httpClient = client,
  tenantId = "your-tenant-id",
  urlId = "your-url-id",
  page = 0,
  direction = SortDirections.DESC,
  sso = "",
  skip = 0,
  skipChildren = 0,
  limit = 0,
  limitChildren = 0,
  countChildren = false,
  fetchPageForCommentId = "",
  includeConfig = false,
  countAll = false,
  includei10n = false,
  locale = "",
  modules = "",
  isCrawler = false,
  includeNotificationCount = false,
  asTree = false,
  maxTreeDepth = 0,
  useFullTranslationIds = false,
  parentId = "",
  searchText = "",
  hashTags = @[],
  userId = "",
  customConfigStr = "",
  afterCommentId = "",
  beforeCommentId = ""
)

if response.isSome:
  let resp = response.get()
  if resp.comments.isSome:
    echo "Found ", resp.comments.get().len, " comments"

๋ชจ๋”๋ ˆ์ด์…˜ API ์‚ฌ์šฉ (ModerationAPI)

๋ชจ๋”๋ ˆ์ด์…˜ ์—”๋“œํฌ์ธํŠธ๋Š” ๋ชจ๋”๋ ˆ์ดํ„ฐ ๋Œ€์‹œ๋ณด๋“œ๋ฅผ ๊ตฌ๋™ํ•˜๋ฉฐ, ํ•ด๋‹น ๋ชจ๋”๋ ˆ์ดํ„ฐ์˜ SSO ํ† ํฐ์œผ๋กœ ์ธ์ฆ๋ฉ๋‹ˆ๋‹ค:

import httpclient
import fastcomments
import fastcomments/apis/api_moderation

let client = newHttpClient()

# ๋ชจ๋”๋ ˆ์ด์…˜ ๋Œ€์‹œ๋ณด๋“œ์˜ ๋Œ“๊ธ€ ๋ชฉ๋ก
let (response, httpResponse) = getApiComments(
  httpClient = client,
  page = 0,
  count = 30,
  textSearch = "",
  byIPFromComment = "",
  filters = "",
  searchFilters = "",
  sorts = "",
  demo = false,
  sso = "your-sso-token"
)

if response.isSome:
  let resp = response.get()
  echo "Found ", resp.comments.len, " comments"

์ผ๋ฐ˜์ ์ธ ๋ฌธ์ œ

  1. 401 ์ธ์ฆ ์˜ค๋ฅ˜: DefaultAPI ์š”์ฒญ์„ ํ•˜๊ธฐ ์ „์— HttpClient์— x-api-key ํ—ค๋”๋ฅผ ์„ค์ •ํ–ˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”: client.headers["x-api-key"] = "your-api-key"
  2. ์ž˜๋ชป๋œ API ํด๋ž˜์Šค: ์„œ๋ฒ„ ์ธก ์ธ์ฆ๋œ ์š”์ฒญ์—๋Š” api_default๋ฅผ ์‚ฌ์šฉํ•˜๊ณ , ํด๋ผ์ด์–ธํŠธ ์ธก/๊ณต๊ฐœ ์š”์ฒญ์—๋Š” api_public์„ ์‚ฌ์šฉํ•˜๋ฉฐ, ๋ชจ๋”๋ ˆ์ดํ„ฐ ๋Œ€์‹œ๋ณด๋“œ ์š”์ฒญ์—๋Š” api_moderation์„ ์‚ฌ์šฉํ•˜์„ธ์š”.

API ํ˜ธ์ถœํ•˜๊ธฐ Internal Link


์ด SDK์˜ ๋ชจ๋“  API ๋ฉ”์„œ๋“œ๋Š” (Option[ResponseType], Response) ํŠœํ”Œ์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ ์š”์†Œ์—๋Š” ์„ฑ๊ณต ์‹œ ํŒŒ์‹ฑ๋œ ์‘๋‹ต์ด ๋“ค์–ด ์žˆ๊ณ , ๋‘ ๋ฒˆ์งธ ์š”์†Œ๋Š” ์›์‹œ HTTP ์‘๋‹ต์ž…๋‹ˆ๋‹ค.

์˜ˆ์ œ: ๋Œ“๊ธ€ ๊ฐ€์ ธ์˜ค๊ธฐ

import httpclient
import options
import fastcomments
import fastcomments/apis/api_default

let client = newHttpClient()
client.headers["x-api-key"] = "your-api-key"

let (response, httpResponse) = getComments(
  httpClient = client,
  tenantId = "your-tenant-id",
  page = 0,
  limit = 0,
  skip = 0,
  asTree = false,
  skipChildren = 0,
  limitChildren = 0,
  maxTreeDepth = 0,
  urlId = "your-url-id",
  userId = "",
  anonUserId = "",
  contextUserId = "",
  hashTag = "",
  parentId = "",
  direction = SortDirections.DESC
)

if httpResponse.code == Http200:
  if response.isSome:
    let resp = response.get()
    if resp.comments.isSome:
      echo "Found ", resp.comments.get().len, " comments"

์ฐธ๊ณ  Internal Link

๋ธŒ๋กœ๋“œ์บ์ŠคํŠธ ID

์ผ๋ถ€ API ํ˜ธ์ถœ์—์„œ๋Š” broadcastId๋ฅผ ์ „๋‹ฌํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ๋ณด๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์ด๋ฒคํŠธ๋ฅผ ์ˆ˜์‹ ํ•  ๋•Œ ์ด ID๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋ฏ€๋กœ, ํด๋ผ์ด์–ธํŠธ์—์„œ ๋ณ€๊ฒฝ์„ ๋‚™๊ด€์ ์œผ๋กœ ์ ์šฉํ•˜๋ ค๋Š” ๊ฒฝ์šฐ(์‚ฌ์šฉ์ž ๊ฒฝํ—˜์ด ๊ฐ€์žฅ ์ข‹๊ธฐ ๋•Œ๋ฌธ์— ์•„๋งˆ ๊ทธ๋ ‡๊ฒŒ ํ•˜๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค) ํ•ด๋‹น ์ด๋ฒคํŠธ๋ฅผ ๋ฌด์‹œํ•ด์•ผ ํ•˜๋Š”์ง€ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์— UUID๋ฅผ ์ „๋‹ฌํ•˜์„ธ์š”. ์ด ID๋Š” ๋ธŒ๋ผ์šฐ์ € ์„ธ์…˜ ๋‚ด์—์„œ ๋‘ ๋ฒˆ ๋ฐœ์ƒํ•˜์ง€ ์•Š์„ ๋งŒํผ ์ถฉ๋ถ„ํžˆ ๊ณ ์œ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

SSO (์‹ฑ๊ธ€ ์‚ฌ์ธ์˜จ)

SSO ์˜ˆ์ œ๋Š” ์•„๋ž˜๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

SSO ์‚ฌ์šฉ๋ฒ• Internal Link

๊ฐ„๋‹จํ•œ SSO

import fastcomments/sso

let user = newSimpleSSOUserData(
  userId = "user-123",
  email = "user@example.com",
  avatar = "https://example.com/avatar.jpg"
)
let sso = newSimple(simpleUserData = user)
let token = sso.createToken()

echo "SSO Token: ", token

๋ณด์•ˆ SSO

import fastcomments/sso

let user = newSecureSSOUserData(
  userId = "user-123",
  email = "user@example.com",
  username = "johndoe",
  avatar = "https://example.com/avatar.jpg"
)

let apiKey = "your-api-key"
let sso = newSecure(apiKey = apiKey, secureUserData = user)
let token = sso.createToken()

echo "Secure SSO Token: ", token

aggregate Internal Link


๋ฌธ์„œ๋ฅผ ๊ทธ๋ฃนํ™”(groupBy๊ฐ€ ์ œ๊ณต๋œ ๊ฒฝ์šฐ)ํ•˜๊ณ  ์—ฌ๋Ÿฌ ์—ฐ์‚ฐ์„ ์ ์šฉํ•˜์—ฌ ์ง‘๊ณ„ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์–‘ํ•œ ์—ฐ์‚ฐ(์˜ˆ: sum, countDistinct, avg ๋“ฑ)์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstringYes
aggregationRequestAggregationRequestNo
parentTenantIdstringNo
includeStatsboolNo

์‘๋‹ต

๋ฐ˜ํ™˜: Option[AggregateResponse]

์˜ˆ์ œ

aggregate ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.aggregate(
3 tenantId = "my-tenant-123",
4 aggregationRequest = AggregationRequest(groupBy = @["articleId"], metrics = @["commentCount"], filters = @[], limit = 0),
5 parentTenantId = "",
6 includeStats = false
7)
8
9if response.isSome:
10 let agg = response.get()
11 discard agg
12

getAuditLogs Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
limitfloat64์•„๋‹ˆ์š”
skipfloat64์•„๋‹ˆ์š”
orderSORTDIR์•„๋‹ˆ์š”
afterfloat64์•„๋‹ˆ์š”
beforefloat64์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetAuditLogsResponse]

์˜ˆ์ œ

getAuditLogs ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getAuditLogs(
3 tenantId = "my-tenant-123",
4 limit = 50.0,
5 skip = 0.0,
6 order = SORTDIR.DESC,
7 after = 1622505600.0,
8 before = 1625097600.0
9)
10
11if response.isSome:
12 let logs = response.get()
13 echo logs
14else:
15 echo "No audit logs returned"
16

logoutPublic Internal Link

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

logoutPublic ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.logoutPublic(tenantId = "my-tenant-123", sessionId = "sess-9a8b7c6d", userId = "editor-87", revokeAll = false, ipAddress = "")
3if response.isSome:
4 let emptyResp = response.get()
5 echo "Logout successful for user: ", "editor-87"
6else:
7 echo "Logout failed"
8

blockFromCommentPublic Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
commentIdstring์˜ˆ
publicBlockFromCommentParamsPublicBlockFromCommentParams์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[BlockSuccess]

์˜ˆ์ œ

blockFromCommentPublic ์˜ˆ์ œ
Copy Copy
1
2let publicParams = PublicBlockFromCommentParams(
3 reason = "Repeated spam links",
4 durationMinutes = 1440,
5 blockAll = true,
6 notifyUser = false,
7 tags = @["spam", "auto-block"]
8)
9
10let (response, httpResponse) = client.blockFromCommentPublic(
11 tenantId = "my-tenant-123",
12 commentId = "comment-98765",
13 publicBlockFromCommentParams = publicParams,
14 sso = ""
15)
16
17if response.isSome:
18 let blockResult = response.get()
19 echo "Block succeeded: ", $blockResult
20else:
21 echo "Block failed, HTTP status: ", $httpResponse.status
22

unBlockCommentPublic Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
commentIdstring์˜ˆ
publicBlockFromCommentParamsPublicBlockFromCommentParams์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[UnblockSuccess]

์˜ˆ์ œ

unBlockCommentPublic ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.unBlockCommentPublic(tenantId = "my-tenant-123", commentId = "cmt-987654321", publicBlockFromCommentParams = PublicBlockFromCommentParams(), sso = "")
3if response.isSome:
4 let unblockResult = response.get()
5 discard unblockResult
6else:
7 discard httpResponse
8

checkedCommentsForBlocked Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
commentIdsstring์•„๋‹ˆ์š”
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[CheckBlockedCommentsResponse]

์˜ˆ์ œ

checkedCommentsForBlocked ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.checkedCommentsForBlocked(
3 tenantId = "my-tenant-123",
4 commentIds = "",
5 sso = ""
6)
7if response.isSome:
8 let blockedResp = response.get()
9 echo "Received blocked comments response: ", blockedResp
10else:
11 echo "No response body; HTTP status: ", $httpResponse.status
12

blockUserFromComment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”
blockFromCommentParamsBlockFromCommentParams์•„๋‹ˆ์š”
userIdstring์•„๋‹ˆ์š”
anonUserIdstring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[BlockSuccess]

์˜ˆ์ œ

blockUserFromComment ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.blockUserFromComment(
3 tenantId = "my-tenant-123",
4 id = "cmt-7890",
5 blockFromCommentParams = BlockFromCommentParams(
6 reason = "Repeated abusive language",
7 durationMinutes = 1440,
8 notifyUser = true,
9 tags = @["abuse", "automated"]
10 ),
11 userId = "user-456",
12 anonUserId = ""
13)
14
15if response.isSome:
16 let result = response.get()
17 discard result
18else:
19 discard httpResponse
20

createCommentPublic Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
urlIdstring์˜ˆ
broadcastIdstring์•„๋‹ˆ์š”
commentDataCommentData์•„๋‹ˆ์š”
sessionIdstring์•„๋‹ˆ์š”
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[SaveCommentsResponseWithPresence]

์˜ˆ์ œ

createCommentPublic ์˜ˆ์ œ
Copy Copy
1
2let commentPayload = CommentData(
3 text = "Great write-up on serverless architectures.",
4 authorName = "Jane Doe",
5 authorEmail = "jane.doe@example.com",
6 isPublic = true,
7 tags = @["tech", "serverless"]
8)
9let (response, httpResponse) = client.createCommentPublic(
10 tenantId = "my-tenant-123",
11 urlId = "news/2026/06/fastcomments-sdk-update",
12 broadcastId = "broadcast-2026-06-19",
13 commentData = commentPayload,
14 sessionId = "sess-8a7b6c",
15 sso = "sso-jwt-abc123"
16)
17if response.isSome:
18 let saved = response.get()
19 discard saved
20

deleteComment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”
contextUserIdstring์•„๋‹ˆ์š”
isLivebool์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[DeleteCommentResult]

์˜ˆ์ œ

deleteComment ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteComment(tenantId = "my-tenant-123", id = "cmt-98765", contextUserId = "user-456", isLive = true)
3if response.isSome:
4 let result = response.get()
5 echo "DeleteCommentResult received"
6else:
7 echo "No result, HTTP status: ", httpResponse.status
8

deleteCommentPublic Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
commentIdstring์˜ˆ
broadcastIdstring์•„๋‹ˆ์š”
editKeystring์•„๋‹ˆ์š”
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[PublicAPIDeleteCommentResponse]

์˜ˆ์ œ

deleteCommentPublic ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteCommentPublic(tenantId = "my-tenant-123", commentId = "cmt-987654321", broadcastId = "", editKey = "", sso = "")
3if response.isSome:
4 let deleted = response.get()
5 echo "Delete acknowledged, HTTP status: ", httpResponse.status
6

deleteCommentVote Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
commentIdstring์˜ˆ
voteIdstring์•„๋‹ˆ์˜ค
urlIdstring์˜ˆ
broadcastIdstring์•„๋‹ˆ์˜ค
editKeystring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[VoteDeleteResponse]

์˜ˆ์ œ

deleteCommentVote ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteCommentVote(
3 tenantId = "my-tenant-123",
4 commentId = "comment-456",
5 voteId = "vote-789",
6 urlId = "news/article-title",
7 broadcastId = "",
8 editKey = "",
9 sso = ""
10)
11if response.isSome:
12 let voteResp = response.get()
13 echo "Vote delete response:", voteResp
14else:
15 echo "No response body, HTTP response:", httpResponse
16

flagComment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค
userIdstring์•„๋‹ˆ์˜ค
anonUserIdstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[FlagCommentResponse]

์˜ˆ์ œ

flagComment ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.flagComment(
3 tenantId = "my-tenant-123",
4 id = "cmt-98765",
5 userId = "user-12345",
6 anonUserId = ""
7)
8
9if response.isSome:
10 let flagResp = response.get()
11 echo "Flag response received"
12else:
13 echo "No flag response returned"
14

getComment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIGetCommentResponse]

์˜ˆ์ œ

getComment ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getComment(tenantId = "my-tenant-123", id = "cmt-7890")
3if response.isSome:
4 let comment = response.get()
5 discard comment
6else:
7 echo "Comment not found"
8

getComments Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
pageint์•„๋‹ˆ์˜ค
limitint์•„๋‹ˆ์˜ค
skipint์•„๋‹ˆ์˜ค
asTreebool์•„๋‹ˆ์˜ค
skipChildrenint์•„๋‹ˆ์˜ค
limitChildrenint์•„๋‹ˆ์˜ค
maxTreeDepthint์•„๋‹ˆ์˜ค
urlIdstring์˜ˆ
userIdstring์•„๋‹ˆ์˜ค
anonUserIdstring์•„๋‹ˆ์˜ค
contextUserIdstring์•„๋‹ˆ์˜ค
hashTagstring์•„๋‹ˆ์˜ค
parentIdstring์•„๋‹ˆ์˜ค
directionSortDirections์•„๋‹ˆ์˜ค
fromDateint64์•„๋‹ˆ์˜ค
toDateint64์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIGetCommentsResponse]

์˜ˆ์ œ

getComments ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getComments(
3 tenantId = "my-tenant-123",
4 page = 1,
5 limit = 25,
6 skip = 0,
7 asTree = true,
8 skipChildren = 0,
9 limitChildren = 5,
10 maxTreeDepth = 3,
11 urlId = "news/2026-global-economy",
12 userId = "user-789",
13 anonUserId = "",
14 contextUserId = "",
15 hashTag = "economy",
16 parentId = "",
17 direction = SortDirections.Desc,
18 fromDate = 1710000000000'i64,
19 toDate = 1710100000000'i64
20)
21if response.isSome:
22 let commentsResp = response.get()
23 discard commentsResp
24

getCommentsPublic Internal Link

req tenantId urlId

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstringYes
urlIdstringYes
pageintNo
directionSortDirectionsNo
ssostringNo
skipintNo
skipChildrenintNo
limitintNo
limitChildrenintNo
countChildrenboolNo
fetchPageForCommentIdstringNo
includeConfigboolNo
countAllboolNo
includei10nboolNo
localestringNo
modulesstringNo
isCrawlerboolNo
includeNotificationCountboolNo
asTreeboolNo
maxTreeDepthintNo
useFullTranslationIdsboolNo
parentIdstringNo
searchTextstringNo
hashTagsseq[string]No
userIdstringNo
customConfigStrstringNo
afterCommentIdstringNo
beforeCommentIdstringNo

์‘๋‹ต

๋ฐ˜ํ™˜๊ฐ’: Option[GetCommentsResponseWithPresencePublicComment]

์˜ˆ์ œ

getCommentsPublic ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getCommentsPublic(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 page = 2,
6 direction = SortDirections.Descending,
7 sso = "",
8 skip = 0,
9 skipChildren = 0,
10 limit = 25,
11 limitChildren = 5,
12 countChildren = false,
13 fetchPageForCommentId = "",
14 includeConfig = true,
15 countAll = false,
16 includei10n = true,
17 locale = "en-US",
18 modules = "reactions,moderation",
19 isCrawler = false,
20 includeNotificationCount = true,
21 asTree = true,
22 maxTreeDepth = 3,
23 useFullTranslationIds = false,
24 parentId = "",
25 searchText = "climate change",
26 hashTags = @["climate", "research"],
27 userId = "user-789",
28 customConfigStr = "",
29 afterCommentId = "",
30 beforeCommentId = ""
31)
32
33if response.isSome:
34 let commentsResp = response.get()
35 echo "Received comments response:"
36 echo commentsResp
37else:
38 echo "No comments returned. HTTP status:", httpResponse.status
39

getCommentText Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
commentIdstring์˜ˆ
editKeystring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[PublicAPIGetCommentTextResponse]

์˜ˆ์ œ

getCommentText ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getCommentText(tenantId = "my-tenant-123", commentId = "cmt-987654321", editKey = "", sso = "")
3
4if response.isSome:
5 let commentTextResp = response.get()
6 echo commentTextResp
7else:
8 echo "No comment text returned"
9

getCommentVoteUserNames Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
commentIdstring์˜ˆ
dirint์•„๋‹ˆ์š”
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetCommentVoteUserNamesSuccessResponse]

์˜ˆ์ œ

getCommentVoteUserNames ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getCommentVoteUserNames(tenantId = "my-tenant-123", commentId = "cmt-987654", dir = 0, sso = "")
3if response.isSome:
4 let success: GetCommentVoteUserNamesSuccessResponse = response.get()
5 discard success
6

lockComment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
commentIdstring์˜ˆ
broadcastIdstring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

lockComment ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.lockComment(tenantId = "news-tenant-42", commentId = "cmt-8f3a2b9d", broadcastId = "", sso = "")
3if response.isSome:
4 let apiResp = response.get()
5 echo "Locked comment successfully for tenant news-tenant-42"
6else:
7 echo "Failed to lock comment, HTTP status: ", $httpResponse.status
8

pinComment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
commentIdstring์˜ˆ
broadcastIdstring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ChangeCommentPinStatusResponse]

์˜ˆ์ œ

pinComment ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.pinComment(tenantId = "my-tenant-123", commentId = "cmt-98765", broadcastId = "", sso = "")
3if response.isSome:
4 let pinnedResp = response.get()
5 echo "Pin status updated for comment cmt-98765"
6else:
7 echo "No response received"
8

saveComment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
createCommentParamsCreateCommentParams์•„๋‹ˆ์˜ค
isLivebool์•„๋‹ˆ์˜ค
doSpamCheckbool์•„๋‹ˆ์˜ค
sendEmailsbool์•„๋‹ˆ์˜ค
populateNotificationsbool์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APISaveCommentResponse]

์˜ˆ์ œ

saveComment ์˜ˆ์ œ
Copy Copy
1
2let createCommentParams = CreateCommentParams(
3 urlId = "news/2026/major-policy-change",
4 content = "This is a thoughtful comment on the policy change and its potential impacts.",
5 authorName = "Morgan Lee",
6 authorEmail = "morgan.lee@example.org",
7 tags = @["policy","analysis"],
8 extraData = @[])
9
10let (response, httpResponse) = client.saveComment(
11 tenantId = "my-tenant-123",
12 createCommentParams = createCommentParams,
13 isLive = true,
14 doSpamCheck = true,
15 sendEmails = false,
16 populateNotifications = true)
17
18if response.isSome:
19 let saved = response.get()
20 discard saved
21

saveCommentsBulk Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
createCommentParamsseq[CreateCommentParams]์•„๋‹ˆ์˜ค
isLivebool์•„๋‹ˆ์˜ค
doSpamCheckbool์•„๋‹ˆ์˜ค
sendEmailsbool์•„๋‹ˆ์˜ค
populateNotificationsbool): (Option[seq[SaveCommentsBulkResponse]]์•„๋‹ˆ์˜ค
idstring์•„๋‹ˆ์˜ค
fromNamestring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

saveCommentsBulk ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.saveCommentsBulk(
3 tenantId = "my-tenant-123",
4 createCommentParams = @[],
5 isLive = false,
6 doSpamCheck = false,
7 sendEmails = false,
8 populateNotifications = false,
9 id = "",
10 fromName = ""
11)
12
13if response.isSome:
14 let apiResp = response.get()
15 echo "Bulk save succeeded, tenant:", " my-tenant-123"
16else:
17 echo "Bulk save returned no API response"
18

setCommentText Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
commentIdstring์˜ˆ
broadcastIdstring์•„๋‹ˆ์˜ค
commentTextUpdateRequestCommentTextUpdateRequest์•„๋‹ˆ์˜ค
editKeystring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[PublicAPISetCommentTextResponse]

์˜ˆ์ œ

setCommentText ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.setCommentText(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-456789",
5 broadcastId = "",
6 commentTextUpdateRequest = CommentTextUpdateRequest(text: "Updated comment text to fix a typo and clarify meaning."),
7 editKey = "",
8 sso = ""
9)
10if response.isSome:
11 let result = response.get()
12 discard result
13

unBlockUserFromComment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค
unBlockFromCommentParamsUnBlockFromCommentParams์•„๋‹ˆ์˜ค
userIdstring์•„๋‹ˆ์˜ค
anonUserIdstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[UnblockSuccess]

์˜ˆ์ œ

unBlockUserFromComment ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.unBlockUserFromComment(
3 tenantId = "my-tenant-123",
4 id = "comment-9f3b2a",
5 unBlockFromCommentParams = UnBlockFromCommentParams(),
6 userId = "user-1024",
7 anonUserId = "anon-77b"
8)
9
10if response.isSome:
11 let unblockResult = response.get()
12 echo unblockResult
13else:
14 echo "Unblock failed"
15

unFlagComment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค
userIdstring์•„๋‹ˆ์˜ค
anonUserIdstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[FlagCommentResponse]

์˜ˆ์ œ

unFlagComment ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.unFlagComment(tenantId = "my-tenant-123",
3 id = "comment-98765",
4 userId = "user-12345",
5 anonUserId = "")
6
7if response.isSome:
8 let flagResp = response.get()
9 echo "Unflagged comment response:", flagResp
10else:
11 echo "Unflag failed, HTTP status:", httpResponse.status
12

unLockComment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
commentIdstring์˜ˆ
broadcastIdstring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

unLockComment ์˜ˆ์ œ
Copy Copy
1
2let tenantId = "my-tenant-123"
3let commentId = "cmt-987654321"
4let (response, httpResponse) = client.unLockComment(
5 tenantId = tenantId,
6 commentId = commentId,
7 broadcastId = "",
8 sso = ""
9)
10if response.isSome:
11 let apiResp = response.get()
12 echo "Unlocked comment ", commentId, " for tenant ", tenantId
13else:
14 echo "Unlock failed, HTTP status: ", $httpResponse.status
15

unPinComment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
commentIdstring์˜ˆ
broadcastIdstring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ChangeCommentPinStatusResponse]

์˜ˆ์ œ

unPinComment ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.unPinComment(tenantId = "my-tenant-123", commentId = "cmt-987654321", broadcastId = "", sso = "")
3if response.isSome:
4 let result = response.get()
5 echo "Unpinned comment:", $result
6else:
7 echo "Unpin failed, HTTP status:", $httpResponse.status
8

updateComment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค
updatableCommentParamsUpdatableCommentParams์•„๋‹ˆ์˜ค
contextUserIdstring์•„๋‹ˆ์˜ค
doSpamCheckbool์•„๋‹ˆ์˜ค
isLivebool์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์‹œ

updateComment ์˜ˆ์‹œ
Copy Copy
1
2let (response, httpResponse) = client.updateComment(
3 tenantId = "my-tenant-123",
4 id = "cmt-987654",
5 updatableCommentParams = UpdatableCommentParams(
6 text = "Updated comment: corrected facts and clarified wording.",
7 isApproved = true,
8 tags = @["news", "update"]
9 ),
10 contextUserId = "user-456",
11 doSpamCheck = true,
12 isLive = true
13)
14
15if response.isSome:
16 let apiResp = response.get()
17 discard apiResp
18

voteComment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
commentIdstring์˜ˆ
urlIdstring์˜ˆ
broadcastIdstring์•„๋‹ˆ์˜ค
voteBodyParamsVoteBodyParams์•„๋‹ˆ์˜ค
sessionIdstring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[VoteResponse]

์˜ˆ์ œ

voteComment ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.voteComment(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-987654321",
5 urlId = "news/article-2026-inflation",
6 broadcastId = "",
7 voteBodyParams = VoteBodyParams(),
8 sessionId = "",
9 sso = ""
10)
11
12if response.isSome:
13 let voteResp = response.get()
14 discard voteResp
15else:
16 discard httpResponse
17

getCommentsForUser Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
userIdstring์•„๋‹ˆ์˜ค
directionSortDirections์•„๋‹ˆ์˜ค
repliesToUserIdstring์•„๋‹ˆ์˜ค
pagefloat64์•„๋‹ˆ์˜ค
includei10nbool์•„๋‹ˆ์˜ค
localestring์•„๋‹ˆ์˜ค
isCrawlerbool์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetCommentsForUserResponse]

์˜ˆ์ œ

getCommentsForUser ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getCommentsForUser(
3 userId = "user-8421",
4 direction = SortDirections.Newest,
5 repliesToUserId = "",
6 page = 1.0,
7 includei10n = true,
8 locale = "en-US",
9 isCrawler = false
10)
11
12if response.isSome:
13 let comments = response.get()
14 discard comments
15

addDomainConfig Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
addDomainConfigParamsAddDomainConfigParams์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[AddDomainConfigResponse]

์˜ˆ์ œ

addDomainConfig ์˜ˆ์ œ
Copy Copy
1
2let config = AddDomainConfigParams(
3 domain: "comments.example-news.com",
4 enabled: true,
5 allowedOrigins: @["https://www.example-news.com", "https://m.example-news.com"],
6 commentsPath: "/news/world/election-coverage",
7 priority: 5
8)
9let (response, httpResponse) = client.addDomainConfig(tenantId = "my-tenant-123", addDomainConfigParams = config)
10if response.isSome:
11 let created = response.get()
12 echo "Created domain config:", created
13else:
14 echo "Failed to create domain config, HTTP status:", httpResponse.status.code
15

deleteDomainConfig Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
domainstring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[DeleteDomainConfigResponse]

์˜ˆ์ œ

deleteDomainConfig ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteDomainConfig(tenantId = "my-tenant-123", domain = "news.example.com")
3if response.isSome:
4 let deleted = response.get()
5 echo "DeleteDomainConfig succeeded for tenant ", "my-tenant-123"
6else:
7 echo "DeleteDomainConfig failed. HTTP status: ", $httpResponse.status
8

getDomainConfig Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
domainstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetDomainConfigResponse]

์˜ˆ์ œ

getDomainConfig ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getDomainConfig(tenantId = "my-tenant-123", domain = "news/top-story-2026")
3if response.isSome:
4 let cfg = response.get()
5 discard cfg
6else:
7 discard httpResponse
8

getDomainConfigs Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetDomainConfigsResponse]

์˜ˆ์ œ

getDomainConfigs ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getDomainConfigs(tenantId = "my-tenant-123")
3if response.isSome:
4 let domainConfigs = response.get()
5 echo "Received domain configs for tenant my-tenant-123"
6 echo domainConfigs
7else:
8 echo "No domain configs returned"
9

patchDomainConfig Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
domainToUpdatestring์•„๋‹ˆ์š”
patchDomainConfigParamsPatchDomainConfigParams์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[PatchDomainConfigResponse]

์˜ˆ์ œ

patchDomainConfig ์˜ˆ์ œ
Copy Copy
1
2let patchParams: PatchDomainConfigParams = PatchDomainConfigParams(
3 allowedOrigins = @["https://news.example.com", "https://cdn.news.com"],
4 enableComments = true,
5 moderationRequired = false,
6 maxCommentLength = 2000,
7 primaryDomain = "comments.news-site.com"
8)
9let (response, httpResponse) = client.patchDomainConfig(
10 tenantId = "my-tenant-123",
11 domainToUpdate = "comments.news-site.com",
12 patchDomainConfigParams = patchParams
13)
14if response.isSome:
15 let cfg = response.get()
16 echo "Patched domain config received:", cfg
17else:
18 echo "No response body, HTTP status:", httpResponse.statusCode
19

putDomainConfig Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
domainToUpdatestring์•„๋‹ˆ์˜ค
updateDomainConfigParamsUpdateDomainConfigParams์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[PutDomainConfigResponse]

์˜ˆ์ œ

putDomainConfig ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.putDomainConfig(
3 tenantId = "my-tenant-123",
4 domainToUpdate = "blog.example.com",
5 updateDomainConfigParams = UpdateDomainConfigParams(
6 allowAnonymous = false,
7 moderationEnabled = true,
8 maxCommentLength = 800,
9 allowedOrigins = @["https://blog.example.com", "https://cdn.blog.example.com"],
10 enableThreadedComments = true
11 )
12)
13
14if response.isSome:
15 let cfg = response.get()
16 echo cfg
17else:
18 echo "Failed to update domain config, HTTP status: ", httpResponse.status
19

createEmailTemplate Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
createEmailTemplateBodyCreateEmailTemplateBody์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[CreateEmailTemplateResponse]

์˜ˆ์ œ

createEmailTemplate ์˜ˆ์‹œ
Copy Copy
1
2let (response, httpResponse) = client.createEmailTemplate(tenantId = "my-tenant-123",
3 createEmailTemplateBody = CreateEmailTemplateBody(
4 name = "Weekly Newsletter",
5 subject = "This Week on NewsSite",
6 html = "<h1>Latest updates</h1><p>Read our latest article.</p>",
7 fromAddress = "no-reply@newssite.com",
8 isDefault = false,
9 tags = @["news", "weekly"]
10 )
11)
12
13if response.isSome:
14 let template = response.get()
15 echo "Created email template id: ", template.id
16

deleteEmailTemplate Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

deleteEmailTemplate ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteEmailTemplate(
3 tenantId = "my-tenant-123",
4 id = "welcome-email-template-001"
5)
6
7if response.isSome:
8 let apiEmpty = response.get()
9 discard apiEmpty
10 echo "Email template deleted successfully"
11else:
12 echo "No response body"
13

deleteEmailTemplateRenderError Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”
errorIdstring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

deleteEmailTemplateRenderError ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteEmailTemplateRenderError(tenantId = "my-tenant-123", id = "welcome-email-template", errorId = "err-20250615-01")
3if response.isSome:
4 let emptyResp = response.get()
5 echo "Deleted render error, tenant:", "my-tenant-123"
6 echo "HTTP status:", httpResponse.status
7else:
8 echo "No body returned, HTTP status:", httpResponse.status
9

getEmailTemplate Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetEmailTemplateResponse]

์˜ˆ์ œ

getEmailTemplate ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getEmailTemplate(tenantId = "my-tenant-123", id = "welcome-email-01")
3if response.isSome:
4 let template = response.get()
5 discard template
6

getEmailTemplateDefinitions Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetEmailTemplateDefinitionsResponse]

์˜ˆ์ œ

getEmailTemplateDefinitions ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getEmailTemplateDefinitions(tenantId = "my-tenant-123")
3if response.isSome:
4 let definitions = response.get()
5 echo "Email template definitions for my-tenant-123: ", definitions
6else:
7 echo "Failed to retrieve templates, HTTP status: ", httpResponse.status
8

getEmailTemplateRenderErrors Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”
skipfloat64์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetEmailTemplateRenderErrorsResponse]

์˜ˆ์ œ

getEmailTemplateRenderErrors ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getEmailTemplateRenderErrors(tenantId = "my-tenant-123", id = "", skip = 0.0)
3if response.isSome:
4 let templateErrors = response.get()
5 discard templateErrors
6else:
7 discard httpResponse
8

getEmailTemplates Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
skipfloat64์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetEmailTemplatesResponse]

์˜ˆ์ œ

getEmailTemplates ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getEmailTemplates(tenantId = "my-tenant-123", skip = 0.0)
3if response.isSome:
4 let templates = response.get()
5 echo templates
6else:
7 echo "No email templates available"
8

renderEmailTemplate Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
renderEmailTemplateBodyRenderEmailTemplateBody์•„๋‹ˆ์š”
localestring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[RenderEmailTemplateResponse]

์˜ˆ์ œ

renderEmailTemplate ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.renderEmailTemplate(
3 tenantId = "my-tenant-123",
4 renderEmailTemplateBody = RenderEmailTemplateBody(),
5 locale = "en-US"
6)
7
8if response.isSome:
9 let rendered = response.get()
10 echo rendered
11

updateEmailTemplate Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstringYes
idstringNo
updateEmailTemplateBodyUpdateEmailTemplateBodyNo

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

updateEmailTemplate ์˜ˆ์ œ
Copy Copy
1
2let updateBody = UpdateEmailTemplateBody(
3 subject = "Welcome to Newsly",
4 html = "<p>Thanks for joining Newsly! Visit https://newsly.example to get started.</p>",
5 fromAddress = "no-reply@newsly.example",
6 fromName = "Newsly Team",
7 enabled = true
8)
9let (response, httpResponse) = client.updateEmailTemplate(tenantId = "my-tenant-123", id = "welcome-email", updateEmailTemplateBody = updateBody)
10if response.isSome:
11 let result = response.get()
12 discard result
13else:
14 discard httpResponse.statusCode
15

getEventLog Internal Link

req tenantId urlId userIdWS

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
urlIdstring์˜ˆ
userIdWSstring์•„๋‹ˆ์˜ค
startTimeint64์•„๋‹ˆ์˜ค
endTimeint64์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetEventLogResponse]

์˜ˆ์ œ

getEventLog ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getEventLog(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-2026-solar-panels",
5 userIdWS = "user-456",
6 startTime = 1688000000'i64,
7 endTime = 1688086400'i64
8)
9if response.isSome:
10 let eventLog = response.get()
11 discard eventLog
12

getGlobalEventLog Internal Link

req tenantId urlId userIdWS

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
urlIdstring์˜ˆ
userIdWSstring์•„๋‹ˆ์š”
startTimeint64์•„๋‹ˆ์š”
endTimeint64์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetEventLogResponse]

์˜ˆ์ œ

getGlobalEventLog ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getGlobalEventLog(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-2026-06-19",
5 userIdWS = "user-987",
6 startTime = int64(1622505600),
7 endTime = int64(1625097600)
8)
9if response.isSome:
10 let eventLog = response.get()
11 echo eventLog, httpResponse.statusCode
12

createFeedPost Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
createFeedPostParamsCreateFeedPostParams์•„๋‹ˆ์˜ค
broadcastIdstring์•„๋‹ˆ์˜ค
isLivebool์•„๋‹ˆ์˜ค
doSpamCheckbool์•„๋‹ˆ์˜ค
skipDupCheckbool์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[CreateFeedPostsResponse]

์˜ˆ์ œ

createFeedPost ์˜ˆ์ œ
Copy Copy
1
2let postParams = CreateFeedPostParams(
3 title = "Major Acquisition by TechCorp",
4 content = "TechCorp has acquired SoftWorks in a deal valued at $1.2B, creating a new market leader.",
5 url = "news/tech/major-acquisition",
6 tags = @["business", "technology"],
7 authorId = "journalist-321"
8)
9
10let (response, httpResponse) = client.createFeedPost(
11 tenantId = "my-tenant-123",
12 createFeedPostParams = postParams,
13 broadcastId = "",
14 isLive = false,
15 doSpamCheck = false,
16 skipDupCheck = false
17)
18
19if response.isSome:
20 let created = response.get()
21 discard created
22

createFeedPostPublic Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
createFeedPostParamsCreateFeedPostParams์•„๋‹ˆ์˜ค
broadcastIdstring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[CreateFeedPostResponse]

์˜ˆ์ œ

createFeedPostPublic ์˜ˆ์ œ
Copy Copy
1
2let params = CreateFeedPostParams(
3 title = "Breaking: Major Update on Product X",
4 content = "Today we released Product X v2.0 with performance improvements and bug fixes.",
5 author = "jane.doe",
6 tags = @["product", "release", "v2"],
7 isPinned = false
8)
9
10let (response, httpResponse) = client.createFeedPostPublic(tenantId = "my-tenant-123", createFeedPostParams = params, broadcastId = "", sso = "")
11
12if response.isSome:
13 let created = response.get()
14 echo "Created feed post:", created
15else:
16 echo "Failed to create feed post; HTTP status:", httpResponse.status
17

deleteFeedPostPublic Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
postIdstring์•„๋‹ˆ์š”
broadcastIdstring์•„๋‹ˆ์š”
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[DeleteFeedPostPublicResponse]

์˜ˆ์ œ

deleteFeedPostPublic ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteFeedPostPublic(tenantId = "my-tenant-123", postId = "", broadcastId = "", sso = "")
3if response.isSome:
4 let deleted = response.get()
5 echo "Delete successful"
6else:
7 echo "Delete failed"
8

getFeedPosts Internal Link


req tenantId afterId

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
afterIdstring์•„๋‹ˆ์˜ค
limitint์•„๋‹ˆ์˜ค
tagsseq[string]์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetFeedPostsResponse]

์˜ˆ์ œ

getFeedPosts ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getFeedPosts(
3 tenantId = "my-tenant-123",
4 afterId = "",
5 limit = 0,
6 tags = @[]
7)
8if response.isSome:
9 let feed = response.get()
10 echo "Feed retrieved for tenant my-tenant-123"
11

getFeedPostsPublic Internal Link


req tenantId afterId

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
afterIdstring์•„๋‹ˆ์š”
limitint์•„๋‹ˆ์š”
tagsseq[string]์•„๋‹ˆ์š”
ssostring์•„๋‹ˆ์š”
isCrawlerbool์•„๋‹ˆ์š”
includeUserInfobool์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[PublicFeedPostsResponse]

์˜ˆ์ œ

getFeedPostsPublic ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getFeedPostsPublic(
3 tenantId = "my-tenant-123",
4 afterId = "",
5 limit = 0,
6 tags = @[],
7 sso = "",
8 isCrawler = false,
9 includeUserInfo = false
10)
11if response.isSome:
12 let feed = response.get()
13 discard feed
14

getFeedPostsStats Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
postIdsseq[string]์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[FeedPostsStatsResponse]

์˜ˆ์ œ

getFeedPostsStats ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getFeedPostsStats(tenantId = "my-tenant-123", postIds = @["news/article-2026", "opinion/market-trends"], sso = "")
3if response.isSome:
4 let stats = response.get()
5 echo "Received feed posts stats for tenant:", " my-tenant-123"
6 discard stats
7

getUserReactsPublic Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
postIdsseq[string]์•„๋‹ˆ์š”
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[UserReactsResponse]

์˜ˆ์ œ

getUserReactsPublic ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getUserReactsPublic(
3 tenantId = "my-tenant-123",
4 postIds = @["news/article-2026", "blog/opinion-987"],
5 sso = ""
6)
7if response.isSome:
8 let reacts = response.get()
9 echo "Received user reacts for tenant: ", "my-tenant-123"
10

reactFeedPostPublic Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
postIdstring์•„๋‹ˆ์˜ค
reactBodyParamsReactBodyParams์•„๋‹ˆ์˜ค
isUndobool์•„๋‹ˆ์˜ค
broadcastIdstring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ReactFeedPostResponse]

์˜ˆ์ œ

reactFeedPostPublic ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.reactFeedPostPublic(
3 tenantId = "my-tenant-123",
4 postId = "news/article-2026-06-19",
5 reactBodyParams = ReactBodyParams(reactType = "heart", tags = @["breaking", "editorial"]),
6 isUndo = false,
7 broadcastId = "broadcast-789",
8 sso = "sso-token-abc123"
9)
10if response.isSome:
11 let react = response.get()
12 echo react
13else:
14 echo "No response from reactFeedPostPublic, HTTP status:", httpResponse.statusCode
15

updateFeedPost Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค
feedPostFeedPost์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

updateFeedPost ์˜ˆ์ œ
Copy Copy
1
2let feedPost: FeedPost = FeedPost(title: "City Council Approves New Waterfront Park",
3 content: "The council voted 5-2 to approve funding and a timeline for construction.",
4 tags: @["local", "parks", "city"],
5 published: true)
6
7let (response, httpResponse) = client.updateFeedPost(tenantId = "my-tenant-123", id = "post-456", feedPost = feedPost)
8
9if response.isSome:
10 let apiResp = response.get()
11 echo "Feed post updated successfully"
12 echo apiResp
13else:
14 echo "Failed to update feed post"
15 echo httpResponse
16

updateFeedPostPublic Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
postIdstring์•„๋‹ˆ์˜ค
updateFeedPostParamsUpdateFeedPostParams์•„๋‹ˆ์˜ค
broadcastIdstring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[CreateFeedPostResponse]

์˜ˆ์ œ

updateFeedPostPublic ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.updateFeedPostPublic(
3 tenantId = "my-tenant-123",
4 postId = "post-456",
5 updateFeedPostParams = UpdateFeedPostParams(title = "Weekly Product Update", content = "Released bug fixes and performance improvements in v2.1.", tags = @["release", "product"], pinned = false),
6 broadcastId = "",
7 sso = ""
8)
9if response.isSome:
10 let created = response.get()
11 echo "Updated feed post id: ", created.postId
12else:
13 echo "Update failed with HTTP status: ", httpResponse.status
14

flagCommentPublic Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
commentIdstring์˜ˆ
isFlaggedbool์•„๋‹ˆ์š”
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

flagCommentPublic ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.flagCommentPublic(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-456789",
5 isFlagged = true,
6 sso = ""
7)
8
9if response.isSome:
10 let apiResp = response.get()
11 discard apiResp
12else:
13 discard httpResponse
14

getGifLarge Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
largeInternalURLSanitizedstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GifGetLargeResponse]

์˜ˆ์ œ

getGifLarge ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getGifLarge(tenantId = "news-tenant-42", largeInternalURLSanitized = "")
3if response.isSome:
4 let gif = response.get()
5 echo "Received GifGetLargeResponse"
6 discard gif
7else:
8 echo "No gif returned, HTTP status: " & $httpResponse.status
9

getGifsSearch Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
searchstring์•„๋‹ˆ์˜ค
localestring์•„๋‹ˆ์˜ค
ratingstring์•„๋‹ˆ์˜ค
pagefloat64์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetGifsSearchResponse]

์˜ˆ์ œ

getGifsSearch ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getGifsSearch(
3 tenantId = "my-tenant-123",
4 search = "funny cat",
5 locale = "en-US",
6 rating = "PG",
7 page = 1.0
8)
9
10if response.isSome:
11 let gifs = response.get()
12 echo "Fetched GIFs response:", gifs
13

getGifsTrending Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
localestring์•„๋‹ˆ์˜ค
ratingstring์•„๋‹ˆ์˜ค
pagefloat64์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetGifsTrendingResponse]

์˜ˆ์ œ

getGifsTrending ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getGifsTrending(tenantId = "my-tenant-123",
3 locale = "en-US",
4 rating = "pg-13",
5 page = 1.0)
6if response.isSome:
7 let trending = response.get()
8

addHashTag Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
createHashTagBodyCreateHashTagBody์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[CreateHashTagResponse]

์˜ˆ์ œ

addHashTag ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.addHashTag(tenantId = "my-tenant-123",
3 createHashTagBody = CreateHashTagBody(name = "Breaking News",
4 slug = "breaking-news",
5 description = "Major breaking news items",
6 color = "#ff0000",
7 isTrending = true,
8 aliases = @["breaking", "news"]))
9if response.isSome:
10 let created = response.get()
11 echo created
12

addHashTagsBulk Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
bulkCreateHashTagsBodyBulkCreateHashTagsBody์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[BulkCreateHashTagsResponse]

์˜ˆ์ œ

addHashTagsBulk ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.addHashTagsBulk(tenantId = "my-tenant-123", bulkCreateHashTagsBody = BulkCreateHashTagsBody(hashTags = @["news", "breaking", "politics"], replaceExisting = false))
3if response.isSome:
4 let result = response.get()
5 echo "Bulk tags response:", result
6else:
7 echo "No response body, HTTP status:", httpResponse.statusCode
8

deleteHashTag Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tagstring์•„๋‹ˆ์˜ค
tenantIdstring์˜ˆ
deleteHashTagRequestBodyDeleteHashTagRequestBody์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

deleteHashTag ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteHashTag(
3 tag = "",
4 tenantId = "my-tenant-123",
5 deleteHashTagRequestBody = DeleteHashTagRequestBody()
6)
7
8if response.isSome:
9 let emptyResp = response.get()
10 echo "Deleted hashtag for tenant my-tenant-123; response:", $emptyResp, " status:", $httpResponse.status
11else:
12 echo "No response body; status:", $httpResponse.status
13

getHashTags Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
pagefloat64์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetHashTagsResponse]

์˜ˆ์ œ

getHashTags ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getHashTags(tenantId = "news-portal-987", page = 2.0)
3if response.isSome:
4 let tagsResp = response.get()
5 echo "Received hashtags response"
6else:
7 echo "No hashtags returned"
8

patchHashTag Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tagstring์•„๋‹ˆ์š”
tenantIdstring์˜ˆ
updateHashTagBodyUpdateHashTagBody์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[UpdateHashTagResponse]

์˜ˆ์ œ

patchHashTag ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.patchHashTag(tag = "breaking-news", tenantId = "my-tenant-123", updateHashTagBody = UpdateHashTagBody())
3if response.isSome:
4 let updatedHashTag = response.get()
5 echo updatedHashTag
6

deleteModerationVote Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
commentIdstring์˜ˆ
voteIdstring์•„๋‹ˆ์š”
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[VoteDeleteResponse]

์˜ˆ์ œ

deleteModerationVote ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteModerationVote(commentId = "my-tenant-123/news/article-title/comment-987", voteId = "vote-456", sso = "sso-token-abc")
3if response.isSome:
4 let voteResp = response.get()
5 echo "Vote deleted:", voteResp
6else:
7 echo "Delete failed:", httpResponse
8

getApiComments Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
pagefloat64์•„๋‹ˆ์˜ค
countfloat64์•„๋‹ˆ์˜ค
textSearchstring์•„๋‹ˆ์˜ค
byIPFromCommentstring์•„๋‹ˆ์˜ค
filtersstring์•„๋‹ˆ์˜ค
searchFiltersstring์•„๋‹ˆ์˜ค
sortsstring์•„๋‹ˆ์˜ค
demobool์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ModerationAPIGetCommentsResponse]

์˜ˆ์ œ

getApiComments ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getApiComments(
3 page = 1.0,
4 count = 25.0,
5 textSearch = "opinion on climate summit",
6 byIPFromComment = "198.51.100.23",
7 filters = "status:approved",
8 searchFilters = "section:world",
9 sorts = "-createdAt",
10 demo = false,
11 sso = "sso-user-982bf"
12)
13
14if response.isSome:
15 let commentsResp = response.get()
16 echo "Retrieved comments response"
17else:
18 echo "No comments returned, HTTP status: ", httpResponse.status
19

getApiExportStatus Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
batchJobIdstring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ModerationExportStatusResponse]

์˜ˆ์ œ

getApiExportStatus ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getApiExportStatus(batchJobId = "export-job-2026-06-01", sso = "sso-abc123token")
3if response.isSome:
4 let exportStatus = response.get()
5 echo repr(exportStatus)
6else:
7 echo "No export status available, HTTP code: ", httpResponse.statusCode
8

getApiIds Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
textSearchstring์•„๋‹ˆ์˜ค
byIPFromCommentstring์•„๋‹ˆ์˜ค
filtersstring์•„๋‹ˆ์˜ค
searchFiltersstring์•„๋‹ˆ์˜ค
afterIdstring์•„๋‹ˆ์˜ค
demobool์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ModerationAPIGetCommentIdsResponse]

์˜ˆ์ œ

getApiIds ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getApiIds(
3 textSearch = "urgent moderation review",
4 byIPFromComment = "203.0.113.45",
5 filters = "status:pending,flagged",
6 searchFilters = "author:jane.doe@example.com",
7 afterId = "cmt_9f8e7d6a",
8 demo = false,
9 sso = "sso-token-6b7f9a"
10)
11
12if response.isSome:
13 let idsResp = response.get()
14 echo idsResp
15

getBanUsersFromComment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
commentIdstringYes
ssostringNo

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetBannedUsersFromCommentResponse]

์˜ˆ์ œ

getBanUsersFromComment ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getBanUsersFromComment(commentId = "comment-98765", sso = "")
3if response.isSome:
4 let bannedResp = response.get()
5 discard bannedResp
6else:
7 echo "No banned users found or request failed"
8

getCommentBanStatus Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
commentIdstring์˜ˆ
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetCommentBanStatusResponse]

์˜ˆ์ œ

getCommentBanStatus ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getCommentBanStatus(commentId = "cmt-987654321", sso = "")
3
4if response.isSome:
5 let banStatus = response.get()
6 echo "Ban status for comment cmt-987654321: ", banStatus
7else:
8 echo "No ban status returned for comment cmt-987654321"
9

getCommentChildren Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
commentIdstring์˜ˆ
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ModerationAPIChildCommentsResponse]

์˜ˆ์ œ

getCommentChildren ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getCommentChildren(commentId = "comment-98765", sso = "")
3if response.isSome:
4 let childResp = response.get()
5 discard childResp
6

getCount Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
textSearchstring์•„๋‹ˆ์˜ค
byIPFromCommentstring์•„๋‹ˆ์˜ค
filterstring์•„๋‹ˆ์˜ค
searchFiltersstring์•„๋‹ˆ์˜ค
demobool์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ModerationAPICountCommentsResponse]

์˜ˆ์ œ

getCount ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getCount(
3 textSearch = "climate change",
4 byIPFromComment = "203.0.113.5",
5 filter = "status:approved",
6 searchFilters = "author:john.doe@example.com;tag:opinion",
7 demo = false,
8 sso = "sso_eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9"
9)
10if response.isSome:
11 let countResp = response.get()
12 discard countResp
13 echo "Count response received"
14else:
15 echo "No count data returned"
16

getCounts Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetBannedUsersCountResponse]

์˜ˆ์ œ

getCounts ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getCounts(sso = "sso_my-tenant-123_token_AbCdEf123456")
3if response.isSome:
4 let counts = response.get()
5 echo counts
6else:
7 echo "Request failed with status:", httpResponse.status
8

getLogs Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
commentIdstring์˜ˆ
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ModerationAPIGetLogsResponse]

์˜ˆ์ œ

getLogs ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getLogs(commentId = "cmt-8471f2d3", sso = "")
3if response.isSome:
4 let logs = response.get()
5 echo "Fetched logs:", logs
6

getManualBadges Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetTenantManualBadgesResponse]

์˜ˆ์ œ

getManualBadges ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getManualBadges(sso = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9")
3if response.isSome:
4 let badges = response.get()
5 echo "Manual badges received:"
6 echo badges
7else:
8 echo "No manual badges returned."
9 echo httpResponse
10

getManualBadgesForUser Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
badgesUserIdstring์•„๋‹ˆ์˜ค
commentIdstring์˜ˆ
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetUserManualBadgesResponse]

์˜ˆ์ œ

getManualBadgesForUser ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getManualBadgesForUser(
3 badgesUserId = "user-98765",
4 commentId = "comment-0a1b2c3d",
5 sso = "sso-eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9"
6)
7if response.isSome:
8 let badges = response.get()
9 echo "Received manual badges for user"
10 echo "HTTP status: ", httpResponse.status
11

getModerationComment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
commentIdstring์˜ˆ
includeEmailbool์•„๋‹ˆ์š”
includeIPbool์•„๋‹ˆ์š”
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ModerationAPICommentResponse]

์˜ˆ์ œ

getModerationComment ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getModerationComment(commentId = "cmt-8f3b2a9d", includeEmail = false, includeIP = false, sso = "")
3if response.isSome:
4 let comment = response.get()
5 discard comment
6else:
7 echo "No moderation comment returned"
8

getModerationCommentText Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
commentIdstring์˜ˆ
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetCommentTextResponse]

์˜ˆ์ œ

getModerationCommentText ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getModerationCommentText(commentId = "comment-9f8b7a6c", sso = "")
3if response.isSome:
4 let commentData = response.get()
5 echo "Moderation comment text retrieved"
6else:
7 echo "No moderation comment text available"
8

getPreBanSummary Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
commentIdstring์˜ˆ
includeByUserIdAndEmailbool์•„๋‹ˆ์š”
includeByIPbool์•„๋‹ˆ์š”
includeByEmailDomainbool์•„๋‹ˆ์š”
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[PreBanSummary]

์˜ˆ์ œ

getPreBanSummary ์˜ˆ์ œ
Copy Copy
1
2let commentId = "cmt-7423"
3let (response, httpResponse) = client.getPreBanSummary(
4 commentId = commentId,
5 includeByUserIdAndEmail = false,
6 includeByIP = false,
7 includeByEmailDomain = false,
8 sso = ""
9)
10if response.isSome:
11 let preBanSummary = response.get()
12 discard preBanSummary
13else:
14 discard httpResponse
15

getSearchCommentsSummary Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
valuestring์•„๋‹ˆ์˜ค
filtersstring์•„๋‹ˆ์˜ค
searchFiltersstring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ModerationCommentSearchResponse]

์˜ˆ์ œ

getSearchCommentsSummary ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getSearchCommentsSummary(
3 value = "news/climate-change-2026",
4 filters = "{\"tenantId\":\"my-tenant-123\",\"siteId\":\"main-site\",\"status\":\"approved\"}",
5 searchFilters = "author:journalist@news.com OR content:climate",
6 sso = "sso-xyz-7890"
7)
8if response.isSome:
9 let summary = response.get()
10 echo "Received summary: ", $summary
11else:
12 echo "No summary returned, HTTP response: ", $httpResponse
13

getSearchPages Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
valuestringNo
ssostringNo

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ModerationPageSearchResponse]

์˜ˆ์ œ

getSearchPages ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getSearchPages(value = "news/politics/election-2024", sso = "sso-user-7f3b9c")
3if response.isSome:
4 let pageSearch = response.get()
5 echo "Moderation page search returned"
6else:
7 echo "No moderation pages found"
8

getSearchSites Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
valuestring์•„๋‹ˆ์š”
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ModerationSiteSearchResponse]

์˜ˆ์ œ

getSearchSites ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getSearchSites(value = "news/2026-olympics", sso = "sso-user-9876-token")
3if response.isSome:
4 let searchResponse: ModerationSiteSearchResponse = response.get()
5 echo "Found sites for search:", searchResponse
6

getSearchSuggest Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
textSearchstring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ModerationSuggestResponse]

์˜ˆ์ œ

getSearchSuggest ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getSearchSuggest(textSearch = "suspicious comment with spammy links", sso = "sso-user-789")
3if response.isSome:
4 let suggest = response.get()
5 echo "ModerationSuggestResponse:"
6 echo suggest
7else:
8 echo "No moderation suggestions returned. HTTP status: ", httpResponse.status
9

getSearchUsers Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
valuestring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ModerationUserSearchResponse]

์˜ˆ์ œ

getSearchUsers ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getSearchUsers(value = "john.doe@example.com", sso = "sso-acme-789")
3if response.isSome:
4 let searchRes = response.get()
5 echo "Search result:", searchRes
6else:
7 echo "No users found"
8

getTrustFactor Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
userIdstringNo
ssostringNo

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetUserTrustFactorResponse]

์˜ˆ์ œ

getTrustFactor ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getTrustFactor(userId = "user-1001", sso = "sso-token-6f7d9c")
3if response.isSome:
4 let trust = response.get()
5 echo "Received trust factor for user-1001"
6else:
7 echo "No trust factor returned, HTTP status: ", $httpResponse.status
8

getUserBanPreference Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIModerateGetUserBanPreferencesResponse]

์˜ˆ์ œ

getUserBanPreference ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getUserBanPreference(sso = "sso-jwt-7f3a9b")
3if response.isSome:
4 let prefs = response.get()
5 echo "User ban preferences:", prefs
6else:
7 echo "No ban preference found"
8

getUserInternalProfile Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
commentIdstring์˜ˆ
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetUserInternalProfileResponse]

์˜ˆ์ œ

getUserInternalProfile ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getUserInternalProfile(commentId = "cmt-2026-00042", sso = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjoibXl1c2VyIn0.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c")
3if response.isSome:
4 let profile = response.get()
5 discard profile
6

postAdjustCommentVotes Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
commentIdstring์˜ˆ
adjustCommentVotesParamsAdjustCommentVotesParams์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[AdjustVotesResponse]

์˜ˆ์ œ

postAdjustCommentVotes ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.postAdjustCommentVotes(commentId = "cmt-987654", adjustCommentVotesParams = nil, sso = "sso-token-abc123")
3if response.isSome:
4 let adjusted = response.get()
5 discard adjusted
6

postApiExport Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeํ•„์ˆ˜์„ค๋ช…
textSearchstring์•„๋‹ˆ์˜ค
byIPFromCommentstring์•„๋‹ˆ์˜ค
filtersstring์•„๋‹ˆ์˜ค
searchFiltersstring์•„๋‹ˆ์˜ค
sortsstring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ModerationExportResponse]

์˜ˆ์ œ

postApiExport ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.postApiExport(
3 textSearch = "offensive language and spam",
4 byIPFromComment = "203.0.113.45",
5 filters = "{\"status\":\"pending\",\"severity\":\"high\"}",
6 searchFilters = "authorEmail:editor@news-site.com",
7 sorts = "-createdAt",
8 sso = "sso-session-token-9f8b7c"
9)
10if response.isSome:
11 let exportResp = response.get()
12 echo "Moderation export received:", exportResp
13else:
14 echo "No export returned, HTTP status:", httpResponse.status.code
15

postBanUserFromComment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
commentIdstring์˜ˆ
banEmailbool์•„๋‹ˆ์˜ค
banEmailDomainbool์•„๋‹ˆ์˜ค
banIPbool์•„๋‹ˆ์˜ค
deleteAllUsersCommentsbool์•„๋‹ˆ์˜ค
bannedUntilstring์•„๋‹ˆ์˜ค
isShadowBanbool์•„๋‹ˆ์˜ค
updateIdstring์•„๋‹ˆ์˜ค
banReasonstring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[BanUserFromCommentResult]

์˜ˆ์ œ

postBanUserFromComment ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.postBanUserFromComment(
3 commentId = "cmt-8f3a1b",
4 banEmail = false,
5 banEmailDomain = false,
6 banIP = false,
7 deleteAllUsersComments = false,
8 bannedUntil = "",
9 isShadowBan = false,
10 updateId = "",
11 banReason = "",
12 sso = ""
13)
14if response.isSome:
15 let banResult = response.get()
16 discard banResult
17else:
18 echo "No ban result returned"
19

postBanUserUndo Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
banUserUndoParamsBanUserUndoParams์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

postBanUserUndo ์˜ˆ์ œ
Copy Copy
1
2let banParams = BanUserUndoParams(
3 tenantId = "my-tenant-123",
4 userId = "user-987",
5 undoneBy = "moderator-42",
6 reason = "Reinstated after manual review"
7)
8let (response, httpResponse) = client.postBanUserUndo(banUserUndoParams = banParams, sso = "sso-jwt-abc123")
9if response.isSome:
10 let apiResp = response.get()
11 echo "Ban undo succeeded, http status: " & $httpResponse.status
12else:
13 echo "Ban undo failed, http status: " & $httpResponse.status
14

postBulkPreBanSummary Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
bulkPreBanParamsBulkPreBanParams์•„๋‹ˆ์˜ค
includeByUserIdAndEmailbool์•„๋‹ˆ์˜ค
includeByIPbool์•„๋‹ˆ์˜ค
includeByEmailDomainbool์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[BulkPreBanSummary]

์˜ˆ์ œ

postBulkPreBanSummary ์˜ˆ์ œ
Copy Copy
1
2let bulkParams = BulkPreBanParams(
3 tenantId = "my-tenant-123",
4 userIds = @["user-456", "user-789"],
5 emails = @["spammer@example.com", "bot@malicious.org"],
6 ipAddresses = @["203.0.113.5", "198.51.100.42"],
7 emailDomains = @["malicious.org"]
8)
9
10let (response, httpResponse) = client.postBulkPreBanSummary(
11 bulkPreBanParams = bulkParams,
12 includeByUserIdAndEmail = true,
13 includeByIP = true,
14 includeByEmailDomain = false,
15 sso = "sso-token-abc123"
16)
17
18if response.isSome:
19 let summary = response.get()
20 echo "Pre-ban summary:", summary
21

postCommentsByIds Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
commentsByIdsParamsCommentsByIdsParams์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ModerationAPIChildCommentsResponse]

์˜ˆ์ œ

postCommentsByIds ์˜ˆ์ œ
Copy Copy
1
2let commentsParams = CommentsByIdsParams(ids = @["cmt-1001", "cmt-1002"], includeReplies = true, maxDepth = 2)
3let (response, httpResponse) = client.postCommentsByIds(commentsByIdsParams = commentsParams, sso = "sso-user-7f3a9b")
4if response.isSome:
5 let result = response.get()
6 echo "Received child comments response: ", result
7

postFlagComment Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
commentIdstring์˜ˆ
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

postFlagComment ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.postFlagComment(commentId = "comment-742", sso = "")
3if response.isSome:
4 let apiResp = response.get()
5 echo "Comment flagged successfully"
6else:
7 echo "Failed to flag comment"
8

postRemoveComment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
commentIdstring์˜ˆ
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[PostRemoveCommentResponse]

์˜ˆ์ œ

postRemoveComment ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.postRemoveComment(commentId = "cmt-987654321", sso = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.abc123.signature")
3if response.isSome:
4 let removed = response.get()
5 echo "Comment removed:", removed
6else:
7 echo "Failed to remove comment, HTTP response:", httpResponse
8

postRestoreDeletedComment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
commentIdstring์˜ˆ
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

postRestoreDeletedComment ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.postRestoreDeletedComment(commentId = "comment-8a7b6c5d", sso = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.SAMPLE_SIGNATURE")
3if response.isSome:
4 let apiResp = response.get()
5 echo "Comment restored:", apiResp
6else:
7 echo "Restore request failed"
8

postSetCommentApprovalStatus Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
commentIdstring์˜ˆ
approvedbool์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[SetCommentApprovedResponse]

์˜ˆ์ œ

postSetCommentApprovalStatus ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.postSetCommentApprovalStatus(commentId = "cmt-7890", approved = false, sso = "")
3if response.isSome:
4 let setResp = response.get()
5 discard setResp
6

postSetCommentReviewStatus Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
commentIdstring์˜ˆ
reviewedbool์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

postSetCommentReviewStatus ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.postSetCommentReviewStatus(
3 commentId = "cmt-98765-news-article",
4 reviewed = false,
5 sso = ""
6)
7if response.isSome:
8 let apiResp = response.get()
9 echo "Review status updated"
10else:
11 echo "Failed to update review status: " & $httpResponse.status
12

postSetCommentSpamStatus Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
commentIdstring์˜ˆ
spambool์•„๋‹ˆ์˜ค
permNotSpambool์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

postSetCommentSpamStatus ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.postSetCommentSpamStatus(
3 commentId = "cmt-20250619-842",
4 spam = false,
5 permNotSpam = false,
6 sso = ""
7)
8if response.isSome:
9 let apiEmpty = response.get()
10 discard apiEmpty
11

postSetCommentText Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
commentIdstring์˜ˆ
setCommentTextParamsSetCommentTextParams์•„๋‹ˆ์š”
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[SetCommentTextResponse]

์˜ˆ์ œ

postSetCommentText ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.postSetCommentText(commentId = "comment-4821",
3 setCommentTextParams = SetCommentTextParams(text = "Updated comment to clarify the main point and fix a typo."),
4 sso = "sso-user-8f3b9c")
5
6if response.isSome:
7 let setCommentResp = response.get()
8 echo "Received SetCommentTextResponse"
9

postUnFlagComment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
commentIdstring์˜ˆ
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

postUnFlagComment ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.postUnFlagComment(commentId = "comment-8f3a2b4e", sso = "")
3if response.isSome:
4 let apiEmpty = response.get()
5 echo "Comment unflagged successfully, response: ", apiEmpty
6else:
7 echo "Failed to unflag comment. HTTP response: ", httpResponse
8

postVote Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
commentIdstring์˜ˆ
directionstring์•„๋‹ˆ์š”
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[VoteResponse]

์˜ˆ์ œ

postVote ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.postVote(commentId = "comment-4f3a9e", direction = "up", sso = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjoidXNlci0xMjMifQ.signedPart")
3if response.isSome:
4 let vote = response.get()
5 echo "Vote recorded:", vote
6else:
7 echo "No vote returned"
8

putAwardBadge Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
badgeIdstring์•„๋‹ˆ์˜ค
userIdstring์•„๋‹ˆ์˜ค
commentIdstring์˜ˆ
broadcastIdstring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[AwardUserBadgeResponse]

์˜ˆ์ œ

putAwardBadge ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.putAwardBadge(
3 badgeId = "gold-contributor",
4 userId = "user-8723",
5 commentId = "cmt-54a3b2",
6 broadcastId = "",
7 sso = ""
8)
9if response.isSome:
10 let award = response.get()
11 echo "Awarded badge received"
12else:
13 echo "No award response"
14

putCloseThread Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
urlIdstring์˜ˆ
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

putCloseThread ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.putCloseThread(urlId = "news/article-title", sso = "")
3if response.isSome:
4 let apiResp = response.get()
5 echo "Thread closed successfully:", $apiResp
6else:
7 echo "Failed to close thread, HTTP response:", $httpResponse
8

putRemoveBadge Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
badgeIdstring์•„๋‹ˆ์˜ค
userIdstring์•„๋‹ˆ์˜ค
commentIdstring์˜ˆ
broadcastIdstring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[RemoveUserBadgeResponse]

์˜ˆ์ œ

putRemoveBadge ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.putRemoveBadge(badgeId = "verified-journalist",
3 userId = "user-7890",
4 commentId = "comment-98765",
5 broadcastId = "",
6 sso = "")
7
8if response.isSome:
9 let removeResp = response.get()
10 discard removeResp
11else:
12 discard httpResponse
13

putReopenThread Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
urlIdstring์˜ˆ
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

putReopenThread ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.putReopenThread(urlId = "news/2026-election-analysis", sso = "")
3if response.isSome:
4 let apiResp = response.get()
5 echo "Reopen succeeded, response: ", apiResp
6else:
7 echo "Reopen failed, HTTP status: ", httpResponse.status
8

setTrustFactor Internal Link


Parameters

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
userIdstring์•„๋‹ˆ์š”
trustFactorstring์•„๋‹ˆ์š”
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[SetUserTrustFactorResponse]

์˜ˆ์ œ

setTrustFactor ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.setTrustFactor(userId = "user-9876", trustFactor = "high", sso = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ1c2VyLTk4NzYiLCJpYXQiOjE2MjQwMDAwMDB9.signature")
3if response.isSome:
4 let resultObj = response.get()
5 echo resultObj
6else:
7 echo "No response received"
8

createModerator Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
createModeratorBodyCreateModeratorBody์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[CreateModeratorResponse]

์˜ˆ์ œ

createModerator ์˜ˆ์ œ
Copy Copy
1
2var body: CreateModeratorBody
3body.username = "alice.moderator"
4body.displayName = "Alice Moderator"
5body.email = "alice@news-site.com"
6body.enabled = true
7body.roles = @["moderator"]
8body.notes = ""
9
10let (response, httpResponse) = client.createModerator(tenantId = "my-tenant-123", createModeratorBody = body)
11if response.isSome:
12 let created = response.get()
13 echo "Created moderator ID: ", created.id
14

deleteModerator Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค
sendEmailstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

deleteModerator ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteModerator(tenantId = "my-tenant-123", id = "", sendEmail = "")
3if response.isSome:
4 let apiEmpty = response.get()
5 echo "Moderator deleted successfully for tenant my-tenant-123"
6else:
7 echo "No response returned; inspect httpResponse"
8

getModerator Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetModeratorResponse]

์˜ˆ์ œ

getModerator ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getModerator(tenantId = "my-tenant-123", id = "mod-456")
3if response.isSome:
4 let moderator = response.get()
5 echo moderator
6else:
7 echo "Moderator not found, HTTP status: ", $httpResponse.status
8

getModerators Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
skipfloat64์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetModeratorsResponse]

์˜ˆ์ œ

getModerators ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getModerators(tenantId = "my-tenant-123", skip = 0.0)
3if response.isSome:
4 let moderators = response.get()
5 echo "Received moderators response:", moderators
6else:
7 echo "No moderators returned"
8

updateModerator Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”
updateModeratorBodyUpdateModeratorBody์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

updateModerator ์˜ˆ์ œ
Copy Copy
1
2let modBody: UpdateModeratorBody = UpdateModeratorBody(
3 displayName = "Alice Moderator",
4 email = "alice@newsdaily.com",
5 isActive = true,
6 permissions = @["delete_comments", "ban_users"]
7)
8
9let (response, httpResponse) = client.updateModerator(tenantId = "news-tenant-456", id = "moderator-789", updateModeratorBody = modBody)
10
11if response.isSome:
12 let apiEmpty = response.get()
13 echo "Moderator updated successfully. HTTP status: ", httpResponse.status
14else:
15 echo "Failed to update moderator. HTTP status: ", httpResponse.status
16

deleteNotificationCount Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

deleteNotificationCount ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteNotificationCount(tenantId = "my-tenant-123", id = "notification-789")
3if response.isSome:
4 let emptyResp = response.get()
5 echo "Notification count deleted for tenant: ", "my-tenant-123"
6else:
7 echo "Failed to delete notification count, status: ", $httpResponse.statusCode
8

getCachedNotificationCount Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetCachedNotificationCountResponse]

์˜ˆ์ œ

getCachedNotificationCount ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getCachedNotificationCount(tenantId = "my-tenant-123", id = "notification-789")
3if response.isSome:
4 let cached = response.get()
5 echo "Cached notification count: ", $cached
6else:
7 echo "No cached notification count"
8

getNotificationCount Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
userIdstring์•„๋‹ˆ์š”
urlIdstring์˜ˆ
fromCommentIdstring์•„๋‹ˆ์š”
viewedbool์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetNotificationCountResponse]

์˜ˆ์ œ

getNotificationCount ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getNotificationCount(tenantId = "my-tenant-123", userId = "user-987", urlId = "news/2026/06/election-results", fromCommentId = "", viewed = false)
3if response.isSome:
4 let notifyData = response.get()
5 echo notifyData
6

getNotifications Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
userIdstring์•„๋‹ˆ์˜ค
urlIdstring์˜ˆ
fromCommentIdstring์•„๋‹ˆ์˜ค
viewedbool์•„๋‹ˆ์˜ค
skipfloat64์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetNotificationsResponse]

์˜ˆ์ œ

getNotifications ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getNotifications(tenantId = "my-tenant-123", userId = "user-456", urlId = "news/article-title", fromCommentId = "cmt-789", viewed = false, skip = 0.0)
3if response.isSome:
4 let notifications = response.get()
5 echo notifications
6

updateNotification Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค
updateNotificationBodyUpdateNotificationBody์•„๋‹ˆ์˜ค
userIdstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

updateNotification ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.updateNotification(
3 tenantId = "my-tenant-123",
4 id = "notif-456",
5 updateNotificationBody = UpdateNotificationBody(
6 enabled = true,
7 channels = @["email", "push"],
8 frequency = "immediate"
9 ),
10 userId = "user-789"
11)
12
13if response.isSome:
14 let apiEmpty = response.get()
15 discard apiEmpty
16

createV1PageReact Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstringYes
urlIdstringYes
titlestringNo

์‘๋‹ต

๋ฐ˜ํ™˜: Option[CreateV1PageReact]

์˜ˆ์ œ

createV1PageReact ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.createV1PageReact(
3 tenantId = "my-tenant-123",
4 urlId = "news/2026/market-rally",
5 title = "Breaking News: Markets Rally Today"
6)
7
8if response.isSome:
9 let pageReact = response.get()
10 echo "Page react created: ", pageReact
11else:
12 echo "Failed to create page react: ", httpResponse
13

createV2PageReact Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
urlIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค
titlestring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[CreateV1PageReact]

์˜ˆ์ œ

createV2PageReact ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.createV2PageReact(
3 tenantId = "my-tenant-123",
4 urlId = "news/2026/06/fastcomments-release",
5 id = "",
6 title = ""
7)
8if response.isSome:
9 let react = response.get()
10 echo "Created page react: ", $react
11else:
12 echo "No react returned, HTTP status: ", $httpResponse.statusCode
13

deleteV1PageReact Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
urlIdstring์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: Option[CreateV1PageReact]

์˜ˆ์ œ

deleteV1PageReact ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteV1PageReact(tenantId = "my-tenant-123", urlId = "news/article-title")
3if response.isSome:
4 let deletedReact = response.get()
5 echo "Deleted react:", deletedReact
6else:
7 echo "No react returned for tenant: my-tenant-123, url: news/article-title"
8

deleteV2PageReact Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstringYes
urlIdstringYes
idstringNo

์‘๋‹ต

๋ฐ˜ํ™˜: Option[CreateV1PageReact]

์˜ˆ์ œ

deleteV2PageReact ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteV2PageReact(tenantId = "my-tenant-123", urlId = "news/2026/politics-election", id = "react-456")
3if response.isSome:
4 let react = response.get()
5 echo react
6else:
7 echo "No reaction returned, status: ", httpResponse.status
8

getV1PageLikes Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
urlIdstring์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetV1PageLikes]

์˜ˆ์ œ

getV1PageLikes ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getV1PageLikes(tenantId = "my-tenant-123", urlId = "news/how-to-train-your-dragon")
3if response.isSome:
4 let pageLikes = response.get()
5 echo "Fetched page likes for url:", "news/how-to-train-your-dragon"
6else:
7 echo "No likes returned for url:", "news/how-to-train-your-dragon"
8

getV2PageReacts Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
urlIdstring์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetV2PageReacts]

์˜ˆ์ œ

getV2PageReacts ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getV2PageReacts(tenantId = "my-tenant-123", urlId = "news/elections/2026/us-primary-results")
3if response.isSome:
4 let reacts = response.get()
5 echo "Received reacts: ", $reacts
6else:
7 echo "No reacts available"
8

getV2PageReactUsers Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
urlIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetV2PageReactUsersResponse]

์˜ˆ์ œ

getV2PageReactUsers ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getV2PageReactUsers(tenantId = "my-tenant-123", urlId = "news/article-title", id = "")
3if response.isSome:
4 let usersResp = response.get()
5 echo repr(usersResp)
6else:
7 echo "No page react users returned. HTTP response: ", repr(httpResponse)
8

addPage Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
createAPIPageDataCreateAPIPageData์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[AddPageAPIResponse]

์˜ˆ์ œ

addPage ์˜ˆ์ œ
Copy Copy
1
2var createData: CreateAPIPageData
3createData.url = "news/nim-4-release"
4createData.title = "Nim 4 Release Coverage"
5createData.path = "/news/nim-4-release"
6createData.isEnabled = true
7createData.tags = @["nim", "release"]
8createData.description = "Coverage of Nim 4 release"
9
10let (response, httpResponse) = client.addPage(tenantId = "my-tenant-123", createAPIPageData = createData)
11
12if response.isSome:
13 let pageResp = response.get()
14 echo pageResp
15

deletePage Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[DeletePageAPIResponse]

์˜ˆ์ œ

deletePage ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deletePage(tenantId = "site-tenant-456", id = "news/winter-updates-2025")
3if response.isSome:
4 let deleted = response.get()
5 echo "DeletePageAPIResponse:", deleted
6else:
7 echo "Delete failed, HTTP response:", httpResponse
8

getOfflineUsers Internal Link

ํŽ˜์ด์ง€์˜ ์ด์ „ ๋Œ“๊ธ€ ์ž‘์„ฑ์ž(ํ˜„์žฌ ์˜จ๋ผ์ธ ์ƒํƒœ ์•„๋‹˜). displayName์œผ๋กœ ์ •๋ ฌ๋ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ /users/online์„ ๋ชจ๋‘ ํ™•์ธํ•œ ํ›„ 'Members' ์„น์…˜์„ ๋ Œ๋”๋งํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. commenterName์— ๋Œ€ํ•œ ์ปค์„œ ํŽ˜์ด์ง•: ์„œ๋ฒ„๋Š” ๋ถ€๋ถ„ {tenantId, urlId, commenterName} ์ธ๋ฑ์Šค๋ฅผ afterName ์ดํ›„๋ถ€ํ„ฐ $gt๋กœ ์•ž์œผ๋กœ ํƒ์ƒ‰ํ•ฉ๋‹ˆ๋‹ค. $skip ๋น„์šฉ์ด ์—†์Šต๋‹ˆ๋‹ค.

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
urlIdstring์˜ˆ
afterNamestring์•„๋‹ˆ์š”
afterUserIdstring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[PageUsersOfflineResponse]

์˜ˆ์ œ

getOfflineUsers ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getOfflineUsers(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-how-to-code",
5 afterName = "",
6 afterUserId = ""
7)
8
9if response.isSome:
10 let offlinePage = response.get()
11 echo "Received offline users page"
12 discard httpResponse.statusCode
13

getOnlineUsers Internal Link

ํ˜„์žฌ ํŽ˜์ด์ง€์— ์˜จ๋ผ์ธ ์ƒํƒœ์ธ ๋ทฐ์–ด: ์›น์†Œ์ผ“ ์„ธ์…˜์ด ํ˜„์žฌ ํ•ด๋‹น ํŽ˜์ด์ง€์— ๊ตฌ๋…๋˜์–ด ์žˆ๋Š” ์‚ฌ์šฉ์ž๋“ค์ž…๋‹ˆ๋‹ค. ์ต๋ช… ๋ทฐ์–ด๋ฅผ ์—ด๊ฑฐํ•˜์ง€ ์•Š๋Š” ๋ฐฉ ์ „์ฒด ๊ตฌ๋…์ž๋ฅผ ํฌํ•จํ•˜์—ฌ anonCount + totalCount๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
urlIdstring์˜ˆ
afterNamestring์•„๋‹ˆ์š”
afterUserIdstring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[PageUsersOnlineResponse]

์˜ˆ์ œ

getOnlineUsers ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getOnlineUsers(tenantId = "my-tenant-123", urlId = "news/politics/top-story", afterName = "", afterUserId = "")
3if response.isSome:
4 let page = response.get()
5 echo "Received online users page:"
6 echo page
7else:
8 echo "No online users returned. HTTP status: ", httpResponse.statusCode
9

getPageByURLId Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstringYes
urlIdstringYes

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetPageByURLIdAPIResponse]

์˜ˆ์ œ

getPageByURLId ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getPageByURLId(tenantId = "my-tenant-123", urlId = "news/article-title")
3if response.isSome:
4 let page = response.get()
5 echo "Page ID: ", page.id
6 echo "Title: ", page.title
7 echo "URL: ", page.url
8 echo "Published: ", $page.published
9 echo "Tags: ", $page.tags
10else:
11 echo "No page found. HTTP status: ", httpResponse.statusCode
12

getPages Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetPagesAPIResponse]

์˜ˆ์ œ

getPages ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getPages(tenantId = "news-site-456")
3if response.isSome:
4 let pages = response.get()
5 echo "Received pages response: ", pages
6else:
7 echo "No pages returned. HTTP response: ", httpResponse
8

getPagesPublic Internal Link

ํ…Œ๋„ŒํŠธ์˜ ํŽ˜์ด์ง€ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. FChat ๋ฐ์Šคํฌํƒ‘ ํด๋ผ์ด์–ธํŠธ์—์„œ ๋ฃธ ๋ชฉ๋ก์„ ์ฑ„์šฐ๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. enableFChat๊ฐ€ ๊ฐ ํŽ˜์ด์ง€์˜ ํ•ด๊ฒฐ๋œ ์ปค์Šคํ…€ ๊ตฌ์„ฑ์—์„œ true์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. SSO๊ฐ€ ํ•„์š”ํ•œ ํŽ˜์ด์ง€๋Š” ์š”์ฒญํ•˜๋Š” ์‚ฌ์šฉ์ž์˜ ๊ทธ๋ฃน ์ ‘๊ทผ ๊ถŒํ•œ์„ ๊ธฐ์ค€์œผ๋กœ ํ•„ํ„ฐ๋ง๋ฉ๋‹ˆ๋‹ค.

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstringYes
cursorstringNo
limitintNo
qstringNo
sortByPagesSortByNo
hasCommentsboolNo

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetPublicPagesResponse]

์˜ˆ์ œ

getPagesPublic ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getPagesPublic(
3 tenantId = "my-tenant-123",
4 cursor = "",
5 limit = 0,
6 q = "",
7 sortBy = PagesSortBy(0),
8 hasComments = false
9)
10
11if response.isSome:
12 let pages = response.get()
13 echo "Retrieved public pages: ", $pages
14else:
15 echo "No pages returned, HTTP status: ", $httpResponse.status
16

getUsersInfo Internal Link


ํ…Œ๋„ŒํŠธ์˜ ๋Œ€๋Ÿ‰ ์‚ฌ์šฉ์ž ์ •๋ณด. userIds๊ฐ€ ์ฃผ์–ด์ง€๋ฉด User / SSOUser๋กœ๋ถ€ํ„ฐ ํ‘œ์‹œ ์ •๋ณด๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๋Œ“๊ธ€ ์œ„์ ฏ์—์„œ presence event๋กœ ๋ฐฉ๊ธˆ ๋“ฑ์žฅํ•œ ์‚ฌ์šฉ์ž๋ฅผ ๋ณด๊ฐ•ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ํŽ˜์ด์ง€ ์ปจํ…์ŠคํŠธ ์—†์Œ: ๊ฐœ์ธ ์ •๋ณด ๋ณดํ˜ธ๊ฐ€ ์ผ๋ฅ ์ ์œผ๋กœ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค(๋น„๊ณต๊ฐœ ํ”„๋กœํ•„์€ ๋งˆ์Šคํ‚น๋จ).

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idsstring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[PageUsersInfoResponse]

์˜ˆ์ œ

getUsersInfo ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getUsersInfo(tenantId = "my-tenant-123", ids = "user-42,user-87")
3if response.isSome:
4 let usersInfo = response.get()
5 echo "Retrieved users info:", usersInfo
6else:
7 echo "No users info returned. HTTP status:", httpResponse.status
8

patchPage Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”
updateAPIPageDataUpdateAPIPageData์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[PatchPageAPIResponse]

์˜ˆ์ œ

patchPage ์˜ˆ์ œ
Copy Copy
1
2let updateData = UpdateAPIPageData(
3 title = "Breaking: Major Event Update",
4 urlId = "news/major-event-update",
5 visible = true,
6 tags = @["breaking", "headline"],
7 sortOrder = 5
8)
9
10let (response, httpResponse) = client.patchPage(
11 tenantId = "my-tenant-123",
12 id = "news/major-event-update",
13 updateAPIPageData = updateData
14)
15
16if response.isSome:
17 let page = response.get()
18 discard page
19

deletePendingWebhookEvent Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„Typeํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

deletePendingWebhookEvent ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deletePendingWebhookEvent(tenantId = "my-tenant-123", id = "wh_evt_9f8b7a6c")
3if response.isSome:
4 let apiEmpty = response.get()
5 echo "Pending webhook event deleted for tenant my-tenant-123"
6else:
7 echo "Failed to delete pending webhook event"
8

getPendingWebhookEventCount Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
commentIdstring์˜ˆ
externalIdstring์•„๋‹ˆ์˜ค
eventTypestring์•„๋‹ˆ์˜ค
domainstring์•„๋‹ˆ์˜ค
attemptCountGTfloat64์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetPendingWebhookEventCountResponse]

์˜ˆ์ œ

getPendingWebhookEventCount ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getPendingWebhookEventCount(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-456abc",
5 externalId = "ext-7890",
6 eventType = "comment_created",
7 domain = "news.example.com",
8 attemptCountGT = 2.0
9)
10
11if response.isSome:
12 let pending = response.get()
13 echo pending
14else:
15 echo "No pending webhook event count returned; HTTP status: ", httpResponse.status
16

getPendingWebhookEvents Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
commentIdstring์˜ˆ
externalIdstring์•„๋‹ˆ์š”
eventTypestring์•„๋‹ˆ์š”
domainstring์•„๋‹ˆ์š”
attemptCountGTfloat64์•„๋‹ˆ์š”
skipfloat64์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetPendingWebhookEventsResponse]

์˜ˆ์ œ

getPendingWebhookEvents ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getPendingWebhookEvents(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-987654",
5 externalId = "",
6 eventType = "",
7 domain = "",
8 attemptCountGT = 0.0,
9 skip = 0.0
10)
11if response.isSome:
12 let pending = response.get()
13 discard pending
14

createQuestionConfig Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
createQuestionConfigBodyCreateQuestionConfigBody์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[CreateQuestionConfigResponse]

์˜ˆ์ œ

createQuestionConfig ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.createQuestionConfig(
3 tenantId = "my-tenant-123",
4 createQuestionConfigBody = CreateQuestionConfigBody(
5 label = "Article Question",
6 required = true,
7 minLength = 20,
8 maxLength = 1000,
9 allowedTags = @["comment","question","feedback"],
10 notifyModerators = false
11 )
12)
13if response.isSome:
14 let cfg = response.get()
15 echo "Created question config id: ", cfg.id
16

deleteQuestionConfig Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

deleteQuestionConfig ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteQuestionConfig(tenantId = "my-tenant-123", id = "")
3
4if response.isSome:
5 let deleted = response.get()
6 echo "Question config deleted for tenant: ", "my-tenant-123"
7else:
8 echo "Failed to delete question config"
9

getQuestionConfig Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetQuestionConfigResponse]

์˜ˆ์ œ

getQuestionConfig ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getQuestionConfig(tenantId = "my-tenant-123", id = "qst-456")
3if response.isSome:
4 let cfg = response.get()
5 discard cfg
6

getQuestionConfigs Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
skipfloat64์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetQuestionConfigsResponse]

์˜ˆ์ œ

getQuestionConfigs ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getQuestionConfigs(tenantId = "my-tenant-123", skip = 0.0)
3if response.isSome:
4 let configs = response.get()
5 echo "Received question configs for tenant my-tenant-123"
6 echo configs
7else:
8 echo "No question configs returned"
9

updateQuestionConfig Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค
updateQuestionConfigBodyUpdateQuestionConfigBody์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

updateQuestionConfig ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.updateQuestionConfig(tenantId = "my-tenant-123", id = "question-config-456", updateQuestionConfigBody = default(UpdateQuestionConfigBody))
3if response.isSome:
4 let apiEmpty = response.get()
5 discard apiEmpty
6

createQuestionResult Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
createQuestionResultBodyCreateQuestionResultBody์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[CreateQuestionResultResponse]

์˜ˆ์ œ

createQuestionResult ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.createQuestionResult(
3 tenantId = "my-tenant-123",
4 createQuestionResultBody = CreateQuestionResultBody(
5 questionId = "q-2026-001",
6 userId = "user-42",
7 correct = true,
8 score = 95,
9 tags = @["news","reader-question"]
10 )
11)
12if response.isSome:
13 let result = response.get()
14 echo "Created question result id: ", result.id
15 echo "HTTP status: ", httpResponse.status.code
16

deleteQuestionResult Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

deleteQuestionResult ์˜ˆ์ œ
Copy Copy
1
2let tenantId = "my-tenant-123"
3let resultId = "question-result-456"
4let (response, httpResponse) = client.deleteQuestionResult(tenantId = tenantId, id = resultId)
5if response.isSome:
6 let emptyResp = response.get()
7 echo "Deleted question result:", resultId
8

getQuestionResult Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetQuestionResultResponse]

์˜ˆ์ œ

getQuestionResult ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getQuestionResult(tenantId = "my-tenant-123", id = "question-456")
3if response.isSome:
4 let result = response.get()
5 echo "Question result received:"
6 echo result
7else:
8 echo "No question result returned, HTTP status: ", $httpResponse.status
9

getQuestionResults Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
urlIdstring์˜ˆ
userIdstring์•„๋‹ˆ์˜ค
startDatestring์•„๋‹ˆ์˜ค
questionIdstring์•„๋‹ˆ์˜ค
questionIdsstring์•„๋‹ˆ์˜ค
skipfloat64์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetQuestionResultsResponse]

์˜ˆ์ œ

getQuestionResults ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getQuestionResults(
3 tenantId = "my-tenant-123",
4 urlId = "news/2026/election-analysis",
5 userId = "user-42",
6 startDate = "2026-06-01T00:00:00Z",
7 questionId = "q-6789",
8 questionIds = @["q-6789", "q-6790"],
9 skip = 0.0
10)
11if response.isSome:
12 let results = response.get()
13 echo "Received question results"
14else:
15 echo "No results returned"
16

updateQuestionResult Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค
updateQuestionResultBodyUpdateQuestionResultBody์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

updateQuestionResult ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.updateQuestionResult(
3 tenantId = "my-tenant-123",
4 id = "question-result-456",
5 updateQuestionResultBody = UpdateQuestionResultBody(
6 questionId: "q-789",
7 userId: "user-42",
8 score: 92,
9 passed: true,
10 tags: @["quiz", "math"]
11 )
12)
13if response.isSome:
14 let apiResp = response.get()
15 echo "Question result updated successfully"
16else:
17 echo "No response body; HTTP status: ", httpResponse.status.code
18

aggregateQuestionResults Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
questionIdstring์•„๋‹ˆ์š”
questionIdsseq[string]์•„๋‹ˆ์š”
urlIdstring์˜ˆ
timeBucketAggregateTimeBucket์•„๋‹ˆ์š”
startDatestring์•„๋‹ˆ์š”
forceRecalculatebool์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[AggregateQuestionResultsResponse]

์˜ˆ์ œ

aggregateQuestionResults ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.aggregateQuestionResults(
3 tenantId = "my-tenant-123",
4 questionId = "",
5 questionIds = @[],
6 urlId = "news/article-title",
7 timeBucket = AggregateTimeBucket(0),
8 startDate = "",
9 forceRecalculate = false
10)
11
12if response.isSome:
13 let results = response.get()
14 discard results
15

bulkAggregateQuestionResults Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
bulkAggregateQuestionResultsRequestBulkAggregateQuestionResultsRequest์•„๋‹ˆ์š”
forceRecalculatebool์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[BulkAggregateQuestionResultsResponse]

์˜ˆ์ œ

bulkAggregateQuestionResults ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.bulkAggregateQuestionResults(
3 tenantId = "my-tenant-123",
4 bulkAggregateQuestionResultsRequest = BulkAggregateQuestionResultsRequest(),
5 forceRecalculate = false
6)
7
8if response.isSome:
9 let aggregated = response.get()
10 echo "Aggregated question results received"
11

combineCommentsWithQuestionResults Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
questionIdstring์•„๋‹ˆ์˜ค
questionIdsseq[string]์•„๋‹ˆ์˜ค
urlIdstring์˜ˆ
startDatestring์•„๋‹ˆ์˜ค
forceRecalculatebool์•„๋‹ˆ์˜ค
minValuefloat64์•„๋‹ˆ์˜ค
maxValuefloat64์•„๋‹ˆ์˜ค
limitfloat64์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[CombineQuestionResultsWithCommentsResponse]

์˜ˆ์ œ

combineCommentsWithQuestionResults ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.combineCommentsWithQuestionResults(
3 tenantId = "my-tenant-123",
4 questionId = "",
5 questionIds = @[],
6 urlId = "news/article-2026-climate-change",
7 startDate = "",
8 forceRecalculate = false,
9 minValue = 0.0,
10 maxValue = 0.0,
11 limit = 0.0
12)
13
14if response.isSome:
15 let combined = response.get()
16 echo "Combined results received for tenant:", " my-tenant-123"
17else:
18 echo "No combined results returned"
19

addSSOUser Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
createAPISSOUserDataCreateAPISSOUserData์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[AddSSOUserAPIResponse]

์˜ˆ์ œ

addSSOUser ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.addSSOUser(
3 tenantId = "my-tenant-123",
4 createAPISSOUserData = CreateAPISSOUserData(
5 id = "sso-456",
6 email = "alice.johnson@newsorg.com",
7 name = "Alice Johnson",
8 roles = @["editor", "contributor"],
9 isActive = true,
10 isAdmin = false
11 )
12)
13if response.isSome:
14 let apiResp = response.get()
15 discard apiResp
16else:
17 discard httpResponse
18

deleteSSOUser Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”
deleteCommentsbool์•„๋‹ˆ์š”
commentDeleteModestring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[DeleteSSOUserAPIResponse]

์˜ˆ์ œ

deleteSSOUser ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteSSOUser(tenantId = "my-tenant-123", id = "sso-user-9876", deleteComments = true, commentDeleteMode = "hard")
3if response.isSome:
4 let deleted = response.get()
5 discard deleted
6else:
7 discard httpResponse
8

getSSOUserByEmail Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
emailstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetSSOUserByEmailAPIResponse]

์˜ˆ์ œ

getSSOUserByEmail ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getSSOUserByEmail(tenantId = "my-tenant-123", email = "alice@newsco.com")
3if response.isSome:
4 let ssoUser = response.get()
5 echo "SSO user found: ", ssoUser.email
6else:
7 echo "No SSO user found. HTTP status: ", httpResponse.status
8

getSSOUserById Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetSSOUserByIdAPIResponse]

์˜ˆ์ œ

getSSOUserById ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getSSOUserById(tenantId = "my-tenant-123", id = "user-789")
3if response.isSome:
4 let ssoUser: GetSSOUserByIdAPIResponse = response.get()
5 echo "SSO user retrieved: ", $ssoUser
6else:
7 echo "No SSO user found, HTTP status: ", httpResponse.statusCode
8

getSSOUsers Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
skipint์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetSSOUsersResponse]

์˜ˆ์ œ

getSSOUsers ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getSSOUsers(tenantId = "my-tenant-123", skip = 0)
3if response.isSome:
4 let ssoUsers = response.get()
5 echo ssoUsers
6else:
7 echo "No SSO users returned; HTTP response:", httpResponse
8

patchSSOUser Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”
updateAPISSOUserDataUpdateAPISSOUserData์•„๋‹ˆ์š”
updateCommentsbool์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[PatchSSOUserAPIResponse]

์˜ˆ์ œ

patchSSOUser ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.patchSSOUser(
3 tenantId = "my-tenant-123",
4 id = "user-789",
5 updateAPISSOUserData = UpdateAPISSOUserData(
6 externalId = "ext-987",
7 username = "j.smith",
8 email = "j.smith@news.example.com",
9 displayName = "John Smith",
10 roles = @["author", "editor"],
11 avatarUrl = "https://cdn.news.example.com/avatars/j.smith.png"
12 ),
13 updateComments = true
14)
15
16if response.isSome:
17 let patched = response.get()
18 echo patched
19

putSSOUser Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค
updateAPISSOUserDataUpdateAPISSOUserData์•„๋‹ˆ์˜ค
updateCommentsbool์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[PutSSOUserAPIResponse]

์˜ˆ์ œ

putSSOUser ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.putSSOUser(
3 tenantId = "my-tenant-123",
4 id = "user-456",
5 updateAPISSOUserData = UpdateAPISSOUserData(
6 externalId = "ext-789",
7 displayName = "Jane Doe",
8 email = "jane.doe@example.com",
9 avatarUrl = "https://cdn.news-site.com/avatars/jane.jpg",
10 roles = @["member", "subscriber"]
11 ),
12 updateComments = true
13)
14
15if response.isSome:
16 let result = response.get()
17 echo "SSO user updated:", result
18

createSubscription Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
createAPIUserSubscriptionDataCreateAPIUserSubscriptionData์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[CreateSubscriptionAPIResponse]

์˜ˆ์ œ

createSubscription ์˜ˆ์ œ
Copy Copy
1
2let createData = CreateAPIUserSubscriptionData(
3 subscriberId = "user-987",
4 email = "jane.doe@newsreader.com",
5 urlId = "news/local-weather",
6 active = true,
7 tags = @["weather", "local"],
8 frequency = "immediate"
9)
10let (response, httpResponse) = client.createSubscription(tenantId = "my-tenant-123", createAPIUserSubscriptionData = createData)
11if response.isSome:
12 let created = response.get()
13 echo "Created subscription id: ", created.id
14

deleteSubscription Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค
userIdstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[DeleteSubscriptionAPIResponse]

์˜ˆ์ œ

deleteSubscription ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteSubscription(tenantId = "my-tenant-123", id = "sub-98765", userId = "user-456")
3if response.isSome:
4 let deleteResp = response.get()
5 echo "Delete subscription response received"
6else:
7 echo "No subscription response"
8

getSubscriptions Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
userIdstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetSubscriptionsAPIResponse]

์˜ˆ์ œ

getSubscriptions ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getSubscriptions(tenantId = "my-tenant-123", userId = "")
3if response.isSome:
4 let subscriptions = response.get()
5 discard subscriptions
6

updateSubscription Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค
updateAPIUserSubscriptionDataUpdateAPIUserSubscriptionData์•„๋‹ˆ์˜ค
userIdstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[UpdateSubscriptionAPIResponse]

์˜ˆ์ œ

updateSubscription ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.updateSubscription(
3 tenantId = "my-tenant-123",
4 id = "sub-456",
5 updateAPIUserSubscriptionData = UpdateAPIUserSubscriptionData(
6 subscribed = true,
7 channels = @["email", "push"]
8 ),
9 userId = "user-789"
10)
11
12if response.isSome:
13 let updated = response.get()
14 echo "Subscription updated:", updated
15else:
16 echo "Update failed, HTTP response:", httpResponse
17

getTenantDailyUsages Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
yearNumberfloat64์•„๋‹ˆ์˜ค
monthNumberfloat64์•„๋‹ˆ์˜ค
dayNumberfloat64์•„๋‹ˆ์˜ค
skipfloat64์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetTenantDailyUsagesResponse]

์˜ˆ์ œ

getTenantDailyUsages ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getTenantDailyUsages(
3 tenantId = "my-tenant-123",
4 yearNumber = 2026.0,
5 monthNumber = 6.0,
6 dayNumber = 19.0,
7 skip = 0.0
8)
9
10if response.isSome:
11 let usage = response.get()
12 discard usage
13

createTenantPackage Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
createTenantPackageBodyCreateTenantPackageBody์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[CreateTenantPackageResponse]

์˜ˆ์ œ

createTenantPackage ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.createTenantPackage(tenantId = "my-tenant-123", createTenantPackageBody = CreateTenantPackageBody())
3
4if response.isSome:
5 let pkg = response.get()
6 echo "Created tenant package: ", $pkg
7else:
8 echo "Failed to create tenant package, HTTP response: ", $httpResponse
9

deleteTenantPackage Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

deleteTenantPackage ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteTenantPackage(tenantId = "my-tenant-123", id = "package-987")
3if response.isSome:
4 let emptyResp = response.get()
5 echo emptyResp
6else:
7 echo "Failed to delete tenant package"
8

getTenantPackage Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetTenantPackageResponse]

์˜ˆ์ œ

getTenantPackage ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getTenantPackage(tenantId = "my-tenant-123", id = "premium-2026")
3if response.isSome:
4 let pkg = response.get()
5 echo "Retrieved tenant package:"
6 echo pkg
7else:
8 echo "Tenant package not found"
9

getTenantPackages Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
skipfloat64์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetTenantPackagesResponse]

์˜ˆ์ œ

getTenantPackages ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getTenantPackages(tenantId = "my-tenant-123", skip = 0.0)
3if response.isSome:
4 let packages = response.get()
5 echo "Received tenant packages:"
6 echo packages
7else:
8 echo "No packages found for tenant 'my-tenant-123'"
9

replaceTenantPackage Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”
replaceTenantPackageBodyReplaceTenantPackageBody์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

replaceTenantPackage ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.replaceTenantPackage(
3 tenantId = "my-tenant-123",
4 id = "pkg-987",
5 replaceTenantPackageBody = ReplaceTenantPackageBody(
6 name = "Premium Plan",
7 priceCents = 999,
8 seats = 50,
9 enabled = true,
10 features = @["moderation", "analytics", "priority-support"]
11 )
12)
13
14if response.isSome:
15 let apiEmpty = response.get()
16 discard apiEmpty
17

updateTenantPackage Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค
updateTenantPackageBodyUpdateTenantPackageBody์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

updateTenantPackage ์˜ˆ์ œ
Copy Copy
1
2let packageBody = UpdateTenantPackageBody(
3 name: "Pro Plan",
4 priceCents: 1999,
5 active: true,
6 features: @["priority-support", "advanced-moderation"]
7)
8
9let (response, httpResponse) = client.updateTenantPackage(
10 tenantId = "my-tenant-123",
11 id = "pkg-789",
12 updateTenantPackageBody = packageBody
13)
14
15if response.isSome:
16 let apiEmpty = response.get()
17 echo "Tenant package updated successfully, HTTP status: " & $httpResponse.status
18

createTenantUser Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
createTenantUserBodyCreateTenantUserBody์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[CreateTenantUserResponse]

์˜ˆ์ œ

createTenantUser ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.createTenantUser(tenantId = "my-tenant-123",
3 createTenantUserBody = CreateTenantUserBody(userId = "user-456",
4 email = "jane.doe@example.com",
5 displayName = "Jane Doe",
6 roles = @["editor"],
7 isAdmin = false))
8if response.isSome:
9 let created = response.get()
10 discard created
11

deleteTenantUser Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”
deleteCommentsstring์•„๋‹ˆ์š”
commentDeleteModestring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

deleteTenantUser ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteTenantUser(tenantId = "my-tenant-123", id = "user-789", deleteComments = "true", commentDeleteMode = "soft")
3if response.isSome:
4 let apiResp = response.get()
5 echo "Tenant user deleted, response: ", apiResp
6else:
7 echo "Failed to delete tenant user, HTTP status: ", $httpResponse.status
8

getTenantUser Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetTenantUserResponse]

์˜ˆ์ œ

getTenantUser ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getTenantUser(tenantId = "my-tenant-123", id = "user-789")
3if response.isSome:
4 let tenantUser = response.get()
5 echo "User fetched:", tenantUser
6else:
7 echo "No user found, HTTP status:", httpResponse.status
8

getTenantUsers Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
skipfloat64์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetTenantUsersResponse]

์˜ˆ์ œ

getTenantUsers ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getTenantUsers(tenantId = "my-tenant-123", skip = 0.0)
3
4if response.isSome:
5 let tenantUsers = response.get()
6 echo "Retrieved tenant users"
7else:
8 echo "No tenant users returned"
9

replaceTenantUser Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”
replaceTenantUserBodyReplaceTenantUserBody์•„๋‹ˆ์š”
updateCommentsstring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

replaceTenantUser ์˜ˆ์ œ
Copy Copy
1
2let body = ReplaceTenantUserBody(
3 displayName = "Jane Doe",
4 email = "jane.doe@example.com",
5 externalId = "jdoe-789",
6 admin = false,
7 enabled = true,
8 tags = @["editor", "subscriber"]
9)
10
11let (response, httpResponse) = client.replaceTenantUser(
12 tenantId = "my-tenant-123",
13 id = "user-456",
14 replaceTenantUserBody = body,
15 updateComments = "true"
16)
17
18if response.isSome:
19 let apiEmpty = response.get()
20 echo "ReplaceTenantUser succeeded, http status:", httpResponse.status
21

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”
redirectURLstring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

sendLoginLink ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.sendLoginLink(tenantId = "my-tenant-123", id = "user-456", redirectURL = "https://app.newsportal.com/welcome")
3if response.isSome:
4 let apiResp = response.get()
5 echo "Login link sent successfully"
6else:
7 echo "Failed to send login link, HTTP status: ", $httpResponse.status
8

updateTenantUser Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค
updateTenantUserBodyUpdateTenantUserBody์•„๋‹ˆ์˜ค
updateCommentsstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

updateTenantUser ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.updateTenantUser(
3 tenantId = "my-tenant-123",
4 id = "user-987",
5 updateTenantUserBody = UpdateTenantUserBody(
6 displayName = "Jane Doe",
7 email = "jane.doe@example.com",
8 roles = @["moderator", "editor"],
9 isActive = true
10 ),
11 updateComments = "true"
12)
13
14if response.isSome:
15 let apiEmpty = response.get()
16 discard apiEmpty
17

createTenant Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
createTenantBodyCreateTenantBody์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[CreateTenantResponse]

์˜ˆ์ œ

createTenant ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.createTenant(
3 tenantId = "my-tenant-123",
4 createTenantBody = CreateTenantBody(
5 name = "My Tenant 123",
6 domain = "news.example.com",
7 allowAnonymous = false,
8 allowedOrigins = @["https://news.example.com", "https://api.news.example.com"],
9 description = "Comments for News Example"
10 )
11)
12if response.isSome:
13 let created = response.get()
14 echo "Created tenant: ", created.tenantId
15else:
16 echo "Failed to create tenant, status: ", httpResponse.status
17

deleteTenant Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”
surestring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

deleteTenant ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteTenant(tenantId = "my-tenant-123", id = "", sure = "")
3if response.isSome:
4 let emptyResp = response.get()
5else:
6 discard httpResponse
7

getTenant Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetTenantResponse]

์˜ˆ์ œ

getTenant ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getTenant(tenantId = "my-tenant-123", id = "tenant-789")
3if response.isSome:
4 let tenant = response.get()
5 discard tenant
6else:
7 discard httpResponse
8

getTenants Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
metastring์•„๋‹ˆ์š”
skipfloat64์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetTenantsResponse]

์˜ˆ์ œ

getTenants ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getTenants(tenantId = "my-tenant-123", meta = "env=production", skip = 0.0)
3if response.isSome:
4 let tenantsResp = response.get()
5 discard tenantsResp
6 echo "Tenants fetched successfully"
7else:
8 echo "Request failed with status ", httpResponse.status
9

updateTenant Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค
updateTenantBodyUpdateTenantBody์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptyResponse]

์˜ˆ์ œ

updateTenant ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.updateTenant(
3 tenantId = "my-tenant-123",
4 id = "settings",
5 updateTenantBody = UpdateTenantBody(
6 name = "My Tenant 123",
7 enableModeration = true,
8 allowedDomains = @["news.example.com", "blog.example.org"],
9 maxCommentLength = 1000
10 )
11)
12
13if response.isSome:
14 let apiResp = response.get()
15 echo "Tenant updated successfully: ", apiResp
16else:
17 echo "Failed to update tenant, HTTP status: ", httpResponse.status
18

changeTicketState Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
userIdstring์•„๋‹ˆ์š”
idstring์•„๋‹ˆ์š”
changeTicketStateBodyChangeTicketStateBody์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ChangeTicketStateResponse]

์˜ˆ์ œ

changeTicketState ์˜ˆ์ œ
Copy Copy
1
2let body = ChangeTicketStateBody()
3let (response, httpResponse) = client.changeTicketState(tenantId = "my-tenant-123", userId = "user-456", id = "ticket-789", changeTicketStateBody = body)
4if response.isSome:
5 let ticketResp = response.get()
6 echo "Ticket state changed:", ticketResp
7

createTicket Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
userIdstring์•„๋‹ˆ์˜ค
createTicketBodyCreateTicketBody์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[CreateTicketResponse]

์˜ˆ์ œ

createTicket ์˜ˆ์ œ
Copy Copy
1
2let body = CreateTicketBody(
3 subject = "Comment moderation issue",
4 message = "Several abusive comments reported on article, please review and moderate.",
5 tags = @["moderation", "abuse", "urgent"],
6 url = "https://news.example.com/world/2026-election",
7 priority = "high"
8)
9
10let (response, httpResponse) = client.createTicket(tenantId = "my-tenant-123", userId = "user-789", createTicketBody = body)
11
12if response.isSome:
13 let ticket = response.get()
14 echo "Created ticket ID: ", ticket.id
15

getTicket Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค
userIdstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetTicketResponse]

์˜ˆ์ œ

getTicket ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getTicket(tenantId = "my-tenant-123", id = "ticket-456", userId = "user-789")
3if response.isSome:
4 let ticket = response.get()
5 echo "Got ticket:", ticket
6else:
7 echo "No ticket returned; HTTP response:", httpResponse
8

getTickets Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
userIdstring์•„๋‹ˆ์˜ค
statefloat64์•„๋‹ˆ์˜ค
skipfloat64์•„๋‹ˆ์˜ค
limitfloat64์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetTicketsResponse]

์˜ˆ์ œ

getTickets ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getTickets(tenantId = "my-tenant-123", userId = "user-789", state = 1.0, skip = 0.0, limit = 50.0)
3if response.isSome:
4 let tickets = response.get()
5 echo tickets
6

getTranslations Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
namespacestring์•„๋‹ˆ์˜ค
componentstring์•„๋‹ˆ์˜ค
localestring์•„๋‹ˆ์˜ค
useFullTranslationIdsbool์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetTranslationsResponse]

์˜ˆ์ œ

getTranslations ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getTranslations(
3 namespace = "news-site",
4 component = "article-comments",
5 locale = "en-US",
6 useFullTranslationIds = false
7)
8if response.isSome:
9 let translations = response.get()
10 discard translations
11else:
12 echo "No translations available"
13

uploadImage Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
filestring์•„๋‹ˆ์˜ค
sizePresetSizePreset์•„๋‹ˆ์˜ค
urlIdstring์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: Option[UploadImageResponse]

์˜ˆ์ œ

uploadImage ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.uploadImage(
3 tenantId = "my-tenant-123",
4 file = "assets/images/comment-avatar.jpg",
5 sizePreset = SizePreset.small,
6 urlId = "news/article-2025-11-22"
7)
8if response.isSome:
9 let upload = response.get()
10 echo "Uploaded image id: ", upload.id
11 echo "Uploaded image url: ", upload.url
12

getUserBadgeProgressById Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIGetUserBadgeProgressResponse]

์˜ˆ์ œ

getUserBadgeProgressById ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getUserBadgeProgressById(tenantId = "my-tenant-123", id = "")
3if response.isSome:
4 let badgeProgress = response.get()
5 echo badgeProgress
6else:
7 echo "No badge progress found"
8

getUserBadgeProgressByUserId Internal Link

Parameters

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
userIdstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIGetUserBadgeProgressResponse]

์˜ˆ์ œ

getUserBadgeProgressByUserId ์˜ˆ์ œ
Copy Copy
1
2let tenantId = "my-tenant-123"
3let userId = "user-456"
4let (response, httpResponse) = client.getUserBadgeProgressByUserId(tenantId = tenantId, userId = userId)
5if response.isSome:
6 let badgeProgress = response.get()
7 echo "Badge progress retrieved for ", userId
8 discard badgeProgress
9

getUserBadgeProgressList Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
userIdstring์•„๋‹ˆ์š”
limitfloat64์•„๋‹ˆ์š”
skipfloat64์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIGetUserBadgeProgressListResponse]

์˜ˆ์ œ

getUserBadgeProgressList ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getUserBadgeProgressList(
3 tenantId = "my-tenant-123",
4 userId = "user-789",
5 limit = 25.0,
6 skip = 0.0
7)
8
9if response.isSome:
10 let badgeProgress = response.get()
11 echo "Received badge progress:", badgeProgress
12else:
13 echo "No badge progress; HTTP status: ", $httpResponse.status
14

createUserBadge Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
createUserBadgeParamsCreateUserBadgeParams์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜๊ฐ’: Option[APICreateUserBadgeResponse]

์˜ˆ์ œ

createUserBadge ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.createUserBadge(
3 tenantId = "my-tenant-123",
4 createUserBadgeParams = CreateUserBadgeParams(
5 userId = "user-456",
6 badgeId = "top-commenter",
7 reason = "Top commenter for June 2026",
8 awardedBy = "mod-team",
9 metadata = @["news","engagement"]
10 )
11)
12if response.isSome:
13 let badgeResp = response.get()
14 discard badgeResp
15

deleteUserBadge Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜๊ฐ’: Option[APIEmptySuccessResponse]

์˜ˆ์ œ

deleteUserBadge ์˜ˆ์ œ
Copy Copy
1
2let tenantId = "my-tenant-123"
3let badgeId = "badge-456"
4
5let (response, httpResponse) = client.deleteUserBadge(tenantId = tenantId, id = badgeId)
6
7if response.isSome:
8 let success = response.get()
9 echo "Badge deleted successfully for tenant: ", tenantId, " id: ", badgeId
10else:
11 echo "Failed to delete badge. HTTP status: ", $httpResponse.status
12

getUserBadge Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIGetUserBadgeResponse]

์˜ˆ์ œ

getUserBadge ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getUserBadge(tenantId = "my-tenant-123", id = "badge-9876")
3if response.isSome:
4 let badge = response.get()
5 echo "Fetched badge:"
6 echo badge
7else:
8 echo "No badge found"
9 echo httpResponse
10

getUserBadges Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
userIdstring์•„๋‹ˆ์˜ค
badgeIdstring์•„๋‹ˆ์˜ค
displayedOnCommentsbool์•„๋‹ˆ์˜ค
limitfloat64์•„๋‹ˆ์˜ค
skipfloat64์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIGetUserBadgesResponse]

์˜ˆ์ œ

getUserBadges ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getUserBadges(
3 tenantId = "my-tenant-123",
4 userId = "user-9876",
5 badgeId = "top-commenter",
6 displayedOnComments = true,
7 limit = 20.0,
8 skip = 0.0
9)
10
11if response.isSome:
12 let badges = response.get()
13 echo "Badges response:", badges
14else:
15 echo "No badges found (HTTP status: ", httpResponse.status, ")"
16

updateUserBadge Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค
updateUserBadgeParamsUpdateUserBadgeParams์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[APIEmptySuccessResponse]

์˜ˆ์ œ

updateUserBadge ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.updateUserBadge(
3 tenantId = "my-tenant-123",
4 id = "user-456",
5 updateUserBadgeParams = UpdateUserBadgeParams()
6)
7
8if response.isSome:
9 let success = response.get()
10 echo "Badge updated successfully"
11else:
12 echo "Badge update failed"
13

getUserNotificationCount Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

NameTypeRequiredDescription
tenantIdstring์˜ˆ
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetUserNotificationCountResponse]

์˜ˆ์ œ

getUserNotificationCount ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getUserNotificationCount(tenantId = "news-tenant-123", sso = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ1c2VyLTI0NyIsImlhdCI6MTYw945600fQ.sflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c")
3if response.isSome:
4 let countResp = response.get()
5 echo "Received user notification count response: ", countResp
6else:
7 echo "No notification count returned"
8

getUserNotifications Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
urlIdstring์˜ˆ
pageSizeint์•„๋‹ˆ์š”
afterIdstring์•„๋‹ˆ์š”
includeContextbool์•„๋‹ˆ์š”
afterCreatedAtint64์•„๋‹ˆ์š”
unreadOnlybool์•„๋‹ˆ์š”
dmOnlybool์•„๋‹ˆ์š”
noDmbool์•„๋‹ˆ์š”
includeTranslationsbool์•„๋‹ˆ์š”
includeTenantNotificationsbool์•„๋‹ˆ์š”
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetMyNotificationsResponse]

์˜ˆ์ œ

getUserNotifications ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getUserNotifications(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 pageSize = 0,
6 afterId = "",
7 includeContext = false,
8 afterCreatedAt = 0,
9 unreadOnly = false,
10 dmOnly = false,
11 noDm = false,
12 includeTranslations = false,
13 includeTenantNotifications = false,
14 sso = ""
15)
16
17if response.isSome:
18 let notifications = response.get()
19 echo notifications
20

resetUserNotificationCount Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ResetUserNotificationsResponse]

์˜ˆ์ œ

resetUserNotificationCount ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.resetUserNotificationCount(tenantId = "my-tenant-123", sso = "user-sso-token-456")
3if response.isSome:
4 let result = response.get()
5 echo "ResetUserNotificationsResponse:", result
6else:
7 echo "Reset failed, HTTP response:", httpResponse
8

resetUserNotifications Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
afterIdstring์•„๋‹ˆ์š”
afterCreatedAtint64์•„๋‹ˆ์š”
unreadOnlybool์•„๋‹ˆ์š”
dmOnlybool์•„๋‹ˆ์š”
noDmbool์•„๋‹ˆ์š”
ssostring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[ResetUserNotificationsResponse]

์˜ˆ์ œ

resetUserNotifications ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.resetUserNotifications(
3 tenantId = "my-tenant-123",
4 afterId = "",
5 afterCreatedAt = 0'i64,
6 unreadOnly = false,
7 dmOnly = false,
8 noDm = false,
9 sso = ""
10)
11if response.isSome:
12 let resetResp = response.get()
13 echo "ResetUserNotificationsResponse received"
14else:
15 echo "No ResetUserNotificationsResponse"
16

updateUserNotificationCommentSubscriptionStatus Internal Link

ํŠน์ • ๋Œ“๊ธ€์— ๋Œ€ํ•œ ์•Œ๋ฆผ์„ ํ™œ์„ฑํ™”ํ•˜๊ฑฐ๋‚˜ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
notificationIdstring์•„๋‹ˆ์˜ค
optedInOrOutstring์•„๋‹ˆ์˜ค
commentIdstring์˜ˆ
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[UpdateUserNotificationCommentSubscriptionStatusResponse]

์˜ˆ์ œ

updateUserNotificationCommentSubscriptionStatus ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.updateUserNotificationCommentSubscriptionStatus(
3 tenantId = "my-tenant-123",
4 notificationId = "",
5 optedInOrOut = "",
6 commentId = "cmt-789",
7 sso = ""
8)
9
10if response.isSome:
11 let updateResp = response.get()
12 echo "Subscription update response: ", updateResp
13

updateUserNotificationPageSubscriptionStatus Internal Link

ํŽ˜์ด์ง€์— ๋Œ€ํ•œ ์•Œ๋ฆผ์„ ํ™œ์„ฑํ™”ํ•˜๊ฑฐ๋‚˜ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ํŽ˜์ด์ง€๋ฅผ ๊ตฌ๋…ํ•˜๋ฉด ์ƒˆ ๋ฃจํŠธ ๋Œ“๊ธ€์— ๋Œ€ํ•ด ์•Œ๋ฆผ์ด ์ƒ์„ฑ๋˜๋ฉฐ, ๋˜ํ•œ

Parameters

NameTypeRequiredDescription
tenantIdstring์˜ˆ
urlIdstring์˜ˆ
urlstring์•„๋‹ˆ์˜ค
pageTitlestring์•„๋‹ˆ์˜ค
subscribedOrUnsubscribedstring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

Response

๋ฐ˜ํ™˜: Option[UpdateUserNotificationPageSubscriptionStatusResponse]

์˜ˆ์ œ

updateUserNotificationPageSubscriptionStatus ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.updateUserNotificationPageSubscriptionStatus(
3 tenantId = "my-tenant-123",
4 urlId = "news/economy/market-rally-2026-06-19",
5 url = "",
6 pageTitle = "",
7 subscribedOrUnsubscribed = "",
8 sso = ""
9)
10
11if response.isSome:
12 let updateResp = response.get()
13 echo "Subscription update received: ", updateResp
14else:
15 echo "No subscription update returned."
16

updateUserNotificationStatus Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
notificationIdstring์•„๋‹ˆ์˜ค
newStatusstring์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[UpdateUserNotificationStatusResponse]

์˜ˆ์ œ

updateUserNotificationStatus ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.updateUserNotificationStatus(
3 tenantId = "my-tenant-123",
4 notificationId = "notif-456",
5 newStatus = "read",
6 sso = "sso-token-abc123"
7)
8if response.isSome:
9 let updated = response.get()
10 echo "Notification status updated successfully"
11else:
12 echo "No update response received"
13

getUserPresenceStatuses Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
urlIdWSstring์•„๋‹ˆ์˜ค
userIdsstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetUserPresenceStatusesResponse]

์˜ˆ์ œ

getUserPresenceStatuses ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getUserPresenceStatuses(tenantId = "my-tenant-123", urlIdWS = "news/article-title", userIds = "user-123,user-456")
3if response.isSome:
4 let presenceStatuses = response.get()
5 echo presenceStatuses
6else:
7 echo "No presence data"
8

searchUsers Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
urlIdstring์˜ˆ
usernameStartsWithstring์•„๋‹ˆ์˜ค
mentionGroupIdsseq[string]์•„๋‹ˆ์˜ค
ssostring์•„๋‹ˆ์˜ค
searchSectionstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[SearchUsersResult]

์˜ˆ์ œ

searchUsers ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.searchUsers(
3 tenantId = "my-tenant-123",
4 urlId = "news/top-story",
5 usernameStartsWith = "",
6 mentionGroupIds = @[],
7 sso = "",
8 searchSection = ""
9)
10
11if response.isSome:
12 let searchResult = response.get()
13 echo "SearchUsersResult:", searchResult
14else:
15 echo "No result or error. HTTP response:", httpResponse
16

getUser Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetUserResponse]

์˜ˆ์ œ

getUser ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getUser(tenantId = "my-tenant-123", id = "user-456")
3if response.isSome:
4 let user = response.get()
5 echo user
6else:
7 echo "User not found"
8

createVote Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํ˜•์‹ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
commentIdstring์˜ˆ
directionstring์•„๋‹ˆ์š”
userIdstring์•„๋‹ˆ์š”
anonUserIdstring์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Option[VoteResponse]

์˜ˆ์ œ

createVote ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.createVote(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-987654",
5 direction = "up",
6 userId = "user-42",
7 anonUserId = ""
8)
9if response.isSome:
10 let vote = response.get()
11 echo "Vote created:", vote
12else:
13 echo "No vote returned"
14

deleteVote Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
idstring์•„๋‹ˆ์˜ค
editKeystring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[VoteDeleteResponse]

์˜ˆ์ œ

deleteVote ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.deleteVote(tenantId = "my-tenant-123", id = "vote-7f3b2a", editKey = "")
3if response.isSome:
4 let voteDelete = response.get()
5 echo "Vote deleted successfully"
6else:
7 echo "Failed to delete vote"
8

getVotes Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ํƒ€์ž…ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
urlIdstring์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetVotesResponse]

์˜ˆ์ œ

getVotes ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getVotes(tenantId = "my-tenant-123", urlId = "news/breaking-article-456")
3if response.isSome:
4 let votesResp = response.get()
5 echo "Received votes response:", $votesResp
6else:
7 echo "No votes returned, HTTP response:", $httpResponse
8

getVotesForUser Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„์œ ํ˜•ํ•„์ˆ˜์„ค๋ช…
tenantIdstring์˜ˆ
urlIdstring์˜ˆ
userIdstring์•„๋‹ˆ์˜ค
anonUserIdstring์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: Option[GetVotesForUserResponse]

์˜ˆ์ œ

getVotesForUser ์˜ˆ์ œ
Copy Copy
1
2let (response, httpResponse) = client.getVotesForUser(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 userId = "user-789",
6 anonUserId = ""
7)
8if response.isSome:
9 let votes = response.get()
10 echo "User votes retrieved"
11else:
12 echo "No votes found"
13

๋„์›€์ด ํ•„์š”ํ•˜์‹ ๊ฐ€์š”?

Nim SDK ์‚ฌ์šฉ ์ค‘ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๊ฑฐ๋‚˜ ์งˆ๋ฌธ์ด ์žˆ์œผ์‹œ๋ฉด, ๋‹ค์Œ์„ ์ด์šฉํ•ด ์ฃผ์„ธ์š”:

๊ธฐ์—ฌ

๊ธฐ์—ฌ๋Š” ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค! ๊ธฐ์—ฌ ์ง€์นจ์€ GitHub ์ €์žฅ์†Œ์—์„œ ํ™•์ธํ•ด ์ฃผ์„ธ์š”.