FastComments.com

FastComments Nim SDK


Ово је званични Nim SDK за FastComments.

Званични Nim SDK за FastComments API

Репозиторијум

Погледајте на 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 позивима. Када примите догађаје, добићете овај 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

Параметри

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

getAuditLogs 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

blockFromCommentPublic Internal Link

Параметри

Име Тип Обавезно Опис
tenantId string Да
commentId string Да
publicBlockFromCommentParams PublicBlockFromCommentParams Не
sso string Не

Одговор

Враћа: Option[BlockFromCommentPublic_200_response]

Пример

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

unBlockCommentPublic 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

checkedCommentsForBlocked 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

blockUserFromComment 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

createCommentPublic Internal Link

Параметри

Name Type Required Description
tenantId string Да
urlId string Да
broadcastId string Не
commentData CommentData Не
sessionId string Не
sso string Не

Одговор

Враћа: 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

deleteComment Internal Link

Parametri

Name Type Required Description
tenantId string Da
id string Ne
contextUserId string Ne
isLive bool Ne

Odgovor

Vraća: Option[DeleteComment_200_response]

Primer

deleteComment Primer
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

deleteCommentPublic Internal Link

Параметри

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

deleteCommentVote 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

flagComment Internal Link

Параметри

Име Тип Обавезно Опис
tenantId string Да
id string Не
userId string Не
anonUserId string Не

Одговор

Враћа: 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

getComment Internal Link

Параметри

Име Тип Обавезно Опис
tenantId string Да
id string Не

Одговор

Враћа: 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

getComments Internal Link

Параметри

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

getCommentsPublic Internal Link

Параметри

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

getCommentText 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

getCommentVoteUserNames Internal Link

Параметри

Име Тип Обавезно Опис
tenantId string Да
commentId string Да
dir int Не
sso string Не

Одговор

Враћа: 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

lockComment 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

pinComment 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

saveComment 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

saveCommentsBulk Internal Link

Параметри

Име Тип Обавезно Опис
tenantId string Да
createCommentParams seq[CreateCommentParams] Не
isLive bool Не
doSpamCheck bool Не
sendEmails bool Не
populateNotifications bool): (Option[seq[SaveComment_200_response]] Не
id string Не
unBlockFromCommentParams UnBlockFromCommentParams Не
userId string Не
anonUserId string Не

Одговор

Враћа: 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

setCommentText 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

unBlockUserFromComment 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

unFlagComment Internal Link

Параметри

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

unLockComment 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

unPinComment Internal Link

Параметри

Name Type Required Description
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

updateComment 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

voteComment Internal Link

Параметри

Име Тип Обавезно Опис
tenantId string Yes
commentId string Yes
urlId string Yes
broadcastId string No
voteBodyParams VoteBodyParams No
sessionId string No
sso string No

Одговор

Враћа: 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

addDomainConfig Internal Link

Параметри

Име Тип Обавезно Опис
tenantId string Да
addDomainConfigParams AddDomainConfigParams Не

Одговор

Враћа: Option[AddDomainConfig_200_response]

Пример

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

deleteDomainConfig 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

getDomainConfig Internal Link

Параметри

Name Type Required Description
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

getDomainConfigs 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

patchDomainConfig 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

putDomainConfig 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

createEmailTemplate 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

deleteEmailTemplate Internal Link

Параметри

Име Type Обавезно Опис
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

deleteEmailTemplateRenderError Internal Link

Параметри

Name Type Required Description
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

getEmailTemplate 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

getEmailTemplateDefinitions 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

getEmailTemplateRenderErrors 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

getEmailTemplates 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

renderEmailTemplate Internal Link

Parametri

Ime Тип Обавезно Опис
tenantId string Да
renderEmailTemplateBody RenderEmailTemplateBody Не
locale string Не

Одговор

Враћа: Option[RenderEmailTemplate_200_response]

Пример

Primer 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

updateEmailTemplate 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

getEventLog 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

getGlobalEventLog 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

createFeedPost 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

createFeedPostPublic Internal Link

Параметри

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

deleteFeedPostPublic Internal Link

Параметри

Име Тип Обавезно Опис
tenantId string Да
postId string Не
broadcastId string Не
sso string Не

Одговор

Враћа: 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

getFeedPosts Internal Link

Параметри

Име Тип Обавезно Опис
tenantId string Да
afterId string Не
limit int Не
tags seq[string] Не

Одговор

Враћа: 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

getFeedPostsPublic 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

getFeedPostsStats Internal Link

Параметри

Име Тип Обавезно Опис
tenantId string Yes
postIds seq[string] No
sso string No

Одговор

Враћа: 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

getUserReactsPublic 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

reactFeedPostPublic 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

updateFeedPost 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

updateFeedPostPublic 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

flagCommentPublic 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

addHashTag 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

addHashTagsBulk 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

deleteHashTag 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

getHashTags 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

patchHashTag 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

createModerator 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

deleteModerator Internal Link

Параметри

Име Тип Обавезно Опис
tenantId string Да
id string Не
sendEmail string Не

Одговор

Враћа: 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

getModerator Internal Link

Параметри

Name Type Обавезно Опис
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

getModerators Internal Link

Параметри

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

updateModerator 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

deleteNotificationCount Internal Link

Parametri

Naziv Tip Obavezno Opis
tenantId string Da
id string Ne

Odgovor

Vraća: Option[FlagCommentPublic_200_response]

Primer

deleteNotificationCount Primer
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

getCachedNotificationCount 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

getNotificationCount 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

getNotifications 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

updateNotification 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

addPage Internal Link

Параметри

Name Type Required Description
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

deletePage Internal Link

Параметри

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

getPageByURLId Internal Link

Параметри

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

getPages 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

patchPage 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

deletePendingWebhookEvent 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

getPendingWebhookEventCount 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

getPendingWebhookEvents Internal Link

Параметри

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

createQuestionConfig 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

deleteQuestionConfig 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

getQuestionConfig 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

getQuestionConfigs 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

updateQuestionConfig 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

createQuestionResult Internal Link


Parametri

Ime Tip Obavezno Opis
tenantId string Da
createQuestionResultBody CreateQuestionResultBody Ne

Odgovor

Vraća: Option[CreateQuestionResult_200_response]

Primer

Primer 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

deleteQuestionResult 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

getQuestionResult Internal Link

Параметри

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

getQuestionResults 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

updateQuestionResult Internal Link

Параметри

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

aggregateQuestionResults Internal Link

Параметри

Name Type Required Description
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

bulkAggregateQuestionResults Internal Link

Параметри

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

combineCommentsWithQuestionResults 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

addSSOUser Internal Link

Параметри

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

deleteSSOUser Internal Link

Параметри

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

getSSOUserByEmail Internal Link

Параметри

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

getSSOUserById Internal Link

Параметри

Име Тип Обавезно Опис
tenantId string Да
id string Не

Одговор

Враћа: Option[GetSSOUserByIdAPIResponse]

Пример

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

getSSOUsers Internal Link

Параметри

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

patchSSOUser Internal Link

Параметри

Name Type Required Description
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

putSSOUser Internal Link

Параметри

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

createSubscription 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

deleteSubscription Internal Link

Параметри

Име Тип Потребно Опис
tenantId string Да
id string Не
userId string Не

Одговор

Враћа: Option[DeleteSubscriptionAPIResponse]

Пример

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

getSubscriptions Internal Link

Параметри

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

getTenantDailyUsages 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

createTenantPackage 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

deleteTenantPackage 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

getTenantPackage 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

getTenantPackages Internal Link

Параметри

Name Type Required Description
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

replaceTenantPackage Internal Link

Parametri

Name Type Required Description
tenantId string Da
id string Ne
replaceTenantPackageBody ReplaceTenantPackageBody Ne

Odgovor

Vraća: Option[FlagCommentPublic_200_response]

Primer

Primer 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

updateTenantPackage 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

createTenantUser Internal Link

Параметри

Name Type Required Description
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

deleteTenantUser 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

getTenantUser Internal Link

Параметри

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

getTenantUsers 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

replaceTenantUser 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

updateTenantUser 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

createTenant 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

deleteTenant Internal Link

Параметри

Име Тип Обавезно Опис
tenantId string Да
id string Не
sure string Не

Одговор

Враћа: 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

getTenant 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

getTenants 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

updateTenant Internal Link

Параметри

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

uploadImage 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

getUserBadgeProgressById 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

getUserBadgeProgressByUserId 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

getUserBadgeProgressList Internal Link

Параметри

Име Тип Обавезно Опис
tenantId string Да
userId string Не
limit float64 Не
skip float64 Не

Одговор

Враћа: 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

createUserBadge Internal Link

Параметри

Name Type Required Description
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

deleteUserBadge 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

getUserBadge 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

getUserBadges Internal Link

Параметри

Name Type Required Description
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

updateUserBadge 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

getUserNotificationCount 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

getUserNotifications 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

resetUserNotificationCount Internal Link

Parametri

Naziv Tip Obavezno Opis
tenantId string Da
sso string Ne

Odgovor

Vraća: Option[ResetUserNotifications_200_response]

Primer

Primer 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

resetUserNotifications Internal Link

Параметри

Име Тип Потребно Опис
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

updateUserNotificationCommentSubscriptionStatus 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

updateUserNotificationPageSubscriptionStatus 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

updateUserNotificationStatus 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

getUserPresenceStatuses Internal Link

Параметри

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

searchUsers 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

getUser 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

createVote Internal Link

Параметри

Име Тип Обавезно Опис
tenantId string Yes
commentId string Yes
direction string No
userId string No
anonUserId string No

Одговор

Враћа: 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

deleteVote 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

getVotes 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

getVotesForUser 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 репозиторијум за смернице о доприносу.