
Language 🇺🇸 English (US)
Getting Started
Documentation
Aggregate
API
Audit Logs
Block From Comment
Check Blocked Comments
Comments
Comments For User
Domain Configs
Email Templates
Event Log
Feed Posts
Flag Comment
Gifs
Hash Tags
Moderation
Moderators
Notification Count
Notifications
Page Reacts
Pages
Pending Webhook Events
Question Configs
Question Results
Question Results Aggregation
SSO Users
Subscriptions
Tenant Daily Usage
Tenant Packages
Tenant Users
Tenants
Tickets
Translations
Upload Image
User Badge Progress
User Badges
User Notifications
User Presence Status
User Search
Users
Votes
FastComments Rust SDK
This is the official Rust SDK for FastComments.
Official Rust SDK for the FastComments API
Repository
Library Contents 
The FastComments Rust SDK consists of several modules:
-
Client Module - API client for FastComments REST APIs
- Complete type definitions for all API models
- Three API clients covering all FastComments methods:
default_api(DefaultApi) - API-key-authenticated methods for server-side usepublic_api(PublicApi) - public, no-API-key methods that are safe to call from browsers and mobile appsmoderation_api(ModerationApi) - an extensive suite of live and fast moderation APIs. Every Moderation method accepts anssoparameter and can authenticate via SSO or a FastComments.com session cookie.
- Full async/await support with tokio
- See client/README.md for detailed API documentation
-
SSO Module - Server-side Single Sign-On utilities
- Secure token generation for user authentication
- Support for both simple and secure SSO modes
- HMAC-SHA256 based token signing
-
Core Types - Shared type definitions and utilities
- Comment models and metadata structures
- User and tenant configurations
- Helper functions for common operations
Quick Start 
Using the Public API
use fastcomments_sdk::client::apis::configuration::Configuration;
use fastcomments_sdk::client::apis::public_api;
#[tokio::main]
async fn main() {
// Create API configuration
let config = Configuration::new();
// Fetch comments for a page
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),
}
}
Using the Authenticated API
use fastcomments_sdk::client::apis::configuration::{ApiKey, Configuration};
use fastcomments_sdk::client::apis::default_api;
#[tokio::main]
async fn main() {
// Create configuration with API key
let mut config = Configuration::new();
config.api_key = Some(ApiKey {
prefix: None,
key: "your-api-key".to_string(),
});
// Fetch comments using authenticated 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),
}
}
Using the Moderation API
The moderation methods back the moderator dashboard. They use an API-key Configuration just like the authenticated API, and each method accepts an optional sso token so the call can be made on behalf of an SSO-authenticated moderator.
use fastcomments_sdk::client::apis::configuration::{ApiKey, Configuration};
use fastcomments_sdk::client::apis::moderation_api;
#[tokio::main]
async fn main() {
// Create configuration with API key
let mut config = Configuration::new();
config.api_key = Some(ApiKey {
prefix: None,
key: "your-api-key".to_string(),
});
// Count comments waiting in the moderation queue
let result = moderation_api::get_count(
&config,
moderation_api::GetCountParams {
text_search: None,
by_ip_from_comment: None,
filter: None,
search_filters: None,
demo: None,
sso: None, // pass an SSO token to act as an SSO-authenticated moderator
},
)
.await;
match result {
Ok(response) => println!("Comments to moderate: {}", response.count),
Err(e) => eprintln!("Error: {:?}", e),
}
}
Using SSO for Authentication
use fastcomments_sdk::sso::{
fastcomments_sso::FastCommentsSSO,
secure_sso_user_data::SecureSSOUserData,
};
fn main() {
let api_key = "your-api-key".to_string();
// Create secure SSO user data (server-side only!)
let user_data = SecureSSOUserData::new(
"user-123".to_string(), // User ID
"user@example.com".to_string(), // Email
"John Doe".to_string(), // Username
"https://example.com/avatar.jpg".to_string(), // Avatar URL
);
// Generate SSO token
let sso = FastCommentsSSO::new_secure(api_key, &user_data).unwrap();
let token = sso.create_token().unwrap();
println!("SSO Token: {}", token);
// Pass this token to your frontend for authentication
}
Common Issues 
401 Unauthorized Errors
If you're getting 401 errors when using the authenticated API:
- Check your API key: Ensure you're using the correct API key from your FastComments dashboard
- Verify the tenant ID: Make sure the tenant ID matches your account
- API key format: The API key should be passed in the Configuration:
let mut config = Configuration::new();
config.api_key = Some(ApiKey {
prefix: None,
key: "YOUR_API_KEY".to_string(),
});
SSO Token Issues
If SSO tokens aren't working:
- Use secure mode for production: Always use
FastCommentsSSO::new_secure()with your API key for production - Server-side only: Generate SSO tokens on your server, never expose your API key to clients
- Check user data: Ensure all required fields (id, email, username) are provided
Async Runtime Errors
The SDK uses tokio for async operations. Make sure to:
- Add tokio to your dependencies:
[dependencies]
tokio = { version = "1", features = ["full"] }
- Use the tokio runtime:
#[tokio::main]
async fn main() {
// Your async code here
}
Notes 
Broadcast IDs
You'll see you're expected to pass a broadcastId in some API calls. When you receive events, you'll get this ID back, so you know to ignore the event if you plan to optimistically apply changes on the client
(which you'll probably want to do since it offers the best experience). Pass a UUID here. The ID should be unique enough to not occur twice in a browser session.
aggregate 
Aggregates documents by grouping them (if groupBy is provided) and applying multiple operations. Different operations (e.g. sum, countDistinct, avg, etc.) are supported.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| aggregation_request | models::AggregationRequest | Yes | |
| parent_tenant_id | String | No | |
| include_stats | bool | No |
Response
Returns: AggregateResponse
Example

get_api_comments 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| page | f64 | No | |
| count | f64 | No | |
| text_search | String | No | |
| by_ip_from_comment | String | No | |
| filters | String | No | |
| search_filters | String | No | |
| sorts | String | No | |
| demo | bool | No | |
| sso | String | No |
Response
Returns: ModerationApiGetCommentsResponse
Example

get_api_export_status 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| batch_job_id | String | No | |
| sso | String | No |
Response
Returns: ModerationExportStatusResponse
Example

get_api_ids 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| text_search | String | No | |
| by_ip_from_comment | String | No | |
| filters | String | No | |
| search_filters | String | No | |
| after_id | String | No | |
| demo | bool | No | |
| sso | String | No |
Response
Returns: ModerationApiGetCommentIdsResponse
Example

post_api_export 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| text_search | String | No | |
| by_ip_from_comment | String | No | |
| filters | String | No | |
| search_filters | String | No | |
| sorts | String | No | |
| sso | String | No |
Response
Returns: ModerationExportResponse
Example

get_audit_logs 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| limit | f64 | No | |
| skip | f64 | No | |
| order | models::SortDir | No | |
| after | f64 | No | |
| before | f64 | No |
Response
Returns: GetAuditLogsResponse
Example

block_from_comment_public 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| public_block_from_comment_params | models::PublicBlockFromCommentParams | Yes | |
| sso | String | No |
Response
Returns: BlockSuccess
Example

un_block_comment_public 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| public_block_from_comment_params | models::PublicBlockFromCommentParams | Yes | |
| sso | String | No |
Response
Returns: UnblockSuccess
Example

checked_comments_for_blocked 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_ids | String | Yes | |
| sso | String | No |
Response
Returns: CheckBlockedCommentsResponse
Example

block_user_from_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| block_from_comment_params | models::BlockFromCommentParams | Yes | |
| user_id | String | No | |
| anon_user_id | String | No |
Response
Returns: BlockSuccess
Example

create_comment_public 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | Yes | |
| broadcast_id | String | Yes | |
| comment_data | models::CommentData | Yes | |
| session_id | String | No | |
| sso | String | No |
Response
Returns: SaveCommentsResponseWithPresence
Example

delete_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| context_user_id | String | No | |
| is_live | bool | No |
Response
Returns: DeleteCommentResult
Example

delete_comment_public 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| broadcast_id | String | Yes | |
| edit_key | String | No | |
| sso | String | No |
Response
Returns: PublicApiDeleteCommentResponse
Example

delete_comment_vote 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| vote_id | String | Yes | |
| url_id | String | Yes | |
| broadcast_id | String | Yes | |
| edit_key | String | No | |
| sso | String | No |
Response
Returns: VoteDeleteResponse
Example

flag_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| user_id | String | No | |
| anon_user_id | String | No |
Response
Returns: FlagCommentResponse
Example

get_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: ApiGetCommentResponse
Example

get_comment_text 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| edit_key | String | No | |
| sso | String | No |
Response
Returns: PublicApiGetCommentTextResponse
Example

get_comment_vote_user_names 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| dir | i32 | Yes | |
| sso | String | No |
Response
Returns: GetCommentVoteUserNamesSuccessResponse
Example

get_comments 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| page | i32 | No | |
| limit | i32 | No | |
| skip | i32 | No | |
| as_tree | bool | No | |
| skip_children | i32 | No | |
| limit_children | i32 | No | |
| max_tree_depth | i32 | No | |
| url_id | String | No | |
| user_id | String | No | |
| anon_user_id | String | No | |
| context_user_id | String | No | |
| hash_tag | String | No | |
| parent_id | String | No | |
| direction | models::SortDirections | No | |
| from_date | i64 | No | |
| to_date | i64 | No |
Response
Returns: ApiGetCommentsResponse
Example

get_comments_public 
req tenantId urlId
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | Yes | |
| page | i32 | No | |
| direction | models::SortDirections | No | |
| sso | String | No | |
| skip | i32 | No | |
| skip_children | i32 | No | |
| limit | i32 | No | |
| limit_children | i32 | No | |
| count_children | bool | No | |
| fetch_page_for_comment_id | String | No | |
| include_config | bool | No | |
| count_all | bool | No | |
| includei10n | bool | No | |
| locale | String | No | |
| modules | String | No | |
| is_crawler | bool | No | |
| include_notification_count | bool | No | |
| as_tree | bool | No | |
| max_tree_depth | i32 | No | |
| use_full_translation_ids | bool | No | |
| parent_id | String | No | |
| search_text | String | No | |
| hash_tags | Vec | No | |
| user_id | String | No | |
| custom_config_str | String | No | |
| after_comment_id | String | No | |
| before_comment_id | String | No |
Response
Returns: GetCommentsResponseWithPresencePublicComment
Example

lock_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| broadcast_id | String | Yes | |
| sso | String | No |
Response
Returns: ApiEmptyResponse
Example

pin_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| broadcast_id | String | Yes | |
| sso | String | No |
Response
Returns: ChangeCommentPinStatusResponse
Example

save_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| create_comment_params | models::CreateCommentParams | Yes | |
| is_live | bool | No | |
| do_spam_check | bool | No | |
| send_emails | bool | No | |
| populate_notifications | bool | No |
Response
Returns: ApiSaveCommentResponse
Example

save_comments_bulk 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| create_comment_params | Vecmodels::CreateCommentParams | Yes | |
| is_live | bool | No | |
| do_spam_check | bool | No | |
| send_emails | bool | No | |
| populate_notifications | bool | No |
Response
Returns: Vec<models::SaveCommentsBulkResponse>
Example

set_comment_text 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| 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 |
Response
Returns: PublicApiSetCommentTextResponse
Example

un_block_user_from_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| un_block_from_comment_params | models::UnBlockFromCommentParams | Yes | |
| user_id | String | No | |
| anon_user_id | String | No |
Response
Returns: UnblockSuccess
Example

un_flag_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| user_id | String | No | |
| anon_user_id | String | No |
Response
Returns: FlagCommentResponse
Example

un_lock_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| broadcast_id | String | Yes | |
| sso | String | No |
Response
Returns: ApiEmptyResponse
Example

un_pin_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| broadcast_id | String | Yes | |
| sso | String | No |
Response
Returns: ChangeCommentPinStatusResponse
Example

update_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| updatable_comment_params | models::UpdatableCommentParams | Yes | |
| context_user_id | String | No | |
| do_spam_check | bool | No | |
| is_live | bool | No |
Response
Returns: ApiEmptyResponse
Example

vote_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| url_id | String | Yes | |
| broadcast_id | String | Yes | |
| vote_body_params | models::VoteBodyParams | Yes | |
| session_id | String | No | |
| sso | String | No |
Response
Returns: VoteResponse
Example

get_comments_for_user 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| user_id | String | No | |
| direction | models::SortDirections | No | |
| replies_to_user_id | String | No | |
| page | f64 | No | |
| includei10n | bool | No | |
| locale | String | No | |
| is_crawler | bool | No |
Response
Returns: GetCommentsForUserResponse
Example

add_domain_config 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| add_domain_config_params | models::AddDomainConfigParams | Yes |
Response
Returns: AddDomainConfigResponse
Example

delete_domain_config 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| domain | String | Yes |
Response
Returns: DeleteDomainConfigResponse
Example

get_domain_config 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| domain | String | Yes |
Response
Returns: GetDomainConfigResponse
Example

get_domain_configs 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes |
Response
Returns: GetDomainConfigsResponse
Example

patch_domain_config 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| domain_to_update | String | Yes | |
| patch_domain_config_params | models::PatchDomainConfigParams | Yes |
Response
Returns: PatchDomainConfigResponse
Example

put_domain_config 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| domain_to_update | String | Yes | |
| update_domain_config_params | models::UpdateDomainConfigParams | Yes |
Response
Returns: PutDomainConfigResponse
Example

create_email_template 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| create_email_template_body | models::CreateEmailTemplateBody | Yes |
Response
Returns: CreateEmailTemplateResponse
Example

delete_email_template 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: ApiEmptyResponse
Example

delete_email_template_render_error 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| error_id | String | Yes |
Response
Returns: ApiEmptyResponse
Example

get_email_template 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: GetEmailTemplateResponse
Example

get_email_template_definitions 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes |
Response
Returns: GetEmailTemplateDefinitionsResponse
Example

get_email_template_render_errors 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| skip | f64 | No |
Response
Returns: GetEmailTemplateRenderErrorsResponse
Example

get_email_templates 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| skip | f64 | No |
Response
Returns: GetEmailTemplatesResponse
Example

render_email_template 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| render_email_template_body | models::RenderEmailTemplateBody | Yes | |
| locale | String | No |
Response
Returns: RenderEmailTemplateResponse
Example

update_email_template 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| update_email_template_body | models::UpdateEmailTemplateBody | Yes |
Response
Returns: ApiEmptyResponse
Example

get_event_log 
req tenantId urlId userIdWS
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | Yes | |
| user_id_ws | String | Yes | |
| start_time | i64 | Yes | |
| end_time | i64 | No |
Response
Returns: GetEventLogResponse
Example

get_global_event_log 
req tenantId urlId userIdWS
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | Yes | |
| user_id_ws | String | Yes | |
| start_time | i64 | Yes | |
| end_time | i64 | No |
Response
Returns: GetEventLogResponse
Example

create_feed_post 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| create_feed_post_params | models::CreateFeedPostParams | Yes | |
| broadcast_id | String | No | |
| is_live | bool | No | |
| do_spam_check | bool | No | |
| skip_dup_check | bool | No |
Response
Returns: CreateFeedPostsResponse
Example

create_feed_post_public 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| create_feed_post_params | models::CreateFeedPostParams | Yes | |
| broadcast_id | String | No | |
| sso | String | No |
Response
Returns: CreateFeedPostResponse
Example

delete_feed_post_public 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| post_id | String | Yes | |
| broadcast_id | String | No | |
| sso | String | No |
Response
Returns: DeleteFeedPostPublicResponse
Example

get_feed_posts 
req tenantId afterId
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| after_id | String | No | |
| limit | i32 | No | |
| tags | Vec | No |
Response
Returns: GetFeedPostsResponse
Example

get_feed_posts_public 
req tenantId afterId
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| after_id | String | No | |
| limit | i32 | No | |
| tags | Vec | No | |
| sso | String | No | |
| is_crawler | bool | No | |
| include_user_info | bool | No |
Response
Returns: PublicFeedPostsResponse
Example

get_feed_posts_stats 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| post_ids | Vec | Yes | |
| sso | String | No |
Response
Returns: FeedPostsStatsResponse
Example

get_user_reacts_public 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| post_ids | Vec | No | |
| sso | String | No |
Response
Returns: UserReactsResponse
Example

react_feed_post_public 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| post_id | String | Yes | |
| react_body_params | models::ReactBodyParams | Yes | |
| is_undo | bool | No | |
| broadcast_id | String | No | |
| sso | String | No |
Response
Returns: ReactFeedPostResponse
Example

update_feed_post 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| feed_post | models::FeedPost | Yes |
Response
Returns: ApiEmptyResponse
Example

update_feed_post_public 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| post_id | String | Yes | |
| update_feed_post_params | models::UpdateFeedPostParams | Yes | |
| broadcast_id | String | No | |
| sso | String | No |
Response
Returns: CreateFeedPostResponse
Example

flag_comment_public 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| is_flagged | bool | Yes | |
| sso | String | No |
Response
Returns: ApiEmptyResponse
Example

get_gif_large 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| large_internal_url_sanitized | String | Yes |
Response
Returns: GifGetLargeResponse
Example

get_gifs_search 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| search | String | Yes | |
| locale | String | No | |
| rating | String | No | |
| page | f64 | No |
Response
Returns: GetGifsSearchResponse
Example

get_gifs_trending 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| locale | String | No | |
| rating | String | No | |
| page | f64 | No |
Response
Returns: GetGifsTrendingResponse
Example

add_hash_tag 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| create_hash_tag_body | models::CreateHashTagBody | No |
Response
Returns: CreateHashTagResponse
Example

add_hash_tags_bulk 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| bulk_create_hash_tags_body | models::BulkCreateHashTagsBody | No |
Response
Returns: BulkCreateHashTagsResponse
Example

delete_hash_tag 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| tag | String | Yes | |
| delete_hash_tag_request_body | models::DeleteHashTagRequestBody | No |
Response
Returns: ApiEmptyResponse
Example

get_hash_tags 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| page | f64 | No |
Response
Returns: GetHashTagsResponse
Example

patch_hash_tag 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| tag | String | Yes | |
| update_hash_tag_body | models::UpdateHashTagBody | No |
Response
Returns: UpdateHashTagResponse
Example

delete_moderation_vote 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| vote_id | String | Yes | |
| broadcast_id | String | No | |
| sso | String | No |
Response
Returns: VoteDeleteResponse
Example

get_ban_users_from_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| sso | String | No |
Response
Returns: GetBannedUsersFromCommentResponse
Example

get_comment_ban_status 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| sso | String | No |
Response
Returns: GetCommentBanStatusResponse
Example

get_comment_children 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| sso | String | No |
Response
Returns: ModerationApiChildCommentsResponse
Example

get_count 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| text_search | String | No | |
| by_ip_from_comment | String | No | |
| filter | String | No | |
| search_filters | String | No | |
| demo | bool | No | |
| sso | String | No |
Response
Returns: ModerationApiCountCommentsResponse
Example

get_counts 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| sso | String | No |
Response
Returns: GetBannedUsersCountResponse
Example

get_logs 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| sso | String | No |
Response
Returns: ModerationApiGetLogsResponse
Example

get_manual_badges 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| sso | String | No |
Response
Returns: GetTenantManualBadgesResponse
Example

get_manual_badges_for_user 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| badges_user_id | String | No | |
| comment_id | String | No | |
| sso | String | No |
Response
Returns: GetUserManualBadgesResponse
Example

get_moderation_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| include_email | bool | No | |
| include_ip | bool | No | |
| sso | String | No |
Response
Returns: ModerationApiCommentResponse
Example

get_moderation_comment_text 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| sso | String | No |
Response
Returns: GetCommentTextResponse
Example

get_pre_ban_summary 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| include_by_user_id_and_email | bool | No | |
| include_by_ip | bool | No | |
| include_by_email_domain | bool | No | |
| sso | String | No |
Response
Returns: PreBanSummary
Example

get_search_comments_summary 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| value | String | No | |
| filters | String | No | |
| search_filters | String | No | |
| sso | String | No |
Response
Returns: ModerationCommentSearchResponse
Example

get_search_pages 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| value | String | No | |
| sso | String | No |
Response
Returns: ModerationPageSearchResponse
Example

get_search_sites 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| value | String | No | |
| sso | String | No |
Response
Returns: ModerationSiteSearchResponse
Example

get_search_suggest 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| text_search | String | No | |
| sso | String | No |
Response
Returns: ModerationSuggestResponse
Example

get_search_users 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| value | String | No | |
| sso | String | No |
Response
Returns: ModerationUserSearchResponse
Example

get_trust_factor 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| user_id | String | No | |
| sso | String | No |
Response
Returns: GetUserTrustFactorResponse
Example

get_user_ban_preference 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| sso | String | No |
Response
Returns: ApiModerateGetUserBanPreferencesResponse
Example

get_user_internal_profile 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | No | |
| sso | String | No |
Response
Returns: GetUserInternalProfileResponse
Example

post_adjust_comment_votes 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| adjust_comment_votes_params | models::AdjustCommentVotesParams | Yes | |
| broadcast_id | String | No | |
| sso | String | No |
Response
Returns: AdjustVotesResponse
Example

post_ban_user_from_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| ban_email | bool | No | |
| ban_email_domain | bool | No | |
| ban_ip | bool | No | |
| delete_all_users_comments | bool | No | |
| banned_until | String | No | |
| is_shadow_ban | bool | No | |
| update_id | String | No | |
| ban_reason | String | No | |
| sso | String | No |
Response
Returns: BanUserFromCommentResult
Example

post_ban_user_undo 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| ban_user_undo_params | models::BanUserUndoParams | Yes | |
| sso | String | No |
Response
Returns: ApiEmptyResponse
Example

post_bulk_pre_ban_summary 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| bulk_pre_ban_params | models::BulkPreBanParams | Yes | |
| include_by_user_id_and_email | bool | No | |
| include_by_ip | bool | No | |
| include_by_email_domain | bool | No | |
| sso | String | No |
Response
Returns: BulkPreBanSummary
Example

post_comments_by_ids 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comments_by_ids_params | models::CommentsByIdsParams | Yes | |
| sso | String | No |
Response
Returns: ModerationApiChildCommentsResponse
Example

post_flag_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| broadcast_id | String | No | |
| sso | String | No |
Response
Returns: ApiEmptyResponse
Example

post_remove_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| broadcast_id | String | No | |
| sso | String | No |
Response
Returns: PostRemoveCommentApiResponse
Example

post_restore_deleted_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| broadcast_id | String | No | |
| sso | String | No |
Response
Returns: ApiEmptyResponse
Example

post_set_comment_approval_status 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| approved | bool | No | |
| broadcast_id | String | No | |
| sso | String | No |
Response
Returns: SetCommentApprovedResponse
Example

post_set_comment_review_status 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| reviewed | bool | No | |
| broadcast_id | String | No | |
| sso | String | No |
Response
Returns: ApiEmptyResponse
Example

post_set_comment_spam_status 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| spam | bool | No | |
| perm_not_spam | bool | No | |
| broadcast_id | String | No | |
| sso | String | No |
Response
Returns: ApiEmptyResponse
Example

post_set_comment_text 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| set_comment_text_params | models::SetCommentTextParams | Yes | |
| broadcast_id | String | No | |
| sso | String | No |
Response
Returns: SetCommentTextResponse
Example

post_un_flag_comment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| broadcast_id | String | No | |
| sso | String | No |
Response
Returns: ApiEmptyResponse
Example

post_vote 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| direction | String | No | |
| broadcast_id | String | No | |
| sso | String | No |
Response
Returns: VoteResponse
Example

put_award_badge 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| badge_id | String | Yes | |
| user_id | String | No | |
| comment_id | String | No | |
| broadcast_id | String | No | |
| sso | String | No |
Response
Returns: AwardUserBadgeResponse
Example

put_close_thread 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | Yes | |
| sso | String | No |
Response
Returns: ApiEmptyResponse
Example

put_remove_badge 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| badge_id | String | Yes | |
| user_id | String | No | |
| comment_id | String | No | |
| broadcast_id | String | No | |
| sso | String | No |
Response
Returns: RemoveUserBadgeResponse
Example

put_reopen_thread 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | Yes | |
| sso | String | No |
Response
Returns: ApiEmptyResponse
Example

set_trust_factor 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| user_id | String | No | |
| trust_factor | String | No | |
| sso | String | No |
Response
Returns: SetUserTrustFactorResponse
Example

create_moderator 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| create_moderator_body | models::CreateModeratorBody | Yes |
Response
Returns: CreateModeratorResponse
Example

delete_moderator 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| send_email | String | No |
Response
Returns: ApiEmptyResponse
Example

get_moderator 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: GetModeratorResponse
Example

get_moderators 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| skip | f64 | No |
Response
Returns: GetModeratorsResponse
Example

send_invite 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| from_name | String | Yes |
Response
Returns: ApiEmptyResponse
Example

update_moderator 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| update_moderator_body | models::UpdateModeratorBody | Yes |
Response
Returns: ApiEmptyResponse
Example

delete_notification_count 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: ApiEmptyResponse
Example

get_cached_notification_count 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: GetCachedNotificationCountResponse
Example

get_notification_count 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| user_id | String | No | |
| url_id | String | No | |
| from_comment_id | String | No | |
| viewed | bool | No |
Response
Returns: GetNotificationCountResponse
Example

get_notifications 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| user_id | String | No | |
| url_id | String | No | |
| from_comment_id | String | No | |
| viewed | bool | No | |
| skip | f64 | No |
Response
Returns: GetNotificationsResponse
Example

update_notification 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| update_notification_body | models::UpdateNotificationBody | Yes | |
| user_id | String | No |
Response
Returns: ApiEmptyResponse
Example

create_v1_page_react 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | Yes | |
| title | String | No |
Response
Returns: CreateV1PageReact
Example

create_v2_page_react 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | Yes | |
| id | String | Yes | |
| title | String | No |
Response
Returns: CreateV1PageReact
Example

delete_v1_page_react 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | Yes |
Response
Returns: CreateV1PageReact
Example

delete_v2_page_react 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | Yes | |
| id | String | Yes |
Response
Returns: CreateV1PageReact
Example

get_v1_page_likes 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | Yes |
Response
Returns: GetV1PageLikes
Example

get_v2_page_react_users 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | Yes | |
| id | String | Yes |
Response
Returns: GetV2PageReactUsersResponse
Example

get_v2_page_reacts 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | Yes |
Response
Returns: GetV2PageReacts
Example

add_page 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| create_api_page_data | models::CreateApiPageData | Yes |
Response
Returns: AddPageApiResponse
Example

delete_page 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: DeletePageApiResponse
Example

get_offline_users 
Past commenters on the page who are NOT currently online. Sorted by displayName. Use this after exhausting /users/online to render a "Members" section. Cursor pagination on commenterName: server walks the partial {tenantId, urlId, commenterName} index from afterName forward via $gt, no $skip cost.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | Yes | |
| after_name | String | No | |
| after_user_id | String | No |
Response
Returns: PageUsersOfflineResponse
Example

get_online_users 
Currently-online viewers of a page: people whose websocket session is subscribed to the page right now. Returns anonCount + totalCount (room-wide subscribers, including anon viewers we don't enumerate).
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | Yes | |
| after_name | String | No | |
| after_user_id | String | No |
Response
Returns: PageUsersOnlineResponse
Example

get_page_by_urlid 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | Yes |
Response
Returns: GetPageByUrlidApiResponse
Example

get_pages 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes |
Response
Returns: GetPagesApiResponse
Example

get_pages_public 
List pages for a tenant. Used by the FChat desktop client to populate its room list.
Requires enableFChat to be true on the resolved custom config for each page.
Pages that require SSO are filtered against the requesting user's group access.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| cursor | String | No | |
| limit | i32 | No | |
| q | String | No | |
| sort_by | models::PagesSortBy | No | |
| has_comments | bool | No |
Response
Returns: GetPublicPagesResponse
Example

get_users_info 
Bulk user info for a tenant. Given userIds, return display info from User / SSOUser. Used by the comment widget to enrich users that just appeared via a presence event. No page context: privacy is enforced uniformly (private profiles are masked).
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| ids | String | Yes |
Response
Returns: PageUsersInfoResponse
Example

patch_page 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| update_api_page_data | models::UpdateApiPageData | Yes |
Response
Returns: PatchPageApiResponse
Example

delete_pending_webhook_event 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: ApiEmptyResponse
Example

get_pending_webhook_event_count 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | No | |
| external_id | String | No | |
| event_type | String | No | |
| domain | String | No | |
| attempt_count_gt | f64 | No |
Response
Returns: GetPendingWebhookEventCountResponse
Example

get_pending_webhook_events 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | No | |
| external_id | String | No | |
| event_type | String | No | |
| domain | String | No | |
| attempt_count_gt | f64 | No | |
| skip | f64 | No |
Response
Returns: GetPendingWebhookEventsResponse
Example

create_question_config 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| create_question_config_body | models::CreateQuestionConfigBody | Yes |
Response
Returns: CreateQuestionConfigResponse
Example

delete_question_config 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: ApiEmptyResponse
Example

get_question_config 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: GetQuestionConfigResponse
Example

get_question_configs 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| skip | f64 | No |
Response
Returns: GetQuestionConfigsResponse
Example

update_question_config 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| update_question_config_body | models::UpdateQuestionConfigBody | Yes |
Response
Returns: ApiEmptyResponse
Example

create_question_result 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| create_question_result_body | models::CreateQuestionResultBody | Yes |
Response
Returns: CreateQuestionResultResponse
Example

delete_question_result 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: ApiEmptyResponse
Example

get_question_result 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: GetQuestionResultResponse
Example

get_question_results 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | No | |
| user_id | String | No | |
| start_date | String | No | |
| question_id | String | No | |
| question_ids | String | No | |
| skip | f64 | No |
Response
Returns: GetQuestionResultsResponse
Example

update_question_result 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| update_question_result_body | models::UpdateQuestionResultBody | Yes |
Response
Returns: ApiEmptyResponse
Example

aggregate_question_results 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| question_id | String | No | |
| question_ids | Vec | No | |
| url_id | String | No | |
| time_bucket | models::AggregateTimeBucket | No | |
| start_date | chrono::DateTimechrono::FixedOffset | No | |
| force_recalculate | bool | No |
Response
Returns: AggregateQuestionResultsResponse
Example

bulk_aggregate_question_results 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| bulk_aggregate_question_results_request | models::BulkAggregateQuestionResultsRequest | Yes | |
| force_recalculate | bool | No |
Response
Returns: BulkAggregateQuestionResultsResponse
Example

combine_comments_with_question_results 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| question_id | String | No | |
| question_ids | Vec | No | |
| url_id | String | No | |
| start_date | chrono::DateTimechrono::FixedOffset | No | |
| force_recalculate | bool | No | |
| min_value | f64 | No | |
| max_value | f64 | No | |
| limit | f64 | No |
Response
Returns: CombineQuestionResultsWithCommentsResponse
Example

add_sso_user 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| create_apisso_user_data | models::CreateApissoUserData | Yes |
Response
Returns: AddSsoUserApiResponse
Example

delete_sso_user 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| delete_comments | bool | No | |
| comment_delete_mode | String | No |
Response
Returns: DeleteSsoUserApiResponse
Example

get_sso_user_by_email 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| String | Yes |
Response
Returns: GetSsoUserByEmailApiResponse
Example

get_sso_user_by_id 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: GetSsoUserByIdApiResponse
Example

get_sso_users 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| skip | i32 | No |
Response
Returns: GetSsoUsersResponse
Example

patch_sso_user 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| update_apisso_user_data | models::UpdateApissoUserData | Yes | |
| update_comments | bool | No |
Response
Returns: PatchSsoUserApiResponse
Example

put_sso_user 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| update_apisso_user_data | models::UpdateApissoUserData | Yes | |
| update_comments | bool | No |
Response
Returns: PutSsoUserApiResponse
Example

create_subscription 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| create_api_user_subscription_data | models::CreateApiUserSubscriptionData | Yes |
Response
Returns: CreateSubscriptionApiResponse
Example

delete_subscription 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| user_id | String | No |
Response
Returns: DeleteSubscriptionApiResponse
Example

get_subscriptions 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| user_id | String | No |
Response
Returns: GetSubscriptionsApiResponse
Example

update_subscription 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| update_api_user_subscription_data | models::UpdateApiUserSubscriptionData | Yes | |
| user_id | String | No |
Response
Returns: UpdateSubscriptionApiResponse
Example

get_tenant_daily_usages 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| year_number | f64 | No | |
| month_number | f64 | No | |
| day_number | f64 | No | |
| skip | f64 | No |
Response
Returns: GetTenantDailyUsagesResponse
Example

create_tenant_package 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| create_tenant_package_body | models::CreateTenantPackageBody | Yes |
Response
Returns: CreateTenantPackageResponse
Example

delete_tenant_package 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: ApiEmptyResponse
Example

get_tenant_package 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: GetTenantPackageResponse
Example

get_tenant_packages 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| skip | f64 | No |
Response
Returns: GetTenantPackagesResponse
Example

replace_tenant_package 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| replace_tenant_package_body | models::ReplaceTenantPackageBody | Yes |
Response
Returns: ApiEmptyResponse
Example

update_tenant_package 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| update_tenant_package_body | models::UpdateTenantPackageBody | Yes |
Response
Returns: ApiEmptyResponse
Example

create_tenant_user 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| create_tenant_user_body | models::CreateTenantUserBody | Yes |
Response
Returns: CreateTenantUserResponse
Example

delete_tenant_user 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| delete_comments | String | No | |
| comment_delete_mode | String | No |
Response
Returns: ApiEmptyResponse
Example

get_tenant_user 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: GetTenantUserResponse
Example

get_tenant_users 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| skip | f64 | No |
Response
Returns: GetTenantUsersResponse
Example

replace_tenant_user 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| replace_tenant_user_body | models::ReplaceTenantUserBody | Yes | |
| update_comments | String | No |
Response
Returns: ApiEmptyResponse
Example

send_login_link 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| redirect_url | String | No |
Response
Returns: ApiEmptyResponse
Example

update_tenant_user 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| update_tenant_user_body | models::UpdateTenantUserBody | Yes | |
| update_comments | String | No |
Response
Returns: ApiEmptyResponse
Example

create_tenant 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| create_tenant_body | models::CreateTenantBody | Yes |
Response
Returns: CreateTenantResponse
Example

delete_tenant 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| sure | String | No |
Response
Returns: ApiEmptyResponse
Example

get_tenant 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: GetTenantResponse
Example

get_tenants 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| meta | String | No | |
| skip | f64 | No |
Response
Returns: GetTenantsResponse
Example

update_tenant 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| update_tenant_body | models::UpdateTenantBody | Yes |
Response
Returns: ApiEmptyResponse
Example

change_ticket_state 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| user_id | String | Yes | |
| id | String | Yes | |
| change_ticket_state_body | models::ChangeTicketStateBody | Yes |
Response
Returns: ChangeTicketStateResponse
Example

create_ticket 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| user_id | String | Yes | |
| create_ticket_body | models::CreateTicketBody | Yes |
Response
Returns: CreateTicketResponse
Example

get_ticket 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| user_id | String | No |
Response
Returns: GetTicketResponse
Example

get_tickets 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| user_id | String | No | |
| state | f64 | No | |
| skip | f64 | No | |
| limit | f64 | No |
Response
Returns: GetTicketsResponse
Example

get_translations 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| namespace | String | Yes | |
| component | String | Yes | |
| locale | String | No | |
| use_full_translation_ids | bool | No |
Response
Returns: GetTranslationsResponse
Example

upload_image 
Upload and resize an image
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| file | std::path::PathBuf | Yes | |
| size_preset | models::SizePreset | No | |
| url_id | String | No |
Response
Returns: UploadImageResponse
Example

get_user_badge_progress_by_id 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: ApiGetUserBadgeProgressResponse
Example

get_user_badge_progress_by_user_id 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| user_id | String | Yes |
Response
Returns: ApiGetUserBadgeProgressResponse
Example

get_user_badge_progress_list 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| user_id | String | No | |
| limit | f64 | No | |
| skip | f64 | No |
Response
Returns: ApiGetUserBadgeProgressListResponse
Example

create_user_badge 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| create_user_badge_params | models::CreateUserBadgeParams | Yes |
Response
Returns: ApiCreateUserBadgeResponse
Example

delete_user_badge 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: ApiEmptySuccessResponse
Example

get_user_badge 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: ApiGetUserBadgeResponse
Example

get_user_badges 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| user_id | String | No | |
| badge_id | String | No | |
| displayed_on_comments | bool | No | |
| limit | f64 | No | |
| skip | f64 | No |
Response
Returns: ApiGetUserBadgesResponse
Example

update_user_badge 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| update_user_badge_params | models::UpdateUserBadgeParams | Yes |
Response
Returns: ApiEmptySuccessResponse
Example

get_user_notification_count 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| sso | String | No |
Response
Returns: GetUserNotificationCountResponse
Example

get_user_notifications 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | No | |
| page_size | i32 | No | |
| after_id | String | No | |
| include_context | bool | No | |
| after_created_at | i64 | No | |
| unread_only | bool | No | |
| dm_only | bool | No | |
| no_dm | bool | No | |
| include_translations | bool | No | |
| include_tenant_notifications | bool | No | |
| sso | String | No |
Response
Returns: GetMyNotificationsResponse
Example

reset_user_notification_count 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| sso | String | No |
Response
Returns: ResetUserNotificationsResponse
Example

reset_user_notifications 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| after_id | String | No | |
| after_created_at | i64 | No | |
| unread_only | bool | No | |
| dm_only | bool | No | |
| no_dm | bool | No | |
| sso | String | No |
Response
Returns: ResetUserNotificationsResponse
Example

update_user_notification_comment_subscription_status 
Enable or disable notifications for a specific comment.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| notification_id | String | Yes | |
| opted_in_or_out | String | Yes | |
| comment_id | String | Yes | |
| sso | String | No |
Response
Returns: UpdateUserNotificationCommentSubscriptionStatusResponse
Example

update_user_notification_page_subscription_status 
Enable or disable notifications for a page. When users are subscribed to a page, notifications are created for new root comments, and also
Parameters
| 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 |
Response
Returns: UpdateUserNotificationPageSubscriptionStatusResponse
Example

update_user_notification_status 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| notification_id | String | Yes | |
| new_status | String | Yes | |
| sso | String | No |
Response
Returns: UpdateUserNotificationStatusResponse
Example

get_user_presence_statuses 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id_ws | String | Yes | |
| user_ids | String | Yes |
Response
Returns: GetUserPresenceStatusesResponse
Example

search_users 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | Yes | |
| username_starts_with | String | No | |
| mention_group_ids | Vec | No | |
| sso | String | No | |
| search_section | String | No |
Response
Returns: SearchUsersResult
Example

get_user 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes |
Response
Returns: GetUserResponse
Example

create_vote 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| comment_id | String | Yes | |
| direction | String | Yes | |
| user_id | String | No | |
| anon_user_id | String | No |
Response
Returns: VoteResponse
Example

delete_vote 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| id | String | Yes | |
| edit_key | String | No |
Response
Returns: VoteDeleteResponse
Example

get_votes 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | Yes |
Response
Returns: GetVotesResponse
Example

get_votes_for_user 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id | String | Yes | |
| url_id | String | Yes | |
| user_id | String | No | |
| anon_user_id | String | No |
Response
Returns: GetVotesForUserResponse
Example

Need Help?
If you encounter any issues or have questions about the Rust SDK, please:
Contributing
Contributions are welcome! Please visit the GitHub repository for contribution guidelines.