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"] }
  1. 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

NameTypErforderlichBeschreibung
tenant_idStringJa
aggregation_requestmodels::AggregationRequestJa
parent_tenant_idStringNein
include_statsboolNein

Antwort

Gibt zurück: AggregationResponse


Audit-Protokolle abrufen Internal Link

Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa
limitf64Nein
skipf64Nein
ordermodels::SortDirNein
afterf64Nein
beforef64Nein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
comment_idStringJa
public_block_from_comment_paramsmodels::PublicBlockFromCommentParamsJa
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
comment_idStringJa
public_block_from_comment_paramsmodels::PublicBlockFromCommentParamsJa
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
comment_idsStringJa
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
block_from_comment_paramsmodels::BlockFromCommentParamsJa
user_idStringNein
anon_user_idStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
url_idStringJa
broadcast_idStringJa
comment_datamodels::CommentDataJa
session_idStringNein
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
context_user_idStringNein
is_liveboolNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
comment_idStringJa
broadcast_idStringJa
edit_keyStringNein
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
comment_idStringJa
vote_idStringJa
url_idStringJa
broadcast_idStringJa
edit_keyStringNein
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
user_idStringNein
anon_user_idStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
comment_idStringJa
edit_keyStringNein
ssoStringNein

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

NameTypeRequiredDescription
tenant_idStringJa
comment_idStringJa
diri32Ja
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
pagei32Nein
limiti32Nein
skipi32Nein
as_treeboolNein
skip_childreni32Nein
limit_childreni32Nein
max_tree_depthi32Nein
url_idStringNein
user_idStringNein
anon_user_idStringNein
context_user_idStringNein
hash_tagStringNein
parent_idStringNein
directionmodels::SortDirectionsNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
url_idStringJa
pagei32Nein
directionmodels::SortDirectionsNein
ssoStringNein
skipi32Nein
skip_childreni32Nein
limiti32Nein
limit_childreni32Nein
count_childrenboolNein
fetch_page_for_comment_idStringNein
include_configboolNein
count_allboolNein
includei10nboolNein
localeStringNein
modulesStringNein
is_crawlerboolNein
include_notification_countboolNein
as_treeboolNein
max_tree_depthi32Nein
use_full_translation_idsboolNein
parent_idStringNein
search_textStringNein
hash_tagsVecNein
user_idStringNein
custom_config_strStringNein
after_comment_idStringNein
before_comment_idStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
comment_idStringJa
broadcast_idStringJa
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
comment_idStringJa
broadcast_idStringJa
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
create_comment_paramsmodels::CreateCommentParamsJa
is_liveboolNein
do_spam_checkboolNein
send_emailsboolNein
populate_notificationsboolNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
create_comment_paramsVecmodels::CreateCommentParamsJa
is_liveboolNein
do_spam_checkboolNein
send_emailsboolNein
populate_notificationsboolNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
comment_idStringJa
broadcast_idStringJa
comment_text_update_requestmodels::CommentTextUpdateRequestJa
edit_keyStringNein
ssoStringNein

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

NameTypeErforderlichBeschreibung
tenant_idStringJa
idStringJa
un_block_from_comment_paramsmodels::UnBlockFromCommentParamsJa
user_idStringNein
anon_user_idStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
user_idStringNein
anon_user_idStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
comment_idStringJa
broadcast_idStringJa
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
comment_idStringJa
broadcast_idStringJa
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
updatable_comment_paramsmodels::UpdatableCommentParamsJa
context_user_idStringNein
do_spam_checkboolNein
is_liveboolNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
comment_idStringJa
url_idStringJa
broadcast_idStringJa
vote_body_paramsmodels::VoteBodyParamsJa
session_idStringNein
ssoStringNein

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

NameTypeErforderlichBeschreibung
tenant_idStringJa
add_domain_config_paramsmodels::AddDomainConfigParamsJa

Antwort

Gibt zurück: AddDomainConfig200Response


Domain-Konfiguration löschen Internal Link

Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa
domainStringJa

Antwort

Gibt zurück: DeleteDomainConfig200Response


Domain-Konfiguration abrufen Internal Link

Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa
domainStringJa

Antwort

Gibt zurück: GetDomainConfig200Response


Domain-Konfigurationen abrufen Internal Link


Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa

Antwort

Gibt zurück: GetDomainConfigs200Response


Domain-Konfiguration anpassen Internal Link

Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa
domain_to_updateStringJa
patch_domain_config_paramsmodels::PatchDomainConfigParamsJa

Antwort

Gibt zurück: GetDomainConfig200Response


Domain-Konfiguration ersetzen Internal Link

Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa
domain_to_updateStringJa
update_domain_config_paramsmodels::UpdateDomainConfigParamsJa

Antwort

Gibt zurück: GetDomainConfig200Response

E-Mail-Vorlage erstellen Internal Link

Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa
create_email_template_bodymodels::CreateEmailTemplateBodyJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
error_idStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
skipf64Nein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
skipf64Nein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
render_email_template_bodymodels::RenderEmailTemplateBodyJa
localeStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
update_email_template_bodymodels::UpdateEmailTemplateBodyJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
url_idStringJa
user_id_wsStringJa
start_timei64Ja
end_timei64Ja

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

NameTypErforderlichBeschreibung
tenant_idStringJa
url_idStringJa
user_id_wsStringJa
start_timei64Ja
end_timei64Ja

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

NameTypErforderlichBeschreibung
tenant_idStringJa
create_feed_post_paramsmodels::CreateFeedPostParamsJa
broadcast_idStringNein
is_liveboolNein
do_spam_checkboolNein
skip_dup_checkboolNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
create_feed_post_paramsmodels::CreateFeedPostParamsJa
broadcast_idStringNein
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
post_idStringJa
broadcast_idStringNein
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
after_idStringNein
limiti32Nein
tagsVecNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
after_idStringNein
limiti32Nein
tagsVecNein
ssoStringNein
is_crawlerboolNein
include_user_infoboolNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
post_idsVecJa
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringYes
post_idsVecNo
ssoStringNo

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

NameTypErforderlichBeschreibung
tenant_idStringJa
post_idStringJa
react_body_paramsmodels::ReactBodyParamsJa
is_undoboolNein
broadcast_idStringNein
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
feed_postmodels::FeedPostJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
post_idStringJa
update_feed_post_paramsmodels::UpdateFeedPostParamsJa
broadcast_idStringNein
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
comment_idStringJa
is_flaggedboolJa
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringNein
create_hash_tag_bodymodels::CreateHashTagBodyNein

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

NameTypErforderlichBeschreibung
tenant_idStringNein
bulk_create_hash_tags_bodymodels::BulkCreateHashTagsBodyNein

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

NameTypErforderlichBeschreibung
tagStringJa
tenant_idStringNein
delete_hash_tag_requestmodels::DeleteHashTagRequestNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
pagef64Nein

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

NameTypErforderlichBeschreibung
tagStringJa
tenant_idStringNein
update_hash_tag_bodymodels::UpdateHashTagBodyNein

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

NameTypErforderlichBeschreibung
tenant_idStringYes
create_moderator_bodymodels::CreateModeratorBodyYes

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

NameTypeRequiredDescription
tenant_idStringJa
idStringJa
send_emailStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
skipf64Nein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
from_nameStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
update_moderator_bodymodels::UpdateModeratorBodyJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
user_idStringNein
url_idStringNein
from_comment_idStringNein
viewedboolNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
user_idStringNein
url_idStringNein
from_comment_idStringNein
viewedboolNein
skipf64Nein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
update_notification_bodymodels::UpdateNotificationBodyJa
user_idStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
create_api_page_datamodels::CreateApiPageDataJa

Antwort

Gibt zurück: AddPageApiResponse


Seite löschen Internal Link


Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa

Antwort

Gibt zurück: DeletePageApiResponse


Seite per URL-ID abrufen Internal Link


Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa
url_idStringJa

Antwort

Gibt zurück: GetPageByUrlidApiResponse


Seiten abrufen Internal Link


Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa

Antwort

Gibt zurück: GetPagesApiResponse


Seite anpassen Internal Link

Parameters

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
update_api_page_datamodels::UpdateApiPageDataJa

Antwort

Gibt zurück: PatchPageApiResponse

Ausstehendes Webhook-Ereignis löschen Internal Link

Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
comment_idStringNein
external_idStringNein
event_typeStringNein
domainStringNein
attempt_count_gtf64Nein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
comment_idStringNein
external_idStringNein
event_typeStringNein
domainStringNein
attempt_count_gtf64Nein
skipf64Nein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
create_question_config_bodymodels::CreateQuestionConfigBodyJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
skipf64Nein

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

NameTypeErforderlichBeschreibung
tenant_idStringJa
idStringJa
update_question_config_bodymodels::UpdateQuestionConfigBodyJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
create_question_result_bodymodels::CreateQuestionResultBodyJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
url_idStringNein
user_idStringNein
start_dateStringNein
question_idStringNein
question_idsStringNein
skipf64Nein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
update_question_result_bodymodels::UpdateQuestionResultBodyJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
question_idStringNein
question_idsVecNein
url_idStringNein
time_bucketmodels::AggregateTimeBucketNein
start_dateStringNein
force_recalculateboolNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
bulk_aggregate_question_results_requestmodels::BulkAggregateQuestionResultsRequestJa
force_recalculateboolNein

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

NameTypeErforderlichBeschreibung
tenant_idStringJa
question_idStringNein
question_idsVecNein
url_idStringNein
start_dateStringNein
force_recalculateboolNein
min_valuef64Nein
max_valuef64Nein
limitf64Nein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
create_apisso_user_datamodels::CreateApissoUserDataJa

Antwort

Gibt zurück: AddSsoUserApiResponse


SSO-Benutzer löschen Internal Link


Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
delete_commentsboolNein
comment_delete_modeStringNein

Antwort

Gibt zurück: DeleteSsoUserApiResponse


SSO-Benutzer per E-Mail abrufen Internal Link

Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa
emailStringJa

Antwort

Gibt zurück: GetSsoUserByEmailApiResponse


SSO-Benutzer per ID abrufen Internal Link

Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa

Antwort

Gibt zurück: GetSsoUserByIdApiResponse


SSO-Benutzer abrufen Internal Link

Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa
skipi32Nein

Antwort

Gibt zurück: GetSsoUsers200Response


SSO-Benutzer anpassen Internal Link

Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
update_apisso_user_datamodels::UpdateApissoUserDataJa
update_commentsboolNein

Antwort

Gibt zurück: PatchSsoUserApiResponse


SSO-Benutzer ersetzen Internal Link

Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
update_apisso_user_datamodels::UpdateApissoUserDataJa
update_commentsboolNein

Antwort

Gibt zurück: PutSsoUserApiResponse


Abonnement erstellen Internal Link

Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa
create_api_user_subscription_datamodels::CreateApiUserSubscriptionDataJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
user_idStringNein

Antwort

Gibt zurück: DeleteSubscriptionApiResponse


Abonnements abrufen Internal Link

Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa
user_idStringNein

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

NameTypeErforderlichBeschreibung
tenant_idStringJa
idStringJa
update_api_user_subscription_datamodels::UpdateApiUserSubscriptionDataJa
user_idStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
year_numberf64Nein
month_numberf64Nein
day_numberf64Nein
skipf64Nein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
create_tenant_package_bodymodels::CreateTenantPackageBodyJa

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

NameTypeRequiredDescription
tenant_idStringJa
idStringJa

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

NameTypeRequiredDescription
tenant_idStringYes
idStringYes

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

NameTypErforderlichBeschreibung
tenant_idStringJa
skipf64Nein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
replace_tenant_package_bodymodels::ReplaceTenantPackageBodyJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
update_tenant_package_bodymodels::UpdateTenantPackageBodyJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
create_tenant_user_bodymodels::CreateTenantUserBodyJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
delete_commentsStringNein
comment_delete_modeStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa

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

NameTypeRequiredDescription
tenant_idStringJa
skipf64Nein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
replace_tenant_user_bodymodels::ReplaceTenantUserBodyJa
update_commentsStringNein

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

NameTypeRequiredDescription
tenant_idStringJa
idStringJa
redirect_urlStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
update_tenant_user_bodymodels::UpdateTenantUserBodyJa
update_commentsStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
create_tenant_bodymodels::CreateTenantBodyJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
sureStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
metaStringNein
skipf64Nein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
update_tenant_bodymodels::UpdateTenantBodyJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
user_idStringJa
idStringJa
change_ticket_state_bodymodels::ChangeTicketStateBodyJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
user_idStringJa
create_ticket_bodymodels::CreateTicketBodyJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
user_idStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
user_idStringNein
statef64Nein
skipf64Nein
limitf64Nein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
filestd::path::PathBufJa
size_presetmodels::SizePresetNein
url_idStringNein

Antwort

Gibt zurück: UploadImageResponse


Benutzer-Abzeichenfortschritt per ID abrufen Internal Link

Parameter

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
user_idStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
user_idStringNein
limitf64Nein
skipf64Nein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
create_user_badge_paramsmodels::CreateUserBadgeParamsJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa

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

NameTypeErforderlichBeschreibung
tenant_idStringJa
idStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
user_idStringNein
badge_idStringNein
displayed_on_commentsboolNein
limitf64Nein
skipf64Nein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
update_user_badge_paramsmodels::UpdateUserBadgeParamsJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
page_sizei32Nein
after_idStringNein
include_contextboolNein
after_created_ati64Nein
unread_onlyboolNein
dm_onlyboolNein
no_dmboolNein
include_translationsboolNein
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
after_idStringNein
after_created_ati64Nein
unread_onlyboolNein
dm_onlyboolNein
no_dmboolNein
ssoStringNein

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

NameTypeRequiredDescription
tenant_idStringJa
notification_idStringJa
opted_in_or_outStringJa
comment_idStringJa
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
url_idStringJa
urlStringJa
page_titleStringJa
subscribed_or_unsubscribedStringJa
ssoStringNein

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

NameTypeErforderlichBeschreibung
tenant_idStringJa
notification_idStringJa
new_statusStringJa
ssoStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
url_id_wsStringJa
user_idsStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
url_idStringJa
username_starts_withStringNein
mention_group_idsVecNein
ssoStringNein
search_sectionStringNein

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

NameTypeRequiredDescription
tenant_idStringJa
idStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
comment_idStringJa
directionStringJa
user_idStringNein
anon_user_idStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
idStringJa
edit_keyStringNein

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

NameTypErforderlichBeschreibung
tenant_idStringJa
url_idStringJa

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

NameTypErforderlichBeschreibung
tenant_idStringJa
url_idStringJa
user_idStringNein
anon_user_idStringNein

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.