FastComments.com

FastComments Nim SDK

Це офіційний SDK на Nim для FastComments.

Офіційний Nim SDK для API FastComments

Репозиторій

Переглянути на GitHub


Вимоги Internal Link


  • Nim >= 1.6.0
  • nimcrypto >= 0.5.4

Встановлення Internal Link

Використання Nimble

nimble install fastcomments

Збірка з вихідного коду

nimble build

Вміст бібліотеки

Ця бібліотека містить згенерований клієнт API та утиліти SSO, щоб полегшити роботу з API.

Публічні й захищені API

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

Швидкий старт Internal Link

Використання автентифікованих API (DefaultAPI)

Важливо: Для автентифікованих кінцевих точок ваш API-ключ повинен бути встановлений у заголовку x-api-key.

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

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

# Виконати автентифіковані виклики API
let (response, httpResponse) = getComments(
  httpClient = client,
  tenantId = "your-tenant-id",
  page = 0,
  limit = 0,
  skip = 0,
  asTree = false,
  skipChildren = 0,
  limitChildren = 0,
  maxTreeDepth = 0,
  urlId = "your-url-id",
  userId = "",
  anonUserId = "",
  contextUserId = "",
  hashTag = "",
  parentId = "",
  direction = SortDirections.DESC
)

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

Використання публічних API (PublicAPI)

Публічні кінцеві точки не потребують автентифікації:

import httpclient
import fastcomments
import fastcomments/apis/api_public

let client = newHttpClient()

# Виконати публічні виклики API
let (response, httpResponse) = getCommentsPublic(
  httpClient = client,
  tenantId = "your-tenant-id",
  urlId = "your-url-id",
  page = 0,
  direction = SortDirections.DESC,
  sso = "",
  skip = 0,
  skipChildren = 0,
  limit = 0,
  limitChildren = 0,
  countChildren = false,
  fetchPageForCommentId = "",
  includeConfig = false,
  countAll = false,
  includei10n = false,
  locale = "",
  modules = "",
  isCrawler = false,
  includeNotificationCount = false,
  asTree = false,
  maxTreeDepth = 0,
  useFullTranslationIds = false,
  parentId = "",
  searchText = "",
  hashTags = @[],
  userId = "",
  customConfigStr = "",
  afterCommentId = "",
  beforeCommentId = ""
)

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

Поширені проблеми

  1. 401 помилка автентифікації: Переконайтеся, що ви встановили заголовок x-api-key на вашому HttpClient перед виконанням запитів DefaultAPI: client.headers["x-api-key"] = "your-api-key"
  2. Неправильний клас API: Використовуйте api_default для серверних автентифікованих запитів, api_public для клієнтських/публічних запитів.

Виклики API Internal Link


Усі методи API в цьому SDK повертають кортежі (Option[ResponseType], Response). Перший елемент містить розібрану відповідь у разі успіху, а другий елемент — сирий HTTP-відповідь.

Приклад: Отримання коментарів

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

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

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

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

Примітки Internal Link

Ідентифікатори трансляцій

Ви побачите, що потрібно передавати broadcastId у деяких викликах API. Коли ви отримуєте події, ви отримаєте назад цей ідентифікатор, тож знатимете, що можна ігнорувати подію, якщо плануєте оптимістично застосувати зміни на клієнті (що, ймовірно, буде бажаним, оскільки забезпечує найкращий досвід). Передайте тут UUID. Ідентифікатор має бути достатньо унікальним, щоб не повторюватися двічі в одній сесії браузера.

SSO (Єдиний вхід)

Для прикладів SSO дивіться нижче.

Використання SSO Internal Link

Простий SSO

import fastcomments/sso

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

echo "SSO Token: ", token

Безпечний SSO

import fastcomments/sso

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

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

echo "Secure SSO Token: ", token

Агрегувати Internal Link

Параметри

Назва Тип Обов'язковий Опис
tenantId string Так
aggregationRequest AggregationRequest Ні
parentTenantId string Ні
includeStats bool Ні

Відповідь

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

Приклад

aggregate Приклад
Copy Copy
1
2let (response, httpResponse) = client.aggregate(
3 tenantId = "my-tenant-123",
4 aggregationRequest = AggregationRequest(),
5 parentTenantId = "",
6 includeStats = false
7)
8if response.isSome:
9 let aggregation = response.get()
10 echo $aggregation
11

Отримати журнали аудиту Internal Link

Параметри

Назва Тип Обов'язковий Опис
tenantId string Так
limit float64 Ні
skip float64 Ні
order SORTDIR Ні
after float64 Ні
before float64 Ні

Відповідь

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

Приклад

getAuditLogs Приклад
Copy Copy
1
2let (response, httpResponse) = client.getAuditLogs(
3 tenantId = "my-tenant-123",
4 limit = 100.0,
5 skip = 0.0,
6 order = SORTDIR(0),
7 after = 0.0,
8 before = 0.0
9)
10if response.isSome:
11 let audit = response.get()
12 echo audit
13

Заблокувати через коментар (публічний) Internal Link

Parameters

Name Type Required Description
tenantId string Так
commentId string Так
publicBlockFromCommentParams PublicBlockFromCommentParams Ні
sso string Ні

Response

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

Example

Приклад blockFromCommentPublic
Copy Copy
1
2let (response, httpResponse) = client.blockFromCommentPublic(
3 tenantId = "my-tenant-123",
4 commentId = "comment-987654",
5 publicBlockFromCommentParams = PublicBlockFromCommentParams(),
6 sso = "sso-token-7a9b3c"
7)
8if response.isSome:
9 let blockResult = response.get()
10 discard blockResult
11

Розблокувати коментар (публічний) Internal Link

Параметри

Назва Тип Обов'язкове Опис
tenantId string Так
commentId string Так
publicBlockFromCommentParams PublicBlockFromCommentParams Ні
sso string Ні

Відповідь

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

Приклад

unBlockCommentPublic Приклад
Copy Copy
1
2let (response, httpResponse) = client.unBlockCommentPublic(
3 tenantId = "news-site-456",
4 commentId = "comment-abc123",
5 publicBlockFromCommentParams = PublicBlockFromCommentParams{},
6 sso = ""
7)
8if response.isSome:
9 let unblocked = response.get()
10 discard unblocked
11else:
12 discard httpResponse
13

Перевірені коментарі на блокування Internal Link

Параметри

Назва Тип Обов'язковий Опис
tenantId string Так
commentIds string Ні
sso string Ні

Відповідь

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

Приклад

Приклад checkedCommentsForBlocked
Copy Copy
1
2let (response, httpResponse) = client.checkedCommentsForBlocked(
3 tenantId = "my-tenant-123",
4 commentIds = "",
5 sso = ""
6)
7if response.isSome:
8 let checked = response.get()
9 echo "Checked comments received for tenant my-tenant-123"
10 echo checked
11else:
12 echo "No checked comments (HTTP status: ", $httpResponse.statusCode, ")"
13

Заблокувати користувача через коментар Internal Link

Параметри

Назва Тип Обов'язковий Опис
tenantId string Yes
id string No
blockFromCommentParams BlockFromCommentParams No
userId string No
anonUserId string No

Відповідь

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

Приклад

Приклад blockUserFromComment
Copy Copy
1
2let (response, httpResponse) = client.blockUserFromComment(
3 tenantId = "my-tenant-123",
4 id = "comment-98765",
5 blockFromCommentParams = BlockFromCommentParams(),
6 userId = "user-456",
7 anonUserId = ""
8)
9if response.isSome:
10 let blocked = response.get()
11 echo "Block confirmed for tenant:", " my-tenant-123"
12

Створити публічний коментар Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Yes
urlId string Yes
broadcastId string No
commentData CommentData No
sessionId string No
sso string No

Відповідь

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

Приклад

Приклад createCommentPublic
Copy Copy
1
2let (response, httpResponse) = client.createCommentPublic(
3 tenantId = "my-tenant-123",
4 urlId = "news/breaking-elections-2025",
5 broadcastId = "broadcast-456",
6 commentData = CommentData(
7 content = "Great reporting — thanks for the clear analysis!",
8 authorName = "Jane Doe",
9 authorEmail = "jane.doe@example.com",
10 isVerified = false,
11 tags = @["politics", "analysis"]
12 ),
13 sessionId = "session-789",
14 sso = "sso-token-abc123"
15)
16
17if response.isSome:
18 let created = response.get()
19 echo "Created comment:", created
20else:
21 echo "No comment returned, HTTP status: ", httpResponse.status`
22

Видалити коментар Internal Link

Параметри

Name Type Required Description
tenantId string Так
id string Ні
contextUserId string Ні
isLive bool Ні

Відповідь

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

Приклад

Приклад deleteComment
Copy Copy
1
2let (response, httpResponse) = client.deleteComment(tenantId = "my-tenant-123", id = "cmt-456abc", contextUserId = "user-789", isLive = true)
3if response.isSome:
4 let deleted = response.get()
5 discard deleted
6 echo "Delete succeeded"
7else:
8 echo "No delete response"
9

Видалити публічний коментар Internal Link

Параметри

Name Type Required Description
tenantId string Так
commentId string Так
broadcastId string Ні
editKey string Ні
sso string Ні

Відповідь

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

Приклад

Приклад deleteCommentPublic
Copy Copy
1
2let (response, httpResponse) = client.deleteCommentPublic(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-987654",
5 broadcastId = "",
6 editKey = "",
7 sso = ""
8)
9if response.isSome:
10 let deleted = response.get()
11 echo "Delete succeeded"
12 echo "HTTP status: ", httpResponse.status
13else:
14 echo "Delete failed, HTTP status: ", httpResponse.status
15

Видалити голос за коментар Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
commentId string Так
voteId string Ні
urlId string Так
broadcastId string Ні
editKey string Ні
sso string Ні

Відповідь

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

Приклад

Приклад deleteCommentVote
Copy Copy
1
2let (response, httpResponse) = client.deleteCommentVote(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-789",
5 voteId = "",
6 urlId = "news/breaking-story-2025",
7 broadcastId = "",
8 editKey = "",
9 sso = ""
10)
11if response.isSome:
12 let deleted = response.get()
13 discard deleted
14 echo "Vote removed for comment cmt-789"
15else:
16 echo "No response body returned"
17

Позначити коментар Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Yes
id string No
userId string No
anonUserId string No

Відповідь

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

Приклад

Приклад flagComment
Copy Copy
1
2let (response, httpResponse) = client.flagComment(tenantId = "my-tenant-123", id = "cmt-98765", userId = "user-8342", anonUserId = "")
3if response.isSome:
4 let flagged = response.get()
5 echo "Flagged comment response: ", flagged
6else:
7 echo "Flag comment failed: ", httpResponse
8

Отримати коментар Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні

Response

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

Приклад

Приклад getComment
Copy Copy
1
2let (response, httpResponse) = client.getComment(tenantId = "my-tenant-123", id = "cmt-987654321")
3if response.isSome:
4 let comment = response.get()
5 echo comment
6

Отримати коментарі Internal Link

Параметри

Name Тип Обов'язковий Опис
tenantId string Так
page int Ні
limit int Ні
skip int Ні
asTree bool Ні
skipChildren int Ні
limitChildren int Ні
maxTreeDepth int Ні
urlId string Так
userId string Ні
anonUserId string Ні
contextUserId string Ні
hashTag string Ні
parentId string Ні
direction SortDirections Ні

Відповідь

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

Приклад

Приклад getComments
Copy Copy
1
2let (response, httpResponse) = client.getComments(
3 tenantId = "my-tenant-123",
4 page = 1,
5 limit = 20,
6 skip = 0,
7 asTree = false,
8 skipChildren = 0,
9 limitChildren = 0,
10 maxTreeDepth = 0,
11 urlId = "news/2025-election-night",
12 userId = "",
13 anonUserId = "",
14 contextUserId = "",
15 hashTag = "",
16 parentId = "",
17 direction = SortDirections.Desc
18)
19
20if response.isSome:
21 let comments = response.get()
22 echo "Status: ", httpResponse.status, " Comments: ", comments
23

Отримати публічні коментарі Internal Link

Параметри

Name Type Required Description
tenantId string Так
urlId string Так
page int Ні
direction SortDirections Ні
sso string Ні
skip int Ні
skipChildren int Ні
limit int Ні
limitChildren int Ні
countChildren bool Ні
fetchPageForCommentId string Ні
includeConfig bool Ні
countAll bool Ні
includei10n bool Ні
locale string Ні
modules string Ні
isCrawler bool Ні
includeNotificationCount bool Ні
asTree bool Ні
maxTreeDepth int Ні
useFullTranslationIds bool Ні
parentId string Ні
searchText string Ні
hashTags seq[string] Ні
userId string Ні
customConfigStr string Ні
afterCommentId string Ні
beforeCommentId string Ні

Відповідь

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

Приклад

Приклад getCommentsPublic
Copy Copy
1
2let (response, httpResponse) = client.getCommentsPublic(
3 tenantId = "my-tenant-123",
4 urlId = "news/world/article-2025",
5 page = 1,
6 direction = SortDirections(0),
7 sso = "sso_token_abc",
8 skip = 0,
9 skipChildren = 0,
10 limit = 20,
11 limitChildren = 5,
12 countChildren = false,
13 fetchPageForCommentId = "cmt_789",
14 includeConfig = true,
15 countAll = false,
16 includei10n = true,
17 locale = "en-US",
18 modules = "reactions,moderation",
19 isCrawler = false,
20 includeNotificationCount = true,
21 asTree = true,
22 maxTreeDepth = 3,
23 useFullTranslationIds = false,
24 parentId = "parent_123",
25 searchText = "openAI integration",
26 hashTags = @["ai", "technology"],
27 userId = "user_456",
28 customConfigStr = "{}",
29 afterCommentId = "cmt_100",
30 beforeCommentId = ""
31)
32
33if response.isSome:
34 let comments = response.get()
35 discard comments
36else:
37 discard httpResponse
38

Отримати текст коментаря Internal Link

Параметри

Назва Тип Обов'язковий Опис
tenantId string Так
commentId string Так
editKey string Ні
sso string Ні

Відповідь

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

Приклад

Приклад getCommentText
Copy Copy
1
2let (response, httpResponse) = client.getCommentText(tenantId = "my-tenant-123", commentId = "cmt-456789", editKey = "", sso = "")
3
4if response.isSome:
5 let comment = response.get()
6 echo "Comment text: ", $comment
7else:
8 echo "No comment returned"
9

Отримати імена користувачів, що голосували за коментар Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Yes
commentId string Yes
dir int No
sso string No

Відповідь

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

Приклад

Приклад getCommentVoteUserNames
Copy Copy
1
2let (response, httpResponse) = client.getCommentVoteUserNames(tenantId = "my-tenant-123", commentId = "c_987654321", dir = 0, sso = "")
3if response.isSome:
4 let res = response.get()
5 for userName in res.userNames:
6 echo userName
7

Заблокувати коментар Internal Link

Параметри

Назва Тип Обов'язкове Опис
tenantId string Так
commentId string Так
broadcastId string Ні
sso string Ні

Відповідь

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

Приклад

Приклад lockComment
Copy Copy
1
2let (response, httpResponse) = client.lockComment(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-98765",
5 broadcastId = "",
6 sso = ""
7)
8if response.isSome:
9 let lockResp = response.get()
10 discard lockResp
11

Прикріпити коментар Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
commentId string Так
broadcastId string Ні
sso string Ні

Відповідь

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

Приклад

Приклад pinComment
Copy Copy
1
2let (response, httpResponse) = client.pinComment(tenantId = "my-tenant-123", commentId = "cmt-98765", broadcastId = "", sso = "")
3if response.isSome:
4 let pinned = response.get()
5 echo "Pinned comment response received"
6else:
7 echo "No pin response"
8

Зберегти коментар Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
createCommentParams CreateCommentParams Ні
isLive bool Ні
doSpamCheck bool Ні
sendEmails bool Ні
populateNotifications bool Ні

Відповідь

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

Приклад

Приклад saveComment
Copy Copy
1
2let (response, httpResponse) = client.saveComment(
3 tenantId = "my-tenant-123",
4 createCommentParams = CreateCommentParams(
5 content = "This article was really helpful, thanks!",
6 urlId = "news/2025-11/ai-regulations",
7 authorName = "Jane Doe",
8 authorEmail = "jane.doe@example.com",
9 tags = @["policy", "analysis"]
10 ),
11 isLive = true,
12 doSpamCheck = true,
13 sendEmails = true,
14 populateNotifications = false
15)
16
17if response.isSome:
18 let saved = response.get()
19 discard saved
20

Зберегти коментарі (масово) Internal Link

Параметри

Назва Тип Обов'язкове Опис
tenantId string Yes
createCommentParams seq[CreateCommentParams] No
isLive bool No
doSpamCheck bool No
sendEmails bool No
populateNotifications bool): (Option[seq[SaveComment_200_response]] No
id string No
unBlockFromCommentParams UnBlockFromCommentParams No
userId string No
anonUserId string No

Відповідь

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

Приклад

Приклад saveCommentsBulk
Copy Copy
1
2let (response, httpResponse) = client.saveCommentsBulk(
3 tenantId = "my-tenant-123",
4 createCommentParams = @[],
5 isLive = true,
6 doSpamCheck = true,
7 sendEmails = false,
8 populateNotifications = true,
9 id = "batch-20251122",
10 unBlockFromCommentParams = UnBlockFromCommentParams(),
11 userId = "user-456",
12 anonUserId = "anon-789"
13)
14if response.isSome:
15 let unblocked = response.get()
16 echo "Unblocked response received: ", unblocked
17else:
18 echo "No unblocked response, httpResponse: ", $httpResponse
19

Встановити текст коментаря Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
commentId string Так
broadcastId string Ні
commentTextUpdateRequest CommentTextUpdateRequest Ні
editKey string Ні
sso string Ні

Відповідь

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

Приклад

Приклад setCommentText
Copy Copy
1
2let (response, httpResponse) = client.setCommentText(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-7890",
5 broadcastId = "broadcast-456",
6 commentTextUpdateRequest = CommentTextUpdateRequest(text = "Updated comment text to fix typos and add clarity."),
7 editKey = "edit-key-abc123",
8 sso = "sso-token-xyz"
9)
10
11if response.isSome:
12 let updated = response.get()
13

Розблокувати користувача через коментар Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні
unBlockFromCommentParams UnBlockFromCommentParams Ні
userId string Ні
anonUserId string Ні

Відповідь

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

Приклад

Приклад unBlockUserFromComment
Copy Copy
1
2let (response, httpResponse) = client.unBlockUserFromComment(
3 tenantId = "news-site-001",
4 id = "cmt-8fj3k9",
5 unBlockFromCommentParams = UnBlockFromCommentParams(),
6 userId = "user-98765",
7 anonUserId = ""
8)
9
10if response.isSome:
11 let unblocked = response.get()
12 discard unblocked
13

Зняти позначку з коментаря Internal Link

Параметри

Name Type Required Description
tenantId string Так
id string Ні
userId string Ні
anonUserId string Ні

Відповідь

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

Приклад

Приклад unFlagComment
Copy Copy
1
2let (response, httpResponse) = client.unFlagComment(
3 tenantId = "my-tenant-123",
4 id = "flag-789",
5 userId = "",
6 anonUserId = ""
7)
8
9if response.isSome:
10 let flagResponse = response.get()
11 echo "Comment unflagged successfully"
12

Розблокувати коментар Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
commentId string Так
broadcastId string Ні
sso string Ні

Відповідь

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

Приклад

Приклад використання unLockComment
Copy Copy
1
2let (response, httpResponse) = client.unLockComment(tenantId = "my-tenant-123", commentId = "cmt-7f9a3b2d", broadcastId = "", sso = "")
3if response.isSome:
4 let lockResult = response.get()
5 echo "Unlock response: ", $lockResult
6else:
7 echo "Unlock failed, HTTP response: ", $httpResponse
8

Відкріпити коментар Internal Link

Параметри

Назва Тип Обов'язкове Опис
tenantId string Так
commentId string Так
broadcastId string Ні
sso string Ні

Відповідь

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

Приклад

Приклад unPinComment
Copy Copy
1
2let (response, httpResponse) = client.unPinComment(tenantId = "my-tenant-123", commentId = "cmt-9f8b7a6", broadcastId = "", sso = "")
3if response.isSome:
4 let pinResp = response.get()
5 echo "Unpinned comment successfully"
6else:
7 echo "Failed to unpin comment; HTTP response: ", httpResponse
8

Оновити коментар Internal Link


Параметри

Назва Тип Обов'язковий Опис
tenantId string Так
id string Ні
updatableCommentParams UpdatableCommentParams Ні
contextUserId string Ні
doSpamCheck bool Ні
isLive bool Ні

Відповідь

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

Приклад

Приклад updateComment
Copy Copy
1
2let updatableCommentParams = UpdatableCommentParams(content: "Fixed a typo in the second paragraph", tags: @["article-edit", "typo"], isApproved: true)
3let (response, httpResponse) = client.updateComment(
4 tenantId = "my-tenant-123",
5 id = "comment-456",
6 updatableCommentParams = updatableCommentParams,
7 contextUserId = "user-789",
8 doSpamCheck = true,
9 isLive = true
10)
11if response.isSome:
12 let flagResp = response.get()
13 discard flagResp
14

Проголосувати за коментар Internal Link

Параметри

Назва Тип Обов'язкове Опис
tenantId string Так
commentId string Так
urlId string Так
broadcastId string Ні
voteBodyParams VoteBodyParams Ні
sessionId string Ні
sso string Ні

Відповідь

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

Приклад

Приклад voteComment
Copy Copy
1
2let voteBody = VoteBodyParams()
3let (response, httpResponse) = client.voteComment(
4 tenantId = "my-tenant-123",
5 commentId = "cmt-456789",
6 urlId = "news/2025/fastcomments-integration",
7 broadcastId = "",
8 voteBodyParams = voteBody,
9 sessionId = "",
10 sso = ""
11)
12if response.isSome:
13 let voteResp = response.get()
14 echo "Vote recorded for comment cmt-456789"
15else:
16 echo "Failed to record vote"
17

Додати конфігурацію домену Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
addDomainConfigParams AddDomainConfigParams Ні

Відповідь

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

Приклад

addDomainConfig Example
Copy Copy
1
2let (response, httpResponse) = client.addDomainConfig(tenantId = "my-tenant-123", addDomainConfigParams = AddDomainConfigParams())
3if response.isSome:
4 let domainConfig = response.get()
5 discard domainConfig
6else:
7 discard httpResponse
8

Видалити конфігурацію домену Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
domain string Ні

Відповідь

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

Приклад

Приклад deleteDomainConfig
Copy Copy
1
2let (response, httpResponse) = client.deleteDomainConfig(tenantId = "my-tenant-123", domain = "news.example.com")
3if response.isSome:
4 let result = response.get()
5 echo "Deleted domain config result: ", result
6else:
7 echo "No response body, HTTP status: ", $httpResponse.status
8

Отримати конфігурацію домену Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
domain string Ні

Відповідь

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

Приклад

Приклад getDomainConfig
Copy Copy
1
2let (response, httpResponse) = client.getDomainConfig(tenantId = "my-tenant-123", domain = "news.example.com")
3if response.isSome:
4 let domainConfig = response.get()
5 echo "Loaded domain config for tenant my-tenant-123:", $domainConfig
6else:
7 echo "No domain config; HTTP status:", $httpResponse.status
8

Отримати конфігурації доменів Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так

Відповідь

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

Приклад

Приклад getDomainConfigs
Copy Copy
1
2let (response, httpResponse) = client.getDomainConfigs(tenantId = "my-tenant-123")
3if response.isSome:
4 let domainConfigs = response.get()
5 echo "Domain configs received:"
6 echo domainConfigs
7else:
8 echo "Failed to retrieve domain configs."
9 echo httpResponse
10

Часткове оновлення конфігурації домену Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
domainToUpdate string Ні
patchDomainConfigParams PatchDomainConfigParams Ні

Відповідь

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

Приклад

patchDomainConfig Приклад
Copy Copy
1
2let (response, httpResponse) = client.patchDomainConfig(
3 tenantId = "my-tenant-123",
4 domainToUpdate = "news/article-crowdsourcing",
5 patchDomainConfigParams = PatchDomainConfigParams(
6 allowedOrigins = @["https://www.news-site.com"],
7 moderated = true,
8 maxCommentLength = 1000
9 )
10)
11
12if response.isSome:
13 let domainConfig = response.get()
14 echo "Updated domain config received"
15else:
16 echo "No domain config returned"
17

Замінити конфігурацію домену Internal Link

Параметри

Назва Тип Обов'язковий Опис
tenantId string Так
domainToUpdate string Ні
updateDomainConfigParams UpdateDomainConfigParams Ні

Відповідь

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

Приклад

Приклад putDomainConfig
Copy Copy
1
2let updateParams = UpdateDomainConfigParams(
3 allowAnonymous = false,
4 moderationEnabled = true,
5 allowedOrigins = @["https://news.example.com"],
6 maxCommentLength = 2000
7)
8
9let (response, httpResponse) = client.putDomainConfig(
10 tenantId = "my-tenant-123",
11 domainToUpdate = "news/example-article",
12 updateDomainConfigParams = updateParams
13)
14
15if response.isSome:
16 let domainCfg = response.get()
17 discard domainCfg
18

Створити шаблон електронного листа Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
createEmailTemplateBody CreateEmailTemplateBody Ні

Відповідь

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

Приклад

Приклад createEmailTemplate
Copy Copy
1
2let (response, httpResponse) = client.createEmailTemplate(tenantId = "my-tenant-123", createEmailTemplateBody = CreateEmailTemplateBody(name = "Weekly Newsletter", subject = "Weekly updates from OurSite", fromName = "OurSite Team", fromEmail = "newsletter@oursite.com", bodyHtml = "<h1>Highlights</h1><p>Top stories this week...</p>", enabled = true, tags = @["newsletter", "weekly"]))
3if response.isSome:
4 let template = response.get()
5 discard template
6

Видалити шаблон електронного листа Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні

Відповідь

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

Приклад

Приклад deleteEmailTemplate
Copy Copy
1
2let (response, httpResponse) = client.deleteEmailTemplate(tenantId = "my-tenant-123", id = "tmpl-456")
3if response.isSome:
4 let deleted = response.get()
5 echo deleted
6

Видалити помилку рендерингу шаблону листа Internal Link


Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні
errorId string Ні

Відповідь

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

Приклад

Приклад deleteEmailTemplateRenderError
Copy Copy
1
2let (response, httpResponse) = client.deleteEmailTemplateRenderError(
3 tenantId = "my-tenant-123",
4 id = "welcome-email-template",
5 errorId = "render-error-2026"
6)
7if response.isSome:
8 let flagResp = response.get()
9 discard flagResp
10

Отримати шаблон електронного листа Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні

Відповідь

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

Приклад

Приклад getEmailTemplate
Copy Copy
1
2let (response, httpResponse) = client.getEmailTemplate(tenantId = "my-tenant-123", id = "welcome-email-01")
3if response.isSome:
4 let template = response.get()
5 echo "Template ID: ", template.id
6 echo "Subject: ", template.subject
7 echo "Body: ", template.body
8

Отримати визначення шаблонів листів Internal Link

Параметри

Ім'я Тип Обов'язково Опис
tenantId string Так

Відповідь

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

Приклад

Приклад getEmailTemplateDefinitions
Copy Copy
1
2let (response, httpResponse) = client.getEmailTemplateDefinitions(tenantId = "my-tenant-123")
3if response.isSome:
4 let defs = response.get()
5 echo "Received email template definitions for tenant my-tenant-123"
6else:
7 echo "No template definitions returned; HTTP status: ", httpResponse.status
8

Отримати помилки рендерингу шаблонів листів Internal Link

Параметри

Назва Тип Обов'язкове Опис
tenantId string Так
id string Ні
skip float64 Ні

Відповідь

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

Приклад

Приклад getEmailTemplateRenderErrors
Copy Copy
1
2let (response, httpResponse) = client.getEmailTemplateRenderErrors(tenantId = "my-tenant-123", id = "welcome-email-template-001", skip = 0.0)
3if response.isSome:
4 let result = response.get()
5 echo "Render errors:", result
6else:
7 echo "No render errors or request failed. HTTP status:", httpResponse.status
8

Отримати шаблони електронних листів Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
skip float64 Ні

Відповідь

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

Приклад

Приклад getEmailTemplates
Copy Copy
1
2let (response, httpResponse) = client.getEmailTemplates(tenantId = "my-tenant-123", skip = 0.0)
3if response.isSome:
4 let templates = response.get()
5 echo templates
6else:
7 echo "No templates returned"
8

Згенерувати шаблон електронного листа Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
renderEmailTemplateBody RenderEmailTemplateBody Ні
locale string Ні

Відповідь

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

Приклад

Приклад renderEmailTemplate
Copy Copy
1
2let renderBody = RenderEmailTemplateBody(templateId: "comment-notification", subject: "New comment on your article", variables: @["John Doe", "news/global-climate"])
3let (response, httpResponse) = client.renderEmailTemplate(tenantId = "my-tenant-123", renderEmailTemplateBody = renderBody, locale = "en-US")
4if response.isSome:
5 let rendered = response.get()
6 echo rendered
7

Оновити шаблон електронного листа Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні
updateEmailTemplateBody UpdateEmailTemplateBody Ні

Відповідь

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

Приклад

Приклад updateEmailTemplate
Copy Copy
1
2let updateBody = UpdateEmailTemplateBody(
3 name = "Welcome Email",
4 subject = "Welcome to Example News",
5 html = "<p>Hi {name}, welcome to Example News.</p>",
6 isActive = true,
7 tags = @["onboarding", "welcome"]
8)
9
10let (response, httpResponse) = client.updateEmailTemplate(
11 tenantId = "my-tenant-123",
12 id = "welcome-template-2026",
13 updateEmailTemplateBody = updateBody
14)
15
16if response.isSome:
17 let template = response.get()
18 discard template
19

Отримати журнал подій Internal Link

Параметри

Назва Тип Обов'язкове Опис
tenantId string Так
urlId string Так
userIdWS string Ні
startTime int64 Ні
endTime int64 Ні

Відповідь

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

Приклад

Приклад getEventLog
Copy Copy
1
2let (response, httpResponse) = client.getEventLog(
3 tenantId = "my-tenant-123",
4 urlId = "news/politics/election-2024",
5 userIdWS = "",
6 startTime = 0'i64,
7 endTime = 0'i64
8)
9if response.isSome:
10 let eventLog = response.get()
11 echo "Received event log for ", "my-tenant-123"
12else:
13 echo "No event log returned. HTTP status: ", $httpResponse.status
14

Отримати глобальний журнал подій Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
urlId string Так
userIdWS string Ні
startTime int64 Ні
endTime int64 Ні

Відповідь

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

Приклад

Приклад getGlobalEventLog
Copy Copy
1
2let (response, httpResponse) = client.getGlobalEventLog(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 userIdWS = "",
6 startTime = int64(0),
7 endTime = int64(0)
8)
9if response.isSome:
10 let eventLog = response.get()
11 echo eventLog
12else:
13 echo "No event log returned"
14

Створити пост стрічки Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
createFeedPostParams CreateFeedPostParams Ні
broadcastId string Ні
isLive bool Ні
doSpamCheck bool Ні
skipDupCheck bool Ні

Відповідь

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

Приклад

Приклад createFeedPost
Copy Copy
1
2let createParams = CreateFeedPostParams(
3 content = "We're rolling out realtime comments to all users!",
4 title = "Realtime Comments Rollout",
5 url = "news/realtime-comments-rollout-2025",
6 authorId = "prod-team",
7 tags = @["release", "comments"]
8)
9
10let (response, httpResponse) = client.createFeedPost(
11 tenantId = "my-tenant-123",
12 createFeedPostParams = createParams,
13 broadcastId = "broadcast-2025-11",
14 isLive = true,
15 doSpamCheck = true,
16 skipDupCheck = false
17)
18
19if response.isSome:
20 let created = response.get()
21 echo "Feed post created, id: ", $created.id
22else:
23 echo "Failed to create feed post, HTTP status: ", $httpResponse.statusCode
24

Створити публічний пост стрічки Internal Link

Параметри

Name Type Required Description
tenantId string Так
createFeedPostParams CreateFeedPostParams Ні
broadcastId string Ні
sso string Ні

Відповідь

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

Приклад

Приклад createFeedPostPublic
Copy Copy
1
2let (response, httpResponse) = client.createFeedPostPublic(
3 tenantId = "my-tenant-123",
4 createFeedPostParams = CreateFeedPostParams(
5 title = "Product Launch Announcement",
6 content = "We just launched a new commenting feature to improve engagement.",
7 authorId = "team-product",
8 url = "news/product-launch",
9 tags = @["launch", "comments"],
10 isFeatured = false
11 ),
12 broadcastId = "broadcast-009",
13 sso = ""
14)
15if response.isSome:
16 let created = response.get()
17 discard created
18

Видалити публічний пост стрічки Internal Link

Parameters

Назва Тип Обов'язково Опис
tenantId string Так
postId string No
broadcastId string No
sso string No

Відповідь

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

Приклад

deleteFeedPostPublic Приклад
Copy Copy
1
2let (response, httpResponse) = client.deleteFeedPostPublic(
3 tenantId = "my-tenant-123",
4 postId = "post-456",
5 broadcastId = "broadcast-789",
6 sso = ""
7)
8if response.isSome:
9 let result = response.get()
10

Отримати пости стрічки Internal Link

Параметри

Назва Тип Обов'язкове Опис
tenantId string Yes
afterId string No
limit int No
tags seq[string] No

Відповідь

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

Приклад

Приклад getFeedPosts
Copy Copy
1
2let (response, httpResponse) = client.getFeedPosts(tenantId = "my-tenant-123", afterId = "post_abc123", limit = 20, tags = @["news", "sports"])
3if response.isSome:
4 let feed = response.get()
5 echo "Feed posts retrieved for tenant my-tenant-123"
6else:
7 echo "No feed posts returned, HTTP status: ", $httpResponse.status
8

Отримати публічні пости стрічки Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
afterId string Ні
limit int Ні
tags seq[string] Ні
sso string Ні
isCrawler bool Ні
includeUserInfo bool Ні

Відповідь

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

Приклад

Приклад getFeedPostsPublic
Copy Copy
1
2let (response, httpResponse) = client.getFeedPostsPublic(
3 tenantId = "my-tenant-123",
4 afterId = "",
5 limit = 0,
6 tags = @[],
7 sso = "",
8 isCrawler = false,
9 includeUserInfo = false
10)
11
12if response.isSome:
13 let feed = response.get()
14 echo feed
15

Отримати статистику постів стрічки Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
postIds seq[string] Ні
sso string Ні

Відповідь

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

Приклад

Приклад getFeedPostsStats
Copy Copy
1
2let (response, httpResponse) = client.getFeedPostsStats(
3 tenantId = "my-tenant-123",
4 postIds = @["news/article-2025-11-22", "opinion/market-trends-452"],
5 sso = ""
6)
7
8if response.isSome:
9 let stats = response.get()
10 discard stats
11

Отримати реакції користувача (публічні) Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
postIds seq[string] Ні
sso string Ні

Відповідь

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

Приклад

Приклад getUserReactsPublic
Copy Copy
1
2let (response, httpResponse) = client.getUserReactsPublic(tenantId = "my-tenant-123", postIds = @[], sso = "")
3if response.isSome:
4 let reacts = response.get()
5 discard reacts
6

Залишити реакцію на публічному пості Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
postId string Ні
reactBodyParams ReactBodyParams Ні
isUndo bool Ні
broadcastId string Ні
sso string Ні

Відповідь

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

Приклад

Приклад reactFeedPostPublic
Copy Copy
1
2let (response, httpResponse) = client.reactFeedPostPublic(
3 tenantId = "my-tenant-123",
4 postId = "news/article-title",
5 reactBodyParams = ReactBodyParams(),
6 isUndo = false,
7 broadcastId = "broadcast-456",
8 sso = ""
9)
10if response.isSome:
11 let result = response.get()
12 echo "Reaction result: ", result
13else:
14 echo "Reaction failed, HTTP response: ", httpResponse
15

Оновити пост стрічки Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні
feedPost FeedPost Ні

Відповідь

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

Приклад

Приклад updateFeedPost
Copy Copy
1
2let feedPost = FeedPost(
3 title: "Local Election Results",
4 content: "Updated vote counts across precincts",
5 tags: @["politics", "local"],
6 authorId: "journalist-32",
7 isPublished: true,
8 views: 124
9)
10
11let (response, httpResponse) = client.updateFeedPost(tenantId = "my-tenant-123", id = "post-456", feedPost = feedPost)
12
13if response.isSome:
14 let flagResp = response.get()
15 discard flagResp
16

Оновити публічний пост стрічки Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
postId string Ні
updateFeedPostParams UpdateFeedPostParams Ні
broadcastId string Ні
sso string Ні

Відповідь

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

Приклад

Приклад updateFeedPostPublic
Copy Copy
1
2var updateParams: UpdateFeedPostParams = UpdateFeedPostParams(
3 title = "Breaking: Service Update",
4 content = "We improved feed performance and UX for all users.",
5 tags = @["performance", "release"],
6 isPublic = true
7)
8
9let (response, httpResponse) = client.updateFeedPostPublic(
10 tenantId = "my-tenant-123",
11 postId = "post-456",
12 updateFeedPostParams = updateParams,
13 broadcastId = "broadcast-789",
14 sso = "sso-token-abc123"
15)
16
17if response.isSome:
18 let post = response.get()
19 echo "Updated post title: ", post.title
20 echo "HTTP status: ", httpResponse.status
21

Позначити коментар (публічний) Internal Link

Параметри

Назва Тип Обов'язковий Опис
tenantId string Так
commentId string Так
isFlagged bool Ні
sso string Ні

Відповідь

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

Приклад

flagCommentPublic Приклад
Copy Copy
1
2let (response, httpResponse) = client.flagCommentPublic(
3 tenantId = "my-tenant-123",
4 commentId = "comment-98765",
5 isFlagged = false,
6 sso = ""
7)
8if response.isSome:
9 let flagResult = response.get()
10 discard flagResult
11

Додати хештег Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
createHashTagBody CreateHashTagBody Ні

Відповідь

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

Приклад

Приклад addHashTag
Copy Copy
1
2let createBody = CreateHashTagBody(
3 name = "sports",
4 description = "Articles and discussions about sports",
5 aliases = @["sport", "athletics"],
6 isActive = true
7)
8
9let (response, httpResponse) = client.addHashTag(tenantId = "my-tenant-123", createHashTagBody = createBody)
10
11if response.isSome:
12 let added = response.get()
13 echo "HashTag added successfully"
14else:
15 echo "Failed to add HashTag"
16

Додати хештеги (масово) Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
bulkCreateHashTagsBody BulkCreateHashTagsBody Ні

Відповідь

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

Приклад

Приклад addHashTagsBulk
Copy Copy
1
2let bulkBody = BulkCreateHashTagsBody(
3 tags = @["breaking", "world-news", "economy"],
4 createdBy = "editor@dailynews.com",
5 replaceExisting = false
6)
7let (response, httpResponse) = client.addHashTagsBulk(tenantId = "newsroom-tenant-42", bulkCreateHashTagsBody = bulkBody)
8if response.isSome:
9 let created = response.get()
10 echo created
11else:
12 echo "AddHashTagsBulk failed:", httpResponse
13

Видалити хештег Internal Link

Параметри

Назва Тип Обов'язково Опис
tag string Ні
tenantId string Так
deleteHashTagRequest DeleteHashTagRequest Ні

Відповідь

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

Приклад

Приклад deleteHashTag
Copy Copy
1
2let (response, httpResponse) = client.deleteHashTag(tag = "breaking-news", tenantId = "my-tenant-123", deleteHashTagRequest = DeleteHashTagRequest())
3if response.isSome:
4 let result = response.get()
5 discard result
6

Отримати хештеги Internal Link

Параметри

Назва Тип Обов'язкове Опис
tenantId string Так
page float64 Ні

Відповідь

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

Приклад

Приклад getHashTags
Copy Copy
1
2let (response, httpResponse) = client.getHashTags(tenantId = "my-tenant-123", page = 1.0)
3if response.isSome:
4 let tags = response.get()
5 for t in tags:
6 echo t
7else:
8 echo "no hashtags found"
9

Часткове оновлення хештегу Internal Link

Параметри

Ім'я Тип Обов'язково Опис
tag string Ні
tenantId string Так
updateHashTagBody UpdateHashTagBody Ні

Відповідь

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

Приклад

Приклад patchHashTag
Copy Copy
1
2let (response, httpResponse) = client.patchHashTag(tag = "politics", tenantId = "my-tenant-123", updateHashTagBody = UpdateHashTagBody())
3
4if response.isSome:
5 let updated = response.get()
6 echo "Hashtag updated successfully"
7else:
8 echo "Failed to update hashtag, status:", httpResponse.status
9

Створити модератора Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
createModeratorBody CreateModeratorBody Ні

Відповідь

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

Приклад

Приклад createModerator
Copy Copy
1
2let createBody = CreateModeratorBody(
3 email = "moderator@news-site.com",
4 displayName = "News Moderator",
5 permissions = @["approve_comments", "delete_comments"],
6 isSuperAdmin = false
7)
8
9let (response, httpResponse) = client.createModerator(tenantId = "my-tenant-123", createModeratorBody = createBody)
10
11if response.isSome:
12 let moderator = response.get()
13 echo "Created moderator: ", $moderator
14

Видалити модератора Internal Link


Параметри

Назва Тип Обов'язково Опис
tenantId string Yes
id string No
sendEmail string No

Відповідь

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

Приклад

deleteModerator Приклад
Copy Copy
1
2let (response, httpResponse) = client.deleteModerator(tenantId = "my-tenant-123", id = "moderator-456", sendEmail = "false")
3if response.isSome:
4 let flagResp = response.get()
5 echo "Moderator deletion response: ", $flagResp
6else:
7 echo "No response body; HTTP status: ", $httpResponse.status
8

Отримати модератора Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні

Відповідь

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

Приклад

Приклад getModerator
Copy Copy
1
2let (response, httpResponse) = client.getModerator(tenantId = "my-tenant-123", id = "mod-98765")
3if response.isSome:
4 let moderator = response.get()
5 discard moderator
6

Отримати модераторів Internal Link

Параметри

Name Type Обов'язковий Опис
tenantId string Так
skip float64 Ні

Відповідь

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

Приклад

Приклад getModerators
Copy Copy
1
2let (response, httpResponse) = client.getModerators(tenantId = "my-tenant-123", skip = 0.0)
3if response.isSome:
4 let moderators = response.get()
5 echo "Moderators fetched successfully"
6 echo moderators
7

Оновити модератора Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні
updateModeratorBody UpdateModeratorBody Ні

Відповідь

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

Приклад

Приклад updateModerator
Copy Copy
1
2let updateBody = UpdateModeratorBody(
3 name: "Alicia Gomez",
4 email: "alicia.gomez@dailynews.com",
5 active: true,
6 roles: @["moderator"]
7)
8
9let (response, httpResponse) = client.updateModerator(tenantId = "my-tenant-123", id = "moderator-789", updateModeratorBody = updateBody)
10
11if response.isSome:
12 let updated = response.get()
13 echo "Moderator updated:", updated
14

Видалити кількість сповіщень Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні

Відповідь

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

Приклад

deleteNotificationCount Приклад
Copy Copy
1
2let (response, httpResponse) = client.deleteNotificationCount(tenantId = "my-tenant-123", id = "notif-456")
3if response.isSome:
4 let deleted = response.get()
5 echo "Deleted notification count:", deleted
6else:
7 echo "No response body; HTTP response:", httpResponse
8

Отримати кешовану кількість сповіщень Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні

Відповідь

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

Приклад

Приклад getCachedNotificationCount
Copy Copy
1
2let (response, httpResponse) = client.getCachedNotificationCount(tenantId = "my-tenant-123", id = "notif-thread-2026")
3if response.isSome:
4 let cached = response.get()
5 echo "Cached notification count: ", $cached
6

Отримати кількість сповіщень Internal Link

Параметри

Назва Тип Обов'язковий Опис
tenantId string Так
userId string Ні
urlId string Так
fromCommentId string Ні
viewed bool Ні

Відповідь

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

Приклад

Приклад getNotificationCount
Copy Copy
1
2let (response, httpResponse) = client.getNotificationCount(
3 tenantId = "acme-corp-tenant-12",
4 userId = "user-84",
5 urlId = "news/2026/market-update",
6 fromCommentId = "cmt-20251234",
7 viewed = false
8)
9
10if response.isSome:
11 let notificationData = response.get()
12 echo "Received notification data"
13else:
14 echo "No notification data"
15

Отримати сповіщення Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
userId string Ні
urlId string Так
fromCommentId string Ні
viewed bool Ні
skip float64 Ні

Відповідь

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

Приклад

Приклад getNotifications
Copy Copy
1
2let (response, httpResponse) = client.getNotifications(
3 tenantId = "fastcomments-tenant-42",
4 userId = "",
5 urlId = "news/latest-tech-innovations",
6 fromCommentId = "",
7 viewed = false,
8 skip = 0.0
9)
10
11if response.isSome:
12 let notifications = response.get()
13 echo "Received notifications: ", notifications
14else:
15 echo "No notifications, response: ", httpResponse
16

Оновити сповіщення Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні
updateNotificationBody UpdateNotificationBody Ні
userId string Ні

Відповідь

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

Приклад

Приклад updateNotification
Copy Copy
1
2let (response, httpResponse) = client.updateNotification(tenantId = "my-tenant-123",
3 id = "notif-456",
4 updateNotificationBody = UpdateNotificationBody(),
5 userId = "user-789")
6if response.isSome:
7 let updated = response.get()
8 echo "Updated notification id: ", $updated
9

Додати сторінку Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
createAPIPageData CreateAPIPageData Ні

Відповідь

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

Приклад

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

Видалити сторінку Internal Link

Parameters

Назва Тип Обов'язкове Опис
tenantId string Так
id string Ні

Відповідь

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

Приклад

Приклад deletePage
Copy Copy
1
2let (response, httpResponse) = client.deletePage(tenantId = "site-tenant-456", id = "news/winter-updates-2025")
3if response.isSome:
4 let deleted = response.get()
5 echo "DeletePageAPIResponse:", deleted
6else:
7 echo "Delete failed, HTTP response:", httpResponse
8

Отримати сторінку за URL/ID Internal Link

Parameters

Name Type Required Description
tenantId string Так
urlId string Так

Відповідь

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

Приклад

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

Отримати сторінки Internal Link


Параметри

Назва Тип Обов'язково Опис
tenantId string Так

Відповідь

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

Приклад

Приклад getPages
Copy Copy
1
2let (response, httpResponse) = client.getPages(tenantId = "news-site-456")
3if response.isSome:
4 let pages = response.get()
5 echo "Received pages response: ", pages
6else:
7 echo "No pages returned. HTTP response: ", httpResponse
8

Часткове оновлення сторінки Internal Link

Параметри

Name Type Required Description
tenantId string Так
id string Ні
updateAPIPageData UpdateAPIPageData Ні

Відповідь

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

Приклад

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

Видалити очікувану подію вебхука Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні

Відповідь

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

Приклад

Приклад deletePendingWebhookEvent
Copy Copy
1
2let (response, httpResponse) = client.deletePendingWebhookEvent(tenantId = "my-tenant-123", id = "wh_evt_6f1e3b2a")
3if response.isSome:
4 let flagResp = response.get()
5 discard flagResp
6

Отримати кількість очікуваних подій вебхука Internal Link

Параметри

Назва Тип Обов'язкове Опис
tenantId string Так
commentId string Так
externalId string Ні
eventType string Ні
domain string Ні
attemptCountGT float64 Ні

Відповідь

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

Приклад

Приклад getPendingWebhookEventCount
Copy Copy
1
2let (response, httpResponse) = client.getPendingWebhookEventCount(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-4567",
5 externalId = "",
6 eventType = "",
7 domain = "",
8 attemptCountGT = 0.0
9)
10if response.isSome:
11 let pending = response.get()
12 echo "Received pending webhook event count response: ", $pending
13else:
14 echo "No pending webhook event count returned, HTTP response: ", $httpResponse
15

Отримати очікувані події вебхука Internal Link

Параметри

Назва Type Обов'язковий Опис
tenantId string Так
commentId string Так
externalId string Ні
eventType string Ні
domain string Ні
attemptCountGT float64 Ні
skip float64 Ні

Відповідь

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

Приклад

Приклад getPendingWebhookEvents
Copy Copy
1
2let (response, httpResponse) = client.getPendingWebhookEvents(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-456789",
5 externalId = "",
6 eventType = "",
7 domain = "",
8 attemptCountGT = 0.0,
9 skip = 0.0
10)
11if response.isSome:
12 let pending = response.get()
13 discard pending
14 echo "Received pending webhook events"
15else:
16 echo "No pending webhook events"
17

Створити конфігурацію питання Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
createQuestionConfigBody CreateQuestionConfigBody Ні

Відповідь

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

Приклад

Приклад createQuestionConfig
Copy Copy
1
2let body = CreateQuestionConfigBody(
3 key = "recommendation",
4 question = "Would you recommend this article to a friend?",
5 required = false,
6 inputType = "radio",
7 options = @["Yes", "No", "Maybe"]
8)
9
10let (response, httpResponse) = client.createQuestionConfig(tenantId = "my-tenant-123", createQuestionConfigBody = body)
11
12if response.isSome:
13 let config = response.get()
14 discard config
15

Видалити конфігурацію питання Internal Link


Параметри

Ім'я Тип Обов'язково Опис
tenantId string Так
id string Ні

Відповідь

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

Приклад

deleteQuestionConfig Приклад
Copy Copy
1
2let (response, httpResponse) = client.deleteQuestionConfig(tenantId = "my-tenant-123", id = "qcfg-456")
3if response.isSome:
4 let respVal = response.get()
5 echo "Delete succeeded for tenant my-tenant-123"
6else:
7 echo "Delete returned no data (status: ", $httpResponse.status, ")"
8

Отримати конфігурацію питання Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні

Відповідь

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

Приклад

Приклад getQuestionConfig
Copy Copy
1
2let (response, httpResponse) = client.getQuestionConfig(tenantId = "my-tenant-123", id = "qcfg-98765")
3if response.isSome:
4 let config = response.get()
5 echo "Received question config for tenant:", " my-tenant-123"
6

Отримати конфігурації запитань Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
skip float64 Ні

Відповідь

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

Приклад

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

Оновити конфігурацію питання Internal Link

Параметри

Назва Тип Обов'язковий Опис
tenantId string Так
id string Ні
updateQuestionConfigBody UpdateQuestionConfigBody Ні

Відповідь

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

Приклад

Приклад updateQuestionConfig
Copy Copy
1
2let (response, httpResponse) = client.updateQuestionConfig(
3 tenantId = "my-tenant-123",
4 id = "q-config-456",
5 updateQuestionConfigBody = UpdateQuestionConfigBody()
6)
7if response.isSome:
8 let updated = response.get()
9 discard updated
10 echo "Question config updated"
11else:
12 echo "Update did not return a result"
13

Створити результат питання Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
createQuestionResultBody CreateQuestionResultBody Ні

Відповідь

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

Приклад

Приклад createQuestionResult
Copy Copy
1
2let (response, httpResponse) = client.createQuestionResult(tenantId = "my-tenant-123",
3 createQuestionResultBody = CreateQuestionResultBody(questionId: "q-456",
4 userId: "user-789",
5 correct: true,
6 score: 9,
7 answers: @["B", "D"]))
8if response.isSome:
9 let result = response.get()
10 echo result
11

Видалити результат питання Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні

Відповідь

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

Приклад

Приклад deleteQuestionResult
Copy Copy
1
2let (response, httpResponse) = client.deleteQuestionResult(tenantId = "my-tenant-123", id = "question-result-789")
3if response.isSome:
4 let result = response.get()
5 echo "Deleted question result:", result
6else:
7 echo "No result returned, HTTP status:", $httpResponse.status
8

Отримати результат питання Internal Link

Параметри

Name Type Required Description
tenantId string Так
id string Ні

Відповідь

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

Приклад

getQuestionResult Приклад
Copy Copy
1
2let (response, httpResponse) = client.getQuestionResult(tenantId = "my-tenant-123", id = "question-456")
3if response.isSome:
4 let result = response.get()
5 echo "Received question result:"
6 echo result
7else:
8 echo "No question result returned"
9

Отримати результати запитань Internal Link

Параметри

Назва Тип Обов'язковий Опис
tenantId string Так
urlId string Так
userId string Ні
startDate string Ні
questionId string Ні
questionIds string Ні
skip float64 Ні

Відповідь

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

Приклад

getQuestionResults Приклад
Copy Copy
1
2let (response, httpResponse) = client.getQuestionResults(
3 tenantId = "my-tenant-123",
4 urlId = "news/politics/election-2024",
5 userId = "user-9876",
6 startDate = "2024-01-01T00:00:00Z",
7 questionId = "q-user-satisfaction",
8 questionIds = "q-user-satisfaction,q-engagement",
9 skip = 0.0
10)
11
12if response.isSome:
13 let results = response.get()
14 echo "Got question results: ", $results
15else:
16 echo "No results, HTTP status: ", httpResponse.status
17

Оновити результат питання Internal Link

Параметри

Назва Type Обов'язково Опис
tenantId string Так
id string Ні
updateQuestionResultBody UpdateQuestionResultBody Ні

Відповідь

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

Приклад

Приклад updateQuestionResult
Copy Copy
1
2let (response, httpResponse) = client.updateQuestionResult(
3 tenantId = "my-tenant-123",
4 id = "question-456",
5 updateQuestionResultBody = UpdateQuestionResultBody(
6 result = "approved",
7 reviewerId = "moderator-42",
8 notes = "Valid question, no action required",
9 isSpam = false
10 )
11)
12if response.isSome:
13 let flagResponse = response.get()
14 discard flagResponse
15

Агрегувати результати запитань Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
questionId string Ні
questionIds seq[string] Ні
urlId string Так
timeBucket AggregateTimeBucket Ні
startDate string Ні
forceRecalculate bool Ні

Відповідь

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

Приклад

Приклад aggregateQuestionResults
Copy Copy
1
2let (response, httpResponse) = client.aggregateQuestionResults(
3 tenantId = "my-tenant-123",
4 questionId = "",
5 questionIds = @[],
6 urlId = "news/economy/budget-2025",
7 timeBucket = AggregateTimeBucket(0),
8 startDate = "",
9 forceRecalculate = false
10)
11
12if response.isSome:
13 let aggResults = response.get()
14 discard aggResults
15

Масова агрегація результатів запитань Internal Link

Параметри

Name Type Required Description
tenantId string Так
bulkAggregateQuestionResultsRequest BulkAggregateQuestionResultsRequest Ні
forceRecalculate bool Ні

Відповідь

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

Приклад

Приклад bulkAggregateQuestionResults
Copy Copy
1
2let request = BulkAggregateQuestionResultsRequest()
3let (response, httpResponse) = client.bulkAggregateQuestionResults(tenantId = "my-tenant-123", bulkAggregateQuestionResultsRequest = request, forceRecalculate = false)
4if response.isSome:
5 let aggregated = response.get()
6 echo aggregated
7

Поєднати коментарі з результатами запитань Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
questionId string Ні
questionIds seq[string] Ні
urlId string Так
startDate string Ні
forceRecalculate bool Ні
minValue float64 Ні
maxValue float64 Ні
limit float64 Ні

Відповідь

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

Приклад

Приклад combineCommentsWithQuestionResults
Copy Copy
1
2let (response, httpResponse) = client.combineCommentsWithQuestionResults(
3 tenantId = "my-tenant-123",
4 questionId = "q-9876",
5 questionIds = @["q-9876", "q-9877"],
6 urlId = "news/article-title",
7 startDate = "2025-01-01T00:00:00Z",
8 forceRecalculate = false,
9 minValue = 1.0,
10 maxValue = 5.0,
11 limit = 100.0
12)
13
14if response.isSome:
15 let combined = response.get()
16 discard combined
17

Додати користувача SSO Internal Link

Параметри

Name Type Required Description
tenantId string Так
createAPISSOUserData CreateAPISSOUserData Ні

Відповідь

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

Приклад

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

Видалити користувача SSO Internal Link

Параметри

Name Type Required Description
tenantId string Так
id string Ні
deleteComments bool Ні
commentDeleteMode string Ні

Відповідь

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

Приклад

Приклад deleteSSOUser
Copy Copy
1
2let (response, httpResponse) = client.deleteSSOUser(tenantId = "my-tenant-123", id = "sso-user-9876", deleteComments = true, commentDeleteMode = "hard")
3if response.isSome:
4 let deleted = response.get()
5 discard deleted
6else:
7 discard httpResponse
8

Отримати користувача SSO за email Internal Link

Параметри

Name Type Required Description
tenantId string Так
email string Ні

Відповідь

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

Приклад

Приклад getSSOUserByEmail
Copy Copy
1
2let (response, httpResponse) = client.getSSOUserByEmail(tenantId = "my-tenant-123", email = "alice@newsco.com")
3if response.isSome:
4 let ssoUser = response.get()
5 echo "SSO user found: ", ssoUser.email
6else:
7 echo "No SSO user found. HTTP status: ", httpResponse.status
8

Отримати користувача SSO за id Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Yes
id string No

Відповідь

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

Приклад

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

Отримати користувачів SSO Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
skip int Ні

Відповідь

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

Приклад

getSSOUsers Приклад
Copy Copy
1
2let (response, httpResponse) = client.getSSOUsers(tenantId = "my-tenant-123", skip = 0)
3if response.isSome:
4 let ssoUsers = response.get()
5 echo "Fetched SSO users:"
6 echo ssoUsers
7else:
8 echo "No SSO users returned, HTTP status: ", httpResponse.statusCode
9

Часткове оновлення користувача SSO Internal Link

Параметри

Назва Тип Обов'язковий Опис
tenantId string Так
id string Ні
updateAPISSOUserData UpdateAPISSOUserData Ні
updateComments bool Ні

Відповідь

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

Приклад

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

Замінити користувача SSO Internal Link

Параметри

Name Type Required Description
tenantId string Так
id string Ні
updateAPISSOUserData UpdateAPISSOUserData Ні
updateComments bool Ні

Відповідь

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

Приклад

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

Створити підписку Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
createAPIUserSubscriptionData CreateAPIUserSubscriptionData Ні

Відповідь

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

Приклад

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

Видалити підписку Internal Link

Параметри

Name Type Required Description
tenantId string Yes
id string No
userId string No

Відповідь

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

Приклад

Приклад deleteSubscription
Copy Copy
1
2let (response, httpResponse) = client.deleteSubscription(tenantId = "my-tenant-123", id = "sub-98765", userId = "user-456")
3if response.isSome:
4 let deleteResp = response.get()
5 echo "Delete subscription response received"
6else:
7 echo "No subscription response"
8

Отримати підписки Internal Link

Параметри

Назва Тип Обов'язкове Опис
tenantId string Так
userId string Ні

Відповідь

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

Приклад

Приклад getSubscriptions
Copy Copy
1
2let (response, httpResponse) = client.getSubscriptions(tenantId = "my-tenant-123", userId = "")
3if response.isSome:
4 let subscriptions = response.get()
5 discard subscriptions
6

Отримати щоденне використання тенанта Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
yearNumber float64 Ні
monthNumber float64 Ні
dayNumber float64 Ні
skip float64 Ні

Відповідь

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

Приклад

getTenantDailyUsages Приклад
Copy Copy
1
2let (response, httpResponse) = client.getTenantDailyUsages(
3 tenantId = "my-tenant-123",
4 yearNumber = 2025.0,
5 monthNumber = 6.0,
6 dayNumber = 15.0,
7 skip = 0.0
8)
9
10if response.isSome:
11 let usages = response.get()
12 echo usages
13else:
14 echo "No daily usages returned"
15

Створити пакет тенанта Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
createTenantPackageBody CreateTenantPackageBody Ні

Відповідь

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

Приклад

Приклад createTenantPackage
Copy Copy
1
2let packageBody = CreateTenantPackageBody(
3 packageName = "premium-comments",
4 description = "Premium moderation package for news site",
5 planId = "plan-pro-2024",
6 seats = 100,
7 enabled = true,
8 features = @["moderation", "analytics", "sentiment"]
9)
10
11let (response, httpResponse) = client.createTenantPackage(tenantId = "my-tenant-123", createTenantPackageBody = packageBody)
12
13if response.isSome:
14 let pkg = response.get()
15 echo "Created package ID: ", pkg.packageId
16 echo "Package name: ", pkg.packageName
17else:
18 echo "Failed to create package, HTTP status: ", httpResponse.status.code
19

Видалити пакет тенанта Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні

Відповідь

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

Приклад

Приклад deleteTenantPackage
Copy Copy
1
2let (response, httpResponse) = client.deleteTenantPackage(tenantId = "my-tenant-123", id = "pkg-789")
3if response.isSome:
4 let deleted = response.get()
5 echo "Successfully deleted tenant package"
6

Отримати пакет тенанта Internal Link

Параметри

Назва Тип Обов'язковий Опис
tenantId string Так
id string Ні

Відповідь

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

Приклад

Приклад getTenantPackage
Copy Copy
1
2let (response, httpResponse) = client.getTenantPackage(tenantId = "my-tenant-123", id = "pkg-premium-001")
3if response.isSome:
4 let pkg = response.get()
5 echo pkg
6else:
7 echo "No package found for tenant"
8

Отримати пакети тенанта Internal Link

Параметри

Назва Type Обов'язковий Опис
tenantId string Так
skip float64 Ні

Відповідь

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

Приклад

Приклад getTenantPackages
Copy Copy
1
2let (response, httpResponse) = client.getTenantPackages(tenantId = "my-tenant-123", skip = 0.0)
3if response.isSome:
4 let packages = response.get()
5 echo "Received packages for tenant:", " my-tenant-123"
6 echo packages
7else:
8 echo "No packages found, status:", httpResponse.status
9

Замінити пакет тенанта Internal Link

Параметри

Назва Type Обов'язково Опис
tenantId string Так
id string Ні
replaceTenantPackageBody ReplaceTenantPackageBody Ні

Відповідь

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

Приклад

Приклад replaceTenantPackage
Copy Copy
1
2let replaceBody = ReplaceTenantPackageBody(
3 packageName = "Community Pro",
4 seats = 500,
5 enableModeration = true,
6 features = @["moderation", "analytics", "single-sign-on"]
7)
8
9let (response, httpResponse) = client.replaceTenantPackage(
10 tenantId = "my-tenant-123",
11 id = "community-pro",
12 replaceTenantPackageBody = replaceBody
13)
14
15if response.isSome:
16 let flagResp = response.get()
17 echo "Package replaced for tenant: ", "my-tenant-123"
18 discard flagResp
19

Оновити пакет тенанта Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні
updateTenantPackageBody UpdateTenantPackageBody Ні

Відповідь

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

Приклад

Приклад updateTenantPackage
Copy Copy
1
2let (response, httpResponse) = client.updateTenantPackage(tenantId = "my-tenant-123", id = "pkg-premium", updateTenantPackageBody = UpdateTenantPackageBody())
3if response.isSome:
4 let updated = response.get()
5 echo "Updated package received:", updated
6else:
7 echo "Update failed, HTTP status: ", httpResponse.status
8

Створити користувача тенанта Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
createTenantUserBody CreateTenantUserBody Ні

Відповідь

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

Приклад

Приклад виклику createTenantUser
Copy Copy
1
2let createBody = CreateTenantUserBody(
3 email = "jane.doe@acmepub.com",
4 displayName = "Jane Doe",
5 password = "S3cur3P@ssw0rd",
6 roles = @["moderator", "editor"],
7 disabled = false
8)
9let (response, httpResponse) = client.createTenantUser(tenantId = "my-tenant-123", createTenantUserBody = createBody)
10if response.isSome:
11 let createdUser = response.get()
12 echo createdUser
13

Видалити користувача тенанта Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні
deleteComments string Ні
commentDeleteMode string Ні

Відповідь

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

Приклад

Приклад використання deleteTenantUser
Copy Copy
1
2let (response, httpResponse) = client.deleteTenantUser(tenantId = "my-tenant-123", id = "user-456", deleteComments = "", commentDeleteMode = "")
3if response.isSome:
4 let flagResp = response.get()
5 echo flagResp
6

Отримати користувача тенанта Internal Link


Параметри

Name Type Required Description
tenantId string Так
id string Ні

Відповідь

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

Приклад

getTenantUser Приклад
Copy Copy
1
2let (response, httpResponse) = client.getTenantUser(tenantId = "my-tenant-123", id = "user-456")
3if response.isSome:
4 let tenantUser = response.get()
5 discard tenantUser
6else:
7 discard httpResponse
8

Отримати користувачів тенанта Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
skip float64 Ні

Відповідь

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

Приклад

Приклад getTenantUsers
Copy Copy
1
2let (response, httpResponse) = client.getTenantUsers(tenantId = "my-tenant-123", skip = 0.0)
3if response.isSome:
4 let tenantUsers = response.get()
5 echo "Fetched tenant users for my-tenant-123"
6 discard tenantUsers
7else:
8 echo "No users returned"
9 discard httpResponse
10

Замінити користувача тенанта Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні
replaceTenantUserBody ReplaceTenantUserBody Ні
updateComments string Ні

Відповідь

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

Приклад

Приклад replaceTenantUser
Copy Copy
1
2let replaceBody = ReplaceTenantUserBody(name: "Jane Doe", email: "jane.doe@example.com", roles: @["moderator", "contributor"], banned: false)
3let (response, httpResponse) = client.replaceTenantUser(tenantId = "my-tenant-123", id = "user-789", replaceTenantUserBody = replaceBody, updateComments = "true")
4if response.isSome:
5 let updated = response.get()
6 echo updated
7else:
8 echo "No response returned"
9

Параметри

Назва Тип Обов'язковий Опис
tenantId string Так
id string Ні
redirectURL string Ні

Відповідь

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

Приклад

sendLoginLink Приклад
Copy Copy
1
2let (response, httpResponse) = client.sendLoginLink(tenantId = "fastcomments-tenant-42", id = "user-9876", redirectURL = "https://news.example.com/articles/2026/fastcomments-login")
3if response.isSome:
4 let loginResp = response.get()
5 echo "Login link sent successfully"
6else:
7 echo "Failed to send login link"
8

Оновити користувача тенанта Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні
updateTenantUserBody UpdateTenantUserBody Ні
updateComments string Ні

Відповідь

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

Приклад

Приклад updateTenantUser
Copy Copy
1
2var body: UpdateTenantUserBody
3body.email = "jane.doe@example.com"
4body.displayName = "Jane Doe"
5body.roles = @["moderator", "editor"]
6body.isActive = true
7
8let (response, httpResponse) = client.updateTenantUser(
9 tenantId = "my-tenant-123",
10 id = "user-789",
11 updateTenantUserBody = body,
12 updateComments = "Promoted user to moderator and editor roles"
13)
14
15if response.isSome:
16 let flagResp = response.get()
17 echo flagResp
18else:
19 echo "Update failed, status: ", httpResponse.status
20

Створити тенанта Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
createTenantBody CreateTenantBody Ні

Відповідь

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

Приклад

Приклад createTenant
Copy Copy
1
2let (response, httpResponse) = client.createTenant(tenantId = "my-tenant-123", createTenantBody = CreateTenantBody(
3 name: "My Tenant 123",
4 domain: "mytenant.example.com",
5 plan: "pro",
6 isActive: true,
7 allowedOrigins: @["https://www.example.com", "https://admin.example.com"]
8))
9if response.isSome:
10 let tenantInfo = response.get()
11 discard tenantInfo
12

Видалити тенанта Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Yes
id string No
sure string No

Відповідь

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

Приклад

Приклад deleteTenant
Copy Copy
1
2let (response, httpResponse) = client.deleteTenant(tenantId = "my-tenant-123", id = "", sure = "")
3
4if response.isSome:
5 let flagResp = response.get()
6 echo "Tenant deletion response received for tenant: ", "my-tenant-123"
7 discard flagResp
8else:
9 echo "No response body returned for tenant deletion"
10

Отримати тенанта Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні

Відповідь

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

Приклад

Приклад getTenant
Copy Copy
1
2let (response, httpResponse) = client.getTenant(tenantId = "my-tenant-123", id = "")
3if response.isSome:
4 let tenant = response.get()
5 echo "Tenant retrieved"
6 discard tenant
7else:
8 echo "No tenant found"
9 echo "HTTP status:", httpResponse.status
10

Отримати тенантів Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
meta string Ні
skip float64 Ні

Відповідь

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

Приклад

Приклад getTenants
Copy Copy
1
2let (response, httpResponse) = client.getTenants(tenantId = "my-tenant-123", meta = "include=details", skip = 0.0)
3if response.isSome:
4 let tenants = response.get()
5 echo "Received tenants: ", repr(tenants)
6else:
7 echo "Failed to retrieve tenants"
8

Оновити тенанта Internal Link


Параметри

Name Type Required Description
tenantId string Так
id string Ні
updateTenantBody UpdateTenantBody Ні

Відповідь

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

Приклад

Приклад updateTenant
Copy Copy
1
2let (response, httpResponse) = client.updateTenant(
3 tenantId = "my-tenant-123",
4 id = "tenant-456",
5 updateTenantBody = UpdateTenantBody()
6)
7if response.isSome:
8 let flagResponse = response.get()
9 echo flagResponse
10else:
11 echo "No body returned; HTTP status: ", httpResponse.status
12

Завантажити зображення Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
file string Ні
sizePreset SizePreset Ні
urlId string Так

Відповідь

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

Приклад

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

Отримати прогрес значка користувача за id Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні

Відповідь

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

Приклад

getUserBadgeProgressById Приклад
Copy Copy
1
2let (response, httpResponse) = client.getUserBadgeProgressById(tenantId = "my-tenant-123", id = "editor-badge-42")
3if response.isSome:
4 let badgeProgress = response.get()
5 echo "Badge progress received:"
6 echo badgeProgress
7else:
8 echo "No badge progress found for tenant 'my-tenant-123' and id 'editor-badge-42'"
9 echo httpResponse
10

Отримати прогрес значка за id користувача Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
userId string Ні

Відповідь

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

Приклад

Приклад getUserBadgeProgressByUserId
Copy Copy
1
2let (response, httpResponse) = client.getUserBadgeProgressByUserId(tenantId = "my-tenant-123", userId = "user-456")
3if response.isSome:
4 let badgeProgress = response.get()
5 echo "Badge progress retrieved for user-456"
6else:
7 echo "No badge progress found, HTTP status: ", $httpResponse.status
8

Отримати список прогресу значків користувача Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Yes
userId string No
limit float64 No
skip float64 No

Відповідь

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

Приклад

Приклад getUserBadgeProgressList
Copy Copy
1
2let (response, httpResponse) = client.getUserBadgeProgressList(tenantId = "my-tenant-123", userId = "user-9823", limit = 25.0, skip = 0.0)
3if response.isSome:
4 let badgeProgress = response.get()
5 echo "Badge progress received:", badgeProgress
6else:
7 echo "No badge progress. HTTP response:", httpResponse.status
8

Створити значок користувача Internal Link

Параметри

Назва Тип Обов'язковий Опис
tenantId string Так
createUserBadgeParams CreateUserBadgeParams Ні

Відповідь

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

Приклад

Приклад createUserBadge
Copy Copy
1
2let (response, httpResponse) = client.createUserBadge(tenantId = "my-tenant-123",
3 createUserBadgeParams = CreateUserBadgeParams(userId = "user-987", badgeId = "top-commenter"))
4if response.isSome:
5 let createdBadge = response.get()
6 echo "Created badge for user: ", createdBadge.userId
7else:
8 echo "Failed to create badge, status: ", $httpResponse.status
9

Видалити значок користувача Internal Link


Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні

Відповідь

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

Приклад

Приклад deleteUserBadge
Copy Copy
1
2let (response, httpResponse) = client.deleteUserBadge(tenantId = "my-tenant-123", id = "badge-456")
3if response.isSome:
4 let updated = response.get()
5 discard updated
6

Отримати значок користувача Internal Link

Параметри

Назва Тип Обов'язкове Опис
tenantId string Так
id string Ні

Відповідь

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

Приклад

Приклад getUserBadge
Copy Copy
1
2let (response, httpResponse) = client.getUserBadge(tenantId = "my-tenant-123", id = "")
3
4if response.isSome:
5 let badge = response.get()
6 discard badge
7

Отримати значки користувача Internal Link

Параметри

Назва Тип Обов'язкове Опис
tenantId string Так
userId string Ні
badgeId string Ні
displayedOnComments bool Ні
limit float64 Ні
skip float64 Ні

Відповідь

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

Приклад

Приклад getUserBadges
Copy Copy
1
2let (response, httpResponse) = client.getUserBadges(
3 tenantId = "my-tenant-123",
4 userId = "user-789",
5 badgeId = "top-commenter",
6 displayedOnComments = true,
7 limit = 50.0,
8 skip = 0.0
9)
10
11if response.isSome:
12 let badges = response.get()
13 echo "Retrieved badges: ", $badges
14

Оновити значок користувача Internal Link

Параметри

Назва Тип Обов'язковий Опис
tenantId string Так
id string Ні
updateUserBadgeParams UpdateUserBadgeParams Ні

Відповідь

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

Приклад

Приклад updateUserBadge
Copy Copy
1
2let updateParams = UpdateUserBadgeParams(
3 name = "Top Contributor",
4 description = "Awarded for consistent high-quality comments",
5 active = true,
6 tags = @["community", "milestone"]
7)
8
9let (response, httpResponse) = client.updateUserBadge(tenantId = "my-tenant-123", id = "badge-456", updateUserBadgeParams = updateParams)
10
11if response.isSome:
12 let updated = response.get()
13 echo "Badge updated successfully"
14else:
15 echo "Failed to update badge, HTTP status: ", $httpResponse.status
16

Отримати кількість сповіщень користувача Internal Link

Параметри

Назва Тип Обов'язковий Опис
tenantId string Так
sso string Ні

Відповідь

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

Приклад

Приклад getUserNotificationCount
Copy Copy
1
2let (response, httpResponse) = client.getUserNotificationCount(tenantId = "my-tenant-123", sso = "")
3if response.isSome:
4 let notificationData = response.get()
5 echo "Received notification data: ", $notificationData
6else:
7 echo "No notification data returned. HTTP response: ", $httpResponse.status
8

Отримати сповіщення користувача Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
pageSize int Ні
afterId string Ні
includeContext bool Ні
afterCreatedAt int64 Ні
unreadOnly bool Ні
dmOnly bool Ні
noDm bool Ні
includeTranslations bool Ні
sso string Ні

Відповідь

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

Приклад

Приклад getUserNotifications
Copy Copy
1
2let (response, httpResponse) = client.getUserNotifications(
3 tenantId = "my-tenant-123",
4 pageSize = 50,
5 afterId = "notif_9a1b2c3d",
6 includeContext = true,
7 afterCreatedAt = int64(1699999999000),
8 unreadOnly = false,
9 dmOnly = false,
10 noDm = false,
11 includeTranslations = false,
12 sso = ""
13)
14if response.isSome:
15 let notifications = response.get()
16 discard notifications
17else:
18 discard httpResponse
19

Скинути кількість сповіщень користувача Internal Link

Параметри

Назва Тип Обов'язкове Опис
tenantId string Так
sso string Ні

Відповідь

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

Приклад

Приклад resetUserNotificationCount
Copy Copy
1
2let (response, httpResponse) = client.resetUserNotificationCount(tenantId = "my-tenant-123", sso = "sso-jwt-9a8b7c6d")
3if response.isSome:
4 let resetResult = response.get()
5 echo resetResult
6else:
7 echo "Reset failed, status: ", httpResponse.status
8

Скинути сповіщення користувача Internal Link

Параметри

Name Type Обов'язковий Опис
tenantId string Так
afterId string Ні
afterCreatedAt int64 Ні
unreadOnly bool Ні
dmOnly bool Ні
noDm bool Ні
sso string Ні

Відповідь

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

Приклад

Приклад resetUserNotifications
Copy Copy
1
2let (response, httpResponse) = client.resetUserNotifications(
3 tenantId = "my-tenant-123",
4 afterId = "",
5 afterCreatedAt = int64(0),
6 unreadOnly = false,
7 dmOnly = false,
8 noDm = false,
9 sso = ""
10)
11
12if response.isSome:
13 let result = response.get()
14

Оновити статус підписки користувача на сповіщення про коментарі Internal Link


Параметри

Назва Тип Обов'язково Опис
tenantId string Так
notificationId string Ні
optedInOrOut string Ні
commentId string Так
sso string Ні

Відповідь

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

Приклад

Приклад updateUserNotificationCommentSubscriptionStatus
Copy Copy
1
2let (response, httpResponse) = client.updateUserNotificationCommentSubscriptionStatus(
3 tenantId = "my-tenant-123",
4 notificationId = "notif-456",
5 optedInOrOut = "opted_in",
6 commentId = "cmt-789",
7 sso = "sso-token-abc"
8)
9if response.isSome:
10 let updatedStatus = response.get()
11 discard updatedStatus
12else:
13 discard httpResponse
14

Оновити статус підписки користувача на сповіщення сторінки Internal Link

Параметри

Назва Тип Обов'язкове Опис
tenantId string Так
urlId string Так
url string Ні
pageTitle string Ні
subscribedOrUnsubscribed string Ні
sso string Ні

Відповідь

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

Приклад

Приклад updateUserNotificationPageSubscriptionStatus
Copy Copy
1
2let (response, httpResponse) = client.updateUserNotificationPageSubscriptionStatus(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-2025-11-22",
5 url = "https://example.com/news/article-2025-11-22",
6 pageTitle = "Breaking News: Market Update",
7 subscribedOrUnsubscribed = "subscribed",
8 sso = "sso-token-abc123"
9)
10
11if response.isSome:
12 let result = response.get()
13 discard result
14

Оновити статус сповіщення користувача Internal Link

Параметри

Назва Тип Обов'язкове Опис
tenantId string Так
notificationId string Ні
newStatus string Ні
sso string Ні

Відповідь

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

Приклад

Приклад updateUserNotificationStatus
Copy Copy
1
2let (response, httpResponse) = client.updateUserNotificationStatus(
3 tenantId = "my-tenant-123",
4 notificationId = "notif-456",
5 newStatus = "read",
6 sso = "sso-abc-789"
7)
8if response.isSome:
9 let updateResp = response.get()
10 discard updateResp
11

Отримати статуси присутності користувачів Internal Link

Параметри

Name Type Required Description
tenantId string Так
urlIdWS string Ні
userIds string Ні

Відповідь

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

Приклад

Приклад getUserPresenceStatuses
Copy Copy
1
2let (response, httpResponse) = client.getUserPresenceStatuses(
3 tenantId = "my-tenant-123",
4 urlIdWS = "news/2025/technology/ai-ethics",
5 userIds = "user-789,user-456"
6)
7if response.isSome:
8 let presence = response.get()
9 echo "Presence received: ", presence
10else:
11 echo "No presence information returned, HTTP status: ", httpResponse.status.code
12

Пошук користувачів Internal Link


Параметри

Назва Тип Обов'язково Опис
tenantId string Так
urlId string Так
usernameStartsWith string Ні
mentionGroupIds seq[string] Ні
sso string Ні

Відповідь

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

Приклад

Приклад використання searchUsers
Copy Copy
1
2let (response, httpResponse) = client.searchUsers(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 usernameStartsWith = "jo",
6 mentionGroupIds = @["editors", "sports-team"],
7 sso = "sso-abc-456"
8)
9
10if response.isSome:
11 let users = response.get()
12 echo "Users found: ", users
13else:
14 echo "No users found; HTTP status: ", httpResponse.status
15

Отримати користувача Internal Link

Параметри

Назва Тип Обов'язковий Опис
tenantId string Так
id string Ні

Відповідь

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

Приклад

Приклад getUser
Copy Copy
1
2let (response, httpResponse) = client.getUser(tenantId = "my-tenant-123", id = "user-9876")
3if response.isSome:
4 let user = response.get()
5 echo "User:", user
6else:
7 echo "No user found. HTTP response:", httpResponse
8

Створити голос Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
commentId string Так
direction string Ні
userId string Ні
anonUserId string Ні

Відповідь

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

Приклад

Приклад createVote
Copy Copy
1
2let (response, httpResponse) = client.createVote(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-987654321",
5 direction = "up",
6 userId = "user-42",
7 anonUserId = ""
8)
9if response.isSome:
10 let vote = response.get()
11 echo "Vote recorded: ", $vote
12else:
13 echo "Vote not created, HTTP response: ", $httpResponse
14

Видалити голос Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
id string Ні
editKey string Ні

Відповідь

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

Приклад

Приклад deleteVote
Copy Copy
1
2let (response, httpResponse) = client.deleteVote(tenantId = "my-tenant-123", id = "", editKey = "")
3if response.isSome:
4 let deleted = response.get()
5 discard deleted
6

Отримати голоси Internal Link

Параметри

Назва Тип Обов'язково Опис
tenantId string Так
urlId string Так

Відповідь

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

Приклад

Приклад getVotes
Copy Copy
1
2let (response, httpResponse) = client.getVotes(tenantId = "my-tenant-123", urlId = "news/2026/major-update")
3if response.isSome:
4 let votes = response.get()
5 discard votes
6else:
7 discard httpResponse
8

Отримати голоси користувача Internal Link

Параметри

Назва Тип Обов'язкове Опис
tenantId string Так
urlId string Так
userId string Ні
anonUserId string Ні

Відповідь

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

Приклад

Приклад getVotesForUser
Copy Copy
1
2let (response, httpResponse) = client.getVotesForUser(
3 tenantId = "my-tenant-123",
4 urlId = "news/economy-update-2026",
5 userId = "user-789",
6 anonUserId = ""
7)
8
9if response.isSome:
10 let votes = response.get()
11 discard votes
12

Потрібна допомога?

Якщо ви зіткнулися з проблемами або маєте запитання щодо Nim SDK, будь ласка:

Участь у проєкті

Внески вітаються! Будь ласка, відвідайте репозиторій на GitHub для інструкцій щодо внеску.