FastComments.com

FastComments Nim SDK


Bu, FastComments için resmi Nim SDK'sıdır.

FastComments API'si için resmi Nim SDK

Depo

GitHub'da Görüntüle


Gereksinimler Internal Link


  • Nim >= 1.6.0
  • nimcrypto >= 0.5.4

Kurulum Internal Link

Nimble Kullanımı

nimble install fastcomments

Kaynak Koddan Derleme

nimble build

Kütüphane İçeriği

Bu kütüphane, API ile çalışmayı kolaylaştırmak için oluşturulmuş API istemcisini ve SSO yardımcı araçlarını içerir.

Genel ve Güvenli API'ler

API istemcisi için üç API modülü vardır: api_default, api_public ve api_moderation. api_default, API anahtarınızı gerektiren yöntemleri içerir ve api_public, tarayıcı/mobil cihaz vb. üzerinden kimlik doğrulama olmadan doğrudan yapılabilecek API çağrılarını içerir. api_moderation modülü ise moderatör panosu için yöntemleri içerir.

api_moderation yöntemleri yorumları ve bunların günlüklerini listeleme, sayma, arama ve dışa aktarma; yorumları kaldırma/geri yükleme, işaretleme, inceleme/spam/onay durumunu ayarlama, oyları ayarlama ve konuları yeniden açma/kapatma gibi moderasyon eylemlerini; yasaklar (bir kullanıcıyı bir yorumdan yasaklama, yasağı geri alma, ön-yasak özetleri, yasağın durumu ve tercihleri ve yasaklı kullanıcı sayıları); ve rozetler ve güven (rozet verme/kaldırma, manuel rozetleri listeleme, bir kullanıcının güven faktörünü alma/ayarlama ve bir kullanıcının dahili profilini alma) kapsar. Her api_moderation yöntemi bir sso parametresi kabul eder, böylece çağrı bir SSO moderatörü olarak kimlik doğrulanır.

Hızlı Başlangıç Internal Link

Kimlik Doğrulamalı API'leri Kullanma (DefaultAPI)

Önemli: Kimlik doğrulamalı uç noktalar, API anahtarınızın x-api-key başlığı olarak ayarlanmasını gerektirir.

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"

# Kimlik doğrulamalı API çağrıları yapın
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"

Public API'leri Kullanma (PublicAPI)

Genel uç noktalar kimlik doğrulama gerektirmez:

import httpclient
import fastcomments
import fastcomments/apis/api_public

let client = newHttpClient()

# Genel API çağrıları yapın
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"

Moderasyon API'lerini Kullanma (ModerationAPI)

Moderasyon uç noktaları moderatör panosunu destekler ve görev yapan moderatör için bir SSO belirteciyle kimlik doğrulanır:

import httpclient
import fastcomments
import fastcomments/apis/api_moderation

let client = newHttpClient()

# Moderasyon panosundaki yorumları listeleyin
let (response, httpResponse) = getApiComments(
  httpClient = client,
  page = 0,
  count = 30,
  textSearch = "",
  byIPFromComment = "",
  filters = "",
  searchFilters = "",
  sorts = "",
  demo = false,
  sso = "your-sso-token"
)

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

Yaygın Sorunlar

  1. 401 kimlik doğrulama hatası: DefaultAPI istekleri yapmadan önce HttpClient üzerinde x-api-key başlığını ayarladığınızdan emin olun: client.headers["x-api-key"] = "your-api-key"
  2. Yanlış API sınıfı: Sunucu tarafı kimlik doğrulamalı istekler için api_default kullanın, istemci tarafı/genel istekler için api_public kullanın ve moderatör panosu istekleri için api_moderation kullanın.

API Çağrıları Yapma Internal Link

Bu SDK'daki tüm API yöntemleri (Option[ResponseType], Response) demetleri döndürür. İlk eleman, başarılıysa ayrıştırılmış yanıtı içerir; ikinci eleman ise ham HTTP yanıtıdır.

Örnek: Yorumları Getirme

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"

Notlar Internal Link

Yayın Kimlikleri

Bazı API çağrılarında broadcastId geçirmeniz gerektiğini göreceksiniz. Olayları aldığınızda bu ID'yi geri alırsınız, böylece istemcide değişiklikleri iyimser şekilde uygulamayı planlıyorsanız olayı görmezden gelebilirsiniz (muhtemelen en iyi deneyimi sunduğu için bunu yapmak isteyeceksiniz). Buraya bir UUID gönderin. ID, bir tarayıcı oturumu içinde iki kez oluşmayacak kadar benzersiz olmalıdır.

SSO (Tek Oturum Açma)

SSO örnekleri için aşağıya bakın.

SSO Kullanımı Internal Link

Basit 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

Güvenli 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

Belgeleri gruplayarak (groupBy sağlanmışsa) ve birden çok işlem uygulayarak toplar. Farklı işlemler (örn. sum, countDistinct, avg, vb.) desteklenir.

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
aggregationRequestAggregationRequestHayır
parentTenantIdstringHayır
includeStatsboolHayır

Yanıt

Döndürür: Option[AggregateResponse]

Örnek

aggregate Örneği
Copy Copy
1
2let (response, httpResponse) = client.aggregate(
3 tenantId = "my-tenant-123",
4 aggregationRequest = AggregationRequest(groupBy = @["articleId"], metrics = @["commentCount"], filters = @[], limit = 0),
5 parentTenantId = "",
6 includeStats = false
7)
8
9if response.isSome:
10 let agg = response.get()
11 discard agg
12

getAuditLogs Internal Link

Parametreler

AdTipGerekliAçıklama
tenantIdstringEvet
limitfloat64Hayır
skipfloat64Hayır
orderSORTDIRHayır
afterfloat64Hayır
beforefloat64Hayır

Yanıt

Döndürür: Option[GetAuditLogsResponse]

Örnek

getAuditLogs Örneği
Copy Copy
1
2let (response, httpResponse) = client.getAuditLogs(
3 tenantId = "my-tenant-123",
4 limit = 50.0,
5 skip = 0.0,
6 order = SORTDIR.DESC,
7 after = 1622505600.0,
8 before = 1625097600.0
9)
10
11if response.isSome:
12 let logs = response.get()
13 echo logs
14else:
15 echo "No audit logs returned"
16

logoutPublic Internal Link

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

logoutPublic Örneği
Copy Copy
1
2let (response, httpResponse) = client.logoutPublic(tenantId = "my-tenant-123", sessionId = "sess-9a8b7c6d", userId = "editor-87", revokeAll = false, ipAddress = "")
3if response.isSome:
4 let emptyResp = response.get()
5 echo "Logout successful for user: ", "editor-87"
6else:
7 echo "Logout failed"
8

blockFromCommentPublic Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
commentIdstringEvet
publicBlockFromCommentParamsPublicBlockFromCommentParamsHayır
ssostringHayır

Yanıt

Döndürür: Option[BlockSuccess]

Örnek

blockFromCommentPublic Örneği
Copy Copy
1
2let publicParams = PublicBlockFromCommentParams(
3 reason = "Repeated spam links",
4 durationMinutes = 1440,
5 blockAll = true,
6 notifyUser = false,
7 tags = @["spam", "auto-block"]
8)
9
10let (response, httpResponse) = client.blockFromCommentPublic(
11 tenantId = "my-tenant-123",
12 commentId = "comment-98765",
13 publicBlockFromCommentParams = publicParams,
14 sso = ""
15)
16
17if response.isSome:
18 let blockResult = response.get()
19 echo "Block succeeded: ", $blockResult
20else:
21 echo "Block failed, HTTP status: ", $httpResponse.status
22

unBlockCommentPublic Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
commentIdstringEvet
publicBlockFromCommentParamsPublicBlockFromCommentParamsHayır
ssostringHayır

Yanıt

Döndürür: Option[UnblockSuccess]

Örnek

unBlockCommentPublic Örneği
Copy Copy
1
2let (response, httpResponse) = client.unBlockCommentPublic(tenantId = "my-tenant-123", commentId = "cmt-987654321", publicBlockFromCommentParams = PublicBlockFromCommentParams(), sso = "")
3if response.isSome:
4 let unblockResult = response.get()
5 discard unblockResult
6else:
7 discard httpResponse
8

checkedCommentsForBlocked Internal Link

Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
commentIdsstringHayır
ssostringHayır

Yanıt

Döndürür: Option[CheckBlockedCommentsResponse]

Örnek

checkedCommentsForBlocked Örneği
Copy Copy
1
2let (response, httpResponse) = client.checkedCommentsForBlocked(
3 tenantId = "my-tenant-123",
4 commentIds = "",
5 sso = ""
6)
7if response.isSome:
8 let blockedResp = response.get()
9 echo "Received blocked comments response: ", blockedResp
10else:
11 echo "No response body; HTTP status: ", $httpResponse.status
12

blockUserFromComment Internal Link


Parametreler

AdTürGerekliAçıklama
tenantIdstringYes
idstringNo
blockFromCommentParamsBlockFromCommentParamsNo
userIdstringNo
anonUserIdstringNo

Yanıt

Döndürür: Option[BlockSuccess]

Örnek

blockUserFromComment Örneği
Copy Copy
1
2let (response, httpResponse) = client.blockUserFromComment(
3 tenantId = "my-tenant-123",
4 id = "cmt-7890",
5 blockFromCommentParams = BlockFromCommentParams(
6 reason = "Repeated abusive language",
7 durationMinutes = 1440,
8 notifyUser = true,
9 tags = @["abuse", "automated"]
10 ),
11 userId = "user-456",
12 anonUserId = ""
13)
14
15if response.isSome:
16 let result = response.get()
17 discard result
18else:
19 discard httpResponse
20

createCommentPublic Internal Link


Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
urlIdstringEvet
broadcastIdstringHayır
commentDataCommentDataHayır
sessionIdstringHayır
ssostringHayır

Yanıt

Döndürür: Option[SaveCommentsResponseWithPresence]

Örnek

createCommentPublic Örneği
Copy Copy
1
2let commentPayload = CommentData(
3 text = "Great write-up on serverless architectures.",
4 authorName = "Jane Doe",
5 authorEmail = "jane.doe@example.com",
6 isPublic = true,
7 tags = @["tech", "serverless"]
8)
9let (response, httpResponse) = client.createCommentPublic(
10 tenantId = "my-tenant-123",
11 urlId = "news/2026/06/fastcomments-sdk-update",
12 broadcastId = "broadcast-2026-06-19",
13 commentData = commentPayload,
14 sessionId = "sess-8a7b6c",
15 sso = "sso-jwt-abc123"
16)
17if response.isSome:
18 let saved = response.get()
19 discard saved
20

deleteComment Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
contextUserIdstringHayır
isLiveboolHayır

Yanıt

Döndürür: Option[DeleteCommentResult]

Örnek

deleteComment Örneği
Copy Copy
1
2let (response, httpResponse) = client.deleteComment(tenantId = "my-tenant-123", id = "cmt-98765", contextUserId = "user-456", isLive = true)
3if response.isSome:
4 let result = response.get()
5 echo "DeleteCommentResult received"
6else:
7 echo "No result, HTTP status: ", httpResponse.status
8

deleteCommentPublic Internal Link

Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
commentIdstringEvet
broadcastIdstringHayır
editKeystringHayır
ssostringHayır

Yanıt

Döndürür: Option[PublicAPIDeleteCommentResponse]

Örnek

deleteCommentPublic Örneği
Copy Copy
1
2let (response, httpResponse) = client.deleteCommentPublic(tenantId = "my-tenant-123", commentId = "cmt-987654321", broadcastId = "", editKey = "", sso = "")
3if response.isSome:
4 let deleted = response.get()
5 echo "Delete acknowledged, HTTP status: ", httpResponse.status
6

deleteCommentVote Internal Link

Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
commentIdstringEvet
voteIdstringHayır
urlIdstringEvet
broadcastIdstringHayır
editKeystringHayır
ssostringHayır

Yanıt

Döndürür: Option[VoteDeleteResponse]

Örnek

deleteCommentVote Örneği
Copy Copy
1
2let (response, httpResponse) = client.deleteCommentVote(
3 tenantId = "my-tenant-123",
4 commentId = "comment-456",
5 voteId = "vote-789",
6 urlId = "news/article-title",
7 broadcastId = "",
8 editKey = "",
9 sso = ""
10)
11if response.isSome:
12 let voteResp = response.get()
13 echo "Vote delete response:", voteResp
14else:
15 echo "No response body, HTTP response:", httpResponse
16

flagComment Internal Link


Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
userIdstringHayır
anonUserIdstringHayır

Yanıt

Döndürür: Option[FlagCommentResponse]

Örnek

flagComment Örneği
Copy Copy
1
2let (response, httpResponse) = client.flagComment(
3 tenantId = "my-tenant-123",
4 id = "cmt-98765",
5 userId = "user-12345",
6 anonUserId = ""
7)
8
9if response.isSome:
10 let flagResp = response.get()
11 echo "Flag response received"
12else:
13 echo "No flag response returned"
14

getComment Internal Link


Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[APIGetCommentResponse]

Örnek

getComment Örneği
Copy Copy
1
2let (response, httpResponse) = client.getComment(tenantId = "my-tenant-123", id = "cmt-7890")
3if response.isSome:
4 let comment = response.get()
5 discard comment
6else:
7 echo "Comment not found"
8

getComments Internal Link


Parametreler

AdTürZorunluAçıklama
tenantIdstringEvet
pageintHayır
limitintHayır
skipintHayır
asTreeboolHayır
skipChildrenintHayır
limitChildrenintHayır
maxTreeDepthintHayır
urlIdstringEvet
userIdstringHayır
anonUserIdstringHayır
contextUserIdstringHayır
hashTagstringHayır
parentIdstringHayır
directionSortDirectionsHayır
fromDateint64Hayır
toDateint64Hayır

Yanıt

Döndürür: Option[APIGetCommentsResponse]

Örnek

getComments Örneği
Copy Copy
1
2let (response, httpResponse) = client.getComments(
3 tenantId = "my-tenant-123",
4 page = 1,
5 limit = 25,
6 skip = 0,
7 asTree = true,
8 skipChildren = 0,
9 limitChildren = 5,
10 maxTreeDepth = 3,
11 urlId = "news/2026-global-economy",
12 userId = "user-789",
13 anonUserId = "",
14 contextUserId = "",
15 hashTag = "economy",
16 parentId = "",
17 direction = SortDirections.Desc,
18 fromDate = 1710000000000'i64,
19 toDate = 1710100000000'i64
20)
21if response.isSome:
22 let commentsResp = response.get()
23 discard commentsResp
24

getCommentsPublic Internal Link


req tenantId urlId

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
urlIdstringEvet
pageintHayır
directionSortDirectionsHayır
ssostringHayır
skipintHayır
skipChildrenintHayır
limitintHayır
limitChildrenintHayır
countChildrenboolHayır
fetchPageForCommentIdstringHayır
includeConfigboolHayır
countAllboolHayır
includei10nboolHayır
localestringHayır
modulesstringHayır
isCrawlerboolHayır
includeNotificationCountboolHayır
asTreeboolHayır
maxTreeDepthintHayır
useFullTranslationIdsboolHayır
parentIdstringHayır
searchTextstringHayır
hashTagsseq[string]Hayır
userIdstringHayır
customConfigStrstringHayır
afterCommentIdstringHayır
beforeCommentIdstringHayır

Yanıt

Döndürür: Option[GetCommentsResponseWithPresencePublicComment]

Örnek

getCommentsPublic Örneği
Copy Copy
1
2let (response, httpResponse) = client.getCommentsPublic(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 page = 2,
6 direction = SortDirections.Descending,
7 sso = "",
8 skip = 0,
9 skipChildren = 0,
10 limit = 25,
11 limitChildren = 5,
12 countChildren = false,
13 fetchPageForCommentId = "",
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 = "",
25 searchText = "climate change",
26 hashTags = @["climate", "research"],
27 userId = "user-789",
28 customConfigStr = "",
29 afterCommentId = "",
30 beforeCommentId = ""
31)
32
33if response.isSome:
34 let commentsResp = response.get()
35 echo "Received comments response:"
36 echo commentsResp
37else:
38 echo "No comments returned. HTTP status:", httpResponse.status
39

getCommentText Internal Link


Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
commentIdstringEvet
editKeystringHayır
ssostringHayır

Yanıt

Döndürür: Option[PublicAPIGetCommentTextResponse]

Örnek

getCommentText Örneği
Copy Copy
1
2let (response, httpResponse) = client.getCommentText(tenantId = "my-tenant-123", commentId = "cmt-987654321", editKey = "", sso = "")
3
4if response.isSome:
5 let commentTextResp = response.get()
6 echo commentTextResp
7else:
8 echo "No comment text returned"
9

getCommentVoteUserNames Internal Link


Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
commentIdstringEvet
dirintHayır
ssostringHayır

Yanıt

Döndürür: Option[GetCommentVoteUserNamesSuccessResponse]

Örnek

getCommentVoteUserNames Örneği
Copy Copy
1
2let (response, httpResponse) = client.getCommentVoteUserNames(tenantId = "my-tenant-123", commentId = "cmt-987654", dir = 0, sso = "")
3if response.isSome:
4 let success: GetCommentVoteUserNamesSuccessResponse = response.get()
5 discard success
6

lockComment Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
commentIdstringEvet
broadcastIdstringHayır
ssostringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

lockComment Örneği
Copy Copy
1
2let (response, httpResponse) = client.lockComment(tenantId = "news-tenant-42", commentId = "cmt-8f3a2b9d", broadcastId = "", sso = "")
3if response.isSome:
4 let apiResp = response.get()
5 echo "Locked comment successfully for tenant news-tenant-42"
6else:
7 echo "Failed to lock comment, HTTP status: ", $httpResponse.status
8

pinComment Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
commentIdstringEvet
broadcastIdstringHayır
ssostringHayır

Yanıt

Dönüş: Option[ChangeCommentPinStatusResponse]

Örnek

pinComment Örneği
Copy Copy
1
2let (response, httpResponse) = client.pinComment(tenantId = "my-tenant-123", commentId = "cmt-98765", broadcastId = "", sso = "")
3if response.isSome:
4 let pinnedResp = response.get()
5 echo "Pin status updated for comment cmt-98765"
6else:
7 echo "No response received"
8

saveComment Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
createCommentParamsCreateCommentParamsHayır
isLiveboolHayır
doSpamCheckboolHayır
sendEmailsboolHayır
populateNotificationsboolHayır

Yanıt

Döndürür: Option[APISaveCommentResponse]

Örnek

saveComment Örneği
Copy Copy
1
2let createCommentParams = CreateCommentParams(
3 urlId = "news/2026/major-policy-change",
4 content = "This is a thoughtful comment on the policy change and its potential impacts.",
5 authorName = "Morgan Lee",
6 authorEmail = "morgan.lee@example.org",
7 tags = @["policy","analysis"],
8 extraData = @[])
9
10let (response, httpResponse) = client.saveComment(
11 tenantId = "my-tenant-123",
12 createCommentParams = createCommentParams,
13 isLive = true,
14 doSpamCheck = true,
15 sendEmails = false,
16 populateNotifications = true)
17
18if response.isSome:
19 let saved = response.get()
20 discard saved
21

saveCommentsBulk Internal Link

Parametreler

NameTürGerekliAçıklama
tenantIdstringEvet
createCommentParamsseq[CreateCommentParams]Hayır
isLiveboolHayır
doSpamCheckboolHayır
sendEmailsboolHayır
populateNotificationsbool): (Option[seq[SaveCommentsBulkResponse]]Hayır
idstringHayır
fromNamestringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

saveCommentsBulk Örneği
Copy Copy
1
2let (response, httpResponse) = client.saveCommentsBulk(
3 tenantId = "my-tenant-123",
4 createCommentParams = @[],
5 isLive = false,
6 doSpamCheck = false,
7 sendEmails = false,
8 populateNotifications = false,
9 id = "",
10 fromName = ""
11)
12
13if response.isSome:
14 let apiResp = response.get()
15 echo "Bulk save succeeded, tenant:", " my-tenant-123"
16else:
17 echo "Bulk save returned no API response"
18

setCommentText Internal Link

Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
commentIdstringEvet
broadcastIdstringHayır
commentTextUpdateRequestCommentTextUpdateRequestHayır
editKeystringHayır
ssostringHayır

Yanıt

Döndürür: Option[PublicAPISetCommentTextResponse]

Örnek

setCommentText Örneği
Copy Copy
1
2let (response, httpResponse) = client.setCommentText(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-456789",
5 broadcastId = "",
6 commentTextUpdateRequest = CommentTextUpdateRequest(text: "Updated comment text to fix a typo and clarify meaning."),
7 editKey = "",
8 sso = ""
9)
10if response.isSome:
11 let result = response.get()
12 discard result
13

unBlockUserFromComment Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
unBlockFromCommentParamsUnBlockFromCommentParamsHayır
userIdstringHayır
anonUserIdstringHayır

Yanıt

Döndürür: Option[UnblockSuccess]

Örnek

unBlockUserFromComment Örneği
Copy Copy
1
2let (response, httpResponse) = client.unBlockUserFromComment(
3 tenantId = "my-tenant-123",
4 id = "comment-9f3b2a",
5 unBlockFromCommentParams = UnBlockFromCommentParams(),
6 userId = "user-1024",
7 anonUserId = "anon-77b"
8)
9
10if response.isSome:
11 let unblockResult = response.get()
12 echo unblockResult
13else:
14 echo "Unblock failed"
15

unFlagComment Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
userIdstringHayır
anonUserIdstringHayır

Yanıt

Döndürür: Option[FlagCommentResponse]

Örnek

unFlagComment Örneği
Copy Copy
1
2let (response, httpResponse) = client.unFlagComment(tenantId = "my-tenant-123",
3 id = "comment-98765",
4 userId = "user-12345",
5 anonUserId = "")
6
7if response.isSome:
8 let flagResp = response.get()
9 echo "Unflagged comment response:", flagResp
10else:
11 echo "Unflag failed, HTTP status:", httpResponse.status
12

unLockComment Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
commentIdstringEvet
broadcastIdstringHayır
ssostringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

unLockComment Örneği
Copy Copy
1
2let tenantId = "my-tenant-123"
3let commentId = "cmt-987654321"
4let (response, httpResponse) = client.unLockComment(
5 tenantId = tenantId,
6 commentId = commentId,
7 broadcastId = "",
8 sso = ""
9)
10if response.isSome:
11 let apiResp = response.get()
12 echo "Unlocked comment ", commentId, " for tenant ", tenantId
13else:
14 echo "Unlock failed, HTTP status: ", $httpResponse.status
15

unPinComment Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
commentIdstringEvet
broadcastIdstringHayır
ssostringHayır

Yanıt

Döndürür: Option[ChangeCommentPinStatusResponse]

Örnek

unPinComment Örneği
Copy Copy
1
2let (response, httpResponse) = client.unPinComment(tenantId = "my-tenant-123", commentId = "cmt-987654321", broadcastId = "", sso = "")
3if response.isSome:
4 let result = response.get()
5 echo "Unpinned comment:", $result
6else:
7 echo "Unpin failed, HTTP status:", $httpResponse.status
8

updateComment Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
updatableCommentParamsUpdatableCommentParamsHayır
contextUserIdstringHayır
doSpamCheckboolHayır
isLiveboolHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

updateComment Örneği
Copy Copy
1
2let (response, httpResponse) = client.updateComment(
3 tenantId = "my-tenant-123",
4 id = "cmt-987654",
5 updatableCommentParams = UpdatableCommentParams(
6 text = "Updated comment: corrected facts and clarified wording.",
7 isApproved = true,
8 tags = @["news", "update"]
9 ),
10 contextUserId = "user-456",
11 doSpamCheck = true,
12 isLive = true
13)
14
15if response.isSome:
16 let apiResp = response.get()
17 discard apiResp
18

voteComment Internal Link

Parametreler

AdTipGerekliAçıklama
tenantIdstringEvet
commentIdstringEvet
urlIdstringEvet
broadcastIdstringHayır
voteBodyParamsVoteBodyParamsHayır
sessionIdstringHayır
ssostringHayır

Yanıt

Döndürür: Option[VoteResponse]

Örnek

voteComment Örneği
Copy Copy
1
2let (response, httpResponse) = client.voteComment(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-987654321",
5 urlId = "news/article-2026-inflation",
6 broadcastId = "",
7 voteBodyParams = VoteBodyParams(),
8 sessionId = "",
9 sso = ""
10)
11
12if response.isSome:
13 let voteResp = response.get()
14 discard voteResp
15else:
16 discard httpResponse
17

getCommentsForUser Internal Link

Parametreler

AdTürGerekliAçıklama
userIdstringHayır
directionSortDirectionsHayır
repliesToUserIdstringHayır
pagefloat64Hayır
includei10nboolHayır
localestringHayır
isCrawlerboolHayır

Yanıt

Döndürür: Option[GetCommentsForUserResponse]

Örnek

getCommentsForUser Örneği
Copy Copy
1
2let (response, httpResponse) = client.getCommentsForUser(
3 userId = "user-8421",
4 direction = SortDirections.Newest,
5 repliesToUserId = "",
6 page = 1.0,
7 includei10n = true,
8 locale = "en-US",
9 isCrawler = false
10)
11
12if response.isSome:
13 let comments = response.get()
14 discard comments
15

addDomainConfig Internal Link

Parametreler

AdTürGerekiyor muAçıklama
tenantIdstringEvet
addDomainConfigParamsAddDomainConfigParamsHayır

Yanıt

Döndürür: Option[AddDomainConfigResponse]

Örnek

addDomainConfig Örneği
Copy Copy
1
2let config = AddDomainConfigParams(
3 domain: "comments.example-news.com",
4 enabled: true,
5 allowedOrigins: @["https://www.example-news.com", "https://m.example-news.com"],
6 commentsPath: "/news/world/election-coverage",
7 priority: 5
8)
9let (response, httpResponse) = client.addDomainConfig(tenantId = "my-tenant-123", addDomainConfigParams = config)
10if response.isSome:
11 let created = response.get()
12 echo "Created domain config:", created
13else:
14 echo "Failed to create domain config, HTTP status:", httpResponse.status.code
15

deleteDomainConfig Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
domainstringHayır

Yanıt

Döndürür: Option[DeleteDomainConfigResponse]

Örnek

deleteDomainConfig Örneği
Copy Copy
1
2let (response, httpResponse) = client.deleteDomainConfig(tenantId = "my-tenant-123", domain = "news.example.com")
3if response.isSome:
4 let deleted = response.get()
5 echo "DeleteDomainConfig succeeded for tenant ", "my-tenant-123"
6else:
7 echo "DeleteDomainConfig failed. HTTP status: ", $httpResponse.status
8

getDomainConfig Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
domainstringHayır

Yanıt

Döndürür: Option[GetDomainConfigResponse]

Örnek

getDomainConfig Örneği
Copy Copy
1
2let (response, httpResponse) = client.getDomainConfig(tenantId = "my-tenant-123", domain = "news/top-story-2026")
3if response.isSome:
4 let cfg = response.get()
5 discard cfg
6else:
7 discard httpResponse
8

getDomainConfigs Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet

Yanıt

Döndürür: Option[GetDomainConfigsResponse]

Örnek

getDomainConfigs Örneği
Copy Copy
1
2let (response, httpResponse) = client.getDomainConfigs(tenantId = "my-tenant-123")
3if response.isSome:
4 let domainConfigs = response.get()
5 echo "Received domain configs for tenant my-tenant-123"
6 echo domainConfigs
7else:
8 echo "No domain configs returned"
9

patchDomainConfig Internal Link


Parametreler

NameTypeGerekliAçıklama
tenantIdstringEvet
domainToUpdatestringHayır
patchDomainConfigParamsPatchDomainConfigParamsHayır

Yanıt

Döndürür: Option[PatchDomainConfigResponse]

Örnek

patchDomainConfig Örneği
Copy Copy
1
2let patchParams: PatchDomainConfigParams = PatchDomainConfigParams(
3 allowedOrigins = @["https://news.example.com", "https://cdn.news.com"],
4 enableComments = true,
5 moderationRequired = false,
6 maxCommentLength = 2000,
7 primaryDomain = "comments.news-site.com"
8)
9let (response, httpResponse) = client.patchDomainConfig(
10 tenantId = "my-tenant-123",
11 domainToUpdate = "comments.news-site.com",
12 patchDomainConfigParams = patchParams
13)
14if response.isSome:
15 let cfg = response.get()
16 echo "Patched domain config received:", cfg
17else:
18 echo "No response body, HTTP status:", httpResponse.statusCode
19

putDomainConfig Internal Link

Parametreler

NameTypeRequiredDescription
tenantIdstringYes
domainToUpdatestringNo
updateDomainConfigParamsUpdateDomainConfigParamsNo

Yanıt

Döndürür: Option[PutDomainConfigResponse]

Örnek

putDomainConfig Örneği
Copy Copy
1
2let (response, httpResponse) = client.putDomainConfig(
3 tenantId = "my-tenant-123",
4 domainToUpdate = "blog.example.com",
5 updateDomainConfigParams = UpdateDomainConfigParams(
6 allowAnonymous = false,
7 moderationEnabled = true,
8 maxCommentLength = 800,
9 allowedOrigins = @["https://blog.example.com", "https://cdn.blog.example.com"],
10 enableThreadedComments = true
11 )
12)
13
14if response.isSome:
15 let cfg = response.get()
16 echo cfg
17else:
18 echo "Failed to update domain config, HTTP status: ", httpResponse.status
19

createEmailTemplate Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
createEmailTemplateBodyCreateEmailTemplateBodyHayır

Yanıt

Döndürür: Option[CreateEmailTemplateResponse]

Örnek

createEmailTemplate Örneği
Copy Copy
1
2let (response, httpResponse) = client.createEmailTemplate(tenantId = "my-tenant-123",
3 createEmailTemplateBody = CreateEmailTemplateBody(
4 name = "Weekly Newsletter",
5 subject = "This Week on NewsSite",
6 html = "<h1>Latest updates</h1><p>Read our latest article.</p>",
7 fromAddress = "no-reply@newssite.com",
8 isDefault = false,
9 tags = @["news", "weekly"]
10 )
11)
12
13if response.isSome:
14 let template = response.get()
15 echo "Created email template id: ", template.id
16

deleteEmailTemplate Internal Link


Parametreler

AdTypeGerekliAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

deleteEmailTemplate Örneği
Copy Copy
1
2let (response, httpResponse) = client.deleteEmailTemplate(
3 tenantId = "my-tenant-123",
4 id = "welcome-email-template-001"
5)
6
7if response.isSome:
8 let apiEmpty = response.get()
9 discard apiEmpty
10 echo "Email template deleted successfully"
11else:
12 echo "No response body"
13

deleteEmailTemplateRenderError Internal Link

Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
idstringHayır
errorIdstringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

deleteEmailTemplateRenderError Örneği
Copy Copy
1
2let (response, httpResponse) = client.deleteEmailTemplateRenderError(tenantId = "my-tenant-123", id = "welcome-email-template", errorId = "err-20250615-01")
3if response.isSome:
4 let emptyResp = response.get()
5 echo "Deleted render error, tenant:", "my-tenant-123"
6 echo "HTTP status:", httpResponse.status
7else:
8 echo "No body returned, HTTP status:", httpResponse.status
9

getEmailTemplate Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[GetEmailTemplateResponse]

Örnek

getEmailTemplate Örneği
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 discard template
6

getEmailTemplateDefinitions Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet

Yanıt

Döndürür: Option[GetEmailTemplateDefinitionsResponse]

Örnek

getEmailTemplateDefinitions Örneği
Copy Copy
1
2let (response, httpResponse) = client.getEmailTemplateDefinitions(tenantId = "my-tenant-123")
3if response.isSome:
4 let definitions = response.get()
5 echo "Email template definitions for my-tenant-123: ", definitions
6else:
7 echo "Failed to retrieve templates, HTTP status: ", httpResponse.status
8

getEmailTemplateRenderErrors Internal Link


Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
skipfloat64Hayır

Yanıt

Döndürür: Option[GetEmailTemplateRenderErrorsResponse]

Örnek

getEmailTemplateRenderErrors Örnek
Copy Copy
1
2let (response, httpResponse) = client.getEmailTemplateRenderErrors(tenantId = "my-tenant-123", id = "", skip = 0.0)
3if response.isSome:
4 let templateErrors = response.get()
5 discard templateErrors
6else:
7 discard httpResponse
8

getEmailTemplates Internal Link

Parametreler

AdTipGerekliAçıklama
tenantIdstringEvet
skipfloat64Hayır

Yanıt

Döndürür: Option[GetEmailTemplatesResponse]

Örnek

getEmailTemplates Örneği
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 email templates available"
8

renderEmailTemplate Internal Link

Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
renderEmailTemplateBodyRenderEmailTemplateBodyHayır
localestringHayır

Yanıt

Döndürür: Option[RenderEmailTemplateResponse]

Örnek

renderEmailTemplate Örneği
Copy Copy
1
2let (response, httpResponse) = client.renderEmailTemplate(
3 tenantId = "my-tenant-123",
4 renderEmailTemplateBody = RenderEmailTemplateBody(),
5 locale = "en-US"
6)
7
8if response.isSome:
9 let rendered = response.get()
10 echo rendered
11

updateEmailTemplate Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
updateEmailTemplateBodyUpdateEmailTemplateBodyHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

updateEmailTemplate Örneği
Copy Copy
1
2let updateBody = UpdateEmailTemplateBody(
3 subject = "Welcome to Newsly",
4 html = "<p>Thanks for joining Newsly! Visit https://newsly.example to get started.</p>",
5 fromAddress = "no-reply@newsly.example",
6 fromName = "Newsly Team",
7 enabled = true
8)
9let (response, httpResponse) = client.updateEmailTemplate(tenantId = "my-tenant-123", id = "welcome-email", updateEmailTemplateBody = updateBody)
10if response.isSome:
11 let result = response.get()
12 discard result
13else:
14 discard httpResponse.statusCode
15

getEventLog Internal Link


req tenantId urlId userIdWS

Parametreler

İsimTürGerekliAçıklama
tenantIdstringEvet
urlIdstringEvet
userIdWSstringHayır
startTimeint64Hayır
endTimeint64Hayır

Yanıt

Döner: Option[GetEventLogResponse]

Örnek

getEventLog Örneği
Copy Copy
1
2let (response, httpResponse) = client.getEventLog(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-2026-solar-panels",
5 userIdWS = "user-456",
6 startTime = 1688000000'i64,
7 endTime = 1688086400'i64
8)
9if response.isSome:
10 let eventLog = response.get()
11 discard eventLog
12
---

getGlobalEventLog Internal Link

req tenantId urlId userIdWS

Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
urlIdstringEvet
userIdWSstringHayır
startTimeint64Hayır
endTimeint64Hayır

Yanıt

Döndürür: Option[GetEventLogResponse]

Örnek

getGlobalEventLog Örneği
Copy Copy
1
2let (response, httpResponse) = client.getGlobalEventLog(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-2026-06-19",
5 userIdWS = "user-987",
6 startTime = int64(1622505600),
7 endTime = int64(1625097600)
8)
9if response.isSome:
10 let eventLog = response.get()
11 echo eventLog, httpResponse.statusCode
12

createFeedPost Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
createFeedPostParamsCreateFeedPostParamsHayır
broadcastIdstringHayır
isLiveboolHayır
doSpamCheckboolHayır
skipDupCheckboolHayır

Yanıt

Döndürür: Option[CreateFeedPostsResponse]

Örnek

createFeedPost Örneği
Copy Copy
1
2let postParams = CreateFeedPostParams(
3 title = "Major Acquisition by TechCorp",
4 content = "TechCorp has acquired SoftWorks in a deal valued at $1.2B, creating a new market leader.",
5 url = "news/tech/major-acquisition",
6 tags = @["business", "technology"],
7 authorId = "journalist-321"
8)
9
10let (response, httpResponse) = client.createFeedPost(
11 tenantId = "my-tenant-123",
12 createFeedPostParams = postParams,
13 broadcastId = "",
14 isLive = false,
15 doSpamCheck = false,
16 skipDupCheck = false
17)
18
19if response.isSome:
20 let created = response.get()
21 discard created
22

createFeedPostPublic Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
createFeedPostParamsCreateFeedPostParamsHayır
broadcastIdstringHayır
ssostringHayır

Yanıt

Döndürür: Option[CreateFeedPostResponse]

Örnek

createFeedPostPublic Example
Copy Copy
1
2let params = CreateFeedPostParams(
3 title = "Breaking: Major Update on Product X",
4 content = "Today we released Product X v2.0 with performance improvements and bug fixes.",
5 author = "jane.doe",
6 tags = @["product", "release", "v2"],
7 isPinned = false
8)
9
10let (response, httpResponse) = client.createFeedPostPublic(tenantId = "my-tenant-123", createFeedPostParams = params, broadcastId = "", sso = "")
11
12if response.isSome:
13 let created = response.get()
14 echo "Created feed post:", created
15else:
16 echo "Failed to create feed post; HTTP status:", httpResponse.status
17

deleteFeedPostPublic Internal Link

Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
postIdstringHayır
broadcastIdstringHayır
ssostringHayır

Yanıt

Döndürür: Option[DeleteFeedPostPublicResponse]

Örnek

deleteFeedPostPublic Örneği
Copy Copy
1
2let (response, httpResponse) = client.deleteFeedPostPublic(tenantId = "my-tenant-123", postId = "", broadcastId = "", sso = "")
3if response.isSome:
4 let deleted = response.get()
5 echo "Delete successful"
6else:
7 echo "Delete failed"
8

getFeedPosts Internal Link


req tenantId afterId

Parametreler

AdTürZorunluAçıklama
tenantIdstringEvet
afterIdstringHayır
limitintHayır
tagsseq[string]Hayır

Yanıt

Döndürür: Option[GetFeedPostsResponse]

Örnek

getFeedPosts Örneği
Copy Copy
1
2let (response, httpResponse) = client.getFeedPosts(
3 tenantId = "my-tenant-123",
4 afterId = "",
5 limit = 0,
6 tags = @[]
7)
8if response.isSome:
9 let feed = response.get()
10 echo "Feed retrieved for tenant my-tenant-123"
11

getFeedPostsPublic Internal Link

req tenantId afterId

Parametreler

İsimTürGerekliAçıklama
tenantIdstringEvet
afterIdstringHayır
limitintHayır
tagsseq[string]Hayır
ssostringHayır
isCrawlerboolHayır
includeUserInfoboolHayır

Yanıt

Döndürür: Option[PublicFeedPostsResponse]

Örnek

getFeedPostsPublic Örneği
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)
11if response.isSome:
12 let feed = response.get()
13 discard feed
14

getFeedPostsStats Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
postIdsseq[string]Hayır
ssostringHayır

Yanıt

Döndürür: Option[FeedPostsStatsResponse]

Örnek

getFeedPostsStats Example
Copy Copy
1
2let (response, httpResponse) = client.getFeedPostsStats(tenantId = "my-tenant-123", postIds = @["news/article-2026", "opinion/market-trends"], sso = "")
3if response.isSome:
4 let stats = response.get()
5 echo "Received feed posts stats for tenant:", " my-tenant-123"
6 discard stats
7

getUserReactsPublic Internal Link

Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
postIdsseq[string]Hayır
ssostringHayır

Yanıt

Döndürür: Option[UserReactsResponse]

Örnek

getUserReactsPublic Örneği
Copy Copy
1
2let (response, httpResponse) = client.getUserReactsPublic(
3 tenantId = "my-tenant-123",
4 postIds = @["news/article-2026", "blog/opinion-987"],
5 sso = ""
6)
7if response.isSome:
8 let reacts = response.get()
9 echo "Received user reacts for tenant: ", "my-tenant-123"
10

reactFeedPostPublic Internal Link

Parametreler

AdıTürGerekliAçıklama
tenantIdstringEvet
postIdstringHayır
reactBodyParamsReactBodyParamsHayır
isUndoboolHayır
broadcastIdstringHayır
ssostringHayır

Yanıt

Döndürür: Option[ReactFeedPostResponse]

Örnek

reactFeedPostPublic Örneği
Copy Copy
1
2let (response, httpResponse) = client.reactFeedPostPublic(
3 tenantId = "my-tenant-123",
4 postId = "news/article-2026-06-19",
5 reactBodyParams = ReactBodyParams(reactType = "heart", tags = @["breaking", "editorial"]),
6 isUndo = false,
7 broadcastId = "broadcast-789",
8 sso = "sso-token-abc123"
9)
10if response.isSome:
11 let react = response.get()
12 echo react
13else:
14 echo "No response from reactFeedPostPublic, HTTP status:", httpResponse.statusCode
15

updateFeedPost Internal Link


Parametreler

AdTürZorunluAçıklama
tenantIdstringEvet
idstringHayır
feedPostFeedPostHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

updateFeedPost Örneği
Copy Copy
1
2let feedPost: FeedPost = FeedPost(title: "City Council Approves New Waterfront Park",
3 content: "The council voted 5-2 to approve funding and a timeline for construction.",
4 tags: @["local", "parks", "city"],
5 published: true)
6
7let (response, httpResponse) = client.updateFeedPost(tenantId = "my-tenant-123", id = "post-456", feedPost = feedPost)
8
9if response.isSome:
10 let apiResp = response.get()
11 echo "Feed post updated successfully"
12 echo apiResp
13else:
14 echo "Failed to update feed post"
15 echo httpResponse
16

updateFeedPostPublic Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringYes
postIdstringNo
updateFeedPostParamsUpdateFeedPostParamsNo
broadcastIdstringNo
ssostringNo

Yanıt

Döndürür: Option[CreateFeedPostResponse]

Örnek

updateFeedPostPublic Örneği
Copy Copy
1
2let (response, httpResponse) = client.updateFeedPostPublic(
3 tenantId = "my-tenant-123",
4 postId = "post-456",
5 updateFeedPostParams = UpdateFeedPostParams(title = "Weekly Product Update", content = "Released bug fixes and performance improvements in v2.1.", tags = @["release", "product"], pinned = false),
6 broadcastId = "",
7 sso = ""
8)
9if response.isSome:
10 let created = response.get()
11 echo "Updated feed post id: ", created.postId
12else:
13 echo "Update failed with HTTP status: ", httpResponse.status
14

flagCommentPublic Internal Link

Parametreler

AdTürZorunluAçıklama
tenantIdstringEvet
commentIdstringEvet
isFlaggedboolHayır
ssostringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

flagCommentPublic Örneği
Copy Copy
1
2let (response, httpResponse) = client.flagCommentPublic(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-456789",
5 isFlagged = true,
6 sso = ""
7)
8
9if response.isSome:
10 let apiResp = response.get()
11 discard apiResp
12else:
13 discard httpResponse
14

getGifLarge Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
largeInternalURLSanitizedstringHayır

Yanıt

Döndürür: Option[GifGetLargeResponse]

Örnek

getGifLarge Örnek
Copy Copy
1
2let (response, httpResponse) = client.getGifLarge(tenantId = "news-tenant-42", largeInternalURLSanitized = "")
3if response.isSome:
4 let gif = response.get()
5 echo "Received GifGetLargeResponse"
6 discard gif
7else:
8 echo "No gif returned, HTTP status: " & $httpResponse.status
9

getGifsSearch Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
searchstringHayır
localestringHayır
ratingstringHayır
pagefloat64Hayır

Yanıt

Döndürür: Option[GetGifsSearchResponse]

Örnek

getGifsSearch Örneği
Copy Copy
1
2let (response, httpResponse) = client.getGifsSearch(
3 tenantId = "my-tenant-123",
4 search = "funny cat",
5 locale = "en-US",
6 rating = "PG",
7 page = 1.0
8)
9
10if response.isSome:
11 let gifs = response.get()
12 echo "Fetched GIFs response:", gifs
13

getGifsTrending Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
localestringHayır
ratingstringHayır
pagefloat64Hayır

Yanıt

Döndürür: Option[GetGifsTrendingResponse]

Örnek

getGifsTrending Örneği
Copy Copy
1
2let (response, httpResponse) = client.getGifsTrending(tenantId = "my-tenant-123",
3 locale = "en-US",
4 rating = "pg-13",
5 page = 1.0)
6if response.isSome:
7 let trending = response.get()
8

addHashTag Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
createHashTagBodyCreateHashTagBodyHayır

Yanıt

Döndürür: Option[CreateHashTagResponse]

Örnek

addHashTag Örneği
Copy Copy
1
2let (response, httpResponse) = client.addHashTag(tenantId = "my-tenant-123",
3 createHashTagBody = CreateHashTagBody(name = "Breaking News",
4 slug = "breaking-news",
5 description = "Major breaking news items",
6 color = "#ff0000",
7 isTrending = true,
8 aliases = @["breaking", "news"]))
9if response.isSome:
10 let created = response.get()
11 echo created
12

addHashTagsBulk Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
bulkCreateHashTagsBodyBulkCreateHashTagsBodyHayır

Yanıt

Döndürür: Option[BulkCreateHashTagsResponse]

Örnek

addHashTagsBulk Örneği
Copy Copy
1
2let (response, httpResponse) = client.addHashTagsBulk(tenantId = "my-tenant-123", bulkCreateHashTagsBody = BulkCreateHashTagsBody(hashTags = @["news", "breaking", "politics"], replaceExisting = false))
3if response.isSome:
4 let result = response.get()
5 echo "Bulk tags response:", result
6else:
7 echo "No response body, HTTP status:", httpResponse.statusCode
8

deleteHashTag Internal Link

Parametreler

AdTürGerekliAçıklama
tagstringHayır
tenantIdstringEvet
deleteHashTagRequestBodyDeleteHashTagRequestBodyHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

deleteHashTag Örneği
Copy Copy
1
2let (response, httpResponse) = client.deleteHashTag(
3 tag = "",
4 tenantId = "my-tenant-123",
5 deleteHashTagRequestBody = DeleteHashTagRequestBody()
6)
7
8if response.isSome:
9 let emptyResp = response.get()
10 echo "Deleted hashtag for tenant my-tenant-123; response:", $emptyResp, " status:", $httpResponse.status
11else:
12 echo "No response body; status:", $httpResponse.status
13

getHashTags Internal Link

Parametreler

AdTürZorunluAçıklama
tenantIdstringEvet
pagefloat64Hayır

Yanıt

Döndürür: Option[GetHashTagsResponse]

Örnek

getHashTags Örneği
Copy Copy
1
2let (response, httpResponse) = client.getHashTags(tenantId = "news-portal-987", page = 2.0)
3if response.isSome:
4 let tagsResp = response.get()
5 echo "Received hashtags response"
6else:
7 echo "No hashtags returned"
8

patchHashTag Internal Link

Parametreler

AdTürZorunluAçıklama
tagstringHayır
tenantIdstringEvet
updateHashTagBodyUpdateHashTagBodyHayır

Yanıt

Döndürür: Option[UpdateHashTagResponse]

Örnek

patchHashTag Örneği
Copy Copy
1
2let (response, httpResponse) = client.patchHashTag(tag = "breaking-news", tenantId = "my-tenant-123", updateHashTagBody = UpdateHashTagBody())
3if response.isSome:
4 let updatedHashTag = response.get()
5 echo updatedHashTag
6

deleteModerationVote Internal Link

Parametreler

AdTürGerekliAçıklama
commentIdstringEvet
voteIdstringHayır
ssostringHayır

Yanıt

Döndürür: Option[VoteDeleteResponse]

Örnek

deleteModerationVote Örneği
Copy Copy
1
2let (response, httpResponse) = client.deleteModerationVote(commentId = "my-tenant-123/news/article-title/comment-987", voteId = "vote-456", sso = "sso-token-abc")
3if response.isSome:
4 let voteResp = response.get()
5 echo "Vote deleted:", voteResp
6else:
7 echo "Delete failed:", httpResponse
8

getApiComments Internal Link

Parametreler

AdTürGerekliAçıklama
pagefloat64Hayır
countfloat64Hayır
textSearchstringHayır
byIPFromCommentstringHayır
filtersstringHayır
searchFiltersstringHayır
sortsstringHayır
demoboolHayır
ssostringHayır

Yanıt

Döndürür: Option[ModerationAPIGetCommentsResponse]

Örnek

getApiComments Örneği
Copy Copy
1
2let (response, httpResponse) = client.getApiComments(
3 page = 1.0,
4 count = 25.0,
5 textSearch = "opinion on climate summit",
6 byIPFromComment = "198.51.100.23",
7 filters = "status:approved",
8 searchFilters = "section:world",
9 sorts = "-createdAt",
10 demo = false,
11 sso = "sso-user-982bf"
12)
13
14if response.isSome:
15 let commentsResp = response.get()
16 echo "Retrieved comments response"
17else:
18 echo "No comments returned, HTTP status: ", httpResponse.status
19

getApiExportStatus Internal Link

Parametreler

NameTypeRequiredDescription
batchJobIdstringHayır
ssostringHayır

Yanıt

Döndürür: Option[ModerationExportStatusResponse]

Örnek

getApiExportStatus Örneği
Copy Copy
1
2let (response, httpResponse) = client.getApiExportStatus(batchJobId = "export-job-2026-06-01", sso = "sso-abc123token")
3if response.isSome:
4 let exportStatus = response.get()
5 echo repr(exportStatus)
6else:
7 echo "No export status available, HTTP code: ", httpResponse.statusCode
8

getApiIds Internal Link

Parametreler

AdTürGerekliAçıklama
textSearchstringHayır
byIPFromCommentstringHayır
filtersstringHayır
searchFiltersstringHayır
afterIdstringHayır
demoboolHayır
ssostringHayır

Yanıt

Döndürür: Option[ModerationAPIGetCommentIdsResponse]

Örnek

getApiIds Örneği
Copy Copy
1
2let (response, httpResponse) = client.getApiIds(
3 textSearch = "urgent moderation review",
4 byIPFromComment = "203.0.113.45",
5 filters = "status:pending,flagged",
6 searchFilters = "author:jane.doe@example.com",
7 afterId = "cmt_9f8e7d6a",
8 demo = false,
9 sso = "sso-token-6b7f9a"
10)
11
12if response.isSome:
13 let idsResp = response.get()
14 echo idsResp
15

getBanUsersFromComment Internal Link

Parametreler

NameTypeRequiredDescription
commentIdstringEvet
ssostringHayır

Yanıt

Döndürür: Option[GetBannedUsersFromCommentResponse]

Örnek

getBanUsersFromComment Örneği
Copy Copy
1
2let (response, httpResponse) = client.getBanUsersFromComment(commentId = "comment-98765", sso = "")
3if response.isSome:
4 let bannedResp = response.get()
5 discard bannedResp
6else:
7 echo "No banned users found or request failed"
8

getCommentBanStatus Internal Link

Parametreler

AdTürGerekliAçıklama
commentIdstringEvet
ssostringHayır

Yanıt

Döndürür: Option[GetCommentBanStatusResponse]

Örnek

getCommentBanStatus Örneği
Copy Copy
1
2let (response, httpResponse) = client.getCommentBanStatus(commentId = "cmt-987654321", sso = "")
3
4if response.isSome:
5 let banStatus = response.get()
6 echo "Ban status for comment cmt-987654321: ", banStatus
7else:
8 echo "No ban status returned for comment cmt-987654321"
9

getCommentChildren Internal Link

Parametreler

AdTürGerekliAçıklama
commentIdstringEvet
ssostringHayır

Yanıt

Döndürür: Option[ModerationAPIChildCommentsResponse]

Örnek

getCommentChildren Örneği
Copy Copy
1
2let (response, httpResponse) = client.getCommentChildren(commentId = "comment-98765", sso = "")
3if response.isSome:
4 let childResp = response.get()
5 discard childResp
6

getCount Internal Link

Parametreler

AdTürGerekliAçıklama
textSearchstringHayır
byIPFromCommentstringHayır
filterstringHayır
searchFiltersstringHayır
demoboolHayır
ssostringHayır

Yanıt

Döndürür: Option[ModerationAPICountCommentsResponse]

Örnek

getCount Örneği
Copy Copy
1
2let (response, httpResponse) = client.getCount(
3 textSearch = "climate change",
4 byIPFromComment = "203.0.113.5",
5 filter = "status:approved",
6 searchFilters = "author:john.doe@example.com;tag:opinion",
7 demo = false,
8 sso = "sso_eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9"
9)
10if response.isSome:
11 let countResp = response.get()
12 discard countResp
13 echo "Count response received"
14else:
15 echo "No count data returned"
16

getCounts Internal Link

Parametreler

AdTürGerekliAçıklama
ssostringHayır

Yanıt

Döndürür: Option[GetBannedUsersCountResponse]

Örnek

getCounts Örneği
Copy Copy
1
2let (response, httpResponse) = client.getCounts(sso = "sso_my-tenant-123_token_AbCdEf123456")
3if response.isSome:
4 let counts = response.get()
5 echo counts
6else:
7 echo "Request failed with status:", httpResponse.status
8

getLogs Internal Link

Parametreler

AdTürGerekliAçıklama
commentIdstringEvet
ssostringHayır

Response

Döndürür: Option[ModerationAPIGetLogsResponse]

Örnek

getLogs Örneği
Copy Copy
1
2let (response, httpResponse) = client.getLogs(commentId = "cmt-8471f2d3", sso = "")
3if response.isSome:
4 let logs = response.get()
5 echo "Fetched logs:", logs
6

getManualBadges Internal Link

Parametreler

AdTürGerekliAçıklama
ssostringHayır

Yanıt

Döndürür: Option[GetTenantManualBadgesResponse]

Örnek

getManualBadges Örneği
Copy Copy
1
2let (response, httpResponse) = client.getManualBadges(sso = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9")
3if response.isSome:
4 let badges = response.get()
5 echo "Manual badges received:"
6 echo badges
7else:
8 echo "No manual badges returned."
9 echo httpResponse
10

getManualBadgesForUser Internal Link


Parametreler

AdTürGerekliAçıklama
badgesUserIdstringHayır
commentIdstringEvet
ssostringHayır

Yanıt

Döndürür: Option[GetUserManualBadgesResponse]

Örnek

getManualBadgesForUser Örneği
Copy Copy
1
2let (response, httpResponse) = client.getManualBadgesForUser(
3 badgesUserId = "user-98765",
4 commentId = "comment-0a1b2c3d",
5 sso = "sso-eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9"
6)
7if response.isSome:
8 let badges = response.get()
9 echo "Received manual badges for user"
10 echo "HTTP status: ", httpResponse.status
11

getModerationComment Internal Link

Parametreler

AdTürGerekliAçıklama
commentIdstringEvet
includeEmailboolHayır
includeIPboolHayır
ssostringHayır

Yanıt

Dönüş değeri: Option[ModerationAPICommentResponse]

Örnek

getModerationComment Örneği
Copy Copy
1
2let (response, httpResponse) = client.getModerationComment(commentId = "cmt-8f3b2a9d", includeEmail = false, includeIP = false, sso = "")
3if response.isSome:
4 let comment = response.get()
5 discard comment
6else:
7 echo "No moderation comment returned"
8

getModerationCommentText Internal Link

Parametreler

NameTypeRequiredDescription
commentIdstringEvet
ssostringHayır

Yanıt

Döndürür: Option[GetCommentTextResponse]

Örnek

getModerationCommentText Örneği
Copy Copy
1
2let (response, httpResponse) = client.getModerationCommentText(commentId = "comment-9f8b7a6c", sso = "")
3if response.isSome:
4 let commentData = response.get()
5 echo "Moderation comment text retrieved"
6else:
7 echo "No moderation comment text available"
8

getPreBanSummary Internal Link

Parametreler

NameTypeRequiredAçıklama
commentIdstringEvet
includeByUserIdAndEmailboolHayır
includeByIPboolHayır
includeByEmailDomainboolHayır
ssostringHayır

Yanıt

Dönen: Option[PreBanSummary]

Örnek

getPreBanSummary Örneği
Copy Copy
1
2let commentId = "cmt-7423"
3let (response, httpResponse) = client.getPreBanSummary(
4 commentId = commentId,
5 includeByUserIdAndEmail = false,
6 includeByIP = false,
7 includeByEmailDomain = false,
8 sso = ""
9)
10if response.isSome:
11 let preBanSummary = response.get()
12 discard preBanSummary
13else:
14 discard httpResponse
15

getSearchCommentsSummary Internal Link

Parametreler

AdTürGerekliAçıklama
valuestringHayır
filtersstringHayır
searchFiltersstringHayır
ssostringHayır

Yanıt

Döndürür: Option[ModerationCommentSearchResponse]

Örnek

getSearchCommentsSummary Örneği
Copy Copy
1
2let (response, httpResponse) = client.getSearchCommentsSummary(
3 value = "news/climate-change-2026",
4 filters = "{\"tenantId\":\"my-tenant-123\",\"siteId\":\"main-site\",\"status\":\"approved\"}",
5 searchFilters = "author:journalist@news.com OR content:climate",
6 sso = "sso-xyz-7890"
7)
8if response.isSome:
9 let summary = response.get()
10 echo "Received summary: ", $summary
11else:
12 echo "No summary returned, HTTP response: ", $httpResponse
13

getSearchPages Internal Link

Parametreler

NameTypeRequiredDescription
valuestringHayır
ssostringHayır

Yanıt

Döndürür: Option[ModerationPageSearchResponse]

Örnek

getSearchPages Örneği
Copy Copy
1
2let (response, httpResponse) = client.getSearchPages(value = "news/politics/election-2024", sso = "sso-user-7f3b9c")
3if response.isSome:
4 let pageSearch = response.get()
5 echo "Moderation page search returned"
6else:
7 echo "No moderation pages found"
8

getSearchSites Internal Link


Parametreler

İsimTürGerekliAçıklama
valuestringHayır
ssostringHayır

Yanıt

Döndürür: Option[ModerationSiteSearchResponse]

Örnek

getSearchSites Örneği
Copy Copy
1
2let (response, httpResponse) = client.getSearchSites(value = "news/2026-olympics", sso = "sso-user-9876-token")
3if response.isSome:
4 let searchResponse: ModerationSiteSearchResponse = response.get()
5 echo "Found sites for search:", searchResponse
6

getSearchSuggest Internal Link

Parametreler

AdTürGerekliAçıklama
textSearchstringHayır
ssostringHayır

Yanıt

Döndürür: Option[ModerationSuggestResponse]

Örnek

getSearchSuggest Örneği
Copy Copy
1
2let (response, httpResponse) = client.getSearchSuggest(textSearch = "suspicious comment with spammy links", sso = "sso-user-789")
3if response.isSome:
4 let suggest = response.get()
5 echo "ModerationSuggestResponse:"
6 echo suggest
7else:
8 echo "No moderation suggestions returned. HTTP status: ", httpResponse.status
9

getSearchUsers Internal Link

Parametreler

AdTürGerekliAçıklama
valuestringHayır
ssostringHayır

Yanıt

Dönen değer: Option[ModerationUserSearchResponse]

Örnek

getSearchUsers Örneği
Copy Copy
1
2let (response, httpResponse) = client.getSearchUsers(value = "john.doe@example.com", sso = "sso-acme-789")
3if response.isSome:
4 let searchRes = response.get()
5 echo "Search result:", searchRes
6else:
7 echo "No users found"
8

getTrustFactor Internal Link

Parametreler

NameTypeRequiredDescription
userIdstringHayır
ssostringHayır

Yanıt

Döndürür: Option[GetUserTrustFactorResponse]

Örnek

getTrustFactor Örneği
Copy Copy
1
2let (response, httpResponse) = client.getTrustFactor(userId = "user-1001", sso = "sso-token-6f7d9c")
3if response.isSome:
4 let trust = response.get()
5 echo "Received trust factor for user-1001"
6else:
7 echo "No trust factor returned, HTTP status: ", $httpResponse.status
8

getUserBanPreference Internal Link

Parametreler

AdTürGerekliAçıklama
ssostringHayır

Yanıt

Döndürür: Option[APIModerateGetUserBanPreferencesResponse]

Örnek

getUserBanPreference Örneği
Copy Copy
1
2let (response, httpResponse) = client.getUserBanPreference(sso = "sso-jwt-7f3a9b")
3if response.isSome:
4 let prefs = response.get()
5 echo "User ban preferences:", prefs
6else:
7 echo "No ban preference found"
8

getUserInternalProfile Internal Link

Parametreler

İsimTürGerekliAçıklama
commentIdstringEvet
ssostringHayır

Yanıt

Döndürür: Option[GetUserInternalProfileResponse]

Örnek

getUserInternalProfile Örneği
Copy Copy
1
2let (response, httpResponse) = client.getUserInternalProfile(commentId = "cmt-2026-00042", sso = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjoibXl1c2VyIn0.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c")
3if response.isSome:
4 let profile = response.get()
5 discard profile
6

postAdjustCommentVotes Internal Link

Parametreler

AdTürGerekliAçıklama
commentIdstringEvet
adjustCommentVotesParamsAdjustCommentVotesParamsHayır
ssostringHayır

Yanıt

Döndürür: Option[AdjustVotesResponse]

Örnek

postAdjustCommentVotes Örneği
Copy Copy
1
2let (response, httpResponse) = client.postAdjustCommentVotes(commentId = "cmt-987654", adjustCommentVotesParams = nil, sso = "sso-token-abc123")
3if response.isSome:
4 let adjusted = response.get()
5 discard adjusted
6

postApiExport Internal Link

Parametreler

AdTürGerekliAçıklama
textSearchstringNo
byIPFromCommentstringNo
filtersstringNo
searchFiltersstringNo
sortsstringNo
ssostringNo

Yanıt

Döndürür: Option[ModerationExportResponse]

Örnek

postApiExport Örneği
Copy Copy
1
2let (response, httpResponse) = client.postApiExport(
3 textSearch = "offensive language and spam",
4 byIPFromComment = "203.0.113.45",
5 filters = "{\"status\":\"pending\",\"severity\":\"high\"}",
6 searchFilters = "authorEmail:editor@news-site.com",
7 sorts = "-createdAt",
8 sso = "sso-session-token-9f8b7c"
9)
10if response.isSome:
11 let exportResp = response.get()
12 echo "Moderation export received:", exportResp
13else:
14 echo "No export returned, HTTP status:", httpResponse.status.code
15

postBanUserFromComment Internal Link

Parametreler

AdTürGerekliAçıklama
commentIdstringEvet
banEmailboolHayır
banEmailDomainboolHayır
banIPboolHayır
deleteAllUsersCommentsboolHayır
bannedUntilstringHayır
isShadowBanboolHayır
updateIdstringHayır
banReasonstringHayır
ssostringHayır

Yanıt

Döndürür: Option[BanUserFromCommentResult]

Örnek

postBanUserFromComment Örneği
Copy Copy
1
2let (response, httpResponse) = client.postBanUserFromComment(
3 commentId = "cmt-8f3a1b",
4 banEmail = false,
5 banEmailDomain = false,
6 banIP = false,
7 deleteAllUsersComments = false,
8 bannedUntil = "",
9 isShadowBan = false,
10 updateId = "",
11 banReason = "",
12 sso = ""
13)
14if response.isSome:
15 let banResult = response.get()
16 discard banResult
17else:
18 echo "No ban result returned"
19

postBanUserUndo Internal Link

Parametreler

AdTürGerekliAçıklama
banUserUndoParamsBanUserUndoParamsHayır
ssostringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

postBanUserUndo Örneği
Copy Copy
1
2let banParams = BanUserUndoParams(
3 tenantId = "my-tenant-123",
4 userId = "user-987",
5 undoneBy = "moderator-42",
6 reason = "Reinstated after manual review"
7)
8let (response, httpResponse) = client.postBanUserUndo(banUserUndoParams = banParams, sso = "sso-jwt-abc123")
9if response.isSome:
10 let apiResp = response.get()
11 echo "Ban undo succeeded, http status: " & $httpResponse.status
12else:
13 echo "Ban undo failed, http status: " & $httpResponse.status
14

postBulkPreBanSummary Internal Link

Parametreler

AdTürGerekliAçıklama
bulkPreBanParamsBulkPreBanParamsHayır
includeByUserIdAndEmailboolHayır
includeByIPboolHayır
includeByEmailDomainboolHayır
ssostringHayır

Yanıt

Döndürür: Option[BulkPreBanSummary]

Örnek

postBulkPreBanSummary Örneği
Copy Copy
1
2let bulkParams = BulkPreBanParams(
3 tenantId = "my-tenant-123",
4 userIds = @["user-456", "user-789"],
5 emails = @["spammer@example.com", "bot@malicious.org"],
6 ipAddresses = @["203.0.113.5", "198.51.100.42"],
7 emailDomains = @["malicious.org"]
8)
9
10let (response, httpResponse) = client.postBulkPreBanSummary(
11 bulkPreBanParams = bulkParams,
12 includeByUserIdAndEmail = true,
13 includeByIP = true,
14 includeByEmailDomain = false,
15 sso = "sso-token-abc123"
16)
17
18if response.isSome:
19 let summary = response.get()
20 echo "Pre-ban summary:", summary
21

postCommentsByIds Internal Link

Parametreler

AdTürGerekliAçıklama
commentsByIdsParamsCommentsByIdsParamsHayır
ssostringHayır

Yanıt

Döndürür: Option[ModerationAPIChildCommentsResponse]

Örnek

postCommentsByIds Örneği
Copy Copy
1
2let commentsParams = CommentsByIdsParams(ids = @["cmt-1001", "cmt-1002"], includeReplies = true, maxDepth = 2)
3let (response, httpResponse) = client.postCommentsByIds(commentsByIdsParams = commentsParams, sso = "sso-user-7f3a9b")
4if response.isSome:
5 let result = response.get()
6 echo "Received child comments response: ", result
7

postFlagComment Internal Link

Parametreler

AdTürGerekliAçıklama
commentIdstringEvet
ssostringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

postFlagComment Örneği
Copy Copy
1
2let (response, httpResponse) = client.postFlagComment(commentId = "comment-742", sso = "")
3if response.isSome:
4 let apiResp = response.get()
5 echo "Comment flagged successfully"
6else:
7 echo "Failed to flag comment"
8

postRemoveComment Internal Link

Parametreler

AdTürGerekliAçıklama
commentIdstringEvet
ssostringHayır

Yanıt

Döndürür: Option[PostRemoveCommentResponse]

Örnek

postRemoveComment Örneği
Copy Copy
1
2let (response, httpResponse) = client.postRemoveComment(commentId = "cmt-987654321", sso = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.abc123.signature")
3if response.isSome:
4 let removed = response.get()
5 echo "Comment removed:", removed
6else:
7 echo "Failed to remove comment, HTTP response:", httpResponse
8

postRestoreDeletedComment Internal Link

Parametreler

AdTürGerekliAçıklama
commentIdstringEvet
ssostringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

postRestoreDeletedComment Örneği
Copy Copy
1
2let (response, httpResponse) = client.postRestoreDeletedComment(commentId = "comment-8a7b6c5d", sso = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.SAMPLE_SIGNATURE")
3if response.isSome:
4 let apiResp = response.get()
5 echo "Comment restored:", apiResp
6else:
7 echo "Restore request failed"
8

postSetCommentApprovalStatus Internal Link

Parametreler

AdTürGerekliAçıklama
commentIdstringEvet
approvedboolHayır
ssostringHayır

Yanıt

Döndürür: Option[SetCommentApprovedResponse]

Örnek

postSetCommentApprovalStatus Örneği
Copy Copy
1
2let (response, httpResponse) = client.postSetCommentApprovalStatus(commentId = "cmt-7890", approved = false, sso = "")
3if response.isSome:
4 let setResp = response.get()
5 discard setResp
6

postSetCommentReviewStatus Internal Link

Parametreler

AdTürGerekliAçıklama
commentIdstringEvet
reviewedboolHayır
ssostringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

postSetCommentReviewStatus Örneği
Copy Copy
1
2let (response, httpResponse) = client.postSetCommentReviewStatus(
3 commentId = "cmt-98765-news-article",
4 reviewed = false,
5 sso = ""
6)
7if response.isSome:
8 let apiResp = response.get()
9 echo "Review status updated"
10else:
11 echo "Failed to update review status: " & $httpResponse.status
12

postSetCommentSpamStatus Internal Link


Parametreler

AdTypeGerekliAçıklama
commentIdstringEvet
spamboolHayır
permNotSpamboolHayır
ssostringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

postSetCommentSpamStatus Örneği
Copy Copy
1
2let (response, httpResponse) = client.postSetCommentSpamStatus(
3 commentId = "cmt-20250619-842",
4 spam = false,
5 permNotSpam = false,
6 sso = ""
7)
8if response.isSome:
9 let apiEmpty = response.get()
10 discard apiEmpty
11

postSetCommentText Internal Link

Parametreler

İsimTürGerekliAçıklama
commentIdstringEvet
setCommentTextParamsSetCommentTextParamsHayır
ssostringHayır

Yanıt

Döndürür: Option[SetCommentTextResponse]

Örnek

postSetCommentText Örneği
Copy Copy
1
2let (response, httpResponse) = client.postSetCommentText(commentId = "comment-4821",
3 setCommentTextParams = SetCommentTextParams(text = "Updated comment to clarify the main point and fix a typo."),
4 sso = "sso-user-8f3b9c")
5
6if response.isSome:
7 let setCommentResp = response.get()
8 echo "Received SetCommentTextResponse"
9

postUnFlagComment Internal Link

Parametreler

AdTürGerekliAçıklama
commentIdstringEvet
ssostringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

postUnFlagComment Örneği
Copy Copy
1
2let (response, httpResponse) = client.postUnFlagComment(commentId = "comment-8f3a2b4e", sso = "")
3if response.isSome:
4 let apiEmpty = response.get()
5 echo "Comment unflagged successfully, response: ", apiEmpty
6else:
7 echo "Failed to unflag comment. HTTP response: ", httpResponse
8

postVote Internal Link

Parametreler

AdTürGerekliAçıklama
commentIdstringEvet
directionstringHayır
ssostringHayır

Yanıt

Döndürür: Option[VoteResponse]

Örnek

postVote Örneği
Copy Copy
1
2let (response, httpResponse) = client.postVote(commentId = "comment-4f3a9e", direction = "up", sso = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjoidXNlci0xMjMifQ.signedPart")
3if response.isSome:
4 let vote = response.get()
5 echo "Vote recorded:", vote
6else:
7 echo "No vote returned"
8

putAwardBadge Internal Link

Parametreler

İsimTürGerekliAçıklama
badgeIdstringHayır
userIdstringHayır
commentIdstringEvet
broadcastIdstringHayır
ssostringHayır

Yanıt

Döndürür: Option[AwardUserBadgeResponse]

Örnek

putAwardBadge Örneği
Copy Copy
1
2let (response, httpResponse) = client.putAwardBadge(
3 badgeId = "gold-contributor",
4 userId = "user-8723",
5 commentId = "cmt-54a3b2",
6 broadcastId = "",
7 sso = ""
8)
9if response.isSome:
10 let award = response.get()
11 echo "Awarded badge received"
12else:
13 echo "No award response"
14

putCloseThread Internal Link

Parametreler

AdTürGerekliAçıklama
urlIdstringEvet
ssostringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

putCloseThread Örneği
Copy Copy
1
2let (response, httpResponse) = client.putCloseThread(urlId = "news/article-title", sso = "")
3if response.isSome:
4 let apiResp = response.get()
5 echo "Thread closed successfully:", $apiResp
6else:
7 echo "Failed to close thread, HTTP response:", $httpResponse
8

putRemoveBadge Internal Link

Parametreler

AdTürGerekliAçıklama
badgeIdstringHayır
userIdstringHayır
commentIdstringEvet
broadcastIdstringHayır
ssostringHayır

Yanıt

Dönüş: Option[RemoveUserBadgeResponse]

Örnek

putRemoveBadge Örneği
Copy Copy
1
2let (response, httpResponse) = client.putRemoveBadge(badgeId = "verified-journalist",
3 userId = "user-7890",
4 commentId = "comment-98765",
5 broadcastId = "",
6 sso = "")
7
8if response.isSome:
9 let removeResp = response.get()
10 discard removeResp
11else:
12 discard httpResponse
13

putReopenThread Internal Link

Parametreler

AdTürGerekliAçıklama
urlIdstringEvet
ssostringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

putReopenThread Örneği
Copy Copy
1
2let (response, httpResponse) = client.putReopenThread(urlId = "news/2026-election-analysis", sso = "")
3if response.isSome:
4 let apiResp = response.get()
5 echo "Reopen succeeded, response: ", apiResp
6else:
7 echo "Reopen failed, HTTP status: ", httpResponse.status
8

setTrustFactor Internal Link

Parametreler

NameTypeRequiredDescription
userIdstringHayır
trustFactorstringHayır
ssostringHayır

Yanıt

Döndürür: Option[SetUserTrustFactorResponse]

Örnek

setTrustFactor Örneği
Copy Copy
1
2let (response, httpResponse) = client.setTrustFactor(userId = "user-9876", trustFactor = "high", sso = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ1c2VyLTk4NzYiLCJpYXQiOjE2MjQwMDAwMDB9.signature")
3if response.isSome:
4 let resultObj = response.get()
5 echo resultObj
6else:
7 echo "No response received"
8

createModerator Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
createModeratorBodyCreateModeratorBodyHayır

Yanıt

Döndürür: Option[CreateModeratorResponse]

Örnek

createModerator Örneği
Copy Copy
1
2var body: CreateModeratorBody
3body.username = "alice.moderator"
4body.displayName = "Alice Moderator"
5body.email = "alice@news-site.com"
6body.enabled = true
7body.roles = @["moderator"]
8body.notes = ""
9
10let (response, httpResponse) = client.createModerator(tenantId = "my-tenant-123", createModeratorBody = body)
11if response.isSome:
12 let created = response.get()
13 echo "Created moderator ID: ", created.id
14

deleteModerator Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
sendEmailstringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

deleteModerator Örneği
Copy Copy
1
2let (response, httpResponse) = client.deleteModerator(tenantId = "my-tenant-123", id = "", sendEmail = "")
3if response.isSome:
4 let apiEmpty = response.get()
5 echo "Moderator deleted successfully for tenant my-tenant-123"
6else:
7 echo "No response returned; inspect httpResponse"
8

getModerator Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[GetModeratorResponse]

Örnek

getModerator Örneği
Copy Copy
1
2let (response, httpResponse) = client.getModerator(tenantId = "my-tenant-123", id = "mod-456")
3if response.isSome:
4 let moderator = response.get()
5 echo moderator
6else:
7 echo "Moderator not found, HTTP status: ", $httpResponse.status
8

getModerators Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
skipfloat64Hayır

Yanıt

Döndürür: Option[GetModeratorsResponse]

Örnek

getModerators Örneği
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 "Received moderators response:", moderators
6else:
7 echo "No moderators returned"
8

updateModerator Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
updateModeratorBodyUpdateModeratorBodyHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

updateModerator Örneği
Copy Copy
1
2let modBody: UpdateModeratorBody = UpdateModeratorBody(
3 displayName = "Alice Moderator",
4 email = "alice@newsdaily.com",
5 isActive = true,
6 permissions = @["delete_comments", "ban_users"]
7)
8
9let (response, httpResponse) = client.updateModerator(tenantId = "news-tenant-456", id = "moderator-789", updateModeratorBody = modBody)
10
11if response.isSome:
12 let apiEmpty = response.get()
13 echo "Moderator updated successfully. HTTP status: ", httpResponse.status
14else:
15 echo "Failed to update moderator. HTTP status: ", httpResponse.status
16

deleteNotificationCount Internal Link


Parametreler

NameTürGerekliAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

deleteNotificationCount Örneği
Copy Copy
1
2let (response, httpResponse) = client.deleteNotificationCount(tenantId = "my-tenant-123", id = "notification-789")
3if response.isSome:
4 let emptyResp = response.get()
5 echo "Notification count deleted for tenant: ", "my-tenant-123"
6else:
7 echo "Failed to delete notification count, status: ", $httpResponse.statusCode
8

getCachedNotificationCount Internal Link


Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
idstringHayır

Yanıt

Dönen değer: Option[GetCachedNotificationCountResponse]

Örnek

getCachedNotificationCount Örneği
Copy Copy
1
2let (response, httpResponse) = client.getCachedNotificationCount(tenantId = "my-tenant-123", id = "notification-789")
3if response.isSome:
4 let cached = response.get()
5 echo "Cached notification count: ", $cached
6else:
7 echo "No cached notification count"
8

getNotificationCount Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
userIdstringHayır
urlIdstringEvet
fromCommentIdstringHayır
viewedboolHayır

Yanıt

Döndürür: Option[GetNotificationCountResponse]

Örnek

getNotificationCount Örneği
Copy Copy
1
2let (response, httpResponse) = client.getNotificationCount(tenantId = "my-tenant-123", userId = "user-987", urlId = "news/2026/06/election-results", fromCommentId = "", viewed = false)
3if response.isSome:
4 let notifyData = response.get()
5 echo notifyData
6

getNotifications Internal Link

Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
userIdstringHayır
urlIdstringEvet
fromCommentIdstringHayır
viewedboolHayır
skipfloat64Hayır

Yanıt

Döndürür: Option[GetNotificationsResponse]

Örnek

getNotifications Örneği
Copy Copy
1
2let (response, httpResponse) = client.getNotifications(tenantId = "my-tenant-123", userId = "user-456", urlId = "news/article-title", fromCommentId = "cmt-789", viewed = false, skip = 0.0)
3if response.isSome:
4 let notifications = response.get()
5 echo notifications
6

updateNotification Internal Link


Parametreler

NameTypeRequiredDescription
tenantIdstringYes
idstringNo
updateNotificationBodyUpdateNotificationBodyNo
userIdstringNo

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

updateNotification Örneği
Copy Copy
1
2let (response, httpResponse) = client.updateNotification(
3 tenantId = "my-tenant-123",
4 id = "notif-456",
5 updateNotificationBody = UpdateNotificationBody(
6 enabled = true,
7 channels = @["email", "push"],
8 frequency = "immediate"
9 ),
10 userId = "user-789"
11)
12
13if response.isSome:
14 let apiEmpty = response.get()
15 discard apiEmpty
16

createV1PageReact Internal Link

Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
urlIdstringEvet
titlestringHayır

Yanıt

Döndürür: Option[CreateV1PageReact]

Örnek

createV1PageReact Örneği
Copy Copy
1
2let (response, httpResponse) = client.createV1PageReact(
3 tenantId = "my-tenant-123",
4 urlId = "news/2026/market-rally",
5 title = "Breaking News: Markets Rally Today"
6)
7
8if response.isSome:
9 let pageReact = response.get()
10 echo "Page react created: ", pageReact
11else:
12 echo "Failed to create page react: ", httpResponse
13

createV2PageReact Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
urlIdstringEvet
idstringHayır
titlestringHayır

Yanıt

Döndürür: Option[CreateV1PageReact]

Örnek

createV2PageReact Örneği
Copy Copy
1
2let (response, httpResponse) = client.createV2PageReact(
3 tenantId = "my-tenant-123",
4 urlId = "news/2026/06/fastcomments-release",
5 id = "",
6 title = ""
7)
8if response.isSome:
9 let react = response.get()
10 echo "Created page react: ", $react
11else:
12 echo "No react returned, HTTP status: ", $httpResponse.statusCode
13

deleteV1PageReact Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
urlIdstringEvet

Yanıt

Döndürür: Option[CreateV1PageReact]

Örnek

deleteV1PageReact Örneği
Copy Copy
1
2let (response, httpResponse) = client.deleteV1PageReact(tenantId = "my-tenant-123", urlId = "news/article-title")
3if response.isSome:
4 let deletedReact = response.get()
5 echo "Deleted react:", deletedReact
6else:
7 echo "No react returned for tenant: my-tenant-123, url: news/article-title"
8

deleteV2PageReact Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
urlIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[CreateV1PageReact]

Örnek

deleteV2PageReact Örneği
Copy Copy
1
2let (response, httpResponse) = client.deleteV2PageReact(tenantId = "my-tenant-123", urlId = "news/2026/politics-election", id = "react-456")
3if response.isSome:
4 let react = response.get()
5 echo react
6else:
7 echo "No reaction returned, status: ", httpResponse.status
8

getV1PageLikes Internal Link


Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
urlIdstringEvet

Yanıt

Döndürür: Option[GetV1PageLikes]

Örnek

getV1PageLikes Örneği
Copy Copy
1
2let (response, httpResponse) = client.getV1PageLikes(tenantId = "my-tenant-123", urlId = "news/how-to-train-your-dragon")
3if response.isSome:
4 let pageLikes = response.get()
5 echo "Fetched page likes for url:", "news/how-to-train-your-dragon"
6else:
7 echo "No likes returned for url:", "news/how-to-train-your-dragon"
8

getV2PageReacts Internal Link

Parametreler

AdTipGerekliAçıklama
tenantIdstringEvet
urlIdstringEvet

Yanıt

Döndürür: Option[GetV2PageReacts]

Örnek

getV2PageReacts Örneği
Copy Copy
1
2let (response, httpResponse) = client.getV2PageReacts(tenantId = "my-tenant-123", urlId = "news/elections/2026/us-primary-results")
3if response.isSome:
4 let reacts = response.get()
5 echo "Received reacts: ", $reacts
6else:
7 echo "No reacts available"
8

getV2PageReactUsers Internal Link


Parametreler

İsimTürGerekliAçıklama
tenantIdstringEvet
urlIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[GetV2PageReactUsersResponse]

Örnek

getV2PageReactUsers Örneği
Copy Copy
1
2let (response, httpResponse) = client.getV2PageReactUsers(tenantId = "my-tenant-123", urlId = "news/article-title", id = "")
3if response.isSome:
4 let usersResp = response.get()
5 echo repr(usersResp)
6else:
7 echo "No page react users returned. HTTP response: ", repr(httpResponse)
8

addPage Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
createAPIPageDataCreateAPIPageDataHayır

Yanıt

Döndürür: Option[AddPageAPIResponse]

Örnek

addPage Örneği
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

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[DeletePageAPIResponse]

Örnek

deletePage Örneği
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

getOfflineUsers Internal Link


Sayfada daha önce yorum yapan ve şu anda çevrimiçi olmayan kişiler. displayName'e göre sıralanır. /users/online tükendiğinde "Üyeler" bölümünü görüntülemek için bunu kullanın. commenterName üzerinde imleçli sayfalama: sunucu kısmi {tenantId, urlId, commenterName} indeksini afterName'den ileriye doğru $gt ile yürütür, $skip maliyeti yok.

Parametreler

AdTürGerekliAçıklama
tenantIdstringYes
urlIdstringYes
afterNamestringNo
afterUserIdstringNo

Yanıt

Döndürür: Option[PageUsersOfflineResponse]

Örnek

getOfflineUsers Örneği
Copy Copy
1
2let (response, httpResponse) = client.getOfflineUsers(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-how-to-code",
5 afterName = "",
6 afterUserId = ""
7)
8
9if response.isSome:
10 let offlinePage = response.get()
11 echo "Received offline users page"
12 discard httpResponse.statusCode
13

getOnlineUsers Internal Link

Şu anda çevrimiçi olan bir sayfanın görüntüleyicileri: websocket oturumu şu anda sayfaya abone olan kişiler. anonCount + totalCount döndürür (oda genelindeki aboneler, saymadığımız anonim görüntüleyiciler dahil).

Parametreler

NameTypeRequiredDescription
tenantIdstringYes
urlIdstringYes
afterNamestringNo
afterUserIdstringNo

Yanıt

Döndürür: Option[PageUsersOnlineResponse]

Örnek

getOnlineUsers Örneği
Copy Copy
1
2let (response, httpResponse) = client.getOnlineUsers(tenantId = "my-tenant-123", urlId = "news/politics/top-story", afterName = "", afterUserId = "")
3if response.isSome:
4 let page = response.get()
5 echo "Received online users page:"
6 echo page
7else:
8 echo "No online users returned. HTTP status: ", httpResponse.statusCode
9

getPageByURLId Internal Link


Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
urlIdstringEvet

Yanıt

Döndürür: Option[GetPageByURLIdAPIResponse]

Örnek

getPageByURLId Örneği
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

Parametreler

AdıTürGerekliAçıklama
tenantIdstringEvet

Yanıt

Döndürür: Option[GetPagesAPIResponse]

Örnek

getPages Örneği
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

getPagesPublic Internal Link


Bir kiracı için sayfaları listeler. FChat masaüstü istemcisi tarafından oda listesini doldurmak için kullanılır. Her sayfa için çözümlenen özel yapılandırmada enableFChat değerinin true olmasını gerektirir. SSO gerektiren sayfalar, istekte bulunan kullanıcının grup erişimine göre filtrelenir.

Parametreler

AdTürZorunluAçıklama
tenantIdstringEvet
cursorstringHayır
limitintHayır
qstringHayır
sortByPagesSortByHayır
hasCommentsboolHayır

Yanıt

Dönen değer: Option[GetPublicPagesResponse]

Örnek

getPagesPublic Örneği
Copy Copy
1
2let (response, httpResponse) = client.getPagesPublic(
3 tenantId = "my-tenant-123",
4 cursor = "",
5 limit = 0,
6 q = "",
7 sortBy = PagesSortBy(0),
8 hasComments = false
9)
10
11if response.isSome:
12 let pages = response.get()
13 echo "Retrieved public pages: ", $pages
14else:
15 echo "No pages returned, HTTP status: ", $httpResponse.status
16

getUsersInfo Internal Link


Bir tenant için toplu kullanıcı bilgisi. userIds verildiğinde, User / SSOUser'dan görüntüleme bilgilerini döndürür. Yorum widget'ı, varlık olayı aracılığıyla yeni görünen kullanıcıları zenginleştirmek için kullanılır. Sayfa bağlamı yok: gizlilik tutarlı şekilde uygulanır (özel profiller maskelenir).

Parametreler

İsimTürGerekliAçıklama
tenantIdstringEvet
idsstringHayır

Yanıt

Döndürür: Option[PageUsersInfoResponse]

Örnek

getUsersInfo Örneği
Copy Copy
1
2let (response, httpResponse) = client.getUsersInfo(tenantId = "my-tenant-123", ids = "user-42,user-87")
3if response.isSome:
4 let usersInfo = response.get()
5 echo "Retrieved users info:", usersInfo
6else:
7 echo "No users info returned. HTTP status:", httpResponse.status
8

patchPage Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
updateAPIPageDataUpdateAPIPageDataHayır

Yanıt

Döndürür: Option[PatchPageAPIResponse]

Örnek

patchPage Örneği
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

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

deletePendingWebhookEvent Örneği
Copy Copy
1
2let (response, httpResponse) = client.deletePendingWebhookEvent(tenantId = "my-tenant-123", id = "wh_evt_9f8b7a6c")
3if response.isSome:
4 let apiEmpty = response.get()
5 echo "Pending webhook event deleted for tenant my-tenant-123"
6else:
7 echo "Failed to delete pending webhook event"
8

getPendingWebhookEventCount Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
commentIdstringEvet
externalIdstringHayır
eventTypestringHayır
domainstringHayır
attemptCountGTfloat64Hayır

Yanıt

Döndürür: Option[GetPendingWebhookEventCountResponse]

Örnek

getPendingWebhookEventCount Örneği
Copy Copy
1
2let (response, httpResponse) = client.getPendingWebhookEventCount(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-456abc",
5 externalId = "ext-7890",
6 eventType = "comment_created",
7 domain = "news.example.com",
8 attemptCountGT = 2.0
9)
10
11if response.isSome:
12 let pending = response.get()
13 echo pending
14else:
15 echo "No pending webhook event count returned; HTTP status: ", httpResponse.status
16

getPendingWebhookEvents Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringYes
commentIdstringYes
externalIdstringNo
eventTypestringNo
domainstringNo
attemptCountGTfloat64No
skipfloat64No

Yanıt

Döndürür: Option[GetPendingWebhookEventsResponse]

Örnek

getPendingWebhookEvents Örneği
Copy Copy
1
2let (response, httpResponse) = client.getPendingWebhookEvents(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-987654",
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

createQuestionConfig Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
createQuestionConfigBodyCreateQuestionConfigBodyHayır

Yanıt

Döndürür: Option[CreateQuestionConfigResponse]

Örnek

createQuestionConfig Örneği
Copy Copy
1
2let (response, httpResponse) = client.createQuestionConfig(
3 tenantId = "my-tenant-123",
4 createQuestionConfigBody = CreateQuestionConfigBody(
5 label = "Article Question",
6 required = true,
7 minLength = 20,
8 maxLength = 1000,
9 allowedTags = @["comment","question","feedback"],
10 notifyModerators = false
11 )
12)
13if response.isSome:
14 let cfg = response.get()
15 echo "Created question config id: ", cfg.id
16

deleteQuestionConfig Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

deleteQuestionConfig Örneği
Copy Copy
1
2let (response, httpResponse) = client.deleteQuestionConfig(tenantId = "my-tenant-123", id = "")
3
4if response.isSome:
5 let deleted = response.get()
6 echo "Question config deleted for tenant: ", "my-tenant-123"
7else:
8 echo "Failed to delete question config"
9

getQuestionConfig Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[GetQuestionConfigResponse]

Örnek

getQuestionConfig Örneği
Copy Copy
1
2let (response, httpResponse) = client.getQuestionConfig(tenantId = "my-tenant-123", id = "qst-456")
3if response.isSome:
4 let cfg = response.get()
5 discard cfg
6

getQuestionConfigs Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
skipfloat64Hayır

Yanıt

Döndürür: Option[GetQuestionConfigsResponse]

Örnek

getQuestionConfigs Örneği
Copy Copy
1
2let (response, httpResponse) = client.getQuestionConfigs(tenantId = "my-tenant-123", skip = 0.0)
3if response.isSome:
4 let configs = response.get()
5 echo "Received question configs for tenant my-tenant-123"
6 echo configs
7else:
8 echo "No question configs returned"
9

updateQuestionConfig Internal Link

Parametreler

AdTipGerekliAçıklama
tenantIdstringEvet
idstringHayır
updateQuestionConfigBodyUpdateQuestionConfigBodyHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

updateQuestionConfig Örneği
Copy Copy
1
2let (response, httpResponse) = client.updateQuestionConfig(tenantId = "my-tenant-123", id = "question-config-456", updateQuestionConfigBody = default(UpdateQuestionConfigBody))
3if response.isSome:
4 let apiEmpty = response.get()
5 discard apiEmpty
6

createQuestionResult Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
createQuestionResultBodyCreateQuestionResultBodyHayır

Yanıt

Döndürür: Option[CreateQuestionResultResponse]

Örnek

createQuestionResult Örneği
Copy Copy
1
2let (response, httpResponse) = client.createQuestionResult(
3 tenantId = "my-tenant-123",
4 createQuestionResultBody = CreateQuestionResultBody(
5 questionId = "q-2026-001",
6 userId = "user-42",
7 correct = true,
8 score = 95,
9 tags = @["news","reader-question"]
10 )
11)
12if response.isSome:
13 let result = response.get()
14 echo "Created question result id: ", result.id
15 echo "HTTP status: ", httpResponse.status.code
16

deleteQuestionResult Internal Link


Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

deleteQuestionResult Örneği
Copy Copy
1
2let tenantId = "my-tenant-123"
3let resultId = "question-result-456"
4let (response, httpResponse) = client.deleteQuestionResult(tenantId = tenantId, id = resultId)
5if response.isSome:
6 let emptyResp = response.get()
7 echo "Deleted question result:", resultId
8

getQuestionResult Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[GetQuestionResultResponse]

Örnek

getQuestionResult Örneği
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 "Question result received:"
6 echo result
7else:
8 echo "No question result returned, HTTP status: ", $httpResponse.status
9

getQuestionResults Internal Link


Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
urlIdstringEvet
userIdstringHayır
startDatestringHayır
questionIdstringHayır
questionIdsstringHayır
skipfloat64Hayır

Yanıt

Döndürür: Option[GetQuestionResultsResponse]

Örnek

getQuestionResults Örneği
Copy Copy
1
2let (response, httpResponse) = client.getQuestionResults(
3 tenantId = "my-tenant-123",
4 urlId = "news/2026/election-analysis",
5 userId = "user-42",
6 startDate = "2026-06-01T00:00:00Z",
7 questionId = "q-6789",
8 questionIds = @["q-6789", "q-6790"],
9 skip = 0.0
10)
11if response.isSome:
12 let results = response.get()
13 echo "Received question results"
14else:
15 echo "No results returned"
16

updateQuestionResult Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
updateQuestionResultBodyUpdateQuestionResultBodyHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

updateQuestionResult Örneği
Copy Copy
1
2let (response, httpResponse) = client.updateQuestionResult(
3 tenantId = "my-tenant-123",
4 id = "question-result-456",
5 updateQuestionResultBody = UpdateQuestionResultBody(
6 questionId: "q-789",
7 userId: "user-42",
8 score: 92,
9 passed: true,
10 tags: @["quiz", "math"]
11 )
12)
13if response.isSome:
14 let apiResp = response.get()
15 echo "Question result updated successfully"
16else:
17 echo "No response body; HTTP status: ", httpResponse.status.code
18

aggregateQuestionResults Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
questionIdstringHayır
questionIdsseq[string]Hayır
urlIdstringEvet
timeBucketAggregateTimeBucketHayır
startDatestringHayır
forceRecalculateboolHayır

Yanıt

Dönüş: Option[AggregateQuestionResultsResponse]

Örnek

aggregateQuestionResults Örneği
Copy Copy
1
2let (response, httpResponse) = client.aggregateQuestionResults(
3 tenantId = "my-tenant-123",
4 questionId = "",
5 questionIds = @[],
6 urlId = "news/article-title",
7 timeBucket = AggregateTimeBucket(0),
8 startDate = "",
9 forceRecalculate = false
10)
11
12if response.isSome:
13 let results = response.get()
14 discard results
15

bulkAggregateQuestionResults Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
bulkAggregateQuestionResultsRequestBulkAggregateQuestionResultsRequestHayır
forceRecalculateboolHayır

Yanıt

Döndürür: Option[BulkAggregateQuestionResultsResponse]

Örnek

bulkAggregateQuestionResults Örneği
Copy Copy
1
2let (response, httpResponse) = client.bulkAggregateQuestionResults(
3 tenantId = "my-tenant-123",
4 bulkAggregateQuestionResultsRequest = BulkAggregateQuestionResultsRequest(),
5 forceRecalculate = false
6)
7
8if response.isSome:
9 let aggregated = response.get()
10 echo "Aggregated question results received"
11

combineCommentsWithQuestionResults Internal Link


Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
questionIdstringHayır
questionIdsseq[string]Hayır
urlIdstringEvet
startDatestringHayır
forceRecalculateboolHayır
minValuefloat64Hayır
maxValuefloat64Hayır
limitfloat64Hayır

Yanıt

Döndürür: Option[CombineQuestionResultsWithCommentsResponse]

Örnek

combineCommentsWithQuestionResults Örneği
Copy Copy
1
2let (response, httpResponse) = client.combineCommentsWithQuestionResults(
3 tenantId = "my-tenant-123",
4 questionId = "",
5 questionIds = @[],
6 urlId = "news/article-2026-climate-change",
7 startDate = "",
8 forceRecalculate = false,
9 minValue = 0.0,
10 maxValue = 0.0,
11 limit = 0.0
12)
13
14if response.isSome:
15 let combined = response.get()
16 echo "Combined results received for tenant:", " my-tenant-123"
17else:
18 echo "No combined results returned"
19

addSSOUser Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
createAPISSOUserDataCreateAPISSOUserDataHayır

Yanıt

Döndürür: Option[AddSSOUserAPIResponse]

Örnek

addSSOUser Örneği
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

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
deleteCommentsboolHayır
commentDeleteModestringHayır

Yanıt

Döndürür: Option[DeleteSSOUserAPIResponse]

Örnek

deleteSSOUser Örneği
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

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
emailstringHayır

Yanıt

Döndürür: Option[GetSSOUserByEmailAPIResponse]

Örnek

getSSOUserByEmail Örneği
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

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[GetSSOUserByIdAPIResponse]

Örnek

getSSOUserById Örneği
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


Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
skipintHayır

Yanıt

Döndürür: Option[GetSSOUsersResponse]

Örnek

getSSOUsers Örneği
Copy Copy
1
2let (response, httpResponse) = client.getSSOUsers(tenantId = "my-tenant-123", skip = 0)
3if response.isSome:
4 let ssoUsers = response.get()
5 echo ssoUsers
6else:
7 echo "No SSO users returned; HTTP response:", httpResponse
8

patchSSOUser Internal Link


Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
idstringHayır
updateAPISSOUserDataUpdateAPISSOUserDataHayır
updateCommentsboolHayır

Yanıt

Döndürür: Option[PatchSSOUserAPIResponse]

Örnek

patchSSOUser Örneği
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


Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
idstringHayır
updateAPISSOUserDataUpdateAPISSOUserDataHayır
updateCommentsboolHayır

Yanıt

Döndürür: Option[PutSSOUserAPIResponse]

Örnek

putSSOUser Örneği
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

Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
createAPIUserSubscriptionDataCreateAPIUserSubscriptionDataHayır

Yanıt

Döndürür: Option[CreateSubscriptionAPIResponse]

Örnek

createSubscription Örneği
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

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
userIdstringHayır

Yanıt

Döndürür: Option[DeleteSubscriptionAPIResponse]

Örnek

deleteSubscription Örneği
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

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
userIdstringHayır

Yanıt

Döndürür: Option[GetSubscriptionsAPIResponse]

Örnek

getSubscriptions Örneği
Copy Copy
1
2let (response, httpResponse) = client.getSubscriptions(tenantId = "my-tenant-123", userId = "")
3if response.isSome:
4 let subscriptions = response.get()
5 discard subscriptions
6

updateSubscription Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
updateAPIUserSubscriptionDataUpdateAPIUserSubscriptionDataHayır
userIdstringHayır

Yanıt

Döndürür: Option[UpdateSubscriptionAPIResponse]

Örnek

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

getTenantDailyUsages Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
yearNumberfloat64Hayır
monthNumberfloat64Hayır
dayNumberfloat64Hayır
skipfloat64Hayır

Yanıt

Döndürür: Option[GetTenantDailyUsagesResponse]

Örnek

getTenantDailyUsages Örneği
Copy Copy
1
2let (response, httpResponse) = client.getTenantDailyUsages(
3 tenantId = "my-tenant-123",
4 yearNumber = 2026.0,
5 monthNumber = 6.0,
6 dayNumber = 19.0,
7 skip = 0.0
8)
9
10if response.isSome:
11 let usage = response.get()
12 discard usage
13

createTenantPackage Internal Link


Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
createTenantPackageBodyCreateTenantPackageBodyHayır

Yanıt

Döndürür: Option[CreateTenantPackageResponse]

Örnek

createTenantPackage Örneği
Copy Copy
1
2let (response, httpResponse) = client.createTenantPackage(tenantId = "my-tenant-123", createTenantPackageBody = CreateTenantPackageBody())
3
4if response.isSome:
5 let pkg = response.get()
6 echo "Created tenant package: ", $pkg
7else:
8 echo "Failed to create tenant package, HTTP response: ", $httpResponse
9

deleteTenantPackage Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

deleteTenantPackage Örneği
Copy Copy
1
2let (response, httpResponse) = client.deleteTenantPackage(tenantId = "my-tenant-123", id = "package-987")
3if response.isSome:
4 let emptyResp = response.get()
5 echo emptyResp
6else:
7 echo "Failed to delete tenant package"
8

getTenantPackage Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[GetTenantPackageResponse]

Örnek

getTenantPackage Örneği
Copy Copy
1
2let (response, httpResponse) = client.getTenantPackage(tenantId = "my-tenant-123", id = "premium-2026")
3if response.isSome:
4 let pkg = response.get()
5 echo "Retrieved tenant package:"
6 echo pkg
7else:
8 echo "Tenant package not found"
9

getTenantPackages Internal Link

Parametreler

İsimTypeGerekliAçıklama
tenantIdstringEvet
skipfloat64Hayır

Yanıt

Döndürür: Option[GetTenantPackagesResponse]

Örnek

getTenantPackages Örneği
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 tenant packages:"
6 echo packages
7else:
8 echo "No packages found for tenant 'my-tenant-123'"
9

replaceTenantPackage Internal Link

Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
idstringHayır
replaceTenantPackageBodyReplaceTenantPackageBodyHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

replaceTenantPackage Örneği
Copy Copy
1
2let (response, httpResponse) = client.replaceTenantPackage(
3 tenantId = "my-tenant-123",
4 id = "pkg-987",
5 replaceTenantPackageBody = ReplaceTenantPackageBody(
6 name = "Premium Plan",
7 priceCents = 999,
8 seats = 50,
9 enabled = true,
10 features = @["moderation", "analytics", "priority-support"]
11 )
12)
13
14if response.isSome:
15 let apiEmpty = response.get()
16 discard apiEmpty
17

updateTenantPackage Internal Link


Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
updateTenantPackageBodyUpdateTenantPackageBodyHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

updateTenantPackage Örneği
Copy Copy
1
2let packageBody = UpdateTenantPackageBody(
3 name: "Pro Plan",
4 priceCents: 1999,
5 active: true,
6 features: @["priority-support", "advanced-moderation"]
7)
8
9let (response, httpResponse) = client.updateTenantPackage(
10 tenantId = "my-tenant-123",
11 id = "pkg-789",
12 updateTenantPackageBody = packageBody
13)
14
15if response.isSome:
16 let apiEmpty = response.get()
17 echo "Tenant package updated successfully, HTTP status: " & $httpResponse.status
18

createTenantUser Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
createTenantUserBodyCreateTenantUserBodyHayır

Yanıt

Döndürür: Option[CreateTenantUserResponse]

Örnek

createTenantUser Örneği
Copy Copy
1
2let (response, httpResponse) = client.createTenantUser(tenantId = "my-tenant-123",
3 createTenantUserBody = CreateTenantUserBody(userId = "user-456",
4 email = "jane.doe@example.com",
5 displayName = "Jane Doe",
6 roles = @["editor"],
7 isAdmin = false))
8if response.isSome:
9 let created = response.get()
10 discard created
11

deleteTenantUser Internal Link

Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
idstringHayır
deleteCommentsstringHayır
commentDeleteModestringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

deleteTenantUser Örneği
Copy Copy
1
2let (response, httpResponse) = client.deleteTenantUser(tenantId = "my-tenant-123", id = "user-789", deleteComments = "true", commentDeleteMode = "soft")
3if response.isSome:
4 let apiResp = response.get()
5 echo "Tenant user deleted, response: ", apiResp
6else:
7 echo "Failed to delete tenant user, HTTP status: ", $httpResponse.status
8

getTenantUser Internal Link


Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[GetTenantUserResponse]

Örnek

getTenantUser Örneği
Copy Copy
1
2let (response, httpResponse) = client.getTenantUser(tenantId = "my-tenant-123", id = "user-789")
3if response.isSome:
4 let tenantUser = response.get()
5 echo "User fetched:", tenantUser
6else:
7 echo "No user found, HTTP status:", httpResponse.status
8

getTenantUsers Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
skipfloat64Hayır

Yanıt

Döndürür: Option[GetTenantUsersResponse]

Örnek

getTenantUsers Örneği
Copy Copy
1
2let (response, httpResponse) = client.getTenantUsers(tenantId = "my-tenant-123", skip = 0.0)
3
4if response.isSome:
5 let tenantUsers = response.get()
6 echo "Retrieved tenant users"
7else:
8 echo "No tenant users returned"
9

replaceTenantUser Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
replaceTenantUserBodyReplaceTenantUserBodyHayır
updateCommentsstringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

replaceTenantUser Örneği
Copy Copy
1
2let body = ReplaceTenantUserBody(
3 displayName = "Jane Doe",
4 email = "jane.doe@example.com",
5 externalId = "jdoe-789",
6 admin = false,
7 enabled = true,
8 tags = @["editor", "subscriber"]
9)
10
11let (response, httpResponse) = client.replaceTenantUser(
12 tenantId = "my-tenant-123",
13 id = "user-456",
14 replaceTenantUserBody = body,
15 updateComments = "true"
16)
17
18if response.isSome:
19 let apiEmpty = response.get()
20 echo "ReplaceTenantUser succeeded, http status:", httpResponse.status
21

Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
idstringHayır
redirectURLstringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

sendLoginLink Örneği
Copy Copy
1
2let (response, httpResponse) = client.sendLoginLink(tenantId = "my-tenant-123", id = "user-456", redirectURL = "https://app.newsportal.com/welcome")
3if response.isSome:
4 let apiResp = response.get()
5 echo "Login link sent successfully"
6else:
7 echo "Failed to send login link, HTTP status: ", $httpResponse.status
8

updateTenantUser Internal Link

Parametreler

AdıTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
updateTenantUserBodyUpdateTenantUserBodyHayır
updateCommentsstringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

updateTenantUser Örneği
Copy Copy
1
2let (response, httpResponse) = client.updateTenantUser(
3 tenantId = "my-tenant-123",
4 id = "user-987",
5 updateTenantUserBody = UpdateTenantUserBody(
6 displayName = "Jane Doe",
7 email = "jane.doe@example.com",
8 roles = @["moderator", "editor"],
9 isActive = true
10 ),
11 updateComments = "true"
12)
13
14if response.isSome:
15 let apiEmpty = response.get()
16 discard apiEmpty
17

createTenant Internal Link

Parametreler

AdTypeGerekliAçıklama
tenantIdstringEvet
createTenantBodyCreateTenantBodyHayır

Yanıt

Döndürür: Option[CreateTenantResponse]

Örnek

createTenant Örneği
Copy Copy
1
2let (response, httpResponse) = client.createTenant(
3 tenantId = "my-tenant-123",
4 createTenantBody = CreateTenantBody(
5 name = "My Tenant 123",
6 domain = "news.example.com",
7 allowAnonymous = false,
8 allowedOrigins = @["https://news.example.com", "https://api.news.example.com"],
9 description = "Comments for News Example"
10 )
11)
12if response.isSome:
13 let created = response.get()
14 echo "Created tenant: ", created.tenantId
15else:
16 echo "Failed to create tenant, status: ", httpResponse.status
17

deleteTenant Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
surestringHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

deleteTenant Örneği
Copy Copy
1
2let (response, httpResponse) = client.deleteTenant(tenantId = "my-tenant-123", id = "", sure = "")
3if response.isSome:
4 let emptyResp = response.get()
5else:
6 discard httpResponse
7

getTenant Internal Link


Parametreler

NameTypeRequiredAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[GetTenantResponse]

Örnek

getTenant Örneği
Copy Copy
1
2let (response, httpResponse) = client.getTenant(tenantId = "my-tenant-123", id = "tenant-789")
3if response.isSome:
4 let tenant = response.get()
5 discard tenant
6else:
7 discard httpResponse
8

getTenants Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
metastringHayır
skipfloat64Hayır

Yanıt

Döndürür: Option[GetTenantsResponse]

Örnek

getTenants Örneği
Copy Copy
1
2let (response, httpResponse) = client.getTenants(tenantId = "my-tenant-123", meta = "env=production", skip = 0.0)
3if response.isSome:
4 let tenantsResp = response.get()
5 discard tenantsResp
6 echo "Tenants fetched successfully"
7else:
8 echo "Request failed with status ", httpResponse.status
9

updateTenant Internal Link

Parametreler

AdıTypeRequiredAçıklama
tenantIdstringEvet
idstringHayır
updateTenantBodyUpdateTenantBodyHayır

Yanıt

Döndürür: Option[APIEmptyResponse]

Örnek

updateTenant Örneği
Copy Copy
1
2let (response, httpResponse) = client.updateTenant(
3 tenantId = "my-tenant-123",
4 id = "settings",
5 updateTenantBody = UpdateTenantBody(
6 name = "My Tenant 123",
7 enableModeration = true,
8 allowedDomains = @["news.example.com", "blog.example.org"],
9 maxCommentLength = 1000
10 )
11)
12
13if response.isSome:
14 let apiResp = response.get()
15 echo "Tenant updated successfully: ", apiResp
16else:
17 echo "Failed to update tenant, HTTP status: ", httpResponse.status
18

changeTicketState Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
userIdstringHayır
idstringHayır
changeTicketStateBodyChangeTicketStateBodyHayır

Yanıt

Döndürür: Option[ChangeTicketStateResponse]

Örnek

changeTicketState Örneği
Copy Copy
1
2let body = ChangeTicketStateBody()
3let (response, httpResponse) = client.changeTicketState(tenantId = "my-tenant-123", userId = "user-456", id = "ticket-789", changeTicketStateBody = body)
4if response.isSome:
5 let ticketResp = response.get()
6 echo "Ticket state changed:", ticketResp
7

createTicket Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
userIdstringHayır
createTicketBodyCreateTicketBodyHayır

Yanıt

Döndürür: Option[CreateTicketResponse]

Örnek

createTicket Örneği
Copy Copy
1
2let body = CreateTicketBody(
3 subject = "Comment moderation issue",
4 message = "Several abusive comments reported on article, please review and moderate.",
5 tags = @["moderation", "abuse", "urgent"],
6 url = "https://news.example.com/world/2026-election",
7 priority = "high"
8)
9
10let (response, httpResponse) = client.createTicket(tenantId = "my-tenant-123", userId = "user-789", createTicketBody = body)
11
12if response.isSome:
13 let ticket = response.get()
14 echo "Created ticket ID: ", ticket.id
15

getTicket Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
userIdstringHayır

Yanıt

Döndürür: Option[GetTicketResponse]

Örnek

getTicket Örneği
Copy Copy
1
2let (response, httpResponse) = client.getTicket(tenantId = "my-tenant-123", id = "ticket-456", userId = "user-789")
3if response.isSome:
4 let ticket = response.get()
5 echo "Got ticket:", ticket
6else:
7 echo "No ticket returned; HTTP response:", httpResponse
8

getTickets Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
userIdstringHayır
statefloat64Hayır
skipfloat64Hayır
limitfloat64Hayır

Yanıt

Döndürür: Option[GetTicketsResponse]

Örnek

getTickets Örneği
Copy Copy
1
2let (response, httpResponse) = client.getTickets(tenantId = "my-tenant-123", userId = "user-789", state = 1.0, skip = 0.0, limit = 50.0)
3if response.isSome:
4 let tickets = response.get()
5 echo tickets
6

getTranslations Internal Link

Parametreler

AdTürGerekliAçıklama
namespacestringHayır
componentstringHayır
localestringHayır
useFullTranslationIdsboolHayır

Yanıt

Döndürür: Option[GetTranslationsResponse]

Örnek

getTranslations Örneği
Copy Copy
1
2let (response, httpResponse) = client.getTranslations(
3 namespace = "news-site",
4 component = "article-comments",
5 locale = "en-US",
6 useFullTranslationIds = false
7)
8if response.isSome:
9 let translations = response.get()
10 discard translations
11else:
12 echo "No translations available"
13

uploadImage Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringYes
filestringNo
sizePresetSizePresetNo
urlIdstringYes

Yanıt

Döndürür: Option[UploadImageResponse]

Örnek

uploadImage Örneği
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

Parametreler

AdTürZorunluAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[APIGetUserBadgeProgressResponse]

Örnek

getUserBadgeProgressById Örneği
Copy Copy
1
2let (response, httpResponse) = client.getUserBadgeProgressById(tenantId = "my-tenant-123", id = "")
3if response.isSome:
4 let badgeProgress = response.get()
5 echo badgeProgress
6else:
7 echo "No badge progress found"
8

getUserBadgeProgressByUserId Internal Link

Parametreler

AdTürZorunluAçıklama
tenantIdstringEvet
userIdstringHayır

Yanıt

Döndürür: Option[APIGetUserBadgeProgressResponse]

Örnek

getUserBadgeProgressByUserId Örneği
Copy Copy
1
2let tenantId = "my-tenant-123"
3let userId = "user-456"
4let (response, httpResponse) = client.getUserBadgeProgressByUserId(tenantId = tenantId, userId = userId)
5if response.isSome:
6 let badgeProgress = response.get()
7 echo "Badge progress retrieved for ", userId
8 discard badgeProgress
9

getUserBadgeProgressList Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
userIdstringHayır
limitfloat64Hayır
skipfloat64Hayır

Yanıt

Döndürür: Option[APIGetUserBadgeProgressListResponse]

Örnek

getUserBadgeProgressList Örneği
Copy Copy
1
2let (response, httpResponse) = client.getUserBadgeProgressList(
3 tenantId = "my-tenant-123",
4 userId = "user-789",
5 limit = 25.0,
6 skip = 0.0
7)
8
9if response.isSome:
10 let badgeProgress = response.get()
11 echo "Received badge progress:", badgeProgress
12else:
13 echo "No badge progress; HTTP status: ", $httpResponse.status
14

createUserBadge Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
createUserBadgeParamsCreateUserBadgeParamsHayır

Yanıt

Döndürür: Option[APICreateUserBadgeResponse]

Örnek

createUserBadge Örneği
Copy Copy
1
2let (response, httpResponse) = client.createUserBadge(
3 tenantId = "my-tenant-123",
4 createUserBadgeParams = CreateUserBadgeParams(
5 userId = "user-456",
6 badgeId = "top-commenter",
7 reason = "Top commenter for June 2026",
8 awardedBy = "mod-team",
9 metadata = @["news","engagement"]
10 )
11)
12if response.isSome:
13 let badgeResp = response.get()
14 discard badgeResp
15

deleteUserBadge Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[APIEmptySuccessResponse]

Örnek

deleteUserBadge Örneği
Copy Copy
1
2let tenantId = "my-tenant-123"
3let badgeId = "badge-456"
4
5let (response, httpResponse) = client.deleteUserBadge(tenantId = tenantId, id = badgeId)
6
7if response.isSome:
8 let success = response.get()
9 echo "Badge deleted successfully for tenant: ", tenantId, " id: ", badgeId
10else:
11 echo "Failed to delete badge. HTTP status: ", $httpResponse.status
12

getUserBadge Internal Link


Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Döndürür: Option[APIGetUserBadgeResponse]

Örnek

getUserBadge Örneği
Copy Copy
1
2let (response, httpResponse) = client.getUserBadge(tenantId = "my-tenant-123", id = "badge-9876")
3if response.isSome:
4 let badge = response.get()
5 echo "Fetched badge:"
6 echo badge
7else:
8 echo "No badge found"
9 echo httpResponse
10

getUserBadges Internal Link

Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
userIdstringHayır
badgeIdstringHayır
displayedOnCommentsboolHayır
limitfloat64Hayır
skipfloat64Hayır

Yanıt

Döndürür: Option[APIGetUserBadgesResponse]

Örnek

getUserBadges Örneği
Copy Copy
1
2let (response, httpResponse) = client.getUserBadges(
3 tenantId = "my-tenant-123",
4 userId = "user-9876",
5 badgeId = "top-commenter",
6 displayedOnComments = true,
7 limit = 20.0,
8 skip = 0.0
9)
10
11if response.isSome:
12 let badges = response.get()
13 echo "Badges response:", badges
14else:
15 echo "No badges found (HTTP status: ", httpResponse.status, ")"
16

updateUserBadge Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
updateUserBadgeParamsUpdateUserBadgeParamsHayır

Yanıt

Döndürür: Option[APIEmptySuccessResponse]

Örnek

updateUserBadge Örneği
Copy Copy
1
2let (response, httpResponse) = client.updateUserBadge(
3 tenantId = "my-tenant-123",
4 id = "user-456",
5 updateUserBadgeParams = UpdateUserBadgeParams()
6)
7
8if response.isSome:
9 let success = response.get()
10 echo "Badge updated successfully"
11else:
12 echo "Badge update failed"
13

getUserNotificationCount Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
ssostringHayır

Yanıt

Döndürür: Option[GetUserNotificationCountResponse]

Örnek

getUserNotificationCount Örneği
Copy Copy
1
2let (response, httpResponse) = client.getUserNotificationCount(tenantId = "news-tenant-123", sso = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ1c2VyLTI0NyIsImlhdCI6MTYw945600fQ.sflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c")
3if response.isSome:
4 let countResp = response.get()
5 echo "Received user notification count response: ", countResp
6else:
7 echo "No notification count returned"
8

getUserNotifications Internal Link


Parametreler

AdTypeGerekliAçıklama
tenantIdstringEvet
urlIdstringEvet
pageSizeintHayır
afterIdstringHayır
includeContextboolHayır
afterCreatedAtint64Hayır
unreadOnlyboolHayır
dmOnlyboolHayır
noDmboolHayır
includeTranslationsboolHayır
includeTenantNotificationsboolHayır
ssostringHayır

Yanıt

Döndürür: Option[GetMyNotificationsResponse]

Örnek

getUserNotifications Örneği
Copy Copy
1
2let (response, httpResponse) = client.getUserNotifications(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 pageSize = 0,
6 afterId = "",
7 includeContext = false,
8 afterCreatedAt = 0,
9 unreadOnly = false,
10 dmOnly = false,
11 noDm = false,
12 includeTranslations = false,
13 includeTenantNotifications = false,
14 sso = ""
15)
16
17if response.isSome:
18 let notifications = response.get()
19 echo notifications
20

resetUserNotificationCount Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
ssostringHayır

Yanıt

Döndürür: Option[ResetUserNotificationsResponse]

Örnek

resetUserNotificationCount Örneği
Copy Copy
1
2let (response, httpResponse) = client.resetUserNotificationCount(tenantId = "my-tenant-123", sso = "user-sso-token-456")
3if response.isSome:
4 let result = response.get()
5 echo "ResetUserNotificationsResponse:", result
6else:
7 echo "Reset failed, HTTP response:", httpResponse
8

resetUserNotifications Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
afterIdstringHayır
afterCreatedAtint64Hayır
unreadOnlyboolHayır
dmOnlyboolHayır
noDmboolHayır
ssostringHayır

Yanıt

Döndürür: Option[ResetUserNotificationsResponse]

Örnek

resetUserNotifications Örneği
Copy Copy
1
2let (response, httpResponse) = client.resetUserNotifications(
3 tenantId = "my-tenant-123",
4 afterId = "",
5 afterCreatedAt = 0'i64,
6 unreadOnly = false,
7 dmOnly = false,
8 noDm = false,
9 sso = ""
10)
11if response.isSome:
12 let resetResp = response.get()
13 echo "ResetUserNotificationsResponse received"
14else:
15 echo "No ResetUserNotificationsResponse"
16

updateUserNotificationCommentSubscriptionStatus Internal Link

Belirli bir yorum için bildirimleri etkinleştirir veya devre dışı bırakır.

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
notificationIdstringHayır
optedInOrOutstringHayır
commentIdstringEvet
ssostringHayır

Yanıt

Döndürür: Option[UpdateUserNotificationCommentSubscriptionStatusResponse]

Örnek

updateUserNotificationCommentSubscriptionStatus Örneği
Copy Copy
1
2let (response, httpResponse) = client.updateUserNotificationCommentSubscriptionStatus(
3 tenantId = "my-tenant-123",
4 notificationId = "",
5 optedInOrOut = "",
6 commentId = "cmt-789",
7 sso = ""
8)
9
10if response.isSome:
11 let updateResp = response.get()
12 echo "Subscription update response: ", updateResp
13

updateUserNotificationPageSubscriptionStatus Internal Link

Bir sayfa için bildirimleri etkinleştirir veya devre dışı bırakır. Kullanıcılar bir sayfaya abone olduğunda, yeni kök yorumlar için bildirimler oluşturulur ve ayrıca

Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
urlIdstringEvet
urlstringHayır
pageTitlestringHayır
subscribedOrUnsubscribedstringHayır
ssostringHayır

Yanıt

Döndürür: Option[UpdateUserNotificationPageSubscriptionStatusResponse]

Örnek

updateUserNotificationPageSubscriptionStatus Örneği
Copy Copy
1
2let (response, httpResponse) = client.updateUserNotificationPageSubscriptionStatus(
3 tenantId = "my-tenant-123",
4 urlId = "news/economy/market-rally-2026-06-19",
5 url = "",
6 pageTitle = "",
7 subscribedOrUnsubscribed = "",
8 sso = ""
9)
10
11if response.isSome:
12 let updateResp = response.get()
13 echo "Subscription update received: ", updateResp
14else:
15 echo "No subscription update returned."
16

updateUserNotificationStatus Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
notificationIdstringHayır
newStatusstringHayır
ssostringHayır

Yanıt

Döndürür: Option[UpdateUserNotificationStatusResponse]

Örnek

updateUserNotificationStatus Örneği
Copy Copy
1
2let (response, httpResponse) = client.updateUserNotificationStatus(
3 tenantId = "my-tenant-123",
4 notificationId = "notif-456",
5 newStatus = "read",
6 sso = "sso-token-abc123"
7)
8if response.isSome:
9 let updated = response.get()
10 echo "Notification status updated successfully"
11else:
12 echo "No update response received"
13

getUserPresenceStatuses Internal Link

Parametreler

AdıTürGerekliAçıklama
tenantIdstringEvet
urlIdWSstringHayır
userIdsstringHayır

Yanıt

Döndürür: Option[GetUserPresenceStatusesResponse]

Örnek

getUserPresenceStatuses Örneği
Copy Copy
1
2let (response, httpResponse) = client.getUserPresenceStatuses(tenantId = "my-tenant-123", urlIdWS = "news/article-title", userIds = "user-123,user-456")
3if response.isSome:
4 let presenceStatuses = response.get()
5 echo presenceStatuses
6else:
7 echo "No presence data"
8

searchUsers Internal Link

Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
urlIdstringEvet
usernameStartsWithstringHayır
mentionGroupIdsseq[string]Hayır
ssostringHayır
searchSectionstringHayır

Yanıt

Döndürür: Option[SearchUsersResult]

Örnek

searchUsers Örneği
Copy Copy
1
2let (response, httpResponse) = client.searchUsers(
3 tenantId = "my-tenant-123",
4 urlId = "news/top-story",
5 usernameStartsWith = "",
6 mentionGroupIds = @[],
7 sso = "",
8 searchSection = ""
9)
10
11if response.isSome:
12 let searchResult = response.get()
13 echo "SearchUsersResult:", searchResult
14else:
15 echo "No result or error. HTTP response:", httpResponse
16

getUser Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır

Yanıt

Dönüş değeri: Option[GetUserResponse]

Örnek

getUser Örneği
Copy Copy
1
2let (response, httpResponse) = client.getUser(tenantId = "my-tenant-123", id = "user-456")
3if response.isSome:
4 let user = response.get()
5 echo user
6else:
7 echo "User not found"
8

createVote Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
commentIdstringEvet
directionstringHayır
userIdstringHayır
anonUserIdstringHayır

Yanıt

Döndürür: Option[VoteResponse]

Örnek

createVote Örneği
Copy Copy
1
2let (response, httpResponse) = client.createVote(
3 tenantId = "my-tenant-123",
4 commentId = "cmt-987654",
5 direction = "up",
6 userId = "user-42",
7 anonUserId = ""
8)
9if response.isSome:
10 let vote = response.get()
11 echo "Vote created:", vote
12else:
13 echo "No vote returned"
14

deleteVote Internal Link


Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
idstringHayır
editKeystringHayır

Yanıt

Döndürür: Option[VoteDeleteResponse]

Örnek

deleteVote Örneği
Copy Copy
1
2let (response, httpResponse) = client.deleteVote(tenantId = "my-tenant-123", id = "vote-7f3b2a", editKey = "")
3if response.isSome:
4 let voteDelete = response.get()
5 echo "Vote deleted successfully"
6else:
7 echo "Failed to delete vote"
8

getVotes Internal Link

Parametreler

AdTürGerekliAçıklama
tenantIdstringEvet
urlIdstringEvet

Yanıt

Döndürür: Option[GetVotesResponse]

Örnek

getVotes Örneği
Copy Copy
1
2let (response, httpResponse) = client.getVotes(tenantId = "my-tenant-123", urlId = "news/breaking-article-456")
3if response.isSome:
4 let votesResp = response.get()
5 echo "Received votes response:", $votesResp
6else:
7 echo "No votes returned, HTTP response:", $httpResponse
8

getVotesForUser Internal Link

Parametreler

NameTypeRequiredDescription
tenantIdstringEvet
urlIdstringEvet
userIdstringHayır
anonUserIdstringHayır

Yanıt

Döndürür: Option[GetVotesForUserResponse]

Örnek

getVotesForUser Örneği
Copy Copy
1
2let (response, httpResponse) = client.getVotesForUser(
3 tenantId = "my-tenant-123",
4 urlId = "news/article-title",
5 userId = "user-789",
6 anonUserId = ""
7)
8if response.isSome:
9 let votes = response.get()
10 echo "User votes retrieved"
11else:
12 echo "No votes found"
13

Yardıma mı ihtiyacınız var?

Nim SDK ile ilgili herhangi bir sorunla karşılaşırsanız veya sorularınız varsa lütfen:

Katkıda Bulunma

Katkılar memnuniyetle karşılanır! Katkı yönergeleri için lütfen GitHub deposunu ziyaret edin.