FastComments.com

FastComments Nim SDK


Αυτό είναι το επίσημο Nim SDK για το FastComments.

Επίσημο Nim SDK για το API του FastComments

Αποθετήριο

Προβολή στο GitHub


Απαιτήσεις Internal Link


  • Nim >= 1.6.0
  • nimcrypto >= 0.5.4

Εγκατάσταση Internal Link

Using Nimble

nimble install fastcomments

Building from Source

nimble build

Library Contents

Αυτή η βιβλιοθήκη περιλαμβάνει τον δημιουργημένο πελάτη API και τα βοηθητικά εργαλεία SSO για να διευκολύνουν τη χρήση του API.

Public vs Secured APIs

Για τον πελάτη API, υπάρχουν δύο modules API, api_default και api_public. Το api_default περιέχει μεθόδους που απαιτούν το κλειδί API σας, και το api_public περιέχει κλήσεις API που μπορούν να γίνουν απευθείας από ένα πρόγραμμα περιήγησης/κινητή συσκευή/κ.λπ. χωρίς πιστοποίηση.

Γρήγορη Έναρξη Internal Link

Χρήση Αυθεντικοποιημένων API (DefaultAPI)

Σημαντικό: Οι αυθεντικοποιημένοι endpoints απαιτούν το API key σας να οριστεί ως κεφαλίδα x-api-key.

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

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

# Κάντε αυθεντικοποιημένες κλήσεις API
let (response, httpResponse) = getComments(
  httpClient = client,
  tenantId = "your-tenant-id",
  page = 0,
  limit = 0,
  skip = 0,
  asTree = false,
  skipChildren = 0,
  limitChildren = 0,
  maxTreeDepth = 0,
  urlId = "your-url-id",
  userId = "",
  anonUserId = "",
  contextUserId = "",
  hashTag = "",
  parentId = "",
  direction = SortDirections.DESC
)

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

Χρήση Δημόσιων API (PublicAPI)

Οι δημόσιοι endpoints δεν απαιτούν αυθεντικοποίηση:

import httpclient
import fastcomments
import fastcomments/apis/api_public

let client = newHttpClient()

# Κάντε δημόσιες κλήσεις API
let (response, httpResponse) = getCommentsPublic(
  httpClient = client,
  tenantId = "your-tenant-id",
  urlId = "your-url-id",
  page = 0,
  direction = SortDirections.DESC,
  sso = "",
  skip = 0,
  skipChildren = 0,
  limit = 0,
  limitChildren = 0,
  countChildren = false,
  fetchPageForCommentId = "",
  includeConfig = false,
  countAll = false,
  includei10n = false,
  locale = "",
  modules = "",
  isCrawler = false,
  includeNotificationCount = false,
  asTree = false,
  maxTreeDepth = 0,
  useFullTranslationIds = false,
  parentId = "",
  searchText = "",
  hashTags = @[],
  userId = "",
  customConfigStr = "",
  afterCommentId = "",
  beforeCommentId = ""
)

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

Συνηθισμένα Προβλήματα

  1. 401 authentication error: Βεβαιωθείτε ότι έχετε ρυθμίσει την κεφαλίδα x-api-key στον HttpClient σας πριν κάνετε αιτήσεις DefaultAPI: client.headers["x-api-key"] = "your-api-key"
  2. Wrong API class: Χρησιμοποιήστε api_default για αιτήσεις με αυθεντικοποίηση στην πλευρά του διακομιστή και api_public για αιτήσεις στην πλευρά του πελάτη/δημόσιες.

Εκτέλεση Κλήσεων API Internal Link

Όλες οι μέθοδοι API σε αυτό το SDK επιστρέφουν πλειάδες (Option[ResponseType], Response). Το πρώτο στοιχείο περιέχει την αναλυμένη απάντηση σε περίπτωση επιτυχίας, και το δεύτερο στοιχείο είναι η ακατέργαστη HTTP απάντηση.

Παράδειγμα: Ανάκτηση Σχολίων

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

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

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

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

Σημειώσεις Internal Link

Αναγνωριστικά Broadcast

Θα δείτε ότι πρέπει να περάσετε ένα broadcastId σε κάποιες κλήσεις API. Όταν λαμβάνετε events, θα πάρετε αυτό το ID πίσω, ώστε να ξέρετε να αγνοήσετε το event εάν σκοπεύετε να εφαρμόσετε αλλαγές στον πελάτη με αισιοδοξία (κάτι που πιθανότατα θα θελήσετε να κάνετε αφού προσφέρει την καλύτερη εμπειρία). Περνάτε ένα UUID εδώ. Το ID πρέπει να είναι αρκετά μοναδικό ώστε να μην εμφανιστεί δύο φορές σε μία συνεδρία προγράμματος περιήγησης.

SSO (Ενιαία Σύνδεση)

Για παραδείγματα SSO, δείτε παρακάτω.

Χρήση SSO Internal Link


Απλό SSO

import fastcomments/sso

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

echo "SSO Token: ", token

Ασφαλές SSO

import fastcomments/sso

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

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

echo "Secure SSO Token: ", token

aggregate Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
aggregationRequest AggregationRequest Όχι
parentTenantId string Όχι
includeStats bool Όχι

Απόκριση

Επιστρέφει: Option[AggregationResponse]

Παράδειγμα

Παράδειγμα aggregate
Copy Copy
1
2let (response, httpResponse) = client.aggregate(
3 tenantId = "my-tenant-123",
4 aggregationRequest = AggregationRequest(),
5 parentTenantId = "",
6 includeStats = false
7)
8if response.isSome:
9 let aggregation = response.get()
10 echo $aggregation
11

getAuditLogs Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
limit float64 Όχι
skip float64 Όχι
order SORTDIR Όχι
after float64 Όχι
before float64 Όχι

Απόκριση

Επιστρέφει: Option[GetAuditLogs_200_response]

Παράδειγμα

Παράδειγμα getAuditLogs
Copy Copy
1
2let (response, httpResponse) = client.getAuditLogs(
3 tenantId = "my-tenant-123",
4 limit = 100.0,
5 skip = 0.0,
6 order = SORTDIR(0),
7 after = 0.0,
8 before = 0.0
9)
10if response.isSome:
11 let audit = response.get()
12 echo audit
13

blockFromCommentPublic Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
commentId string Ναι
publicBlockFromCommentParams PublicBlockFromCommentParams Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[BlockFromCommentPublic_200_response]

Παράδειγμα

Παράδειγμα blockFromCommentPublic
Copy Copy
1
2let (response, httpResponse) = client.blockFromCommentPublic(
3 tenantId = "my-tenant-123",
4 commentId = "comment-987654",
5 publicBlockFromCommentParams = PublicBlockFromCommentParams(),
6 sso = "sso-token-7a9b3c"
7)
8if response.isSome:
9 let blockResult = response.get()
10 discard blockResult
11

unBlockCommentPublic Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
commentId string Ναι
publicBlockFromCommentParams PublicBlockFromCommentParams Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[UnBlockCommentPublic_200_response]

Παράδειγμα

Παράδειγμα unBlockCommentPublic
Copy Copy
1
2let (response, httpResponse) = client.unBlockCommentPublic(
3 tenantId = "news-site-456",
4 commentId = "comment-abc123",
5 publicBlockFromCommentParams = PublicBlockFromCommentParams{},
6 sso = ""
7)
8if response.isSome:
9 let unblocked = response.get()
10 discard unblocked
11else:
12 discard httpResponse
13

checkedCommentsForBlocked Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
commentIds string Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[CheckedCommentsForBlocked_200_response]

Παράδειγμα

Παράδειγμα checkedCommentsForBlocked
Copy Copy
1
2let (response, httpResponse) = client.checkedCommentsForBlocked(
3 tenantId = "my-tenant-123",
4 commentIds = "",
5 sso = ""
6)
7if response.isSome:
8 let checked = response.get()
9 echo "Checked comments received for tenant my-tenant-123"
10 echo checked
11else:
12 echo "No checked comments (HTTP status: ", $httpResponse.statusCode, ")"
13

blockUserFromComment Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Yes
id string No
blockFromCommentParams BlockFromCommentParams No
userId string No
anonUserId string No

Απάντηση

Επιστρέφει: Option[BlockFromCommentPublic_200_response]

Παράδειγμα

Παράδειγμα blockUserFromComment
Copy Copy
1
2let (response, httpResponse) = client.blockUserFromComment(
3 tenantId = "my-tenant-123",
4 id = "comment-98765",
5 blockFromCommentParams = BlockFromCommentParams(),
6 userId = "user-456",
7 anonUserId = ""
8)
9if response.isSome:
10 let blocked = response.get()
11 echo "Block confirmed for tenant:", " my-tenant-123"
12

createCommentPublic Internal Link

Παράμετροι

Name Type Required Description
tenantId string Ναι
urlId string Ναι
broadcastId string Όχι
commentData CommentData Όχι
sessionId string Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[CreateCommentPublic_200_response]

Παράδειγμα

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

deleteComment Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
contextUserId string Όχι
isLive bool Όχι

Απόκριση

Επιστρέφει: Option[DeleteComment_200_response]

Παράδειγμα

Παράδειγμα deleteComment
Copy Copy
1
2let (response, httpResponse) = client.deleteComment(tenantId = "my-tenant-123", id = "cmt-456abc", contextUserId = "user-789", isLive = true)
3if response.isSome:
4 let deleted = response.get()
5 discard deleted
6 echo "Delete succeeded"
7else:
8 echo "No delete response"
9

deleteCommentPublic Internal Link

Παράμετροι

Name Type Απαιτείται Περιγραφή
tenantId string Ναι
commentId string Ναι
broadcastId string Όχι
editKey string Όχι
sso string Όχι

Απάντηση

Επιστρέφει: Option[DeleteCommentPublic_200_response]

Παράδειγμα

Παράδειγμα deleteCommentPublic
Copy Copy
1
2let (response, httpResponse) = client.deleteCommentPublic(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-987654",
5 broadcastId = "",
6 editKey = "",
7 sso = ""
8)
9if response.isSome:
10 let deleted = response.get()
11 echo "Delete succeeded"
12 echo "HTTP status: ", httpResponse.status
13else:
14 echo "Delete failed, HTTP status: ", httpResponse.status
15

deleteCommentVote Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
commentId string Ναι
voteId string Όχι
urlId string Ναι
broadcastId string Όχι
editKey string Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[DeleteCommentVote_200_response]

Παράδειγμα

Παράδειγμα deleteCommentVote
Copy Copy
1
2let (response, httpResponse) = client.deleteCommentVote(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-789",
5 voteId = "",
6 urlId = "news/breaking-story-2025",
7 broadcastId = "",
8 editKey = "",
9 sso = ""
10)
11if response.isSome:
12 let deleted = response.get()
13 discard deleted
14 echo "Vote removed for comment cmt-789"
15else:
16 echo "No response body returned"
17

flagComment Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
userId string Όχι
anonUserId string Όχι

Απόκριση

Επιστρέφει: Option[FlagComment_200_response]

Παράδειγμα

Παράδειγμα flagComment
Copy Copy
1
2let (response, httpResponse) = client.flagComment(tenantId = "my-tenant-123", id = "cmt-98765", userId = "user-8342", anonUserId = "")
3if response.isSome:
4 let flagged = response.get()
5 echo "Flagged comment response: ", flagged
6else:
7 echo "Flag comment failed: ", httpResponse
8

getComment Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι

Απάντηση

Επιστρέφει: Option[GetComment_200_response]

Παράδειγμα

Παράδειγμα getComment
Copy Copy
1
2let (response, httpResponse) = client.getComment(tenantId = "my-tenant-123", id = "cmt-987654321")
3if response.isSome:
4 let comment = response.get()
5 echo comment
6

getComments Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
page int Όχι
limit int Όχι
skip int Όχι
asTree bool Όχι
skipChildren int Όχι
limitChildren int Όχι
maxTreeDepth int Όχι
urlId string Ναι
userId string Όχι
anonUserId string Όχι
contextUserId string Όχι
hashTag string Όχι
parentId string Όχι
direction SortDirections Όχι

Απόκριση

Επιστρέφει: Option[GetComments_200_response]

Παράδειγμα

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

getCommentsPublic Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
urlId string Ναι
page int Όχι
direction SortDirections Όχι
sso string Όχι
skip int Όχι
skipChildren int Όχι
limit int Όχι
limitChildren int Όχι
countChildren bool Όχι
fetchPageForCommentId string Όχι
includeConfig bool Όχι
countAll bool Όχι
includei10n bool Όχι
locale string Όχι
modules string Όχι
isCrawler bool Όχι
includeNotificationCount bool Όχι
asTree bool Όχι
maxTreeDepth int Όχι
useFullTranslationIds bool Όχι
parentId string Όχι
searchText string Όχι
hashTags seq[string] Όχι
userId string Όχι
customConfigStr string Όχι
afterCommentId string Όχι
beforeCommentId string Όχι

Απόκριση

Επιστρέφει: Option[GetCommentsPublic_200_response]

Παράδειγμα

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

getCommentText Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
commentId string Ναι
editKey string Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[GetCommentText_200_response]

Παράδειγμα

Παράδειγμα getCommentText
Copy Copy
1
2let (response, httpResponse) = client.getCommentText(tenantId = "my-tenant-123", commentId = "cmt-456789", editKey = "", sso = "")
3
4if response.isSome:
5 let comment = response.get()
6 echo "Comment text: ", $comment
7else:
8 echo "No comment returned"
9

getCommentVoteUserNames Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
commentId string Ναι
dir int Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[GetCommentVoteUserNames_200_response]

Παράδειγμα

Παράδειγμα getCommentVoteUserNames
Copy Copy
1
2let (response, httpResponse) = client.getCommentVoteUserNames(tenantId = "my-tenant-123", commentId = "c_987654321", dir = 0, sso = "")
3if response.isSome:
4 let res = response.get()
5 for userName in res.userNames:
6 echo userName
7

lockComment Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
commentId string Ναι
broadcastId string Όχι
sso string Όχι

Απάντηση

Επιστρέφει: Option[LockComment_200_response]

Παράδειγμα

Παράδειγμα lockComment
Copy Copy
1
2let (response, httpResponse) = client.lockComment(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-98765",
5 broadcastId = "",
6 sso = ""
7)
8if response.isSome:
9 let lockResp = response.get()
10 discard lockResp
11

pinComment Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
commentId string Ναι
broadcastId string Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[PinComment_200_response]

Παράδειγμα

Παράδειγμα pinComment
Copy Copy
1
2let (response, httpResponse) = client.pinComment(tenantId = "my-tenant-123", commentId = "cmt-98765", broadcastId = "", sso = "")
3if response.isSome:
4 let pinned = response.get()
5 echo "Pinned comment response received"
6else:
7 echo "No pin response"
8

saveComment Internal Link


Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Yes
createCommentParams CreateCommentParams No
isLive bool No
doSpamCheck bool No
sendEmails bool No
populateNotifications bool No

Απόκριση

Επιστρέφει: Option[SaveComment_200_response]

Παράδειγμα

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

saveCommentsBulk Internal Link

Παράμετροι

Όνομα Τύπος Υποχρεωτικό Περιγραφή
tenantId string Ναι
createCommentParams seq[CreateCommentParams] Όχι
isLive bool Όχι
doSpamCheck bool Όχι
sendEmails bool Όχι
populateNotifications bool): (Option[seq[SaveComment_200_response]] Όχι
id string Όχι
unBlockFromCommentParams UnBlockFromCommentParams Όχι
userId string Όχι
anonUserId string Όχι

Απόκριση

Επιστρέφει: Option[UnBlockCommentPublic_200_response]

Παράδειγμα

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

setCommentText Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
commentId string Ναι
broadcastId string Όχι
commentTextUpdateRequest CommentTextUpdateRequest Όχι
editKey string Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[SetCommentText_200_response]

Παράδειγμα

Παράδειγμα setCommentText
Copy Copy
1
2let (response, httpResponse) = client.setCommentText(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-7890",
5 broadcastId = "broadcast-456",
6 commentTextUpdateRequest = CommentTextUpdateRequest(text = "Updated comment text to fix typos and add clarity."),
7 editKey = "edit-key-abc123",
8 sso = "sso-token-xyz"
9)
10
11if response.isSome:
12 let updated = response.get()
13

unBlockUserFromComment Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
unBlockFromCommentParams UnBlockFromCommentParams Όχι
userId string Όχι
anonUserId string Όχι

Απάντηση

Επιστρέφει: Option[UnBlockCommentPublic_200_response]

Παράδειγμα

Παράδειγμα unBlockUserFromComment
Copy Copy
1
2let (response, httpResponse) = client.unBlockUserFromComment(
3 tenantId = "news-site-001",
4 id = "cmt-8fj3k9",
5 unBlockFromCommentParams = UnBlockFromCommentParams(),
6 userId = "user-98765",
7 anonUserId = ""
8)
9
10if response.isSome:
11 let unblocked = response.get()
12 discard unblocked
13

unFlagComment Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Yes
id string No
userId string No
anonUserId string No

Απόκριση

Επιστρέφει: Option[FlagComment_200_response]

Παράδειγμα

Παράδειγμα unFlagComment
Copy Copy
1
2let (response, httpResponse) = client.unFlagComment(
3 tenantId = "my-tenant-123",
4 id = "flag-789",
5 userId = "",
6 anonUserId = ""
7)
8
9if response.isSome:
10 let flagResponse = response.get()
11 echo "Comment unflagged successfully"
12

unLockComment Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
commentId string Ναι
broadcastId string Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[LockComment_200_response]

Παράδειγμα

Παράδειγμα unLockComment
Copy Copy
1
2let (response, httpResponse) = client.unLockComment(tenantId = "my-tenant-123", commentId = "cmt-7f9a3b2d", broadcastId = "", sso = "")
3if response.isSome:
4 let lockResult = response.get()
5 echo "Unlock response: ", $lockResult
6else:
7 echo "Unlock failed, HTTP response: ", $httpResponse
8

unPinComment Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
commentId string Ναι
broadcastId string Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[PinComment_200_response]

Παράδειγμα

Παράδειγμα unPinComment
Copy Copy
1
2let (response, httpResponse) = client.unPinComment(tenantId = "my-tenant-123", commentId = "cmt-9f8b7a6", broadcastId = "", sso = "")
3if response.isSome:
4 let pinResp = response.get()
5 echo "Unpinned comment successfully"
6else:
7 echo "Failed to unpin comment; HTTP response: ", httpResponse
8

updateComment Internal Link

Παράμετροι

Name Type Required Description
tenantId string Ναι
id string Όχι
updatableCommentParams UpdatableCommentParams Όχι
contextUserId string Όχι
doSpamCheck bool Όχι
isLive bool Όχι

Απόκριση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα updateComment
Copy Copy
1
2let updatableCommentParams = UpdatableCommentParams(content: "Fixed a typo in the second paragraph", tags: @["article-edit", "typo"], isApproved: true)
3let (response, httpResponse) = client.updateComment(
4 tenantId = "my-tenant-123",
5 id = "comment-456",
6 updatableCommentParams = updatableCommentParams,
7 contextUserId = "user-789",
8 doSpamCheck = true,
9 isLive = true
10)
11if response.isSome:
12 let flagResp = response.get()
13 discard flagResp
14

voteComment Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
commentId string Ναι
urlId string Ναι
broadcastId string Όχι
voteBodyParams VoteBodyParams Όχι
sessionId string Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[VoteComment_200_response]

Παράδειγμα

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

addDomainConfig Internal Link

Παράμετροι

Name Type Required Description
tenantId string Ναι
addDomainConfigParams AddDomainConfigParams Όχι

Απόκριση

Επιστρέφει: Option[AddDomainConfig_200_response]

Παράδειγμα

Παράδειγμα addDomainConfig
Copy Copy
1
2let (response, httpResponse) = client.addDomainConfig(tenantId = "my-tenant-123", addDomainConfigParams = AddDomainConfigParams())
3if response.isSome:
4 let domainConfig = response.get()
5 discard domainConfig
6else:
7 discard httpResponse
8

deleteDomainConfig Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
domain string Όχι

Απόκριση

Επιστρέφει: Option[DeleteDomainConfig_200_response]

Παράδειγμα

deleteDomainConfig Παράδειγμα
Copy Copy
1
2let (response, httpResponse) = client.deleteDomainConfig(tenantId = "my-tenant-123", domain = "news.example.com")
3if response.isSome:
4 let result = response.get()
5 echo "Deleted domain config result: ", result
6else:
7 echo "No response body, HTTP status: ", $httpResponse.status
8

getDomainConfig Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
domain string Όχι

Απάντηση

Επιστρέφει: Option[GetDomainConfig_200_response]

Παράδειγμα

Παράδειγμα getDomainConfig
Copy Copy
1
2let (response, httpResponse) = client.getDomainConfig(tenantId = "my-tenant-123", domain = "news.example.com")
3if response.isSome:
4 let domainConfig = response.get()
5 echo "Loaded domain config for tenant my-tenant-123:", $domainConfig
6else:
7 echo "No domain config; HTTP status:", $httpResponse.status
8

getDomainConfigs Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι

Απόκριση

Επιστρέφει: Option[GetDomainConfigs_200_response]

Παράδειγμα

Παράδειγμα getDomainConfigs
Copy Copy
1
2let (response, httpResponse) = client.getDomainConfigs(tenantId = "my-tenant-123")
3if response.isSome:
4 let domainConfigs = response.get()
5 echo "Domain configs received:"
6 echo domainConfigs
7else:
8 echo "Failed to retrieve domain configs."
9 echo httpResponse
10

patchDomainConfig Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
domainToUpdate string Όχι
patchDomainConfigParams PatchDomainConfigParams Όχι

Απόκριση

Επιστρέφει: Option[GetDomainConfig_200_response]

Παράδειγμα

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

putDomainConfig Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
domainToUpdate string Όχι
updateDomainConfigParams UpdateDomainConfigParams Όχι

Απάντηση

Επιστρέφει: Option[GetDomainConfig_200_response]

Παράδειγμα

putDomainConfig Παράδειγμα
Copy Copy
1
2let updateParams = UpdateDomainConfigParams(
3 allowAnonymous = false,
4 moderationEnabled = true,
5 allowedOrigins = @["https://news.example.com"],
6 maxCommentLength = 2000
7)
8
9let (response, httpResponse) = client.putDomainConfig(
10 tenantId = "my-tenant-123",
11 domainToUpdate = "news/example-article",
12 updateDomainConfigParams = updateParams
13)
14
15if response.isSome:
16 let domainCfg = response.get()
17 discard domainCfg
18

createEmailTemplate Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
createEmailTemplateBody CreateEmailTemplateBody Όχι

Απόκριση

Επιστρέφει: Option[CreateEmailTemplate_200_response]

Παράδειγμα

Παράδειγμα createEmailTemplate
Copy Copy
1
2let (response, httpResponse) = client.createEmailTemplate(tenantId = "my-tenant-123", createEmailTemplateBody = CreateEmailTemplateBody(name = "Weekly Newsletter", subject = "Weekly updates from OurSite", fromName = "OurSite Team", fromEmail = "newsletter@oursite.com", bodyHtml = "<h1>Highlights</h1><p>Top stories this week...</p>", enabled = true, tags = @["newsletter", "weekly"]))
3if response.isSome:
4 let template = response.get()
5 discard template
6

deleteEmailTemplate Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι

Απόκριση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα deleteEmailTemplate
Copy Copy
1
2let (response, httpResponse) = client.deleteEmailTemplate(tenantId = "my-tenant-123", id = "tmpl-456")
3if response.isSome:
4 let deleted = response.get()
5 echo deleted
6

deleteEmailTemplateRenderError Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
errorId string Όχι

Απόκριση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα deleteEmailTemplateRenderError
Copy Copy
1
2let (response, httpResponse) = client.deleteEmailTemplateRenderError(
3 tenantId = "my-tenant-123",
4 id = "welcome-email-template",
5 errorId = "render-error-2026"
6)
7if response.isSome:
8 let flagResp = response.get()
9 discard flagResp
10

getEmailTemplate Internal Link

Παράμετροι

Όνομα Τύπος Απαιτούμενο Περιγραφή
tenantId string Ναι
id string Όχι

Απόκριση

Επιστρέφει: Option[GetEmailTemplate_200_response]

Παράδειγμα

Παράδειγμα getEmailTemplate
Copy Copy
1
2let (response, httpResponse) = client.getEmailTemplate(tenantId = "my-tenant-123", id = "welcome-email-01")
3if response.isSome:
4 let template = response.get()
5 echo "Template ID: ", template.id
6 echo "Subject: ", template.subject
7 echo "Body: ", template.body
8

getEmailTemplateDefinitions Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι

Απάντηση

Επιστρέφει: Option[GetEmailTemplateDefinitions_200_response]

Παράδειγμα

Παράδειγμα getEmailTemplateDefinitions
Copy Copy
1
2let (response, httpResponse) = client.getEmailTemplateDefinitions(tenantId = "my-tenant-123")
3if response.isSome:
4 let defs = response.get()
5 echo "Received email template definitions for tenant my-tenant-123"
6else:
7 echo "No template definitions returned; HTTP status: ", httpResponse.status
8

getEmailTemplateRenderErrors Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
skip float64 Όχι

Απάντηση

Επιστρέφει: Option[GetEmailTemplateRenderErrors_200_response]

Παράδειγμα

Παράδειγμα getEmailTemplateRenderErrors
Copy Copy
1
2let (response, httpResponse) = client.getEmailTemplateRenderErrors(tenantId = "my-tenant-123", id = "welcome-email-template-001", skip = 0.0)
3if response.isSome:
4 let result = response.get()
5 echo "Render errors:", result
6else:
7 echo "No render errors or request failed. HTTP status:", httpResponse.status
8

getEmailTemplates Internal Link

Παράμετροι

Όνομα Τύπος Απαιτούμενο Περιγραφή
tenantId string Ναι
skip float64 Όχι

Απάντηση

Επιστρέφει: Option[GetEmailTemplates_200_response]

Παράδειγμα

Παράδειγμα getEmailTemplates
Copy Copy
1
2let (response, httpResponse) = client.getEmailTemplates(tenantId = "my-tenant-123", skip = 0.0)
3if response.isSome:
4 let templates = response.get()
5 echo templates
6else:
7 echo "No templates returned"
8

renderEmailTemplate Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
renderEmailTemplateBody RenderEmailTemplateBody Όχι
locale string Όχι

Απάντηση

Επιστρέφει: Option[RenderEmailTemplate_200_response]

Παράδειγμα

Παράδειγμα renderEmailTemplate
Copy Copy
1
2let renderBody = RenderEmailTemplateBody(templateId: "comment-notification", subject: "New comment on your article", variables: @["John Doe", "news/global-climate"])
3let (response, httpResponse) = client.renderEmailTemplate(tenantId = "my-tenant-123", renderEmailTemplateBody = renderBody, locale = "en-US")
4if response.isSome:
5 let rendered = response.get()
6 echo rendered
7

updateEmailTemplate Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
updateEmailTemplateBody UpdateEmailTemplateBody Όχι

Απόκριση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

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

getEventLog Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
urlId string Ναι
userIdWS string Όχι
startTime int64 Όχι
endTime int64 Όχι

Απόκριση

Επιστρέφει: Option[GetEventLog_200_response]

Παράδειγμα

Παράδειγμα getEventLog
Copy Copy
1
2let (response, httpResponse) = client.getEventLog(
3 tenantId = "my-tenant-123",
4 urlId = "news/politics/election-2024",
5 userIdWS = "",
6 startTime = 0'i64,
7 endTime = 0'i64
8)
9if response.isSome:
10 let eventLog = response.get()
11 echo "Received event log for ", "my-tenant-123"
12else:
13 echo "No event log returned. HTTP status: ", $httpResponse.status
14

getGlobalEventLog Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
urlId string Ναι
userIdWS string Όχι
startTime int64 Όχι
endTime int64 Όχι

Απάντηση

Επιστρέφει: Option[GetEventLog_200_response]

Παράδειγμα

Παράδειγμα getGlobalEventLog
Copy Copy
1
2let (response, httpResponse) = client.getGlobalEventLog(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 userIdWS = "",
6 startTime = int64(0),
7 endTime = int64(0)
8)
9if response.isSome:
10 let eventLog = response.get()
11 echo eventLog
12else:
13 echo "No event log returned"
14

createFeedPost Internal Link

Παράμετροι

Name Type Required Description
tenantId string Ναι
createFeedPostParams CreateFeedPostParams Όχι
broadcastId string Όχι
isLive bool Όχι
doSpamCheck bool Όχι
skipDupCheck bool Όχι

Απόκριση

Επιστρέφει: Option[CreateFeedPost_200_response]

Παράδειγμα

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

createFeedPostPublic Internal Link

Παράμετροι

Name Type Required Description
tenantId string Ναι
createFeedPostParams CreateFeedPostParams Όχι
broadcastId string Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[CreateFeedPostPublic_200_response]

Παράδειγμα

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

deleteFeedPostPublic Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
postId string Όχι
broadcastId string Όχι
sso string Όχι

Απάντηση

Επιστρέφει: Option[DeleteFeedPostPublic_200_response]

Παράδειγμα

Παράδειγμα deleteFeedPostPublic
Copy Copy
1
2let (response, httpResponse) = client.deleteFeedPostPublic(
3 tenantId = "my-tenant-123",
4 postId = "post-456",
5 broadcastId = "broadcast-789",
6 sso = ""
7)
8if response.isSome:
9 let result = response.get()
10

getFeedPosts Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
afterId string Όχι
limit int Όχι
tags seq[string] Όχι

Απόκριση

Επιστρέφει: Option[GetFeedPosts_200_response]

Παράδειγμα

Παράδειγμα getFeedPosts
Copy Copy
1
2let (response, httpResponse) = client.getFeedPosts(tenantId = "my-tenant-123", afterId = "post_abc123", limit = 20, tags = @["news", "sports"])
3if response.isSome:
4 let feed = response.get()
5 echo "Feed posts retrieved for tenant my-tenant-123"
6else:
7 echo "No feed posts returned, HTTP status: ", $httpResponse.status
8

getFeedPostsPublic Internal Link

Παράμετροι

Name Type Required Description
tenantId string Ναι
afterId string Όχι
limit int Όχι
tags seq[string] Όχι
sso string Όχι
isCrawler bool Όχι
includeUserInfo bool Όχι

Απόκριση

Επιστρέφει: Option[GetFeedPostsPublic_200_response]

Παράδειγμα

Παράδειγμα getFeedPostsPublic
Copy Copy
1
2let (response, httpResponse) = client.getFeedPostsPublic(
3 tenantId = "my-tenant-123",
4 afterId = "",
5 limit = 0,
6 tags = @[],
7 sso = "",
8 isCrawler = false,
9 includeUserInfo = false
10)
11
12if response.isSome:
13 let feed = response.get()
14 echo feed
15

getFeedPostsStats Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
postIds seq[string] Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[GetFeedPostsStats_200_response]

Παράδειγμα

Παράδειγμα getFeedPostsStats
Copy Copy
1
2let (response, httpResponse) = client.getFeedPostsStats(
3 tenantId = "my-tenant-123",
4 postIds = @["news/article-2025-11-22", "opinion/market-trends-452"],
5 sso = ""
6)
7
8if response.isSome:
9 let stats = response.get()
10 discard stats
11

getUserReactsPublic Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
postIds seq[string] Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[GetUserReactsPublic_200_response]

Παράδειγμα

Παράδειγμα getUserReactsPublic
Copy Copy
1
2let (response, httpResponse) = client.getUserReactsPublic(tenantId = "my-tenant-123", postIds = @[], sso = "")
3if response.isSome:
4 let reacts = response.get()
5 discard reacts
6

reactFeedPostPublic Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
postId string Όχι
reactBodyParams ReactBodyParams Όχι
isUndo bool Όχι
broadcastId string Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[ReactFeedPostPublic_200_response]

Παράδειγμα

Παράδειγμα reactFeedPostPublic
Copy Copy
1
2let (response, httpResponse) = client.reactFeedPostPublic(
3 tenantId = "my-tenant-123",
4 postId = "news/article-title",
5 reactBodyParams = ReactBodyParams(),
6 isUndo = false,
7 broadcastId = "broadcast-456",
8 sso = ""
9)
10if response.isSome:
11 let result = response.get()
12 echo "Reaction result: ", result
13else:
14 echo "Reaction failed, HTTP response: ", httpResponse
15

updateFeedPost Internal Link

Παράμετροι

Name Type Required Description
tenantId string Ναι
id string Όχι
feedPost FeedPost Όχι

Απόκριση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

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

updateFeedPostPublic Internal Link


Παράμετροι

Όνομα Τύπος Υποχρεωτικό Περιγραφή
tenantId string Ναι
postId string Όχι
updateFeedPostParams UpdateFeedPostParams Όχι
broadcastId string Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[CreateFeedPostPublic_200_response]

Παράδειγμα

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

flagCommentPublic Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
commentId string Ναι
isFlagged bool Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα flagCommentPublic
Copy Copy
1
2let (response, httpResponse) = client.flagCommentPublic(
3 tenantId = "my-tenant-123",
4 commentId = "comment-98765",
5 isFlagged = false,
6 sso = ""
7)
8if response.isSome:
9 let flagResult = response.get()
10 discard flagResult
11

addHashTag Internal Link

Παράμετροι

Name Type Required Description
tenantId string Ναι
createHashTagBody CreateHashTagBody Όχι

Απόκριση

Επιστρέφει: Option[AddHashTag_200_response]

Παράδειγμα

Παράδειγμα addHashTag
Copy Copy
1
2let createBody = CreateHashTagBody(
3 name = "sports",
4 description = "Articles and discussions about sports",
5 aliases = @["sport", "athletics"],
6 isActive = true
7)
8
9let (response, httpResponse) = client.addHashTag(tenantId = "my-tenant-123", createHashTagBody = createBody)
10
11if response.isSome:
12 let added = response.get()
13 echo "HashTag added successfully"
14else:
15 echo "Failed to add HashTag"
16

addHashTagsBulk Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
bulkCreateHashTagsBody BulkCreateHashTagsBody Όχι

Απάντηση

Επιστρέφει: Option[AddHashTagsBulk_200_response]

Παράδειγμα

Παράδειγμα addHashTagsBulk
Copy Copy
1
2let bulkBody = BulkCreateHashTagsBody(
3 tags = @["breaking", "world-news", "economy"],
4 createdBy = "editor@dailynews.com",
5 replaceExisting = false
6)
7let (response, httpResponse) = client.addHashTagsBulk(tenantId = "newsroom-tenant-42", bulkCreateHashTagsBody = bulkBody)
8if response.isSome:
9 let created = response.get()
10 echo created
11else:
12 echo "AddHashTagsBulk failed:", httpResponse
13

deleteHashTag Internal Link

Παράμετροι

Όνομα Τύπος Απαραίτητο Περιγραφή
tag string Όχι
tenantId string Ναι
deleteHashTagRequest DeleteHashTagRequest Όχι

Απάντηση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα deleteHashTag
Copy Copy
1
2let (response, httpResponse) = client.deleteHashTag(tag = "breaking-news", tenantId = "my-tenant-123", deleteHashTagRequest = DeleteHashTagRequest())
3if response.isSome:
4 let result = response.get()
5 discard result
6

getHashTags Internal Link


Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
page float64 Όχι

Απόκριση

Επιστρέφει: Option[GetHashTags_200_response]

Παράδειγμα

getHashTags Παράδειγμα
Copy Copy
1
2let (response, httpResponse) = client.getHashTags(tenantId = "my-tenant-123", page = 1.0)
3if response.isSome:
4 let tags = response.get()
5 for t in tags:
6 echo t
7else:
8 echo "no hashtags found"
9

patchHashTag Internal Link


Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tag string Όχι
tenantId string Ναι
updateHashTagBody UpdateHashTagBody Όχι

Απόκριση

Επιστρέφει: Option[PatchHashTag_200_response]

Παράδειγμα

Παράδειγμα patchHashTag
Copy Copy
1
2let (response, httpResponse) = client.patchHashTag(tag = "politics", tenantId = "my-tenant-123", updateHashTagBody = UpdateHashTagBody())
3
4if response.isSome:
5 let updated = response.get()
6 echo "Hashtag updated successfully"
7else:
8 echo "Failed to update hashtag, status:", httpResponse.status
9

createModerator Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
createModeratorBody CreateModeratorBody Όχι

Απόκριση

Επιστρέφει: Option[CreateModerator_200_response]

Παράδειγμα

Παράδειγμα createModerator
Copy Copy
1
2let createBody = CreateModeratorBody(
3 email = "moderator@news-site.com",
4 displayName = "News Moderator",
5 permissions = @["approve_comments", "delete_comments"],
6 isSuperAdmin = false
7)
8
9let (response, httpResponse) = client.createModerator(tenantId = "my-tenant-123", createModeratorBody = createBody)
10
11if response.isSome:
12 let moderator = response.get()
13 echo "Created moderator: ", $moderator
14

deleteModerator Internal Link


Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
sendEmail string Όχι

Απόκριση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα deleteModerator
Copy Copy
1
2let (response, httpResponse) = client.deleteModerator(tenantId = "my-tenant-123", id = "moderator-456", sendEmail = "false")
3if response.isSome:
4 let flagResp = response.get()
5 echo "Moderator deletion response: ", $flagResp
6else:
7 echo "No response body; HTTP status: ", $httpResponse.status
8

getModerator Internal Link

Παράμετροι

Name Type Required Description
tenantId string Ναι
id string Όχι

Απόκριση

Επιστρέφει: Option[GetModerator_200_response]

Παράδειγμα

Παράδειγμα getModerator
Copy Copy
1
2let (response, httpResponse) = client.getModerator(tenantId = "my-tenant-123", id = "mod-98765")
3if response.isSome:
4 let moderator = response.get()
5 discard moderator
6

getModerators Internal Link

Παράμετροι

Name Type Required Description
tenantId string Ναι
skip float64 Όχι

Απόκριση

Επιστρέφει: Option[GetModerators_200_response]

Παράδειγμα

Παράδειγμα getModerators
Copy Copy
1
2let (response, httpResponse) = client.getModerators(tenantId = "my-tenant-123", skip = 0.0)
3if response.isSome:
4 let moderators = response.get()
5 echo "Moderators fetched successfully"
6 echo moderators
7

updateModerator Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Yes
id string No
updateModeratorBody UpdateModeratorBody No

Απόκριση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα updateModerator
Copy Copy
1
2let updateBody = UpdateModeratorBody(
3 name: "Alicia Gomez",
4 email: "alicia.gomez@dailynews.com",
5 active: true,
6 roles: @["moderator"]
7)
8
9let (response, httpResponse) = client.updateModerator(tenantId = "my-tenant-123", id = "moderator-789", updateModeratorBody = updateBody)
10
11if response.isSome:
12 let updated = response.get()
13 echo "Moderator updated:", updated
14

deleteNotificationCount Internal Link

Παράμετροι

Name Type Required Description
tenantId string Yes
id string No

Απόκριση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα deleteNotificationCount
Copy Copy
1
2let (response, httpResponse) = client.deleteNotificationCount(tenantId = "my-tenant-123", id = "notif-456")
3if response.isSome:
4 let deleted = response.get()
5 echo "Deleted notification count:", deleted
6else:
7 echo "No response body; HTTP response:", httpResponse
8

getCachedNotificationCount Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι

Απόκριση

Επιστρέφει: Option[GetCachedNotificationCount_200_response]

Παράδειγμα

Παράδειγμα getCachedNotificationCount
Copy Copy
1
2let (response, httpResponse) = client.getCachedNotificationCount(tenantId = "my-tenant-123", id = "notif-thread-2026")
3if response.isSome:
4 let cached = response.get()
5 echo "Cached notification count: ", $cached
6

getNotificationCount Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
userId string Όχι
urlId string Ναι
fromCommentId string Όχι
viewed bool Όχι

Απόκριση

Επιστρέφει: Option[GetNotificationCount_200_response]

Παράδειγμα

Παράδειγμα getNotificationCount
Copy Copy
1
2let (response, httpResponse) = client.getNotificationCount(
3 tenantId = "acme-corp-tenant-12",
4 userId = "user-84",
5 urlId = "news/2026/market-update",
6 fromCommentId = "cmt-20251234",
7 viewed = false
8)
9
10if response.isSome:
11 let notificationData = response.get()
12 echo "Received notification data"
13else:
14 echo "No notification data"
15

getNotifications Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
userId string Όχι
urlId string Ναι
fromCommentId string Όχι
viewed bool Όχι
skip float64 Όχι

Απόκριση

Επιστρέφει: Option[GetNotifications_200_response]

Παράδειγμα

Παράδειγμα getNotifications
Copy Copy
1
2let (response, httpResponse) = client.getNotifications(
3 tenantId = "fastcomments-tenant-42",
4 userId = "",
5 urlId = "news/latest-tech-innovations",
6 fromCommentId = "",
7 viewed = false,
8 skip = 0.0
9)
10
11if response.isSome:
12 let notifications = response.get()
13 echo "Received notifications: ", notifications
14else:
15 echo "No notifications, response: ", httpResponse
16

updateNotification Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
updateNotificationBody UpdateNotificationBody Όχι
userId string Όχι

Απάντηση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα updateNotification
Copy Copy
1
2let (response, httpResponse) = client.updateNotification(tenantId = "my-tenant-123",
3 id = "notif-456",
4 updateNotificationBody = UpdateNotificationBody(),
5 userId = "user-789")
6if response.isSome:
7 let updated = response.get()
8 echo "Updated notification id: ", $updated
9

addPage Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
createAPIPageData CreateAPIPageData Όχι

Απόκριση

Επιστρέφει: Option[AddPageAPIResponse]

Παράδειγμα

Παράδειγμα addPage
Copy Copy
1
2var createData: CreateAPIPageData
3createData.url = "news/nim-4-release"
4createData.title = "Nim 4 Release Coverage"
5createData.path = "/news/nim-4-release"
6createData.isEnabled = true
7createData.tags = @["nim", "release"]
8createData.description = "Coverage of Nim 4 release"
9
10let (response, httpResponse) = client.addPage(tenantId = "my-tenant-123", createAPIPageData = createData)
11
12if response.isSome:
13 let pageResp = response.get()
14 echo pageResp
15

deletePage Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι

Απάντηση

Επιστρέφει: Option[DeletePageAPIResponse]

Παράδειγμα

Παράδειγμα deletePage
Copy Copy
1
2let (response, httpResponse) = client.deletePage(tenantId = "site-tenant-456", id = "news/winter-updates-2025")
3if response.isSome:
4 let deleted = response.get()
5 echo "DeletePageAPIResponse:", deleted
6else:
7 echo "Delete failed, HTTP response:", httpResponse
8

getPageByURLId Internal Link

Παράμετροι

Name Type Required Description
tenantId string Yes
urlId string Yes

Απόκριση

Επιστρέφει: Option[GetPageByURLIdAPIResponse]

Παράδειγμα

Παράδειγμα getPageByURLId
Copy Copy
1
2let (response, httpResponse) = client.getPageByURLId(tenantId = "my-tenant-123", urlId = "news/article-title")
3if response.isSome:
4 let page = response.get()
5 echo "Page ID: ", page.id
6 echo "Title: ", page.title
7 echo "URL: ", page.url
8 echo "Published: ", $page.published
9 echo "Tags: ", $page.tags
10else:
11 echo "No page found. HTTP status: ", httpResponse.statusCode
12

getPages Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι

Απόκριση

Επιστρέφει: Option[GetPagesAPIResponse]

Παράδειγμα

Παράδειγμα getPages
Copy Copy
1
2let (response, httpResponse) = client.getPages(tenantId = "news-site-456")
3if response.isSome:
4 let pages = response.get()
5 echo "Received pages response: ", pages
6else:
7 echo "No pages returned. HTTP response: ", httpResponse
8

patchPage Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
updateAPIPageData UpdateAPIPageData Όχι

Απάντηση

Επιστρέφει: Option[PatchPageAPIResponse]

Παράδειγμα

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

deletePendingWebhookEvent Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι

Απάντηση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα deletePendingWebhookEvent
Copy Copy
1
2let (response, httpResponse) = client.deletePendingWebhookEvent(tenantId = "my-tenant-123", id = "wh_evt_6f1e3b2a")
3if response.isSome:
4 let flagResp = response.get()
5 discard flagResp
6

getPendingWebhookEventCount Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
commentId string Ναι
externalId string Όχι
eventType string Όχι
domain string Όχι
attemptCountGT float64 Όχι

Απόκριση

Επιστρέφει: Option[GetPendingWebhookEventCount_200_response]

Παράδειγμα

Παράδειγμα getPendingWebhookEventCount
Copy Copy
1
2let (response, httpResponse) = client.getPendingWebhookEventCount(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-4567",
5 externalId = "",
6 eventType = "",
7 domain = "",
8 attemptCountGT = 0.0
9)
10if response.isSome:
11 let pending = response.get()
12 echo "Received pending webhook event count response: ", $pending
13else:
14 echo "No pending webhook event count returned, HTTP response: ", $httpResponse
15

getPendingWebhookEvents Internal Link

Παράμετροι

Name Type Required Description
tenantId string Ναι
commentId string Ναι
externalId string Όχι
eventType string Όχι
domain string Όχι
attemptCountGT float64 Όχι
skip float64 Όχι

Απόκριση

Επιστρέφει: Option[GetPendingWebhookEvents_200_response]

Παράδειγμα

Παράδειγμα getPendingWebhookEvents
Copy Copy
1
2let (response, httpResponse) = client.getPendingWebhookEvents(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-456789",
5 externalId = "",
6 eventType = "",
7 domain = "",
8 attemptCountGT = 0.0,
9 skip = 0.0
10)
11if response.isSome:
12 let pending = response.get()
13 discard pending
14 echo "Received pending webhook events"
15else:
16 echo "No pending webhook events"
17

createQuestionConfig Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
createQuestionConfigBody CreateQuestionConfigBody Όχι

Απόκριση

Επιστρέφει: Option[CreateQuestionConfig_200_response]

Παράδειγμα

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

deleteQuestionConfig Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι

Απόκριση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα deleteQuestionConfig
Copy Copy
1
2let (response, httpResponse) = client.deleteQuestionConfig(tenantId = "my-tenant-123", id = "qcfg-456")
3if response.isSome:
4 let respVal = response.get()
5 echo "Delete succeeded for tenant my-tenant-123"
6else:
7 echo "Delete returned no data (status: ", $httpResponse.status, ")"
8

getQuestionConfig Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι

Απόκριση

Επιστρέφει: Option[GetQuestionConfig_200_response]

Παράδειγμα

Παράδειγμα getQuestionConfig
Copy Copy
1
2let (response, httpResponse) = client.getQuestionConfig(tenantId = "my-tenant-123", id = "qcfg-98765")
3if response.isSome:
4 let config = response.get()
5 echo "Received question config for tenant:", " my-tenant-123"
6

getQuestionConfigs Internal Link


Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
skip float64 Όχι

Απάντηση

Επιστρέφει: Option[GetQuestionConfigs_200_response]

Παράδειγμα

Παράδειγμα getQuestionConfigs
Copy Copy
1
2let (response, httpResponse) = client.getQuestionConfigs(tenantId = "my-tenant-123", skip = 0.0)
3if response.isSome:
4 let configs = response.get()
5 discard configs
6

updateQuestionConfig Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
updateQuestionConfigBody UpdateQuestionConfigBody Όχι

Απόκριση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα updateQuestionConfig
Copy Copy
1
2let (response, httpResponse) = client.updateQuestionConfig(
3 tenantId = "my-tenant-123",
4 id = "q-config-456",
5 updateQuestionConfigBody = UpdateQuestionConfigBody()
6)
7if response.isSome:
8 let updated = response.get()
9 discard updated
10 echo "Question config updated"
11else:
12 echo "Update did not return a result"
13

createQuestionResult Internal Link

Παράμετροι

Όνομα Τύπος Απαραίτητο Περιγραφή
tenantId string Ναι
createQuestionResultBody CreateQuestionResultBody Όχι

Απόκριση

Επιστρέφει: Option[CreateQuestionResult_200_response]

Παράδειγμα

Παράδειγμα createQuestionResult
Copy Copy
1
2let (response, httpResponse) = client.createQuestionResult(tenantId = "my-tenant-123",
3 createQuestionResultBody = CreateQuestionResultBody(questionId: "q-456",
4 userId: "user-789",
5 correct: true,
6 score: 9,
7 answers: @["B", "D"]))
8if response.isSome:
9 let result = response.get()
10 echo result
11

deleteQuestionResult Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι

Απόκριση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα deleteQuestionResult
Copy Copy
1
2let (response, httpResponse) = client.deleteQuestionResult(tenantId = "my-tenant-123", id = "question-result-789")
3if response.isSome:
4 let result = response.get()
5 echo "Deleted question result:", result
6else:
7 echo "No result returned, HTTP status:", $httpResponse.status
8

getQuestionResult Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι

Απάντηση

Επιστρέφει: Option[GetQuestionResult_200_response]

Παράδειγμα

Παράδειγμα getQuestionResult
Copy Copy
1
2let (response, httpResponse) = client.getQuestionResult(tenantId = "my-tenant-123", id = "question-456")
3if response.isSome:
4 let result = response.get()
5 echo "Received question result:"
6 echo result
7else:
8 echo "No question result returned"
9

getQuestionResults Internal Link

Παράμετροι

Name Type Required Description
tenantId string Ναι
urlId string Ναι
userId string Όχι
startDate string Όχι
questionId string Όχι
questionIds string Όχι
skip float64 Όχι

Απόκριση

Επιστρέφει: Option[GetQuestionResults_200_response]

Παράδειγμα

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

updateQuestionResult Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
updateQuestionResultBody UpdateQuestionResultBody Όχι

Απόκριση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

updateQuestionResult Παράδειγμα
Copy Copy
1
2let (response, httpResponse) = client.updateQuestionResult(
3 tenantId = "my-tenant-123",
4 id = "question-456",
5 updateQuestionResultBody = UpdateQuestionResultBody(
6 result = "approved",
7 reviewerId = "moderator-42",
8 notes = "Valid question, no action required",
9 isSpam = false
10 )
11)
12if response.isSome:
13 let flagResponse = response.get()
14 discard flagResponse
15

aggregateQuestionResults Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
questionId string Όχι
questionIds seq[string] Όχι
urlId string Ναι
timeBucket AggregateTimeBucket Όχι
startDate string Όχι
forceRecalculate bool Όχι

Απόκριση

Επιστρέφει: Option[AggregateQuestionResults_200_response]

Παράδειγμα

Παράδειγμα aggregateQuestionResults
Copy Copy
1
2let (response, httpResponse) = client.aggregateQuestionResults(
3 tenantId = "my-tenant-123",
4 questionId = "",
5 questionIds = @[],
6 urlId = "news/economy/budget-2025",
7 timeBucket = AggregateTimeBucket(0),
8 startDate = "",
9 forceRecalculate = false
10)
11
12if response.isSome:
13 let aggResults = response.get()
14 discard aggResults
15

bulkAggregateQuestionResults Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
bulkAggregateQuestionResultsRequest BulkAggregateQuestionResultsRequest Όχι
forceRecalculate bool Όχι

Απάντηση

Επιστρέφει: Option[BulkAggregateQuestionResults_200_response]

Παράδειγμα

Παράδειγμα bulkAggregateQuestionResults
Copy Copy
1
2let request = BulkAggregateQuestionResultsRequest()
3let (response, httpResponse) = client.bulkAggregateQuestionResults(tenantId = "my-tenant-123", bulkAggregateQuestionResultsRequest = request, forceRecalculate = false)
4if response.isSome:
5 let aggregated = response.get()
6 echo aggregated
7

combineCommentsWithQuestionResults Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
questionId string Όχι
questionIds seq[string] Όχι
urlId string Ναι
startDate string Όχι
forceRecalculate bool Όχι
minValue float64 Όχι
maxValue float64 Όχι
limit float64 Όχι

Απόκριση

Επιστρέφει: Option[CombineCommentsWithQuestionResults_200_response]

Παράδειγμα

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

addSSOUser Internal Link

Parameters

Όνομα Τύπος Απαραίτητο Περιγραφή
tenantId string Ναι
createAPISSOUserData CreateAPISSOUserData Όχι

Απόκριση

Επιστρέφει: Option[AddSSOUserAPIResponse]

Παράδειγμα

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

deleteSSOUser Internal Link


Παράμετροι

Όνομα Τύπος Απαραίτητο Περιγραφή
tenantId string Ναι
id string Όχι
deleteComments bool Όχι
commentDeleteMode string Όχι

Απόκριση

Επιστρέφει: Option[DeleteSSOUserAPIResponse]

Παράδειγμα

Παράδειγμα deleteSSOUser
Copy Copy
1
2let (response, httpResponse) = client.deleteSSOUser(tenantId = "my-tenant-123", id = "sso-user-9876", deleteComments = true, commentDeleteMode = "hard")
3if response.isSome:
4 let deleted = response.get()
5 discard deleted
6else:
7 discard httpResponse
8

getSSOUserByEmail Internal Link


Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
email string Όχι

Απάντηση

Επιστρέφει: Option[GetSSOUserByEmailAPIResponse]

Παράδειγμα

Παράδειγμα getSSOUserByEmail
Copy Copy
1
2let (response, httpResponse) = client.getSSOUserByEmail(tenantId = "my-tenant-123", email = "alice@newsco.com")
3if response.isSome:
4 let ssoUser = response.get()
5 echo "SSO user found: ", ssoUser.email
6else:
7 echo "No SSO user found. HTTP status: ", httpResponse.status
8

getSSOUserById Internal Link

Παράμετροι

Name Type Required Description
tenantId string Ναι
id string Όχι

Απόκριση

Επιστρέφει: Option[GetSSOUserByIdAPIResponse]

Παράδειγμα

Παράδειγμα getSSOUserById
Copy Copy
1
2let (response, httpResponse) = client.getSSOUserById(tenantId = "my-tenant-123", id = "user-789")
3if response.isSome:
4 let ssoUser: GetSSOUserByIdAPIResponse = response.get()
5 echo "SSO user retrieved: ", $ssoUser
6else:
7 echo "No SSO user found, HTTP status: ", httpResponse.statusCode
8

getSSOUsers Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
skip int Όχι

Απόκριση

Επιστρέφει: Option[GetSSOUsers_200_response]

Παράδειγμα

Παράδειγμα getSSOUsers
Copy Copy
1
2let (response, httpResponse) = client.getSSOUsers(tenantId = "my-tenant-123", skip = 0)
3if response.isSome:
4 let ssoUsers = response.get()
5 echo "Fetched SSO users:"
6 echo ssoUsers
7else:
8 echo "No SSO users returned, HTTP status: ", httpResponse.statusCode
9

patchSSOUser Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
updateAPISSOUserData UpdateAPISSOUserData Όχι
updateComments bool Όχι

Απόκριση

Επιστρέφει: Option[PatchSSOUserAPIResponse]

Παράδειγμα

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

putSSOUser Internal Link

Parameters

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
updateAPISSOUserData UpdateAPISSOUserData Όχι
updateComments bool Όχι

Απόκριση

Επιστρέφει: Option[PutSSOUserAPIResponse]

Παράδειγμα

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

createSubscription Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
createAPIUserSubscriptionData CreateAPIUserSubscriptionData Όχι

Απόκριση

Επιστρέφει: Option[CreateSubscriptionAPIResponse]

Παράδειγμα

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

deleteSubscription Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
userId string Όχι

Απόκριση

Επιστρέφει: Option[DeleteSubscriptionAPIResponse]

Παράδειγμα

deleteSubscription Παράδειγμα
Copy Copy
1
2let (response, httpResponse) = client.deleteSubscription(tenantId = "my-tenant-123", id = "sub-98765", userId = "user-456")
3if response.isSome:
4 let deleteResp = response.get()
5 echo "Delete subscription response received"
6else:
7 echo "No subscription response"
8

getSubscriptions Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
userId string Όχι

Απάντηση

Επιστρέφει: Option[GetSubscriptionsAPIResponse]

Παράδειγμα

Παράδειγμα getSubscriptions
Copy Copy
1
2let (response, httpResponse) = client.getSubscriptions(tenantId = "my-tenant-123", userId = "")
3if response.isSome:
4 let subscriptions = response.get()
5 discard subscriptions
6

getTenantDailyUsages Internal Link

Παράμετροι

Όνομα Τύπος Υποχρεωτικό Περιγραφή
tenantId string Ναι
yearNumber float64 Όχι
monthNumber float64 Όχι
dayNumber float64 Όχι
skip float64 Όχι

Απόκριση

Επιστρέφει: Option[GetTenantDailyUsages_200_response]

Παράδειγμα

Παράδειγμα getTenantDailyUsages
Copy Copy
1
2let (response, httpResponse) = client.getTenantDailyUsages(
3 tenantId = "my-tenant-123",
4 yearNumber = 2025.0,
5 monthNumber = 6.0,
6 dayNumber = 15.0,
7 skip = 0.0
8)
9
10if response.isSome:
11 let usages = response.get()
12 echo usages
13else:
14 echo "No daily usages returned"
15

createTenantPackage Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
createTenantPackageBody CreateTenantPackageBody Όχι

Απάντηση

Επιστρέφει: Option[CreateTenantPackage_200_response]

Παράδειγμα

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

deleteTenantPackage Internal Link

Παράμετροι

Name Type Required Description
tenantId string Ναι
id string Όχι

Απόκριση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα deleteTenantPackage
Copy Copy
1
2let (response, httpResponse) = client.deleteTenantPackage(tenantId = "my-tenant-123", id = "pkg-789")
3if response.isSome:
4 let deleted = response.get()
5 echo "Successfully deleted tenant package"
6

getTenantPackage Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι

Απόκριση

Επιστρέφει: Option[GetTenantPackage_200_response]

Παράδειγμα

Παράδειγμα getTenantPackage
Copy Copy
1
2let (response, httpResponse) = client.getTenantPackage(tenantId = "my-tenant-123", id = "pkg-premium-001")
3if response.isSome:
4 let pkg = response.get()
5 echo pkg
6else:
7 echo "No package found for tenant"
8

getTenantPackages Internal Link


Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
skip float64 Όχι

Απόκριση

Επιστρέφει: Option[GetTenantPackages_200_response]

Παράδειγμα

Παράδειγμα getTenantPackages
Copy Copy
1
2let (response, httpResponse) = client.getTenantPackages(tenantId = "my-tenant-123", skip = 0.0)
3if response.isSome:
4 let packages = response.get()
5 echo "Received packages for tenant:", " my-tenant-123"
6 echo packages
7else:
8 echo "No packages found, status:", httpResponse.status
9

replaceTenantPackage Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
replaceTenantPackageBody ReplaceTenantPackageBody Όχι

Απόκριση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

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

updateTenantPackage Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
updateTenantPackageBody UpdateTenantPackageBody Όχι

Απόκριση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα updateTenantPackage
Copy Copy
1
2let (response, httpResponse) = client.updateTenantPackage(tenantId = "my-tenant-123", id = "pkg-premium", updateTenantPackageBody = UpdateTenantPackageBody())
3if response.isSome:
4 let updated = response.get()
5 echo "Updated package received:", updated
6else:
7 echo "Update failed, HTTP status: ", httpResponse.status
8

createTenantUser Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
createTenantUserBody CreateTenantUserBody Όχι

Απόκριση

Επιστρέφει: Option[CreateTenantUser_200_response]

Παράδειγμα

Παράδειγμα createTenantUser
Copy Copy
1
2let createBody = CreateTenantUserBody(
3 email = "jane.doe@acmepub.com",
4 displayName = "Jane Doe",
5 password = "S3cur3P@ssw0rd",
6 roles = @["moderator", "editor"],
7 disabled = false
8)
9let (response, httpResponse) = client.createTenantUser(tenantId = "my-tenant-123", createTenantUserBody = createBody)
10if response.isSome:
11 let createdUser = response.get()
12 echo createdUser
13

deleteTenantUser Internal Link

Παράμετροι

Name Type Required Description
tenantId string Ναι
id string Όχι
deleteComments string Όχι
commentDeleteMode string Όχι

Απάντηση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα deleteTenantUser
Copy Copy
1
2let (response, httpResponse) = client.deleteTenantUser(tenantId = "my-tenant-123", id = "user-456", deleteComments = "", commentDeleteMode = "")
3if response.isSome:
4 let flagResp = response.get()
5 echo flagResp
6

getTenantUser Internal Link

Παράμετροι

Name Type Required Description
tenantId string Ναι
id string Όχι

Απόκριση

Επιστρέφει: Option[GetTenantUser_200_response]

Παράδειγμα

Παράδειγμα getTenantUser
Copy Copy
1
2let (response, httpResponse) = client.getTenantUser(tenantId = "my-tenant-123", id = "user-456")
3if response.isSome:
4 let tenantUser = response.get()
5 discard tenantUser
6else:
7 discard httpResponse
8

getTenantUsers Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
skip float64 Όχι

Απόκριση

Επιστρέφει: Option[GetTenantUsers_200_response]

Παράδειγμα

Παράδειγμα getTenantUsers
Copy Copy
1
2let (response, httpResponse) = client.getTenantUsers(tenantId = "my-tenant-123", skip = 0.0)
3if response.isSome:
4 let tenantUsers = response.get()
5 echo "Fetched tenant users for my-tenant-123"
6 discard tenantUsers
7else:
8 echo "No users returned"
9 discard httpResponse
10

replaceTenantUser Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
replaceTenantUserBody ReplaceTenantUserBody Όχι
updateComments string Όχι

Απόκριση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα replaceTenantUser
Copy Copy
1
2let replaceBody = ReplaceTenantUserBody(name: "Jane Doe", email: "jane.doe@example.com", roles: @["moderator", "contributor"], banned: false)
3let (response, httpResponse) = client.replaceTenantUser(tenantId = "my-tenant-123", id = "user-789", replaceTenantUserBody = replaceBody, updateComments = "true")
4if response.isSome:
5 let updated = response.get()
6 echo updated
7else:
8 echo "No response returned"
9

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
redirectURL string Όχι

Απάντηση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα sendLoginLink
Copy Copy
1
2let (response, httpResponse) = client.sendLoginLink(tenantId = "fastcomments-tenant-42", id = "user-9876", redirectURL = "https://news.example.com/articles/2026/fastcomments-login")
3if response.isSome:
4 let loginResp = response.get()
5 echo "Login link sent successfully"
6else:
7 echo "Failed to send login link"
8

updateTenantUser Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
updateTenantUserBody UpdateTenantUserBody Όχι
updateComments string Όχι

Απάντηση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

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

createTenant Internal Link

Παράμετροι

Name Type Required Description
tenantId string Ναι
createTenantBody CreateTenantBody Όχι

Απόκριση

Επιστρέφει: Option[CreateTenant_200_response]

Παράδειγμα

Παράδειγμα createTenant
Copy Copy
1
2let (response, httpResponse) = client.createTenant(tenantId = "my-tenant-123", createTenantBody = CreateTenantBody(
3 name: "My Tenant 123",
4 domain: "mytenant.example.com",
5 plan: "pro",
6 isActive: true,
7 allowedOrigins: @["https://www.example.com", "https://admin.example.com"]
8))
9if response.isSome:
10 let tenantInfo = response.get()
11 discard tenantInfo
12

deleteTenant Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
sure string Όχι

Απόκριση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα deleteTenant
Copy Copy
1
2let (response, httpResponse) = client.deleteTenant(tenantId = "my-tenant-123", id = "", sure = "")
3
4if response.isSome:
5 let flagResp = response.get()
6 echo "Tenant deletion response received for tenant: ", "my-tenant-123"
7 discard flagResp
8else:
9 echo "No response body returned for tenant deletion"
10

getTenant Internal Link

Παράμετροι

Όνομα Τύπος Απαραίτητο Περιγραφή
tenantId string Ναι
id string Όχι

Απάντηση

Επιστρέφει: Option[GetTenant_200_response]

Παράδειγμα

Παράδειγμα getTenant
Copy Copy
1
2let (response, httpResponse) = client.getTenant(tenantId = "my-tenant-123", id = "")
3if response.isSome:
4 let tenant = response.get()
5 echo "Tenant retrieved"
6 discard tenant
7else:
8 echo "No tenant found"
9 echo "HTTP status:", httpResponse.status
10

getTenants Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
meta string Όχι
skip float64 Όχι

Απόκριση

Επιστρέφει: Option[GetTenants_200_response]

Παράδειγμα

Παράδειγμα getTenants
Copy Copy
1
2let (response, httpResponse) = client.getTenants(tenantId = "my-tenant-123", meta = "include=details", skip = 0.0)
3if response.isSome:
4 let tenants = response.get()
5 echo "Received tenants: ", repr(tenants)
6else:
7 echo "Failed to retrieve tenants"
8

updateTenant Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
updateTenantBody UpdateTenantBody Όχι

Απόκριση

Επιστρέφει: Option[FlagCommentPublic_200_response]

Παράδειγμα

Παράδειγμα updateTenant
Copy Copy
1
2let (response, httpResponse) = client.updateTenant(
3 tenantId = "my-tenant-123",
4 id = "tenant-456",
5 updateTenantBody = UpdateTenantBody()
6)
7if response.isSome:
8 let flagResponse = response.get()
9 echo flagResponse
10else:
11 echo "No body returned; HTTP status: ", httpResponse.status
12

uploadImage Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
file string Όχι
sizePreset SizePreset Όχι
urlId string Ναι

Απόκριση

Επιστρέφει: Option[UploadImageResponse]

Παράδειγμα

Παράδειγμα uploadImage
Copy Copy
1
2let (response, httpResponse) = client.uploadImage(
3 tenantId = "my-tenant-123",
4 file = "assets/images/comment-avatar.jpg",
5 sizePreset = SizePreset.small,
6 urlId = "news/article-2025-11-22"
7)
8if response.isSome:
9 let upload = response.get()
10 echo "Uploaded image id: ", upload.id
11 echo "Uploaded image url: ", upload.url
12

getUserBadgeProgressById Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι

Απόκριση

Επιστρέφει: Option[GetUserBadgeProgressById_200_response]

Παράδειγμα

Παράδειγμα getUserBadgeProgressById
Copy Copy
1
2let (response, httpResponse) = client.getUserBadgeProgressById(tenantId = "my-tenant-123", id = "editor-badge-42")
3if response.isSome:
4 let badgeProgress = response.get()
5 echo "Badge progress received:"
6 echo badgeProgress
7else:
8 echo "No badge progress found for tenant 'my-tenant-123' and id 'editor-badge-42'"
9 echo httpResponse
10

getUserBadgeProgressByUserId Internal Link

Παράμετροι

Name Type Required Description
tenantId string Ναι
userId string Όχι

Απόκριση

Επιστρέφει: Option[GetUserBadgeProgressById_200_response]

Παράδειγμα

Παράδειγμα getUserBadgeProgressByUserId
Copy Copy
1
2let (response, httpResponse) = client.getUserBadgeProgressByUserId(tenantId = "my-tenant-123", userId = "user-456")
3if response.isSome:
4 let badgeProgress = response.get()
5 echo "Badge progress retrieved for user-456"
6else:
7 echo "No badge progress found, HTTP status: ", $httpResponse.status
8

getUserBadgeProgressList Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
userId string Όχι
limit float64 Όχι
skip float64 Όχι

Απάντηση

Επιστρέφει: Option[GetUserBadgeProgressList_200_response]

Παράδειγμα

Παράδειγμα getUserBadgeProgressList
Copy Copy
1
2let (response, httpResponse) = client.getUserBadgeProgressList(tenantId = "my-tenant-123", userId = "user-9823", limit = 25.0, skip = 0.0)
3if response.isSome:
4 let badgeProgress = response.get()
5 echo "Badge progress received:", badgeProgress
6else:
7 echo "No badge progress. HTTP response:", httpResponse.status
8

createUserBadge Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
createUserBadgeParams CreateUserBadgeParams Όχι

Απόκριση

Επιστρέφει: Option[CreateUserBadge_200_response]

Παράδειγμα

Παράδειγμα createUserBadge
Copy Copy
1
2let (response, httpResponse) = client.createUserBadge(tenantId = "my-tenant-123",
3 createUserBadgeParams = CreateUserBadgeParams(userId = "user-987", badgeId = "top-commenter"))
4if response.isSome:
5 let createdBadge = response.get()
6 echo "Created badge for user: ", createdBadge.userId
7else:
8 echo "Failed to create badge, status: ", $httpResponse.status
9

deleteUserBadge Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι

Απόκριση

Επιστρέφει: Option[UpdateUserBadge_200_response]

Παράδειγμα

Παράδειγμα deleteUserBadge
Copy Copy
1
2let (response, httpResponse) = client.deleteUserBadge(tenantId = "my-tenant-123", id = "badge-456")
3if response.isSome:
4 let updated = response.get()
5 discard updated
6

getUserBadge Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι

Απόκριση

Επιστρέφει: Option[GetUserBadge_200_response]

Παράδειγμα

Παράδειγμα getUserBadge
Copy Copy
1
2let (response, httpResponse) = client.getUserBadge(tenantId = "my-tenant-123", id = "")
3
4if response.isSome:
5 let badge = response.get()
6 discard badge
7

getUserBadges Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
userId string Όχι
badgeId string Όχι
displayedOnComments bool Όχι
limit float64 Όχι
skip float64 Όχι

Απόκριση

Επιστρέφει: Option[GetUserBadges_200_response]

Παράδειγμα

Παράδειγμα getUserBadges
Copy Copy
1
2let (response, httpResponse) = client.getUserBadges(
3 tenantId = "my-tenant-123",
4 userId = "user-789",
5 badgeId = "top-commenter",
6 displayedOnComments = true,
7 limit = 50.0,
8 skip = 0.0
9)
10
11if response.isSome:
12 let badges = response.get()
13 echo "Retrieved badges: ", $badges
14

updateUserBadge Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
updateUserBadgeParams UpdateUserBadgeParams Όχι

Απόκριση

Επιστρέφει: Option[UpdateUserBadge_200_response]

Παράδειγμα

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

getUserNotificationCount Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
sso string Όχι

Απόκριση

Επιστρέφει: Option[GetUserNotificationCount_200_response]

Παράδειγμα

Παράδειγμα getUserNotificationCount
Copy Copy
1
2let (response, httpResponse) = client.getUserNotificationCount(tenantId = "my-tenant-123", sso = "")
3if response.isSome:
4 let notificationData = response.get()
5 echo "Received notification data: ", $notificationData
6else:
7 echo "No notification data returned. HTTP response: ", $httpResponse.status
8

getUserNotifications Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
pageSize int Όχι
afterId string Όχι
includeContext bool Όχι
afterCreatedAt int64 Όχι
unreadOnly bool Όχι
dmOnly bool Όχι
noDm bool Όχι
includeTranslations bool Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[GetUserNotifications_200_response]

Παράδειγμα

Παράδειγμα getUserNotifications
Copy Copy
1
2let (response, httpResponse) = client.getUserNotifications(
3 tenantId = "my-tenant-123",
4 pageSize = 50,
5 afterId = "notif_9a1b2c3d",
6 includeContext = true,
7 afterCreatedAt = int64(1699999999000),
8 unreadOnly = false,
9 dmOnly = false,
10 noDm = false,
11 includeTranslations = false,
12 sso = ""
13)
14if response.isSome:
15 let notifications = response.get()
16 discard notifications
17else:
18 discard httpResponse
19

resetUserNotificationCount Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
sso string Όχι

Απάντηση

Επιστρέφει: Option[ResetUserNotifications_200_response]

Παράδειγμα

Παράδειγμα resetUserNotificationCount
Copy Copy
1
2let (response, httpResponse) = client.resetUserNotificationCount(tenantId = "my-tenant-123", sso = "sso-jwt-9a8b7c6d")
3if response.isSome:
4 let resetResult = response.get()
5 echo resetResult
6else:
7 echo "Reset failed, status: ", httpResponse.status
8

resetUserNotifications Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
afterId string Όχι
afterCreatedAt int64 Όχι
unreadOnly bool Όχι
dmOnly bool Όχι
noDm bool Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[ResetUserNotifications_200_response]

Παράδειγμα

resetUserNotifications Παράδειγμα
Copy Copy
1
2let (response, httpResponse) = client.resetUserNotifications(
3 tenantId = "my-tenant-123",
4 afterId = "",
5 afterCreatedAt = int64(0),
6 unreadOnly = false,
7 dmOnly = false,
8 noDm = false,
9 sso = ""
10)
11
12if response.isSome:
13 let result = response.get()
14

updateUserNotificationCommentSubscriptionStatus Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
notificationId string Όχι
optedInOrOut string Όχι
commentId string Ναι
sso string Όχι

Απάντηση

Επιστρέφει: Option[UpdateUserNotificationStatus_200_response]

Παράδειγμα

Παράδειγμα updateUserNotificationCommentSubscriptionStatus
Copy Copy
1
2let (response, httpResponse) = client.updateUserNotificationCommentSubscriptionStatus(
3 tenantId = "my-tenant-123",
4 notificationId = "notif-456",
5 optedInOrOut = "opted_in",
6 commentId = "cmt-789",
7 sso = "sso-token-abc"
8)
9if response.isSome:
10 let updatedStatus = response.get()
11 discard updatedStatus
12else:
13 discard httpResponse
14

updateUserNotificationPageSubscriptionStatus Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
urlId string Ναι
url string Όχι
pageTitle string Όχι
subscribedOrUnsubscribed string Όχι
sso string Όχι

Απάντηση

Επιστρέφει: Option[UpdateUserNotificationStatus_200_response]

Παράδειγμα

Παράδειγμα updateUserNotificationPageSubscriptionStatus
Copy Copy
1
2let (response, httpResponse) = client.updateUserNotificationPageSubscriptionStatus(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-2025-11-22",
5 url = "https://example.com/news/article-2025-11-22",
6 pageTitle = "Breaking News: Market Update",
7 subscribedOrUnsubscribed = "subscribed",
8 sso = "sso-token-abc123"
9)
10
11if response.isSome:
12 let result = response.get()
13 discard result
14

updateUserNotificationStatus Internal Link

Παράμετροι

Name Type Απαραίτητο Περιγραφή
tenantId string Ναι
notificationId string Όχι
newStatus string Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[UpdateUserNotificationStatus_200_response]

Παράδειγμα

Παράδειγμα updateUserNotificationStatus
Copy Copy
1
2let (response, httpResponse) = client.updateUserNotificationStatus(
3 tenantId = "my-tenant-123",
4 notificationId = "notif-456",
5 newStatus = "read",
6 sso = "sso-abc-789"
7)
8if response.isSome:
9 let updateResp = response.get()
10 discard updateResp
11

getUserPresenceStatuses Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
urlIdWS string Όχι
userIds string Όχι

Απάντηση

Επιστρέφει: Option[GetUserPresenceStatuses_200_response]

Παράδειγμα

getUserPresenceStatuses Παράδειγμα
Copy Copy
1
2let (response, httpResponse) = client.getUserPresenceStatuses(
3 tenantId = "my-tenant-123",
4 urlIdWS = "news/2025/technology/ai-ethics",
5 userIds = "user-789,user-456"
6)
7if response.isSome:
8 let presence = response.get()
9 echo "Presence received: ", presence
10else:
11 echo "No presence information returned, HTTP status: ", httpResponse.status.code
12

searchUsers Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
urlId string Ναι
usernameStartsWith string Όχι
mentionGroupIds seq[string] Όχι
sso string Όχι

Απόκριση

Επιστρέφει: Option[SearchUsers_200_response]

Παράδειγμα

Παράδειγμα searchUsers
Copy Copy
1
2let (response, httpResponse) = client.searchUsers(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 usernameStartsWith = "jo",
6 mentionGroupIds = @["editors", "sports-team"],
7 sso = "sso-abc-456"
8)
9
10if response.isSome:
11 let users = response.get()
12 echo "Users found: ", users
13else:
14 echo "No users found; HTTP status: ", httpResponse.status
15

getUser Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι

Απόκριση

Επιστρέφει: Option[GetUser_200_response]

Παράδειγμα

Παράδειγμα getUser
Copy Copy
1
2let (response, httpResponse) = client.getUser(tenantId = "my-tenant-123", id = "user-9876")
3if response.isSome:
4 let user = response.get()
5 echo "User:", user
6else:
7 echo "No user found. HTTP response:", httpResponse
8

createVote Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
commentId string Ναι
direction string Όχι
userId string Όχι
anonUserId string Όχι

Απόκριση

Επιστρέφει: Option[VoteComment_200_response]

Παράδειγμα

Παράδειγμα createVote
Copy Copy
1
2let (response, httpResponse) = client.createVote(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-987654321",
5 direction = "up",
6 userId = "user-42",
7 anonUserId = ""
8)
9if response.isSome:
10 let vote = response.get()
11 echo "Vote recorded: ", $vote
12else:
13 echo "Vote not created, HTTP response: ", $httpResponse
14

deleteVote Internal Link


Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
id string Όχι
editKey string Όχι

Απόκριση

Επιστρέφει: Option[DeleteCommentVote_200_response]

Παράδειγμα

Παράδειγμα deleteVote
Copy Copy
1
2let (response, httpResponse) = client.deleteVote(tenantId = "my-tenant-123", id = "", editKey = "")
3if response.isSome:
4 let deleted = response.get()
5 discard deleted
6

getVotes Internal Link

Παράμετροι

Όνομα Τύπος Απαραίτητο Περιγραφή
tenantId string Ναι
urlId string Ναι

Απόκριση

Επιστρέφει: Option[GetVotes_200_response]

Παράδειγμα

Παράδειγμα getVotes
Copy Copy
1
2let (response, httpResponse) = client.getVotes(tenantId = "my-tenant-123", urlId = "news/2026/major-update")
3if response.isSome:
4 let votes = response.get()
5 discard votes
6else:
7 discard httpResponse
8

getVotesForUser Internal Link

Παράμετροι

Όνομα Τύπος Απαιτείται Περιγραφή
tenantId string Ναι
urlId string Ναι
userId string Όχι
anonUserId string Όχι

Απόκριση

Επιστρέφει: Option[GetVotesForUser_200_response]

Παράδειγμα

Παράδειγμα getVotesForUser
Copy Copy
1
2let (response, httpResponse) = client.getVotesForUser(
3 tenantId = "my-tenant-123",
4 urlId = "news/economy-update-2026",
5 userId = "user-789",
6 anonUserId = ""
7)
8
9if response.isSome:
10 let votes = response.get()
11 discard votes
12

Χρειάζεστε βοήθεια?

Εάν αντιμετωπίσετε οποιοδήποτε πρόβλημα ή έχετε ερωτήσεις σχετικά με το Nim SDK, παρακαλούμε:

Συνεισφορά

Οι συνεισφορές είναι ευπρόσδεκτες! Παρακαλούμε επισκεφτείτε το αποθετήριο στο GitHub για οδηγίες συνεισφοράς.