FastComments.com

FastComments SDK для Nim


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

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

Репозиторий

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


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


  • Nim >= 1.6.0
  • nimcrypto >= 0.5.4

Установка Internal Link

Using Nimble

nimble install fastcomments

Building from Source

nimble build

Library Contents

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

Public vs Secured APIs

Для клиента API существуют три модуля API, api_default, api_public и api_moderation. api_default содержит методы, требующие ваш API‑ключ, а api_public содержит вызовы API которые можно выполнять напрямую из браузера/мобильного устройства и т.д. без аутентификации. Модуль api_moderation содержит методы для панели модератора.

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

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

Using Authenticated APIs (DefaultAPI)

Важно: Аутентифицированные конечные точки требуют, чтобы ваш API‑ключ был установлен в заголовке x-api-key.

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

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

# Make authenticated API calls.
# Required parameters (and the request body) are positional; optional
# parameters are passed via the operation's options object.
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()

# Make public API calls.
# tenantId and urlId are required (positional); everything else is optional.
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()

# List comments in the moderation dashboard.
# This operation has no required parameters, so everything is optional.
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

Все методы 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

Идентификаторы трансляций

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

SSO (Единый вход)

Примеры SSO приведены ниже.

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

Простой SSO

import fastcomments/sso

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

echo "SSO Token: ", token

Безопасный SSO

import fastcomments/sso

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

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

echo "Secure SSO Token: ", token

aggregate Internal Link

Агрегирует документы, группируя их (если указан параметр groupBy), и применяя несколько операций.
Поддерживаются различные операции (например, sum, countDistinct, avg и т.д.).

Параметры

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

Ответ

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

Пример

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

Параметры

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

Ответ

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

Пример

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

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

Параметры

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

Ответ

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

Параметры

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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Параметры

NameTypeRequiredDescription
tenantIdstringДа
urlIdstringДа
optionsGetCommentsPublicOptionsНет

Ответ

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

Параметры

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

Ответ

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

Пример

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

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

Параметры

NameTypeRequiredDescription
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

Параметры

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

Ответ

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

Пример

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

saveCommentsBulk Internal Link

Параметры

ИмяТипОбязательноОписание
tenantIdstringДа
createCommentParamsseq[CreateCommentParams]Нет
optionsSaveCommentsBulkOptions): (Option[seq[SaveCommentsBulkResponse]]Нет
idstringНет
fromNamestringНет

Ответ

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

Пример

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

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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Пример

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

unPinComment Internal Link

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Пример

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

getCommentsForUser Internal Link

Parameters

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

Параметры

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

Ответ

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

Пример

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

deleteDomainConfig Internal Link

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Пример

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

getDomainConfigs Internal Link

Параметры

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

Ответ

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

Параметры

NameTypeRequiredDescription
tenantIdstringYes
domainToUpdatestringNo
patchDomainConfigParamsPatchDomainConfigParamsNo

Ответ

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

Параметры

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

Ответ

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

Parameters

NameTypeRequiredDescription
tenantIdstringДа
idstringНет

Response

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

Параметры

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

Ответ

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

Пример

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

getEmailTemplateRenderErrors Internal Link

Parameters

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

Response

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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Параметры

NameTypeRequiredDescription
tenantIdstringYes
urlIdstringYes
userIdWSstringNo
startTimeint64No
endTimeint64No

Ответ

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

Пример

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

getGlobalEventLog Internal Link

req tenantId urlId userIdWS

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Пример

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

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

Параметры

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

Параметры

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

Ответ

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

Пример

Пример getFeedPostsStats
Copy Copy
1
2let (statsOpt, httpResponse) = client.getFeedPostsStats(
3 tenantId = "my-tenant-123",
4 postIds = @["post-abc", "post-def"],
5 sso = "sso-token",
6)
7
8if statsOpt.isSome:
9 let stats = statsOpt.get()
10 # использовать stats по мере необходимости
11
12
13

getUserReactsPublic Internal Link

Параметры

NameTypeRequiredDescription
tenantIdstringYes
optionsGetUserReactsPublicOptionsNo

Ответ

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

Параметры

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

Ответ

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

Пример

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

updateFeedPostPublic Internal Link

Параметры

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

Ответ

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

Пример

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

flagCommentPublic Internal Link

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Пример

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

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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Пример

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

getCommentChildren Internal Link

Параметры

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

Ответ

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


Параметры

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

Ответ

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

Пример

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

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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Параметры

NameTypeRequiredDescription
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

Параметры

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

Ответ

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

Пример

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

getModerationCommentText Internal Link

Параметры

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

Ответ

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


Параметры

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

Параметры

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

Ответ

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

Пример

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


Параметры

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

Ответ

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

Пример

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

getSearchSites Internal Link

Параметры

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

Ответ

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

Пример

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

getSearchSuggest Internal Link

Параметры

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

Ответ

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

Пример

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

getSearchUsers Internal Link

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Параметры

NameTypeRequiredDescription
tenantIdstringYes
bulkPreBanParamsBulkPreBanParamsNo
optionsPostBulkPreBanSummaryOptionsNo

Ответ

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

Параметры

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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Параметры

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

Параметры

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

Ответ

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

Пример

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

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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Параметры

NameTypeRequiredDescription
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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Пример

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

deleteModerator Internal Link

Параметры

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

Ответ

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

Параметры

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

Параметры

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

Ответ

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


Параметры

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

Ответ

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

Пример

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

updateNotification Internal Link

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Пример

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

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

Параметры

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

Ответ

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

Parameters

NameTypeRequiredDescription
tenantIdstringДа
urlIdstringДа
idstringНет

Response

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

Example

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

Параметры

NameTypeRequiredDescription
tenantIdstringДа
urlIdstringДа

Ответ

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

Параметры

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

Ответ

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

Пример

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

addPage Internal Link

Параметры

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

Ответ

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

Пример

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

deletePage Internal Link

Параметры

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

Ответ

Возвращает: 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.
Russian: Прошлые комментаторы на странице, которые НЕ находятся в сети в данный момент. Отсортированы по displayName.

Use this after exhausting /users/online to render a "Members" section.
Russian: Используйте это после исчерпания /users/online для отображения раздела "Members".

Cursor pagination on commenterName: server walks the partial {tenantId, urlId, commenterName} index from afterName forward via $gt, no $skip cost.
Russian: Курсорная пагинация по commenterName: сервер проходит частичный {tenantId, urlId, commenterName} индекс от afterName вперёд через $gt, без затрат на $skip.

Parameters

NameTypeRequiredDescription
tenantIdstringYes
urlIdstringYes
optionsGetOfflineUsersOptionsNo

Response

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

Example

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

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

Parameters

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

Response

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

Example

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

getPageByURLId Internal Link

Параметры

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

Ответ

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

Пример

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

getPages Internal Link

Параметры

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

Ответ

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


Пакетная информация о пользователях для арендатора. По заданным userIds возвращается отображаемая информация из User / SSOUser. Используется виджетом комментариев для обогащения пользователей, которые только что появились через событие присутствия. Без контекста страницы: конфиденциальность соблюдается единообразно (личные профили маскируются).

Параметры

NameTypeRequiredDescription
tenantIdstringYes
idsstringNo

Ответ

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

Пример

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


Параметры

NameTypeRequiredDescription
tenantIdstringYes
idstringNo
updateAPIPageDataUpdateAPIPageDataNo

Ответ

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

Пример

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

deletePendingWebhookEvent Internal Link

Параметры

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

Ответ

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

Пример

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

getPendingWebhookEventCount Internal Link

Параметры

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

Ответ

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

Пример

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

getPendingWebhookEvents Internal Link

Параметры

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

Ответ

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

Параметры

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

Parameters

NameTypeRequiredDescription
tenantIdstringYes
createQuestionResultBodyCreateQuestionResultBodyNo

Response

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

Example

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

Параметры

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

Параметры

NameTypeRequiredDescription
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

Параметры

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

Ответ

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

Ответ

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

Параметры

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

Ответ

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

Пример

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

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

Параметры

NameTypeRequiredОписание
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

Параметры

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

Ответ

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

Пример

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

replaceTenantPackage Internal Link

Параметры

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

Ответ

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

Пример

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

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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Пример

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

replaceTenantUser Internal Link

Параметры

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

Ответ

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

Пример

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

Параметры

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

Ответ

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

Пример

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

updateTenantUser Internal Link

Параметры

NameTypeRequiredDescription
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 = ""Нет

Ответ

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

Параметры

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

Ответ

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

Пример

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

changeTicketState Internal Link

Параметры

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

Ответ

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

Пример

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

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

Параметры

NameTypeRequiredDescription
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

Параметры

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

Ответ

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

Загрузка и изменение размера изображения

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Параметры

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

Ответ

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

Параметры

NameTypeRequiredDescription
tenantIdstringYes
optionsGetUserBadgeProgressListOptionsNo

Ответ

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

Параметры

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

Ответ

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

Параметры

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


Параметры

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

Ответ

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

Параметры

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

Ответ

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

Пример

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

getUserNotificationCount Internal Link

Параметры

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

Ответ

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

Параметры

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

Параметры

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

Ответ

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

Пример

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

resetUserNotifications Internal Link

Параметры

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

Ответ

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

Enable or disable notifications for a specific comment.

Параметры

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

Параметры

NameTypeRequiredDescription
tenantIdstringYes
notificationIdstringNo
newStatusstringNo
ssostring = ""No

Ответ

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

Параметры

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

Ответ

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

Пример

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

searchUsers Internal Link

Параметры

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

Ответ

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

Пример

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

getUser Internal Link

Параметры

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

Ответ

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

Пример

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

createVote Internal Link

Параметры

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

Ответ

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

Параметры

NameTypeRequiredDescription
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 для получения руководства по участию.