FastComments.com

FastComments Nim SDK


Это официальный SDK на Nim для FastComments.

Официальный SDK на Nim для API FastComments

Репозиторий

Посмотреть на GitHub


Требования Internal Link


  • Nim >= 1.6.0
  • nimcrypto >= 0.5.4

Установка Internal Link

Использование Nimble

nimble install fastcomments

Сборка из исходников

nimble build

Содержимое библиотеки

Эта библиотека содержит сгенерированный клиент API и утилиты SSO, упрощающие работу с API.

Публичные и защищённые API

Для клиента API существует три модуля API, api_default, api_public и api_moderation. api_default содержит методы, требующие ваш API‑ключ, а api_public содержит api calls
that can be made directly from a browser/mobile device/etc without authentication. Модуль api_moderation содержит методы для панели модератора.

api_moderation предоставляет обширный набор живых и быстрых API модерации. Каждый метод api_moderation принимает параметр sso и может аутентифицироваться через SSO или cookie сеанса FastComments.com.

Быстрый старт Internal Link

Using Authenticated APIs (DefaultAPI)

Important: Authenticated endpoints require your API key to be set as the x-api-key header.

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 authentication error: Make sure you set the x-api-key header on your HttpClient before making DefaultAPI requests: client.headers["x-api-key"] = "your-api-key"
  2. Wrong API class: Use api_default for server-side authenticated requests, api_public for client-side/public requests, and api_moderation for moderator dashboard requests.

Вызовы API Internal Link

All API‑методы в этом SDK возвращают кортежи (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

Идентификаторы Broadcast

Вы увидите, что в некоторых вызовах API нужно передавать broadcastId. Когда вы получите события, этот ID вернётся, так что вы сможете игнорировать событие, если планируете оптимистично применить изменения на клиенте (что, скорее всего, вы захотите сделать, так как это обеспечивает лучший опыт). Передавайте здесь UUID. ID должен быть достаточно уникальным, чтобы не встречаться дважды в рамках сессии браузера.

SSO (единого входа)

Для примеров SSO см. ниже.

Использование SSO Internal Link

Простой SSO

import fastcomments/sso

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

echo "SSO Token: ", token

Защищённый SSO

import fastcomments/sso

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

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

echo "Secure SSO Token: ", token

aggregate Internal Link

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

getAuditLogs Internal Link

Параметри

НазваТипОбов’язковийОпис
tenantIdstringТак
optionsGetAuditLogsOptionsНі

Відповідь

Повертає: 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

logoutPublic 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

blockFromCommentPublic Internal Link

Параметри

Ім’яТипОбов’язковоОпис
tenantIdstringТак
commentIdstringТак
publicBlockFromCommentParamsPublicBlockFromCommentParamsНі
ssostring = ""Ні

Відповідь

Возвращает: 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

unBlockCommentPublic Internal Link

Параметри

НазваТипОбов’язковоОпис
tenantIdstringYes
commentIdstringYes
publicBlockFromCommentParamsPublicBlockFromCommentParamsNo
ssostring = ""No

Відповідь

Повертає: 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

checkedCommentsForBlocked Internal Link

Параметри

Ім'яТипОбов'язковоОпис
tenantIdstringТак
commentIdsstringНі
ssostring = ""Ні

Відповідь

Повертає: 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

blockUserFromComment Internal Link

Параметри

НазваТипОбов’язковоОпис
tenantIdstringYes
idstringNo
blockFromCommentParamsBlockFromCommentParamsNo
optionsBlockUserFromCommentOptionsNo

Відповідь

Повертає: Option[BlockSuccess]

Приклад

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

createCommentPublic Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
urlIdstringYes
broadcastIdstringNo
commentDataCommentDataNo
optionsCreateCommentPublicOptionsNo

Ответ

Возвращает: Option[SaveCommentsResponseWithPresence]

Пример

Пример 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

deleteComment Internal Link

Параметры

NameTypeRequiredDescription
tenantIdstringДа
idstringНет
optionsDeleteCommentOptionsНет

Ответ

Возвращает: 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

deleteCommentPublic Internal Link

Параметры

NameTypeRequiredDescription
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

deleteCommentVote Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
commentIdstringДа
voteIdstringНет
urlIdstringДа
broadcastIdstringНет
optionsDeleteCommentVoteOptionsНет

Ответ

Возвращает: 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

flagComment Internal Link

Параметри

НазваТипОбов’язковоОпис
tenantIdstringТак
idstringНі
optionsFlagCommentOptionsНі

Відповідь

Повертає: 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

getComment 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

getComments 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

getCommentsPublic Internal Link

req
tenantId
urlId

Параметри

НазваТипОбов’язковоОпис
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

getCommentText Internal Link

Параметри

НазваТипОбов'язковийОпис
tenantIdstringYes
commentIdstringYes
optionsGetCommentTextOptionsNo

Відповідь

Повертає: 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

getCommentVoteUserNames Internal Link


Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
commentIdstringYes
dirintNo
ssostring = ""No

Ответ

Возвращает: 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

lockComment 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

pinComment Internal Link


Параметри

НазваТипОбов’язковийОпис
tenantIdstringТак
commentIdstringТак
broadcastIdstringНі
ssostring = ""Ні

Відповідь

Повертає: 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

saveComment Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
createCommentParamsCreateCommentParamsНет
optionsSaveCommentOptionsНет

Ответ

Возвращает: 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

saveCommentsBulk Internal Link

Parameters

NameTypeRequiredDescription
tenantIdstringТак
createCommentParamsseq[CreateCommentParams]Ні
optionsSaveCommentsBulkOptions): (Option[seq[SaveCommentsBulkResponse]]Ні
idstringНі
fromNamestringНі

Response

Повертає: Option[APIEmptyResponse]

Example

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

setCommentText 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

unBlockUserFromComment Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
idstringNo
unBlockFromCommentParamsUnBlockFromCommentParamsNo
optionsUnBlockUserFromCommentOptionsNo

Ответ

Возвращает: 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

unFlagComment Internal Link

Параметры

ИмяТипОбязательноОписание
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

unLockComment Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
commentIdstringДа
broadcastIdstringНет
ssostring = ""Нет

Ответ

Возвращает: 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

unPinComment 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

updateComment Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
idstringNo
updatableCommentParamsUpdatableCommentParamsNo
optionsUpdateCommentOptionsNo

Ответ

Возвращает: 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

voteComment Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
commentIdstringДа
urlIdstringДа
broadcastIdstringНет
voteBodyParamsVoteBodyParamsНет
optionsVoteCommentOptionsНет

Ответ

Возвращает: 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

getCommentsForUser 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

addDomainConfig Internal Link

Parameters

NameTypeRequiredDescription
tenantIdstringYes
addDomainConfigParamsAddDomainConfigParamsNo

Response

Возвращает: 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

deleteDomainConfig 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

getDomainConfig Internal Link

Parameters

ИмяТипОбязательноОписание
tenantIdstringДа
domainstringНет

Response

Возвращает: Option[GetDomainConfigResponse]

Example

Пример 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

getDomainConfigs 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

patchDomainConfig 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

putDomainConfig 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

createEmailTemplate Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
createEmailTemplateBodyCreateEmailTemplateBodyНет

Ответ

Возвращает: 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

deleteEmailTemplate 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

deleteEmailTemplateRenderError Internal Link

Параметры

NameTypeRequiredDescription
tenantIdstringYes
idstringNo
errorIdstringNo

Ответ

Возвращает: 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

getEmailTemplate 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

getEmailTemplateDefinitions Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes

Ответ

Возвращает: 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

getEmailTemplateRenderErrors Internal Link

Параметри

NameTypeRequiredDescription
tenantIdstringТак
idstringНі
skipfloat64Ні

Відповідь

Повертає: 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

getEmailTemplates Internal Link

Параметри

НазваТипОбов’язковийОпис
tenantIdstringYes
skipfloat64No

Відповідь

Повертає: 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

renderEmailTemplate Internal Link


Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
renderEmailTemplateBodyRenderEmailTemplateBodyNo
localestring = ""No

Ответ

Возвращает: 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

updateEmailTemplate Internal Link

Параметри

NameTypeRequiredDescription
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

getEventLog Internal Link


req tenantId urlId userIdWS

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
urlIdstringДа
userIdWSstringНет
startTimeint64Нет
endTimeint64Нет

Ответ

Возвращает: 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

getGlobalEventLog 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

createFeedPost 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

createFeedPostPublic Internal Link

Параметры

ИмяТипОбязательноОписание
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

deleteFeedPostPublic Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
postIdstringНет
optionsDeleteFeedPostPublicOptionsНет

Ответ

Возвращает: 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

getFeedPosts Internal Link


req tenantId afterId

Параметри

НазваТипОбов'язковоОпис
tenantIdstringТак
optionsGetFeedPostsOptionsНі

Відповідь

Повертає: 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

getFeedPostsPublic Internal Link

req tenantId afterId

Параметры

NameTypeRequiredDescription
tenantIdstringДа
optionsGetFeedPostsPublicOptionsНет

Ответ

Возвращает: 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

getFeedPostsStats Internal Link

Parameters

NameTypeRequiredDescription
tenantIdstringYes
postIdsseq[string]No
ssostring = ""No

Response

Возвращает: Option[FeedPostsStatsResponse]

Example

Пример 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

getUserReactsPublic 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

reactFeedPostPublic Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
postIdstringНет
reactBodyParamsReactBodyParamsНет
optionsReactFeedPostPublicOptionsНет

Ответ

Возвращает: 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

updateFeedPost Internal Link

Параметри

НазваТипОбов’язковоОпис
tenantIdstringYes
idstringNo
feedPostFeedPostNo

Відповідь

Повертає: 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

updateFeedPostPublic Internal Link

Параметры

NameTypeRequiredDescription
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

flagCommentPublic Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
commentIdstringYes
isFlaggedboolNo
ssostring = ""No

Ответ

Возвращает: Option[APIEmptyResponse]

Пример

Пример 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

getGifLarge Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
largeInternalURLSanitizedstringНет

Ответ

Возвращает: 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

getGifsSearch Internal Link

Параметри

НазваТипОбов'язковоОпис
tenantIdstringYes
searchstringNo
optionsGetGifsSearchOptionsNo

Відповідь

Повертає: 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

getGifsTrending Internal Link

Параметри

НазваТипОбов’язковоОпис
tenantIdstringYes
optionsGetGifsTrendingOptionsNo

Відповідь

Повертає: 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

addHashTag 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

addHashTagsBulk 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

deleteHashTag Internal Link

Параметри

Ім'яТипОбов'язковоОпис
tenantIdstringТак
tagstringНі
deleteHashTagRequestBodyDeleteHashTagRequestBodyНі

Відповідь

Повертає: 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

getHashTags 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

patchHashTag 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

deleteModerationVote 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

getApiComments 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

getApiExportStatus 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

getApiIds Internal Link

Параметри

НазваТипОбов’язковоОпис
tenantIdstringYes
optionsGetApiIdsOptionsNo

Відповідь

Повертає: Option[ModerationAPIGetCommentIdsResponse]

Приклад

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

getBanUsersFromComment Internal Link

Параметри

НазваТипОбов'язковоОпис
tenantIdstringТак
commentIdstringТак
ssostring = ""Ні

Відповідь

Повертає: 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

getCommentBanStatus Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
commentIdstringYes
ssostring = ""No

Ответ

Возвращает: 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

getCommentChildren Internal Link

Параметры

NameTypeRequiredDescription
tenantIdstringYes
commentIdstringYes
ssostring = ""No

Ответ

Возвращает: 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

getCount Internal Link

Параметри

НазваТипОбов'язковоОпис
tenantIdstringТак
optionsGetCountOptionsНі

Відповідь

Повертає: 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

getCounts 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

getLogs 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

getManualBadges 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

getManualBadgesForUser 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

getModerationComment Internal Link

Параметри

NameTypeRequiredDescription
tenantIdstringYes
commentIdstringYes
optionsGetModerationCommentOptionsNo

Відповідь

Возвращает: 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

getModerationCommentText Internal Link

Параметры

NameTypeRequiredDescription
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

getPreBanSummary Internal Link

Параметры

NameTypeRequiredDescription
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

getSearchCommentsSummary Internal Link

Parameters

НазваТипОбов’язковоОпис
tenantIdstringТак
optionsGetSearchCommentsSummaryOptionsНі

Response

Повертає: 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

getSearchPages Internal Link

Параметры

NameTypeRequiredDescription
tenantIdstringYes
optionsGetSearchPagesOptionsNo

Ответ

Возвращает: 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

getSearchSites Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
optionsGetSearchSitesOptionsNo

Ответ

Возвращает: 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

getSearchSuggest Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
optionsGetSearchSuggestOptionsNo

Ответ

Возвращает: 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

getSearchUsers 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

getTrustFactor 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

getUserBanPreference 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

getUserInternalProfile Internal Link

Параметри

НазваТипОбов'язковоОпис
tenantIdstringТак
optionsGetUserInternalProfileOptionsНі

Відповідь

Повертає: 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

postAdjustCommentVotes Internal Link

Параметри

НазваТипОбов'язковийОпис
tenantIdstringТак
commentIdstringТак
adjustCommentVotesParamsAdjustCommentVotesParamsНі
optionsPostAdjustCommentVotesOptionsНі

Відповідь

Повертає: Option[AdjustVotesResponse]

Приклад

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

postApiExport Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
optionsPostApiExportOptionsНет

Ответ

Возвращает: 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

postBanUserFromComment Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
commentIdstringДа
optionsPostBanUserFromCommentOptionsНет

Ответ

Возвращает: 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

postBanUserUndo 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

postBulkPreBanSummary Internal Link

Параметри

НазваТипОбов’язковийОпис
tenantIdstringYes
bulkPreBanParamsBulkPreBanParamsNo
optionsPostBulkPreBanSummaryOptionsNo

Відповідь

Returns: 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

postCommentsByIds Internal Link

Параметри

NameTypeRequiredDescription
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

postFlagComment Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
commentIdstringYes
optionsPostFlagCommentOptionsNo

Ответ

Возвращает: 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

postRemoveComment Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
commentIdstringYes
optionsPostRemoveCommentOptionsNo

Ответ

Возвращает: 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

postRestoreDeletedComment 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

postSetCommentApprovalStatus 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

postSetCommentReviewStatus Internal Link

Параметры

NameTypeRequiredDescription
tenantIdstringYes
commentIdstringYes
optionsPostSetCommentReviewStatusOptionsNo

Ответ

Возвращает: 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

postSetCommentSpamStatus Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
commentIdstringДа
optionsPostSetCommentSpamStatusOptionsНет

Ответ

Возвращает: 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

postSetCommentText Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
commentIdstringYes
setCommentTextParamsSetCommentTextParamsNo
optionsPostSetCommentTextOptionsNo

Ответ

Возвращает: 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

postUnFlagComment Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
commentIdstringДа
optionsPostUnFlagCommentOptionsНет

Ответ

Возвращает: 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

postVote Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
commentIdstringYes
optionsPostVoteOptionsNo

Ответ

Возвращает: 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

putAwardBadge Internal Link

Параметри

НазваТипОбов’язковийОпис
tenantIdstringТак
badgeIdstringНі
optionsPutAwardBadgeOptionsНі

Відповідь

Повертає: Option[AwardUserBadgeResponse]

Приклад

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

putCloseThread 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

putRemoveBadge Internal Link

Параметри

НазваТипОбов’язковийОпис
tenantIdstringYes
badgeIdstringNo
optionsPutRemoveBadgeOptionsNo

Відповідь

Повертає: 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

putReopenThread Internal Link

Параметри

НазваТипОбов’язковийОпис
tenantIdstringYes
urlIdstringYes
ssostring = ""No

Відповідь

Returns: Option[APIEmptyResponse]

Приклад

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

setTrustFactor Internal Link


Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
optionsSetTrustFactorOptionsNo

Ответ

Возвращает: 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

createModerator Internal Link

Параметри

НазваТипОбовʼязковийОпис
tenantIdstringТак
createModeratorBodyCreateModeratorBodyНі

Відповідь

Повертає: 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

deleteModerator 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

getModerator Internal Link

Параметры

NameTypeRequiredDescription
tenantIdstringYes
idstringNo

Ответ

Возвращает: 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

getModerators 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

updateModerator 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

deleteNotificationCount Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
idstringНет

Ответ

Возвращает: 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

getCachedNotificationCount Internal Link

Параметри

NameTypeRequiredDescription
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

getNotificationCount Internal Link

Параметри

НазваТипОбов’язковоОпис
tenantIdstringYes
optionsGetNotificationCountOptionsNo

Відповідь

Повертає: 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

getNotifications Internal Link

Parameters

НазваТипОбов’язковоОпис
tenantIdstringТак
optionsGetNotificationsOptionsНі

Response

Повертає: Option[GetNotificationsResponse]

Example

Приклад getNotifications
Copy Copy
1
2let (notifOpt, httpResp) = client.getNotifications(tenantId = "my-tenant-123", options = GetNotificationsOptions())
3if notifOpt.isSome:
4 let notifications = notifOpt.get()
5

updateNotification 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

createV1PageReact Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
urlIdstringYes
titlestring = ""No

Ответ

Возвращает: 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

createV2PageReact Internal Link

Параметри

НазваТипОбов'язковоОпис
tenantIdstringТак
urlIdstringТак
idstringНі
titlestring = ""Ні

Відповідь

Повертає: Option[CreateV1PageReact]

Приклад

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

deleteV1PageReact Internal Link

Параметри

НазваТипОбов’язковийОпис
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

deleteV2PageReact 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

getV1PageLikes 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

getV2PageReacts Internal Link

Параметри

НазваТипОбов’язковийОпис
tenantIdstringТак
urlIdstringТак

Відповідь

Returns: 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

getV2PageReactUsers Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
urlIdstringYes
idstringNo

Ответ

Возвращает: 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

addPage Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
createAPIPageDataCreateAPIPageDataНет

Ответ

Возвращает: 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

deletePage 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

getOfflineUsers 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.

Parameters

NameTypeRequiredDescription
tenantIdstringYes
urlIdstringYes
optionsGetOfflineUsersOptionsNo

Response

Возвращает: 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

getOnlineUsers Internal Link

Текущие онлайн‑просмотрщики страницы: люди, чья websocket‑сессия сейчас подписана на страницу.
Возвращает anonCount + totalCount (подписчики по всей комнате, включая анонимных зрителей, которых мы не перечисляем).

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
urlIdstringYes
optionsGetOnlineUsersOptionsNo

Ответ

Возвращает: Option[PageUsersOnlineResponse]

Пример

Пример 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

getPageByURLId Internal Link

Параметры

NameTypeRequiredDescription
tenantIdstringYes
urlIdstringYes

Ответ

Returns: 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

getPages Internal Link

Параметры

ИмяТипОбязательноОписание
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

getPagesPublic Internal Link

List pages for a tenant. Used by the FChat desktop client to populate its room list.
Requires enableFChat to be true on the resolved custom config for each page.
Pages that require SSO are filtered against the requesting user's group access.

Parameters

NameTypeRequiredDescription
tenantIdstringYes
optionsGetPagesPublicOptionsNo

Response

Returns: Option[GetPublicPagesResponse]

Example

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

getUsersInfo 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

NameTypeRequiredDescription
tenantIdstringYes
idsstringNo

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

patchPage Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
idstringНет
updateAPIPageDataUpdateAPIPageDataНет

Ответ

Возвращает: 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

deletePendingWebhookEvent Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
idstringNo

Ответ

Возвращает: 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

getPendingWebhookEventCount Internal Link

Параметри

НазваТипОбовʼязковоОпис
tenantIdstringYes
optionsGetPendingWebhookEventCountOptionsNo

Відповідь

Повертає: 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

getPendingWebhookEvents 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

createQuestionConfig Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
createQuestionConfigBodyCreateQuestionConfigBodyНет

Ответ

Возвращает: 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

deleteQuestionConfig 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

getQuestionConfig Internal Link

Параметри

NameTypeRequiredDescription
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

getQuestionConfigs Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
skipfloat64Нет

Ответ

Возвращает: Option[GetQuestionConfigsResponse]

Пример

Пример getQuestionConfigs
Copy Copy
1
2let (response, httpResponse) = client.getQuestionConfigs(tenantId = "my-tenant-123", skip = 0.0)
3if response.isSome:
4 let configs = response.get()
5 echo configs
6

updateQuestionConfig Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
idstringНет
updateQuestionConfigBodyUpdateQuestionConfigBodyНет

Ответ

Возвращает: 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

createQuestionResult Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
createQuestionResultBodyCreateQuestionResultBodyNo

Ответ

Возвращает: 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

deleteQuestionResult Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
idstringНет

Ответ

Возвращает: 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

getQuestionResult Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
idstringНет

Ответ

Возвращает: 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

getQuestionResults 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

updateQuestionResult Internal Link

Параметри

НазваТипОбов'язковоОпис
tenantIdstringYes
idstringNo
updateQuestionResultBodyUpdateQuestionResultBodyNo

Відповідь

Повертає: 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

aggregateQuestionResults Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
optionsAggregateQuestionResultsOptionsNo

Ответ

Возвращает: 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

bulkAggregateQuestionResults 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

combineCommentsWithQuestionResults Internal Link

Параметри

НазваТипОбов’язковийОпис
tenantIdstringТак
optionsCombineCommentsWithQuestionResultsOptionsНі

Відповідь

Повертає: 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

addSSOUser Internal Link

Параметри

НазваТипОбов'язковоОпис
tenantIdstringТак
createAPISSOUserDataCreateAPISSOUserDataНі

Відповідь

Повертає: 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

deleteSSOUser Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
idstringNo
optionsDeleteSSOUserOptionsNo

Ответ

Возвращает: Option[DeleteSSOUserAPIResponse]

Пример

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

getSSOUserByEmail Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
emailstringНет

Ответ

Возвращает: 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

getSSOUserById Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
idstringНет

Ответ

Возвращает: 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

getSSOUsers Internal Link

Параметри

NameTypeRequiredDescription
tenantIdstringYes
skipintNo

Відповідь

Возвращает: 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

patchSSOUser 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

putSSOUser Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
idstringНет
updateAPISSOUserDataUpdateAPISSOUserDataНет
updateCommentsboolНет

Ответ

Возвращает: 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

createSubscription 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

deleteSubscription 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

getSubscriptions Internal Link

Параметри

НазваТипОбов’язковоОпис
tenantIdstringYes
userIdstring = ""No

Відповідь

Повертає: Option[GetSubscriptionsAPIResponse]

Приклад

Приклад 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

updateSubscription Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
idstringNo
updateAPIUserSubscriptionDataUpdateAPIUserSubscriptionDataNo
userIdstring = ""No

Ответ

Возвращает: Option[UpdateSubscriptionAPIResponse]

Пример

Пример 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

getTenantDailyUsages Internal Link

Параметры

NameTypeRequiredDescription
tenantIdstringYes
optionsGetTenantDailyUsagesOptionsNo

Ответ

Returns: 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

createTenantPackage Internal Link

Параметри

NameTypeRequiredDescription
tenantIdstringТак
createTenantPackageBodyCreateTenantPackageBodyНі

Відповідь

Повертає: 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

deleteTenantPackage Internal Link

Параметри

Ім'яТипОбов'язковоОпис
tenantIdstringТак
idstringНі

Відповідь

Возвращает: 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

getTenantPackage 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

getTenantPackages Internal Link

Параметри

НазваТипОбов’язковийОпис
tenantIdstringYes
skipfloat64No

Відповідь

Повертає: 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

replaceTenantPackage Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
idstringНет
replaceTenantPackageBodyReplaceTenantPackageBodyНет

Ответ

Возвращает: 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

updateTenantPackage Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
idstringНет
updateTenantPackageBodyUpdateTenantPackageBodyНет

Ответ

Возвращает: 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

createTenantUser 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

deleteTenantUser Internal Link

Параметри

NameTypeRequiredDescription
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

getTenantUser Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
idstringНет

Ответ

Возвращает: 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

getTenantUsers Internal Link

Параметри

НазваТипОбовʼязковоОпис
tenantIdstringYes
skipfloat64No

Відповідь

Повертає: 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

replaceTenantUser 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

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
idstringNo
redirectURLstring = ""No

Ответ

Возвращает: 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

updateTenantUser 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

createTenant Internal Link

Параметри

НазваТипОбов’язковийОпис
tenantIdstringТак
createTenantBodyCreateTenantBodyНі

Відповідь

Повертає: Option[CreateTenantResponse]

Приклад

Приклад 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

deleteTenant Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
idstringНет
surestring = ""Нет

Ответ

Returns: 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

getTenant 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

getTenants 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

updateTenant Internal Link

Параметри

НазваТипОбов’язковийОпис
tenantIdstringYes
idstringNo
updateTenantBodyUpdateTenantBodyNo

Відповідь

Повертає: 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

changeTicketState Internal Link

Параметри

НазваТипОбов’язковоОпис
tenantIdstringYes
userIdstringNo
idstringNo
changeTicketStateBodyChangeTicketStateBodyNo

Відповідь

Повертає: 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

createTicket 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

getTicket Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
idstringНет
userIdstring = ""Нет

Ответ

Возвращает: Option[GetTicketResponse]

Пример

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

getTickets Internal Link

Параметри

NameTypeRequiredDescription
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 # использовать билеты по мере необходимости
6

getTranslations Internal Link

Параметри

НазваТипОбов’язковоОпис
namespacestringNo
componentstringNo
optionsGetTranslationsOptionsNo

Відповідь

Повертає: 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

uploadImage Internal Link

Завантажити та змінити розмір зображення

Параметри

НазваТипОбов’язковийОпис
tenantIdstringТак
filestringНі
optionsUploadImageOptionsНі

Відповідь

Повертає: Option[UploadImageResponse]

Приклад

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

getUserBadgeProgressById Internal Link

Параметры

NameTypeRequiredDescription
tenantIdstringYes
idstringNo

Ответ

Возвращает: Option[APIGetUserBadgeProgressResponse]

Пример

Пример 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

getUserBadgeProgressByUserId 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

getUserBadgeProgressList 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

createUserBadge 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

deleteUserBadge 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

getUserBadge 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

getUserBadges Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
optionsGetUserBadgesOptionsNo

Ответ

Возвращает: Option[APIGetUserBadgesResponse]

Пример

Пример 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

updateUserBadge Internal Link

Параметри

НазваТипОбов'язковийОпис
tenantIdstringТак
idstringНі
updateUserBadgeParamsUpdateUserBadgeParamsНі

Відповідь

Повертає: 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

getUserNotificationCount Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
ssostring = ""Нет

Ответ

Возвращает: Option[GetUserNotificationCountResponse]

Пример

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

getUserNotifications Internal Link

Параметри

NameTypeRequiredDescription
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

resetUserNotificationCount Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
ssostring = ""Нет

Ответ

Возвращает: 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

resetUserNotifications Internal Link

Параметри

NameTypeRequiredDescription
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

updateUserNotificationCommentSubscriptionStatus Internal Link


Включить или отключить уведомления для конкретного комментария.

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
notificationIdstringNo
optedInOrOutstringNo
commentIdstringYes
ssostring = ""No

Ответ

Возвращает: Option[UpdateUserNotificationCommentSubscriptionStatusResponse]

Пример

Пример 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

updateUserNotificationPageSubscriptionStatus Internal Link

Увімкнути або вимкнути сповіщення для сторінки. Коли користувачі підписані на сторінку, сповіщення створюються для нових кореневих коментарів, і також

Параметри

НазваТипОбов'язковоОпис
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

updateUserNotificationStatus Internal Link

Параметри

НазваТипОбов’язковоОпис
tenantIdstringТак
notificationIdstringНі
newStatusstringНі
ssostring = ""Ні

Відповідь

Повертає: Option[UpdateUserNotificationStatusResponse]

Приклад

Приклад 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

getUserPresenceStatuses Internal Link

Параметри

NameTypeRequiredDescription
tenantIdstringТак
urlIdWSstringНі
userIdsstringНі

Відповідь

Повертає: 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

searchUsers Internal Link

Параметры

NameTypeRequiredDescription
tenantIdstringДа
urlIdstringДа
optionsSearchUsersOptionsНет

Ответ

Возвращает: 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

getUser Internal Link

Параметры

NameTypeRequiredDescription
tenantIdstringДа
idstringНет

Ответ

Возвращает: 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

createVote Internal Link

Параметры

ИмяТипОбязательноОписание
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

deleteVote Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
idstringNo
editKeystring = ""No

Ответ

Возвращает: 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

getVotes 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

getVotesForUser Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringYes
urlIdstringYes
optionsGetVotesForUserOptionsNo

Ответ

Возвращает: 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 для получения инструкций по внесению вкладов.