FastComments.com

FastComments Rust SDK


์ด๊ฒƒ์€ FastComments์˜ ๊ณต์‹ Rust SDK์ž…๋‹ˆ๋‹ค.

FastComments API๋ฅผ ์œ„ํ•œ ๊ณต์‹ Rust SDK

Repository

GitHub์—์„œ ๋ณด๊ธฐ


์„ค์น˜ Internal Link


cargo add fastcomments-sdk

์ด SDK๋Š” Rust 2021 ์—๋””์…˜ ์ด์ƒ์„ ์š”๊ตฌํ•ฉ๋‹ˆ๋‹ค.

๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋‚ด์šฉ Internal Link

The FastComments Rust SDK๋Š” ์—ฌ๋Ÿฌ ๋ชจ๋“ˆ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค:

  • Client Module - FastComments REST API์šฉ ์ž๋™ ์ƒ์„ฑ API ํด๋ผ์ด์–ธํŠธ

    • ๋ชจ๋“  API ๋ชจ๋ธ์— ๋Œ€ํ•œ ์™„์ „ํ•œ ํƒ€์ž… ์ •์˜
    • ์ธ์ฆ๋œ (DefaultApi) ๋ฐ ๊ณต๊ฐœ (PublicApi) ์—”๋“œํฌ์ธํŠธ ๋ชจ๋‘
    • tokio๋ฅผ ์ด์šฉํ•œ ์™„์ „ํ•œ async/await ์ง€์›
    • ์ž์„ธํ•œ API ๋ฌธ์„œ๋Š” client/README.md๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”
  • SSO Module - ์„œ๋ฒ„ ์ธก ์‹ฑ๊ธ€ ์‚ฌ์ธ์˜จ(SSO) ์œ ํ‹ธ๋ฆฌํ‹ฐ

    • ์‚ฌ์šฉ์ž ์ธ์ฆ์„ ์œ„ํ•œ ์•ˆ์ „ํ•œ ํ† ํฐ ์ƒ์„ฑ
    • ๋‹จ์ˆœ ๋ฐ ๋ณด์•ˆ SSO ๋ชจ๋“œ ๋ชจ๋‘ ์ง€์›
    • HMAC-SHA256 ๊ธฐ๋ฐ˜ ํ† ํฐ ์„œ๋ช…
  • Core Types - ๊ณต์œ  ํƒ€์ž… ์ •์˜ ๋ฐ ์œ ํ‹ธ๋ฆฌํ‹ฐ

    • ๋Œ“๊ธ€ ๋ชจ๋ธ ๋ฐ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ๊ตฌ์กฐ
    • ์‚ฌ์šฉ์ž ๋ฐ ํ…Œ๋„ŒํŠธ ๊ตฌ์„ฑ
    • ์ผ๋ฐ˜ ์ž‘์—…์„ ์œ„ํ•œ ํ—ฌํผ ํ•จ์ˆ˜

๋น ๋ฅธ ์‹œ์ž‘ Internal Link

๊ณต๊ฐœ API ์‚ฌ์šฉ

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

#[tokio::main]
async fn main() {
    // API ๊ตฌ์„ฑ ์ƒ์„ฑ
    let config = Configuration::new();

    // ํŽ˜์ด์ง€์˜ ๋Œ“๊ธ€ ๊ฐ€์ ธ์˜ค๊ธฐ
    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),
    }
}

์ธ์ฆ๋œ API ์‚ฌ์šฉ

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

#[tokio::main]
async fn main() {
    // API ํ‚ค๋กœ ๊ตฌ์„ฑ ์ƒ์„ฑ
    let mut config = Configuration::new();
    config.api_key = Some(ApiKey {
        prefix: None,
        key: "your-api-key".to_string(),
    });

    // ์ธ์ฆ๋œ API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋Œ“๊ธ€ ๊ฐ€์ ธ์˜ค๊ธฐ
    let result = default_api::get_comments(
        &config,
        default_api::GetCommentsParams {
            tenant_id: "your-tenant-id".to_string(),
            skip: None,
            limit: None,
            sort_dir: None,
            urlid: Some("page-url-id".to_string()),
            url: None,
            is_spam: None,
            user_id: None,
            all_comments: None,
            for_moderation: None,
            parent_id: None,
            is_flagged: None,
            is_flagged_tag: None,
            is_by_verified: None,
            is_pinned: None,
            asc: None,
            include_imported: None,
            origin: None,
            tags: None,
        },
    )
    .await;

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

์ธ์ฆ์„ ์œ„ํ•œ SSO ์‚ฌ์šฉ

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

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

    // ๋ณด์•ˆ SSO ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ ์ƒ์„ฑ (์„œ๋ฒ„ ์ธก์—์„œ๋งŒ!)
    let user_data = SecureSSOUserData::new(
        "user-123".to_string(),           // ์‚ฌ์šฉ์ž ID
        "user@example.com".to_string(),   // ์ด๋ฉ”์ผ
        "John Doe".to_string(),            // ์‚ฌ์šฉ์ž๋ช…
        "https://example.com/avatar.jpg".to_string(), // ์•„๋ฐ”ํƒ€ URL
    );

    // SSO ํ† ํฐ ์ƒ์„ฑ
    let sso = FastCommentsSSO::new_secure(api_key, &user_data).unwrap();
    let token = sso.create_token().unwrap();

    println!("SSO Token: {}", token);
    // ์ด ํ† ํฐ์„ ํ”„๋ŸฐํŠธ์—”๋“œ๋กœ ์ „๋‹ฌํ•˜์—ฌ ์ธ์ฆ์— ์‚ฌ์šฉ
}

์ž์ฃผ ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ Internal Link

401 ๊ถŒํ•œ ์—†์Œ ์˜ค๋ฅ˜

์ธ์ฆ๋œ API๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ 401 ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ:

  1. API ํ‚ค ํ™•์ธ: FastComments ๋Œ€์‹œ๋ณด๋“œ์— ์žˆ๋Š” ์˜ฌ๋ฐ”๋ฅธ API ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”
  2. ํ…Œ๋„ŒํŠธ ID ํ™•์ธ: ํ…Œ๋„ŒํŠธ ID๊ฐ€ ๊ณ„์ •๊ณผ ์ผ์น˜ํ•˜๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”
  3. API ํ‚ค ํ˜•์‹: API ํ‚ค๋Š” Configuration์— ์ „๋‹ฌ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค:
let mut config = Configuration::new();
config.api_key = Some(ApiKey {
    prefix: None,
    key: "YOUR_API_KEY".to_string(),
});

SSO ํ† ํฐ ๋ฌธ์ œ

SSO ํ† ํฐ์ด ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ:

  1. ํ”„๋กœ๋•์…˜์—์„œ๋Š” ๋ณด์•ˆ ๋ชจ๋“œ ์‚ฌ์šฉ: ํ”„๋กœ๋•์…˜์—์„œ๋Š” ํ•ญ์ƒ FastCommentsSSO::new_secure()๋ฅผ API ํ‚ค์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜์„ธ์š”
  2. ์„œ๋ฒ„ ์ธก์—์„œ๋งŒ ์ƒ์„ฑ: SSO ํ† ํฐ์€ ์„œ๋ฒ„์—์„œ ์ƒ์„ฑํ•˜๊ณ  API ํ‚ค๋ฅผ ํด๋ผ์ด์–ธํŠธ์— ๋…ธ์ถœํ•˜์ง€ ๋งˆ์„ธ์š”
  3. ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ ํ™•์ธ: ํ•„์š”ํ•œ ๋ชจ๋“  ํ•„๋“œ (id, email, username)๊ฐ€ ์ œ๊ณต๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”

๋น„๋™๊ธฐ ๋Ÿฐํƒ€์ž„ ์˜ค๋ฅ˜

SDK๋Š” ๋น„๋™๊ธฐ ์ž‘์—…์— tokio๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ์„ ํ™•์ธํ•˜์„ธ์š”:

  1. Add tokio to your dependencies:

    [dependencies]
    tokio = { version = "1", features = ["full"] }
  2. Use the tokio runtime:

    #[tokio::main]
    async fn main() {
     // ์—ฌ๊ธฐ์— ๋น„๋™๊ธฐ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์„ธ์š”
    }

์ฐธ๊ณ  Internal Link

๋ธŒ๋กœ๋“œ์บ์ŠคํŠธ ID

์ผ๋ถ€ API ํ˜ธ์ถœ์—์„œ broadcastId๋ฅผ ์ „๋‹ฌํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ๋ณด๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋ฒคํŠธ๋ฅผ ์ˆ˜์‹ ํ•˜๋ฉด ์ด ID๋ฅผ ๋˜๋Œ๋ ค ๋ฐ›์œผ๋ฏ€๋กœ ํด๋ผ์ด์–ธํŠธ์—์„œ ๋ณ€๊ฒฝ์„ ๋‚™๊ด€์ ์œผ๋กœ ์ ์šฉํ•˜๋ ค๋Š” ๊ฒฝ์šฐ ์ด๋ฒคํŠธ๋ฅผ ๋ฌด์‹œํ•ด์•ผ ํ•˜๋Š”์ง€ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค (์ด๋Š” ์•„๋งˆ๋„ ๊ฐ€์žฅ ์ข‹์€ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•˜๋ฏ€๋กœ ๊ทธ๋ ‡๊ฒŒ ํ•˜๊ณ  ์‹ถ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค). ์—ฌ๊ธฐ์— UUID๋ฅผ ์ „๋‹ฌํ•˜์„ธ์š”. ์ด ID๋Š” ๋ธŒ๋ผ์šฐ์ € ์„ธ์…˜ ๋‚ด์—์„œ ๋‘ ๋ฒˆ ๋ฐœ์ƒํ•˜์ง€ ์•Š์„ ๋งŒํผ ์ถฉ๋ถ„ํžˆ ๊ณ ์œ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

aggregate Internal Link

๋ฌธ์„œ๋ฅผ ๊ทธ๋ฃนํ™”(groupBy๊ฐ€ ์ œ๊ณต๋œ ๊ฒฝ์šฐ)ํ•˜๊ณ  ์—ฌ๋Ÿฌ ์—ฐ์‚ฐ์„ ์ ์šฉํ•˜์—ฌ ์ง‘๊ณ„ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์–‘ํ•œ ์—ฐ์‚ฐ(์˜ˆ: sum, countDistinct, avg ๋“ฑ)์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
aggregation_request models::AggregationRequest ์˜ˆ
parent_tenant_id String ์•„๋‹ˆ์š”
include_stats bool ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: AggregationResponse


get_audit_logs Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
limit f64 ์•„๋‹ˆ์˜ค
skip f64 ์•„๋‹ˆ์˜ค
order models::SortDir ์•„๋‹ˆ์˜ค
after f64 ์•„๋‹ˆ์˜ค
before f64 ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: GetAuditLogs200Response


block_from_comment_public Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
comment_id String ์˜ˆ
public_block_from_comment_params models::PublicBlockFromCommentParams ์˜ˆ
sso String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: BlockFromCommentPublic200Response


un_block_comment_public Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
comment_id String ์˜ˆ
public_block_from_comment_params models::PublicBlockFromCommentParams ์˜ˆ
sso String ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: UnBlockCommentPublic200Response


checked_comments_for_blocked Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
comment_ids String ์˜ˆ
sso String ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: CheckedCommentsForBlocked200Response

block_user_from_comment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
block_from_comment_params models::BlockFromCommentParams ์˜ˆ
user_id String ์•„๋‹ˆ์š”
anon_user_id String ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: BlockFromCommentPublic200Response


create_comment_public Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
url_id String ์˜ˆ
broadcast_id String ์˜ˆ
comment_data models::CommentData ์˜ˆ
session_id String ์•„๋‹ˆ์˜ค
sso String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: CreateCommentPublic200Response


delete_comment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
context_user_id String ์•„๋‹ˆ์˜ค
is_live bool ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: DeleteComment200Response


delete_comment_public Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
comment_id String ์˜ˆ
broadcast_id String ์˜ˆ
edit_key String ์•„๋‹ˆ์š”
sso String ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜๊ฐ’: DeleteCommentPublic200Response


delete_comment_vote Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
comment_id String ์˜ˆ
vote_id String ์˜ˆ
url_id String ์˜ˆ
broadcast_id String ์˜ˆ
edit_key String ์•„๋‹ˆ์š”
sso String ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: DeleteCommentVote200Response


flag_comment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
user_id String ์•„๋‹ˆ์š”
anon_user_id String ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: FlagComment200Response


get_comment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetComment200Response


get_comment_text Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

Name Type Required Description
tenant_id String ์˜ˆ
comment_id String ์˜ˆ
edit_key String ์•„๋‹ˆ์š”
sso String ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: GetCommentText200Response


get_comment_vote_user_names Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
comment_id String ์˜ˆ
dir i32 ์˜ˆ
sso String ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: GetCommentVoteUserNames200Response


get_comments Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
page i32 ์•„๋‹ˆ์š”
limit i32 ์•„๋‹ˆ์š”
skip i32 ์•„๋‹ˆ์š”
as_tree bool ์•„๋‹ˆ์š”
skip_children i32 ์•„๋‹ˆ์š”
limit_children i32 ์•„๋‹ˆ์š”
max_tree_depth i32 ์•„๋‹ˆ์š”
url_id String ์•„๋‹ˆ์š”
user_id String ์•„๋‹ˆ์š”
anon_user_id String ์•„๋‹ˆ์š”
context_user_id String ์•„๋‹ˆ์š”
hash_tag String ์•„๋‹ˆ์š”
parent_id String ์•„๋‹ˆ์š”
direction models::SortDirections ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: GetComments200Response


get_comments_public Internal Link

req tenantId urlId

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
url_id String ์˜ˆ
page i32 ์•„๋‹ˆ์˜ค
direction models::SortDirections ์•„๋‹ˆ์˜ค
sso String ์•„๋‹ˆ์˜ค
skip i32 ์•„๋‹ˆ์˜ค
skip_children i32 ์•„๋‹ˆ์˜ค
limit i32 ์•„๋‹ˆ์˜ค
limit_children i32 ์•„๋‹ˆ์˜ค
count_children bool ์•„๋‹ˆ์˜ค
fetch_page_for_comment_id String ์•„๋‹ˆ์˜ค
include_config bool ์•„๋‹ˆ์˜ค
count_all bool ์•„๋‹ˆ์˜ค
includei10n bool ์•„๋‹ˆ์˜ค
locale String ์•„๋‹ˆ์˜ค
modules String ์•„๋‹ˆ์˜ค
is_crawler bool ์•„๋‹ˆ์˜ค
include_notification_count bool ์•„๋‹ˆ์˜ค
as_tree bool ์•„๋‹ˆ์˜ค
max_tree_depth i32 ์•„๋‹ˆ์˜ค
use_full_translation_ids bool ์•„๋‹ˆ์˜ค
parent_id String ์•„๋‹ˆ์˜ค
search_text String ์•„๋‹ˆ์˜ค
hash_tags Vec ์•„๋‹ˆ์˜ค
user_id String ์•„๋‹ˆ์˜ค
custom_config_str String ์•„๋‹ˆ์˜ค
after_comment_id String ์•„๋‹ˆ์˜ค
before_comment_id String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: GetCommentsPublic200Response

lock_comment Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
comment_id String ์˜ˆ
broadcast_id String ์˜ˆ
sso String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: LockComment200Response


pin_comment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
comment_id String ์˜ˆ
broadcast_id String ์˜ˆ
sso String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: PinComment200Response


save_comment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
create_comment_params models::CreateCommentParams ์˜ˆ
is_live bool ์•„๋‹ˆ์˜ค
do_spam_check bool ์•„๋‹ˆ์˜ค
send_emails bool ์•„๋‹ˆ์˜ค
populate_notifications bool ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: SaveComment200Response


save_comments_bulk Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
create_comment_params Vecmodels::CreateCommentParams ์˜ˆ
is_live bool ์•„๋‹ˆ์š”
do_spam_check bool ์•„๋‹ˆ์š”
send_emails bool ์•„๋‹ˆ์š”
populate_notifications bool ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: Vec<models::SaveComment200Response>


set_comment_text Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String Yes
comment_id String Yes
broadcast_id String Yes
comment_text_update_request models::CommentTextUpdateRequest Yes
edit_key String No
sso String No

์‘๋‹ต

๋ฐ˜ํ™˜: SetCommentText200Response

un_block_user_from_comment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
un_block_from_comment_params models::UnBlockFromCommentParams ์˜ˆ
user_id String ์•„๋‹ˆ์š”
anon_user_id String ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: UnBlockCommentPublic200Response


un_flag_comment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
user_id String ์•„๋‹ˆ์˜ค
anon_user_id String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: FlagComment200Response


un_lock_comment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
comment_id String ์˜ˆ
broadcast_id String ์˜ˆ
sso String ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: LockComment200Response


un_pin_comment Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
comment_id String ์˜ˆ
broadcast_id String ์˜ˆ
sso String ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: PinComment200Response


update_comment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
body models::PickApiCommentPeriodUpdatableCommentFields ์˜ˆ
context_user_id String ์•„๋‹ˆ์˜ค
do_spam_check bool ์•„๋‹ˆ์˜ค
is_live bool ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response


vote_comment Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
comment_id String ์˜ˆ
url_id String ์˜ˆ
broadcast_id String ์˜ˆ
vote_body_params models::VoteBodyParams ์˜ˆ
session_id String ์•„๋‹ˆ์˜ค
sso String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: VoteComment200Response


add_domain_config Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
add_domain_config_params models::AddDomainConfigParams ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: AddDomainConfig200Response


delete_domain_config Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
domain String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: DeleteDomainConfig200Response


get_domain_config Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
domain String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetDomainConfig200Response


get_domain_configs Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetDomainConfigs200Response


patch_domain_config Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
domain_to_update String ์˜ˆ
patch_domain_config_params models::PatchDomainConfigParams ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetDomainConfig200Response


put_domain_config Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
domain_to_update String ์˜ˆ
update_domain_config_params models::UpdateDomainConfigParams ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetDomainConfig200Response


create_email_template Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

Name Type Required Description
tenant_id String Yes
create_email_template_body models::CreateEmailTemplateBody Yes

๋ฐ˜ํ™˜๊ฐ’

๋ฐ˜ํ™˜๊ฐ’: CreateEmailTemplate200Response

์˜ˆ์ œ

create_email_template ์˜ˆ์ œ
Copy Copy
1
2let params: CreateEmailTemplateParams = CreateEmailTemplateParams {
3 tenant_id: "acme-corp-tenant".to_string(),
4 create_email_template_body: models::CreateEmailTemplateBody {
5 name: "New Comment Notification".to_string(),
6 subject: "New comment on your article".to_string(),
7 html_body: "<p>A new comment was posted on <strong>{article_title}</strong>.</p>".to_string(),
8 text_body: Some("A new comment was posted on {article_title}.".to_string()),
9 from_email: Some("no-reply@acme-news.com".to_string()),
10 enabled: Some(true),
11 },
12};
13let response: CreateEmailTemplate200Response = create_email_template(&configuration, params).await?;
14

delete_email_template Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String Yes
id String Yes

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

delete_email_template ์˜ˆ์ œ
Copy Copy
1
2async fn run_delete() -> Result<FlagCommentPublic200Response, Error> {
3 let params: DeleteEmailTemplateParams = DeleteEmailTemplateParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "welcome-email-template".to_string(),
6 };
7 let response: FlagCommentPublic200Response = delete_email_template(&configuration, params).await?;
8 Ok(response)
9}
10

delete_email_template_render_error Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
error_id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

delete_email_template_render_error ์˜ˆ์ œ
Copy Copy
1
2async fn delete_email_template_render_error_example() -> Result<FlagCommentPublic200Response, Error> {
3 let params: DeleteEmailTemplateRenderErrorParams = DeleteEmailTemplateRenderErrorParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "marketing/newsletter/welcome-email".to_string(),
6 error_id: "render-err-2026-01-12-01".to_string(),
7 };
8 let response: FlagCommentPublic200Response = delete_email_template_render_error(configuration, params).await?;
9 Ok(response)
10}
11

get_email_template Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

Name Type Required Description
tenant_id String ์˜ˆ
id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetEmailTemplate200Response

์˜ˆ์ œ

get_email_template ์˜ˆ์ œ
Copy Copy
1
2async fn fetch_template() -> Result<GetEmailTemplate200Response, Error> {
3 let params: GetEmailTemplateParams = GetEmailTemplateParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "welcome-email-template".to_string(),
6 };
7 let template: GetEmailTemplate200Response = get_email_template(&configuration, params).await?;
8 Ok(template)
9}
10

get_email_template_definitions Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetEmailTemplateDefinitions200Response

์˜ˆ์ œ

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

get_email_template_render_errors Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
skip f64 ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: GetEmailTemplateRenderErrors200Response

์˜ˆ์ œ

get_email_template_render_errors ์˜ˆ์ œ
Copy Copy
1
2async fn example_call() -> 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

get_email_templates Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
skip f64 ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜๊ฐ’: GetEmailTemplates200Response

์˜ˆ์ œ

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

render_email_template Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
render_email_template_body models::RenderEmailTemplateBody ์˜ˆ
locale String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: RenderEmailTemplate200Response

์˜ˆ์ œ

render_email_template ์˜ˆ์ œ
Copy Copy
1
2let params: RenderEmailTemplateParams = RenderEmailTemplateParams {
3 tenant_id: "acme-corp-tenant".to_string(),
4 render_email_template_body: models::RenderEmailTemplateBody {
5 template_id: "comment-notification".to_string(),
6 subject: Some("New comment on your article".to_string()),
7 placeholders: std::collections::HashMap::from([
8 ("article_title".to_string(), "Rust Gains Momentum in 2026".to_string()),
9 ("comment_author".to_string(), "Jane Doe".to_string()),
10 ("comment_snippet".to_string(), "Great insights โ€” thanks for sharing!".to_string()),
11 ]),
12 },
13 locale: Some("en-US".to_string()),
14};
15let rendered: RenderEmailTemplate200Response = render_email_template(&configuration, params).await?;
16

update_email_template Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

Name Type Required Description
tenant_id String ์˜ˆ
id String ์˜ˆ
update_email_template_body models::UpdateEmailTemplateBody ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

update_email_template ์˜ˆ์ œ
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: UpdateEmailTemplateParams = UpdateEmailTemplateParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "welcome-template-001".to_string(),
6 update_email_template_body: models::UpdateEmailTemplateBody {
7 name: Some("Welcome Template".to_string()),
8 subject: Some("Welcome to Acme News".to_string()),
9 body_html: Some("<p>Hi , welcome to Acme News!</p>".to_string()),
10 from_address: Some("no-reply@acme-news.com".to_string()),
11 reply_to: Some("support@acme-news.com".to_string()),
12 enabled: Some(true),
13 language: Some("en-US".to_string()),
14 custom_config: Some(models::CustomConfigParameters {
15 tracking_pixel_url: Some("https://acme-news.com/pixel".to_string()),
16 }),
17 },
18 };
19
20 let response: FlagCommentPublic200Response = update_email_template(&configuration, params).await?;
21 let _ = response;
22 Ok(())
23}
24

get_event_log Internal Link


req tenantId urlId userIdWS

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
url_id String ์˜ˆ
user_id_ws String ์˜ˆ
start_time i64 ์˜ˆ
end_time i64 ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetEventLog200Response


get_global_event_log Internal Link


req tenantId urlId userIdWS

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
url_id String ์˜ˆ
user_id_ws String ์˜ˆ
start_time i64 ์˜ˆ
end_time i64 ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetEventLog200Response


create_feed_post Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
create_feed_post_params models::CreateFeedPostParams ์˜ˆ
broadcast_id String ์•„๋‹ˆ์˜ค
is_live bool ์•„๋‹ˆ์˜ค
do_spam_check bool ์•„๋‹ˆ์˜ค
skip_dup_check bool ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: CreateFeedPost200Response


create_feed_post_public Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
create_feed_post_params models::CreateFeedPostParams ์˜ˆ
broadcast_id String ์•„๋‹ˆ์˜ค
sso String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: CreateFeedPostPublic200Response


delete_feed_post_public Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
post_id String ์˜ˆ
broadcast_id String ์•„๋‹ˆ์š”
sso String ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: DeleteFeedPostPublic200Response


get_feed_posts Internal Link

req tenantId afterId

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
after_id String ์•„๋‹ˆ์˜ค
limit i32 ์•„๋‹ˆ์˜ค
tags Vec ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: GetFeedPosts200Response

get_feed_posts_public Internal Link

req tenantId afterId

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
after_id String ์•„๋‹ˆ์š”
limit i32 ์•„๋‹ˆ์š”
tags Vec ์•„๋‹ˆ์š”
sso String ์•„๋‹ˆ์š”
is_crawler bool ์•„๋‹ˆ์š”
include_user_info bool ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: GetFeedPostsPublic200Response

get_feed_posts_stats Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String Yes
post_ids Vec Yes
sso String No

์‘๋‹ต

๋ฐ˜ํ™˜: GetFeedPostsStats200Response


get_user_reacts_public Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
post_ids Vec ์•„๋‹ˆ์˜ค
sso String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: GetUserReactsPublic200Response


react_feed_post_public Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
post_id String ์˜ˆ
react_body_params models::ReactBodyParams ์˜ˆ
is_undo bool ์•„๋‹ˆ์˜ค
broadcast_id String ์•„๋‹ˆ์˜ค
sso String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: ReactFeedPostPublic200Response


update_feed_post Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
feed_post models::FeedPost ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response


update_feed_post_public Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
post_id String ์˜ˆ
update_feed_post_params models::UpdateFeedPostParams ์˜ˆ
broadcast_id String ์•„๋‹ˆ์˜ค
sso String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: CreateFeedPostPublic200Response


flag_comment_public Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
comment_id String ์˜ˆ
is_flagged bool ์˜ˆ
sso String ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response


add_hash_tag Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์•„๋‹ˆ์š”
create_hash_tag_body models::CreateHashTagBody ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: AddHashTag200Response

์˜ˆ์ œ

add_hash_tag ์˜ˆ์ œ
Copy Copy
1
2async fn run_add_hash_tag(configuration: &configuration::Configuration) -> Result<(), Error> {
3 let params: AddHashTagParams = AddHashTagParams {
4 tenant_id: Some("acme-corp-tenant".to_string()),
5 create_hash_tag_body: Some(models::CreateHashTagBody {
6 tag: "breaking-news".to_string(),
7 label: Some("Breaking News".to_string()),
8 visible: Some(true),
9 }),
10 };
11
12 let created: AddHashTag200Response = add_hash_tag(configuration, params).await?;
13 println!("{:#?}", created);
14 Ok(())
15}
16

add_hash_tags_bulk Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์•„๋‹ˆ์š”
bulk_create_hash_tags_body models::BulkCreateHashTagsBody ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: AddHashTagsBulk200Response

์˜ˆ์ œ

add_hash_tags_bulk ์˜ˆ์ œ
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: AddHashTagsBulkParams = AddHashTagsBulkParams {
4 tenant_id: Some("acme-corp-tenant".to_string()),
5 bulk_create_hash_tags_body: Some(models::BulkCreateHashTagsBody {
6 tags: vec![
7 models::BulkCreateHashTagsBodyTagsInner {
8 name: "news/article".to_string(),
9 path: "news/article".to_string(),
10 description: Some("Article tag for front page".to_string()),
11 enabled: Some(true),
12 },
13 ],
14 }),
15 };
16
17 let response: AddHashTagsBulk200Response = add_hash_tags_bulk(&configuration, params).await?;
18 Ok(())
19}
20

delete_hash_tag Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tag String ์˜ˆ
tenant_id String ์•„๋‹ˆ์š”
delete_hash_tag_request models::DeleteHashTagRequest ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

delete_hash_tag ์˜ˆ์ œ
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: DeleteHashTagParams = DeleteHashTagParams {
4 tag: "news/politics".to_string(),
5 tenant_id: Some("acme-corp-tenant".to_string()),
6 delete_hash_tag_request: Some(models::DeleteHashTagRequest::default()),
7 };
8 let response: FlagCommentPublic200Response = delete_hash_tag(&configuration, params).await?;
9 Ok(())
10}
11

get_hash_tags Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
page f64 ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: GetHashTags200Response

์˜ˆ์ œ

get_hash_tags ์˜ˆ์ œ
Copy Copy
1
2async fn example_get_hash_tags() -> Result<GetHashTags200Response, Error> {
3 let params: GetHashTagsParams = GetHashTagsParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 page: Some(1.0_f64),
6 };
7 let response: GetHashTags200Response = get_hash_tags(&configuration, params).await?;
8 Ok(response)
9}
10

patch_hash_tag Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tag String ์˜ˆ
tenant_id String ์•„๋‹ˆ์š”
update_hash_tag_body models::UpdateHashTagBody ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: PatchHashTag200Response

์˜ˆ์ œ

patch_hash_tag ์˜ˆ์ œ
Copy Copy
1
2async fn run_patch_hash_tag() -> Result<PatchHashTag200Response, Error> {
3 let params: PatchHashTagParams = PatchHashTagParams {
4 tag: "breaking-news".to_string(),
5 tenant_id: Some("acme-corp-tenant".to_string()),
6 update_hash_tag_body: Some(models::UpdateHashTagBody {
7 name: "Breaking News".to_string(),
8 description: "Posts about breaking news and urgent updates".to_string(),
9 synonyms: vec!["breaking".to_string(), "urgent".to_string()],
10 is_active: true,
11 }),
12 };
13 let response: PatchHashTag200Response = patch_hash_tag(&configuration, params).await?;
14 Ok(response)
15}
16

create_moderator Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
create_moderator_body models::CreateModeratorBody ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: CreateModerator200Response

์˜ˆ์ œ

create_moderator ์˜ˆ์ œ
Copy Copy
1
2async fn run_create_moderator() -> Result<(), Error> {
3 let params: CreateModeratorParams = CreateModeratorParams {
4 tenant_id: "acme-corp-tenant".to_owned(),
5 create_moderator_body: models::CreateModeratorBody {
6 email: "jane.doe@acme.com".to_owned(),
7 display_name: "Jane Doe".to_owned(),
8 role: Some("moderator".to_owned()),
9 active: Some(true),
10 notes: Some("Handles product and support forums".to_owned()),
11 permissions: Some(vec!["approve_comment".to_owned(), "delete_comment".to_owned()]),
12 },
13 };
14
15 let _response: CreateModerator200Response = create_moderator(&configuration, params).await?;
16 Ok(())
17}
18

delete_moderator Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
send_email String ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

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

get_moderator Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

Name Type Required Description
tenant_id String ์˜ˆ
id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetModerator200Response

์˜ˆ์ œ

get_moderator ์˜ˆ์ œ
Copy Copy
1
2async fn example() -> Result<(), Error> {
3 let params: GetModeratorParams = GetModeratorParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "moderator-42".to_string(),
6 include: Some(vec!["roles".to_string(), "recent_comments".to_string()]),
7 };
8 let moderator: GetModerator200Response = get_moderator(&configuration, params).await?;
9 println!("{:#?}", moderator);
10 Ok(())
11}
12

get_moderators Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
skip f64 ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: GetModerators200Response

์˜ˆ์ œ

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

send_invite Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
from_name String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

send_invite ์˜ˆ์ œ
Copy Copy
1
2let params: SendInviteParams = SendInviteParams {
3 tenant_id: "acme-corp-tenant".to_string(),
4 id: "articles/2026/01/ai-news-12345".to_string(),
5 from_name: "Acme Newsroom".to_string(),
6 reply_to: Some("editorial@acme.com".to_string()),
7 message: Some("You have been invited to moderate comments on this article.".to_string()),
8};
9
10let invite_response: FlagCommentPublic200Response = send_invite(&configuration, params).await?;
11

update_moderator Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String Yes
id String Yes
update_moderator_body models::UpdateModeratorBody Yes

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

update_moderator ์˜ˆ์ œ
Copy Copy
1
2let params: UpdateModeratorParams = UpdateModeratorParams {
3 tenant_id: "acme-corp-tenant".to_string(),
4 id: "moderator-12345".to_string(),
5 update_moderator_body: models::UpdateModeratorBody {
6 username: "jane.doe".to_string(),
7 display_name: Some("Jane Doe".to_string()),
8 email: Some("jane.doe@acme.com".to_string()),
9 is_active: Some(true),
10 permissions: Some(vec!["moderate_comments".to_string(), "view_reports".to_string()]),
11 },
12};
13let response: FlagCommentPublic200Response = update_moderator(&configuration, params).await?;
14

delete_notification_count Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

delete_notification_count ์˜ˆ์ œ
Copy Copy
1
2async fn run_delete_notification_count(configuration: &configuration::Configuration) -> Result<FlagCommentPublic200Response, Error> {
3 let params: DeleteNotificationCountParams = DeleteNotificationCountParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "notification-9f8b7a6".to_string(),
6 };
7 let response: FlagCommentPublic200Response = delete_notification_count(configuration, params).await?;
8 Ok(response)
9}
10

get_cached_notification_count Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetCachedNotificationCount200Response

์˜ˆ์ œ

get_cached_notification_count ์˜ˆ์ œ
Copy Copy
1
2async fn run_get_cached_notification_count() -> Result<(), Error> {
3 let params: GetCachedNotificationCountParams = GetCachedNotificationCountParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "news/article-12345".to_string(),
6 };
7 let preferred_channel: Option<String> = Some("email".to_string());
8 let response: GetCachedNotificationCount200Response =
9 get_cached_notification_count(&configuration, params).await?;
10 Ok(())
11}
12

get_notification_count Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
user_id String ์•„๋‹ˆ์š”
url_id String ์•„๋‹ˆ์š”
from_comment_id String ์•„๋‹ˆ์š”
viewed bool ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: GetNotificationCount200Response

์˜ˆ์ œ

get_notification_count ์˜ˆ์ œ
Copy Copy
1
2async fn example_get_notification_count() -> Result<GetNotificationCount200Response, Error> {
3 let params: GetNotificationCountParams = GetNotificationCountParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 user_id: Some(String::from("user-12345")),
6 url_id: Some(String::from("news/article/2026/product-launch")),
7 from_comment_id: Some(String::from("cmt-000987")),
8 viewed: Some(false),
9 };
10 let response: GetNotificationCount200Response = get_notification_count(&configuration, params).await?;
11 Ok(response)
12}
13

get_notifications Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
user_id String ์•„๋‹ˆ์š”
url_id String ์•„๋‹ˆ์š”
from_comment_id String ์•„๋‹ˆ์š”
viewed bool ์•„๋‹ˆ์š”
skip f64 ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: GetNotifications200Response

์˜ˆ์ œ

get_notifications ์˜ˆ์ œ
Copy Copy
1
2async fn fetch_notifications() -> Result<(), Error> {
3 let params: GetNotificationsParams = GetNotificationsParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 user_id: Some("user-1234".to_string()),
6 url_id: Some("news/politics/article-2026-01-12".to_string()),
7 from_comment_id: Some("cmt-98765".to_string()),
8 viewed: Some(false),
9 skip: Some(0.0),
10 };
11 let notifications: GetNotifications200Response = get_notifications(&configuration, params).await?;
12 let _ = notifications;
13 Ok(())
14}
15

update_notification Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
update_notification_body models::UpdateNotificationBody ์˜ˆ
user_id String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

update_notification ์˜ˆ์ œ
Copy Copy
1
2pub async fn run_update_notification(configuration: &configuration::Configuration) -> Result<FlagCommentPublic200Response, Error> {
3 let params: UpdateNotificationParams = UpdateNotificationParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "notification-67890".to_string(),
6 update_notification_body: models::UpdateNotificationBody {
7 title: Some("Flag Review Complete".to_string()),
8 message: Some("A moderator reviewed the flagged comment and marked it resolved.".to_string()),
9 resolved: Some(true),
10 channels: Some(vec!["email".to_string(), "in_app".to_string()]),
11 },
12 user_id: Some("moderator-007".to_string()),
13 };
14 let response: FlagCommentPublic200Response = update_notification(configuration, params).await?;
15 Ok(response)
16}
17

add_page Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
create_api_page_data models::CreateApiPageData ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: AddPageApiResponse


delete_page Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: DeletePageApiResponse

get_page_by_urlid Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
url_id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetPageByUrlidApiResponse


get_pages Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetPagesApiResponse


patch_page Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
update_api_page_data models::UpdateApiPageData ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: PatchPageApiResponse


delete_pending_webhook_event Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

delete_pending_webhook_event ์˜ˆ์ œ
Copy Copy
1
2async fn run() -> Result<FlagCommentPublic200Response, Error> {
3 let event_id_opt: Option<String> = Some("webhook-event/news-article-2026-01-10-1234".to_string());
4 let event_id: String = event_id_opt.unwrap();
5 let params: DeletePendingWebhookEventParams = DeletePendingWebhookEventParams {
6 tenant_id: "acme-corp-tenant".to_string(),
7 id: event_id,
8 };
9 let response: FlagCommentPublic200Response = delete_pending_webhook_event(&configuration, params).await?;
10 Ok(response)
11}
12

get_pending_webhook_event_count Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
comment_id String ์•„๋‹ˆ์š”
external_id String ์•„๋‹ˆ์š”
event_type String ์•„๋‹ˆ์š”
domain String ์•„๋‹ˆ์š”
attempt_count_gt f64 ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: GetPendingWebhookEventCount200Response

์˜ˆ์ œ

get_pending_webhook_event_count ์˜ˆ์ œ
Copy Copy
1
2async fn example() -> Result<GetPendingWebhookEventCount200Response, Error> {
3 let params: GetPendingWebhookEventCountParams = GetPendingWebhookEventCountParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 comment_id: Some("cmt-12345".to_string()),
6 external_id: Some("news/article-98765".to_string()),
7 event_type: Some("comment.created".to_string()),
8 domain: Some("news.example.com".to_string()),
9 attempt_count_gt: Some(2.0),
10 };
11 let response: GetPendingWebhookEventCount200Response =
12 get_pending_webhook_event_count(&configuration, params).await?;
13 Ok(response)
14}
15

get_pending_webhook_events Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
comment_id String ์•„๋‹ˆ์˜ค
external_id String ์•„๋‹ˆ์˜ค
event_type String ์•„๋‹ˆ์˜ค
domain String ์•„๋‹ˆ์˜ค
attempt_count_gt f64 ์•„๋‹ˆ์˜ค
skip f64 ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: GetPendingWebhookEvents200Response

์˜ˆ์ œ

get_pending_webhook_events ์˜ˆ์ œ
Copy Copy
1
2let params: GetPendingWebhookEventsParams = GetPendingWebhookEventsParams {
3 tenant_id: "acme-corp-tenant".to_string(),
4 comment_id: Some("cmt-12345".to_string()),
5 external_id: Some("article-98765".to_string()),
6 event_type: Some("comment.create".to_string()),
7 domain: Some("news.example.com".to_string()),
8 attempt_count_gt: Some(1.0),
9 skip: Some(0.0),
10};
11
12let pending: GetPendingWebhookEvents200Response = get_pending_webhook_events(&configuration, params).await?;
13

create_question_config Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
create_question_config_body models::CreateQuestionConfigBody ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: CreateQuestionConfig200Response

์˜ˆ์ œ

create_question_config ์˜ˆ์ œ
Copy Copy
1
2let params: CreateQuestionConfigParams = CreateQuestionConfigParams {
3 tenant_id: String::from("acme-corp-tenant"),
4 create_question_config_body: models::CreateQuestionConfigBody {
5 key: String::from("article-usefulness"),
6 label: Some(String::from("Was this article useful?")),
7 description: Some(String::from("Help us improve by rating this article.")),
8 required: Some(true),
9 rendering_type: Some(models::QuestionRenderingType::MultipleChoice),
10 custom_options: Some(vec![
11 models::QuestionConfigCustomOptionsInner { value: String::from("1"), label: Some(String::from("Not useful")) },
12 models::QuestionConfigCustomOptionsInner { value: String::from("3"), label: Some(String::from("Somewhat useful")) },
13 models::QuestionConfigCustomOptionsInner { value: String::from("5"), label: Some(String::from("Very useful")) },
14 ]),
15 enabled: Some(true),
16 },
17};
18let response: CreateQuestionConfig200Response = create_question_config(configuration, params).await?;
19

delete_question_config Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

delete_question_config ์˜ˆ์ œ
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: DeleteQuestionConfigParams = DeleteQuestionConfigParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "news/article-comments-config-2025".to_string(),
6 force: Some(true),
7 };
8 let response: FlagCommentPublic200Response = delete_question_config(&configuration, params).await?;
9 Ok(())
10}
11

get_question_config Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ

๋ฐ˜ํ™˜

๋ฐ˜ํ™˜: GetQuestionConfig200Response

์˜ˆ์ œ

get_question_config ์˜ˆ์ œ
Copy Copy
1
2async fn fetch_question_config() -> Result<(), Error> {
3 let tenant_env: Option<&str> = Some("prod");
4 let tenant_id: String = match tenant_env {
5 Some(env) => format!("acme-corp-tenant-{}", env),
6 None => "acme-corp-tenant".to_string(),
7 };
8 let params: GetQuestionConfigParams = GetQuestionConfigParams {
9 tenant_id,
10 id: "news/article/2026/01/12-politics".to_string(),
11 };
12 let response: GetQuestionConfig200Response = get_question_config(&configuration, params).await?;
13 let _status: ApiStatus = response.0;
14 Ok(())
15}
16

get_question_configs Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
skip f64 ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: GetQuestionConfigs200Response

์˜ˆ์ œ

get_question_configs ์˜ˆ์ œ
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: GetQuestionConfigsParams = GetQuestionConfigsParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 skip: Some(10.0),
6 };
7 let response: GetQuestionConfigs200Response = get_question_configs(&configuration, params).await?;
8 let _cfgs: GetQuestionConfigs200Response = response;
9 Ok(())
10}
11

update_question_config Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
update_question_config_body models::UpdateQuestionConfigBody ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

update_question_config ์˜ˆ์ œ
Copy Copy
1
2async fn run_update() -> Result<(), Error> {
3 let params: UpdateQuestionConfigParams = UpdateQuestionConfigParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 id: String::from("news/article-2026-01-12"),
6 update_question_config_body: models::UpdateQuestionConfigBody {
7 question_text: String::from("Did you find this reporting accurate?"),
8 required: Some(true),
9 rendering_type: Some(models::QuestionRenderingType::Inline),
10 options: Some(vec![
11 models::QuestionConfigCustomOptionsInner { id: String::from("opt-yes"), label: String::from("Yes"), value: String::from("yes") },
12 models::QuestionConfigCustomOptionsInner { id: String::from("opt-no"), label: String::from("No"), value: String::from("no") },
13 ]),
14 when_save: Some(models::QuestionWhenSave::OnSubmit),
15 },
16 };
17 let response: FlagCommentPublic200Response = update_question_config(&configuration, params).await?;
18 Ok(())
19}
20

create_question_result Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
create_question_result_body models::CreateQuestionResultBody ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: CreateQuestionResult200Response

์˜ˆ์ œ

create_question_result ์˜ˆ์ œ
Copy Copy
1
2async fn run() -> 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: "feedback-article-2026".to_string(),
7 comment_id: Some("cmt-2026-001".to_string()),
8 user_id: Some("reader-007".to_string()),
9 answer: "yes".to_string(),
10 score: Some(4),
11 metadata: Some(std::collections::HashMap::from([(
12 "path".to_string(),
13 "news/politics/2026-election".to_string(),
14 )])),
15 anonymous: Some(false),
16 submitted_at: Some("2026-01-12T09:15:00Z".to_string()),
17 },
18 };
19
20 let created: CreateQuestionResult200Response = create_question_result(&configuration, params).await?;
21 Ok(())
22}
23

delete_question_result Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String Yes
id String Yes

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

delete_question_result ์˜ˆ์ œ
Copy Copy
1
2async fn run_delete() -> Result<(), Error> {
3 let params: DeleteQuestionResultParams = DeleteQuestionResultParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "news/article/12345/question/67890".to_string(),
6 dry_run: Some(false),
7 request_id: Some("req-20260112-7a3b".to_string()),
8 };
9 let response: FlagCommentPublic200Response = delete_question_result(&configuration, params).await?;
10 Ok(())
11}
12

get_question_result Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetQuestionResult200Response

์˜ˆ์ œ

get_question_result ์˜ˆ์ œ
Copy Copy
1
2async fn run() -> Result<GetQuestionResult200Response, Error> {
3 let include_metadata: Option<bool> = Some(true);
4 let params: GetQuestionResultParams = GetQuestionResultParams {
5 tenant_id: "acme-corp-tenant".to_string(),
6 id: "news/article/2026/12345".to_string(),
7 };
8 let response: GetQuestionResult200Response = get_question_result(&configuration, params).await?;
9 Ok(response)
10}
11

get_question_results Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
url_id String ์•„๋‹ˆ์š”
user_id String ์•„๋‹ˆ์š”
start_date String ์•„๋‹ˆ์š”
question_id String ์•„๋‹ˆ์š”
question_ids String ์•„๋‹ˆ์š”
skip f64 ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: GetQuestionResults200Response

์˜ˆ์ œ

get_question_results ์˜ˆ์ œ
Copy Copy
1
2async fn example_get_question_results() -> Result<(), Error> {
3 let params = GetQuestionResultsParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 url_id: Some(String::from("news/article/2026/01/12/breaking")),
6 user_id: Some(String::from("user-98765")),
7 start_date: Some(String::from("2025-12-01")),
8 question_id: Some(String::from("q-42")),
9 question_ids: Some(String::from("q-42,q-43")),
10 skip: Some(10.0),
11 };
12 let results: GetQuestionResults200Response = get_question_results(&configuration, params).await?;
13 Ok(())
14}
15

update_question_result Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
update_question_result_body models::UpdateQuestionResultBody ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

update_question_result ์˜ˆ์ œ
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let body: models::UpdateQuestionResultBody = models::UpdateQuestionResultBody {
4 question_id: "q-12345".to_string(),
5 result: true,
6 comment: Some("Marked by moderator after review".to_string()),
7 };
8
9 let params: UpdateQuestionResultParams = UpdateQuestionResultParams {
10 tenant_id: "acme-corp-tenant".to_string(),
11 id: "news/article/98765".to_string(),
12 update_question_result_body: body,
13 };
14
15 let response: FlagCommentPublic200Response = update_question_result(&configuration, params).await?;
16 println!("{:#?}", response);
17 Ok(())
18}
19

aggregate_question_results Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
question_id String ์•„๋‹ˆ์š”
question_ids Vec ์•„๋‹ˆ์š”
url_id String ์•„๋‹ˆ์š”
time_bucket models::AggregateTimeBucket ์•„๋‹ˆ์š”
start_date String ์•„๋‹ˆ์š”
force_recalculate bool ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: AggregateQuestionResults200Response


bulk_aggregate_question_results Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

Name Type Required Description
tenant_id String ์˜ˆ
bulk_aggregate_question_results_request models::BulkAggregateQuestionResultsRequest ์˜ˆ
force_recalculate bool ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: BulkAggregateQuestionResults200Response


combine_comments_with_question_results Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
question_id String ์•„๋‹ˆ์˜ค
question_ids Vec ์•„๋‹ˆ์˜ค
url_id String ์•„๋‹ˆ์˜ค
start_date String ์•„๋‹ˆ์˜ค
force_recalculate bool ์•„๋‹ˆ์˜ค
min_value f64 ์•„๋‹ˆ์˜ค
max_value f64 ์•„๋‹ˆ์˜ค
limit f64 ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: CombineCommentsWithQuestionResults200Response


add_sso_user Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
create_apisso_user_data models::CreateApissoUserData ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: AddSsoUserApiResponse


delete_sso_user Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
delete_comments bool ์•„๋‹ˆ์˜ค
comment_delete_mode String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: DeleteSsoUserApiResponse


get_sso_user_by_email Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
email String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetSsoUserByEmailApiResponse


get_sso_user_by_id Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetSsoUserByIdApiResponse


get_sso_users Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
skip i32 ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: GetSsoUsers200Response


patch_sso_user Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
update_apisso_user_data models::UpdateApissoUserData ์˜ˆ
update_comments bool ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: PatchSsoUserApiResponse


put_sso_user Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
update_apisso_user_data models::UpdateApissoUserData ์˜ˆ
update_comments bool ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: PutSsoUserApiResponse


create_subscription Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
create_api_user_subscription_data models::CreateApiUserSubscriptionData ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: CreateSubscriptionApiResponse


delete_subscription Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
user_id String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: DeleteSubscriptionApiResponse


get_subscriptions Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
user_id String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: GetSubscriptionsApiResponse


get_tenant_daily_usages Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
year_number f64 ์•„๋‹ˆ์˜ค
month_number f64 ์•„๋‹ˆ์˜ค
day_number f64 ์•„๋‹ˆ์˜ค
skip f64 ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: GetTenantDailyUsages200Response

์˜ˆ์ œ

get_tenant_daily_usages ์˜ˆ์ œ
Copy Copy
1
2async fn example() -> Result<GetTenantDailyUsages200Response, Error> {
3 let params: GetTenantDailyUsagesParams = GetTenantDailyUsagesParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 year_number: Some(2024.0),
6 month_number: Some(9.0),
7 day_number: Some(15.0),
8 skip: Some(0.0),
9 };
10 let response: GetTenantDailyUsages200Response = get_tenant_daily_usages(&configuration, params).await?;
11 Ok(response)
12}
13

create_tenant_package Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

Name Type Required Description
tenant_id String Yes
create_tenant_package_body models::CreateTenantPackageBody Yes

์‘๋‹ต

๋ฐ˜ํ™˜: CreateTenantPackage200Response

์˜ˆ์ œ

create_tenant_package ์˜ˆ์ œ
Copy Copy
1
2async fn run_create_package() -> 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 News Package".to_string(),
7 description: Some("Moderated comments for Acme News articles".to_string()),
8 plan: Some("standard".to_string()),
9 allow_gifs: Some(true),
10 gif_rating: Some(GifRating::GeneralAudience),
11 image_content_profanity_level: Some(ImageContentProfanityLevel::Moderate),
12 sso_security_level: Some(SsoSecurityLevel::Strict),
13 custom_config: Some(CustomConfigParameters {
14 max_comment_length: Some(1000),
15 require_moderation: Some(true),
16 }),
17 },
18 };
19 let response: CreateTenantPackage200Response = create_tenant_package(&configuration, params).await?;
20 let _package: TenantPackage = response.0;
21 Ok(())
22}
23

delete_tenant_package Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

delete_tenant_package ์˜ˆ์ œ
Copy Copy
1
2let params: DeleteTenantPackageParams = DeleteTenantPackageParams {
3 tenant_id: "acme-corp-tenant".to_string(),
4 id: "pkg-news-comments-2025-01".to_string(),
5 cascade: Some(true),
6};
7let response: FlagCommentPublic200Response = delete_tenant_package(&configuration, params).await?;
8

get_tenant_package Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetTenantPackage200Response

์˜ˆ์ œ

get_tenant_package ์˜ˆ์ œ
Copy Copy
1
2async fn example_get_tenant_package(configuration: &configuration::Configuration) -> Result<GetTenantPackage200Response, Error> {
3 let params: GetTenantPackageParams = GetTenantPackageParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "premium-plan".to_string(),
6 include_details: Some(true),
7 };
8 let package: GetTenantPackage200Response = get_tenant_package(configuration, params).await?;
9 Ok(package)
10}
11

get_tenant_packages Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

Name Type Required Description
tenant_id String ์˜ˆ
skip f64 ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: GetTenantPackages200Response

์˜ˆ์ œ

get_tenant_packages ์˜ˆ์ œ
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: GetTenantPackagesParams = GetTenantPackagesParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 skip: Some(20.0),
6 };
7 let _packages: GetTenantPackages200Response = get_tenant_packages(&configuration, params).await?;
8 Ok(())
9}
10

replace_tenant_package Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
replace_tenant_package_body models::ReplaceTenantPackageBody ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

replace_tenant_package ์˜ˆ์ œ
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: "package-basic-2026".to_string(),
6 replace_tenant_package_body: models::ReplaceTenantPackageBody {
7 name: "Moderation Basic".to_string(),
8 description: Some("Standard moderation package for news sites".to_string()),
9 enabled: Some(true),
10 plan: Some("standard".to_string()),
11 custom_config_parameters: Some(models::CustomConfigParameters {
12 max_comment_length: Some(1000),
13 allow_images: Some(true),
14 }),
15 vote_style: Some(models::VoteStyle::Thumbs),
16 },
17 };
18 let response = replace_tenant_package(&configuration, params).await?;
19 Ok(response)
20}
21

update_tenant_package Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String Yes
id String Yes
update_tenant_package_body models::UpdateTenantPackageBody Yes

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

update_tenant_package ์˜ˆ์ œ
Copy Copy
1
2async fn example_update_tenant_package() -> Result<FlagCommentPublic200Response, Error> {
3 let params: UpdateTenantPackageParams = UpdateTenantPackageParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "pro-plan-2026".to_string(),
6 update_tenant_package_body: models::UpdateTenantPackageBody {
7 name: Some("Pro Plan".to_string()),
8 description: Some("Priority support, custom branding, and advanced moderation tools".to_string()),
9 enabled: Some(true),
10 monthly_price_cents: Some(1999),
11 features: Some(vec![
12 "priority_support".to_string(),
13 "custom_branding".to_string(),
14 "advanced_moderation".to_string(),
15 ]),
16 },
17 };
18
19 let response: FlagCommentPublic200Response = update_tenant_package(&configuration, params).await?;
20 Ok(response)
21}
22

create_tenant_user Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
create_tenant_user_body models::CreateTenantUserBody ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: CreateTenantUser200Response

์˜ˆ์ œ

create_tenant_user ์˜ˆ์ œ
Copy Copy
1
2let create_tenant_user_body: models::CreateTenantUserBody = models::CreateTenantUserBody {
3 email: "jane.doe@acme.com".to_string(),
4 display_name: Some("Jane Doe".to_string()),
5 role: Some("moderator".to_string()),
6 external_id: Some("acme-12345".to_string()),
7 subscribed_to_digest: Some(false),
8};
9let params: CreateTenantUserParams = CreateTenantUserParams {
10 tenant_id: "acme-corp-tenant".to_string(),
11 create_tenant_user_body,
12};
13let response: CreateTenantUser200Response = create_tenant_user(&configuration, params).await?;
14

delete_tenant_user Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ Type ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
delete_comments String ์•„๋‹ˆ์˜ค
comment_delete_mode String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

delete_tenant_user ์˜ˆ์ œ
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-12345".to_string(),
6 delete_comments: Some("true".to_string()),
7 comment_delete_mode: Some("cascade".to_string()),
8 };
9 let resp: FlagCommentPublic200Response = delete_tenant_user(&configuration, params).await?;
10 Ok(resp)
11}
12

get_tenant_user Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetTenantUser200Response

์˜ˆ์ œ

get_tenant_user ์˜ˆ์ œ
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: GetTenantUserParams = GetTenantUserParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "user-7a3f2b".to_string(),
6 };
7 let include_related: Option<String> = Some("roles,preferences".to_string());
8 let response: GetTenantUser200Response = get_tenant_user(&configuration, params).await?;
9 Ok(())
10}
11

get_tenant_users Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
skip f64 ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: GetTenantUsers200Response

์˜ˆ์ œ

get_tenant_users ์˜ˆ์ œ
Copy Copy
1
2async fn fetch_tenant_users() -> Result<GetTenantUsers200Response, Error> {
3 let params: GetTenantUsersParams = GetTenantUsersParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 skip: Some(10.0),
6 };
7 let response: GetTenantUsers200Response = get_tenant_users(&configuration, params).await?;
8 Ok(response)
9}
10

replace_tenant_user Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
replace_tenant_user_body models::ReplaceTenantUserBody ์˜ˆ
update_comments String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

replace_tenant_user ์˜ˆ์ œ
Copy Copy
1
2let cfg: &configuration::Configuration = &configuration;
3let replace_tenant_user_body: models::ReplaceTenantUserBody = models::ReplaceTenantUserBody {
4 external_id: Some("acct-834".to_string()),
5 email: Some("jane.doe@acme-news.com".to_string()),
6 display_name: Some("Jane Doe".to_string()),
7 role: Some("moderator".to_string()),
8};
9let params: ReplaceTenantUserParams = ReplaceTenantUserParams {
10 tenant_id: "acme-corp-tenant".to_string(),
11 id: "user-834".to_string(),
12 replace_tenant_user_body,
13 update_comments: Some("true".to_string()),
14};
15let resp: FlagCommentPublic200Response = replace_tenant_user(cfg, params).await?;
16

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
redirect_url String ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

send_login_link ์˜ˆ์ œ
Copy Copy
1
2async fn example_send_login_link() -> Result<FlagCommentPublic200Response, Error> {
3 let params: SendLoginLinkParams = SendLoginLinkParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "jane.doe@acme.com".to_string(),
6 redirect_url: Some("https://acme.example.com/dashboard".to_string()),
7 };
8 let response: FlagCommentPublic200Response = send_login_link(&configuration, params).await?;
9 Ok(response)
10}
11

update_tenant_user Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
update_tenant_user_body models::UpdateTenantUserBody ์˜ˆ
update_comments String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

update_tenant_user ์˜ˆ์ œ
Copy Copy
1
2async fn update_user_example(configuration: &configuration::Configuration) -> Result<(), Error> {
3 let params: UpdateTenantUserParams = UpdateTenantUserParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "user-78b2".to_string(),
6 update_tenant_user_body: models::UpdateTenantUserBody {
7 username: "jdoe".to_string(),
8 display_name: "John Doe".to_string(),
9 email: "john.doe@acme.com".to_string(),
10 roles: vec!["moderator".to_string()],
11 suspended: false,
12 },
13 update_comments: Some("Promoted to moderator for community moderation".to_string()),
14 };
15 let response: FlagCommentPublic200Response = update_tenant_user(configuration, params).await?;
16 println!("updated user response status: {:?}", response);
17 Ok(())
18}
19

create_tenant Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
create_tenant_body models::CreateTenantBody ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: CreateTenant200Response

์˜ˆ์ œ

create_tenant ์˜ˆ์ œ
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: CreateTenantParams = CreateTenantParams {
4 tenant_id: "acme-news-tenant".to_string(),
5 create_tenant_body: models::CreateTenantBody {
6 name: "Acme News".to_string(),
7 domain: Some("news.acme.com".to_string()),
8 api_domain_configuration: Some(models::ApiDomainConfiguration {
9 domain: "api.news.acme.com".to_string(),
10 enforce_https: true,
11 }),
12 billing_info: Some(models::BillingInfo {
13 contact_email: "billing@acme.com".to_string(),
14 plan_id: "pro_monthly".to_string(),
15 }),
16 imported_site_type: Some(models::ImportedSiteType::Articles),
17 ..Default::default()
18 },
19 };
20
21 let created: CreateTenant200Response = create_tenant(&configuration, params).await?;
22 Ok(())
23}
24

delete_tenant Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
sure String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

delete_tenant ์˜ˆ์ œ
Copy Copy
1
2async fn example_delete_tenant() -> Result<FlagCommentPublic200Response, Error> {
3 let params: DeleteTenantParams = DeleteTenantParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "news/article-12345".to_string(),
6 sure: Some("confirm".to_string()),
7 };
8 let response: FlagCommentPublic200Response = delete_tenant(&configuration, params).await?;
9 Ok(response)
10}
11

get_tenant Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetTenant200Response

์˜ˆ์ œ

get_tenant ์˜ˆ์ œ
Copy Copy
1
2async fn run_get_tenant() -> Result<(), Error> {
3 let params: GetTenantParams = GetTenantParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 id: String::from("news/article"),
6 };
7 let include_metadata: Option<bool> = Some(true);
8 let tenant_response: GetTenant200Response = get_tenant(&configuration, params).await?;
9 Ok(())
10}
11

get_tenants Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
meta String ์•„๋‹ˆ์˜ค
skip f64 ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: GetTenants200Response

์˜ˆ์ œ

get_tenants ์˜ˆ์ œ
Copy Copy
1
2async fn run() -> Result<(), Error> {
3 let params: GetTenantsParams = GetTenantsParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 meta: Some(String::from("include=domains,settings")),
6 skip: Some(10.0),
7 };
8 let response: GetTenants200Response = get_tenants(&configuration, params).await?;
9 Ok(())
10}
11

update_tenant Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

Name Type Required Description
tenant_id String ์˜ˆ
id String ์˜ˆ
update_tenant_body models::UpdateTenantBody ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: FlagCommentPublic200Response

์˜ˆ์ œ

update_tenant ์˜ˆ์ œ
Copy Copy
1
2async fn run_update_tenant() -> Result<FlagCommentPublic200Response, Error> {
3 let params: UpdateTenantParams = UpdateTenantParams {
4 tenant_id: "acme-corp-tenant".to_owned(),
5 id: "site-42".to_owned(),
6 update_tenant_body: models::UpdateTenantBody {
7 name: Some("Acme Corporation".to_string()),
8 default_site: Some("news/article".to_string()),
9 allowed_origins: Some(vec![
10 "https://www.acme.com".to_string(),
11 "https://blog.acme.com".to_string(),
12 ]),
13 invite_only: Some(false),
14 api_domain_configuration: Some(ApiDomainConfiguration {
15 domain: "comments.acme.com".to_string(),
16 secure: Some(true),
17 ..Default::default()
18 }),
19 ..Default::default()
20 },
21 };
22 let response: FlagCommentPublic200Response = update_tenant(&configuration, params).await?;
23 Ok(response)
24}
25

upload_image Internal Link

์ด๋ฏธ์ง€ ์—…๋กœ๋“œ ๋ฐ ํฌ๊ธฐ ์กฐ์ •

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
file std::path::PathBuf ์˜ˆ
size_preset models::SizePreset ์•„๋‹ˆ์˜ค
url_id String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: UploadImageResponse

get_user_badge_progress_by_id Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetUserBadgeProgressById200Response


get_user_badge_progress_by_user_id Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

Name Type Required Description
tenant_id String ์˜ˆ
user_id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetUserBadgeProgressById200Response

get_user_badge_progress_list Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
user_id String ์•„๋‹ˆ์˜ค
limit f64 ์•„๋‹ˆ์˜ค
skip f64 ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: GetUserBadgeProgressList200Response


create_user_badge Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
create_user_badge_params models::CreateUserBadgeParams ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: CreateUserBadge200Response


delete_user_badge Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: UpdateUserBadge200Response


get_user_badge Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetUserBadge200Response


get_user_badges Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

Name Type Required Description
tenant_id String ์˜ˆ
user_id String ์•„๋‹ˆ์š”
badge_id String ์•„๋‹ˆ์š”
displayed_on_comments bool ์•„๋‹ˆ์š”
limit f64 ์•„๋‹ˆ์š”
skip f64 ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: GetUserBadges200Response


update_user_badge Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํƒ€์ž… ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ
update_user_badge_params models::UpdateUserBadgeParams ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: UpdateUserBadge200Response

get_user_notification_count Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
sso String ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: GetUserNotificationCount200Response


get_user_notifications Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

Name Type ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
page_size i32 ์•„๋‹ˆ์˜ค
after_id String ์•„๋‹ˆ์˜ค
include_context bool ์•„๋‹ˆ์˜ค
after_created_at i64 ์•„๋‹ˆ์˜ค
unread_only bool ์•„๋‹ˆ์˜ค
dm_only bool ์•„๋‹ˆ์˜ค
no_dm bool ์•„๋‹ˆ์˜ค
include_translations bool ์•„๋‹ˆ์˜ค
sso String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: GetUserNotifications200Response


reset_user_notification_count Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
sso String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: ResetUserNotifications200Response

reset_user_notifications Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
after_id String ์•„๋‹ˆ์˜ค
after_created_at i64 ์•„๋‹ˆ์˜ค
unread_only bool ์•„๋‹ˆ์˜ค
dm_only bool ์•„๋‹ˆ์˜ค
no_dm bool ์•„๋‹ˆ์˜ค
sso String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: ResetUserNotifications200Response


update_user_notification_comment_subscription_status Internal Link


ํŠน์ • ๋Œ“๊ธ€์— ๋Œ€ํ•œ ์•Œ๋ฆผ์„ ํ™œ์„ฑํ™”ํ•˜๊ฑฐ๋‚˜ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
notification_id String ์˜ˆ
opted_in_or_out String ์˜ˆ
comment_id String ์˜ˆ
sso String ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: UpdateUserNotificationStatus200Response


update_user_notification_page_subscription_status Internal Link


ํŽ˜์ด์ง€์— ๋Œ€ํ•œ ์•Œ๋ฆผ์„ ํ™œ์„ฑํ™”ํ•˜๊ฑฐ๋‚˜ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ํŽ˜์ด์ง€๋ฅผ ๊ตฌ๋…ํ•˜๋ฉด ์ƒˆ ๋ฃจํŠธ ๋Œ“๊ธ€์— ๋Œ€ํ•ด ์•Œ๋ฆผ์ด ์ƒ์„ฑ๋˜๋ฉฐ, ๋˜ํ•œ

๋งค๊ฐœ๋ณ€์ˆ˜

Name Type Required Description
tenant_id String Yes
url_id String Yes
url String Yes
page_title String Yes
subscribed_or_unsubscribed String Yes
sso String No

์‘๋‹ต

๋ฐ˜ํ™˜: UpdateUserNotificationStatus200Response


update_user_notification_status Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
notification_id String ์˜ˆ
new_status String ์˜ˆ
sso String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: UpdateUserNotificationStatus200Response


get_user_presence_statuses Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
url_id_ws String ์˜ˆ
user_ids String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetUserPresenceStatuses200Response


search_users Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
url_id String ์˜ˆ
username_starts_with String ์˜ˆ
mention_group_ids Vec ์•„๋‹ˆ์˜ค
sso String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: SearchUsers200Response


get_user Internal Link


๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetUser200Response

์˜ˆ์ œ

get_user ์˜ˆ์ œ
Copy Copy
1
2async fn run_get_user() -> Result<(), Error> {
3 let maybe_id: Option<String> = Some("user-6412".to_owned());
4 let params: GetUserParams = GetUserParams {
5 tenant_id: "acme-corp-tenant".to_owned(),
6 id: maybe_id.unwrap(),
7 };
8 let user_response: GetUser200Response = get_user(&configuration, params).await?;
9 println!("{:#?}", user_response);
10 Ok(())
11}
12

create_vote Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
comment_id String ์˜ˆ
direction String ์˜ˆ
user_id String ์•„๋‹ˆ์š”
anon_user_id String ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: VoteComment200Response

์˜ˆ์ œ

create_vote ์˜ˆ์ œ
Copy Copy
1
2async fn run_vote() -> Result<VoteComment200Response, Error> {
3 let params: CreateVoteParams = CreateVoteParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 comment_id: "news/2026/01/12/local-election-12345".to_string(),
6 direction: "up".to_string(),
7 user_id: Some("user_9876".to_string()),
8 anon_user_id: None,
9 };
10 let response: VoteComment200Response = create_vote(&configuration, params).await?;
11 Ok(response)
12}
13

delete_vote Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

Name Type Required Description
tenant_id String ์˜ˆ
id String ์˜ˆ
edit_key String ์•„๋‹ˆ์˜ค

์‘๋‹ต

๋ฐ˜ํ™˜: DeleteCommentVote200Response

์˜ˆ์ œ

delete_vote ์˜ˆ์ œ
Copy Copy
1
2async fn run_delete_vote() -> Result<(), Error> {
3 let params: DeleteVoteParams = DeleteVoteParams {
4 tenant_id: "acme-corp-tenant".to_string(),
5 id: "news/article/67890/comment/12345".to_string(),
6 edit_key: Some("user-editkey-7f3b".to_string()),
7 };
8 let response: DeleteCommentVote200Response = delete_vote(&configuration, params).await?;
9 Ok(())
10}
11

get_votes Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ์œ ํ˜• ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
url_id String ์˜ˆ

์‘๋‹ต

๋ฐ˜ํ™˜: GetVotes200Response

์˜ˆ์ œ

get_votes ์˜ˆ์ œ
Copy Copy
1
2async fn fetch_votes_example() -> Result<(), Error> {
3 let params: GetVotesParams = GetVotesParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 url_id: String::from("news/article/2026-01-12/housing-market"),
6 };
7 let votes: GetVotes200Response = get_votes(&configuration, params).await?;
8 let _ = votes;
9 Ok(())
10}
11

get_votes_for_user Internal Link

๋งค๊ฐœ๋ณ€์ˆ˜

์ด๋ฆ„ ํ˜•์‹ ํ•„์ˆ˜ ์„ค๋ช…
tenant_id String ์˜ˆ
url_id String ์˜ˆ
user_id String ์•„๋‹ˆ์š”
anon_user_id String ์•„๋‹ˆ์š”

์‘๋‹ต

๋ฐ˜ํ™˜: GetVotesForUser200Response

์˜ˆ์ œ

get_votes_for_user ์˜ˆ์ œ
Copy Copy
1
2async fn fetch_votes() -> Result<GetVotesForUser200Response, Error> {
3 let params = GetVotesForUserParams {
4 tenant_id: String::from("acme-corp-tenant"),
5 url_id: String::from("news/2026/01/12/breaking-tech"),
6 user_id: Some(String::from("user-78a3")),
7 anon_user_id: Some(String::from("anon-4f2b")),
8 };
9 let response: GetVotesForUser200Response = get_votes_for_user(&configuration, params).await?;
10 Ok(response)
11}
12

๋„์›€์ด ํ•„์š”ํ•˜์‹ ๊ฐ€์š”?

Rust SDK์— ๋ฌธ์ œ๊ฐ€ ์žˆ๊ฑฐ๋‚˜ ์งˆ๋ฌธ์ด ์žˆ๋Š” ๊ฒฝ์šฐ, ๋‹ค์Œ์„ ์ด์šฉํ•ด ์ฃผ์„ธ์š”:

๊ธฐ์—ฌ

๊ธฐ์—ฌ๋Š” ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค! ๊ธฐ์—ฌ ์ง€์นจ์€ GitHub ์ €์žฅ์†Œ๋ฅผ ํ™•์ธํ•˜์„ธ์š”.