FastComments.com

FastComments Nim SDK

Questo è l'SDK Nim ufficiale per FastComments.

SDK Nim ufficiale per l'API di FastComments

Repository

Visualizza su GitHub


Requisiti Internal Link


  • Nim >= 1.6.0
  • nimcrypto >= 0.5.4

Installazione Internal Link

Utilizzo di Nimble

nimble install fastcomments

Compilazione dal Sorgente

nimble build

Contenuto della libreria

Questa libreria contiene il client API generato e le utilità SSO per facilitare l'interazione con l'API.

API pubbliche vs protette

Per il client API, ci sono due moduli API, api_default e api_public. api_default contiene metodi che richiedono la tua API key, e api_public contiene chiamate API che possono essere effettuate direttamente da un browser/dispositivo mobile/etc. senza autenticazione.

Avvio rapido Internal Link

Utilizzo delle API Autenticate (DefaultAPI)

Importante: Gli endpoint autenticati richiedono che la tua chiave API sia impostata nell'intestazione 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"

# Effettua chiamate API autenticate
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"

Utilizzo delle API Pubbliche (PublicAPI)

Gli endpoint pubblici non richiedono autenticazione:

import httpclient
import fastcomments
import fastcomments/apis/api_public

let client = newHttpClient()

# Effettua chiamate API pubbliche
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"

Problemi comuni

  1. Errore di autenticazione 401: Assicurati di impostare l'intestazione x-api-key sul tuo HttpClient prima di effettuare richieste DefaultAPI: client.headers["x-api-key"] = "your-api-key"
  2. Classe API errata: Usa api_default per richieste autenticate lato server, api_public per richieste lato client/pubbliche.

Effettuare chiamate API Internal Link

Tutti i metodi API in questo SDK restituiscono tuple di (Option[ResponseType], Response). Il primo elemento contiene la risposta analizzata se ha successo, e il secondo elemento è la risposta HTTP grezza.

Esempio: Recupero dei commenti

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"

Note Internal Link


ID di broadcast

Vedrai che dovrai passare un broadcastId in alcune chiamate API. Quando riceverai eventi, otterrai questo ID, così saprai di ignorare l'evento se prevedi di applicare le modifiche in modo ottimistico sul client (cosa che probabilmente vorrai fare poiché offre la migliore esperienza). Passa qui un UUID. L'ID dovrebbe essere abbastanza unico da non comparire due volte in una sessione del browser.

SSO (Single Sign-On)

Per esempi di SSO, vedi sotto.

Utilizzo SSO Internal Link


SSO Semplice

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 Sicuro

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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
aggregationRequestAggregationRequestNo
parentTenantIdstringNo
includeStatsboolNo

Risposta

Restituisce: Option[AggregationResponse]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
limitfloat64No
skipfloat64No
orderSORTDIRNo
afterfloat64No
beforefloat64No

Risposta

Restituisce: Option[GetAuditLogs_200_response]

Esempio

Esempio di 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


Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
commentIdstring
publicBlockFromCommentParamsPublicBlockFromCommentParamsNo
ssostringNo

Risposta

Restituisce: Option[BlockFromCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoRichiestoDescrizione
tenantIdstring
commentIdstring
publicBlockFromCommentParamsPublicBlockFromCommentParamsNo
ssostringNo

Risposta

Restituisce: Option[UnBlockCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
commentIdsstringNo
ssostringNo

Risposta

Restituisce: Option[CheckedCommentsForBlocked_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo
blockFromCommentParamsBlockFromCommentParamsNo
userIdstringNo
anonUserIdstringNo

Risposta

Restituisce: Option[BlockFromCommentPublic_200_response]

Esempio

Esempio di 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


Parametri

NameTypeObbligatorioDescrizione
tenantIdstring
urlIdstring
broadcastIdstringNo
commentDataCommentDataNo
sessionIdstringNo
ssostringNo

Risposta

Restituisce: Option[CreateCommentPublic_200_response]

Esempio

Esempio di 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

NameTypeObbligatorioDescrizione
tenantIdstring
idstringNo
contextUserIdstringNo
isLiveboolNo

Risposta

Restituisce: Option[DeleteComment_200_response]

Esempio

Esempio di 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

deleteCommentPublic Internal Link

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
commentIdstring
broadcastIdstringNo
editKeystringNo
ssostringNo

Risposta

Restituisce: Option[DeleteCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
commentIdstring
voteIdstringNo
urlIdstring
broadcastIdstringNo
editKeystringNo
ssostringNo

Risposta

Restituisce: Option[DeleteCommentVote_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo
userIdstringNo
anonUserIdstringNo

Risposta

Restituisce: Option[FlagComment_200_response]

Esempio

Esempio di 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


Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[GetComment_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
pageintNo
limitintNo
skipintNo
asTreeboolNo
skipChildrenintNo
limitChildrenintNo
maxTreeDepthintNo
urlIdstring
userIdstringNo
anonUserIdstringNo
contextUserIdstringNo
hashTagstringNo
parentIdstringNo
directionSortDirectionsNo

Risposta

Restituisce: Option[GetComments_200_response]

Esempio

Esempio di 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

Parametri

NameTypeRequiredDescription
tenantIdstring
urlIdstring
pageintNo
directionSortDirectionsNo
ssostringNo
skipintNo
skipChildrenintNo
limitintNo
limitChildrenintNo
countChildrenboolNo
fetchPageForCommentIdstringNo
includeConfigboolNo
countAllboolNo
includei10nboolNo
localestringNo
modulesstringNo
isCrawlerboolNo
includeNotificationCountboolNo
asTreeboolNo
maxTreeDepthintNo
useFullTranslationIdsboolNo
parentIdstringNo
searchTextstringNo
hashTagsseq[string]No
userIdstringNo
customConfigStrstringNo
afterCommentIdstringNo
beforeCommentIdstringNo

Risposta

Restituisce: Option[GetCommentsPublic_200_response]

Esempio

Esempio 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
commentIdstring
editKeystringNo
ssostringNo

Risposta

Restituisce: Option[GetCommentText_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
commentIdstring
dirintNo
ssostringNo

Risposta

Restituisce: Option[GetCommentVoteUserNames_200_response]

Esempio

Esempio 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
commentIdstring
broadcastIdstringNo
ssostringNo

Risposta

Restituisce: Option[LockComment_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
commentIdstring
broadcastIdstringNo
ssostringNo

Risposta

Restituisce: Option[PinComment_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoRichiestoDescrizione
tenantIdstring
createCommentParamsCreateCommentParamsNo
isLiveboolNo
doSpamCheckboolNo
sendEmailsboolNo
populateNotificationsboolNo

Risposta

Restituisce: Option[SaveComment_200_response]

Esempio

Esempio di 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


Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
createCommentParamsseq[CreateCommentParams]No
isLiveboolNo
doSpamCheckboolNo
sendEmailsboolNo
populateNotificationsbool): (Option[seq[SaveComment_200_response]]No
idstringNo
unBlockFromCommentParamsUnBlockFromCommentParamsNo
userIdstringNo
anonUserIdstringNo

Risposta

Restituisce: Option[UnBlockCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NameTypeRequiredDescription
tenantIdstring
commentIdstring
broadcastIdstringNo
commentTextUpdateRequestCommentTextUpdateRequestNo
editKeystringNo
ssostringNo

Risposta

Restituisce: Option[SetCommentText_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo
unBlockFromCommentParamsUnBlockFromCommentParamsNo
userIdstringNo
anonUserIdstringNo

Risposta

Restituisce: Option[UnBlockCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo
userIdstringNo
anonUserIdstringNo

Risposta

Restituisce: Option[FlagComment_200_response]

Esempio

Esempio di 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


Parametri

NameTypeRequiredDescription
tenantIdstring
commentIdstring
broadcastIdstringNo
ssostringNo

Risposta

Restituisce: Option[LockComment_200_response]

Esempio

Esempio di 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

Parametri

NameTypeObbligatorioDescrizione
tenantIdstring
commentIdstring
broadcastIdstringNo
ssostringNo

Risposta

Restituisce: Option[PinComment_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo
updatableCommentParamsUpdatableCommentParamsNo
contextUserIdstringNo
doSpamCheckboolNo
isLiveboolNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
commentIdstring
urlIdstring
broadcastIdstringNo
voteBodyParamsVoteBodyParamsNo
sessionIdstringNo
ssostringNo

Risposta

Restituisce: Option[VoteComment_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
addDomainConfigParamsAddDomainConfigParamsNo

Risposta

Restituisce: Option[AddDomainConfig_200_response]

Esempio

Esempio di 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

Parametri

NameTypeRequiredDescription
tenantIdstring
domainstringNo

Risposta

Restituisce: Option[DeleteDomainConfig_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
domainstringNo

Risposta

Restituisce: Option[GetDomainConfig_200_response]

Esempio

Esempio di 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

Parametri

NameTypeRequiredDescription
tenantIdstring

Risposta

Restituisce: Option[GetDomainConfigs_200_response]

Esempio

Esempio di 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

Parametri

NameTypeObbligatorioDescription
tenantIdstring
domainToUpdatestringNo
patchDomainConfigParamsPatchDomainConfigParamsNo

Risposta

Restituisce: Option[GetDomainConfig_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
domainToUpdatestringNo
updateDomainConfigParamsUpdateDomainConfigParamsNo

Risposta

Restituisce: Option[GetDomainConfig_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
createEmailTemplateBodyCreateEmailTemplateBodyNo

Risposta

Restituisce: Option[CreateEmailTemplate_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo
errorIdstringNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[GetEmailTemplate_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoRichiestoDescrizione
tenantIdstring

Risposta

Restituisce: Option[GetEmailTemplateDefinitions_200_response]

Esempio

Esempio di 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


Parametri

NameTypeRequiredDescription
tenantIdstring
idstringNo
skipfloat64No

Risposta

Restituisce: Option[GetEmailTemplateRenderErrors_200_response]

Esempio

Esempio di 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


Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
skipfloat64No

Risposta

Restituisce: Option[GetEmailTemplates_200_response]

Esempio

Esempio di 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

NameTypeRequiredDescription
tenantIdstring
renderEmailTemplateBodyRenderEmailTemplateBodyNo
localestringNo

Risposta

Restituisce: Option[RenderEmailTemplate_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo
updateEmailTemplateBodyUpdateEmailTemplateBodyNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NameTypeRequiredDescription
tenantIdstring
urlIdstring
userIdWSstringNo
startTimeint64No
endTimeint64No

Risposta

Restituisce: Option[GetEventLog_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
urlIdstring
userIdWSstringNo
startTimeint64No
endTimeint64No

Risposta

Restituisce: Option[GetEventLog_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoRichiestoDescrizione
tenantIdstring
createFeedPostParamsCreateFeedPostParamsNo
broadcastIdstringNo
isLiveboolNo
doSpamCheckboolNo
skipDupCheckboolNo

Risposta

Restituisce: Option[CreateFeedPost_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
createFeedPostParamsCreateFeedPostParamsNo
broadcastIdstringNo
ssostringNo

Risposta

Restituisce: Option[CreateFeedPostPublic_200_response]

Esempio

Esempio di 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

Parametri

NameTypeObbligatorioDescription
tenantIdstring
postIdstringNo
broadcastIdstringNo
ssostringNo

Risposta

Restituisce: Option[DeleteFeedPostPublic_200_response]

Esempio

Esempio di 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


Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
afterIdstringNo
limitintNo
tagsseq[string]No

Risposta

Restituisce: Option[GetFeedPosts_200_response]

Esempio

Esempio 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

Parametri

NameTypeObbligatorioDescrizione
tenantIdstring
afterIdstringNo
limitintNo
tagsseq[string]No
ssostringNo
isCrawlerboolNo
includeUserInfoboolNo

Risposta

Restituisce: Option[GetFeedPostsPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
postIdsseq[string]No
ssostringNo

Risposta

Restituisce: Option[GetFeedPostsStats_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoRichiestoDescrizione
tenantIdstring
postIdsseq[string]No
ssostringNo

Risposta

Restituisce: Option[GetUserReactsPublic_200_response]

Esempio

Esempio 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

Parametri

NomeTipoRichiestoDescrizione
tenantIdstring
postIdstringNo
reactBodyParamsReactBodyParamsNo
isUndoboolNo
broadcastIdstringNo
ssostringNo

Risposta

Restituisce: Option[ReactFeedPostPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo
feedPostFeedPostNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
postIdstringNo
updateFeedPostParamsUpdateFeedPostParamsNo
broadcastIdstringNo
ssostringNo

Risposta

Restituisce: Option[CreateFeedPostPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
commentIdstring
isFlaggedboolNo
ssostringNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NameTypeRequiredDescription
tenantIdstring
createHashTagBodyCreateHashTagBodyNo

Risposta

Restituisce: Option[AddHashTag_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
bulkCreateHashTagsBodyBulkCreateHashTagsBodyNo

Risposta

Restituisce: Option[AddHashTagsBulk_200_response]

Esempio

Esempio di 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

Parametri

NameTipoObbligatorioDescrizione
tagstringNo
tenantIdstring
deleteHashTagRequestDeleteHashTagRequestNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
pagefloat64No

Risposta

Restituisce: Option[GetHashTags_200_response]

Esempio

Esempio di 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

Parametri

NameTypeObbligatorioDescrizione
tagstringNo
tenantIdstring
updateHashTagBodyUpdateHashTagBodyNo

Risposta

Restituisce: Option[PatchHashTag_200_response]

Esempio

Esempio di 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

Parametri

NameTypeRequiredDescription
tenantIdstring
createModeratorBodyCreateModeratorBodyNo

Risposta

Restituisce: Option[CreateModerator_200_response]

Esempio

Esempio di 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

Parametri

NameTypeObbligatorioDescrizione
tenantIdstring
idstringNo
sendEmailstringNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[GetModerator_200_response]

Esempio

Esempio 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


Parametri

NameTypeObbligatorioDescrizione
tenantIdstring
skipfloat64No

Risposta

Restituisce: Option[GetModerators_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoRichiestoDescrizione
tenantIdstringYes
idstringNo
updateModeratorBodyUpdateModeratorBodyNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

getCachedNotificationCount Internal Link

Parametri

NameTypeRequiredDescription
tenantIdstring
idstringNo

Risposta

Restituisce: Option[GetCachedNotificationCount_200_response]

Esempio

Esempio di 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

Parametri

NomeTypeRichiestoDescrizione
tenantIdstring
userIdstringNo
urlIdstring
fromCommentIdstringNo
viewedboolNo

Risposta

Restituisce: Option[GetNotificationCount_200_response]

Esempio

Esempio di 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

Parametri

NameTypeRequiredDescription
tenantIdstring
userIdstringNo
urlIdstring
fromCommentIdstringNo
viewedboolNo
skipfloat64No

Risposta

Restituisce: Option[GetNotifications_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo
updateNotificationBodyUpdateNotificationBodyNo
userIdstringNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
createAPIPageDataCreateAPIPageDataNo

Risposta

Restituisce: Option[AddPageAPIResponse]

Esempio

Esempio di 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

Parametri

NomeTipoRichiestoDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[DeletePageAPIResponse]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
urlIdstring

Risposta

Restituisce: Option[GetPageByURLIdAPIResponse]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring

Risposta

Restituisce: Option[GetPagesAPIResponse]

Esempio

Esempio di 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

Parametri

NameTypeRequiredDescription
tenantIdstring
idstringNo
updateAPIPageDataUpdateAPIPageDataNo

Risposta

Restituisce: Option[PatchPageAPIResponse]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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


Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
commentIdstring
externalIdstringNo
eventTypestringNo
domainstringNo
attemptCountGTfloat64No

Risposta

Restituisce: Option[GetPendingWebhookEventCount_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
commentIdstring
externalIdstringNo
eventTypestringNo
domainstringNo
attemptCountGTfloat64No
skipfloat64No

Risposta

Restituisce: Option[GetPendingWebhookEvents_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
createQuestionConfigBodyCreateQuestionConfigBodyNo

Risposta

Restituisce: Option[CreateQuestionConfig_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[GetQuestionConfig_200_response]

Esempio

Esempio di 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


Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
skipfloat64No

Risposta

Restituisce: Option[GetQuestionConfigs_200_response]

Esempio

Esempio di 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

Parametri

NameTypeRequiredDescription
tenantIdstring
idstringNo
updateQuestionConfigBodyUpdateQuestionConfigBodyNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

NomeTipoObbligatorioDescrizione
tenantIdstring
createQuestionResultBodyCreateQuestionResultBodyNo

Risposta

Restituisce: Option[CreateQuestionResult_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[GetQuestionResult_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
urlIdstring
userIdstringNo
startDatestringNo
questionIdstringNo
questionIdsstringNo
skipfloat64No

Risposta

Restituisce: Option[GetQuestionResults_200_response]

Esempio

Esempio 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

Parametri

NomeTipoRichiestoDescrizione
tenantIdstring
idstringNo
updateQuestionResultBodyUpdateQuestionResultBodyNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NameTypeRequiredDescription
tenantIdstring
questionIdstringNo
questionIdsseq[string]No
urlIdstring
timeBucketAggregateTimeBucketNo
startDatestringNo
forceRecalculateboolNo

Risposta

Restituisce: Option[AggregateQuestionResults_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
bulkAggregateQuestionResultsRequestBulkAggregateQuestionResultsRequestNo
forceRecalculateboolNo

Risposta

Restituisce: Option[BulkAggregateQuestionResults_200_response]

Esempio

Esempio di 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

Parametri

NameTypeRichiestoDescrizione
tenantIdstring
questionIdstringNo
questionIdsseq[string]No
urlIdstring
startDatestringNo
forceRecalculateboolNo
minValuefloat64No
maxValuefloat64No
limitfloat64No

Risposta

Restituisce: Option[CombineCommentsWithQuestionResults_200_response]

Esempio

Esempio di 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

Parametri

NameTypeRequiredDescription
tenantIdstring
createAPISSOUserDataCreateAPISSOUserDataNo

Risposta

Restituisce: Option[AddSSOUserAPIResponse]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo
deleteCommentsboolNo
commentDeleteModestringNo

Risposta

Restituisce: Option[DeleteSSOUserAPIResponse]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
emailstringNo

Risposta

Restituisce: Option[GetSSOUserByEmailAPIResponse]

Esempio

Esempio 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[GetSSOUserByIdAPIResponse]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
skipintNo

Risposta

Restituisce: Option[GetSSOUsers_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo
updateAPISSOUserDataUpdateAPISSOUserDataNo
updateCommentsboolNo

Risposta

Restituisce: Option[PatchSSOUserAPIResponse]

Esempio

Esempio 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo
updateAPISSOUserDataUpdateAPISSOUserDataNo
updateCommentsboolNo

Risposta

Restituisce: Option[PutSSOUserAPIResponse]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
createAPIUserSubscriptionDataCreateAPIUserSubscriptionDataNo

Risposta

Restituisce: Option[CreateSubscriptionAPIResponse]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo
userIdstringNo

Risposta

Restituisce: Option[DeleteSubscriptionAPIResponse]

Esempio

Esempio di 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

Parametri

NameTypeRequiredDescription
tenantIdstring
userIdstringNo

Risposta

Restituisce: Option[GetSubscriptionsAPIResponse]

Esempio

Esempio di 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

updateSubscription Internal Link

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo
updateAPIUserSubscriptionDataUpdateAPIUserSubscriptionDataNo
userIdstringNo

Risposta

Restituisce: Option[UpdateSubscriptionAPIResponse]

Esempio

Esempio di updateSubscription
Copy Copy
1
2let (response, httpResponse) = client.updateSubscription(
3 tenantId = "my-tenant-123",
4 id = "sub-456",
5 updateAPIUserSubscriptionData = UpdateAPIUserSubscriptionData(
6 subscribed = true,
7 channels = @["email", "push"]
8 ),
9 userId = "user-789"
10)
11
12if response.isSome:
13 let updated = response.get()
14 echo "Subscription updated:", updated
15else:
16 echo "Update failed, HTTP response:", httpResponse
17

getTenantDailyUsages Internal Link

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
yearNumberfloat64No
monthNumberfloat64No
dayNumberfloat64No
skipfloat64No

Risposta

Restituisce: Option[GetTenantDailyUsages_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoRichiestoDescrizione
tenantIdstring
createTenantPackageBodyCreateTenantPackageBodyNo

Risposta

Restituisce: Option[CreateTenantPackage_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoRichiestoDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[GetTenantPackage_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
skipfloat64No

Risposta

Restituisce: Option[GetTenantPackages_200_response]

Esempio

Esempio 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

NameTypeRequiredDescription
tenantIdstring
idstringNo
replaceTenantPackageBodyReplaceTenantPackageBodyNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo
updateTenantPackageBodyUpdateTenantPackageBodyNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
createTenantUserBodyCreateTenantUserBodyNo

Risposta

Restituisce: Option[CreateTenantUser_200_response]

Esempio

Esempio di createTenantUser
Copy Copy
1
2let createBody = CreateTenantUserBody(
3 email = "jane.doe@acmepub.com",
4 displayName = "Jane Doe",
5 disabled = false
6)
7let (response, httpResponse) = client.createTenantUser(tenantId = "my-tenant-123", createTenantUserBody = createBody)
8if response.isSome:
9 let createdUser = response.get()
10 echo createdUser
11

deleteTenantUser Internal Link

Parametri

NameTypeObbligatorioDescription
tenantIdstring
idstringNo
deleteCommentsstringNo
commentDeleteModestringNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[GetTenantUser_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
skipfloat64No

Risposta

Restituisce: Option[GetTenantUsers_200_response]

Esempio

Esempio 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo
replaceTenantUserBodyReplaceTenantUserBodyNo
updateCommentsstringNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo
redirectURLstringNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NameTypeRequiredDescription
tenantIdstring
idstringNo
updateTenantUserBodyUpdateTenantUserBodyNo
updateCommentsstringNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
createTenantBodyCreateTenantBodyNo

Risposta

Restituisce: Option[CreateTenant_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo
surestringNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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


Parametri

NomeTipoRichiestoDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[GetTenant_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
metastringNo
skipfloat64No

Risposta

Restituisce: Option[GetTenants_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoRichiestoDescrizione
tenantIdstring
idstringNo
updateTenantBodyUpdateTenantBodyNo

Risposta

Restituisce: Option[FlagCommentPublic_200_response]

Esempio

Esempio di 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

changeTicketState Internal Link

Parametri

NameTypeObbligatorioDescrizione
tenantIdstring
userIdstringNo
idstringNo
changeTicketStateBodyChangeTicketStateBodyNo

Risposta

Restituisce: Option[ChangeTicketState_200_response]

Esempio

Esempio di changeTicketState
Copy Copy
1
2let (response, httpResponse) = client.changeTicketState(
3 tenantId = "my-tenant-123",
4 userId = "user-456",
5 id = "ticket-789",
6 changeTicketStateBody = ChangeTicketStateBody(
7 state = "closed",
8 message = "Issue resolved by support",
9 notify = true,
10 tags = @["support", "resolved"]
11 )
12)
13if response.isSome:
14 let result = response.get()
15 echo "Changed ticket:", result.state, " (id: ", result.id, ")"
16

createTicket Internal Link

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
userIdstringNo
createTicketBodyCreateTicketBodyNo

Risposta

Restituisce: Option[CreateTicket_200_response]

Esempio

Esempio di createTicket
Copy Copy
1
2let createBody = CreateTicketBody(
3 title = "Unable to post comment",
4 description = "HTTP 500 when submitting comment on article 'world/my-latest-report'",
5 contactEmail = "jane.doe@example.com",
6 tags = @["comments", "backend"],
7 urgent = false
8)
9let (response, httpResponse) = client.createTicket(tenantId = "my-tenant-123", userId = "user-9876", createTicketBody = createBody)
10if response.isSome:
11 let ticket = response.get()
12 echo "Created ticket ID: ", $ticket
13

getTicket Internal Link

Parametri

NomeTipoRichiestoDescrizione
tenantIdstring
idstringNo
userIdstringNo

Risposta

Restituisce: Option[GetTicket_200_response]

Esempio

Esempio di getTicket
Copy Copy
1
2let (response, httpResponse) = client.getTicket(tenantId = "my-tenant-123", id = "", userId = "")
3if response.isSome:
4 let ticket = response.get()
5 discard ticket
6

getTickets Internal Link

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
userIdstringNo
statefloat64No
skipfloat64No
limitfloat64No

Risposta

Restituisce: Option[GetTickets_200_response]

Esempio

Esempio di getTickets
Copy Copy
1
2let (response, httpResponse) = client.getTickets(tenantId = "my-tenant-123", userId = "user-456", state = 1.0, skip = 0.0, limit = 50.0)
3if response.isSome:
4 let tickets = response.get()
5 echo tickets
6else:
7 echo "No tickets returned"
8

uploadImage Internal Link

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
filestringNo
sizePresetSizePresetNo
urlIdstring

Risposta

Restituisce: Option[UploadImageResponse]

Esempio

Esempio di 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

Parametri

NomeTipoRichiestoDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[GetUserBadgeProgressById_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoRichiestoDescrizione
tenantIdstring
userIdstringNo

Risposta

Restituisce: Option[GetUserBadgeProgressById_200_response]

Esempio

Esempio 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
userIdstringNo
limitfloat64No
skipfloat64No

Risposta

Restituisce: Option[GetUserBadgeProgressList_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
createUserBadgeParamsCreateUserBadgeParamsNo

Risposta

Restituisce: Option[CreateUserBadge_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[UpdateUserBadge_200_response]

Esempio

deleteUserBadge Esempio
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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[GetUserBadge_200_response]

Esempio

Esempio di 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

Parametri

NameTypeRequiredDescription
tenantIdstring
userIdstringNo
badgeIdstringNo
displayedOnCommentsboolNo
limitfloat64No
skipfloat64No

Risposta

Restituisce: Option[GetUserBadges_200_response]

Esempio

Esempio di 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

Parametri

NameTypeRequiredDescription
tenantIdstring
idstringNo
updateUserBadgeParamsUpdateUserBadgeParamsNo

Risposta

Restituisce: Option[UpdateUserBadge_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
ssostringNo

Risposta

Restituisce: Option[GetUserNotificationCount_200_response]

Esempio

Esempio di 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

Parametri

NameTypeRequiredDescription
tenantIdstring
pageSizeintNo
afterIdstringNo
includeContextboolNo
afterCreatedAtint64No
unreadOnlyboolNo
dmOnlyboolNo
noDmboolNo
includeTranslationsboolNo
ssostringNo

Risposta

Restituisce: Option[GetUserNotifications_200_response]

Esempio

Esempio di 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

NomeTipoObbligatorioDescrizione
tenantIdstring
ssostringNo

Risposta

Restituisce: Option[ResetUserNotifications_200_response]

Esempio

Esempio di 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

Parametri

NameTypeObbligatorioDescrizione
tenantIdstring
afterIdstringNo
afterCreatedAtint64No
unreadOnlyboolNo
dmOnlyboolNo
noDmboolNo
ssostringNo

Risposta

Restituisce: Option[ResetUserNotifications_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
notificationIdstringNo
optedInOrOutstringNo
commentIdstring
ssostringNo

Risposta

Restituisce: Option[UpdateUserNotificationStatus_200_response]

Esempio

Esempio di 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


Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
urlIdstring
urlstringNo
pageTitlestringNo
subscribedOrUnsubscribedstringNo
ssostringNo

Risposta

Restituisce: Option[UpdateUserNotificationStatus_200_response]

Esempio

Esempio di 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

Parametri

NameTypeObbligatorioDescrizione
tenantIdstring
notificationIdstringNo
newStatusstringNo
ssostringNo

Risposta

Restituisce: Option[UpdateUserNotificationStatus_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
urlIdWSstringNo
userIdsstringNo

Risposta

Restituisce: Option[GetUserPresenceStatuses_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
urlIdstring
usernameStartsWithstringNo
mentionGroupIdsseq[string]No
ssostringNo
searchSectionstringNo

Risposta

Restituisce: Option[SearchUsers_200_response]

Esempio

Esempio di searchUsers
Copy Copy
1
2let (response, httpResponse) = client.searchUsers(
3 tenantId = "my-tenant-123",
4 urlId = "news/2026/ai-product-launch",
5 usernameStartsWith = "",
6 mentionGroupIds = @[],
7 sso = "",
8 searchSection = ""
9)
10if response.isSome:
11 let users = response.get()
12 echo "Received users:", users.toString()
13

getUser Internal Link


Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
idstringNo

Risposta

Restituisce: Option[GetUser_200_response]

Esempio

Esempio di 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

Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
commentIdstring
directionstringNo
userIdstringNo
anonUserIdstringNo

Risposta

Restituisce: Option[VoteComment_200_response]

Esempio

Esempio di 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

Parametri

NameTypeRequiredDescription
tenantIdstring
idstringNo
editKeystringNo

Risposta

Restituisce: Option[DeleteCommentVote_200_response]

Esempio

Esempio di 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

Parametri

NameTypeRequiredDescription
tenantIdstring
urlIdstring

Risposta

Restituisce: Option[GetVotes_200_response]

Esempio

Esempio di 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


Parametri

NomeTipoObbligatorioDescrizione
tenantIdstring
urlIdstring
userIdstringNo
anonUserIdstringNo

Risposta

Restituisce: Option[GetVotesForUser_200_response]

Esempio

Esempio di 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

Hai bisogno di aiuto?

Se riscontri problemi o hai domande sul Nim SDK, per favore:

Contribuire

I contributi sono benvenuti! Visita il repository GitHub per le linee guida sui contributi.