FastComments.com

FastComments Nim SDK


이것은 FastComments용 공식 Nim SDK입니다.

FastComments API용 공식 Nim SDK

저장소

GitHub에서 보기


AI 코딩 에이전트 Internal Link

skills.sh

코딩 에이전트에 FastComments 컨텍스트를 제공하세요 - 위젯, 구성, Secure SSO, REST API 및 SDK:

npx skills add fastcomments/skills

Claude Code, Codex, Cursor, Copilot, Gemini 및 기타 모든 에이전트와 skills CLI에서 지원됩니다.

요구 사항 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의 포괄적인 스위트를 제공합니다. 모든 api_moderation 메서드는 sso 매개변수를 받아들이며, SSO 또는 FastComments.com 세션 쿠키를 통해 인증할 수 있습니다.

빠른 시작 Internal Link

Using Authenticated APIs (DefaultAPI)

중요: 인증된 엔드포인트는 API 키를 x-api-key 헤더에 설정해야 합니다.

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",
  options = GetCommentsOptions(
    urlId: "your-url-id",
    direction: SortDirections.DESC
  )
)

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

Using Public APIs (PublicAPI)

Public endpoints don't require authentication:

import httpclient
import fastcomments
import fastcomments/apis/api_public

let client = newHttpClient()

# 공개 API 호출을 수행합니다.
# tenantId와 urlId는 필수(위치 기반)이며; 나머지는 모두 선택 사항입니다.
let (response, httpResponse) = getCommentsPublic(
  httpClient = client,
  tenantId = "your-tenant-id",
  urlId = "your-url-id",
  options = GetCommentsPublicOptions(
    direction: SortDirections.DESC
  )
)

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

Using Moderation APIs (ModerationAPI)

Moderation endpoints power the moderator dashboard and are authenticated with an SSO token for the acting moderator:

import httpclient
import fastcomments
import fastcomments/apis/api_moderation

let client = newHttpClient()

# 조정 대시보드의 댓글을 나열합니다.
# 이 작업은 필수 매개변수가 없으므로 모든 것이 선택 사항입니다.
let (response, httpResponse) = getApiComments(
  httpClient = client,
  options = GetApiCommentsOptions(
    count: 30,
    tenantId: "your-tenant-id",
    sso: "your-sso-token"
  )
)

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

Common Issues

  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

All API methods in this SDK return tuples of (Option[ResponseType], Response). 첫 번째 요소는 성공 시 파싱된 응답을 포함하고, 두 번째 요소는 원시 HTTP 응답입니다.

필수 매개변수와 요청 본문은 위치 기반으로 전달됩니다. 나머지 선택적 매개변수들은 단일 Api<Operation>Options 객체에 수집되며, 이는 마지막 인수입니다. 선택적 매개변수가 없는 작업은 옵션 객체를 사용하지 않습니다.

예제: 댓글 가져오기

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",
  options = GetCommentsOptions(
    urlId: "your-url-id",
    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

집계 Internal Link

Aggregates documents by grouping them (if groupBy is provided) and applying multiple operations. Different operations (e.g. sum, countDistinct, avg, etc.) are supported.

매개변수

이름유형필수설명
tenantIdstringYes
aggregationRequestAggregationRequestNo
optionsAggregateOptionsNo

응답

반환: Option[AggregateResponse]

예시

집계 예시
Copy Copy
1
2let (aggResp, httpResp) = client.aggregate(tenantId = "my-tenant-123", aggregationRequest = AggregationRequest(), options = AggregateOptions())
3if aggResp.isSome:
4 let response = aggResp.get()
5 echo response
6echo httpResp
7

감사 로그 가져오기 Internal Link

매개변수

이름타입필수설명
tenantIdstringYes
optionsGetAuditLogsOptionsNo

응답

반환: Option[GetAuditLogsResponse]

예시

getAuditLogs 예시
Copy Copy
1
2let (auditOpt, httpResp) = client.getAuditLogs(tenantId = "my-tenant-123", options = GetAuditLogsOptions())
3if auditOpt.isSome:
4 let audit = auditOpt.get()
5 echo audit
6

공개 로그아웃 Internal Link

응답

반환: Option[APIEmptyResponse]

예시

logoutPublic 예제
Copy Copy
1
2let (responseOpt, httpResponse) = client.logoutPublic(tenantId = "my-tenant-123", userId = "user-456")
3if responseOpt.isSome:
4 let emptyResponse = responseOpt.get()
5

공개 댓글 차단 Internal Link

매개변수

이름타입필수설명
tenantIdstringYes
commentIdstringYes
publicBlockFromCommentParamsPublicBlockFromCommentParamsNo
ssostring = ""No

응답

반환: Option[BlockSuccess]

예시

blockFromCommentPublic 예시
Copy Copy
1
2let (blockOpt, httpResp) = client.blockFromCommentPublic(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-456789",
5 publicBlockFromCommentParams = PublicBlockFromCommentParams(),
6 sso = ""
7)
8
9if blockOpt.isSome:
10 let block = blockOpt.get()
11

공개 댓글 차단 해제 Internal Link

매개변수

이름유형필수설명
tenantIdstring
commentIdstring
publicBlockFromCommentParamsPublicBlockFromCommentParams아니오
ssostring = ""아니오

응답

반환: Option[UnblockSuccess]

예시

unBlockCommentPublic 예제
Copy Copy
1
2let (unblockResult, httpResp) = client.unBlockCommentPublic(
3 tenantId = "my-tenant-123",
4 commentId = "comment-7890",
5 publicBlockFromCommentParams = PublicBlockFromCommentParams(),
6 sso = ""
7)
8
9if unblockResult.isSome:
10 let result = unblockResult.get()
11

차단된 댓글 확인 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
commentIdsstringNo
ssostring = ""No

응답

반환: Option[CheckBlockedCommentsResponse]

예시

checkedCommentsForBlocked 예시
Copy Copy
1
2let (maybeResponse, httpResponse) = client.checkedCommentsForBlocked(
3 tenantId = "my-tenant-123",
4 commentIds = "cmt-1,cmt-2",
5 sso = ""
6)
7
8if maybeResponse.isSome:
9 let response = maybeResponse.get()
10 discard response
11

댓글에서 사용자 차단 Internal Link

Parameters

이름유형필수설명
tenantIdstring
idstring아니오
blockFromCommentParamsBlockFromCommentParams아니오
optionsBlockUserFromCommentOptions아니오

Response

반환: Option[BlockSuccess]

Example

blockUserFromComment 예시
Copy Copy
1
2let params = BlockFromCommentParams()
3let opts = BlockUserFromCommentOptions()
4let (blockResult, httpResp) = client.blockUserFromComment(
5 tenantId = "my-tenant-123",
6 id = "comment-456",
7 blockFromCommentParams = params,
8 options = opts
9)
10if blockResult.isSome:
11 let success = blockResult.get()
12 discard success
13

공개 댓글 생성 Internal Link

Parameters

이름타입필수설명
tenantIdstringYes
urlIdstringYes
broadcastIdstringNo
commentDataCommentDataNo
optionsCreateCommentPublicOptionsNo

Response

반환: Option[SaveCommentsResponseWithPresence]

Example

createCommentPublic 예시
Copy Copy
1
2let
3 tenantId = "my-tenant-123"
4 urlId = "news/article-title"
5 broadcastId = "broadcast-456"
6 commentData = CommentData()
7 options = CreateCommentPublicOptions()
8let (maybeResp, httpResp) = client.createCommentPublic(
9 tenantId = tenantId,
10 urlId = urlId,
11 broadcastId = broadcastId,
12 commentData = commentData,
13 options = options)
14
15if maybeResp.isSome:
16 let resp = maybeResp.get()
17 echo resp
18

댓글 삭제 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo
optionsDeleteCommentOptionsNo

응답

반환: Option[DeleteCommentResult]

예시

deleteComment 예시
Copy Copy
1
2let (delResult, httpResponse) = client.deleteComment(
3 tenantId = "my-tenant-123",
4 id = "comment-456",
5 options = DeleteCommentOptions()
6)
7
8if delResult.isSome:
9 let result = delResult.get()
10 echo result
11

공개 댓글 삭제 Internal Link

매개변수

이름타입필수설명
tenantIdstringYes
commentIdstringYes
broadcastIdstringNo
optionsDeleteCommentPublicOptionsNo

응답

반환: Option[PublicAPIDeleteCommentResponse]

예시

deleteCommentPublic 예시
Copy Copy
1
2let (responseOpt, httpResp) = client.deleteCommentPublic(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-456789",
5 broadcastId = "",
6 options = DeleteCommentPublicOptions())
7if responseOpt.isSome:
8 let resp = responseOpt.get()
9 echo resp
10

댓글 투표 삭제 Internal Link

매개변수

이름유형필수설명
tenantIdstring
commentIdstring
voteIdstring아니오
urlIdstring
broadcastIdstring아니오
optionsDeleteCommentVoteOptions아니오

응답

Returns: Option[VoteDeleteResponse]

예시

deleteCommentVote 예시
Copy Copy
1
2let (response, httpResponse) = client.deleteCommentVote(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-456",
5 voteId = "vote-789",
6 urlId = "news/article-title",
7 broadcastId = "broadcast-001",
8 options = DeleteCommentVoteOptions()
9)
10
11if response.isSome:
12 let voteDelete = response.get()
13

댓글 신고 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo
optionsFlagCommentOptionsNo

응답

반환: Option[FlagCommentResponse]

예시

flagComment 예시
Copy Copy
1
2let options = FlagCommentOptions(reason: "spam content", note: "Automated posting detected", isSpam: true, categories: @["spam"])
3let (flagRes, httpRes) = client.flagComment(tenantId = "my-tenant-123", id = "cmt-789", options = options)
4if flagRes.isSome:
5 let res = flagRes.get()
6 discard res
7

댓글 가져오기 Internal Link

매개변수

이름타입필수설명
tenantIdstring
idstring아니오

응답

반환: Option[APIGetCommentResponse]

예시

getComment 예시
Copy Copy
1
2let (response, httpResponse) = client.getComment(tenantId = "my-tenant-123", id = "cmt-789")
3if response.isSome:
4 let comment = response.get()
5 discard comment
6

댓글 목록 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
optionsGetCommentsOptionsNo

응답

반환: Option[APIGetCommentsResponse]

예시

getComments 예시
Copy Copy
1
2let options = GetCommentsOptions(
3 urlId = "news/article-title",
4 page = 0,
5 pageSize = 20,
6 sort = "newest",
7 includeDeleted = false,
8 includeReplies = true,
9 userIds = @[],
10 tags = @[]
11)
12
13let (response, httpResponse) = client.getComments(tenantId = "my-tenant-123", options = options)
14
15if response.isSome:
16 let comments = response.get()
17 discard comments
18

공개 댓글 목록 가져오기 Internal Link

req tenantId urlId

매개변수

NameTypeRequiredDescription
tenantIdstringYes
urlIdstringYes
optionsGetCommentsPublicOptionsNo

응답

반환: Option[GetCommentsResponseWithPresencePublicComment]

예시

getCommentsPublic 예제
Copy Copy
1
2let (optResp, httpResp) = client.getCommentsPublic(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 options = GetCommentsPublicOptions(
6 page = 0,
7 pageSize = 10,
8 includeDeleted = false,
9 tags = @[]
10 )
11)
12
13if optResp.isSome:
14 let resp = optResp.get()
15 echo resp
16

댓글 텍스트 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
commentIdstring
optionsGetCommentTextOptions아니오

응답

반환: Option[PublicAPIGetCommentTextResponse]

예시

getCommentText 예시
Copy Copy
1
2let (maybeResponse, httpResponse) = client.getCommentText(
3 tenantId = "my-tenant-123",
4 commentId = "comment-456",
5 options = GetCommentTextOptions()
6)
7
8if maybeResponse.isSome:
9 let response = maybeResponse.get()
10

댓글 투표 사용자 이름 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
commentIdstring
dirint아니오
ssostring = ""아니오

응답

반환: Option[GetCommentVoteUserNamesSuccessResponse]

예시

getCommentVoteUserNames 예시
Copy Copy
1
2let (voteNamesOpt, httpRes) = client.getCommentVoteUserNames(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-987654321",
5 dir = 0,
6 sso = ""
7)
8
9if voteNamesOpt.isSome:
10 let voteNames = voteNamesOpt.get()
11 echo voteNames
12

댓글 잠금 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
commentIdstringYes
broadcastIdstringNo
ssostring = ""No

응답

반환: Option[APIEmptyResponse]

예시

lockComment 예제
Copy Copy
1
2let (lockResult, httpRes) = client.lockComment(
3 tenantId = "my-tenant-123",
4 commentId = "comment-456",
5 broadcastId = "",
6 sso = "")
7
8if lockResult.isSome:
9 let resp = lockResult.get()
10 discard resp
11

댓글 고정 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
commentIdstringYes
broadcastIdstringNo
ssostring = ""No

응답

반환: Option[ChangeCommentPinStatusResponse]

예시

pinComment 예시
Copy Copy
1
2let (pinResult, httpResp) = client.pinComment(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-456789",
5 broadcastId = "broadcast-001",
6 sso = "",
7)
8
9if pinResult.isSome:
10 let response = pinResult.get()
11 echo response
12

댓글 저장 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
createCommentParamsCreateCommentParamsNo
optionsSaveCommentOptionsNo

응답

반환: Option[APISaveCommentResponse]

예시

saveComment 예시
Copy Copy
1
2let commentParams = CreateCommentParams(
3 body: "Great read, thanks!",
4 name: "Alice Smith",
5 email: "alice@example.com",
6 parentId: ""
7)
8
9let saveOpts = SaveCommentOptions(
10 isPreview: false,
11 isApproved: true,
12 skipSpamCheck: false
13)
14
15let (apiResponse, httpResponse) = client.saveComment(
16 tenantId = "my-tenant-123",
17 createCommentParams = commentParams,
18 options = saveOpts
19)
20
21if apiResponse.isSome:
22 let saved = apiResponse.get()
23 echo saved
24

댓글 일괄 저장 Internal Link

매개변수

이름유형필수설명
tenantIdstring
createCommentParamsseq[CreateCommentParams]아니오
optionsSaveCommentsBulkOptions): (Option[seq[SaveCommentsBulkResponse]]아니오
idstring아니오
fromNamestring아니오

응답

반환값: Option[APIEmptyResponse]

예제

saveCommentsBulk 예제
Copy Copy
1
2let (response, httpResponse) = client.saveCommentsBulk(
3 tenantId = "my-tenant-123",
4 createCommentParams = @[],
5 options = SaveCommentsBulkOptions(),
6 id = "",
7 fromName = ""
8)
9
10if response.isSome:
11 let result = response.get()
12

댓글 텍스트 설정 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
commentIdstringYes
broadcastIdstringNo
commentTextUpdateRequestCommentTextUpdateRequestNo
optionsSetCommentTextOptionsNo

응답

반환: Option[PublicAPISetCommentTextResponse]

예제

setCommentText 예제
Copy Copy
1
2let commentUpdate = CommentTextUpdateRequest(text: "Updated comment text")
3let opts = SetCommentTextOptions()
4let (response, httpResponse) = client.setCommentText(
5 tenantId = "my-tenant-123",
6 commentId = "cmt-456",
7 broadcastId = "broadcast-789",
8 commentTextUpdateRequest = commentUpdate,
9 options = opts)
10if response.isSome:
11 let result = response.get()
12

댓글에서 사용자 차단 해제 Internal Link

매개변수

이름유형필수설명
tenantIdstring
idstring아니오
unBlockFromCommentParamsUnBlockFromCommentParams아니오
optionsUnBlockUserFromCommentOptions아니오

응답

반환: Option[UnblockSuccess]

예시

unBlockUserFromComment 예시
Copy Copy
1
2let (response, httpResponse) = client.unBlockUserFromComment(
3 tenantId = "my-tenant-123",
4 id = "comment-456",
5 unBlockFromCommentParams = UnBlockFromCommentParams(userId = "user-789", commentId = "cmt-321"),
6 options = UnBlockUserFromCommentOptions(),
7)
8
9if response.isSome:
10 let unblockSuccess = response.get()
11

댓글 신고 해제 Internal Link

Parameters

이름유형필수설명
tenantIdstring
idstring아니오
optionsUnFlagCommentOptions아니오

응답

반환: Option[FlagCommentResponse]

예시

unFlagComment 예시
Copy Copy
1
2let (flagRespOpt, httpResp) = client.unFlagComment(tenantId = "my-tenant-123", id = "comment-456", options = UnFlagCommentOptions())
3if flagRespOpt.isSome:
4 let flagResp = flagRespOpt.get()
5

댓글 잠금 해제 Internal Link

매개변수

이름타입필수설명
tenantIdstringYes
commentIdstringYes
broadcastIdstringNo
ssostring = ""No

응답

반환: Option[APIEmptyResponse]

예시

unLockComment 예시
Copy Copy
1
2let (maybeEmpty, httpResp) = client.unLockComment(tenantId = "my-tenant-123", commentId = "comment-456", broadcastId = "", sso = "")
3if maybeEmpty.isSome:
4 let emptyResp = maybeEmpty.get()
5 echo "Comment unlocked"
6else:
7 echo "Failed to unlock comment"
8

댓글 고정 해제 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
commentIdstringYes
broadcastIdstringNo
ssostring = ""No

응답

반환: Option[ChangeCommentPinStatusResponse]

예시

unPinComment 예시
Copy Copy
1
2let (responseOpt, httpResponse) = client.unPinComment(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-456789",
5 broadcastId = "broadcast-001",
6 sso = ""
7)
8
9if responseOpt.isSome:
10 let resp = responseOpt.get()
11 echo resp
12

댓글 업데이트 Internal Link

매개변수

이름유형필수설명
tenantIdstring
idstring아니오
updatableCommentParamsUpdatableCommentParams아니오
optionsUpdateCommentOptions아니오

응답

반환: Option[APIEmptyResponse]

예시

updateComment 예제
Copy Copy
1
2let commentParams = UpdatableCommentParams(content: "Updated comment content")
3let updateOpts = UpdateCommentOptions(force: false)
4
5let (respOpt, httpResp) = client.updateComment(
6 tenantId = "my-tenant-123",
7 id = "comment-456",
8 updatableCommentParams = commentParams,
9 options = updateOpts
10)
11
12if respOpt.isSome:
13 let resp = respOpt.get()
14

댓글 투표 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
commentIdstringYes
urlIdstringYes
broadcastIdstringNo
voteBodyParamsVoteBodyParamsNo
optionsVoteCommentOptionsNo

응답

반환: Option[VoteResponse]

예시

voteComment 예시
Copy Copy
1
2let (voteRespOpt, httpResp) = client.voteComment(
3 tenantId = "my-tenant-123",
4 commentId = "comment-98765",
5 urlId = "blog/how-to-code",
6 broadcastId = "",
7 voteBodyParams = VoteBodyParams(),
8 options = VoteCommentOptions()
9)
10
11if voteRespOpt.isSome:
12 let voteResp = voteRespOpt.get()
13

사용자 댓글 가져오기 Internal Link

매개변수

이름유형필수설명
optionsGetCommentsForUserOptions아니오

응답

반환: Option[GetCommentsForUserResponse]

예시

getCommentsForUser 예시
Copy Copy
1
2let (maybeResp, httpResp) = client.getCommentsForUser(options = GetCommentsForUserOptions(
3 tenantId = "my-tenant-123",
4 userId = "user-456",
5 page = 0,
6 pageSize = 20,
7 includeDeleted = false,
8 commentIds = @[]
9))
10
11if maybeResp.isSome:
12 let resp = maybeResp.get()
13 discard resp
14

도메인 설정 추가 Internal Link

매개변수

이름유형필요 여부설명
tenantIdstring
addDomainConfigParamsAddDomainConfigParams아니오

응답

반환: Option[AddDomainConfigResponse]

예시

addDomainConfig 예제
Copy Copy
1
2let (respOpt, httpResp) = client.addDomainConfig(
3 tenantId = "my-tenant-123",
4 addDomainConfigParams = default(AddDomainConfigParams)
5)
6
7if respOpt.isSome:
8 let cfg = respOpt.get()
9

도메인 설정 삭제 Internal Link

매개변수

이름유형필수설명
tenantIdstring
domainstring아니오

응답

반환: Option[DeleteDomainConfigResponse]

예시

deleteDomainConfig 예시
Copy Copy
1
2let (optResp, httpResp) = client.deleteDomainConfig(tenantId = "my-tenant-123", domain = "news.example.com")
3if optResp.isSome:
4 let resp = optResp.get()
5 echo resp
6

도메인 설정 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
domainstring아니오

응답

반환: Option[GetDomainConfigResponse]

예시

getDomainConfig 예시
Copy Copy
1
2let (configOpt, httpResp) = client.getDomainConfig(tenantId = "my-tenant-123", domain = "news.example.com")
3if configOpt.isSome:
4 let cfg = configOpt.get()
5 discard cfg
6

도메인 설정 목록 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes

응답

반환: Option[GetDomainConfigsResponse]

예시

getDomainConfigs 예시
Copy Copy
1
2let (domainConfigsOpt, httpResponse) = client.getDomainConfigs(tenantId = "my-tenant-123")
3if domainConfigsOpt.isSome:
4 let domainConfigs = domainConfigsOpt.get()
5 echo domainConfigs
6

도메인 설정 패치 Internal Link

매개변수

이름유형필수설명
tenantIdstring
domainToUpdatestring아니오
patchDomainConfigParamsPatchDomainConfigParams아니오

응답

반환: Option[PatchDomainConfigResponse]

예시

patchDomainConfig 예시
Copy Copy
1
2let (optResp, httpResp) = client.patchDomainConfig(
3 tenantId = "my-tenant-123",
4 domainToUpdate = "news.mywebsite.com",
5 patchDomainConfigParams = PatchDomainConfigParams()
6)
7
8if optResp.isSome:
9 let resp = optResp.get()
10 echo resp
11

도메인 설정 저장 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
domainToUpdatestringNo
updateDomainConfigParamsUpdateDomainConfigParamsNo

응답

반환: Option[PutDomainConfigResponse]

예시

putDomainConfig 예시
Copy Copy
1
2let (optResp, httpResp) = client.putDomainConfig(
3 tenantId = "my-tenant-123",
4 domainToUpdate = "example.com",
5 updateDomainConfigParams = UpdateDomainConfigParams()
6)
7
8if optResp.isSome:
9 let resp = optResp.get()
10 echo resp
11

이메일 템플릿 생성 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
createEmailTemplateBodyCreateEmailTemplateBodyNo

응답

반환: Option[CreateEmailTemplateResponse]

예시

createEmailTemplate 예시
Copy Copy
1
2let createBody = CreateEmailTemplateBody(
3 name: "Welcome Email",
4 subject: "Welcome to FastComments",
5 htmlBody: "<p>Hello, thank you for joining us!</p>",
6 isActive: true,
7 tags: @[]
8)
9
10let (optResp, httpResp) = client.createEmailTemplate(
11 tenantId = "my-tenant-123",
12 createEmailTemplateBody = createBody
13)
14
15if optResp.isSome:
16 let emailTemplate = optResp.get()
17

이메일 템플릿 삭제 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo

응답

반환: Option[APIEmptyResponse]

예시

deleteEmailTemplate 예제
Copy Copy
1
2let (respOpt, httpResp) = client.deleteEmailTemplate(tenantId = "my-tenant-123", id = "welcome-email")
3if respOpt.isSome:
4 let emptyResp = respOpt.get()
5 echo "Email template deleted"
6else:
7 echo "Failed to delete email template"
8

이메일 템플릿 렌더링 오류 삭제 Internal Link

매개변수

이름유형필수설명
tenantIdstring
idstring아니오
errorIdstring아니오

응답

반환: Option[APIEmptyResponse]

예시

deleteEmailTemplateRenderError 예시
Copy Copy
1
2let (apiRes, httpRes) = client.deleteEmailTemplateRenderError(
3 tenantId = "my-tenant-123",
4 id = "welcome-email",
5 errorId = "render-err-456"
6)
7
8if apiRes.isSome:
9 let empty = apiRes.get()
10

이메일 템플릿 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
idstring아니오

응답

반환: Option[GetEmailTemplateResponse]

예시

getEmailTemplate 예시
Copy Copy
1
2let (response, httpResponse) = client.getEmailTemplate(tenantId = "my-tenant-123", id = "welcome-email")
3if response.isSome:
4 let tmpl = response.get()
5

이메일 템플릿 정의 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring

응답

반환: Option[GetEmailTemplateDefinitionsResponse]

예시

getEmailTemplateDefinitions 예시
Copy Copy
1
2let (responseOpt, httpResponse) = client.getEmailTemplateDefinitions(tenantId = "my-tenant-123")
3if responseOpt.isSome:
4 let definitions = responseOpt.get()
5 echo definitions
6

이메일 템플릿 렌더링 오류 가져오기 Internal Link


매개변수

NameTypeRequiredDescription
tenantIdstringYes
idstringNo
skipfloat64No

응답

반환: Option[GetEmailTemplateRenderErrorsResponse]

예시

getEmailTemplateRenderErrors 예시
Copy Copy
1
2let (optResp, httpResp) = client.getEmailTemplateRenderErrors(
3 tenantId = "my-tenant-123",
4 id = "welcome-template",
5 skip = 0.0
6)
7
8if optResp.isSome:
9 let resp = optResp.get()
10 # 필요에 따라 resp 사용
11else:
12 # 누락된 응답 처리
13 discard
14

이메일 템플릿 목록 가져오기 Internal Link


매개변수

이름유형필수설명
tenantIdstring
skipfloat64아니오

응답

반환: Option[GetEmailTemplatesResponse]

예시

getEmailTemplates 예시
Copy Copy
1
2let (emailTemplatesOpt, httpResp) = client.getEmailTemplates(tenantId = "my-tenant-123", skip = 0.0)
3if emailTemplatesOpt.isSome:
4 let templates = emailTemplatesOpt.get()
5 echo templates
6

이메일 템플릿 렌더링 Internal Link

매개변수

이름타입필수설명
tenantIdstringYes
renderEmailTemplateBodyRenderEmailTemplateBodyNo
localestring = ""No

응답

Returns: Option[RenderEmailTemplateResponse]

예시

renderEmailTemplate 예제
Copy Copy
1
2let body = RenderEmailTemplateBody()
3let (responseOpt, httpResponse) = client.renderEmailTemplate(tenantId = "my-tenant-123", renderEmailTemplateBody = body, locale = "en-US")
4if responseOpt.isSome:
5 let response = responseOpt.get()
6 discard response
7discard httpResponse
8

이메일 템플릿 업데이트 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo
updateEmailTemplateBodyUpdateEmailTemplateBodyNo

응답

반환: Option[APIEmptyResponse]

예시

updateEmailTemplate 예시
Copy Copy
1
2let updateBody = UpdateEmailTemplateBody(
3 subject: "Welcome to FastComments",
4 body: "Hello \{{user_name}}, thanks for joining!",
5 enabled: true,
6)
7
8let (maybeResp, httpResp) = client.updateEmailTemplate(
9 tenantId = "my-tenant-123",
10 id = "welcome-email",
11 updateEmailTemplateBody = updateBody,
12)
13
14if maybeResp.isSome:
15 let resp = maybeResp.get()
16

이벤트 로그 가져오기 Internal Link

req tenantId urlId userIdWS

매개변수

이름유형필수설명
tenantIdstringYes
urlIdstringYes
userIdWSstringNo
startTimeint64No
endTimeint64No

응답

반환: Option[GetEventLogResponse]

예시

getEventLog 예제
Copy Copy
1
2let (eventLogOpt, httpResp) = client.getEventLog(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 userIdWS = "",
6 startTime = 0'i64,
7 endTime = 0'i64,
8)
9
10if eventLogOpt.isSome:
11 let eventLog = eventLogOpt.get()
12 echo eventLog
13

전체 이벤트 로그 가져오기 Internal Link

req tenantId urlId userIdWS

매개변수

이름형식필수설명
tenantIdstring
urlIdstring
userIdWSstring아니오
startTimeint64아니오
endTimeint64아니오

응답

반환: Option[GetEventLogResponse]

예제

getGlobalEventLog 예제
Copy Copy
1
2let (eventLogOpt, httpResp) = client.getGlobalEventLog(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 userIdWS = "user-456",
6 startTime = 1700000000'i64,
7 endTime = 1700003600'i64,
8)
9
10if eventLogOpt.isSome:
11 let eventLog = eventLogOpt.get()
12 echo eventLog
13

피드 포스트 생성 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
createFeedPostParamsCreateFeedPostParamsNo
optionsCreateFeedPostOptionsNo

응답

반환: Option[CreateFeedPostsResponse]

예시

createFeedPost 예시
Copy Copy
1
2let (respOpt, httpResp) = client.createFeedPost(
3 tenantId = "my-tenant-123",
4 createFeedPostParams = CreateFeedPostParams(),
5 options = CreateFeedPostOptions()
6)
7
8if respOpt.isSome:
9 let feedPost = respOpt.get()
10

공개 피드 포스트 생성 Internal Link

매개변수

NameTypeRequiredDescription
tenantIdstringYes
createFeedPostParamsCreateFeedPostParamsNo
optionsCreateFeedPostPublicOptionsNo

응답

반환: Option[CreateFeedPostResponse]

예제

createFeedPostPublic 예제
Copy Copy
1
2let params = CreateFeedPostParams(
3 urlId: "news/big-event",
4 title: "Big Event Happened",
5 content: "Full article content goes here.",
6 tags: @["news", "event"]
7)
8
9let opts = CreateFeedPostPublicOptions(
10 sendNotifications: false,
11 allowComments: true
12)
13
14let (response, httpResponse) = client.createFeedPostPublic(
15 tenantId = "my-tenant-123",
16 createFeedPostParams = params,
17 options = opts
18)
19
20if response.isSome:
21 let post = response.get()
22 echo post
23

공개 피드 포스트 삭제 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
postIdstringNo
optionsDeleteFeedPostPublicOptionsNo

응답

반환: Option[DeleteFeedPostPublicResponse]

예시

deleteFeedPostPublic 예시
Copy Copy
1
2let (response, httpResponse) = client.deleteFeedPostPublic(
3 tenantId = "my-tenant-123",
4 postId = "news/article-42",
5 options = DeleteFeedPostPublicOptions()
6)
7
8if response.isSome:
9 let deleteResp = response.get()
10

피드 포스트 가져오기 Internal Link

req tenantId afterId

Parameters

이름타입필수설명
tenantIdstring
optionsGetFeedPostsOptions아니오

Response

반환: Option[GetFeedPostsResponse]

예시

getFeedPosts 예시
Copy Copy
1
2let (feedResponseOpt, httpResp) = client.getFeedPosts(tenantId = "my-tenant-123", options = GetFeedPostsOptions())
3if feedResponseOpt.isSome:
4 let feedResponse = feedResponseOpt.get()
5 echo feedResponse
6

공개 피드 포스트 가져오기 Internal Link

req tenantId afterId

매개변수

이름유형필수설명
tenantIdstringYes
optionsGetFeedPostsPublicOptionsNo

응답

반환: Option[PublicFeedPostsResponse]

예시

getFeedPostsPublic 예시
Copy Copy
1
2let (feedResponseOpt, httpResponse) = client.getFeedPostsPublic(tenantId = "my-tenant-123", options = GetFeedPostsPublicOptions())
3if feedResponseOpt.isSome:
4 let feedResponse = feedResponseOpt.get()
5

피드 포스트 통계 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
postIdsseq[string]아니오
ssostring = ""아니오

응답

반환: Option[FeedPostsStatsResponse]

예시

getFeedPostsStats 예시
Copy Copy
1
2let (statsOpt, httpResponse) = client.getFeedPostsStats(
3 tenantId = "my-tenant-123",
4 postIds = @["post-abc", "post-def"],
5 sso = "sso-token",
6)
7
8if statsOpt.isSome:
9 let stats = statsOpt.get()
10 # 필요에 따라 stats 사용
11
12
13

공개 사용자 반응 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
optionsGetUserReactsPublicOptions아니오

응답

반환: Option[UserReactsResponse]

예시

getUserReactsPublic 예시
Copy Copy
1
2let opts = GetUserReactsPublicOptions(
3 limit = 20,
4 offset = 0,
5 includeDeleted = false
6)
7
8let (response, httpResponse) = client.getUserReactsPublic(
9 tenantId = "my-tenant-123",
10 options = opts
11)
12
13if response.isSome:
14 let userReacts = response.get()
15

공개 피드 포스트에 반응 Internal Link

매개변수

이름타입필수설명
tenantIdstringYes
postIdstringNo
reactBodyParamsReactBodyParamsNo
optionsReactFeedPostPublicOptionsNo

응답

반환: Option[ReactFeedPostResponse]

예시

reactFeedPostPublic 예시
Copy Copy
1
2let reactParams = ReactBodyParams()
3let (optResp, httpResp) = client.reactFeedPostPublic(
4 tenantId = "my-tenant-123",
5 postId = "post-456",
6 reactBodyParams = reactParams,
7 options = ReactFeedPostPublicOptions()
8)
9if optResp.isSome:
10 let resp = optResp.get()
11 echo resp
12

피드 포스트 업데이트 Internal Link


매개변수

이름유형필수설명
tenantIdstring
idstring아니오
feedPostFeedPost아니오

응답

반환: Option[APIEmptyResponse]

예시

updateFeedPost 예시
Copy Copy
1
2let feedPost = FeedPost(
3 title: "Breaking News",
4 content: "Updated story content",
5 tags: @["news", "update"]
6)
7
8let (apiRes, httpRes) = client.updateFeedPost(
9 tenantId = "my-tenant-123",
10 id = "post-456",
11 feedPost = feedPost
12)
13
14if apiRes.isSome:
15 let res = apiRes.get()
16

공개 피드 포스트 업데이트 Internal Link


매개변수

이름유형필수설명
tenantIdstring
postIdstring아니오
updateFeedPostParamsUpdateFeedPostParams아니오
optionsUpdateFeedPostPublicOptions아니오

응답

반환: Option[CreateFeedPostResponse]

예시

updateFeedPostPublic 예시
Copy Copy
1
2let (response, httpResponse) = client.updateFeedPostPublic(
3 tenantId = "my-tenant-123",
4 postId = "post-789",
5 updateFeedPostParams = UpdateFeedPostParams(),
6 options = UpdateFeedPostPublicOptions()
7)
8
9if response.isSome:
10 let post = response.get()
11

공개 댓글 신고 Internal Link

Parameters

이름유형필수설명
tenantIdstring
commentIdstring
isFlaggedbool아니오
ssostring = ""아니오

Response

반환: Option[APIEmptyResponse]

Example

flagCommentPublic 예시
Copy Copy
1
2let (optResp, httpResp) = client.flagCommentPublic(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-456789",
5 isFlagged = true,
6 sso = ""
7)
8
9if optResp.isSome:
10 let empty = optResp.get()
11 discard empty
12

큰 GIF 가져오기 Internal Link

매개변수

이름형식필수설명
tenantIdstring
largeInternalURLSanitizedstring아니오

응답

Returns: Option[GifGetLargeResponse]

예시

getGifLarge 예시
Copy Copy
1
2let (gifOpt, httpResp) = client.getGifLarge(
3 tenantId = "my-tenant-123",
4 largeInternalURLSanitized = "https://cdn.example.com/gifs/large123.gif")
5if gifOpt.isSome:
6 let gif = gifOpt.get()
7 echo gif
8

GIF 검색 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
searchstringNo
optionsGetGifsSearchOptionsNo

응답

Returns: Option[GetGifsSearchResponse]

예시

getGifsSearch 예시
Copy Copy
1
2let opts = GetGifsSearchOptions(limit = 10, rating = "g")
3let (responseOpt, httpResponse) = client.getGifsSearch(tenantId = "my-tenant-123", search = "funny cats", options = opts)
4if responseOpt.isSome:
5 let resp = responseOpt.get()
6 # resp를 필요에 따라 사용
7

인기 GIF 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
optionsGetGifsTrendingOptions아니오

응답

반환: Option[GetGifsTrendingResponse]

예제

getGifsTrending 예제
Copy Copy
1
2let (maybeResponse, httpResponse) = client.getGifsTrending(
3 tenantId = "my-tenant-123",
4 options = GetGifsTrendingOptions()
5)
6
7if maybeResponse.isSome:
8 let gifs = maybeResponse.get()
9 echo gifs
10

해시태그 추가 Internal Link

매개변수

이름형식필수설명
tenantIdstring
createHashTagBodyCreateHashTagBody아니오

응답

반환: Option[CreateHashTagResponse]

예시

addHashTag 예시
Copy Copy
1
2let (hashTagOpt, httpResp) = client.addHashTag(
3 tenantId = "my-tenant-123",
4 createHashTagBody = CreateHashTagBody(),
5)
6
7if hashTagOpt.isSome:
8 let tag = hashTagOpt.get()
9

해시태그 일괄 추가 Internal Link

매개변수

이름유형필수설명
tenantIdstring
bulkCreateHashTagsBodyBulkCreateHashTagsBody아니오

응답

반환: Option[BulkCreateHashTagsResponse]

예시

addHashTagsBulk 예시
Copy Copy
1
2let (optResp, httpResp) = client.addHashTagsBulk(
3 tenantId = "my-tenant-123",
4 bulkCreateHashTagsBody = BulkCreateHashTagsBody(
5 hashTags = @["news", "technology"]
6 )
7)
8
9if optResp.isSome:
10 let resp = optResp.get()
11

해시태그 삭제 Internal Link

Parameters

이름타입필수설명
tenantIdstringYes
tagstringNo
deleteHashTagRequestBodyDeleteHashTagRequestBodyNo

Response

반환: Option[APIEmptyResponse]

예시

deleteHashTag 예시
Copy Copy
1
2let (apiResp, httpResp) = client.deleteHashTag(tenantId = "my-tenant-123", tag = "sports", deleteHashTagRequestBody = DeleteHashTagRequestBody())
3if apiResp.isSome:
4 let emptyResp = apiResp.get()
5

해시태그 가져오기 Internal Link

매개변수

이름형식필수설명
tenantIdstring
pagefloat64아니오

응답

반환: Option[GetHashTagsResponse]

예시

getHashTags 예시
Copy Copy
1
2let (hashTagsOpt, httpResp) = client.getHashTags(tenantId = "my-tenant-123", page = 0.0)
3if hashTagsOpt.isSome:
4 let hashTags = hashTagsOpt.get()
5 echo hashTags
6else:
7 echo "No hashtags found"
8

해시태그 패치 Internal Link

매개변수

이름타입필수설명
tenantIdstring
tagstring아니오
updateHashTagBodyUpdateHashTagBody아니오

응답

반환: Option[UpdateHashTagResponse]

예시

patchHashTag 예제
Copy Copy
1
2let updateBody = UpdateHashTagBody()
3let (optResp, httpResp) = client.patchHashTag(
4 tenantId = "my-tenant-123",
5 tag = "news",
6 updateHashTagBody = updateBody
7)
8if optResp.isSome:
9 let resp = optResp.get()
10 echo resp
11else:
12 echo "No response"
13

중재 투표 삭제 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
commentIdstringYes
voteIdstringNo
optionsDeleteModerationVoteOptionsNo

응답

반환: Option[VoteDeleteResponse]

예시

deleteModerationVote 예제
Copy Copy
1
2let (respOpt, httpResp) = client.deleteModerationVote(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-987654",
5 voteId = "vote-abc123",
6 options = DeleteModerationVoteOptions()
7)
8
9if respOpt.isSome:
10 let resp = respOpt.get()
11

API 댓글 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
optionsGetApiCommentsOptionsNo

응답

반환: Option[ModerationAPIGetCommentsResponse]

예제

getApiComments 예제
Copy Copy
1
2let (maybeResp, httpResp) = client.getApiComments(tenantId = "my-tenant-123", options = GetApiCommentsOptions())
3if maybeResp.isSome:
4 let resp = maybeResp.get()
5 # `resp`를 사용하여 추가 처리를 수행할 수 있습니다
6

API 내보내기 상태 가져오기 Internal Link

매개변수

이름타입필수설명
tenantIdstring
optionsGetApiExportStatusOptions아니오

응답

반환: Option[ModerationExportStatusResponse]

예시

getApiExportStatus 예시
Copy Copy
1
2let (exportStatusOpt, httpResp) = client.getApiExportStatus(
3 tenantId = "my-tenant-123",
4 options = GetApiExportStatusOptions()
5)
6if exportStatusOpt.isSome:
7 let exportStatus = exportStatusOpt.get()
8 # 필요에 따라 exportStatus 사용
9

API ID 가져오기 Internal Link

Parameters

NameTypeRequiredDescription
tenantIdstringYes
optionsGetApiIdsOptionsNo

Response

반환: Option[ModerationAPIGetCommentIdsResponse]

Example

getApiIds 예시
Copy Copy
1
2let opts = GetApiIdsOptions()
3let (maybeResponse, httpResponse) = client.getApiIds(tenantId = "my-tenant-123", options = opts)
4if maybeResponse.isSome:
5 let response = maybeResponse.get()
6 echo response
7

댓글에서 차단된 사용자 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
commentIdstringYes
ssostring = ""No

응답

반환: Option[GetBannedUsersFromCommentResponse]

예시

getBanUsersFromComment 예시
Copy Copy
1
2let (response, httpResponse) = client.getBanUsersFromComment(tenantId = "my-tenant-001", commentId = "cmt-123456", sso = "")
3if response.isSome:
4 let banInfo = response.get()
5 echo banInfo
6

댓글 차단 상태 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
commentIdstring
ssostring = ""아니오

응답

반환: Option[GetCommentBanStatusResponse]

예제

getCommentBanStatus 예제
Copy Copy
1
2let (banStatusOpt, httpResp) = client.getCommentBanStatus(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-456789",
5 sso = "")
6
7if banStatusOpt.isSome:
8 let banStatus = banStatusOpt.get()
9 echo banStatus
10

댓글 자식 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
commentIdstringYes
ssostring = ""No

응답

Returns: Option[ModerationAPIChildCommentsResponse]

예시

getCommentChildren 예시
Copy Copy
1
2let (childRespOpt, httpResp) = client.getCommentChildren(tenantId = "my-tenant-123", commentId = "cmt-456789", sso = "")
3if childRespOpt.isSome:
4 let childResp = childRespOpt.get()
5 echo childResp
6

카운트 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
optionsGetCountOptionsNo

응답

반환: Option[ModerationAPICountCommentsResponse]

예제

getCount 예제
Copy Copy
1
2let (countOpt, httpResponse) = client.getCount(tenantId = "my-tenant-123", options = GetCountOptions())
3if countOpt.isSome:
4 let count = countOpt.get()
5

카운트들 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
ssostring = ""아니오

응답

반환: Option[GetBannedUsersCountResponse]

예시

getCounts 예시
Copy Copy
1
2let (maybeCounts, httpRes) = client.getCounts(tenantId = "my-tenant-123", sso = "")
3if maybeCounts.isSome:
4 let counts = maybeCounts.get()
5 echo counts
6else:
7 echo "No counts returned"
8

로그 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
commentIdstringYes
ssostring = ""No

응답

반환: Option[ModerationAPIGetLogsResponse]

예시

getLogs 예시
Copy Copy
1
2let (logsOpt, httpRes) = client.getLogs(tenantId = "my-tenant-123", commentId = "cmt-789", sso = "")
3if logsOpt.isSome:
4 let logs = logsOpt.get()
5 echo logs
6

수동 배지 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
ssostring = ""No

응답

반환: Option[GetTenantManualBadgesResponse]

예시

getManualBadges 예제
Copy Copy
1
2let (manualBadgesOpt, httpResponse) = client.getManualBadges(tenantId = "my-tenant-123", sso = "")
3if manualBadgesOpt.isSome:
4 let manualBadges = manualBadgesOpt.get()
5 echo manualBadges
6

사용자 수동 배지 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
optionsGetManualBadgesForUserOptionsNo

응답

반환: Option[GetUserManualBadgesResponse]

예시

getManualBadgesForUser 예시
Copy Copy
1
2let (userBadgesOpt, httpResp) = client.getManualBadgesForUser(
3 tenantId = "my-tenant-123",
4 options = GetManualBadgesForUserOptions()
5)
6if userBadgesOpt.isSome:
7 let badges = userBadgesOpt.get()
8 echo badges
9

중재 댓글 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
commentIdstring
optionsGetModerationCommentOptions아니오

응답

반환: Option[ModerationAPICommentResponse]

예시

getModerationComment 예시
Copy Copy
1
2let (maybeComment, httpResponse) = client.getModerationComment(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-456789",
5 options = default(GetModerationCommentOptions)
6)
7
8if maybeComment.isSome:
9 let comment = maybeComment.get()
10 echo comment
11

중재 댓글 텍스트 가져오기 Internal Link

매개변수

이름타입필수설명
tenantIdstringYes
commentIdstringYes
ssostring = ""No

응답

반환: Option[GetCommentTextResponse]

예시

getModerationCommentText 예시
Copy Copy
1
2let (optResp, httpResp) = client.getModerationCommentText(
3 tenantId = "my-tenant-123",
4 commentId = "comment-456abc",
5 sso = ""
6)
7
8if optResp.isSome:
9 let resp = optResp.get()
10 echo resp
11

사전 차단 요약 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
commentIdstring
optionsGetPreBanSummaryOptions아니오

응답

반환: Option[PreBanSummary]

예제

getPreBanSummary 예제
Copy Copy
1
2let (preBanSummaryOpt, httpResponse) = client.getPreBanSummary(tenantId = "my-tenant-123", commentId = "cmt-456", options = GetPreBanSummaryOptions())
3if preBanSummaryOpt.isSome:
4 let summary = preBanSummaryOpt.get()
5

댓글 검색 요약 가져오기 Internal Link

Parameters

NameTypeRequiredDescription
tenantIdstring
optionsGetSearchCommentsSummaryOptions아니오

Response

Returns: Option[ModerationCommentSearchResponse]

Example

getSearchCommentsSummary 예제
Copy Copy
1
2let (summaryOpt, httpResp) = client.getSearchCommentsSummary(
3 tenantId = "my-tenant-123",
4 options = GetSearchCommentsSummaryOptions()
5)
6
7if summaryOpt.isSome:
8 let summary = summaryOpt.get()
9 echo summary
10

페이지 검색 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
optionsGetSearchPagesOptions아니오

응답

반환: Option[ModerationPageSearchResponse]

예제

getSearchPages 예제
Copy Copy
1
2let (searchResp, httpResp) = client.getSearchPages(
3 tenantId = "my-tenant-123",
4 options = GetSearchPagesOptions(
5 page: 1,
6 pageSize: 20,
7 query: "spam"
8 )
9)
10
11if searchResp.isSome:
12 let resp = searchResp.get()
13

사이트 검색 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
optionsGetSearchSitesOptions아니오

응답

반환: Option[ModerationSiteSearchResponse]

예제

getSearchSites 예제
Copy Copy
1
2let (searchResult, httpResp) = client.getSearchSites(tenantId = "my-tenant-123", options = GetSearchSitesOptions())
3if searchResult.isSome:
4 let siteResp = searchResult.get()
5

검색 제안 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
optionsGetSearchSuggestOptions아니오

응답

반환: Option[ModerationSuggestResponse]

예시

getSearchSuggest 예시
Copy Copy
1
2let (suggestOpt, httpResp) = client.getSearchSuggest(
3 tenantId = "my-tenant-123",
4 options = GetSearchSuggestOptions(),
5)
6
7if suggestOpt.isSome:
8 let suggest = suggestOpt.get()
9 echo suggest
10

사용자 검색 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
optionsGetSearchUsersOptions아니오

응답

반환: Option[ModerationUserSearchResponse]

예시

getSearchUsers 예제
Copy Copy
1
2let (searchRes, httpRes) = client.getSearchUsers(tenantId = "my-tenant-123", options = default(GetSearchUsersOptions))
3if searchRes.isSome:
4 let data = searchRes.get()
5 echo data
6

신뢰도 요인 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
optionsGetTrustFactorOptions아니오

응답

반환: Option[GetUserTrustFactorResponse]

예시

getTrustFactor 예시
Copy Copy
1
2let (trustOpt, httpResp) = client.getTrustFactor(tenantId = "my-tenant-123", options = GetTrustFactorOptions())
3if trustOpt.isSome:
4 let trust = trustOpt.get()
5 discard trust
6

사용자 차단 선호도 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
ssostring = ""No

응답

반환: Option[APIModerateGetUserBanPreferencesResponse]

예시

getUserBanPreference 예시
Copy Copy
1
2let (maybePref, httpResp) = client.getUserBanPreference(tenantId = "my-tenant-123", sso = "")
3if maybePref.isSome:
4 let pref = maybePref.get()
5 echo pref
6

사용자 내부 프로필 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
optionsGetUserInternalProfileOptionsNo

응답

반환: Option[GetUserInternalProfileResponse]

예시

getUserInternalProfile 예시
Copy Copy
1
2let (profileOpt, httpResp) = client.getUserInternalProfile(
3 tenantId = "my-tenant-123",
4 options = GetUserInternalProfileOptions()
5)
6
7if profileOpt.isSome:
8 let profile = profileOpt.get()
9

댓글 투표 조정 Internal Link

Parameters

이름유형필수설명
tenantIdstring
commentIdstring
adjustCommentVotesParamsAdjustCommentVotesParams아니오
optionsPostAdjustCommentVotesOptions아니오

Response

반환: Option[AdjustVotesResponse]

Example

postAdjustCommentVotes 예시
Copy Copy
1
2let (adjustRespOpt, httpResp) = client.postAdjustCommentVotes(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-789",
5 adjustCommentVotesParams = AdjustCommentVotesParams(),
6 options = PostAdjustCommentVotesOptions()
7)
8
9if adjustRespOpt.isSome:
10 let adjustResp = adjustRespOpt.get()
11

API 내보내기 요청 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
optionsPostApiExportOptionsNo

응답

Returns: Option[ModerationExportResponse]

예시

postApiExport 예시
Copy Copy
1
2let (optExport, httpResp) = client.postApiExport(tenantId = "my-tenant-123", options = PostApiExportOptions())
3if optExport.isSome:
4 let export = optExport.get()
5 echo export
6

댓글에서 사용자 차단 Internal Link

Parameters

이름유형필수설명
tenantIdstring
commentIdstring
optionsPostBanUserFromCommentOptions아니오

Response

반환값: Option[BanUserFromCommentResult]

예제

postBanUserFromComment 예제
Copy Copy
1
2let (banResult, httpResp) = client.postBanUserFromComment(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-456",
5 options = PostBanUserFromCommentOptions()
6)
7
8if banResult.isSome:
9 let result = banResult.get()
10 echo result
11

사용자 차단 취소 Internal Link

매개변수

이름유형필수설명
tenantIdstring
banUserUndoParamsBanUserUndoParams아니오
ssostring = ""아니오

응답

반환: Option[APIEmptyResponse]

예시

postBanUserUndo 예제
Copy Copy
1
2let (apiResp, httpResp) = client.postBanUserUndo(
3 tenantId = "my-tenant-123",
4 banUserUndoParams = BanUserUndoParams(userId = "user-456"),
5 sso = ""
6)
7
8if apiResp.isSome:
9 let _ = apiResp.get()
10

대량 사전 차단 요약 요청 Internal Link

매개변수

이름유형필수설명
tenantIdstring
bulkPreBanParamsBulkPreBanParams아니오
optionsPostBulkPreBanSummaryOptions아니오

응답

반환: Option[BulkPreBanSummary]

예시

postBulkPreBanSummary 예시
Copy Copy
1
2let bulkParams = BulkPreBanParams(emailAddresses: @["spam@example.com"], ipAddresses: @["203.0.113.5"])
3let opt = PostBulkPreBanSummaryOptions(dryRun: false, maxResults: 0)
4let (summaryOpt, httpResp) = client.postBulkPreBanSummary(tenantId = "my-tenant-123", bulkPreBanParams = bulkParams, options = opt)
5if summaryOpt.isSome:
6 let _ = summaryOpt.get()
7

ID로 댓글 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
commentsByIdsParamsCommentsByIdsParams아니오
ssostring = ""아니오

응답

반환: Option[ModerationAPIChildCommentsResponse]

예시

postCommentsByIds 예시
Copy Copy
1
2let tenantId = "my-tenant-123"
3let params = CommentsByIdsParams(commentIds = @["cmt-001", "cmt-002"])
4let (maybeResp, httpResp) = client.postCommentsByIds(tenantId = tenantId, commentsByIdsParams = params, sso = "")
5if maybeResp.isSome:
6 let resp = maybeResp.get()
7 # 필요에 따라 resp 사용
8

댓글 신고 요청 Internal Link

매개변수

NameTypeRequiredDescription
tenantIdstring
commentIdstring
optionsPostFlagCommentOptions아니오

응답

반환: Option[APIEmptyResponse]

예제

postFlagComment 예제
Copy Copy
1
2let opts = PostFlagCommentOptions()
3let (response, httpResponse) = client.postFlagComment(
4 tenantId = "my-tenant-123",
5 commentId = "comment-987654",
6 options = opts,
7)
8if response.isSome:
9 let result = response.get()
10

댓글 삭제 요청 Internal Link

매개변수

이름타입필수설명
tenantIdstringYes
commentIdstringYes
optionsPostRemoveCommentOptionsNo

응답

Returns: Option[PostRemoveCommentApiResponse]

예시

postRemoveComment 예시
Copy Copy
1
2let (apiResponseOpt, httpResp) = client.postRemoveComment(
3 tenantId = "my-tenant-123",
4 commentId = "comment-987654",
5 options = PostRemoveCommentOptions()
6)
7
8if apiResponseOpt.isSome:
9 let apiResponse = apiResponseOpt.get()
10

삭제된 댓글 복원 요청 Internal Link

매개변수

이름타입필수설명
tenantIdstringYes
commentIdstringYes
optionsPostRestoreDeletedCommentOptionsNo

응답

반환: Option[APIEmptyResponse]

예시

postRestoreDeletedComment 예시
Copy Copy
1
2let (respOpt, httpResp) = client.postRestoreDeletedComment(
3 tenantId = "my-tenant-123",
4 commentId = "comment-456",
5 options = default(PostRestoreDeletedCommentOptions)
6)
7
8if respOpt.isSome:
9 let empty = respOpt.get()
10 echo "Comment restored"
11

댓글 승인 상태 설정 Internal Link

매개변수

이름형식필수설명
tenantIdstring
commentIdstring
optionsPostSetCommentApprovalStatusOptions아니오

응답

반환: Option[SetCommentApprovedResponse]

예시

postSetCommentApprovalStatus 예시
Copy Copy
1
2let (approvedOpt, httpResp) = client.postSetCommentApprovalStatus(
3 tenantId = "my-tenant-123",
4 commentId = "comment-7890",
5 options = PostSetCommentApprovalStatusOptions()
6)
7
8if approvedOpt.isSome:
9 let approved = approvedOpt.get()
10 echo approved
11

댓글 검토 상태 설정 Internal Link

매개변수

NameTypeRequiredDescription
tenantIdstringYes
commentIdstringYes
optionsPostSetCommentReviewStatusOptionsNo

응답

Returns: Option[APIEmptyResponse]

예시

postSetCommentReviewStatus 예시
Copy Copy
1
2let (apiResp, httpResp) = client.postSetCommentReviewStatus(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-7890",
5 options = PostSetCommentReviewStatusOptions()
6)
7
8if apiResp.isSome:
9 let _ = apiResp.get()
10 discard
11else:
12 discard
13

댓글 스팸 상태 설정 Internal Link

매개변수

NameTypeRequiredDescription
tenantIdstringYes
commentIdstringYes
optionsPostSetCommentSpamStatusOptionsNo

응답

반환: Option[APIEmptyResponse]

예시

postSetCommentSpamStatus 예시
Copy Copy
1
2let defaultOpts = PostSetCommentSpamStatusOptions()
3let (maybeResp, httpResp) = client.postSetCommentSpamStatus(tenantId = "my-tenant-123", commentId = "cmt-456789", options = defaultOpts)
4if maybeResp.isSome:
5 let resp = maybeResp.get()
6

댓글 텍스트 설정 요청 Internal Link

매개변수

이름유형필수설명
tenantIdstring
commentIdstring
setCommentTextParamsSetCommentTextParams아니오
optionsPostSetCommentTextOptions아니오

응답

반환: Option[SetCommentTextResponse]

예제

postSetCommentText 예제
Copy Copy
1
2let (responseOpt, httpResponse) = client.postSetCommentText(
3 tenantId = "my-tenant-123",
4 commentId = "comment-987654",
5 setCommentTextParams = SetCommentTextParams(),
6 options = PostSetCommentTextOptions()
7)
8
9if responseOpt.isSome:
10 let updatedComment = responseOpt.get()
11

댓글 신고 해제 요청 Internal Link

매개변수

이름타입필수설명
tenantIdstringYes
commentIdstringYes
optionsPostUnFlagCommentOptionsNo

응답

반환: Option[APIEmptyResponse]

예시

postUnFlagComment 예시
Copy Copy
1
2let (maybeResp, httpResp) = client.postUnFlagComment(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-456789",
5 options = default(PostUnFlagCommentOptions)
6)
7
8if maybeResp.isSome:
9 let emptyResp = maybeResp.get()
10

투표 요청 Internal Link

매개변수

이름형식필수설명
tenantIdstring
commentIdstring
optionsPostVoteOptions아니오

응답

반환: Option[VoteResponse]

예시

postVote 예시
Copy Copy
1
2let (voteOpt, httpResp) = client.postVote(
3 tenantId = "my-tenant-123",
4 commentId = "comment-789",
5 options = default(PostVoteOptions)
6)
7
8if voteOpt.isSome:
9 let vote = voteOpt.get()
10

배지 수여 Internal Link

Parameters

이름유형필수설명
tenantIdstringYes
badgeIdstringNo
optionsPutAwardBadgeOptionsNo

Response

반환: Option[AwardUserBadgeResponse]

Example

putAwardBadge 예제
Copy Copy
1
2let (response, httpResponse) = client.putAwardBadge(
3 tenantId = "my-tenant-123",
4 badgeId = "gold-badge",
5 options = PutAwardBadgeOptions()
6)
7
8if response.isSome:
9 let award = response.get()
10

스레드 닫기 Internal Link

매개변수

이름형식필수설명
tenantIdstring
urlIdstring
ssostring = ""아니오

응답

반환: Option[APIEmptyResponse]

예시

putCloseThread 예시
Copy Copy
1
2let (respOpt, httpResp) = client.putCloseThread(tenantId = "my-tenant-123", urlId = "news/fastcomments-integration", sso = "")
3if respOpt.isSome:
4 let empty = respOpt.get()
5 echo "Thread successfully closed"
6

배지 제거 Internal Link

매개변수

이름유형필수설명
tenantIdstring
badgeIdstring아니오
optionsPutRemoveBadgeOptions아니오

응답

반환: Option[RemoveUserBadgeResponse]

예시

putRemoveBadge 예시
Copy Copy
1
2let (maybeResp, httpResp) = client.putRemoveBadge(
3 tenantId = "my-tenant-123",
4 badgeId = "badge-456",
5 options = PutRemoveBadgeOptions()
6)
7
8if maybeResp.isSome:
9 let badgeResp = maybeResp.get()
10

스레드 재열기 Internal Link

Parameters

NameTypeRequiredDescription
tenantIdstring
urlIdstring
ssostring = ""아니오

Response

Returns: Option[APIEmptyResponse]

Example

putReopenThread 예시
Copy Copy
1
2let (apiRespOpt, httpResp) = client.putReopenThread(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 sso = ""
6)
7
8if apiRespOpt.isSome:
9 let emptyResp = apiRespOpt.get()
10 discard
11

신뢰도 요인 설정 Internal Link

매개변수

NameTypeRequiredDescription
tenantIdstringYes
optionsSetTrustFactorOptionsNo

응답

Returns: Option[SetUserTrustFactorResponse]

예시

setTrustFactor 예시
Copy Copy
1
2let opts = SetTrustFactorOptions(userId = "user-456", trustFactor = 5, reason = "spam detection")
3let (trustResponse, httpResponse) = client.setTrustFactor(tenantId = "my-tenant-123", options = opts)
4if trustResponse.isSome:
5 let result = trustResponse.get()
6

모더레이터 생성 Internal Link


매개변수

이름형식필수설명
tenantIdstringYes
createModeratorBodyCreateModeratorBodyNo

응답

반환: Option[CreateModeratorResponse]

예시

createModerator 예시
Copy Copy
1
2let (moderatorRes, httpResp) = client.createModerator(tenantId = "my-tenant-123", createModeratorBody = CreateModeratorBody())
3if moderatorRes.isSome:
4 let moderator = moderatorRes.get()
5

모더레이터 삭제 Internal Link

매개변수

이름형식필수설명
tenantIdstringYes
idstringNo
sendEmailstring = ""No

응답

반환: Option[APIEmptyResponse]

예시

deleteModerator 예제
Copy Copy
1
2let (apiResp, httpResp) = client.deleteModerator(
3 tenantId = "my-tenant-123",
4 id = "mod-789",
5 sendEmail = "admin@mydomain.com",
6)
7
8if apiResp.isSome:
9 let empty = apiResp.get()
10 echo "Moderator removed"
11

모더레이터 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
idstring아니오

응답

반환: Option[GetModeratorResponse]

예시

getModerator 예제
Copy Copy
1
2let (moderatorOpt, httpResponse) = client.getModerator(tenantId = "my-tenant-123", id = "moderator-456")
3if moderatorOpt.isSome:
4 let moderator = moderatorOpt.get()
5 discard moderator
6

모더레이터 목록 가져오기 Internal Link

매개변수

이름형식필수설명
tenantIdstring
skipfloat64아니오

응답

반환: Option[GetModeratorsResponse]

예시

getModerators 예시
Copy Copy
1
2let (moderatorsOpt, httpResp) = client.getModerators(tenantId = "my-tenant-123", skip = 0.0)
3if moderatorsOpt.isSome:
4 let moderators = moderatorsOpt.get()
5 echo moderators
6

모더레이터 업데이트 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo
updateModeratorBodyUpdateModeratorBodyNo

응답

반환: Option[APIEmptyResponse]

예시

updateModerator 예시
Copy Copy
1
2let body = UpdateModeratorBody(name = "John Doe", email = "john@example.com", isActive = true)
3let (apiResult, httpResp) = client.updateModerator(tenantId = "my-tenant-123", id = "mod-456", updateModeratorBody = body)
4if apiResult.isSome:
5 let result = apiResult.get()
6

알림 카운트 삭제 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo

응답

반환: Option[APIEmptyResponse]

예시

deleteNotificationCount 예시
Copy Copy
1
2let (apiRespOpt, httpResp) = client.deleteNotificationCount(tenantId = "my-tenant-123", id = "notif-456")
3if apiRespOpt.isSome:
4 let _ = apiRespOpt.get()
5

캐시된 알림 카운트 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo

응답

반환: Option[GetCachedNotificationCountResponse]

예시

getCachedNotificationCount 예시
Copy Copy
1
2let (cachedCountOpt, httpResp) = client.getCachedNotificationCount(tenantId = "my-tenant-123", id = "article-456")
3if cachedCountOpt.isSome:
4 let cachedCount = cachedCountOpt.get()
5 echo cachedCount
6

알림 카운트 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
optionsGetNotificationCountOptionsNo

응답

Returns: Option[GetNotificationCountResponse]

예시

getNotificationCount 예시
Copy Copy
1
2let (notifOpt, httpResp) = client.getNotificationCount(tenantId = "my-tenant-123", options = GetNotificationCountOptions())
3if notifOpt.isSome:
4 let notif = notifOpt.get()
5 echo notif
6

알림 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
optionsGetNotificationsOptions아니오

응답

Returns: Option[GetNotificationsResponse]

예시

getNotifications 예시
Copy Copy
1
2let (notifOpt, httpResp) = client.getNotifications(tenantId = "my-tenant-123", options = GetNotificationsOptions())
3if notifOpt.isSome:
4 let notifications = notifOpt.get()
5

알림 업데이트 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo
updateNotificationBodyUpdateNotificationBodyNo
userIdstring = ""No

응답

반환: Option[APIEmptyResponse]

예시

updateNotification 예시
Copy Copy
1
2let body = UpdateNotificationBody(message: "Your comment was approved", isRead: false)
3let (optResp, httpResp) = client.updateNotification(
4 tenantId = "my-tenant-123",
5 id = "notif-789",
6 updateNotificationBody = body,
7 userId = "user-42"
8)
9if optResp.isSome:
10 let _ = optResp.get()
11

V1 페이지 반응 생성 Internal Link

매개변수

NameTypeRequiredDescription
tenantIdstring
urlIdstring
titlestring = ""아니오

응답

반환: Option[CreateV1PageReact]

예시

createV1PageReact 예시
Copy Copy
1
2let (pageOpt, httpResp) = client.createV1PageReact(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-456",
5 title = "Breaking News: Nim Takes Over"
6)
7
8if pageOpt.isSome:
9 let page = pageOpt.get()
10 discard page
11 discard httpResp
12

V2 페이지 반응 생성 Internal Link

Parameters

이름유형필수설명
tenantIdstring
urlIdstring
idstring아니오
titlestring = ""아니오

Response

반환: Option[CreateV1PageReact]

Example

createV2PageReact 예시
Copy Copy
1
2let (pageResult, httpResponse) = client.createV2PageReact(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 id = "page-456",
6 title = "Breaking News",
7)
8
9if pageResult.isSome:
10 let page = pageResult.get()
11 # 필요에 따라 `page` 사용
12

V1 페이지 반응 삭제 Internal Link

Parameters

이름유형필수설명
tenantIdstringYes
urlIdstringYes

응답

반환: Option[CreateV1PageReact]

예시

deleteV1PageReact 예시
Copy Copy
1
2let (reactOpt, httpResp) = client.deleteV1PageReact(tenantId = "my-tenant-123", urlId = "news/article-title")
3if reactOpt.isSome:
4 let react = reactOpt.get()
5

V2 페이지 반응 삭제 Internal Link

매개변수

이름유형필수설명
tenantIdstring
urlIdstring
idstring아니오

응답

반환: Option[CreateV1PageReact]

예시

deleteV2PageReact 예시
Copy Copy
1
2let (maybeReact, httpResp) = client.deleteV2PageReact(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 id = "react-456",
6)
7
8if maybeReact.isSome:
9 let react = maybeReact.get()
10 echo react
11

V1 페이지 좋아요 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
urlIdstring

응답

반환: Option[GetV1PageLikes]

예시

getV1PageLikes 예제
Copy Copy
1
2let (response, httpResponse) = client.getV1PageLikes(tenantId = "my-tenant-123", urlId = "news/article-title")
3if response.isSome:
4 let pageLikes = response.get()
5 # 필요에 따라 pageLikes 사용
6

V2 페이지 반응 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
urlIdstringYes

응답

반환: Option[GetV2PageReacts]

예시

getV2PageReacts 예시
Copy Copy
1
2let (reactsOpt, httpResp) = client.getV2PageReacts(tenantId = "my-tenant-123", urlId = "news/article-title")
3if reactsOpt.isSome:
4 let reacts = reactsOpt.get()
5 echo reacts
6

V2 페이지 반응 사용자 가져오기 Internal Link

매개변수

이름형식필수설명
tenantIdstring
urlIdstring
idstring아니오

응답

반환: Option[GetV2PageReactUsersResponse]

예제

getV2PageReactUsers 예제
Copy Copy
1
2let (maybeResponse, httpResponse) = client.getV2PageReactUsers(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 id = "user-456"
6)
7
8if maybeResponse.isSome:
9 let resp = maybeResponse.get()
10 echo resp
11

페이지 추가 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
createAPIPageDataCreateAPIPageDataNo

응답

반환: Option[AddPageAPIResponse]

예시

addPage 예시
Copy Copy
1
2let pageData = CreateAPIPageData(
3 urlId = "news/article-2024",
4 title = "Breaking News: Nim Takes Over",
5 description = "An in-depth article about Nim's rise.",
6 tags = @["nim", "programming", "news"]
7)
8
9let (addPageResp, httpResp) = client.addPage(
10 tenantId = "my-tenant-123",
11 createAPIPageData = pageData
12)
13
14if addPageResp.isSome:
15 let resp = addPageResp.get()
16 echo resp
17

페이지 삭제 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo

응답

반환: Option[DeletePageAPIResponse]

예제

deletePage 예제
Copy Copy
1
2let (deleteRespOpt, httpResp) = client.deletePage(tenantId = "my-tenant-123", id = "news/article-title")
3if deleteRespOpt.isSome:
4 let deleteResp = deleteRespOpt.get()
5 discard deleteResp
6discard httpResp
7

오프라인 사용자 가져오기 Internal Link

Past commenters on the page who are NOT currently online. Sorted by displayName.
Use this after exhausting /users/online to render a "Members" section.
Cursor pagination on commenterName: server walks the partial {tenantId, urlId, commenterName}
index from afterName forward via $gt, no $skip cost.

매개변수

이름타입필수설명
tenantIdstringYes
urlIdstringYes
optionsGetOfflineUsersOptionsNo

응답

반환: Option[PageUsersOfflineResponse]

예시

getOfflineUsers 예시
Copy Copy
1
2let (offlineResp, httpResponse) = client.getOfflineUsers(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 options = GetOfflineUsersOptions()
6)
7if offlineResp.isSome:
8 let offline = offlineResp.get()
9 echo offline)
10

온라인 사용자 가져오기 Internal Link


현재 페이지에 온라인인 뷰어: 현재 페이지에 구독된 웹소켓 세션을 가진 사람들. 익명 카운트와 전체 카운트(방 전체 구독자, 열거하지 않는 익명 뷰어 포함)를 반환합니다.

Parameters

NameTypeRequiredDescription
tenantIdstringYes
urlIdstringYes
optionsGetOnlineUsersOptionsNo

Response

반환: Option[PageUsersOnlineResponse]

Example

getOnlineUsers 예시
Copy Copy
1
2let opts = GetOnlineUsersOptions()
3let (onlineUsersOpt, httpResp) = client.getOnlineUsers(tenantId = "my-tenant-123", urlId = "news/article-title", options = opts)
4if onlineUsersOpt.isSome:
5 let onlineUsers = onlineUsersOpt.get()
6 echo onlineUsers
7

URL ID로 페이지 가져오기 Internal Link

매개변수

이름타입필수설명
tenantIdstringYes
urlIdstringYes

응답

반환: Option[GetPageByURLIdAPIResponse]

예시

getPageByURLId 예제
Copy Copy
1
2let (pageOpt, httpRes) = client.getPageByURLId(tenantId = "my-tenant-123", urlId = "news/article-title")
3if pageOpt.isSome:
4 let page = pageOpt.get()
5 echo page
6

페이지 목록 가져오기 Internal Link

파라미터

NameTypeRequiredDescription
tenantIdstringYes

응답

반환값: Option[GetPagesAPIResponse]

예시

getPages 예시
Copy Copy
1
2let (pagesOpt, httpResp) = client.getPages(tenantId = "my-tenant-123")
3if pagesOpt.isSome:
4 let pages = pagesOpt.get()
5 echo pages
6else:
7 echo "No pages returned"
8echo httpResp
9

공개 페이지 목록 가져오기 Internal Link

테넌트의 페이지 목록을 조회합니다. FChat 데스크톱 클라이언트가 방 목록을 채우는 데 사용됩니다.
enableFChat이 각 페이지에 대한 해결된 사용자 지정 구성에서 true로 설정되어 있어야 합니다.
SSO가 필요한 페이지는 요청 사용자의 그룹 접근 권한에 따라 필터링됩니다.

매개변수

NameTypeRequiredDescription
tenantIdstringYes
optionsGetPagesPublicOptionsNo

응답

반환: Option[GetPublicPagesResponse]

예시

getPagesPublic 예시
Copy Copy
1
2let (response, httpResponse) = client.getPagesPublic(tenantId = "my-tenant-123", options = GetPagesPublicOptions())
3if response.isSome:
4 let pages = response.get()
5 echo pages
6

사용자 정보 가져오기 Internal Link

Bulk user info for a tenant. Given userIds, return display info from User / SSOUser. Used by the comment widget to enrich users that just appeared via a presence event. No page context: privacy is enforced uniformly (private profiles are masked).

Parameters

이름유형필수설명
tenantIdstring
idsstring아니오

Response

Returns: Option[PageUsersInfoResponse]

Example

getUsersInfo 예제
Copy Copy
1
2let (usersInfoOpt, httpResp) = client.getUsersInfo(tenantId = "my-tenant-123", ids = "user42")
3if usersInfoOpt.isSome:
4 let usersInfo = usersInfoOpt.get()
5

페이지 패치 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo
updateAPIPageDataUpdateAPIPageDataNo

응답

반환: Option[PatchPageAPIResponse]

예시

patchPage 예시
Copy Copy
1
2let (response, httpResponse) = client.patchPage(
3 tenantId = "my-tenant-123",
4 id = "news/article-456",
5 updateAPIPageData = UpdateAPIPageData(title = "Updated article title", description = "Revised description")
6)
7
8if response.isSome:
9 let resp = response.get()
10

보류 중인 웹훅 이벤트 삭제 Internal Link

매개변수

이름유형필수설명
tenantIdstring
idstring아니오

응답

반환: Option[APIEmptyResponse]

예시

deletePendingWebhookEvent 예시
Copy Copy
1
2let (response, httpResponse) = client.deletePendingWebhookEvent(tenantId = "my-tenant-123", id = "event-456")
3if response.isSome:
4 let empty = response.get()
5

보류 중인 웹훅 이벤트 카운트 가져오기 Internal Link

매개변수

이름타입필수설명
tenantIdstring
optionsGetPendingWebhookEventCountOptions아니오

응답

반환: Option[GetPendingWebhookEventCountResponse]

예시

getPendingWebhookEventCount 예시
Copy Copy
1
2let (pendingCountOpt, httpResponse) = client.getPendingWebhookEventCount(tenantId = "my-tenant-123", options = GetPendingWebhookEventCountOptions())
3if pendingCountOpt.isSome:
4 let pendingCount = pendingCountOpt.get()
5 echo pendingCount
6

보류 중인 웹훅 이벤트 가져오기 Internal Link

매개변수

이름타입필수설명
tenantIdstringYes
optionsGetPendingWebhookEventsOptionsNo

응답

반환: Option[GetPendingWebhookEventsResponse]

예제

getPendingWebhookEvents 예제
Copy Copy
1
2let (maybeResp, httpResp) = client.getPendingWebhookEvents(
3 tenantId = "my-tenant-123",
4 options = GetPendingWebhookEventsOptions()
5)
6
7if maybeResp.isSome:
8 let resp = maybeResp.get()
9

질문 설정 생성 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
createQuestionConfigBodyCreateQuestionConfigBodyNo

응답

반환: Option[CreateQuestionConfigResponse]

예시

createQuestionConfig 예시
Copy Copy
1
2let configBody = CreateQuestionConfigBody()
3let (maybeResp, httpResp) = client.createQuestionConfig(
4 tenantId = "my-tenant-123",
5 createQuestionConfigBody = configBody,
6)
7if maybeResp.isSome:
8 let resp = maybeResp.get()
9 # 필요에 따라 resp 사용
10

질문 설정 삭제 Internal Link

매개변수

이름형식필수설명
tenantIdstring
idstring아니오

응답

반환: Option[APIEmptyResponse]

예시

deleteQuestionConfig 예시
Copy Copy
1
2let (apiResult, httpResponse) = client.deleteQuestionConfig(tenantId = "my-tenant-123", id = "question-config-456")
3if apiResult.isSome:
4 let empty = apiResult.get()
5

질문 설정 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
idstring아니오

응답

반환: Option[GetQuestionConfigResponse]

예제

getQuestionConfig 예제
Copy Copy
1
2let (questionConfigOpt, httpResp) = client.getQuestionConfig(tenantId = "my-tenant-123", id = "question-987")
3if questionConfigOpt.isSome:
4 let config = questionConfigOpt.get()
5 echo config
6

질문 설정 목록 가져오기 Internal Link


매개변수

이름유형필수설명
tenantIdstringYes
skipfloat64No

응답

반환: 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 configs
6

질문 설정 업데이트 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo
updateQuestionConfigBodyUpdateQuestionConfigBodyNo

응답

반환: Option[APIEmptyResponse]

예시

updateQuestionConfig 예시
Copy Copy
1
2let (apiResp, httpResp) = client.updateQuestionConfig(
3 tenantId = "my-tenant-123",
4 id = "question-456",
5 updateQuestionConfigBody = UpdateQuestionConfigBody()
6)
7
8if apiResp.isSome:
9 let resp = apiResp.get()
10

질문 결과 생성 Internal Link

매개변수

이름타입필수설명
tenantIdstring
createQuestionResultBodyCreateQuestionResultBody아니오

응답

반환: Option[CreateQuestionResultResponse]

예제

createQuestionResult 예제
Copy Copy
1
2let tenantId = "my-tenant-123"
3let body = CreateQuestionResultBody()
4let (optResult, httpResp) = client.createQuestionResult(tenantId = tenantId, createQuestionResultBody = body)
5if optResult.isSome:
6 let result = optResult.get()
7 echo result
8

질문 결과 삭제 Internal Link

매개변수

NameTypeRequiredDescription
tenantIdstringYes
idstringNo

응답

반환: Option[APIEmptyResponse]

예시

deleteQuestionResult 예시
Copy Copy
1
2let (maybeResult, httpResp) = client.deleteQuestionResult(tenantId = "my-tenant-123", id = "question-456")
3if maybeResult.isSome:
4 let result = maybeResult.get()
5

질문 결과 가져오기 Internal Link

Parameters

이름유형필수설명
tenantIdstring
idstring아니오

Response

반환: Option[GetQuestionResultResponse]

예시

getQuestionResult 예시
Copy Copy
1
2let (optResult, httpResp) = client.getQuestionResult(tenantId = "my-tenant-123", id = "question-456")
3if optResult.isSome:
4 let result = optResult.get()
5 discard result
6

질문 결과 목록 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
optionsGetQuestionResultsOptions아니오

응답

반환: Option[GetQuestionResultsResponse]

예시

getQuestionResults 예시
Copy Copy
1
2let (response, httpResponse) = client.getQuestionResults(
3 tenantId = "my-tenant-123",
4 options = GetQuestionResultsOptions()
5)
6
7if response.isSome:
8 let results = response.get()
9 echo results
10

질문 결과 업데이트 Internal Link

매개변수

이름유형필수설명
tenantIdstring
idstring아니오
updateQuestionResultBodyUpdateQuestionResultBody아니오

응답

반환: Option[APIEmptyResponse]

예시

updateQuestionResult 예시
Copy Copy
1
2let (optResp, httpResp) = client.updateQuestionResult(
3 tenantId = "my-tenant-123",
4 id = "question-456",
5 updateQuestionResultBody = UpdateQuestionResultBody()
6)
7
8if optResp.isSome:
9 let resp = optResp.get()
10

질문 결과 집계 Internal Link


매개변수

이름유형필수설명
tenantIdstring
optionsAggregateQuestionResultsOptions아니오

응답

반환: Option[AggregateQuestionResultsResponse]

예시

aggregateQuestionResults 예시
Copy Copy
1
2let opts = AggregateQuestionResultsOptions()
3let (aggResultOpt, httpResp) = client.aggregateQuestionResults(tenantId = "my-tenant-123", options = opts)
4if aggResultOpt.isSome:
5 let aggResult = aggResultOpt.get()
6

대량 질문 결과 집계 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
bulkAggregateQuestionResultsRequestBulkAggregateQuestionResultsRequestNo
forceRecalculateboolNo

응답

반환: Option[BulkAggregateQuestionResultsResponse]

예제

bulkAggregateQuestionResults 예제
Copy Copy
1
2let request = BulkAggregateQuestionResultsRequest()
3let (maybeResult, httpResp) = client.bulkAggregateQuestionResults(
4 tenantId = "my-tenant-123",
5 bulkAggregateQuestionResultsRequest = request,
6 forceRecalculate = false)
7
8if maybeResult.isSome:
9 let result = maybeResult.get()
10

댓글과 질문 결과 결합 Internal Link


매개변수

이름형식필수설명
tenantIdstringYes
optionsCombineCommentsWithQuestionResultsOptionsNo

응답

반환: Option[CombineQuestionResultsWithCommentsResponse]

예시

combineCommentsWithQuestionResults 예시
Copy Copy
1
2let (combineOpt, httpResponse) = client.combineCommentsWithQuestionResults(
3 tenantId = "my-tenant-123",
4 options = default(CombineCommentsWithQuestionResultsOptions)
5)
6
7if combineOpt.isSome:
8 let combineResult = combineOpt.get()
9

SSO 사용자 추가 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
createAPISSOUserDataCreateAPISSOUserDataNo

응답

반환: Option[AddSSOUserAPIResponse]

예시

addSSOUser 예시
Copy Copy
1
2let (optResp, httpResp) = client.addSSOUser(tenantId = "my-tenant-123", createAPISSOUserData = CreateAPISSOUserData())
3if optResp.isSome:
4 let userResp = optResp.get()
5

SSO 사용자 삭제 Internal Link

Parameters

이름유형필수설명
tenantIdstringYes
idstringNo
optionsDeleteSSOUserOptionsNo

Response

반환값: Option[DeleteSSOUserAPIResponse]

Example

deleteSSOUser 예제
Copy Copy
1
2let (apiRespOpt, httpResp) = client.deleteSSOUser(
3 tenantId = "my-tenant-123",
4 id = "user-456",
5 options = DeleteSSOUserOptions()
6)
7
8if apiRespOpt.isSome:
9 let apiResp = apiRespOpt.get()
10

이메일로 SSO 사용자 가져오기 Internal Link

매개변수

NameTypeRequiredDescription
tenantIdstringYes
emailstringNo

응답

Returns: Option[GetSSOUserByEmailAPIResponse]

예시

getSSOUserByEmail 예제
Copy Copy
1
2let (optResp, httpResp) = client.getSSOUserByEmail(tenantId = "my-tenant-123", email = "john.doe@example.com")
3if optResp.isSome:
4 let user = optResp.get()
5 discard user
6

ID로 SSO 사용자 가져오기 Internal Link

매개변수

이름형식필수설명
tenantIdstringYes
idstringNo

응답

Returns: Option[GetSSOUserByIdAPIResponse]

예제

getSSOUserById 예제
Copy Copy
1
2let (response, httpResponse) = client.getSSOUserById(tenantId = "my-tenant-123", id = "user-456")
3if response.isSome:
4 let userInfo = response.get()
5 discard userInfo
6

SSO 사용자 목록 가져오기 Internal Link

매개변수

이름타입필수설명
tenantIdstring
skipint아니오

응답

반환: Option[GetSSOUsersResponse]

예시

getSSOUsers 예시
Copy Copy
1
2let (maybeResponse, httpResponse) = client.getSSOUsers(tenantId = "my-tenant-123", skip = 0)
3if maybeResponse.isSome:
4 let users = maybeResponse.get()
5 echo users
6else:
7 echo "No SSO users found"
8echo httpResponse.statusCode
9

SSO 사용자 패치 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo
updateAPISSOUserDataUpdateAPISSOUserDataNo
updateCommentsboolNo

응답

반환: Option[PatchSSOUserAPIResponse]

예시

patchSSOUser 예제
Copy Copy
1
2let updateData = UpdateAPISSOUserData()
3let (responseOpt, httpResponse) = client.patchSSOUser(
4 tenantId = "my-tenant-123",
5 id = "user-789",
6 updateAPISSOUserData = updateData,
7 updateComments = true)
8if responseOpt.isSome:
9 let response = responseOpt.get()
10 echo response
11echo httpResponse.statusCode
12

SSO 사용자 저장 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo
updateAPISSOUserDataUpdateAPISSOUserDataNo
updateCommentsboolNo

응답

반환: Option[PutSSOUserAPIResponse]

예시

putSSOUser 예제
Copy Copy
1
2let (apiRespOpt, httpResp) = client.putSSOUser(
3 tenantId = "my-tenant-123",
4 id = "user-456",
5 updateAPISSOUserData = default(UpdateAPISSOUserData),
6 updateComments = false)
7
8if apiRespOpt.isSome:
9 let apiResp = apiRespOpt.get()
10 echo apiResp
11

구독 생성 Internal Link

매개변수

이름유형필수설명
tenantIdstring
createAPIUserSubscriptionDataCreateAPIUserSubscriptionData아니오

응답

반환: Option[CreateSubscriptionAPIResponse]

예시

createSubscription 예시
Copy Copy
1
2let (respOpt, httpResp) = client.createSubscription(
3 tenantId = "my-tenant-123",
4 createAPIUserSubscriptionData = default(CreateAPIUserSubscriptionData),
5)
6
7if respOpt.isSome:
8 let resp = respOpt.get()
9

구독 삭제 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo
userIdstring = ""No

반환

반환: Option[DeleteSubscriptionAPIResponse]

예시

deleteSubscription 예시
Copy Copy
1
2let (maybeResp, httpResp) = client.deleteSubscription(
3 tenantId = "my-tenant-123",
4 id = "sub-789",
5 userId = ""
6)
7
8if maybeResp.isSome:
9 let apiResult = maybeResp.get()
10 # 필요에 따라 apiResult 사용
11

구독 목록 가져오기 Internal Link

Parameters

이름유형필수설명
tenantIdstring
userIdstring = ""아니오

Response

반환값: Option[GetSubscriptionsAPIResponse]

Example

getSubscriptions 예시
Copy Copy
1
2let (subscriptionsOpt, httpResp) = client.getSubscriptions(tenantId = "my-tenant-123", userId = "user-456")
3if subscriptionsOpt.isSome:
4 let subscriptions = subscriptionsOpt.get()
5 echo subscriptions
6

구독 업데이트 Internal Link

Parameters

이름유형필수설명
tenantIdstringYes
idstringNo
updateAPIUserSubscriptionDataUpdateAPIUserSubscriptionDataNo
userIdstring = ""No

Response

반환: Option[UpdateSubscriptionAPIResponse]

Example

updateSubscription 예시
Copy Copy
1
2let subscriptionData = UpdateAPIUserSubscriptionData(
3 planId = "premium-plan",
4 isActive = true,
5 expiresAt = "2025-01-01",
6)
7
8let (responseOpt, httpResponse) = client.updateSubscription(
9 tenantId = "my-tenant-123",
10 id = "sub-456",
11 updateAPIUserSubscriptionData = subscriptionData,
12 userId = "user-789",
13)
14
15if responseOpt.isSome:
16 let subscriptionResult = responseOpt.get()
17

테넌트 일일 사용량 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
optionsGetTenantDailyUsagesOptions아니오

응답

반환: Option[GetTenantDailyUsagesResponse]

예시

getTenantDailyUsages 예시
Copy Copy
1
2let (respOpt, httpResp) = client.getTenantDailyUsages(
3 tenantId = "my-tenant-123",
4 options = default(GetTenantDailyUsagesOptions),
5)
6if respOpt.isSome:
7 let usage = respOpt.get()
8 echo usage
9 echo httpResp.statusCode
10

테넌트 패키지 생성 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
createTenantPackageBodyCreateTenantPackageBodyNo

응답

반환: Option[CreateTenantPackageResponse]

예시

createTenantPackage 예시
Copy Copy
1
2let (responseOpt, httpResponse) = client.createTenantPackage(
3 tenantId = "my-tenant-123",
4 createTenantPackageBody = CreateTenantPackageBody()
5)
6
7if responseOpt.isSome:
8 let response = responseOpt.get()
9

테넌트 패키지 삭제 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo

응답

반환: Option[APIEmptyResponse]

예시

deleteTenantPackage 예시
Copy Copy
1
2let (apiResponse, httpResponse) = client.deleteTenantPackage(tenantId = "my-tenant-123", id = "pkg-456def")
3if apiResponse.isSome:
4 let emptyResponse = apiResponse.get()
5

테넌트 패키지 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo

응답

반환: Option[GetTenantPackageResponse]

예시

getTenantPackage 예시
Copy Copy
1
2let (pkgOpt, httpResp) = client.getTenantPackage(tenantId = "my-tenant-123", id = "premium-plan")
3if pkgOpt.isSome:
4 let pkg = pkgOpt.get()
5 echo pkg
6

테넌트 패키지 목록 가져오기 Internal Link

Parameters

이름타입필수설명
tenantIdstring
skipfloat64아니오

응답

반환: Option[GetTenantPackagesResponse]

예제

getTenantPackages 예제
Copy Copy
1
2let (maybeResp, httpResp) = client.getTenantPackages(tenantId = "my-tenant-123", skip = 0.0)
3if maybeResp.isSome:
4 let packages = maybeResp.get()
5 echo packages
6 echo httpResp.statusCode
7

테넌트 패키지 교체 Internal Link

매개변수

이름타입필수설명
tenantIdstringYes
idstringNo
replaceTenantPackageBodyReplaceTenantPackageBodyNo

응답

반환: Option[APIEmptyResponse]

예시

replaceTenantPackage 예시
Copy Copy
1
2let (optResp, httpResp) = client.replaceTenantPackage(
3 tenantId = "my-tenant-123",
4 id = "pkg-456",
5 replaceTenantPackageBody = ReplaceTenantPackageBody()
6)
7if optResp.isSome:
8 let resp = optResp.get()
9 discard resp
10

테넌트 패키지 업데이트 Internal Link

매개변수

NameTypeRequiredDescription
tenantIdstringYes
idstringNo
updateTenantPackageBodyUpdateTenantPackageBodyNo

응답

반환: Option[APIEmptyResponse]

예시

updateTenantPackage 예시
Copy Copy
1
2let body = UpdateTenantPackageBody()
3let (optResp, httpResp) = client.updateTenantPackage(
4 tenantId = "my-tenant-123",
5 id = "premium-plan",
6 updateTenantPackageBody = body
7)
8if optResp.isSome:
9 let empty = optResp.get()
10

테넌트 사용자 생성 Internal Link

매개변수

이름타입필수설명
tenantIdstringYes
createTenantUserBodyCreateTenantUserBodyNo

응답

반환: Option[CreateTenantUserResponse]

예시

createTenantUser 예시
Copy Copy
1
2let tenantId = "my-tenant-123"
3let userBody = CreateTenantUserBody(
4 email: "john.doe@example.com",
5 name: "John Doe",
6 password: "s3cr3tP@ss",
7 role: "admin"
8)
9let (optResp, httpResp) = client.createTenantUser(
10 tenantId = tenantId,
11 createTenantUserBody = userBody
12)
13if optResp.isSome:
14 let resp = optResp.get()
15 echo resp.userId
16

테넌트 사용자 삭제 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo
optionsDeleteTenantUserOptionsNo

응답

반환: Option[APIEmptyResponse]

예시

deleteTenantUser 예시
Copy Copy
1
2let (response, httpResponse) = client.deleteTenantUser(
3 tenantId = "my-tenant-123",
4 id = "user-456",
5 options = DeleteTenantUserOptions(),
6)
7if response.isSome:
8 let empty = response.get()
9 echo "User successfully deleted"
10

테넌트 사용자 가져오기 Internal Link

Parameters

이름타입필수설명
tenantIdstring
idstring아니오

Response

반환: Option[GetTenantUserResponse]

예시

getTenantUser 예시
Copy Copy
1
2let (maybeUser, httpResp) = client.getTenantUser(tenantId = "my-tenant-123", id = "user-456")
3if maybeUser.isSome:
4 let user = maybeUser.get()
5 echo user
6

테넌트 사용자 목록 가져오기 Internal Link

매개변수

이름타입필수설명
tenantIdstring
skipfloat64아니오

응답

반환: Option[GetTenantUsersResponse]

예제

getTenantUsers 예제
Copy Copy
1
2let (response, httpResponse) = client.getTenantUsers(tenantId = "my-tenant-123", skip = 0.0)
3if response.isSome:
4 let data = response.get()
5 echo data
6

테넌트 사용자 교체 Internal Link

매개변수

NameTypeRequiredDescription
tenantIdstringYes
idstringNo
replaceTenantUserBodyReplaceTenantUserBodyNo
updateCommentsstring = ""No

응답

반환: Option[APIEmptyResponse]

예시

replaceTenantUser 예시
Copy Copy
1
2let replaceBody = ReplaceTenantUserBody()
3let (response, httpResponse) = client.replaceTenantUser(
4 tenantId = "my-tenant-123",
5 id = "user-456",
6 replaceTenantUserBody = replaceBody,
7 updateComments = "")
8if response.isSome:
9 let empty = response.get()
10

매개변수

이름형식필수설명
tenantIdstring
idstring아니오
redirectURLstring = ""아니오

응답

반환값: Option[APIEmptyResponse]

예시

sendLoginLink 예시
Copy Copy
1
2let (maybeResp, httpResp) = client.sendLoginLink(
3 tenantId = "my-tenant-123",
4 id = "user-456",
5 redirectURL = "https://myapp.example.com/login-success"
6)
7
8if maybeResp.isSome:
9 let emptyResp = maybeResp.get()
10

테넌트 사용자 업데이트 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo
updateTenantUserBodyUpdateTenantUserBodyNo
updateCommentsstring = ""No

응답

반환: Option[APIEmptyResponse]

예시

updateTenantUser 예시
Copy Copy
1
2let updateBody = UpdateTenantUserBody()
3let (optResp, httpResp) = client.updateTenantUser(
4 tenantId = "my-tenant-123",
5 id = "user-456",
6 updateTenantUserBody = updateBody,
7 updateComments = "Changed role to moderator",
8)
9if optResp.isSome:
10 let _ = optResp.get()
11

테넌트 생성 Internal Link

Parameters

이름유형필수설명
tenantIdstring
createTenantBodyCreateTenantBody아니요

Response

반환: Option[CreateTenantResponse]

Example

createTenant 예제
Copy Copy
1
2let (maybeResp, httpResp) = client.createTenant(tenantId = "my-tenant-123", createTenantBody = CreateTenantBody())
3if maybeResp.isSome:
4 let resp = maybeResp.get()
5 discard resp
6discard httpResp
7

테넌트 삭제 Internal Link

매개변수

이름타입필수설명
tenantIdstringYes
idstringNo
surestring = ""No

응답

반환: Option[APIEmptyResponse]

예시

deleteTenant 예시
Copy Copy
1
2let (respOpt, httpResp) = client.deleteTenant(tenantId = "my-tenant-123", id = "tenant-to-delete", sure = "yes")
3if respOpt.isSome:
4 let emptyResp = respOpt.get()
5

테넌트 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
idstring아니오

응답

반환: Option[GetTenantResponse]

예시

getTenant 예시
Copy Copy
1
2let (tenantResponse, httpResponse) = client.getTenant(tenantId = "my-tenant-123", id = "config-001")
3if tenantResponse.isSome:
4 let tenant = tenantResponse.get()
5 echo tenant
6

테넌트 목록 가져오기 Internal Link

매개변수

이름형식필수설명
tenantIdstring
optionsGetTenantsOptions아니오

응답

반환: Option[GetTenantsResponse]

예시

getTenants 예시
Copy Copy
1
2let (maybeResp, httpResp) = client.getTenants(tenantId = "my-tenant-123", options = GetTenantsOptions())
3if maybeResp.isSome:
4 let resp = maybeResp.get()
5 echo resp
6

테넌트 업데이트 Internal Link

매개변수

이름유형필수설명
tenantIdstring
idstring아니오
updateTenantBodyUpdateTenantBody아니오

응답

반환: Option[APIEmptyResponse]

예시

updateTenant 예시
Copy Copy
1
2let updateBody = UpdateTenantBody(
3 name: "My Tenant",
4 description: "Tenant for news site",
5 isActive: true,
6 allowedDomains: @["example.com", "news.com"]
7)
8
9let (apiResp, httpResp) = client.updateTenant(
10 tenantId = "my-tenant-123",
11 id = "tenant-456",
12 updateTenantBody = updateBody
13)
14
15if apiResp.isSome:
16 let emptyResp = apiResp.get()
17

티켓 상태 변경 Internal Link

매개변수

이름타입필수설명
tenantIdstring
userIdstring아니오
idstring아니오
changeTicketStateBodyChangeTicketStateBody아니오

응답

반환: Option[ChangeTicketStateResponse]

예시

changeTicketState 예시
Copy Copy
1
2let (optResp, httpResp) = client.changeTicketState(
3 tenantId = "my-tenant-001",
4 userId = "user-42",
5 id = "ticket-12345",
6 changeTicketStateBody = ChangeTicketStateBody(state = "closed")
7)
8
9if optResp.isSome:
10 let resp = optResp.get()
11 echo resp
12

티켓 생성 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
userIdstringNo
createTicketBodyCreateTicketBodyNo

응답

반환: Option[CreateTicketResponse]

예시

createTicket 예시
Copy Copy
1
2let tenantId = "my-tenant-123"
3let userId = "user-456"
4let ticketBody = CreateTicketBody()
5let (responseOpt, httpResponse) = client.createTicket(tenantId = tenantId, userId = userId, createTicketBody = ticketBody)
6if responseOpt.isSome:
7 let ticketResponse = responseOpt.get()
8

티켓 가져오기 Internal Link

Parameters

이름유형Required설명
tenantIdstringYes
idstringNo
userIdstring = ""No

Response

반환: Option[GetTicketResponse]

Example

getTicket 예시
Copy Copy
1
2let (ticketOpt, httpResp) = client.getTicket(tenantId = "my-tenant-123", id = "ticket-456", userId = "")
3if ticketOpt.isSome:
4 let ticket = ticketOpt.get()
5 discard ticket
6

티켓 목록 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
optionsGetTicketsOptionsNo

응답

반환: Option[GetTicketsResponse]

예시

getTickets 예시
Copy Copy
1
2let (ticketsOpt, httpResp) = client.getTickets(tenantId = "my-tenant-123", options = GetTicketsOptions())
3if ticketsOpt.isSome:
4 let tickets = ticketsOpt.get()
5 # 필요에 따라 tickets를 사용하세요
6

번역 가져오기 Internal Link

매개변수

이름형식필수설명
namespacestring아니오
componentstring아니오
optionsGetTranslationsOptions아니오

응답

반환: Option[GetTranslationsResponse]

예시

getTranslations 예시
Copy Copy
1
2let opts = GetTranslationsOptions()
3let (maybeResp, httpResp) = client.getTranslations(namespace = "my-tenant-123", component = "news/article-title", options = opts)
4if maybeResp.isSome:
5 let resp = maybeResp.get()
6 echo resp
7

이미지 업로드 Internal Link


이미지를 업로드하고 리사이즈하기

Parameters

이름형식필수설명
tenantIdstringYes
filestringNo
optionsUploadImageOptionsNo

Response

반환: Option[UploadImageResponse]

Example

uploadImage 예제
Copy Copy
1
2let (uploadResult, httpResponse) = client.uploadImage(
3 tenantId = "my-tenant-123",
4 file = "images/avatar.jpg",
5 options = UploadImageOptions()
6)
7
8if uploadResult.isSome:
9 let result = uploadResult.get()
10 # 결과를 필요에 따라 사용
11

배지 진행 상황(ID) 가져오기 Internal Link

Parameters

이름유형필수설명
tenantIdstring
idstring아니오

Response

반환: Option[APIGetUserBadgeProgressResponse]

Example

getUserBadgeProgressById 예시
Copy Copy
1
2let (badgeProgressOpt, httpResp) = client.getUserBadgeProgressById(tenantId = "my-tenant-123", id = "badge-456")
3if badgeProgressOpt.isSome:
4 let badgeProgress = badgeProgressOpt.get()
5 echo badgeProgress
6

사용자 ID로 배지 진행 상황 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
userIdstringNo

응답

반환: Option[APIGetUserBadgeProgressResponse]

예시

getUserBadgeProgressByUserId 예시
Copy Copy
1
2let (badgeProgressOpt, httpResp) = client.getUserBadgeProgressByUserId(tenantId = "my-tenant-123", userId = "user-456")
3if badgeProgressOpt.isSome:
4 let progress = badgeProgressOpt.get()
5 echo progress
6

배지 진행 상황 목록 가져오기 Internal Link

매개변수

이름타입필수설명
tenantIdstring
optionsGetUserBadgeProgressListOptions아니오

응답

반환: Option[APIGetUserBadgeProgressListResponse]

예시

getUserBadgeProgressList 예시
Copy Copy
1
2let (response, httpResponse) = client.getUserBadgeProgressList(tenantId = "my-tenant-123", options = GetUserBadgeProgressListOptions())
3if response.isSome:
4 let badgeProgress = response.get()
5

사용자 배지 생성 Internal Link

매개변수

이름유형필수설명
tenantIdstring
createUserBadgeParamsCreateUserBadgeParams아니오

응답

반환: Option[APICreateUserBadgeResponse]

예시

createUserBadge 예시
Copy Copy
1
2let (badgeRespOpt, httpResp) = client.createUserBadge(tenantId = "my-tenant-123", createUserBadgeParams = default(CreateUserBadgeParams))
3if badgeRespOpt.isSome:
4 let badgeResp = badgeRespOpt.get()
5

사용자 배지 삭제 Internal Link

매개변수

이름형식필수설명
tenantIdstringYes
idstringNo

응답

반환: Option[APIEmptySuccessResponse]

예제

deleteUserBadge 예제
Copy Copy
1
2let (apiResponse, httpResponse) = client.deleteUserBadge(tenantId = "my-tenant-123", id = "badge-456")
3if apiResponse.isSome:
4 let success = apiResponse.get()
5

사용자 배지 가져오기 Internal Link

파라미터

이름유형필수설명
tenantIdstring
idstring아니오

응답

반환: Option[APIGetUserBadgeResponse]

예시

getUserBadge 예시
Copy Copy
1
2let (badgeOpt, httpResp) = client.getUserBadge(tenantId = "my-tenant-123", id = "user-789")
3if badgeOpt.isSome:
4 let badge = badgeOpt.get()
5 echo badge
6else:
7 echo "No badge found"
8echo httpResp.statusCode
9

사용자 배지 목록 가져오기 Internal Link

Parameters

NameTypeRequiredDescription
tenantIdstring
optionsGetUserBadgesOptions아니오

Response

반환: Option[APIGetUserBadgesResponse]

Example

getUserBadges 예시
Copy Copy
1
2let opts = GetUserBadgesOptions()
3let (badgesOpt, httpResp) = client.getUserBadges(tenantId = "my-tenant-123", options = opts)
4if badgesOpt.isSome:
5 let badges = badgesOpt.get()
6

사용자 배지 업데이트 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo
updateUserBadgeParamsUpdateUserBadgeParamsNo

응답

반환: Option[APIEmptySuccessResponse]

예시

updateUserBadge 예제
Copy Copy
1
2let params = UpdateUserBadgeParams()
3let (maybeResp, httpResp) = client.updateUserBadge(tenantId = "my-tenant-123", id = "user-456", updateUserBadgeParams = params)
4if maybeResp.isSome:
5 let success = maybeResp.get()
6

사용자 알림 카운트 가져오기 Internal Link

Parameters

이름타입필수설명
tenantIdstringYes
ssostring = ""No

Response

반환값: Option[GetUserNotificationCountResponse]

Example

getUserNotificationCount 예제
Copy Copy
1
2let (optResp, httpResp) = client.getUserNotificationCount(tenantId = "my-tenant-123", sso = "")
3if optResp.isSome:
4 let resp = optResp.get()
5 echo resp
6

사용자 알림 가져오기 Internal Link


매개변수

이름타입필수설명
tenantIdstring
optionsGetUserNotificationsOptions아니오

응답

반환: Option[GetMyNotificationsResponse]

예제

getUserNotifications 예제
Copy Copy
1
2let (maybeResponse, httpResponse) = client.getUserNotifications(tenantId = "my-tenant-123", options = GetUserNotificationsOptions())
3if maybeResponse.isSome:
4 let notifications = maybeResponse.get()
5

사용자 알림 카운트 초기화 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
ssostring = ""No

응답

반환: Option[ResetUserNotificationsResponse]

예시

resetUserNotificationCount 예제
Copy Copy
1
2let (resetRespOpt, httpResp) = client.resetUserNotificationCount(tenantId = "my-tenant-123", sso = "user-456")
3if resetRespOpt.isSome:
4 let resetResp = resetRespOpt.get()
5 echo resetResp
6else:
7 echo "Reset notification count response not available"
8

사용자 알림 초기화 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
optionsResetUserNotificationsOptionsNo

응답

반환: Option[ResetUserNotificationsResponse]

예시

resetUserNotifications 예시
Copy Copy
1
2let (maybeResp, httpResp) = client.resetUserNotifications(
3 tenantId = "my-tenant-123",
4 options = ResetUserNotificationsOptions())
5if maybeResp.isSome:
6 let resp = maybeResp.get()
7

댓글 구독 상태 업데이트 Internal Link

Enable or disable notifications for a specific comment.

Parameters

이름타입필수설명
tenantIdstringYes
notificationIdstringNo
optedInOrOutstringNo
commentIdstringYes
ssostring = ""No

Response

반환: Option[UpdateUserNotificationCommentSubscriptionStatusResponse]

Example

updateUserNotificationCommentSubscriptionStatus 예제
Copy Copy
1
2let (optResp, httpResp) = client.updateUserNotificationCommentSubscriptionStatus(
3 tenantId = "my-tenant-123",
4 notificationId = "notif-456",
5 optedInOrOut = "opted-in",
6 commentId = "comment-789",
7 sso = ""
8)
9
10if optResp.isSome:
11 let resp = optResp.get()
12

페이지 구독 상태 업데이트 Internal Link

Enable or disable notifications for a page. When users are subscribed to a page, notifications are created for new root comments, and also

매개변수

NameTypeRequiredDescription
tenantIdstringYes
urlIdstringYes
urlstringNo
pageTitlestringNo
subscribedOrUnsubscribedstringNo
ssostring = ""No

응답

반환: Option[UpdateUserNotificationPageSubscriptionStatusResponse]

예제

updateUserNotificationPageSubscriptionStatus 예제
Copy Copy
1
2let (optResp, httpResp) = client.updateUserNotificationPageSubscriptionStatus(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-456",
5 url = "https://example.com/news/article-456",
6 pageTitle = "Breaking News: Something Happened",
7 subscribedOrUnsubscribed = "subscribed",
8 sso = ""
9)
10
11if optResp.isSome:
12 let resp = optResp.get()
13 # resp와 추가 처리
14

알림 상태 업데이트 Internal Link

Parameters

NameTypeRequiredDescription
tenantIdstring
notificationIdstring아니오
newStatusstring아니오
ssostring = ""아니오

Response

반환: Option[UpdateUserNotificationStatusResponse]

Example

updateUserNotificationStatus 예시
Copy Copy
1
2let (respOpt, httpResponse) = client.updateUserNotificationStatus(
3 tenantId = "my-tenant-123",
4 notificationId = "notif-456",
5 newStatus = "read",
6 sso = ""
7)
8if respOpt.isSome:
9 let status = respOpt.get()
10

사용자 존재 상태 가져오기 Internal Link

매개변수

이름타입필수설명
tenantIdstringYes
urlIdWSstringNo
userIdsstringNo

응답

반환: Option[GetUserPresenceStatusesResponse]

예시

getUserPresenceStatuses 예시
Copy Copy
1
2let (presenceOpt, httpResp) = client.getUserPresenceStatuses(tenantId = "my-tenant-123", urlIdWS = "news/article-title", userIds = "user42")
3if presenceOpt.isSome:
4 let presence = presenceOpt.get()
5

사용자 검색 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
urlIdstringYes
optionsSearchUsersOptionsNo

응답

반환값: Option[SearchUsersResult]

예시

searchUsers 예시
Copy Copy
1
2let (response, httpResponse) = client.searchUsers(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 options = SearchUsersOptions()
6)
7
8if response.isSome:
9 let result = response.get()
10

사용자 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstringYes
idstringNo

응답

반환: Option[GetUserResponse]

예제

getUser 예제
Copy Copy
1
2let (userOpt, httpResp) = client.getUser(tenantId = "my-tenant-123", id = "user-456")
3if userOpt.isSome:
4 let user = userOpt.get()
5 echo user
6else:
7 echo "User not found"
8

투표 생성 Internal Link

매개변수

NameTypeRequiredDescription
tenantIdstringYes
commentIdstringYes
directionstringNo
optionsCreateVoteOptionsNo

응답

반환: Option[VoteResponse]

예시

createVote 예시
Copy Copy
1
2let (voteOpt, httpResp) = client.createVote(
3 tenantId = "my-tenant-123",
4 commentId = "comment-7890",
5 direction = "up",
6 options = CreateVoteOptions()
7)
8
9if voteOpt.isSome:
10 let vote = voteOpt.get()
11 echo vote
12

투표 삭제 Internal Link

매개변수

이름형식필수설명
tenantIdstring
idstring아니오
editKeystring = ""아니오

응답

반환: Option[VoteDeleteResponse]

예시

deleteVote 예시
Copy Copy
1
2let (voteRespOpt, httpResp) = client.deleteVote(tenantId = "my-tenant-123", id = "comment-456", editKey = "")
3if voteRespOpt.isSome:
4 let voteResp = voteRespOpt.get()
5 discard voteResp
6 discard httpResp
7

투표 가져오기 Internal Link

매개변수

이름형식필수설명
tenantIdstringYes
urlIdstringYes

응답

반환: Option[GetVotesResponse]

예시

getVotes 예시
Copy Copy
1
2let (optVotes, httpResp) = client.getVotes(tenantId = "my-tenant-123", urlId = "news/article-42")
3if optVotes.isSome:
4 let votes = optVotes.get()
5 discard votes
6

사용자 투표 가져오기 Internal Link

매개변수

이름유형필수설명
tenantIdstring
urlIdstring
optionsGetVotesForUserOptions아니오

응답

반환: Option[GetVotesForUserResponse]

예시

getVotesForUser 예시
Copy Copy
1
2let (optResp, httpResp) = client.getVotesForUser(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 options = GetVotesForUserOptions()
6)
7
8if optResp.isSome:
9 let resp = optResp.get()
10 echo resp
11

도움이 필요하신가요?

Nim SDK 사용 중 문제가 발생하거나 질문이 있으시면, 다음을 이용해 주세요:

기여

기여는 환영합니다! 기여 지침은 GitHub 저장소에서 확인해 주세요.