FastComments.com

FastComments Rust SDK

Dies ist das offizielle Rust SDK für FastComments.

Offizielles Rust SDK für die FastComments API

Repository

Auf GitHub ansehen


Installation Internal Link

cargo add fastcomments-sdk

Das SDK setzt die Rust-Edition 2021 oder neuer voraus.

Bibliotheksinhalte Internal Link


Das FastComments Rust SDK besteht aus mehreren Modulen:

  • Client Module - Automatisch generierter API-Client für FastComments REST APIs

    • Vollständige Typdefinitionen für alle API-Modelle
    • Sowohl authentifizierte (DefaultApi) als auch öffentliche (PublicApi) Endpunkte
    • Volle async/await-Unterstützung mit tokio
    • Siehe client/README.md für detaillierte API-Dokumentation
  • SSO Module - Serverseitige Single Sign-On-Dienstprogramme

    • Sichere Token-Generierung zur Benutzer-Authentifizierung
    • Unterstützung sowohl für einfache als auch für sichere SSO-Modi
    • HMAC-SHA256-basierte Token-Signierung
  • Core Types - Gemeinsame Typdefinitionen und Dienstprogramme

    • Kommentar-Modelle und Metadatenstrukturen
    • Benutzer- und Mandantenkonfigurationen
    • Hilfsfunktionen für gängige Operationen

Schnellstart Internal Link

Verwendung der öffentlichen API

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

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

    // Kommentare für eine Seite abrufen
    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),
    }
}

Verwendung der authentifizierten API

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

#[tokio::main]
async fn main() {
    // Konfiguration mit API-Schlüssel erstellen
    let mut config = Configuration::new();
    config.api_key = Some(ApiKey {
        prefix: None,
        key: "your-api-key".to_string(),
    });

    // Kommentare mit der authentifizierten API abrufen
    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),
    }
}

SSO zur Authentifizierung verwenden

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

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

    // Sichere SSO-Benutzerdaten erstellen (nur serverseitig!)
    let user_data = SecureSSOUserData::new(
        "user-123".to_string(),           // Benutzer-ID
        "user@example.com".to_string(),   // E-Mail
        "John Doe".to_string(),            // Benutzername
        "https://example.com/avatar.jpg".to_string(), // Avatar-URL
    );

    // SSO-Token generieren
    let sso = FastCommentsSSO::new_secure(api_key, &user_data).unwrap();
    let token = sso.create_token().unwrap();

    println!("SSO Token: {}", token);
    // Übergeben Sie dieses Token an Ihr Frontend zur Authentifizierung
}

Häufige Probleme Internal Link

401 Unauthorized-Fehler

Wenn Sie 401-Fehler erhalten, wenn Sie die authentifizierte API verwenden:

  1. Überprüfen Sie Ihren API-Schlüssel: Stellen Sie sicher, dass Sie den richtigen API-Schlüssel aus Ihrem FastComments-Dashboard verwenden
  2. Überprüfen Sie die Tenant-ID: Stellen Sie sicher, dass die Tenant-ID mit Ihrem Konto übereinstimmt
  3. API-Schlüssel-Format: Der API-Schlüssel sollte in der Configuration übergeben werden:
let mut config = Configuration::new();
config.api_key = Some(ApiKey {
    prefix: None,
    key: "YOUR_API_KEY".to_string(),
});

SSO-Token-Probleme

Wenn SSO-Tokens nicht funktionieren:

  1. Sicheren Modus in Produktionsumgebungen verwenden: Verwenden Sie in der Produktion immer FastCommentsSSO::new_secure() mit Ihrem API-Schlüssel
  2. Nur serverseitig: Erzeugen Sie SSO-Tokens auf Ihrem Server, geben Sie Ihren API-Schlüssel niemals an Clients weiter
  3. Überprüfen Sie Benutzerdaten: Stellen Sie sicher, dass alle erforderlichen Felder (id, email, username) vorhanden sind

Async-Runtime-Fehler

Das SDK verwendet tokio für asynchrone Operationen. Stellen Sie sicher, dass Sie:

  1. Fügen Sie tokio zu Ihren Abhängigkeiten hinzu:

    [dependencies]
    tokio = { version = "1", features = ["full"] }
  2. Verwenden Sie die tokio-Runtime:

    #[tokio::main]
    async fn main() {
     // Ihr asynchroner Code hier
    }

Hinweise Internal Link

Broadcast-IDs

Sie werden sehen, dass Sie in einigen API-Aufrufen eine broadcastId übergeben sollen. Wenn Sie Events erhalten, bekommen Sie diese ID zurück, sodass Sie das Event ignorieren können, falls Sie vorhaben, Änderungen auf dem Client optimistisch anzuwenden (was Sie wahrscheinlich tun möchten, da es die beste Erfahrung bietet). Geben Sie hier eine UUID an. Die ID sollte ausreichend einzigartig sein, damit sie in einer Browsersitzung nicht zweimal vorkommt.

Aggregieren Internal Link

Fasst Dokumente zusammen, indem sie gruppiert werden (falls groupBy angegeben ist) und mehrere Operationen angewendet werden. Verschiedene Operationen (z. B. sum, countDistinct, avg usw.) werden unterstützt.

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
aggregation_request models::AggregationRequest Ja
parent_tenant_id String Nein
include_stats bool Nein

Antwort

Gibt zurück: AggregationResponse


Audit-Protokolle abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
limit f64 Nein
skip f64 Nein
order models::SortDir Nein
after f64 Nein
before f64 Nein

Antwort

Gibt zurück: GetAuditLogs200Response

Beispiel

get_audit_logs Beispiel
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

Vom Kommentar blockieren (öffentlich) Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
comment_id String Ja
public_block_from_comment_params models::PublicBlockFromCommentParams Ja
sso String Nein

Antwort

Gibt zurück: BlockFromCommentPublic200Response

Beispiel

block_from_comment_public Beispiel
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

Kommentar-Blockierung aufheben (öffentlich) Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
comment_id String Ja
public_block_from_comment_params models::PublicBlockFromCommentParams Ja
sso String Nein

Antwort

Gibt zurück: UnBlockCommentPublic200Response

Beispiel

un_block_comment_public Beispiel
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

Prüfung gesperrter Kommentare Internal Link


Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
comment_ids String Ja
sso String Nein

Antwort

Gibt zurück: CheckedCommentsForBlocked200Response

Beispiel

checked_comments_for_blocked Beispiel
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

Benutzer vom Kommentar blockieren Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
block_from_comment_params models::BlockFromCommentParams Ja
user_id String Nein
anon_user_id String Nein

Antwort

Gibt zurück: BlockFromCommentPublic200Response

Beispiel

Beispiel für 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

Kommentar erstellen (öffentlich) Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
url_id String Ja
broadcast_id String Ja
comment_data models::CommentData Ja
session_id String Nein
sso String Nein

Antwort

Rückgabe: CreateCommentPublic200Response

Beispiel

create_comment_public Beispiel
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

Kommentar löschen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
context_user_id String Nein
is_live bool Nein

Antwort

Gibt zurück: DeleteComment200Response

Beispiel

delete_comment Beispiel
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

Kommentar löschen (öffentlich) Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
comment_id String Ja
broadcast_id String Ja
edit_key String Nein
sso String Nein

Antwort

Gibt zurück: DeleteCommentPublic200Response

Beispiel

delete_comment_public Beispiel
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

Kommentarbewertung löschen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
comment_id String Ja
vote_id String Ja
url_id String Ja
broadcast_id String Ja
edit_key String Nein
sso String Nein

Antwort

Gibt zurück: DeleteCommentVote200Response

Beispiel

delete_comment_vote Beispiel
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

Kommentar melden Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
user_id String Nein
anon_user_id String Nein

Antwort

Gibt zurück: FlagComment200Response

Beispiel

flag_comment Beispiel
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

Kommentar abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: GetComment200Response

Beispiel

get_comment Beispiel
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

Kommentartext abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
comment_id String Ja
edit_key String Nein
sso String Nein

Response

Gibt zurück: GetCommentText200Response

Beispiel

get_comment_text Beispiel
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

Nutzernamen der Kommentarbewertung abrufen Internal Link

Parameter

Name Type Required Description
tenant_id String Ja
comment_id String Ja
dir i32 Ja
sso String Nein

Antwort

Gibt zurück: GetCommentVoteUserNames200Response

Beispiel

get_comment_vote_user_names Beispiel
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

Kommentare abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
page i32 Nein
limit i32 Nein
skip i32 Nein
as_tree bool Nein
skip_children i32 Nein
limit_children i32 Nein
max_tree_depth i32 Nein
url_id String Nein
user_id String Nein
anon_user_id String Nein
context_user_id String Nein
hash_tag String Nein
parent_id String Nein
direction models::SortDirections Nein

Antwort

Gibt zurück: GetComments200Response

Beispiel

get_comments Beispiel
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

Kommentare abrufen (öffentlich) Internal Link

req tenantId urlId

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
url_id String Ja
page i32 Nein
direction models::SortDirections Nein
sso String Nein
skip i32 Nein
skip_children i32 Nein
limit i32 Nein
limit_children i32 Nein
count_children bool Nein
fetch_page_for_comment_id String Nein
include_config bool Nein
count_all bool Nein
includei10n bool Nein
locale String Nein
modules String Nein
is_crawler bool Nein
include_notification_count bool Nein
as_tree bool Nein
max_tree_depth i32 Nein
use_full_translation_ids bool Nein
parent_id String Nein
search_text String Nein
hash_tags Vec Nein
user_id String Nein
custom_config_str String Nein
after_comment_id String Nein
before_comment_id String Nein

Antwort

Gibt zurück: GetCommentsPublic200Response

Beispiel

get_comments_public Beispiel
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

Kommentar sperren Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
comment_id String Ja
broadcast_id String Ja
sso String Nein

Antwort

Gibt zurück: LockComment200Response

Beispiel

lock_comment Beispiel
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

Kommentar anpinnen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
comment_id String Ja
broadcast_id String Ja
sso String Nein

Antwort

Gibt zurück: PinComment200Response

Beispiel

pin_comment Beispiel
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

Kommentar speichern Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
create_comment_params models::CreateCommentParams Ja
is_live bool Nein
do_spam_check bool Nein
send_emails bool Nein
populate_notifications bool Nein

Antwort

Gibt zurück: SaveComment200Response

Beispiel

save_comment Beispiel
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

Kommentare im Bulk speichern Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
create_comment_params Vecmodels::CreateCommentParams Ja
is_live bool Nein
do_spam_check bool Nein
send_emails bool Nein
populate_notifications bool Nein

Antwort

Gibt zurück: Vec<models::SaveComment200Response>

Beispiel

Beispiel für 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

Kommentartext festlegen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
comment_id String Ja
broadcast_id String Ja
comment_text_update_request models::CommentTextUpdateRequest Ja
edit_key String Nein
sso String Nein

Antwort

Gibt zurück: SetCommentText200Response

Beispiel

Beispiel für 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

Benutzerblockierung vom Kommentar aufheben Internal Link

Parameter

Name Type Erforderlich Beschreibung
tenant_id String Ja
id String Ja
un_block_from_comment_params models::UnBlockFromCommentParams Ja
user_id String Nein
anon_user_id String Nein

Antwort

Gibt zurück: UnBlockCommentPublic200Response

Beispiel

un_block_user_from_comment Beispiel
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

Meldung des Kommentars aufheben Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
user_id String Nein
anon_user_id String Nein

Antwort

Gibt zurück: FlagComment200Response

Beispiel

un_flag_comment Beispiel
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

Kommentar entsperren Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
comment_id String Ja
broadcast_id String Ja
sso String Nein

Antwort

Gibt zurück: LockComment200Response

Beispiel

un_lock_comment Beispiel
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

Anheften aufheben Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
comment_id String Ja
broadcast_id String Ja
sso String Nein

Antwort

Gibt zurück: PinComment200Response

Beispiel

un_pin_comment Beispiel
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

Kommentar aktualisieren Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
updatable_comment_params models::UpdatableCommentParams Ja
context_user_id String Nein
do_spam_check bool Nein
is_live bool Nein

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

update_comment Beispiel
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

Für Kommentar abstimmen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
comment_id String Ja
url_id String Ja
broadcast_id String Ja
vote_body_params models::VoteBodyParams Ja
session_id String Nein
sso String Nein

Antwort

Gibt zurück: VoteComment200Response

Beispiel

vote_comment Beispiel
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

Domain-Konfiguration hinzufügen Internal Link


Parameter

Name Type Erforderlich Beschreibung
tenant_id String Ja
add_domain_config_params models::AddDomainConfigParams Ja

Antwort

Gibt zurück: AddDomainConfig200Response


Domain-Konfiguration löschen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
domain String Ja

Antwort

Gibt zurück: DeleteDomainConfig200Response


Domain-Konfiguration abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
domain String Ja

Antwort

Gibt zurück: GetDomainConfig200Response


Domain-Konfigurationen abrufen Internal Link


Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja

Antwort

Gibt zurück: GetDomainConfigs200Response


Domain-Konfiguration anpassen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
domain_to_update String Ja
patch_domain_config_params models::PatchDomainConfigParams Ja

Antwort

Gibt zurück: GetDomainConfig200Response


Domain-Konfiguration ersetzen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
domain_to_update String Ja
update_domain_config_params models::UpdateDomainConfigParams Ja

Antwort

Gibt zurück: GetDomainConfig200Response

E-Mail-Vorlage erstellen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
create_email_template_body models::CreateEmailTemplateBody Ja

Antwort

Gibt zurück: CreateEmailTemplate200Response

Beispiel

create_email_template Beispiel
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

E-Mail-Vorlage löschen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

delete_email_template Beispiel
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

Renderfehler der E-Mail-Vorlage löschen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
error_id String Ja

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

delete_email_template_render_error Beispiel
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

E-Mail-Vorlage abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: GetEmailTemplate200Response

Beispiel

get_email_template Beispiel
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

E-Mail-Vorlagen-Definitionen abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja

Antwort

Gibt zurück: GetEmailTemplateDefinitions200Response

Beispiel

Beispiel für get_email_template_definitions
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

Renderfehler der E-Mail-Vorlagen abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
skip f64 Nein

Antwort

Gibt zurück: GetEmailTemplateRenderErrors200Response

Beispiel

Beispiel für 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

E-Mail-Vorlagen abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
skip f64 Nein

Antwort

Gibt zurück: GetEmailTemplates200Response

Beispiel

get_email_templates Beispiel
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

E-Mail-Vorlage rendern Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
render_email_template_body models::RenderEmailTemplateBody Ja
locale String Nein

Antwort

Gibt zurück: RenderEmailTemplate200Response

Beispiel

render_email_template Beispiel
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

E-Mail-Vorlage aktualisieren Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
update_email_template_body models::UpdateEmailTemplateBody Ja

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

Beispiel für 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

Ereignisprotokoll abrufen Internal Link

req tenantId urlId userIdWS

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
url_id String Ja
user_id_ws String Ja
start_time i64 Ja
end_time i64 Ja

Antwort

Gibt zurück: GetEventLog200Response

Beispiel

get_event_log Beispiel
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

Globales Ereignisprotokoll abrufen Internal Link

req tenantId urlId userIdWS

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
url_id String Ja
user_id_ws String Ja
start_time i64 Ja
end_time i64 Ja

Antwort

Gibt zurück: GetEventLog200Response

Beispiel

get_global_event_log Beispiel
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

Feed-Beitrag erstellen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
create_feed_post_params models::CreateFeedPostParams Ja
broadcast_id String Nein
is_live bool Nein
do_spam_check bool Nein
skip_dup_check bool Nein

Antwort

Gibt zurück: CreateFeedPost200Response

Beispiel

Beispiel für 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

Feed-Beitrag erstellen (öffentlich) Internal Link


Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
create_feed_post_params models::CreateFeedPostParams Ja
broadcast_id String Nein
sso String Nein

Antwort

Gibt zurück: CreateFeedPostPublic200Response

Beispiel

create_feed_post_public Beispiel
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

Feed-Beitrag löschen (öffentlich) Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
post_id String Ja
broadcast_id String Nein
sso String Nein

Antwort

Gibt zurück: DeleteFeedPostPublic200Response

Beispiel

delete_feed_post_public Beispiel
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

Feed-Beiträge abrufen Internal Link

req tenantId afterId

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
after_id String Nein
limit i32 Nein
tags Vec Nein

Antwort

Gibt zurück: GetFeedPosts200Response

Beispiel

get_feed_posts Beispiel
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

Feed-Beiträge abrufen (öffentlich) Internal Link

req tenantId afterId

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
after_id String Nein
limit i32 Nein
tags Vec Nein
sso String Nein
is_crawler bool Nein
include_user_info bool Nein

Antwort

Gibt zurück: GetFeedPostsPublic200Response

Beispiel

get_feed_posts_public Beispiel
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

Statistiken der Feed-Beiträge abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
post_ids Vec Ja
sso String Nein

Antwort

Gibt zurück: GetFeedPostsStats200Response

Beispiel

get_feed_posts_stats Beispiel
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

Nutzerreaktionen abrufen (öffentlich) Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Yes
post_ids Vec No
sso String No

Antwort

Gibt zurück: GetUserReactsPublic200Response

Beispiel

get_user_reacts_public Beispiel
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

Auf Feed-Beitrag reagieren (öffentlich) Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
post_id String Ja
react_body_params models::ReactBodyParams Ja
is_undo bool Nein
broadcast_id String Nein
sso String Nein

Antwort

Gibt zurück: ReactFeedPostPublic200Response

Beispiel

react_feed_post_public Beispiel
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

Feed-Beitrag aktualisieren Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
feed_post models::FeedPost Ja

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

update_feed_post Beispiel
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

Feed-Beitrag aktualisieren (öffentlich) Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
post_id String Ja
update_feed_post_params models::UpdateFeedPostParams Ja
broadcast_id String Nein
sso String Nein

Antwort

Rückgabe: CreateFeedPostPublic200Response

Beispiel

update_feed_post_public Beispiel
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

Kommentar melden (öffentlich) Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
comment_id String Ja
is_flagged bool Ja
sso String Nein

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

flag_comment_public Beispiel
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

Hashtag hinzufügen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Nein
create_hash_tag_body models::CreateHashTagBody Nein

Antwort

Gibt zurück: AddHashTag200Response

Beispiel

Beispiel für 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

Hashtags im Bulk hinzufügen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Nein
bulk_create_hash_tags_body models::BulkCreateHashTagsBody Nein

Antwort

Gibt zurück: AddHashTagsBulk200Response

Beispiel

add_hash_tags_bulk Beispiel
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

Hashtag löschen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tag String Ja
tenant_id String Nein
delete_hash_tag_request models::DeleteHashTagRequest Nein

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

delete_hash_tag Beispiel
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

Hashtags abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
page f64 Nein

Antwort

Gibt zurück: GetHashTags200Response

Beispiel

Beispiel für 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

Hashtag anpassen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tag String Ja
tenant_id String Nein
update_hash_tag_body models::UpdateHashTagBody Nein

Antwort

Gibt zurück: PatchHashTag200Response

Beispiel

patch_hash_tag Beispiel
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

Moderator erstellen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Yes
create_moderator_body models::CreateModeratorBody Yes

Antwort

Gibt zurück: CreateModerator200Response

Beispiel

create_moderator Beispiel
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

Moderator löschen Internal Link

Parameter

Name Type Required Description
tenant_id String Ja
id String Ja
send_email String Nein

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

delete_moderator Beispiel
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

Moderator abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: GetModerator200Response

Beispiel

get_moderator Beispiel
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

Moderatoren abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
skip f64 Nein

Antwort

Gibt zurück: GetModerators200Response

Beispiel

get_moderators Beispiel
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

Einladung senden Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
from_name String Ja

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

send_invite Beispiel
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

Moderator aktualisieren Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
update_moderator_body models::UpdateModeratorBody Ja

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

update_moderator Beispiel
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

Benachrichtigungszähler löschen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

delete_notification_count Beispiel
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

Zwischengespeicherten Benachrichtigungszähler abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: GetCachedNotificationCount200Response

Beispiel

get_cached_notification_count Beispiel
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

Benachrichtigungsanzahl abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
user_id String Nein
url_id String Nein
from_comment_id String Nein
viewed bool Nein

Antwort

Gibt zurück: GetNotificationCount200Response

Beispiel

get_notification_count Beispiel
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

Benachrichtigungen abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
user_id String Nein
url_id String Nein
from_comment_id String Nein
viewed bool Nein
skip f64 Nein

Antwort

Gibt zurück: GetNotifications200Response

Beispiel

get_notifications Beispiel
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

Benachrichtigung aktualisieren Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
update_notification_body models::UpdateNotificationBody Ja
user_id String Nein

Response

Gibt zurück: FlagCommentPublic200Response

Beispiel

update_notification Beispiel
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

Seite hinzufügen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
create_api_page_data models::CreateApiPageData Ja

Antwort

Gibt zurück: AddPageApiResponse


Seite löschen Internal Link


Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: DeletePageApiResponse


Seite per URL-ID abrufen Internal Link


Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
url_id String Ja

Antwort

Gibt zurück: GetPageByUrlidApiResponse


Seiten abrufen Internal Link


Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja

Antwort

Gibt zurück: GetPagesApiResponse


Seite anpassen Internal Link

Parameters

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
update_api_page_data models::UpdateApiPageData Ja

Antwort

Gibt zurück: PatchPageApiResponse

Ausstehendes Webhook-Ereignis löschen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

delete_pending_webhook_event Beispiel
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

Anzahl ausstehender Webhook-Ereignisse abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
comment_id String Nein
external_id String Nein
event_type String Nein
domain String Nein
attempt_count_gt f64 Nein

Antwort

Gibt zurück: GetPendingWebhookEventCount200Response

Beispiel

get_pending_webhook_event_count Beispiel
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

Ausstehende Webhook-Ereignisse abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
comment_id String Nein
external_id String Nein
event_type String Nein
domain String Nein
attempt_count_gt f64 Nein
skip f64 Nein

Antwort

Gibt zurück: GetPendingWebhookEvents200Response

Beispiel

Beispiel für 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

Fragekonfiguration erstellen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
create_question_config_body models::CreateQuestionConfigBody Ja

Antwort

Gibt zurück: CreateQuestionConfig200Response

Beispiel

create_question_config Beispiel
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

Fragekonfiguration löschen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

delete_question_config Beispiel
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

Fragekonfiguration abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: GetQuestionConfig200Response

Beispiel

get_question_config Beispiel
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

Fragekonfigurationen abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
skip f64 Nein

Antwort

Gibt zurück: GetQuestionConfigs200Response

Beispiel

get_question_configs Beispiel
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

Fragekonfiguration aktualisieren Internal Link

Parameter

Name Type Erforderlich Beschreibung
tenant_id String Ja
id String Ja
update_question_config_body models::UpdateQuestionConfigBody Ja

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

update_question_config Beispiel
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

Frageergebnis erstellen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
create_question_result_body models::CreateQuestionResultBody Ja

Antwort

Gibt zurück: CreateQuestionResult200Response

Beispiel

create_question_result Beispiel
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

Frageergebnis löschen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

delete_question_result Beispiel
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

Frageergebnis abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: GetQuestionResult200Response

Beispiel

get_question_result Beispiel
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

Frageergebnisse abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
url_id String Nein
user_id String Nein
start_date String Nein
question_id String Nein
question_ids String Nein
skip f64 Nein

Antwort

Gibt zurück: GetQuestionResults200Response

Beispiel

get_question_results Beispiel
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

Frageergebnis aktualisieren Internal Link


Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
update_question_result_body models::UpdateQuestionResultBody Ja

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

Beispiel für 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

Frageergebnisse aggregieren Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
question_id String Nein
question_ids Vec Nein
url_id String Nein
time_bucket models::AggregateTimeBucket Nein
start_date String Nein
force_recalculate bool Nein

Antwort

Gibt zurück: AggregateQuestionResults200Response

Beispiel

aggregate_question_results Beispiel
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

Frageergebnisse im Bulk aggregieren Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
bulk_aggregate_question_results_request models::BulkAggregateQuestionResultsRequest Ja
force_recalculate bool Nein

Antwort

Gibt zurück: BulkAggregateQuestionResults200Response

Beispiel

bulk_aggregate_question_results Beispiel
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

Kommentare mit Frageergebnissen kombinieren Internal Link

Parameter

Name Type Erforderlich Beschreibung
tenant_id String Ja
question_id String Nein
question_ids Vec Nein
url_id String Nein
start_date String Nein
force_recalculate bool Nein
min_value f64 Nein
max_value f64 Nein
limit f64 Nein

Antwort

Gibt zurück: CombineCommentsWithQuestionResults200Response

Beispiel

combine_comments_with_question_results Beispiel
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-Benutzer hinzufügen Internal Link


Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
create_apisso_user_data models::CreateApissoUserData Ja

Antwort

Gibt zurück: AddSsoUserApiResponse


SSO-Benutzer löschen Internal Link


Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
delete_comments bool Nein
comment_delete_mode String Nein

Antwort

Gibt zurück: DeleteSsoUserApiResponse


SSO-Benutzer per E-Mail abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
email String Ja

Antwort

Gibt zurück: GetSsoUserByEmailApiResponse


SSO-Benutzer per ID abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: GetSsoUserByIdApiResponse


SSO-Benutzer abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
skip i32 Nein

Antwort

Gibt zurück: GetSsoUsers200Response


SSO-Benutzer anpassen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
update_apisso_user_data models::UpdateApissoUserData Ja
update_comments bool Nein

Antwort

Gibt zurück: PatchSsoUserApiResponse


SSO-Benutzer ersetzen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
update_apisso_user_data models::UpdateApissoUserData Ja
update_comments bool Nein

Antwort

Gibt zurück: PutSsoUserApiResponse


Abonnement erstellen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
create_api_user_subscription_data models::CreateApiUserSubscriptionData Ja

Antwort

Gibt zurück: CreateSubscriptionApiResponse

Beispiel

create_subscription Beispiel
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

Abonnement löschen Internal Link


Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
user_id String Nein

Antwort

Gibt zurück: DeleteSubscriptionApiResponse


Abonnements abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
user_id String Nein

Antwort

Gibt zurück: GetSubscriptionsApiResponse

Beispiel

get_subscriptions Beispiel
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

Abonnement aktualisieren Internal Link

Parameter

Name Type Erforderlich Beschreibung
tenant_id String Ja
id String Ja
update_api_user_subscription_data models::UpdateApiUserSubscriptionData Ja
user_id String Nein

Antwort

Gibt zurück: UpdateSubscriptionApiResponse

Beispiel

update_subscription Beispiel
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

Tägliche Nutzung des Mandanten abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
year_number f64 Nein
month_number f64 Nein
day_number f64 Nein
skip f64 Nein

Antwort

Gibt zurück: GetTenantDailyUsages200Response

Beispiel

Beispiel für 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

Mandantenpaket erstellen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
create_tenant_package_body models::CreateTenantPackageBody Ja

Antwort

Gibt zurück: CreateTenantPackage200Response

Beispiel

create_tenant_package Beispiel
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

Mandantenpaket löschen Internal Link

Parameter

Name Type Required Description
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

delete_tenant_package Beispiel
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

Mandantenpaket abrufen Internal Link

Parameter

Name Type Required Description
tenant_id String Yes
id String Yes

Antwort

Gibt zurück: GetTenantPackage200Response

Beispiel

get_tenant_package Beispiel
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

Mandantenpakete abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
skip f64 Nein

Antwort

Gibt zurück: GetTenantPackages200Response

Beispiel

get_tenant_packages Beispiel
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

Mandantenpaket ersetzen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
replace_tenant_package_body models::ReplaceTenantPackageBody Ja

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

replace_tenant_package Beispiel
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

Mandantenpaket aktualisieren Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
update_tenant_package_body models::UpdateTenantPackageBody Ja

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

update_tenant_package Beispiel
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

Mandantenbenutzer erstellen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
create_tenant_user_body models::CreateTenantUserBody Ja

Antwort

Gibt zurück: CreateTenantUser200Response

Beispiel

create_tenant_user Beispiel
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

Mandantenbenutzer löschen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
delete_comments String Nein
comment_delete_mode String Nein

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

delete_tenant_user Beispiel
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

Mandantenbenutzer abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: GetTenantUser200Response

Beispiel

get_tenant_user Beispiel
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

Mandantenbenutzer abrufen Internal Link

Parameter

Name Type Required Description
tenant_id String Ja
skip f64 Nein

Antwort

Gibt zurück: GetTenantUsers200Response

Beispiel

get_tenant_users Beispiel
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

Mandantenbenutzer ersetzen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
replace_tenant_user_body models::ReplaceTenantUserBody Ja
update_comments String Nein

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

replace_tenant_user Beispiel
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

Parameter

Name Type Required Description
tenant_id String Ja
id String Ja
redirect_url String Nein

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

send_login_link Beispiel
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

Mandantenbenutzer aktualisieren Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
update_tenant_user_body models::UpdateTenantUserBody Ja
update_comments String Nein

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

Beispiel für update_tenant_user
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

Mandanten erstellen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
create_tenant_body models::CreateTenantBody Ja

Antwort

Gibt zurück: CreateTenant200Response

Beispiel

create_tenant Beispiel
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

Mandanten löschen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
sure String Nein

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

delete_tenant Beispiel
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

Mandanten abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: GetTenant200Response

Beispiel

get_tenant Beispiel
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

Mandanten abrufen Internal Link


Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
meta String Nein
skip f64 Nein

Antwort

Gibt zurück: GetTenants200Response

Beispiel

get_tenants Beispiel
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

Mandanten aktualisieren Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
update_tenant_body models::UpdateTenantBody Ja

Antwort

Gibt zurück: FlagCommentPublic200Response

Beispiel

update_tenant Beispiel
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

Ticketstatus ändern Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
user_id String Ja
id String Ja
change_ticket_state_body models::ChangeTicketStateBody Ja

Antwort

Gibt zurück: ChangeTicketState200Response

Beispiel

change_ticket_state Beispiel
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

Ticket erstellen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
user_id String Ja
create_ticket_body models::CreateTicketBody Ja

Antwort

Gibt zurück: CreateTicket200Response

Beispiel

create_ticket Beispiel
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

Ticket abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
user_id String Nein

Antwort

Gibt zurück: GetTicket200Response

Beispiel

get_ticket Beispiel
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

Tickets abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
user_id String Nein
state f64 Nein
skip f64 Nein
limit f64 Nein

Antwort

Gibt zurück: GetTickets200Response

Beispiel

get_tickets Beispiel
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

Bild hochladen Internal Link


Bild hochladen und skalieren

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
file std::path::PathBuf Ja
size_preset models::SizePreset Nein
url_id String Nein

Antwort

Gibt zurück: UploadImageResponse


Benutzer-Abzeichenfortschritt per ID abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: GetUserBadgeProgressById200Response

Beispiel

Beispiel für get_user_badge_progress_by_id
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

Benutzer-Abzeichenfortschritt per Benutzer-ID abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
user_id String Ja

Antwort

Gibt zurück: GetUserBadgeProgressById200Response

Beispiel

get_user_badge_progress_by_user_id Beispiel
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

Liste des Benutzer-Abzeichenfortschritts abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
user_id String Nein
limit f64 Nein
skip f64 Nein

Antwort

Gibt zurück: GetUserBadgeProgressList200Response

Beispiel

Beispiel für 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

Benutzerabzeichen erstellen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
create_user_badge_params models::CreateUserBadgeParams Ja

Antwort

Gibt zurück: CreateUserBadge200Response

Beispiel

create_user_badge Beispiel
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

Benutzerabzeichen löschen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: UpdateUserBadge200Response

Beispiel

delete_user_badge Beispiel
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

Benutzerabzeichen abrufen Internal Link

Parameter

Name Type Erforderlich Beschreibung
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: GetUserBadge200Response

Beispiel

get_user_badge Beispiel
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

Benutzerabzeichen abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
user_id String Nein
badge_id String Nein
displayed_on_comments bool Nein
limit f64 Nein
skip f64 Nein

Antwort

Gibt zurück: GetUserBadges200Response

Beispiel

get_user_badges Beispiel
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

Benutzerabzeichen aktualisieren Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
update_user_badge_params models::UpdateUserBadgeParams Ja

Response

Gibt zurück: UpdateUserBadge200Response

Beispiel

update_user_badge Beispiel
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

Benutzer-Benachrichtigungsanzahl abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
sso String Nein

Antwort

Gibt zurück: GetUserNotificationCount200Response

Beispiel

Beispiel für get_user_notification_count
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

Benutzer-Benachrichtigungen abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
page_size i32 Nein
after_id String Nein
include_context bool Nein
after_created_at i64 Nein
unread_only bool Nein
dm_only bool Nein
no_dm bool Nein
include_translations bool Nein
sso String Nein

Antwort

Gibt zurück: GetUserNotifications200Response

Beispiel

Beispiel für 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

Benutzer-Benachrichtigungszähler zurücksetzen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
sso String Nein

Antwort

Gibt zurück: ResetUserNotifications200Response

Beispiel

reset_user_notification_count Beispiel
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

Benachrichtigungen des Benutzers zurücksetzen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
after_id String Nein
after_created_at i64 Nein
unread_only bool Nein
dm_only bool Nein
no_dm bool Nein
sso String Nein

Antwort

Gibt zurück: ResetUserNotifications200Response

Beispiel

reset_user_notifications Beispiel
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

Kommentarabonnementstatus der Benutzerbenachrichtigung aktualisieren Internal Link

Benachrichtigungen für einen bestimmten Kommentar aktivieren oder deaktivieren.

Parameter

Name Type Required Description
tenant_id String Ja
notification_id String Ja
opted_in_or_out String Ja
comment_id String Ja
sso String Nein

Antwort

Gibt zurück: UpdateUserNotificationStatus200Response

Beispiel

update_user_notification_comment_subscription_status Beispiel
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

Seitenabonnementstatus der Benutzerbenachrichtigung aktualisieren Internal Link


Aktivieren oder Deaktivieren von Benachrichtigungen für eine Seite. Wenn Benutzer für eine Seite abonniert sind, werden Benachrichtigungen für neue Root-Kommentare erstellt, und auch

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
url_id String Ja
url String Ja
page_title String Ja
subscribed_or_unsubscribed String Ja
sso String Nein

Antwort

Gibt zurück: UpdateUserNotificationStatus200Response

Beispiel

Beispiel für 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

Status der Benutzerbenachrichtigung aktualisieren Internal Link

Parameter

Name Type Erforderlich Beschreibung
tenant_id String Ja
notification_id String Ja
new_status String Ja
sso String Nein

Antwort

Gibt zurück: UpdateUserNotificationStatus200Response

Beispiel

update_user_notification_status Beispiel
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

Anwesenheitsstatus der Benutzer abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
url_id_ws String Ja
user_ids String Ja

Antwort

Gibt zurück: GetUserPresenceStatuses200Response

Beispiel

get_user_presence_statuses Beispiel
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

Benutzer suchen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
url_id String Ja
username_starts_with String Nein
mention_group_ids Vec Nein
sso String Nein
search_section String Nein

Antwort

Gibt zurück: SearchUsers200Response

Beispiel

Beispiel für search_users
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

Benutzer abrufen Internal Link

Parameter

Name Type Required Description
tenant_id String Ja
id String Ja

Antwort

Gibt zurück: GetUser200Response

Beispiel

get_user Beispiel
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

Abstimmung erstellen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
comment_id String Ja
direction String Ja
user_id String Nein
anon_user_id String Nein

Antwort

Gibt zurück: VoteComment200Response

Beispiel

create_vote Beispiel
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

Abstimmung löschen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
id String Ja
edit_key String Nein

Antwort

Gibt zurück: DeleteCommentVote200Response

Beispiel

delete_vote Beispiel
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

Abstimmungen abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
url_id String Ja

Antwort

Gibt zurück: GetVotes200Response

Beispiel

get_votes Beispiel
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

Abstimmungen für Benutzer abrufen Internal Link

Parameter

Name Typ Erforderlich Beschreibung
tenant_id String Ja
url_id String Ja
user_id String Nein
anon_user_id String Nein

Antwort

Gibt zurück: GetVotesForUser200Response

Beispiel

get_votes_for_user Beispiel
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

Brauchen Sie Hilfe?

Wenn Sie auf Probleme stoßen oder Fragen zum Rust-SDK haben, tun Sie bitte Folgendes:

Mitwirken

Beiträge sind willkommen! Bitte besuchen Sie das GitHub-Repository für Richtlinien zur Mitwirkung.