FastComments.com

FastComments Rust SDK


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

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

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

Погледајте на GitHub


Инсталација Internal Link

cargo add fastcomments-sdk

SDK zahtijeva Rust 2021. izdanje ili noviju verziju.

Садржај библиотеке Internal Link

The FastComments Rust SDK se sastoji od nekoliko modula:

  • Client Module - Automatski generisan API klijent za FastComments REST API-je

    • Kompletne definicije tipova za sve API modele
    • I autentifikovani (DefaultApi) i javni (PublicApi) krajnji tačke
    • Potpuna podrška za async/await uz tokio
    • Pogledajte client/README.md za detaljnu API dokumentaciju
  • SSO Module - Alati za Single Sign-On (SSO) na serverskoj strani

    • Sigurno generisanje tokena za autentifikaciju korisnika
    • Podrška za jednostavne i sigurne SSO režime
    • Potpisivanje tokena zasnovano na HMAC-SHA256
  • Core Types - Zajedničke definicije tipova i alati

    • Modeli komentara i strukture metapodataka
    • Konfiguracije korisnika i tenant-a
    • Pomoćne funkcije za uobičajene operacije

Брзи почетак Internal Link

Korištenje javnog API-ja

use fastcomments_sdk::client::apis::configuration::Configuration;
use fastcomments_sdk::client::apis::public_api;

#[tokio::main]
async fn main() {
    // Kreiraj konfiguraciju API-ja
    let config = Configuration::new();

    // Dohvati komentare za stranicu
    let result = public_api::get_comments_public(
        &config,
        public_api::GetCommentsPublicParams {
            tenant_id: "your-tenant-id".to_string(),
            urlid: Some("page-url-id".to_string()),
            url: None,
            count_only: None,
            skip: None,
            limit: None,
            sort_dir: None,
            page: None,
            sso_hash: None,
            simple_sso_hash: None,
            has_no_comment: None,
            has_comment: None,
            comment_id_filter: None,
            child_ids: None,
            start_date_time: None,
            starts_with: None,
        },
    )
    .await;

    match result {
        Ok(response) => {
            println!("Found {} comments", response.comments.len());
            for comment in response.comments {
                println!("Comment: {:?}", comment);
            }
        }
        Err(e) => eprintln!("Error fetching comments: {:?}", e),
    }
}

Korištenje autentificiranog API-ja

use fastcomments_sdk::client::apis::configuration::{ApiKey, Configuration};
use fastcomments_sdk::client::apis::default_api;

#[tokio::main]
async fn main() {
    // Kreiraj konfiguraciju sa API ključem
    let mut config = Configuration::new();
    config.api_key = Some(ApiKey {
        prefix: None,
        key: "your-api-key".to_string(),
    });

    // Dohvati komentare koristeći autentificirani API
    let result = default_api::get_comments(
        &config,
        default_api::GetCommentsParams {
            tenant_id: "your-tenant-id".to_string(),
            skip: None,
            limit: None,
            sort_dir: None,
            urlid: Some("page-url-id".to_string()),
            url: None,
            is_spam: None,
            user_id: None,
            all_comments: None,
            for_moderation: None,
            parent_id: None,
            is_flagged: None,
            is_flagged_tag: None,
            is_by_verified: None,
            is_pinned: None,
            asc: None,
            include_imported: None,
            origin: None,
            tags: None,
        },
    )
    .await;

    match result {
        Ok(response) => {
            println!("Total comments: {}", response.count);
            for comment in response.comments {
                println!("Comment ID: {}, Text: {}", comment.id, comment.comment);
            }
        }
        Err(e) => eprintln!("Error: {:?}", e),
    }
}

Korištenje SSO za autentifikaciju

use fastcomments_sdk::sso::{
    fastcomments_sso::FastCommentsSSO,
    secure_sso_user_data::SecureSSOUserData,
};

fn main() {
    let api_key = "your-api-key".to_string();

    // Kreiraj sigurne SSO podatke korisnika (samo na serverskoj strani!)
    let user_data = SecureSSOUserData::new(
        "user-123".to_string(),           // ID korisnika
        "user@example.com".to_string(),   // E-pošta
        "John Doe".to_string(),            // Korisničko ime
        "https://example.com/avatar.jpg".to_string(), // URL avatara
    );

    // Generiši SSO token
    let sso = FastCommentsSSO::new_secure(api_key, &user_data).unwrap();
    let token = sso.create_token().unwrap();

    println!("SSO Token: {}", token);
    // Proslijedi ovaj token svom frontendu za autentifikaciju
}

Чести проблеми Internal Link

401 Unauthorized Errors

If you're getting 401 errors when using the authenticated API:

  1. Check your API key: Ensure you're using the correct API key from your FastComments dashboard
  2. Verify the tenant ID: Make sure the tenant ID matches your account
  3. API key format: The API key should be passed in the Configuration:
let mut config = Configuration::new();
config.api_key = Some(ApiKey {
    prefix: None,
    key: "YOUR_API_KEY".to_string(),
});

SSO Token Issues

If SSO tokens aren't working:

  1. Use secure mode for production: Always use FastCommentsSSO::new_secure() with your API key for production
  2. Server-side only: Generate SSO tokens on your server, never expose your API key to clients
  3. Check user data: Ensure all required fields (id, email, username) are provided

Async Runtime Errors

The SDK uses tokio for async operations. Make sure to:

  1. Add tokio to your dependencies:
[dependencies]
tokio = { version = "1", features = ["full"] }
  1. Use the tokio runtime:
#[tokio::main]
async fn main() {
    // Ваш асинхрони код овдје
}

Напомене Internal Link

Идентификатори емитовања

Видећете да треба да проследите broadcastId у појединим API позивима. Када примите догађаје, добићете овај ID назад, па ћете знати да игноришете догађај ако планирате оптимистички применити измене на клијенту (што ћете вероватно желети да урадите јер пружа најбоље корисничко искуство). Овде проследите UUID. ID би требало да буде довољно јединствен да се не појави два пута у једној сесији прегледача.

Агрегација Internal Link

Grupira dokumente primjenom grupisanja (ako je groupBy naveden) i izvođenjem više operacija. Podržane su različite operacije (npr. sum, countDistinct, avg, itd.).

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
aggregation_requestmodels::AggregationRequestDa
parent_tenant_idStringNe
include_statsboolNe

Odgovor

Vraća: AggregationResponse


Добиј дневнике ревизије Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
limitf64Ne
skipf64Ne
ordermodels::SortDirNe
afterf64Ne
beforef64Ne

Odgovor

Vraća: GetAuditLogs200Response

Primjer

get_audit_logs Primjer
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: GetAuditLogsParams = GetAuditLogsParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 limit: Some(100.0),
6 skip: Some(0.0),
7 order: Some(models::SortDir::Desc),
8 after: Some(1672531200.0),
9 before: Some(1675209600.0),
10 };
11 let response: GetAuditLogs200Response = get_audit_logs(&configuration, params).await?;
12 Ok(())
13}
14

Блокирај преко јавног коментара Internal Link

Параметри

NameTypeRequiredDescription
tenant_idStringДа
comment_idStringДа
public_block_from_comment_paramsmodels::PublicBlockFromCommentParamsДа
ssoStringНе

Одговор

Враћа: BlockFromCommentPublic200Response

Пример

block_from_comment_public Пример
Copy Copy
1
2pub async fn run_block_example() -> Result<(), Error> {
3 let params: BlockFromCommentPublicParams = BlockFromCommentPublicParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 comment_id: "news/article/2026-03-25-12345".to_string(),
6 public_block_from_comment_params: models::PublicBlockFromCommentParams {
7 reason: "Repeated promotional links".to_string(),
8 reporter_id: Some("reader-2048".to_string()),
9 permanent: Some(false),
10 },
11 sso: Some("sso:user:acme:2048".to_string()),
12 };
13 let response: BlockFromCommentPublic200Response = block_from_comment_public(&configuration, params).await?;
14 println!("{:#?}", response);
15 Ok(())
16}
17

Уклони блокаду јавног коментара Internal Link

Параметри

НазивТипПотребноОпис
tenant_idStringДа
comment_idStringДа
public_block_from_comment_paramsmodels::PublicBlockFromCommentParamsДа
ssoStringНе

Одговор

Враћа: UnBlockCommentPublic200Response

Примјер

un_block_comment_public Примјер
Copy Copy
1
2async fn run() -> Result<UnBlockCommentPublic200Response, Error> {
3 let params: UnBlockCommentPublicParams = UnBlockCommentPublicParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 comment_id: "news/article/2026-03-25/comment-98765".to_string(),
6 public_block_from_comment_params: models::PublicBlockFromCommentParams {
7 unblocked_by: "moderator@acme.com".to_string(),
8 reason: "Reviewed and determined not to be spam".to_string(),
9 },
10 sso: Some("sso-session-token-abc123".to_string()),
11 };
12 let response: UnBlockCommentPublic200Response = un_block_comment_public(&configuration, params).await?;
13 Ok(response)
14}
15

Провјера блокираних коментара Internal Link

Параметри

НазивТипОбавезноОпис
tenant_idStringДа
comment_idsStringДа
ssoStringНе

Одговор

Враћа: CheckedCommentsForBlocked200Response

Примјер

checked_comments_for_blocked Примјер
Copy Copy
1
2async fn run_checked_comments() -> Result<CheckedCommentsForBlocked200Response, Error> {
3 let params: CheckedCommentsForBlockedParams = CheckedCommentsForBlockedParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 comment_ids: "article-98765:12345,article-98765:67890".to_string(),
6 sso: Some("sso-uid-4821".to_string()),
7 };
8 let response: CheckedCommentsForBlocked200Response = checked_comments_for_blocked(&configuration, params).await?;
9 Ok(response)
10}
11

Блокирај корисника преко коментара Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
idStringДа
block_from_comment_paramsmodels::BlockFromCommentParamsДа
user_idStringНе
anon_user_idStringНе

Одговор

Враћа: BlockFromCommentPublic200Response

Пример

Пример block_user_from_comment
Copy Copy
1
2async fn example() -> Result<(), Error> {
3 let params: BlockUserFromCommentParams = BlockUserFromCommentParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "news/article-2026-03-25/comment-842".to_string(),
6 block_from_comment_params: models::BlockFromCommentParams {
7 reason: Some("Repeated promotional links".to_string()),
8 duration_minutes: Some(7_200),
9 notify_user: Some(true),
10 },
11 user_id: Some("user-9812".to_string()),
12 anon_user_id: None,
13 };
14 let response: BlockFromCommentPublic200Response = block_user_from_comment(&configuration, params).await?;
15 Ok(())
16}
17

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

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
url_idStringДа
broadcast_idStringДа
comment_datamodels::CommentDataДа
session_idStringНе
ssoStringНе

Одговор

Враћа: CreateCommentPublic200Response

Пример

create_comment_public Пример
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: CreateCommentPublicParams = CreateCommentPublicParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 url_id: "news/politics/2026-election-coverage".to_string(),
6 broadcast_id: "live-coverage-2026-03-25".to_string(),
7 comment_data: models::CommentData {
8 content: "Insightful piece — appreciate the depth of reporting.".to_string(),
9 author_name: Some("Jane Doe".to_string()),
10 author_email: Some("jane.doe@acme.com".to_string()),
11 is_anonymous: Some(false),
12 parent_id: None,
13 metadata: None,
14 },
15 session_id: Some("sess_6f7e8d9c".to_string()),
16 sso: Some("sso_jwt_eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9".to_string()),
17 };
18 let resp: CreateCommentPublic200Response = create_comment_public(&configuration, params).await?;
19 Ok(())
20}
21

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

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
idStringДа
context_user_idStringНе
is_liveboolНе

Одговор

Враћа: DeleteComment200Response

Пример

delete_comment Пример
Copy Copy
1
2async fn run_delete_comment() -> Result<DeleteComment200Response, Error> {
3 let params: DeleteCommentParams = DeleteCommentParams {
4 tenant_id: "acme-newsroom".to_string(),
5 id: "news/article-2026/comments/abc123".to_string(),
6 context_user_id: Some("user-789".to_string()),
7 is_live: Some(true),
8 };
9 let response: DeleteComment200Response = delete_comment(&configuration, params).await?;
10 Ok(response)
11}
12

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

Параметри

НазивТипОбавезноОпис
tenant_idStringДа
comment_idStringДа
broadcast_idStringДа
edit_keyStringНе
ssoStringНе

Одговор

Враћа: DeleteCommentPublic200Response

Примјер

delete_comment_public Примјер
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: DeleteCommentPublicParams = DeleteCommentPublicParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 comment_id: String::from("news/article/2026/03/interesting-story#cmt-67890"),
6 broadcast_id: String::from("news-article-12345"),
7 edit_key: Some(String::from("editkey-3f2b9a")),
8 sso: Some(String::from("sso-jwt-eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9")),
9 };
10 let response: DeleteCommentPublic200Response = delete_comment_public(&configuration, params).await?;
11 Ok(())
12}
13

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

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
comment_idStringDa
vote_idStringDa
url_idStringDa
broadcast_idStringDa
edit_keyStringNe
ssoStringNe

Odgovor

Vraća: DeleteCommentVote200Response

Primjer

Primjer delete_comment_vote
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: DeleteCommentVoteParams = DeleteCommentVoteParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 comment_id: "cmt-12345".to_string(),
6 vote_id: "vote-67890".to_string(),
7 url_id: "news/world/article-2026".to_string(),
8 broadcast_id: "broadcast-1".to_string(),
9 edit_key: Some("editkey-abc123".to_string()),
10 sso: Some("sso-token-xyz".to_string()),
11 };
12 let response: DeleteCommentVote200Response = delete_comment_vote(&configuration, params).await?;
13 Ok(())
14}
15

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

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
idStringДа
user_idStringНе
anon_user_idStringНе

Одговор

Враћа: FlagComment200Response

Пример

flag_comment Пример
Copy Copy
1
2async fn run() -> Result<FlagComment200Response, Error> {
3 let params: FlagCommentParams = FlagCommentParams {
4 tenant_id: "acme-news-tenant".to_string(),
5 id: "comment-20260325-842".to_string(),
6 user_id: Some("user-7b2f3d".to_string()),
7 anon_user_id: Some("anon-1a2b3c".to_string()),
8 };
9 let resp: FlagComment200Response = flag_comment(&configuration, params).await?;
10 Ok(resp)
11}
12

Добиј коментар Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
idStringДа

Одговор

Враћа: GetComment200Response

Пример

get_comment Пример
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: GetCommentParams = GetCommentParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "news/article-12345/comment-6789".to_string(),
6 };
7 let _response: GetComment200Response = get_comment(&configuration, params).await?;
8 Ok(())
9}
10

Добиј текст коментара Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
comment_idStringDa
edit_keyStringNe
ssoStringNe

Odgovor

Vraća: GetCommentText200Response

Primjer

get_comment_text Primjer
Copy Copy
1
2pub async fn run() -> Result<GetCommentText200Response, Error> {
3 let params: GetCommentTextParams = GetCommentTextParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 comment_id: "news/article-2026-03-25-98765".to_string(),
6 edit_key: Some("edit_4f3d2b9a".to_string()),
7 sso: Some("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9".to_string()),
8 };
9 let comment: GetCommentText200Response = get_comment_text(&configuration, params).await?;
10 Ok(comment)
11}
12

Добиј имена корисника који су гласали за коментар Internal Link

Parametri

ImeTipObaveznoOpis
tenant_idStringDa
comment_idStringDa
diri32Da
ssoStringNe

Odgovor

Vraća: GetCommentVoteUserNames200Response

Primjer

Primjer get_comment_vote_user_names
Copy Copy
1
2async fn fetch_vote_user_names() -> Result<GetCommentVoteUserNames200Response, Error> {
3 let params: GetCommentVoteUserNamesParams = GetCommentVoteUserNamesParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 comment_id: String::from("news/article-12345/comment-6789"),
6 dir: 1,
7 sso: Some(String::from("sso-token-01a2b3")),
8 };
9 let response: GetCommentVoteUserNames200Response =
10 get_comment_vote_user_names(&configuration, params).await?;
11 Ok(response)
12}
13

Добиј коментаре Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
pagei32Не
limiti32Не
skipi32Не
as_treeboolНе
skip_childreni32Не
limit_childreni32Не
max_tree_depthi32Не
url_idStringНе
user_idStringНе
anon_user_idStringНе
context_user_idStringНе
hash_tagStringНе
parent_idStringНе
directionmodels::SortDirectionsНе

Одговор

Враћа: GetComments200Response

Пример

get_comments Пример
Copy Copy
1
2async fn run_get_comments() -> Result<(), Error> {
3 let params: GetCommentsParams = GetCommentsParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 page: Some(1),
6 limit: Some(25),
7 skip: Some(0),
8 as_tree: Some(true),
9 skip_children: Some(0),
10 limit_children: Some(5),
11 max_tree_depth: Some(3),
12 url_id: Some("news/article/technology/ai-ethics".to_string()),
13 user_id: Some("user_98765".to_string()),
14 anon_user_id: Some("anon_abc123".to_string()),
15 context_user_id: Some("moderator_12".to_string()),
16 hash_tag: Some("aiethics".to_string()),
17 parent_id: Some("comment_456".to_string()),
18 direction: None,
19 };
20 let comments: GetComments200Response = get_comments(&configuration, params).await?;
21 Ok(())
22}
23

Добиј јавне коментаре Internal Link

req tenantId urlId

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
url_idStringDa
pagei32Ne
directionmodels::SortDirectionsNe
ssoStringNe
skipi32Ne
skip_childreni32Ne
limiti32Ne
limit_childreni32Ne
count_childrenboolNe
fetch_page_for_comment_idStringNe
include_configboolNe
count_allboolNe
includei10nboolNe
localeStringNe
modulesStringNe
is_crawlerboolNe
include_notification_countboolNe
as_treeboolNe
max_tree_depthi32Ne
use_full_translation_idsboolNe
parent_idStringNe
search_textStringNe
hash_tagsVecNe
user_idStringNe
custom_config_strStringNe
after_comment_idStringNe
before_comment_idStringNe

Odgovor

Vraća: GetCommentsPublic200Response

Primjer

get_comments_public Primjer
Copy Copy
1
2async fn run() -> Result<GetCommentsPublic200Response, Error> {
3 let params: GetCommentsPublicParams = GetCommentsPublicParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 url_id: "news/article/2026/03/25/top-story".to_string(),
6 page: Some(1), direction: Some(models::SortDirections::Desc),
7 sso: None, skip: Some(0), skip_children: Some(0),
8 limit: Some(50), limit_children: Some(10), count_children: Some(true),
9 fetch_page_for_comment_id: None, include_config: Some(true), count_all: Some(false),
10 includei10n: Some(false), locale: Some("en-US".to_string()), modules: None,
11 is_crawler: Some(false), include_notification_count: Some(false), as_tree: Some(true),
12 max_tree_depth: Some(3), use_full_translation_ids: Some(false), parent_id: None,
13 search_text: Some("climate policy debate".to_string()), hash_tags: Some(vec!["breaking".to_string(), "policy".to_string()]),
14 user_id: None, custom_config_str: None, after_comment_id: None, before_comment_id: None,
15 };
16 let response: GetCommentsPublic200Response = get_comments_public(configuration, params).await?;
17 Ok(response)
18}
19

Закључај коментар Internal Link

Parametri

ImeTipObaveznoOpis
tenant_idStringDa
comment_idStringDa
broadcast_idStringDa
ssoStringNe

Odgovor

Vraća: LockComment200Response

Primjer

Primjer lock_comment
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: LockCommentParams = LockCommentParams {
4 tenant_id: String::from("acme-news-tenant"),
5 comment_id: String::from("cmt-20260325-789"),
6 broadcast_id: String::from("live/politics-debate-2026-03-25"),
7 sso: Some(String::from("sso-user-0a1b2c3d4e")),
8 };
9 let response: LockComment200Response = lock_comment(&configuration, params).await?;
10 Ok(())
11}
12

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

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
comment_idStringDa
broadcast_idStringDa
ssoStringNe

Odgovor

Vraća: PinComment200Response

Primjer

pin_comment Primjer
Copy Copy
1
2let params: PinCommentParams = PinCommentParams {
3 tenant_id: "acme-corp-tenant".to_string(),
4 comment_id: "cmt-987654321".to_string(),
5 broadcast_id: "news/article/2026-03-25".to_string(),
6 sso: Some("user-12345-ssotoken".to_string()),
7};
8let response: PinComment200Response = pin_comment(&configuration, params).await?;
9

Сачувај коментар Internal Link

Параметри

НазивТипОбавезноОпис
tenant_idStringДа
create_comment_paramsmodels::CreateCommentParamsДа
is_liveboolНе
do_spam_checkboolНе
send_emailsboolНе
populate_notificationsboolНе

Одговор

Враћа: SaveComment200Response

Пример

Пример save_comment
Copy Copy
1
2let create_comment: models::CreateCommentParams = models::CreateCommentParams {
3 thread_key: "news/article/2026/03/25/budget-reform".to_string(),
4 body: "Great breakdown of the proposed changes — very informative and balanced.".to_string(),
5 user_name: Some("Jane Doe".to_string()),
6 user_email: Some("jane.doe@acme-corp.com".to_string()),
7 user_id: Some("user-9876".to_string()),
8 parent_id: None,
9};
10
11let save_params: SaveCommentParams = SaveCommentParams {
12 tenant_id: "acme-corp-tenant".to_string(),
13 create_comment_params: create_comment,
14 is_live: Some(true),
15 do_spam_check: Some(true),
16 send_emails: Some(false),
17 populate_notifications: Some(true),
18};
19
20let saved: SaveComment200Response = save_comment(&configuration, save_params).await?;
21

Сачувај више коментара Internal Link

Параметри

НазивТипОбавезноОпис
tenant_idStringYes
create_comment_paramsVecmodels::CreateCommentParamsYes
is_liveboolNo
do_spam_checkboolNo
send_emailsboolNo
populate_notificationsboolNo

Одговор

Враћа: Vec<models::SaveComment200Response>

Примјер

save_comments_bulk Примјер
Copy Copy
1
2let params: SaveCommentsBulkParams = SaveCommentsBulkParams {
3 tenant_id: "acme-corp-tenant".to_string(),
4 create_comment_params: vec![
5 models::CreateCommentParams {
6 thread_id: "news/article-2026-election".to_string(),
7 text: "Insightful reporting — thanks for the coverage!".to_string(),
8 author_name: "Jane Doe".to_string(),
9 author_email: "jane.doe@example.com".to_string(),
10 },
11 models::CreateCommentParams {
12 thread_id: "news/article-2026-election".to_string(),
13 text: "I disagree with the premise of this piece.".to_string(),
14 author_name: "John Smith".to_string(),
15 author_email: "john.smith@example.org".to_string(),
16 },
17 ],
18 is_live: Some(true),
19 do_spam_check: Some(true),
20 send_emails: Some(false),
21 populate_notifications: Some(true),
22};
23let saved: Vec<models::SaveComment200Response> = save_comments_bulk(&configuration, params).await?;
24

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

Параметри

НазивТипОбавезноОпис
tenant_idStringДа
comment_idStringДа
broadcast_idStringДа
comment_text_update_requestmodels::CommentTextUpdateRequestДа
edit_keyStringНе
ssoStringНе

Одговор

Враћа: SetCommentText200Response

Пример

set_comment_text Пример
Copy Copy
1
2async fn update_comment_text() -> Result<(), Error> {
3 let params: SetCommentTextParams = SetCommentTextParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 comment_id: "news/article/2026-03-25/comment-6789".to_string(),
6 broadcast_id: "comments-broadcast-main".to_string(),
7 comment_text_update_request: models::CommentTextUpdateRequest {
8 text: "Updated comment: thank you @jane_doe — here's an update about #rustlang".to_string(),
9 ..Default::default()
10 },
11 edit_key: Some("editkey-9f8e7d6c".to_string()),
12 sso: Some("sso-token-abc123".to_string()),
13 };
14 let result: SetCommentText200Response = set_comment_text(configuration, params).await?;
15 println!("set_comment_text result: {:?}", result);
16 Ok(())
17}
18

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

Параметри

NameTypeRequiredDescription
tenant_idStringДа
idStringДа
un_block_from_comment_paramsmodels::UnBlockFromCommentParamsДа
user_idStringНе
anon_user_idStringНе

Одговор

Враћа: UnBlockCommentPublic200Response

Пример

un_block_user_from_comment Пример
Copy Copy
1
2async fn run_unblock() -> Result<UnBlockCommentPublic200Response, Error> {
3 let unblock_body: models::UnBlockFromCommentParams = models::UnBlockFromCommentParams {
4 reason: Some(String::from("False positive - reviewed by moderator")),
5 moderator_id: Some(String::from("moderator-42")),
6 };
7 let params: UnBlockUserFromCommentParams = UnBlockUserFromCommentParams {
8 tenant_id: String::from("acme-corp-tenant"),
9 id: String::from("news/article/comments/abc123"),
10 un_block_from_comment_params: unblock_body,
11 user_id: Some(String::from("user-9876")),
12 anon_user_id: Some(String::from("anon-5f4d")),
13 };
14 let result: UnBlockCommentPublic200Response = un_block_user_from_comment(&configuration, params).await?;
15 Ok(result)
16}
17

Уклони ознаку са коментара Internal Link

Parametri

ImeTipObaveznoOpis
tenant_idStringDa
idStringDa
user_idStringNe
anon_user_idStringNe

Odgovor

Vraća: FlagComment200Response

Primjer

Primjer un_flag_comment
Copy Copy
1
2async fn example_unflag_comment() -> Result<FlagComment200Response, Error> {
3 let params = UnFlagCommentParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 id: String::from("news/article/comment-12345"),
6 user_id: Some(String::from("reader-987")),
7 anon_user_id: None,
8 };
9 let response: FlagComment200Response = un_flag_comment(&configuration, params).await?;
10 Ok(response)
11}
12

Откључај коментар Internal Link


Параметри

НазивТипОбавезноОпис
tenant_idStringДа
comment_idStringДа
broadcast_idStringДа
ssoStringНе

Одговор

Враћа: LockComment200Response

Пример

un_lock_comment Пример
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: UnLockCommentParams = UnLockCommentParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 comment_id: "cmt-987654321".to_string(),
6 broadcast_id: "news/world-update-2026-04-25".to_string(),
7 sso: Some("sso-token-abcdef123456".to_string()),
8 };
9 let response: LockComment200Response = un_lock_comment(&configuration, params).await?;
10 let _ = response;
11 Ok(())
12}
13

Уклони закачење коментара Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
comment_idStringDa
broadcast_idStringDa
ssoStringNe

Odgovor

Vraća: PinComment200Response

Primjer

Primjer un_pin_comment
Copy Copy
1
2async fn run_unpin() -> Result<(), Error> {
3 let params: UnPinCommentParams = UnPinCommentParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 comment_id: "cmt-20260325-7a9".to_string(),
6 broadcast_id: "news/homepage/launch-article".to_string(),
7 sso: Some("sso-jwt-user-0a1b2c3d".to_string()),
8 };
9 let response: PinComment200Response = un_pin_comment(&configuration, params).await?;
10 Ok(())
11}
12

Ажурирај коментар Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
idStringДа
updatable_comment_paramsmodels::UpdatableCommentParamsДа
context_user_idStringНе
do_spam_checkboolНе
is_liveboolНе

Одговор

Враћа: FlagCommentPublic200Response

Пример

update_comment Пример
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let tenant_id: String = "acme-corp-tenant".into();
4 let comment_id: String = "news/article/12345-6789".into();
5 let context_user_id: String = "reader-42".into();
6
7 let updatable: models::UpdatableCommentParams = models::UpdatableCommentParams {
8 body: Some("Updated comment: I appreciate the clarification on this report.".into()),
9 is_edited: Some(true),
10 tags: Some(vec!["clarification".into(), "follow-up".into()]),
11 };
12
13 let params: UpdateCommentParams = UpdateCommentParams {
14 tenant_id,
15 id: comment_id,
16 updatable_comment_params: updatable,
17 context_user_id: Some(context_user_id),
18 do_spam_check: Some(true),
19 is_live: Some(false),
20 };
21
22 let response: FlagCommentPublic200Response = update_comment(&configuration, params).await?;
23 Ok(())
24}
25

Гласај за коментар Internal Link

Параметри

НазивТипОбавезноОпис
tenant_idStringДа
comment_idStringДа
url_idStringДа
broadcast_idStringДа
vote_body_paramsmodels::VoteBodyParamsДа
session_idStringНе
ssoStringНе

Одговор

Враћа: VoteComment200Response

Примјер

vote_comment Примјер
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: VoteCommentParams = VoteCommentParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 comment_id: "cmt-12345".to_string(),
6 url_id: "news/politics/2026-election".to_string(),
7 broadcast_id: "broadcast-nytimes-001".to_string(),
8 vote_body_params: models::VoteBodyParams { ..Default::default() },
9 session_id: Some("sess-9f8e7d".to_string()),
10 sso: Some("user-42@example.com".to_string()),
11 };
12 let response: VoteComment200Response = vote_comment(&configuration, params).await?;
13 Ok(())
14}
15

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


Parametri

ImeTipObaveznoOpis
tenant_idStringDa
add_domain_config_paramsmodels::AddDomainConfigParamsDa

Odgovor

Vraća: AddDomainConfig200Response


Обриши конфигурацију домена Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
domainStringDa

Odgovor

Vraća: DeleteDomainConfig200Response


Добиј конфигурацију домена Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
domainStringДа

Одговор

Враћа: GetDomainConfig200Response


Добиј конфигурације домена Internal Link

Parametri

NameTypeRequiredDescription
tenant_idStringDa

Odgovor

Vraća: GetDomainConfigs200Response


Измјени конфигурацију домена (PATCH) Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
domain_to_updateStringDa
patch_domain_config_paramsmodels::PatchDomainConfigParamsDa

Odgovor

Vraća: GetDomainConfig200Response


Замјени конфигурацију домена (PUT) Internal Link

Parameters

ИмеТипОбавезноОпис
tenant_idStringДа
domain_to_updateStringДа
update_domain_config_paramsmodels::UpdateDomainConfigParamsДа

Одговор

Враћа: GetDomainConfig200Response


Креирај шаблон е-поште Internal Link


Parametri

NazivTipObaveznoOpis
tenant_idStringDa
create_email_template_bodymodels::CreateEmailTemplateBodyDa

Odgovor

Vraća: CreateEmailTemplate200Response

Primjer

Primjer create_email_template
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: CreateEmailTemplateParams = CreateEmailTemplateParams {
4 tenant_id: "acme-corp-tenant".into(),
5 create_email_template_body: models::CreateEmailTemplateBody {
6 name: "Article Comment Notification".into(),
7 subject: "New comment on your article".into(),
8 body_html: "<p>Hi \{{recipient_name}},</p><p>\{{comment_author}} left a comment on your article \"\{{article_title}}\".</p>".into(),
9 from_name: Some("Acme News".into()),
10 from_email: Some("notifications@acme.example".into()),
11 reply_to: Some("no-reply@acme.example".into()),
12 enabled: Some(true),
13 tags: Some(vec!["comments".into(), "notifications".into()]),
14 },
15 };
16 let response: CreateEmailTemplate200Response = create_email_template(configuration, params).await?;
17 Ok(())
18}
19

Обриши шаблон е-поште Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
idStringDa

Odgovor

Vraća: FlagCommentPublic200Response

Primjer

delete_email_template Primjer
Copy Copy
1
2async fn run_delete_template() -> Result<(), Error> {
3 let params: DeleteEmailTemplateParams = DeleteEmailTemplateParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "welcome-email-template".to_string(),
6 };
7 let confirm_deletion: Option<bool> = Some(true);
8 let response: FlagCommentPublic200Response = delete_email_template(&configuration, params).await?;
9 Ok(())
10}
11

Обриши грешку рендеровања шаблона е-поште Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
idStringДа
error_idStringДа

Одговор

Враћа: FlagCommentPublic200Response

Пример

delete_email_template_render_error Пример
Copy Copy
1
2let error_id_opt: Option<String> = Some("render-failure-9f3b".to_string());
3let params: DeleteEmailTemplateRenderErrorParams = DeleteEmailTemplateRenderErrorParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "welcome-email".to_string(),
6 error_id: error_id_opt.unwrap(),
7};
8let response: FlagCommentPublic200Response = delete_email_template_render_error(&configuration, params).await?;
9

Добиј шаблон е-поште Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
idStringDa

Odgovor

Vraća: GetEmailTemplate200Response

Primjer

get_email_template Primjer
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let tenant_id: String = "acme-corp-tenant".to_string();
4 let template_id: String = "welcome-new-subscriber".to_string();
5 let params: GetEmailTemplateParams = GetEmailTemplateParams {
6 tenant_id,
7 id: template_id,
8 locale: Some("en-US".to_string()),
9 };
10 let template: GetEmailTemplate200Response = get_email_template(&configuration, params).await?;
11 let _ = template;
12 Ok(())
13}
14

Добиј дефиниције шаблона е-поште Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa

Odgovor

Vraća: GetEmailTemplateDefinitions200Response

Primjer

get_email_template_definitions Primjer
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: GetEmailTemplateDefinitionsParams = GetEmailTemplateDefinitionsParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 locale: Some("en-US".to_string()),
6 include_inactive: Some(false),
7 };
8 let templates: GetEmailTemplateDefinitions200Response =
9 get_email_template_definitions(&configuration, params).await?;
10 Ok(())
11}
12

Добиј грешке рендеровања шаблона е-поште Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
idStringДа
skipf64Не

Одговор

Враћа: GetEmailTemplateRenderErrors200Response

Пример

Пример get_email_template_render_errors
Copy Copy
1
2async fn run_example() -> Result<(), Error> {
3 let params: GetEmailTemplateRenderErrorsParams = GetEmailTemplateRenderErrorsParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "welcome-email-template".to_string(),
6 skip: Some(10.0),
7 };
8 let response: GetEmailTemplateRenderErrors200Response =
9 get_email_template_render_errors(&configuration, params).await?;
10 Ok(())
11}
12

Добиј шаблоне е-поште Internal Link

Параметри

НазивТипОбавезноОпис
tenant_idStringДа
skipf64Не

Одговор

Враћа: GetEmailTemplates200Response

Пример

get_email_templates Пример
Copy Copy
1
2async fn fetch_email_templates() -> Result<GetEmailTemplates200Response, Error> {
3 let params: GetEmailTemplatesParams = GetEmailTemplatesParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 skip: Some(10.0),
6 };
7 let templates: GetEmailTemplates200Response = get_email_templates(&configuration, params).await?;
8 Ok(templates)
9}
10

Рендеруј шаблон е-поште Internal Link

Параметри

НазивТипОбавезноОпис
tenant_idStringДа
render_email_template_bodymodels::RenderEmailTemplateBodyДа
localeStringНе

Одговор

Враћа: RenderEmailTemplate200Response

Пример

Пример render_email_template
Copy Copy
1
2async fn example(configuration: &configuration::Configuration) -> Result<RenderEmailTemplate200Response, Error> {
3 let body = models::RenderEmailTemplateBody {
4 template_key: "welcome_email".to_string(),
5 subject: "Welcome to Acme News".to_string(),
6 from_address: "noreply@acme.com".to_string(),
7 placeholders: std::collections::HashMap::from([
8 ("user_name".to_string(), "Jane Doe".to_string()),
9 ("article_title".to_string(), "Breaking News: Rust Adoption Soars".to_string()),
10 ]),
11 };
12 let params = RenderEmailTemplateParams {
13 tenant_id: "acme-corp-tenant".to_string(),
14 render_email_template_body: body,
15 locale: Some("en-US".to_string()),
16 };
17 let rendered: RenderEmailTemplate200Response = render_email_template(configuration, params).await?;
18 Ok(rendered)
19}
20

Ажурирај шаблон е-поште Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
idStringДа
update_email_template_bodymodels::UpdateEmailTemplateBodyДа

Одговор

Враћа: FlagCommentPublic200Response

Пример

Пример update_email_template
Copy Copy
1
2async fn example_update_email_template() -> Result<FlagCommentPublic200Response, Error> {
3 let params: UpdateEmailTemplateParams = UpdateEmailTemplateParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "welcome-email-template".to_string(),
6 update_email_template_body: models::UpdateEmailTemplateBody {
7 subject: "Welcome to Acme News".to_string(),
8 html_body: "<h1>Welcome, \{{user_name}}</h1><p>Thanks for joining Acme.</p>".to_string(),
9 plain_body: Some("Welcome, \{{user_name}}!\nThanks for joining Acme.".to_string()),
10 enabled: Some(true),
11 from_name: Some("Acme Support <support@acme.com>".to_string()),
12 },
13 };
14 let response: FlagCommentPublic200Response = update_email_template(&configuration, params).await?;
15 Ok(response)
16}
17

Добиј дневник догађаја Internal Link

req tenantId urlId userIdWS

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
url_idStringDa
user_id_wsStringDa
start_timei64Da
end_timei64Da

Odgovor

Vraća: GetEventLog200Response

Primjer

get_event_log Primjer
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: GetEventLogParams = GetEventLogParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 url_id: "news/article-2023-01-01".to_string(),
6 user_id_ws: "user-12345-ws".to_string(),
7 start_time: 1672531200i64,
8 end_time: 1672617599i64,
9 include_details: Some(true),
10 };
11 let response: GetEventLog200Response = get_event_log(&configuration, params).await?;
12 Ok(())
13}
14

Добиј глобални дневник догађаја Internal Link

req tenantId urlId userIdWS

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
url_idStringDa
user_id_wsStringDa
start_timei64Da
end_timei64Da

Odgovor

Vraća: GetEventLog200Response

Primjer

get_global_event_log Primjer
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let include_deleted: Option<bool> = Some(false);
4 let params: GetGlobalEventLogParams = GetGlobalEventLogParams {
5 tenant_id: "acme-corp-tenant".to_string(),
6 url_id: "news/article-123".to_string(),
7 user_id_ws: "user-789-ws".to_string(),
8 start_time: 1711411200i64,
9 end_time: 1711497599i64,
10 };
11 let response: GetEventLog200Response = get_global_event_log(&configuration, params).await?;
12 let _include_deleted = include_deleted;
13 Ok(())
14}
15

Креирај објаву фида Internal Link

Parametri

ImeTipObaveznoOpis
tenant_idStringDa
create_feed_post_paramsmodels::CreateFeedPostParamsDa
broadcast_idStringNe
is_liveboolNe
do_spam_checkboolNe
skip_dup_checkboolNe

Odgovor

Vraća: CreateFeedPost200Response

Primjer

Primjer create_feed_post
Copy Copy
1
2async fn create_post_example() -> Result<CreateFeedPost200Response, Error> {
3 let params = CreateFeedPostParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 create_feed_post_params: models::CreateFeedPostParams {
6 title: Some("Downtown Datacenter Outage".to_string()),
7 body: Some("Investigating a partial outage affecting login and API endpoints.".to_string()),
8 author_id: Some("ops-team".to_string()),
9 ..Default::default()
10 },
11 broadcast_id: Some("status-broadcast-2026-03-25".to_string()),
12 is_live: Some(true),
13 do_spam_check: Some(true),
14 skip_dup_check: Some(false),
15 };
16 let response: CreateFeedPost200Response = create_feed_post(&configuration, params).await?;
17 Ok(response)
18}
19

Креирај јавну објаву фида Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringYes
create_feed_post_paramsmodels::CreateFeedPostParamsYes
broadcast_idStringNo
ssoStringNo

Odgovor

Vraća: CreateFeedPostPublic200Response

Primjer

create_feed_post_public Primjer
Copy Copy
1
2let create_feed_post_params: models::CreateFeedPostParams = models::CreateFeedPostParams {
3 title: "Acme Product Launch".to_string(),
4 body: "We're excited to announce our new product line that will change the way teams collaborate.".to_string(),
5 slug: "news/product-launch".to_string(),
6 links: Some(vec![models::FeedPostLink { url: "https://acme.com/launch".to_string(), title: Some("Launch details".to_string()) }]),
7 media: Some(vec![models::FeedPostMediaItem { assets: Some(vec![models::FeedPostMediaItemAsset { url: "https://cdn.acme.com/images/launch.jpg".to_string(), mime_type: Some("image/jpeg".to_string()) }]), caption: Some("Hero image".to_string()) }]),
8 tags: Some(vec!["announcement".to_string(), "product".to_string()]),
9};
10
11let params: CreateFeedPostPublicParams = CreateFeedPostPublicParams {
12 tenant_id: "acme-corp-tenant".to_string(),
13 create_feed_post_params,
14 broadcast_id: Some("broadcast-2026-03-25".to_string()),
15 sso: Some("sso-token-xyz789".to_string()),
16};
17
18let response: CreateFeedPostPublic200Response = create_feed_post_public(&configuration, params).await?;
19

Обриши јавну објаву фида Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
post_idStringDa
broadcast_idStringNe
ssoStringNe

Odgovor

Vraća: DeleteFeedPostPublic200Response

Primjer

Primjer delete_feed_post_public
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: DeleteFeedPostPublicParams = DeleteFeedPostPublicParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 post_id: "news/article-2026-03-25-12345".to_string(),
6 broadcast_id: Some("broadcast-9876".to_string()),
7 sso: Some("user-42-sso-token".to_string()),
8 };
9 let response: DeleteFeedPostPublic200Response = delete_feed_post_public(&configuration, params).await?;
10 Ok(())
11}
12

Добиј објаве фида Internal Link

req tenantId afterId

Parametri

ImeTipObaveznoOpis
tenant_idStringDa
after_idStringNe
limiti32Ne
tagsVecNe

Odgovor

Vraća: GetFeedPosts200Response

Primjer

get_feed_posts Primjer
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: GetFeedPostsParams = GetFeedPostsParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 after_id: Some("post_98765".to_string()),
6 limit: Some(20),
7 tags: Some(vec!["news".to_string(), "technology".to_string()]),
8 };
9 let feed: GetFeedPosts200Response = get_feed_posts(&configuration, params).await?;
10 Ok(())
11}
12

Добиј јавне објаве фида Internal Link


req tenantId afterId

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
after_idStringНе
limiti32Не
tagsVecНе
ssoStringНе
is_crawlerboolНе
include_user_infoboolНе

Одговор

Враћа: GetFeedPostsPublic200Response

Пример

Пример get_feed_posts_public
Copy Copy
1
2async fn example() -> Result<GetFeedPostsPublic200Response, Error> {
3 let params: GetFeedPostsPublicParams = GetFeedPostsPublicParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 after_id: Some("post_987654".to_string()),
6 limit: Some(25),
7 tags: Some(vec!["news".to_string(), "technology".to_string()]),
8 sso: Some("sso-token-abc123".to_string()),
9 is_crawler: Some(false),
10 include_user_info: Some(true),
11 };
12 let response: GetFeedPostsPublic200Response = get_feed_posts_public(&configuration, params).await?;
13 Ok(response)
14}
15

Добиј статистику објава фида Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
post_idsVecDa
ssoStringNe

Odgovor

Vraća: GetFeedPostsStats200Response

Primjer

get_feed_posts_stats Primjer
Copy Copy
1
2async fn fetch_feed_stats() -> Result<(), Error> {
3 let params: GetFeedPostsStatsParams = GetFeedPostsStatsParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 post_ids: vec![
6 "news/article/2026/03/25/product-launch".to_string(),
7 "blog/product-updates/q1-2026".to_string(),
8 ],
9 sso: Some("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.examplepayload.signature".to_string()),
10 };
11 let stats: GetFeedPostsStats200Response = get_feed_posts_stats(&configuration, params).await?;
12 Ok(())
13}
14

Добиј реакције корисника (јавно) Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
post_idsVecNe
ssoStringNe

Odgovor

Vraća: GetUserReactsPublic200Response

Primjer

Primjer get_user_reacts_public
Copy Copy
1
2async fn run() -> Result<GetUserReactsPublic200Response, Error> {
3 let params: GetUserReactsPublicParams = GetUserReactsPublicParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 post_ids: Some(vec![
6 "news/article-123".to_string(),
7 "blog/post-456".to_string(),
8 ]),
9 sso: Some("john.doe@acme.com".to_string()),
10 };
11 let response: GetUserReactsPublic200Response = get_user_reacts_public(&configuration, params).await?;
12 Ok(response)
13}
14

Реагуј на јавну објаву фида Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
post_idStringДа
react_body_paramsmodels::ReactBodyParamsДа
is_undoboolНе
broadcast_idStringНе
ssoStringНе

Одговор

Враћа: ReactFeedPostPublic200Response

Пример

react_feed_post_public Пример
Copy Copy
1
2let params: ReactFeedPostPublicParams = ReactFeedPostPublicParams {
3 tenant_id: "acme-corp-tenant".to_string(),
4 post_id: "news/world/2026-election".to_string(),
5 react_body_params: models::ReactBodyParams { reaction: "like".to_string() },
6 is_undo: Some(false),
7 broadcast_id: Some("broadcast-2026-03-25".to_string()),
8 sso: Some("sso-token-6f4e2b".to_string()),
9};
10
11let response: ReactFeedPostPublic200Response = react_feed_post_public(&configuration, params).await?;
12

Ажурирај објаву фида Internal Link

Parametri

ImeTipObaveznoOpis
tenant_idStringDa
idStringDa
feed_postmodels::FeedPostDa

Odgovor

Vraća: FlagCommentPublic200Response

Primjer

Primjer za update_feed_post
Copy Copy
1
2async fn update_post_example() -> Result<(), Error> {
3 let params: UpdateFeedPostParams = UpdateFeedPostParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "news/rocket-launch-2026".to_string(),
6 feed_post: models::FeedPost {
7 title: Some("Rocket Launch Successful".to_string()),
8 body: Some("Acme Rockets launched the Atlas X at 10:00 UTC with no anomalies.".to_string()),
9 author: Some("Acme Newsroom".to_string()),
10 media: Some(vec![
11 models::FeedPostMediaItem {
12 url: Some("https://cdn.acme.com/images/launch.jpg".to_string()),
13 caption: Some("Moments before liftoff".to_string()),
14 asset: None
15 }
16 ]),
17 links: Some(vec![
18 models::FeedPostLink {
19 title: Some("Detailed Coverage".to_string()),
20 url: Some("https://news.acme.com/coverage/atlas-x-launch".to_string())
21 }
22 ]),
23 published: Some(true)
24 }
25 };
26 let response: FlagCommentPublic200Response = update_feed_post(&configuration, params).await?;
27 Ok(())
28}
29

Ажурирај јавну објаву фида Internal Link

Параметри

НазивТипОбавезноОпис
tenant_idStringДа
post_idStringДа
update_feed_post_paramsmodels::UpdateFeedPostParamsДа
broadcast_idStringНе
ssoStringНе

Одговор

Враћа: CreateFeedPostPublic200Response

Пример

Пример за update_feed_post_public
Copy Copy
1
2let params: UpdateFeedPostPublicParams = UpdateFeedPostPublicParams {
3 tenant_id: "acme-corp-tenant".to_string(),
4 post_id: "news/article-2026-03-25".to_string(),
5 update_feed_post_params: models::UpdateFeedPostParams {
6 title: "Acme Widget Launch".to_string(),
7 body: "Acme today launched the next-generation Widget with improved performance and battery life.".to_string(),
8 tags: vec!["product".to_string(), "launch".to_string()],
9 media: vec![
10 models::FeedPostMediaItem {
11 url: "https://cdn.acme.com/images/widget-launch.jpg".to_string(),
12 asset: Some(models::FeedPostMediaItemAsset {
13 mime_type: "image/jpeg".to_string(),
14 size: Some(142000),
15 }),
16 }
17 ],
18 links: vec![
19 models::FeedPostLink {
20 url: "https://acme.com/blog/widget-launch".to_string(),
21 title: Some("Read the full announcement".to_string()),
22 }
23 ],
24 },
25 broadcast_id: Some("broadcast-2026-03".to_string()),
26 sso: Some("sso-token-9f8e7d".to_string()),
27};
28
29let response: CreateFeedPostPublic200Response = update_feed_post_public(configuration, params).await?;
30

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

Параметри

НазивТипОбавезноОпис
tenant_idStringДа
comment_idStringДа
is_flaggedboolДа
ssoStringНе

Одговор

Враћа: FlagCommentPublic200Response

Пример

flag_comment_public Пример
Copy Copy
1
2async fn run_flag() -> Result<FlagCommentPublic200Response, Error> {
3 let params: FlagCommentPublicParams = FlagCommentPublicParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 comment_id: "news/article-2026-03-25-8a7b6c".to_string(),
6 is_flagged: true,
7 sso: Some("sso-token-user-123".to_string()),
8 };
9 let response: FlagCommentPublic200Response = flag_comment_public(&configuration, params).await?;
10 Ok(response)
11}
12

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

Parametri

ImeTipObaveznoOpis
tenant_idStringNe
create_hash_tag_bodymodels::CreateHashTagBodyNe

Odgovor

Vraća: AddHashTag200Response

Primjer

Primjer add_hash_tag
Copy Copy
1
2let params: AddHashTagParams = AddHashTagParams {
3 tenant_id: Some("acme-corp-tenant".to_string()),
4 create_hash_tag_body: Some(models::CreateHashTagBody {
5 tag: "breaking-news".to_string(),
6 display_name: Some("Breaking News".to_string()),
7 description: Some("Articles covering breaking news events".to_string()),
8 enabled: Some(true),
9 }),
10};
11
12let response: AddHashTag200Response = add_hash_tag(&configuration, params).await?;
13

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

Параметри

ИмеТипОбавезноОпис
tenant_idStringНе
bulk_create_hash_tags_bodymodels::BulkCreateHashTagsBodyНе

Одговор

Враћа: AddHashTagsBulk200Response

Примјер

add_hash_tags_bulk Примјер
Copy Copy
1
2async fn add_tags_example() -> Result<(), Error> {
3 let body = BulkCreateHashTagsBody {
4 tags: vec![
5 BulkCreateHashTagsBodyTagsInner {
6 tag: "news/article".to_string(),
7 path: "site/news".to_string(),
8 description: Some("Articles and press releases".to_string()),
9 is_active: Some(true),
10 custom_config: Some(CustomConfigParameters { score: Some(0.85) }),
11 },
12 BulkCreateHashTagsBodyTagsInner {
13 tag: "product/launch".to_string(),
14 path: "site/products".to_string(),
15 description: Some("New product launches".to_string()),
16 is_active: Some(true),
17 custom_config: Some(CustomConfigParameters { score: Some(0.95) }),
18 },
19 ],
20 };
21 let params: AddHashTagsBulkParams = AddHashTagsBulkParams {
22 tenant_id: Some("acme-corp-tenant".to_string()),
23 bulk_create_hash_tags_body: Some(body),
24 };
25 let response: AddHashTagsBulk200Response = add_hash_tags_bulk(&configuration, params).await?;
26 Ok(())
27}
28

Обриши хештег Internal Link

Параметри

ИмеТипОбавезноОпис
tagStringДа
tenant_idStringНе
delete_hash_tag_requestmodels::DeleteHashTagRequestНе

Одговор

Враћа: FlagCommentPublic200Response

Пример

Пример delete_hash_tag
Copy Copy
1
2async fn run_delete_tag(configuration: &configuration::Configuration) -> Result<FlagCommentPublic200Response, Error> {
3 let params = DeleteHashTagParams {
4 tag: "news/world-climate".to_owned(),
5 tenant_id: Some("acme-corp-tenant".to_owned()),
6 delete_hash_tag_request: None,
7 };
8 let response: FlagCommentPublic200Response = delete_hash_tag(configuration, params).await?;
9 Ok(response)
10}
11

Добиј хештегове Internal Link

Параметри

НазивТипОбавезноОпис
tenant_idStringДа
pagef64Не

Одговор

Враћа: GetHashTags200Response

Пример

get_hash_tags Пример
Copy Copy
1
2async fn fetch_hash_tags() -> Result<GetHashTags200Response, Error> {
3 let params: GetHashTagsParams = GetHashTagsParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 page: Some(1.0),
6 };
7 let response: GetHashTags200Response = get_hash_tags(&configuration, params).await?;
8 Ok(response)
9}
10

Измјени хештег (PATCH) Internal Link

Параметри

ИмеТипОбавезноОпис
tagStringДа
tenant_idStringНе
update_hash_tag_bodymodels::UpdateHashTagBodyНе

Одговор

Враћа: PatchHashTag200Response

Пример

patch_hash_tag Пример
Copy Copy
1
2let params: PatchHashTagParams = PatchHashTagParams {
3 tag: "news/article".to_string(),
4 tenant_id: Some("acme-corp-tenant".to_string()),
5 update_hash_tag_body: Some(models::UpdateHashTagBody {
6 label: Some("World News".to_string()),
7 description: Some("Articles related to world events.".to_string()),
8 enabled: Some(true),
9 }),
10};
11
12let response: PatchHashTag200Response = patch_hash_tag(&configuration, params).await?
13

Креирај модератора Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
create_moderator_bodymodels::CreateModeratorBodyDa

Odgovor

Vraća: CreateModerator200Response

Primjer

Primjer create_moderator
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: CreateModeratorParams = CreateModeratorParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 create_moderator_body: models::CreateModeratorBody {
6 username: String::from("jane.moderator"),
7 email: String::from("jane.moderator@acme.com"),
8 display_name: Some(String::from("Jane Moderator")),
9 sections: Some(vec![String::from("news/article"), String::from("forums/general")]),
10 active: Some(true),
11 notes: Some(String::from("Senior moderator, PST timezone")),
12 },
13 };
14 let response: CreateModerator200Response = create_moderator(&configuration, params).await?;
15 Ok(())
16}
17

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

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
idStringDa
send_emailStringNe

Odgovor

Vraća: FlagCommentPublic200Response

Primjer

delete_moderator Primjer
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: DeleteModeratorParams = DeleteModeratorParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 id: String::from("moderator-9876"),
6 send_email: Some(String::from("true")),
7 };
8
9 let response: FlagCommentPublic200Response = delete_moderator(&configuration, params).await?;
10 Ok(())
11}
12

Добиј модератора Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
idStringDa

Odgovor

Vraća: GetModerator200Response

Primjer

get_moderator Primjer
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params = GetModeratorParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "moderator-4521".to_string(),
6 include_permissions: Some(true),
7 };
8 let moderator: GetModerator200Response = get_moderator(&configuration, params).await?;
9 println!("{:#?}", moderator);
10 Ok(())
11}
12

Добиј модераторе Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
skipf64Не

Одговор

Враћа: GetModerators200Response

Пример

get_moderators Пример
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: GetModeratorsParams = GetModeratorsParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 skip: Some(10.0),
6 };
7 let _moderators: GetModerators200Response = get_moderators(&configuration, params).await?;
8 Ok(())
9}
10

Пошаљи позивницу Internal Link

Parametri

NameTypeObaveznoOpis
tenant_idStringDa
idStringDa
from_nameStringDa

Odgovor

Vraća: FlagCommentPublic200Response

Primjer

Primjer send_invite
Copy Copy
1
2async fn send_invite_example() -> Result<FlagCommentPublic200Response, Error> {
3 let params: SendInviteParams = SendInviteParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "news/article-2026-03-25-modern-rust".to_string(),
6 from_name: "Acme Newsroom".to_string(),
7 message: Some("Please join the discussion on this article.".to_string()),
8 };
9 let response: FlagCommentPublic200Response = send_invite(&configuration, params).await?;
10 Ok(response)
11}
12

Ажурирај модератора Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
idStringDa
update_moderator_bodymodels::UpdateModeratorBodyDa

Odgovor

Vraća: FlagCommentPublic200Response

Primjer

update_moderator Primjer
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: UpdateModeratorParams = UpdateModeratorParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "moderator-987".to_string(),
6 update_moderator_body: models::UpdateModeratorBody {
7 username: Some("jane.doe".to_string()),
8 email: Some("jane.doe@acme.com".to_string()),
9 role: Some("senior_moderator".to_string()),
10 active: Some(true),
11 notes: Some("Promoted after successful trial period".to_string()),
12 },
13 };
14 let response: FlagCommentPublic200Response = update_moderator(&configuration, params).await?;
15 Ok(())
16}
17

Обриши број обавјештења Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
idStringDa

Odgovor

Vraća: FlagCommentPublic200Response

Primjer

delete_notification_count Primjer
Copy Copy
1
2async fn run() -> Result<FlagCommentPublic200Response, Error> {
3 let params: DeleteNotificationCountParams = DeleteNotificationCountParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 id: String::from("notification-9876"),
6 user_id: Some(String::from("user-1234")),
7 };
8 let response: FlagCommentPublic200Response = delete_notification_count(configuration, params).await?;
9 Ok(response)
10}
11

Добиј кеширани број обавјештења Internal Link

Параметри

NameTypeRequiredDescription
tenant_idStringДа
idStringДа

Одговор

Враћа: GetCachedNotificationCount200Response

Пример

get_cached_notification_count Пример
Copy Copy
1
2pub async fn example_get_cached_notification_count(configuration: &configuration::Configuration) -> Result<GetCachedNotificationCount200Response, Error> {
3 let params: GetCachedNotificationCountParams = GetCachedNotificationCountParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "news/article-12345".to_string(),
6 };
7 let response: GetCachedNotificationCount200Response = get_cached_notification_count(configuration, params).await?;
8 Ok(response)
9}
10

Добиј број обавјештења Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringYes
user_idStringNo
url_idStringNo
from_comment_idStringNo
viewedboolNo

Odgovor

Vraća: GetNotificationCount200Response

Primjer

get_notification_count Primjer
Copy Copy
1
2async fn example() -> Result<(), Error> {
3 let params: GetNotificationCountParams = GetNotificationCountParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 user_id: Some("user-67890".to_string()),
6 url_id: Some("news/2026/03/25/election-updates".to_string()),
7 from_comment_id: Some("cmt_42".to_string()),
8 viewed: Some(false),
9 };
10 let response: GetNotificationCount200Response = get_notification_count(&configuration, params).await?;
11 Ok(())
12}
13

Добиј обавјештења Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
user_idStringNe
url_idStringNe
from_comment_idStringNe
viewedboolNe
skipf64Ne

Odgovor

Vraća: GetNotifications200Response

Primjer

Primjer get_notifications
Copy Copy
1
2async fn fetch_notifications() -> Result<(), Error> {
3 let params: GetNotificationsParams = GetNotificationsParams {
4 tenant_id: "acme-corp-tenant".to_owned(),
5 user_id: Some("user-12345".to_owned()),
6 url_id: Some("news/article/2026/03/25/major-update".to_owned()),
7 from_comment_id: Some("cmt-98765".to_owned()),
8 viewed: Some(false),
9 skip: Some(0.0),
10 };
11 let notifications: GetNotifications200Response = get_notifications(&configuration, params).await?;
12 Ok(())
13}
14

Ажурирај обавјештење Internal Link

Parametri

NameTypeRequiredDescription
tenant_idStringDa
idStringDa
update_notification_bodymodels::UpdateNotificationBodyDa
user_idStringNe

Odgovor

Vraća: FlagCommentPublic200Response

Primjer

update_notification Primjer
Copy Copy
1
2let params: UpdateNotificationParams = UpdateNotificationParams {
3 tenant_id: "acme-corp-tenant".to_string(),
4 id: "notif-12345".to_string(),
5 update_notification_body: models::UpdateNotificationBody {
6 name: "Article Comments Webhook".to_string(),
7 url: "https://hooks.acme-corp.com/article-comments".to_string(),
8 enabled: true,
9 events: vec!["comment.created".to_string(), "comment.flagged".to_string()],
10 },
11 user_id: Some("moderator-42".to_string()),
12};
13
14let response: FlagCommentPublic200Response = update_notification(&configuration, params).await?;
15

Додај страницу Internal Link

Parametri

ImeTipObaveznoOpis
tenant_idStringDa
create_api_page_datamodels::CreateApiPageDataDa

Odgovor

Vraća: AddPageApiResponse


Обриши страницу Internal Link


Parametri

NazivTipObaveznoOpis
tenant_idStringDa
idStringDa

Odgovor

Vraća: DeletePageApiResponse


Добиј страницу по URL ID-у Internal Link

Parameters

NazivTipObaveznoOpis
tenant_idStringDa
url_idStringDa

Odgovor

Vraća: GetPageByUrlidApiResponse


Добиј странице Internal Link


Параметри

ИмеТипПотребноОпис
tenant_idStringДа

Одговор

Враћа: GetPagesApiResponse


Измјени страницу (PATCH) Internal Link


Parametri

NazivТипОбавезноОпис
tenant_idStringДа
idStringДа
update_api_page_datamodels::UpdateApiPageDataДа

Одговор

Враћа: PatchPageApiResponse


Обриши на чекању вебхук догађај Internal Link

Параметри

НазивТипОбавезноОпис
tenant_idStringДа
idStringДа

Одговор

Враћа: FlagCommentPublic200Response

Примјер

delete_pending_webhook_event Примјер
Copy Copy
1
2async fn run_delete() -> Result<FlagCommentPublic200Response, Error> {
3 let audit_note: Option<String> = Some("removed duplicate webhook event".to_string());
4 let params: DeletePendingWebhookEventParams = DeletePendingWebhookEventParams {
5 tenant_id: "acme-corp-tenant".to_string(),
6 id: "9f8b7a6c-1234-4b8d-9c3a-0e1f2d3c4b5a".to_string(),
7 };
8 let response: FlagCommentPublic200Response = delete_pending_webhook_event(&configuration, params).await?;
9 let _ = audit_note;
10 Ok(response)
11}
12

Добиј број на чекању вебхук догађаја Internal Link

Parametri

NameTipObaveznoOpis
tenant_idStringDa
comment_idStringNe
external_idStringNe
event_typeStringNe
domainStringNe
attempt_count_gtf64Ne

Odgovor

Vraća: GetPendingWebhookEventCount200Response

Primjer

Primjer get_pending_webhook_event_count
Copy Copy
1
2async fn fetch_pending_webhook_count(configuration: &configuration::Configuration) -> Result<GetPendingWebhookEventCount200Response, Error> {
3 let params: GetPendingWebhookEventCountParams = GetPendingWebhookEventCountParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 comment_id: Some(String::from("cmt-12345")),
6 external_id: Some(String::from("ext-67890")),
7 event_type: Some(String::from("comment_posted")),
8 domain: Some(String::from("news.example.com")),
9 attempt_count_gt: Some(3.0),
10 };
11 let response: GetPendingWebhookEventCount200Response = get_pending_webhook_event_count(configuration, params).await?;
12 Ok(response)
13}
14

Добиј на чекању вебхук догађаје Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
comment_idStringНе
external_idStringНе
event_typeStringНе
domainStringНе
attempt_count_gtf64Не
skipf64Не

Одговор

Враћа: GetPendingWebhookEvents200Response

Пример

get_pending_webhook_events Пример
Copy Copy
1
2async fn fetch_pending_webhook_events() -> Result<GetPendingWebhookEvents200Response, Error> {
3 let params: GetPendingWebhookEventsParams = GetPendingWebhookEventsParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 comment_id: Some("cmt-2026-04-01-001".to_string()),
6 external_id: Some("news/article-42".to_string()),
7 event_type: Some("comment.created".to_string()),
8 domain: Some("news.example.com".to_string()),
9 attempt_count_gt: Some(1.0),
10 skip: Some(0.0),
11 };
12 let response: GetPendingWebhookEvents200Response = get_pending_webhook_events(&configuration, params).await?;
13 Ok(response)
14}
15

Креирај конфигурацију питања Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
create_question_config_bodymodels::CreateQuestionConfigBodyДа

Одговор

Враћа: CreateQuestionConfig200Response

Пример

create_question_config Пример
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: CreateQuestionConfigParams = CreateQuestionConfigParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 create_question_config_body: models::CreateQuestionConfigBody {
6 slug: "news/article".to_string(),
7 title: "Reader satisfaction".to_string(),
8 description: Some("How satisfied are you with this article?".to_string()),
9 required: Some(false),
10 rendering_type: Some(QuestionRenderingType::Inline),
11 custom_options: Some(vec![
12 models::QuestionConfigCustomOptionsInner { value: "very_satisfied".to_string(), label: Some("Very satisfied".to_string()) },
13 models::QuestionConfigCustomOptionsInner { value: "unsatisfied".to_string(), label: Some("Unsatisfied".to_string()) },
14 ]),
15 },
16 };
17 let response: CreateQuestionConfig200Response = create_question_config(configuration, params).await?;
18 Ok(())
19}
20

Обриши конфигурацију питања Internal Link

Parametri

ImeTipObaveznoOpis
tenant_idStringDa
idStringDa

Odgovor

Vraća: FlagCommentPublic200Response

Primjer

Primjer delete_question_config
Copy Copy
1
2pub async fn run_delete_question_config() -> Result<FlagCommentPublic200Response, Error> {
3 let params: DeleteQuestionConfigParams = DeleteQuestionConfigParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "question-config-8742".to_string(),
6 };
7 let response: FlagCommentPublic200Response = delete_question_config(&configuration, params).await?;
8 Ok(response)
9}
10

Добиј конфигурацију питања Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringYes
idStringYes

Odgovor

Vraća: GetQuestionConfig200Response

Primjer

get_question_config Primjer
Copy Copy
1
2async fn run_get_question_config() -> Result<GetQuestionConfig200Response, Error> {
3 let tenant: Option<String> = Some("acme-corp-tenant".to_string());
4 let params: GetQuestionConfigParams = GetQuestionConfigParams {
5 tenant_id: tenant.unwrap(),
6 id: "news/article/2026/03/25/space-launch".to_string(),
7 };
8 let response: GetQuestionConfig200Response = get_question_config(&configuration, params).await?;
9 Ok(response)
10}
11

Добиј конфигурације питања Internal Link


Параметри

НазивТипОбавезноОпис
tenant_idStringДа
skipf64Не

Одговор

Враћа: GetQuestionConfigs200Response

Пример

get_question_configs Пример
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: GetQuestionConfigsParams = GetQuestionConfigsParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 skip: Some(10.0),
6 };
7 let response: GetQuestionConfigs200Response = get_question_configs(&configuration, params).await?;
8 println!("{:#?}", response);
9 Ok(())
10}
11

Ажурирај конфигурацију питања Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
idStringDa
update_question_config_bodymodels::UpdateQuestionConfigBodyDa

Odgovor

Vraća: FlagCommentPublic200Response

Primjer

Primjer update_question_config
Copy Copy
1
2let params: UpdateQuestionConfigParams = UpdateQuestionConfigParams {
3 tenant_id: "acme-corp-tenant".to_string(),
4 id: "news/article-2026-03-readability".to_string(),
5 update_question_config_body: models::UpdateQuestionConfigBody {
6 question_text: Some("Was this article helpful?".to_string()),
7 required: Some(true),
8 rendering_type: Some(models::QuestionRenderingType::Inline),
9 custom_options: Some(vec![
10 models::QuestionConfigCustomOptionsInner { label: "Very helpful".to_string(), value: "very_helpful".to_string() },
11 models::QuestionConfigCustomOptionsInner { label: "Somewhat helpful".to_string(), value: "somewhat_helpful".to_string() },
12 models::QuestionConfigCustomOptionsInner { label: "Not helpful".to_string(), value: "not_helpful".to_string() },
13 ]),
14 when_save: Some(models::QuestionWhenSave::AskOnSave),
15 ..Default::default()
16 },
17};
18let response: FlagCommentPublic200Response = update_question_config(&configuration, params).await?;
19

Креирај резултат питања Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
create_question_result_bodymodels::CreateQuestionResultBodyДа

Одговор

Враћа: CreateQuestionResult200Response

Пример

create_question_result Пример
Copy Copy
1
2async fn run_create_question_result() -> Result<(), Error> {
3 let params: CreateQuestionResultParams = CreateQuestionResultParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 create_question_result_body: models::CreateQuestionResultBody {
6 question_id: "article-123-comment-rating".to_string(),
7 user_id: Some("reader-456".to_string()),
8 result: Some("helpful".to_string()),
9 context: Some("news/article".to_string()),
10 submitted_at: Some("2026-03-25T12:34:56Z".to_string()),
11 },
12 };
13
14 let response: CreateQuestionResult200Response = create_question_result(&configuration, params).await?;
15 Ok(())
16}
17

Обриши резултат питања Internal Link

Parameters

NazivTipObaveznoOpis
tenant_idStringDa
idStringDa

Odgovor

Vraća: FlagCommentPublic200Response

Primjer

Primjer delete_question_result
Copy Copy
1
2async fn run_delete_question_result() -> Result<(), Error> {
3 let params: DeleteQuestionResultParams = DeleteQuestionResultParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "qres-news/article-2026-03-25-9a8b7c".to_string(),
6 };
7 let response: FlagCommentPublic200Response = delete_question_result(&configuration, params).await?;
8 let _response = response;
9 Ok(())
10}
11

Добиј резултат питања Internal Link

Параметри

НазивТипОбавезноОпис
tenant_idStringДа
idStringДа

Одговор

Враћа: GetQuestionResult200Response

Пример

Пример get_question_result
Copy Copy
1
2async fn example_get_question_result() -> Result<GetQuestionResult200Response, Error> {
3 let params: GetQuestionResultParams = GetQuestionResultParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "question-12345".to_string(),
6 };
7 let _include_metadata: Option<bool> = Some(true);
8 let response: GetQuestionResult200Response = get_question_result(configuration, params).await?;
9 Ok(response)
10}
11

Добиј резултате питања Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
url_idStringНе
user_idStringНе
start_dateStringНе
question_idStringНе
question_idsStringНе
skipf64Не

Одговор

Враћа: GetQuestionResults200Response

Пример

get_question_results Пример
Copy Copy
1
2async fn run() -> Result<GetQuestionResults200Response, Error> {
3 let params: GetQuestionResultsParams = GetQuestionResultsParams {
4 tenant_id: "acme-corp-tenant".to_owned(),
5 url_id: Some("news/local/2026/03/25".to_owned()),
6 user_id: Some("user_12345".to_owned()),
7 start_date: Some("2026-01-01T00:00:00Z".to_owned()),
8 question_id: Some("q_789".to_owned()),
9 question_ids: Some("q_789,q_790".to_owned()),
10 skip: Some(10.0),
11 };
12 let response: GetQuestionResults200Response = get_question_results(&configuration, params).await?;
13 Ok(response)
14}
15

Ажурирај резултат питања Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
idStringДа
update_question_result_bodymodels::UpdateQuestionResultBodyДа

Одговор

Враћа: FlagCommentPublic200Response

Пример

update_question_result Пример
Copy Copy
1
2async fn run_update_question_result() -> Result<(), Error> {
3 let params: UpdateQuestionResultParams = UpdateQuestionResultParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "news/article/2026/03/25/12345".to_string(),
6 update_question_result_body: models::UpdateQuestionResultBody {
7 question_id: Some("q-987".to_string()),
8 result: Some(true),
9 reviewer_id: Some("moderator-7".to_string()),
10 notes: Some("Marked as resolved after editorial review".to_string()),
11 },
12 };
13 let response: FlagCommentPublic200Response = update_question_result(&configuration, params).await?;
14 println!("update result: {:?}", response);
15 Ok(())
16}
17

Агрегирај резултате питања Internal Link


Параметри

НазивТипОбавезноОпис
tenant_idStringДа
question_idStringНе
question_idsVecНе
url_idStringНе
time_bucketmodels::AggregateTimeBucketНе
start_dateStringНе
force_recalculateboolНе

Одговор

Враћа: AggregateQuestionResults200Response

Пример

aggregate_question_results Пример
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: AggregateQuestionResultsParams = AggregateQuestionResultsParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 question_id: Some("satisfaction-8".to_string()),
6 question_ids: Some(vec!["satisfaction-8".to_string(), "recommendation-3".to_string()]),
7 url_id: Some("news/article/2026/ai-announce".to_string()),
8 time_bucket: Some(models::AggregateTimeBucket::Daily),
9 start_date: Some("2026-03-01T00:00:00Z".to_string()),
10 force_recalculate: Some(true),
11 };
12 let aggregation: AggregateQuestionResults200Response = aggregate_question_results(&configuration, params).await?;
13 Ok(())
14}
15

Групна агрегација резултата питања Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
bulk_aggregate_question_results_requestmodels::BulkAggregateQuestionResultsRequestДа
force_recalculateboolНе

Одговор

Враћа: BulkAggregateQuestionResults200Response

Пример

bulk_aggregate_question_results Пример
Copy Copy
1
2let params: BulkAggregateQuestionResultsParams = BulkAggregateQuestionResultsParams {
3 tenant_id: "acme-corp-tenant".to_string(),
4 bulk_aggregate_question_results_request: models::BulkAggregateQuestionResultsRequest {
5 questions: vec![
6 models::BulkAggregateQuestionItem {
7 question_id: "news/article-2026-03-24-comments".to_string(),
8 include_subquestions: Some(true),
9 top_n: Some(5),
10 }
11 ],
12 time_bucket: models::AggregateTimeBucket::Daily,
13 start_time: "2026-03-01T00:00:00Z".to_string(),
14 end_time: "2026-03-24T23:59:59Z".to_string(),
15 },
16 force_recalculate: Some(true),
17};
18let response: BulkAggregateQuestionResults200Response = bulk_aggregate_question_results(&configuration, params).await?;
19

Комбинуј коментаре са резултатима питања Internal Link

Параметри

NameTypeRequiredDescription
tenant_idStringДа
question_idStringНе
question_idsVecНе
url_idStringНе
start_dateStringНе
force_recalculateboolНе
min_valuef64Не
max_valuef64Не
limitf64Не

Одговор

Враћа: CombineCommentsWithQuestionResults200Response

Пример

combine_comments_with_question_results Пример
Copy Copy
1
2async fn run() -> Result<CombineCommentsWithQuestionResults200Response, Error> {
3 let params: CombineCommentsWithQuestionResultsParams = CombineCommentsWithQuestionResultsParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 question_id: Some("q-2026-product-satisfaction".to_string()),
6 question_ids: Some(vec![
7 "q-2026-product-satisfaction".to_string(),
8 "q-2026-support-rating".to_string(),
9 ]),
10 url_id: Some("news/product/launch-2026".to_string()),
11 start_date: Some("2026-03-01T00:00:00Z".to_string()),
12 force_recalculate: Some(true),
13 min_value: Some(1.0),
14 max_value: Some(5.0),
15 limit: Some(100.0),
16 };
17 let response: CombineCommentsWithQuestionResults200Response =
18 combine_comments_with_question_results(&configuration, params).await?;
19 Ok(response)
20}
21

Додај SSO корисника Internal Link


Parametri

ImeTipObaveznoOpis
tenant_idStringDa
create_apisso_user_datamodels::CreateApissoUserDataDa

Odgovor

Vraća: AddSsoUserApiResponse


Обриши SSO корисника Internal Link


Parametri

NazivTipObaveznoOpis
tenant_idStringDa
idStringDa
delete_commentsboolNe
comment_delete_modeStringNe

Odgovor

Vraća: DeleteSsoUserApiResponse


Добиј SSO корисника по е-пошти Internal Link

Parametri

ImeTipObaveznoOpis
tenant_idStringDa
emailStringDa

Odgovor

Vraća: GetSsoUserByEmailApiResponse


Добиј SSO корисника по ID-у Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
idStringДа

Одговор

Враћа: GetSsoUserByIdApiResponse


Добиј SSO кориснике Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
skipi32Ne

Odgovor

Vraća: GetSsoUsers200Response


Измјени SSO корисника (PATCH) Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
idStringДа
update_apisso_user_datamodels::UpdateApissoUserDataДа
update_commentsboolНе

Одговор

Враћа: PatchSsoUserApiResponse


Замјени SSO корисника (PUT) Internal Link


Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
idStringДа
update_apisso_user_datamodels::UpdateApissoUserDataДа
update_commentsboolНе

Одговор

Враћа: PutSsoUserApiResponse


Креирај претплату Internal Link


Parametri

NazivTipObaveznoOpis
tenant_idStringDa
create_api_user_subscription_datamodels::CreateApiUserSubscriptionDataDa

Odgovor

Vraća: CreateSubscriptionApiResponse

Primjer

create_subscription Primjer
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: CreateSubscriptionParams = CreateSubscriptionParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 create_api_user_subscription_data: models::CreateApiUserSubscriptionData {
6 api_user_id: "api_user_9843".to_string(),
7 resource: "news/article".to_string(),
8 plan: Some("pro".to_string()),
9 start_at: Some("2026-03-01T12:00:00Z".to_string()),
10 metadata: Some(std::collections::HashMap::from([
11 ("source".to_string(), "signup_form".to_string()),
12 ("utm_campaign".to_string(), "spring_launch".to_string()),
13 ])),
14 active: Some(true),
15 },
16 };
17
18 let subscription_response: CreateSubscriptionApiResponse =
19 create_subscription(&configuration, params).await?;
20 Ok(())
21}
22

Обриши претплату Internal Link


Parametri

NazivTipObaveznoOpis
tenant_idStringDa
idStringDa
user_idStringNe

Odgovor

Vraća: DeleteSubscriptionApiResponse


Добиј претплате Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
user_idStringNe

Odgovor

Vraća: GetSubscriptionsApiResponse

Primjer

Primjer get_subscriptions
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: GetSubscriptionsParams = GetSubscriptionsParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 user_id: Some("user-42@example.com".to_string()),
6 };
7 let subscriptions: GetSubscriptionsApiResponse = get_subscriptions(&configuration, params).await?;
8 let _ = subscriptions;
9 Ok(())
10}
11

Ажурирај претплату Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
idStringДа
update_api_user_subscription_datamodels::UpdateApiUserSubscriptionDataДа
user_idStringНе

Одговор

Враћа: UpdateSubscriptionApiResponse

Пример

update_subscription Пример
Copy Copy
1
2async fn example_update_subscription() -> Result<(), Error> {
3 let params: UpdateSubscriptionParams = UpdateSubscriptionParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "sub_8f9a2b".to_string(),
6 update_api_user_subscription_data: models::UpdateApiUserSubscriptionData {
7 plan: "newsletter-weekly".to_string(),
8 active: true,
9 renewal_period_days: Some(30),
10 },
11 user_id: Some("user_42".to_string()),
12 };
13 let response: UpdateSubscriptionApiResponse = update_subscription(&configuration, params).await?;
14 Ok(())
15}
16

Добиј дневну употребу тенанта Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
year_numberf64Не
month_numberf64Не
day_numberf64Не
skipf64Не

Одговор

Враћа: GetTenantDailyUsages200Response

Пример

Пример get_tenant_daily_usages
Copy Copy
1
2async fn example_get_usage() -> Result<GetTenantDailyUsages200Response, Error> {
3 let params = GetTenantDailyUsagesParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 year_number: Some(2026.0),
6 month_number: Some(3.0),
7 day_number: Some(25.0),
8 skip: Some(0.0),
9 };
10 let response = get_tenant_daily_usages(&configuration, params).await?;
11 Ok(response)
12}
13

Креирај пакет тенанта Internal Link

Параметри

NameTypeRequiredDescription
tenant_idStringДа
create_tenant_package_bodymodels::CreateTenantPackageBodyДа

Одговор

Враћа: CreateTenantPackage200Response

Пример

Пример create_tenant_package
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: CreateTenantPackageParams = CreateTenantPackageParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 create_tenant_package_body: models::CreateTenantPackageBody {
6 name: "Acme Standard Moderation".to_string(),
7 description: Some("Standard moderation package for news and blog sites".to_string()),
8 enabled: Some(true),
9 custom_config: Some(CustomConfigParameters { max_comment_length: Some(1000), require_moderation: Some(true) }),
10 gif_rating: Some(GifRating::PG13),
11 image_content_profanity_level: Some(ImageContentProfanityLevel::Moderate),
12 tos: Some(TosConfig { require_acceptance: Some(true), tos_url: Some("https://acme.example.com/terms".to_string()) }),
13 },
14 };
15 let response: CreateTenantPackage200Response = create_tenant_package(&configuration, params).await?;
16 Ok(())
17}
18

Обриши пакет тенанта Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
idStringDa

Odgovor

Vraća: FlagCommentPublic200Response

Primjer

Primjer delete_tenant_package
Copy Copy
1
2async fn run_delete() -> Result<FlagCommentPublic200Response, Error> {
3 let params: DeleteTenantPackageParams = DeleteTenantPackageParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "news/article-comments-package-2026-03".to_string(),
6 };
7 let response: FlagCommentPublic200Response = delete_tenant_package(&configuration, params).await?;
8 Ok(response)
9}
10

Добиј пакет тенанта Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
idStringДа

Одговор

Враћа: GetTenantPackage200Response

Примјер

get_tenant_package Пример
Copy Copy
1
2async fn fetch_tenant_package() -> Result<GetTenantPackage200Response, Error> {
3 let params: GetTenantPackageParams = GetTenantPackageParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "package-basic-2026".to_string(),
6 };
7 let include_metadata: Option<bool> = Some(true);
8 let package: GetTenantPackage200Response = get_tenant_package(&configuration, params).await?;
9 Ok(package)
10}
11

Добиј пакете тенанта Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
skipf64Ne

Odgovor

Vraća: GetTenantPackages200Response

Primjer

get_tenant_packages Primjer
Copy Copy
1
2async fn example() -> Result<(), Error> {
3 let params: GetTenantPackagesParams = GetTenantPackagesParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 skip: Some(20.0),
6 };
7 let packages: GetTenantPackages200Response = get_tenant_packages(&configuration, params).await?;
8 Ok(())
9}
10

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


Parametri

NazivTipObaveznoOpis
tenant_idStringDa
idStringDa
replace_tenant_package_bodymodels::ReplaceTenantPackageBodyDa

Odgovor

Vraća: FlagCommentPublic200Response

Примјер

replace_tenant_package Primjer
Copy Copy
1
2async fn run_replace_package() -> Result<FlagCommentPublic200Response, Error> {
3 let params: ReplaceTenantPackageParams = ReplaceTenantPackageParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "enterprise-package-2026".to_string(),
6 replace_tenant_package_body: models::ReplaceTenantPackageBody {
7 name: "Acme Enterprise".to_string(),
8 plan: "enterprise".to_string(),
9 seats: Some(50),
10 allowed_domains: Some(vec![
11 "acme.com".to_string(),
12 "news.acme.com".to_string(),
13 ]),
14 },
15 };
16
17 let response: FlagCommentPublic200Response = replace_tenant_package(&configuration, params).await?;
18 Ok(response)
19}
20

Ажурирај пакет тенанта Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringYes
idStringYes
update_tenant_package_bodymodels::UpdateTenantPackageBodyYes

Одговор

Враћа: FlagCommentPublic200Response

Примјер

update_tenant_package Примјер
Copy Copy
1
2async fn example() -> Result<(), Error> {
3 let params: UpdateTenantPackageParams = UpdateTenantPackageParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "pkg-professional-2026".to_string(),
6 update_tenant_package_body: models::UpdateTenantPackageBody {
7 name: "Acme Professional".to_string(),
8 plan: "professional".to_string(),
9 enabled: Some(true),
10 api_status: Some(ApiStatus::Enabled),
11 custom_config: Some(CustomConfigParameters {
12 moderation_webhook: Some("https://acme.example.com/hooks/moderation".to_string()),
13 sso_security_level: Some(SsoSecurityLevel::Strict),
14 }),
15 tos_config: Some(TosConfig {
16 enabled: Some(true),
17 url: Some("https://acme.example.com/terms".to_string()),
18 }),
19 },
20 };
21 let response: FlagCommentPublic200Response = update_tenant_package(&configuration, params).await?;
22 Ok(())
23}
24

Креирај корисника тенанта Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
create_tenant_user_bodymodels::CreateTenantUserBodyДа

Одговор

Враћа: CreateTenantUser200Response

Пример

create_tenant_user Пример
Copy Copy
1
2let params: CreateTenantUserParams = CreateTenantUserParams {
3 tenant_id: "acme-corp-tenant".to_string(),
4 create_tenant_user_body: models::CreateTenantUserBody {
5 username: "jane.doe".to_string(),
6 email: "jane.doe@acme.com".to_string(),
7 display_name: Some("Jane Doe".to_string()),
8 roles: Some(vec!["reader".to_string(), "commenter".to_string()]),
9 locale: Some("en-US".to_string()),
10 is_verified: Some(true),
11 },
12};
13
14let response: CreateTenantUser200Response = create_tenant_user(&configuration, params).await?;
15

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

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
idStringDa
delete_commentsStringNe
comment_delete_modeStringNe

Odgovor

Vraća: FlagCommentPublic200Response

Primjer

delete_tenant_user Primjer
Copy Copy
1
2async fn run() -> Result<FlagCommentPublic200Response, Error> {
3 let params: DeleteTenantUserParams = DeleteTenantUserParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "user-9876".to_string(),
6 delete_comments: Some("true".to_string()),
7 comment_delete_mode: Some("permanent".to_string()),
8 };
9 let response: FlagCommentPublic200Response = delete_tenant_user(&configuration, params).await?;
10 Ok(response)
11}
12

Добиј корисника тенанта Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
idStringDa

Odgovor

Vraća: GetTenantUser200Response

Primjer

get_tenant_user Primjer
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: GetTenantUserParams = GetTenantUserParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "user-9a4f2e".to_string(),
6 expand: Some(vec!["roles".to_string(), "preferences".to_string()]),
7 };
8 let user_response: GetTenantUser200Response = get_tenant_user(&configuration, params).await?;
9 println!("{:#?}", user_response);
10 Ok(())
11}
12

Добиј кориснике тенанта Internal Link

Parametri

ImeTipObaveznoOpis
tenant_idStringDa
skipf64Ne

Odgovor

Vraća: GetTenantUsers200Response

Primjer

get_tenant_users Primjer
Copy Copy
1
2async fn example_get_tenant_users() -> Result<(), Error> {
3 let params: GetTenantUsersParams = GetTenantUsersParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 skip: Some(20.0),
6 };
7 let users: GetTenantUsers200Response = get_tenant_users(&configuration, params).await?;
8 let _users = users;
9 Ok(())
10}
11

Замијени корисника тенанта Internal Link

Параметри

NameTypeRequiredDescription
tenant_idStringYes
idStringYes
replace_tenant_user_bodymodels::ReplaceTenantUserBodyYes
update_commentsStringNo

Одговор

Враћа: FlagCommentPublic200Response

Пример

replace_tenant_user Пример
Copy Copy
1
2let params: ReplaceTenantUserParams = ReplaceTenantUserParams {
3 tenant_id: "acme-corp-tenant".to_string(),
4 id: "user-42".to_string(),
5 replace_tenant_user_body: models::ReplaceTenantUserBody {
6 user_id: "user-42".to_string(),
7 display_name: "Jane Doe".to_string(),
8 email: "jane.doe@acme.com".to_string(),
9 roles: vec!["moderator".to_string()],
10 },
11 update_comments: Some("true".to_string()),
12};
13let response: FlagCommentPublic200Response = replace_tenant_user(&configuration, params).await?
14

Параметри

НазивТипОбавезноОпис
tenant_idStringДа
idStringДа
redirect_urlStringНе

Одговор

Враћа: FlagCommentPublic200Response

Пример

send_login_link Пример
Copy Copy
1
2async fn send_login_example() -> Result<FlagCommentPublic200Response, Error> {
3 let params: SendLoginLinkParams = SendLoginLinkParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 id: String::from("user-98765"),
6 redirect_url: Some(String::from("https://acme.example.com/dashboard")),
7 };
8 let response: FlagCommentPublic200Response = send_login_link(&configuration, params).await?;
9 Ok(response)
10}
11

Ажурирај корисника тенанта Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
idStringDa
update_tenant_user_bodymodels::UpdateTenantUserBodyDa
update_commentsStringNe

Odgovor

Vraća: FlagCommentPublic200Response

Primjer

update_tenant_user Primjer
Copy Copy
1
2async fn run_update_tenant_user(configuration: &configuration::Configuration) -> Result<FlagCommentPublic200Response, Error> {
3 let params: UpdateTenantUserParams = UpdateTenantUserParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "user-7b9f".to_string(),
6 update_tenant_user_body: models::UpdateTenantUserBody {
7 email: Some("jane.doe@acme.com".to_string()),
8 display_name: Some("Jane Doe".to_string()),
9 username: Some("jdoe".to_string()),
10 role: Some("moderator".to_string()),
11 },
12 update_comments: Some("Promoted to moderator to handle flagged comments".to_string()),
13 };
14 let response = update_tenant_user(configuration, params).await?;
15 Ok(response)
16}
17

Креирај тенанта Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
create_tenant_bodymodels::CreateTenantBodyDa

Odgovor

Vraća: CreateTenant200Response

Primjer

create_tenant Primjer
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: CreateTenantParams = CreateTenantParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 create_tenant_body: models::CreateTenantBody {
6 name: "Acme Corporation".to_string(),
7 primary_domain: Some("acme.example.com".to_string()),
8 admin_email: Some("admin@acme.example.com".to_string()),
9 api_domain_configuration: Some(models::ApiDomainConfiguration {
10 primary_domain: Some("acme.example.com".to_string()),
11 allowed_origins: Some(vec![
12 "https://acme.example.com".to_string(),
13 "https://www.acme.com".to_string()
14 ]),
15 ..Default::default()
16 }),
17 billing_info: Some(models::BillingInfo {
18 plan: "business".to_string(),
19 company_name: Some("Acme Corporation".to_string()),
20 contact_email: Some("billing@acme.example.com".to_string()),
21 ..Default::default()
22 }),
23 imported_sites: Some(vec![models::ImportedSiteType {
24 site_id: "news/site-1".to_string(),
25 origin: Some("https://news.acme.com".to_string()),
26 ..Default::default()
27 }]),
28 ..Default::default()
29 },
30 };
31 let response: CreateTenant200Response = create_tenant(&configuration, params).await?;
32 Ok(())
33}
34

Обриши тенанта Internal Link

Параметри

НазивТипОбавезноОпис
tenant_idStringДа
idStringДа
sureStringНе

Одговор

Враћа: FlagCommentPublic200Response

Пример

delete_tenant Пример
Copy Copy
1
2let params: DeleteTenantParams = DeleteTenantParams {
3 tenant_id: String::from("acme-corp-tenant"),
4 id: String::from("acme-corp-tenant-001"),
5 sure: Some(String::from("confirm-delete")),
6};
7let response: FlagCommentPublic200Response = delete_tenant(&configuration, params).await?;
8

Добиј тенанта Internal Link

Parametri

ImeTipObaveznoOpis
tenant_idStringDa
idStringDa

Odgovor

Vraća: GetTenant200Response

Primjer

get_tenant Primjer
Copy Copy
1
2async fn run_get_tenant() -> Result<GetTenant200Response, Error> {
3 let params: GetTenantParams = GetTenantParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "news/site-42".to_string(),
6 expand: Some(vec!["domains".to_string(), "billing".to_string()]),
7 };
8 let tenant: GetTenant200Response = get_tenant(&configuration, params).await?;
9 Ok(tenant)
10}
11

Добиј тенанте Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
metaStringNe
skipf64Ne

Odgovor

Vraća: GetTenants200Response

Primjer

get_tenants Primjer
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: GetTenantsParams = GetTenantsParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 meta: Some("news/article".to_string()),
6 skip: Some(10.0),
7 };
8 let response: GetTenants200Response = get_tenants(&configuration, params).await?;
9 println!("{:#?}", response);
10 Ok(())
11}
12

Ажурирај тенанта Internal Link


Параметри

НазивТипОбавезноОпис
tenant_idStringДа
idStringДа
update_tenant_bodymodels::UpdateTenantBodyДа

Одговор

Враћа: FlagCommentPublic200Response

Пример

update_tenant Пример
Copy Copy
1
2let params: UpdateTenantParams = UpdateTenantParams {
3 tenant_id: "acme-corp-tenant".to_string(),
4 id: "site-42".to_string(),
5 update_tenant_body: models::UpdateTenantBody {
6 name: Some("Acme Corporation".to_string()),
7 api_domain_configuration: Some(models::ApiDomainConfiguration {
8 primary_domain: Some("comments.acme.com".to_string()),
9 allowed_domains: Some(vec!["acme.com".to_string(), "www.acme.com".to_string()]),
10 }),
11 billing_info: Some(models::BillingInfo {
12 plan: Some("business".to_string()),
13 billing_contact_email: Some("billing@acme.com".to_string()),
14 }),
15 sso_security_level: Some(models::SsoSecurityLevel::Strict),
16 custom_config_parameters: Some(models::CustomConfigParameters {
17 max_comment_length: Some(2000),
18 enable_moderation_queue: Some(true),
19 }),
20 },
21};
22let response: FlagCommentPublic200Response = update_tenant(&configuration, params).await?;
23

Промијени стање тикета Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
user_idStringДа
idStringДа
change_ticket_state_bodymodels::ChangeTicketStateBodyДа

Одговор

Враћа: ChangeTicketState200Response

Пример

Пример change_ticket_state
Copy Copy
1
2async fn run() -> Result<ChangeTicketState200Response, Error> {
3 let params: ChangeTicketStateParams = ChangeTicketStateParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 user_id: "agent_jdoe".to_string(),
6 id: "ticket-2026-03-25-001".to_string(),
7 change_ticket_state_body: models::ChangeTicketStateBody {
8 state: "closed".to_string(),
9 note: Some("Issue resolved after patch deployment".to_string()),
10 assignee_id: Some("agent_jdoe".to_string()),
11 priority: Some("low".to_string()),
12 },
13 };
14 let response: ChangeTicketState200Response = change_ticket_state(&configuration, params).await?;
15 Ok(response)
16}
17

Креирај тикет Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
user_idStringDa
create_ticket_bodymodels::CreateTicketBodyDa

Odgovor

Vraća: CreateTicket200Response

Primjer

create_ticket Primjer
Copy Copy
1
2async fn create_ticket_example() -> Result<CreateTicket200Response, Error> {
3 let params = CreateTicketParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 user_id: "user-12345".to_string(),
6 create_ticket_body: models::CreateTicketBody {
7 subject: "Moderation request: abusive comments".to_string(),
8 description: "Several abusive comments reported on the article 'Election 2026: Key Races'".to_string(),
9 priority: Some("high".to_string()),
10 tags: Some(vec!["moderation".to_string(), "priority-high".to_string()]),
11 reporter_email: Some("editor@news.example.com".to_string()),
12 source_url: Some("https://news.example.com/articles/election-2026-key-races".to_string()),
13 custom_fields: Some(std::collections::HashMap::from([
14 ("article_id".to_string(), "news-20260324-001".to_string())
15 ])),
16 },
17 };
18 let response: CreateTicket200Response = create_ticket(&configuration, params).await?;
19 Ok(response)
20}
21

Добиј тикет Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
idStringDa
user_idStringNe

Odgovor

Vraća: GetTicket200Response

Primjer

get_ticket Primjer
Copy Copy
1
2async fn example_get_ticket() -> Result<GetTicket200Response, Error> {
3 let params: GetTicketParams = GetTicketParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "support/ticket-2026-03-25-12345".to_string(),
6 user_id: Some("user-67890".to_string()),
7 };
8 let ticket: GetTicket200Response = get_ticket(&configuration, params).await?;
9 Ok(ticket)
10}
11

Добиј тикете Internal Link

Параметри

NameTypeRequiredDescription
tenant_idStringДа
user_idStringНе
statef64Не
skipf64Не
limitf64Не

Одговор

Враћа: GetTickets200Response

Пример

get_tickets Пример
Copy Copy
1
2async fn example_get_tickets() -> Result<(), Error> {
3 let params: GetTicketsParams = GetTicketsParams {
4 tenant_id: "acme-corp-tenant".to_owned(),
5 user_id: Some("user-9876".to_owned()),
6 state: Some(1.0),
7 skip: Some(0.0),
8 limit: Some(25.0),
9 };
10 let tickets: GetTickets200Response = get_tickets(configuration, params).await?;
11 Ok(())
12}
13

Отпреми слику Internal Link


Отпреми и промијени величину слике

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
filestd::path::PathBufДа
size_presetmodels::SizePresetНе
url_idStringНе

Одговор

Враћа: UploadImageResponse


Добиј напредак ознаке корисника по ID-у Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
idStringDa

Odgovor

Vraća: GetUserBadgeProgressById200Response

Primjer

get_user_badge_progress_by_id Primjer
Copy Copy
1
2async fn example_get_badge_progress() -> Result<GetUserBadgeProgressById200Response, Error> {
3 let cfg: &configuration::Configuration = &configuration;
4 let params = GetUserBadgeProgressByIdParams {
5 tenant_id: "acme-corp-tenant".to_string(),
6 id: "badge-007-community-builder".to_string(),
7 };
8 let response: GetUserBadgeProgressById200Response = get_user_badge_progress_by_id(cfg, params).await?;
9 Ok(response)
10}
11

Добиј напредак ознаке корисника по ID-у корисника Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
user_idStringДа

Одговор

Враћа: GetUserBadgeProgressById200Response

Пример

get_user_badge_progress_by_user_id Пример
Copy Copy
1
2async fn example() -> Result<GetUserBadgeProgressById200Response, Error> {
3 let cfg: &configuration::Configuration = &configuration;
4 let params: GetUserBadgeProgressByUserIdParams = GetUserBadgeProgressByUserIdParams {
5 tenant_id: "acme-corp-tenant".to_string(),
6 user_id: "journalist-9876".to_string(),
7 include_inactive: Some(false),
8 locale: Some("en-US".to_string()),
9 };
10 let response: GetUserBadgeProgressById200Response =
11 get_user_badge_progress_by_user_id(cfg, params).await?;
12 Ok(response)
13}
14

Добиј листу напретка ознака корисника Internal Link


Parametri

NazivTipObaveznoOpis
tenant_idStringDa
user_idStringNe
limitf64Ne
skipf64Ne

Odgovor

Vraća: GetUserBadgeProgressList200Response

Primjer

Primjer get_user_badge_progress_list
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: GetUserBadgeProgressListParams = GetUserBadgeProgressListParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 user_id: Some("user_98765".to_string()),
6 limit: Some(25.0),
7 skip: Some(0.0),
8 };
9 let response: GetUserBadgeProgressList200Response =
10 get_user_badge_progress_list(&configuration, params).await?;
11 let _response = response;
12 Ok(())
13}
14

Креирај ознаку корисника Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
create_user_badge_paramsmodels::CreateUserBadgeParamsDa

Odgovor

Vraća: CreateUserBadge200Response

Primjer

create_user_badge Primjer
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: CreateUserBadgeParams = CreateUserBadgeParams {
4 tenant_id: "acme-corp-tenant".into(),
5 create_user_badge_params: models::CreateUserBadgeParams {
6 name: "Top Contributor".into(),
7 description: Some("Awarded for sustained high-quality contributions".into()),
8 image_url: Some("https://cdn.acme.com/badges/top-contributor.png".into()),
9 criteria: Some("100 upvotes across articles and comments".into()),
10 is_active: Some(true),
11 tags: Some(vec!["community".into(), "milestone".into()]),
12 },
13 };
14 let response: CreateUserBadge200Response = create_user_badge(&configuration, params).await?;
15 Ok(())
16}
17

Обриши ознаку корисника Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
idStringДа

Одговор

Враћа: UpdateUserBadge200Response

Пример

delete_user_badge Пример
Copy Copy
1
2async fn run_delete_badge() -> Result<UpdateUserBadge200Response, Error> {
3 let params: DeleteUserBadgeParams = DeleteUserBadgeParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "badge-7890".to_string(),
6 };
7 let response: UpdateUserBadge200Response = delete_user_badge(&configuration, params).await?;
8 Ok(response)
9}
10

Добиј ознаку корисника Internal Link

Параметри

НазивТипОбавезноОпис
tenant_idStringДа
idStringДа

Одговор

Враћа: GetUserBadge200Response

Пример

get_user_badge Пример
Copy Copy
1
2async fn fetch_user_badge() -> Result<GetUserBadge200Response, Error> {
3 let params = GetUserBadgeParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "verified-journalist-badge-001".to_string(),
6 locale: Some("en-US".to_string()),
7 };
8 let badge: GetUserBadge200Response = get_user_badge(&configuration, params).await?;
9 Ok(badge)
10}
11

Добиј ознаке корисника Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
user_idStringНе
badge_idStringНе
displayed_on_commentsboolНе
limitf64Не
skipf64Не

Одговор

Враћа: GetUserBadges200Response

Пример

get_user_badges Пример
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: GetUserBadgesParams = GetUserBadgesParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 user_id: Some(String::from("user-9876")),
6 badge_id: Some(String::from("top-reviewer")),
7 displayed_on_comments: Some(true),
8 limit: Some(50.0),
9 skip: Some(0.0),
10 };
11 let response: GetUserBadges200Response = get_user_badges(&configuration, params).await?;
12 Ok(())
13}
14

Ажурирај ознаку корисника Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
idStringДа
update_user_badge_paramsmodels::UpdateUserBadgeParamsДа

Одговор

Враћа: UpdateUserBadge200Response

Пример

update_user_badge Пример
Copy Copy
1
2let params: UpdateUserBadgeParams = UpdateUserBadgeParams {
3 tenant_id: "acme-corp-tenant".to_string(),
4 id: "badge-verified-001".to_string(),
5 update_user_badge_params: models::UpdateUserBadgeParams {
6 name: Some("Verified Contributor".to_string()),
7 description: Some("Awarded for consistent, high-quality contributions".to_string()),
8 icon_url: Some("https://assets.acme.com/badges/verified.png".to_string()),
9 color_hex: Some("#1E90FF".to_string()),
10 min_posts: Some(100u32),
11 active: Some(true),
12 },
13};
14let response: UpdateUserBadge200Response = update_user_badge(&configuration, params).await?;
15

Добиј број обавјештења корисника Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
ssoStringNe

Odgovor

Vraća: GetUserNotificationCount200Response

Primjer

get_user_notification_count Primjer
Copy Copy
1
2async fn example_user_notification_count() -> Result<(), Error> {
3 let params: GetUserNotificationCountParams = GetUserNotificationCountParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 sso: Some(String::from("sso-jwt-abc123")),
6 };
7 let _response: GetUserNotificationCount200Response =
8 get_user_notification_count(&configuration, params).await?;
9 Ok(())
10}
11

Добиј обавјештења корисника Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
page_sizei32Не
after_idStringНе
include_contextboolНе
after_created_ati64Не
unread_onlyboolНе
dm_onlyboolНе
no_dmboolНе
include_translationsboolНе
ssoStringНе

Одговор

Враћа: GetUserNotifications200Response

Пример

Пример get_user_notifications
Copy Copy
1
2let params = GetUserNotificationsParams {
3 tenant_id: "acme-corp-tenant".to_string(),
4 page_size: Some(25),
5 after_id: Some("notif_98765".to_string()),
6 include_context: Some(true),
7 after_created_at: Some(1_681_500_000i64),
8 unread_only: Some(true),
9 dm_only: Some(false),
10 no_dm: Some(false),
11 include_translations: Some(true),
12 sso: Some("sso_user_token_ab12".to_string()),
13};
14let notifications: GetUserNotifications200Response = get_user_notifications(&configuration, params).await?;
15

Ресетуј број обавјештења корисника Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
ssoStringНе

Одговор

Враћа: ResetUserNotifications200Response

Пример

Пример за reset_user_notification_count
Copy Copy
1
2async fn run_reset_user_notification_count() -> Result<ResetUserNotifications200Response, Error> {
3 let params: ResetUserNotificationCountParams = ResetUserNotificationCountParams {
4 tenant_id: "acme-news-tenant".to_string(),
5 sso: Some("user-9876-token".to_string()),
6 };
7 let response: ResetUserNotifications200Response = reset_user_notification_count(&configuration, params).await?;
8 Ok(response)
9}
10

Ресетуј обавјештења корисника Internal Link

Параметри

НазивТипОбавезноОпис
tenant_idStringДа
after_idStringНе
after_created_ati64Не
unread_onlyboolНе
dm_onlyboolНе
no_dmboolНе
ssoStringНе

Одговор

Враћа: ResetUserNotifications200Response

Пример

reset_user_notifications Пример
Copy Copy
1
2async fn run_reset() -> Result<(), Error> {
3 let params: ResetUserNotificationsParams = ResetUserNotificationsParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 after_id: Some("notif_987654321".to_string()),
6 after_created_at: Some(1672531200),
7 unread_only: Some(true),
8 dm_only: Some(false),
9 no_dm: Some(false),
10 sso: Some("sso-enterprise".to_string()),
11 };
12 let resp: ResetUserNotifications200Response = reset_user_notifications(&configuration, params).await?;
13 let _ = resp;
14 Ok(())
15}
16

Ажурирај статус претплате на обавјештења о коментарима корисника Internal Link

Омогућите или онемогућите обавештења за одређени коментар.

Параметри

НазивТипОбавезноОпис
tenant_idStringДа
notification_idStringДа
opted_in_or_outStringДа
comment_idStringДа
ssoStringНе

Одговор

Враћа: UpdateUserNotificationStatus200Response

Пример

update_user_notification_comment_subscription_status Пример
Copy Copy
1
2async fn example_update_user_notification_comment_subscription_status() -> Result<(), Error> {
3 let params: UpdateUserNotificationCommentSubscriptionStatusParams = UpdateUserNotificationCommentSubscriptionStatusParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 notification_id: "notif-2026-03-25-4f2b".to_string(),
6 opted_in_or_out: "opted_out".to_string(),
7 comment_id: "cmt-98a7b6c5d4".to_string(),
8 sso: Some("sso-token-abc123".to_string()),
9 };
10 let response: UpdateUserNotificationStatus200Response =
11 update_user_notification_comment_subscription_status(&configuration, params).await?;
12 Ok(())
13}
14

Ажурирај статус претплате на обавјештења о страницама корисника Internal Link


Омогућите или онемогућите обавештења за страницу. Када су корисници претплаћени на страницу, обавештења се креирају за нове коренске коментаре, и такође

Параметри

НазивТипОбавезноОпис
tenant_idStringДа
url_idStringДа
urlStringДа
page_titleStringДа
subscribed_or_unsubscribedStringДа
ssoStringНе

Одговор

Враћа: UpdateUserNotificationStatus200Response

Пример

update_user_notification_page_subscription_status Пример
Copy Copy
1
2async fn run() -> Result<UpdateUserNotificationStatus200Response, Error> {
3 let params = UpdateUserNotificationPageSubscriptionStatusParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 url_id: String::from("article-12345"),
6 url: String::from("https://news.acme.com/articles/2026/03/25/advances-in-ai"),
7 page_title: String::from("Advances in AI: What to Expect in 2026"),
8 subscribed_or_unsubscribed: String::from("subscribed"),
9 sso: Some(String::from("user-jwt-xyz123")),
10 };
11 let response = update_user_notification_page_subscription_status(&configuration, params).await?;
12 Ok(response)
13}
14

Ажурирај статус обавјештења корисника Internal Link

Параметри

NameTypeRequiredDescription
tenant_idStringДа
notification_idStringДа
new_statusStringДа
ssoStringНе

Одговор

Враћа: UpdateUserNotificationStatus200Response

Пример

update_user_notification_status Пример
Copy Copy
1
2async fn run() -> Result<UpdateUserNotificationStatus200Response, Error> {
3 let params: UpdateUserNotificationStatusParams = UpdateUserNotificationStatusParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 notification_id: "notif-2026-04-01-7f3b".to_string(),
6 new_status: "read".to_string(),
7 sso: Some("sso-session-abcdef123456".to_string()),
8 };
9 let resp: UpdateUserNotificationStatus200Response =
10 update_user_notification_status(&configuration, params).await?;
11 Ok(resp)
12}
13

Добиј статусе присуства корисника Internal Link


Parametri

NazivTipObaveznoOpis
tenant_idStringDa
url_id_wsStringDa
user_idsStringDa

Odgovor

Vraća: GetUserPresenceStatuses200Response

Primjer

get_user_presence_statuses Primjer
Copy Copy
1
2async fn run() -> Result<GetUserPresenceStatuses200Response, Error> {
3 let tenant_id: String = "acme-corp-tenant".to_string();
4 let url_id_ws: String = "news/article".to_string();
5 let user_ids_opt: Option<String> = Some("user123,user456,user789".to_string());
6 let params = GetUserPresenceStatusesParams {
7 tenant_id,
8 url_id_ws,
9 user_ids: user_ids_opt.unwrap(),
10 };
11 let presence: GetUserPresenceStatuses200Response = get_user_presence_statuses(&configuration, params).await?;
12 Ok(presence)
13}
14

Претрага корисника Internal Link

Parametri

NameTypeRequiredDescription
tenant_idStringDa
url_idStringDa
username_starts_withStringNe
mention_group_idsVecNe
ssoStringNe
search_sectionStringNe

Odgovor

Vraća: SearchUsers200Response

Primjer

search_users Primjer
Copy Copy
1
2async fn run_search() -> Result<SearchUsers200Response, Error> {
3 let params: SearchUsersParams = SearchUsersParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 url_id: String::from("news/article-2026-03-25-launch"),
6 username_starts_with: Some(String::from("alex")),
7 mention_group_ids: Some(vec![String::from("team-marketing"), String::from("team-product")]),
8 sso: Some(String::from("okta")),
9 search_section: Some(String::from("comments")),
10 };
11 let search_result: SearchUsers200Response = search_users(&configuration, params).await?;
12 Ok(search_result)
13}
14

Добиј корисника Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
idStringДа

Одговор

Враћа: GetUser200Response

Пример

get_user Пример
Copy Copy
1
2pub async fn run_get_user_example() -> Result<(), Error> {
3 let tenant: Option<String> = Some("acme-corp-tenant".to_string());
4 let params: GetUserParams = GetUserParams {
5 tenant_id: tenant.unwrap(),
6 id: "user-9f8b3c".to_string(),
7 };
8 let user: GetUser200Response = get_user(&configuration, params).await?;
9 Ok(())
10}
11

Креирај глас Internal Link

Параметри

ИмеТипПотребноОпис
tenant_idStringДа
comment_idStringДа
directionStringДа
user_idStringНе
anon_user_idStringНе

Одговор

Враћа: VoteComment200Response

Пример

create_vote Пример
Copy Copy
1
2async fn example_create_vote() -> Result<(), Error> {
3 let params: CreateVoteParams = CreateVoteParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 comment_id: "news/article/12345".to_string(),
6 direction: "up".to_string(),
7 user_id: Some("user-9876".to_string()),
8 anon_user_id: Some("anon-01-abcdef".to_string()),
9 };
10
11 let response: VoteComment200Response = create_vote(&configuration, params).await?;
12 println!("{:?}", response);
13 Ok(())
14}
15

Обриши глас Internal Link

Parametri

NazivTipObaveznoOpis
tenant_idStringDa
idStringDa
edit_keyStringNe

Odgovor

Vraća: DeleteCommentVote200Response

Primjer

delete_vote Primjer
Copy Copy
1
2async fn delete_vote_example() -> Result<DeleteCommentVote200Response, Error> {
3 let params: DeleteVoteParams = DeleteVoteParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "comment-98765".to_string(),
6 edit_key: Some("edit-4f2b9c".to_string()),
7 };
8 let response: DeleteCommentVote200Response = delete_vote(&configuration, params).await?;
9 Ok(response)
10}
11

Добиј гласове Internal Link

Параметри

NameTypeRequiredDescription
tenant_idStringДа
url_idStringДа

Одговор

Враћа: GetVotes200Response

Пример

Пример get_votes
Copy Copy
1
2async fn fetch_votes() -> Result<GetVotes200Response, Error> {
3 let params: GetVotesParams = GetVotesParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 url_id: "news/article/2026/03/25/breaking-story".to_string(),
6 include_replies: Some(true),
7 };
8 let votes: GetVotes200Response = get_votes(&configuration, params).await?;
9 Ok(votes)
10}
11

Добиј гласове за корисника Internal Link

Параметри

ИмеТипОбавезноОпис
tenant_idStringДа
url_idStringДа
user_idStringНе
anon_user_idStringНе

Одговор

Враћа: GetVotesForUser200Response

Пример

get_votes_for_user Пример
Copy Copy
1
2async fn example_get_votes_for_user() -> Result<(), Error> {
3 let params: GetVotesForUserParams = GetVotesForUserParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 url_id: String::from("news/article-2026-03-fastcomments-launch"),
6 user_id: Some(String::from("user_12345")),
7 anon_user_id: Some(String::from("anon_9f2e7b")),
8 };
9 let votes: GetVotesForUser200Response = get_votes_for_user(&configuration, params).await?;
10 Ok(())
11}
12

Треба помоћ?

Ако наиђете на било какве проблеме или имате питања у вези Rust SDK-а, молимо вас:

Како допринети

Допринози су добродошли! Молимо посјетите GitHub репозиторијум за упутства о доприносу.