
Language 🇺🇸 English (US)
Documentation
Getting Started
API Reference
Usage
Aggregate
Audit Logs
Block From Comment
Check Blocked Comments
Comments
Domain Configs
Email Templates
Event Log
Feed Posts
Flag Comment
Hashtags
Moderators
Notification Count
Notifications
Pages
Pending Webhook Events
Question Configs
Question Results
Question Results Aggregation
SSO Users
Subscriptions
Tenant Daily Usage
Tenant Packages
Tenant Users
Tenants
Upload Image
User Badge Progress
User Badges
User Notifications
User Presence Status
User Search
Users
Votes
FastComments C++ SDK
This is the official C++ SDK for FastComments.
Official C++ SDK for the FastComments API
Repository
Requirements 
- C++17 or later
- CMake 3.14 or later
- OpenSSL
- C++ REST SDK (cpprestsdk)
- Boost
- Google Test (automatically downloaded for testing)
Installation 
Install Dependencies
sudo apt install libcpprest-dev libboost-all-dev
Building from Source
mkdir build
cd build
cmake ..
make
Installing
sudo make install
Library Contents
This library contains the generated API client and the SSO utilities that make working with the API easier.
Public vs Secured APIs
For the API client, there are two classes, DefaultAPI and PublicAPI. The DefaultAPI contains methods that require your API key, and PublicAPI contains API calls that can be made directly from a browser, mobile device, etc., without authentication.
Quick Start 
Using Authenticated APIs (DefaultAPI)
Important:
- You must set the base URL (cpp-restsdk generator doesn't read it from the OpenAPI spec)
- You must set your API key on the ApiClient before making authenticated requests. If you don't, requests will fail with a 401 error.
#include <iostream>
#include "FastCommentsClient/api/DefaultApi.h"
#include "FastCommentsClient/ApiClient.h"
#include "FastCommentsClient/ApiConfiguration.h"
int main() {
auto config = std::make_shared<org::openapitools::client::api::ApiConfiguration>();
// REQUIRED: Set the base URL (choose your region)
config->setBaseUrl(utility::conversions::to_string_t("https://fastcomments.com")); // US
// OR: config->setBaseUrl(utility::conversions::to_string_t("https://eu.fastcomments.com")); // EU
// REQUIRED: Set your API key
config->setApiKey(utility::conversions::to_string_t("api_key"), utility::conversions::to_string_t("YOUR_API_KEY_HERE"));
auto apiClient = std::make_shared<org::openapitools::client::api::ApiClient>(config);
org::openapitools::client::api::DefaultApi api(apiClient);
// Now make authenticated API calls
return 0;
}
Using Public APIs (PublicAPI)
Public endpoints don't require authentication:
#include <iostream>
#include "FastCommentsClient/api/PublicApi.h"
#include "FastCommentsClient/ApiClient.h"
#include "FastCommentsClient/ApiConfiguration.h"
int main() {
auto config = std::make_shared<org::openapitools::client::api::ApiConfiguration>();
// REQUIRED: Set the base URL
config->setBaseUrl(utility::conversions::to_string_t("https://fastcomments.com"));
auto apiClient = std::make_shared<org::openapitools::client::api::ApiClient>(config);
org::openapitools::client::api::PublicApi publicApi(apiClient);
// Make public API calls
return 0;
}
Common Issues
- "URI must contain a hostname" error: Make sure you call
config->setBaseUrl(utility::conversions::to_string_t("https://fastcomments.com"))before creating the ApiClient. The cpp-restsdk generator doesn't automatically read the server URL from the OpenAPI spec. - 401 "missing-api-key" error: Make sure you call
config->setApiKey(utility::conversions::to_string_t("api_key"), utility::conversions::to_string_t("YOUR_KEY"))before creating the DefaultAPI instance. - Wrong API class: Use
DefaultAPIfor server-side authenticated requests,PublicAPIfor client-side/public requests.
Making API Calls: Synchronous vs Asynchronous 
All API methods in this SDK return pplx::task<std::shared_ptr<ResponseType>> from the C++ REST SDK. This gives you flexibility in how you handle API responses.
Synchronous Calls with .get()
Use .get() to block the calling thread until the request completes and retrieve the result synchronously:
auto config = std::make_shared<org::openapitools::client::api::ApiConfiguration>();
config->setBaseUrl(utility::conversions::to_string_t("https://fastcomments.com"));
config->setApiKey(utility::conversions::to_string_t("api_key"),
utility::conversions::to_string_t("YOUR_API_KEY"));
auto apiClient = std::make_shared<org::openapitools::client::api::ApiClient>(config);
org::openapitools::client::api::DefaultApi api(apiClient);
// Call .get() to block and get the result synchronously
auto response = api.getComments(
utility::conversions::to_string_t("your-tenant-id"),
boost::none, // page
boost::none, // limit
boost::none, // skip
boost::none, // asTree
boost::none, // skipChildren
boost::none, // limitChildren
boost::none, // maxTreeDepth
utility::conversions::to_string_t("your-url-id"), // urlId
boost::none, // userId
boost::none, // anonUserId
boost::none, // contextUserId
boost::none, // hashTag
boost::none, // parentId
boost::none // direction
).get(); // Blocks until the HTTP request completes
if (response && response->comments) {
std::cout << "Found " << response->comments->size() << " comments" << std::endl;
}
Asynchronous Calls with .then()
Use .then() for non-blocking asynchronous execution with callbacks:
auto config = std::make_shared<org::openapitools::client::api::ApiConfiguration>();
config->setBaseUrl(utility::conversions::to_string_t("https://fastcomments.com"));
config->setApiKey(utility::conversions::to_string_t("api_key"),
utility::conversions::to_string_t("YOUR_API_KEY"));
auto apiClient = std::make_shared<org::openapitools::client::api::ApiClient>(config);
org::openapitools::client::api::DefaultApi api(apiClient);
// Use .then() for asynchronous callback-based execution
api.getComments(
utility::conversions::to_string_t("your-tenant-id"),
boost::none, boost::none, boost::none, boost::none, boost::none,
boost::none, boost::none,
utility::conversions::to_string_t("your-url-id"),
boost::none, boost::none, boost::none, boost::none, boost::none, boost::none
).then([](std::shared_ptr<GetComments_200_response> response) {
// This runs asynchronously when the request completes
if (response && response->comments) {
std::cout << "Found " << response->comments->size() << " comments" << std::endl;
}
});
// Execution continues immediately without blocking
std::cout << "Request sent, continuing..." << std::endl;
Choosing Between Synchronous and Asynchronous
The choice depends on your runtime environment and application architecture:
.get() (Synchronous blocking)
- Blocks the calling thread until the HTTP request completes
- Simpler code flow, easier to reason about
- Suitable for dedicated worker threads, batch processing, or command-line tools
- Not suitable for event loops, GUI threads, or single-threaded servers
.then() (Asynchronous non-blocking)
- Returns immediately, callback executes when request completes
- Does not block the calling thread
- Required for event-driven architectures, GUI applications, or single-threaded event loops
- Allows chaining multiple operations
- More complex control flow
The SDK's test suite uses .get() exclusively, but this is appropriate for the test environment where blocking is acceptable.
Notes 
Broadcast Ids
You'll see you're supposed 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.
SSO (Single Sign-On)
For SSO examples, see below.
SSO Usage 
Simple SSO
#include <fastcomments/sso/fastcomments_sso.hpp>
#include <iostream>
using namespace fastcomments::sso;
int main() {
SimpleSSOUserData user("user-123", "user@example.com", "https://example.com/avatar.jpg");
FastCommentsSSO sso = FastCommentsSSO::newSimple(user);
std::string token = sso.createToken();
std::cout << "SSO Token: " << token << std::endl;
return 0;
}
Secure SSO
#include <fastcomments/sso/fastcomments_sso.hpp>
#include <iostream>
using namespace fastcomments::sso;
int main() {
SecureSSOUserData user("user-123", "user@example.com", "johndoe", "https://example.com/avatar.jpg");
std::string apiKey = "your-api-key";
FastCommentsSSO sso = FastCommentsSSO::newSecure(apiKey, user);
std::string token = sso.createToken();
std::cout << "Secure SSO Token: " << token << std::endl;
return 0;
}
FastComments Documentation 
Documentation for API Endpoints
All URIs are relative to https://fastcomments.com
| Class | Method | HTTP request | Description |
|---|---|---|---|
| DefaultApi | addDomainConfig | POST /api/v1/domain-configs | |
| DefaultApi | addHashTag | POST /api/v1/hash-tags | |
| DefaultApi | addHashTagsBulk | POST /api/v1/hash-tags/bulk | |
| DefaultApi | addPage | POST /api/v1/pages | |
| DefaultApi | addSSOUser | POST /api/v1/sso-users | |
| DefaultApi | aggregate | POST /api/v1/aggregate | Aggregates documents by grouping them (if groupBy is provided) and applying multiple operations. Different operations (e.g. sum, countDistinct, avg, etc.) are supported. |
| DefaultApi | aggregateQuestionResults | GET /api/v1/question-results-aggregation | |
| DefaultApi | blockUserFromComment | POST /api/v1/comments/{id}/block | |
| DefaultApi | bulkAggregateQuestionResults | POST /api/v1/question-results-aggregation/bulk | |
| DefaultApi | combineCommentsWithQuestionResults | GET /api/v1/question-results-aggregation/combine/comments | |
| DefaultApi | createEmailTemplate | POST /api/v1/email-templates | |
| DefaultApi | createFeedPost | POST /api/v1/feed-posts | |
| DefaultApi | createModerator | POST /api/v1/moderators | |
| DefaultApi | createQuestionConfig | POST /api/v1/question-configs | |
| DefaultApi | createQuestionResult | POST /api/v1/question-results | |
| DefaultApi | createSubscription | POST /api/v1/subscriptions | |
| DefaultApi | createTenant | POST /api/v1/tenants | |
| DefaultApi | createTenantPackage | POST /api/v1/tenant-packages | |
| DefaultApi | createTenantUser | POST /api/v1/tenant-users | |
| DefaultApi | createUserBadge | POST /api/v1/user-badges | |
| DefaultApi | createVote | POST /api/v1/votes | |
| DefaultApi | deleteComment | DELETE /api/v1/comments/{id} | |
| DefaultApi | deleteDomainConfig | DELETE /api/v1/domain-configs/{domain} | |
| DefaultApi | deleteEmailTemplate | DELETE /api/v1/email-templates/{id} | |
| DefaultApi | deleteEmailTemplateRenderError | DELETE /api/v1/email-templates/{id}/render-errors/{errorId} | |
| DefaultApi | deleteHashTag | DELETE /api/v1/hash-tags/{tag} | |
| DefaultApi | deleteModerator | DELETE /api/v1/moderators/{id} | |
| DefaultApi | deleteNotificationCount | DELETE /api/v1/notification-count/{id} | |
| DefaultApi | deletePage | DELETE /api/v1/pages/{id} | |
| DefaultApi | deletePendingWebhookEvent | DELETE /api/v1/pending-webhook-events/{id} | |
| DefaultApi | deleteQuestionConfig | DELETE /api/v1/question-configs/{id} | |
| DefaultApi | deleteQuestionResult | DELETE /api/v1/question-results/{id} | |
| DefaultApi | deleteSSOUser | DELETE /api/v1/sso-users/{id} | |
| DefaultApi | deleteSubscription | DELETE /api/v1/subscriptions/{id} | |
| DefaultApi | deleteTenant | DELETE /api/v1/tenants/{id} | |
| DefaultApi | deleteTenantPackage | DELETE /api/v1/tenant-packages/{id} | |
| DefaultApi | deleteTenantUser | DELETE /api/v1/tenant-users/{id} | |
| DefaultApi | deleteUserBadge | DELETE /api/v1/user-badges/{id} | |
| DefaultApi | deleteVote | DELETE /api/v1/votes/{id} | |
| DefaultApi | flagComment | POST /api/v1/comments/{id}/flag | |
| DefaultApi | getAuditLogs | GET /api/v1/audit-logs | |
| DefaultApi | getCachedNotificationCount | GET /api/v1/notification-count/{id} | |
| DefaultApi | getComment | GET /api/v1/comments/{id} | |
| DefaultApi | getComments | GET /api/v1/comments | |
| DefaultApi | getDomainConfig | GET /api/v1/domain-configs/{domain} | |
| DefaultApi | getDomainConfigs | GET /api/v1/domain-configs | |
| DefaultApi | getEmailTemplate | GET /api/v1/email-templates/{id} | |
| DefaultApi | getEmailTemplateDefinitions | GET /api/v1/email-templates/definitions | |
| DefaultApi | getEmailTemplateRenderErrors | GET /api/v1/email-templates/{id}/render-errors | |
| DefaultApi | getEmailTemplates | GET /api/v1/email-templates | |
| DefaultApi | getFeedPosts | GET /api/v1/feed-posts | req tenantId afterId |
| DefaultApi | getHashTags | GET /api/v1/hash-tags | |
| DefaultApi | getModerator | GET /api/v1/moderators/{id} | |
| DefaultApi | getModerators | GET /api/v1/moderators | |
| DefaultApi | getNotificationCount | GET /api/v1/notifications/count | |
| DefaultApi | getNotifications | GET /api/v1/notifications | |
| DefaultApi | getPageByURLId | GET /api/v1/pages/by-url-id | |
| DefaultApi | getPages | GET /api/v1/pages | |
| DefaultApi | getPendingWebhookEventCount | GET /api/v1/pending-webhook-events/count | |
| DefaultApi | getPendingWebhookEvents | GET /api/v1/pending-webhook-events | |
| DefaultApi | getQuestionConfig | GET /api/v1/question-configs/{id} | |
| DefaultApi | getQuestionConfigs | GET /api/v1/question-configs | |
| DefaultApi | getQuestionResult | GET /api/v1/question-results/{id} | |
| DefaultApi | getQuestionResults | GET /api/v1/question-results | |
| DefaultApi | getSSOUserByEmail | GET /api/v1/sso-users/by-email/{email} | |
| DefaultApi | getSSOUserById | GET /api/v1/sso-users/by-id/{id} | |
| DefaultApi | getSSOUsers | GET /api/v1/sso-users | |
| DefaultApi | getSubscriptions | GET /api/v1/subscriptions | |
| DefaultApi | getTenant | GET /api/v1/tenants/{id} | |
| DefaultApi | getTenantDailyUsages | GET /api/v1/tenant-daily-usage | |
| DefaultApi | getTenantPackage | GET /api/v1/tenant-packages/{id} | |
| DefaultApi | getTenantPackages | GET /api/v1/tenant-packages | |
| DefaultApi | getTenantUser | GET /api/v1/tenant-users/{id} | |
| DefaultApi | getTenantUsers | GET /api/v1/tenant-users | |
| DefaultApi | getTenants | GET /api/v1/tenants | |
| DefaultApi | getUser | GET /api/v1/users/{id} | |
| DefaultApi | getUserBadge | GET /api/v1/user-badges/{id} | |
| DefaultApi | getUserBadgeProgressById | GET /api/v1/user-badge-progress/{id} | |
| DefaultApi | getUserBadgeProgressByUserId | GET /api/v1/user-badge-progress/user/{userId} | |
| DefaultApi | getUserBadgeProgressList | GET /api/v1/user-badge-progress | |
| DefaultApi | getUserBadges | GET /api/v1/user-badges | |
| DefaultApi | getVotes | GET /api/v1/votes | |
| DefaultApi | getVotesForUser | GET /api/v1/votes/for-user | |
| DefaultApi | patchDomainConfig | PATCH /api/v1/domain-configs/{domainToUpdate} | |
| DefaultApi | patchHashTag | PATCH /api/v1/hash-tags/{tag} | |
| DefaultApi | patchPage | PATCH /api/v1/pages/{id} | |
| DefaultApi | patchSSOUser | PATCH /api/v1/sso-users/{id} | |
| DefaultApi | putDomainConfig | PUT /api/v1/domain-configs/{domainToUpdate} | |
| DefaultApi | putSSOUser | PUT /api/v1/sso-users/{id} | |
| DefaultApi | renderEmailTemplate | POST /api/v1/email-templates/render | |
| DefaultApi | replaceTenantPackage | PUT /api/v1/tenant-packages/{id} | |
| DefaultApi | replaceTenantUser | PUT /api/v1/tenant-users/{id} | |
| DefaultApi | saveComment | POST /api/v1/comments | |
| DefaultApi | saveCommentsBulk | POST /api/v1/comments/bulk | |
| DefaultApi | sendInvite | POST /api/v1/moderators/{id}/send-invite | |
| DefaultApi | sendLoginLink | POST /api/v1/tenant-users/{id}/send-login-link | |
| DefaultApi | unBlockUserFromComment | POST /api/v1/comments/{id}/un-block | |
| DefaultApi | unFlagComment | POST /api/v1/comments/{id}/un-flag | |
| DefaultApi | updateComment | PATCH /api/v1/comments/{id} | |
| DefaultApi | updateEmailTemplate | PATCH /api/v1/email-templates/{id} | |
| DefaultApi | updateFeedPost | PATCH /api/v1/feed-posts/{id} | |
| DefaultApi | updateModerator | PATCH /api/v1/moderators/{id} | |
| DefaultApi | updateNotification | PATCH /api/v1/notifications/{id} | |
| DefaultApi | updateQuestionConfig | PATCH /api/v1/question-configs/{id} | |
| DefaultApi | updateQuestionResult | PATCH /api/v1/question-results/{id} | |
| DefaultApi | updateTenant | PATCH /api/v1/tenants/{id} | |
| DefaultApi | updateTenantPackage | PATCH /api/v1/tenant-packages/{id} | |
| DefaultApi | updateTenantUser | PATCH /api/v1/tenant-users/{id} | |
| DefaultApi | updateUserBadge | PUT /api/v1/user-badges/{id} | |
| PublicApi | blockFromCommentPublic | POST /block-from-comment/{commentId} | |
| PublicApi | checkedCommentsForBlocked | GET /check-blocked-comments | |
| PublicApi | createCommentPublic | POST /comments/{tenantId} | |
| PublicApi | createFeedPostPublic | POST /feed-posts/{tenantId} | |
| PublicApi | deleteCommentPublic | DELETE /comments/{tenantId}/{commentId} | |
| PublicApi | deleteCommentVote | DELETE /comments/{tenantId}/{commentId}/vote/{voteId} | |
| PublicApi | deleteFeedPostPublic | DELETE /feed-posts/{tenantId}/{postId} | |
| PublicApi | flagCommentPublic | POST /flag-comment/{commentId} | |
| PublicApi | getCommentText | GET /comments/{tenantId}/{commentId}/text | |
| PublicApi | getCommentVoteUserNames | GET /comments/{tenantId}/{commentId}/votes | |
| PublicApi | getCommentsPublic | GET /comments/{tenantId} | req tenantId urlId |
| PublicApi | getEventLog | GET /event-log/{tenantId} | req tenantId urlId userIdWS |
| PublicApi | getFeedPostsPublic | GET /feed-posts/{tenantId} | req tenantId afterId |
| PublicApi | getFeedPostsStats | GET /feed-posts/{tenantId}/stats | |
| PublicApi | getGlobalEventLog | GET /event-log/global/{tenantId} | req tenantId urlId userIdWS |
| PublicApi | getUserNotificationCount | GET /user-notifications/get-count | |
| PublicApi | getUserNotifications | GET /user-notifications | |
| PublicApi | getUserPresenceStatuses | GET /user-presence-status | |
| PublicApi | getUserReactsPublic | GET /feed-posts/{tenantId}/user-reacts | |
| PublicApi | lockComment | POST /comments/{tenantId}/{commentId}/lock | |
| PublicApi | pinComment | POST /comments/{tenantId}/{commentId}/pin | |
| PublicApi | reactFeedPostPublic | POST /feed-posts/{tenantId}/react/{postId} | |
| PublicApi | resetUserNotificationCount | POST /user-notifications/reset-count | |
| PublicApi | resetUserNotifications | POST /user-notifications/reset | |
| PublicApi | searchUsers | GET /user-search/{tenantId} | |
| PublicApi | setCommentText | POST /comments/{tenantId}/{commentId}/update-text | |
| PublicApi | unBlockCommentPublic | DELETE /block-from-comment/{commentId} | |
| PublicApi | unLockComment | POST /comments/{tenantId}/{commentId}/unlock | |
| PublicApi | unPinComment | POST /comments/{tenantId}/{commentId}/unpin | |
| PublicApi | updateFeedPostPublic | PUT /feed-posts/{tenantId}/{postId} | |
| PublicApi | updateUserNotificationCommentSubscriptionStatus | POST /user-notifications/{notificationId}/mark-opted/{optedInOrOut} | Enable or disable notifications for a specific comment. |
| PublicApi | updateUserNotificationPageSubscriptionStatus | POST /user-notifications/set-subscription-state/{subscribedOrUnsubscribed} | Enable or disable notifications for a page. When users are subscribed to a page, notifications are created for new root comments, and also |
| PublicApi | updateUserNotificationStatus | POST /user-notifications/{notificationId}/mark/{newStatus} | |
| PublicApi | uploadImage | POST /upload-image/{tenantId} | Upload and resize an image |
| PublicApi | voteComment | POST /comments/{tenantId}/{commentId}/vote |
Documentation for Models
- APIAuditLog
- APIComment
- APICommentBase
- APICreateUserBadgeResponse
- APIDomainConfiguration
- APIEmptyResponse
- APIEmptySuccessResponse
- APIError
- APIGetCommentResponse
- APIGetCommentsResponse
- APIGetUserBadgeProgressListResponse
- APIGetUserBadgeProgressResponse
- APIGetUserBadgeResponse
- APIGetUserBadgesResponse
- APIPage
- APISSOUser
- APIStatus
- APITenant
- APITenantDailyUsage
- APIUserSubscription
- AddDomainConfigParams
- AddDomainConfig_200_response
- AddDomainConfig_200_response_anyOf
- AddHashTag_200_response
- AddHashTagsBulk_200_response
- AddPageAPIResponse
- AddSSOUserAPIResponse
- AggregateQuestionResultsResponse
- AggregateQuestionResults_200_response
- AggregateTimeBucket
- AggregationItem
- AggregationOpType
- AggregationOperation
- AggregationRequest
- AggregationRequest_sort
- AggregationResponse
- AggregationResponse_stats
- AggregationValue
- BillingInfo
- BlockFromCommentParams
- BlockFromCommentPublic_200_response
- BlockSuccess
- BulkAggregateQuestionItem
- BulkAggregateQuestionResultsRequest
- BulkAggregateQuestionResultsResponse
- BulkAggregateQuestionResults_200_response
- BulkCreateHashTagsBody
- BulkCreateHashTagsBody_tags_inner
- BulkCreateHashTagsResponse
- ChangeCommentPinStatusResponse
- CheckBlockedCommentsResponse
- CheckedCommentsForBlocked_200_response
- CombineCommentsWithQuestionResults_200_response
- CombineQuestionResultsWithCommentsResponse
- CommentData
- CommentHTMLRenderingMode
- CommentLogData
- CommentLogEntry
- CommentLogType
- CommentQuestionResultsRenderingType
- CommentQuestionsRequired
- CommentTextUpdateRequest
- CommentThreadDeletionMode
- CommentUserBadgeInfo
- CommentUserHashTagInfo
- CommentUserMentionInfo
- CommenterNameFormats
- CreateAPIPageData
- CreateAPISSOUserData
- CreateAPIUserSubscriptionData
- CreateCommentParams
- CreateCommentPublic_200_response
- CreateEmailTemplateBody
- CreateEmailTemplateResponse
- CreateEmailTemplate_200_response
- CreateFeedPostParams
- CreateFeedPostPublic_200_response
- CreateFeedPostResponse
- CreateFeedPost_200_response
- CreateFeedPostsResponse
- CreateHashTagBody
- CreateHashTagResponse
- CreateModeratorBody
- CreateModeratorResponse
- CreateModerator_200_response
- CreateQuestionConfigBody
- CreateQuestionConfigResponse
- CreateQuestionConfig_200_response
- CreateQuestionResultBody
- CreateQuestionResultResponse
- CreateQuestionResult_200_response
- CreateSubscriptionAPIResponse
- CreateTenantBody
- CreateTenantPackageBody
- CreateTenantPackageResponse
- CreateTenantPackage_200_response
- CreateTenantResponse
- CreateTenantUserBody
- CreateTenantUserResponse
- CreateTenantUser_200_response
- CreateTenant_200_response
- CreateUserBadgeParams
- CreateUserBadge_200_response
- CustomConfigParameters
- CustomEmailTemplate
- DeleteCommentAction
- DeleteCommentPublic_200_response
- DeleteCommentResult
- DeleteCommentVote_200_response
- DeleteComment_200_response
- DeleteDomainConfig_200_response
- DeleteFeedPostPublic_200_response
- DeleteFeedPostPublic_200_response_anyOf
- DeleteHashTag_request
- DeletePageAPIResponse
- DeleteSSOUserAPIResponse
- DeleteSubscriptionAPIResponse
- DeletedCommentResultComment
- DigestEmailFrequency
- EmailTemplateDefinition
- EmailTemplateRenderErrorResponse
- EventLogEntry
- FComment
- FComment_meta
- FeedPost
- FeedPostLink
- FeedPostMediaItem
- FeedPostMediaItemAsset
- FeedPostStats
- FeedPostsStatsResponse
- FindCommentsByRangeItem
- FindCommentsByRangeResponse
- FlagCommentPublic_200_response
- FlagCommentResponse
- FlagComment_200_response
- GetAuditLogsResponse
- GetAuditLogs_200_response
- GetCachedNotificationCountResponse
- GetCachedNotificationCount_200_response
- GetCommentText_200_response
- GetCommentVoteUserNamesSuccessResponse
- GetCommentVoteUserNames_200_response
- GetComment_200_response
- GetCommentsPublic_200_response
- GetCommentsResponseWithPresence_PublicComment_
- GetCommentsResponse_PublicComment_
- GetComments_200_response
- GetDomainConfig_200_response
- GetDomainConfigs_200_response
- GetDomainConfigs_200_response_anyOf
- GetDomainConfigs_200_response_anyOf_1
- GetEmailTemplateDefinitionsResponse
- GetEmailTemplateDefinitions_200_response
- GetEmailTemplateRenderErrorsResponse
- GetEmailTemplateRenderErrors_200_response
- GetEmailTemplateResponse
- GetEmailTemplate_200_response
- GetEmailTemplatesResponse
- GetEmailTemplates_200_response
- GetEventLogResponse
- GetEventLog_200_response
- GetFeedPostsPublic_200_response
- GetFeedPostsResponse
- GetFeedPostsStats_200_response
- GetFeedPosts_200_response
- GetHashTagsResponse
- GetHashTags_200_response
- GetModeratorResponse
- GetModerator_200_response
- GetModeratorsResponse
- GetModerators_200_response
- GetMyNotificationsResponse
- GetNotificationCountResponse
- GetNotificationCount_200_response
- GetNotificationsResponse
- GetNotifications_200_response
- GetPageByURLIdAPIResponse
- GetPagesAPIResponse
- GetPendingWebhookEventCountResponse
- GetPendingWebhookEventCount_200_response
- GetPendingWebhookEventsResponse
- GetPendingWebhookEvents_200_response
- GetPublicFeedPostsResponse
- GetQuestionConfigResponse
- GetQuestionConfig_200_response
- GetQuestionConfigsResponse
- GetQuestionConfigs_200_response
- GetQuestionResultResponse
- GetQuestionResult_200_response
- GetQuestionResultsResponse
- GetQuestionResults_200_response
- GetSSOUserByEmailAPIResponse
- GetSSOUserByIdAPIResponse
- GetSSOUsers_200_response
- GetSubscriptionsAPIResponse
- GetTenantDailyUsagesResponse
- GetTenantDailyUsages_200_response
- GetTenantPackageResponse
- GetTenantPackage_200_response
- GetTenantPackagesResponse
- GetTenantPackages_200_response
- GetTenantResponse
- GetTenantUserResponse
- GetTenantUser_200_response
- GetTenantUsersResponse
- GetTenantUsers_200_response
- GetTenant_200_response
- GetTenantsResponse
- GetTenants_200_response
- GetUserBadgeProgressById_200_response
- GetUserBadgeProgressList_200_response
- GetUserBadge_200_response
- GetUserBadges_200_response
- GetUserNotificationCountResponse
- GetUserNotificationCount_200_response
- GetUserNotifications_200_response
- GetUserPresenceStatusesResponse
- GetUserPresenceStatuses_200_response
- GetUserReactsPublic_200_response
- GetUserResponse
- GetUser_200_response
- GetVotesForUserResponse
- GetVotesForUser_200_response
- GetVotesResponse
- GetVotes_200_response
- GifRating
- HeaderState
- IgnoredResponse
- ImageContentProfanityLevel
- ImportedSiteType
- LiveEvent
- LiveEventType
- LiveEvent_extraInfo
- LockComment_200_response
- MediaAsset
- MetaItem
- Moderator
- NotificationAndCount
- NotificationObjectType
- NotificationType
- PatchDomainConfigParams
- PatchHashTag_200_response
- PatchPageAPIResponse
- PatchSSOUserAPIResponse
- PendingCommentToSyncOutbound
- PinComment_200_response
- PubSubComment
- PubSubCommentBase
- PubSubVote
- PublicAPIDeleteCommentResponse
- PublicAPIGetCommentTextResponse
- PublicAPISetCommentTextResponse
- PublicBlockFromCommentParams
- PublicComment
- [PublicCommentBase](https://github.com/FastComments/fastcomments-cpp/blob/master
aggregate 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| aggregationRequest | AggregationRequest | Yes | |
| parentTenantId | string | No | |
| includeStats | bool | No |
Response
Returns: AggregationResponse
Example

getAuditLogs 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| limit | double | No | |
| skip | double | No | |
| order | SORT_DIR | No | |
| after | double | No | |
| before | double | No |
Response
Returns: GetAuditLogs_200_response
Example

blockFromCommentPublic 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| publicBlockFromCommentParams | PublicBlockFromCommentParams | Yes | |
| sso | string | No |
Response
Returns: BlockFromCommentPublic_200_response
Example

unBlockCommentPublic 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| publicBlockFromCommentParams | PublicBlockFromCommentParams | Yes | |
| sso | string | No |
Response
Returns: UnBlockCommentPublic_200_response
Example

checkedCommentsForBlocked 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentIds | string | Yes | |
| sso | string | No |
Response
Returns: CheckedCommentsForBlocked_200_response
Example

blockUserFromComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| blockFromCommentParams | BlockFromCommentParams | Yes | |
| userId | string | No | |
| anonUserId | string | No |
Response
Returns: BlockFromCommentPublic_200_response
Example

createCommentPublic 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| urlId | string | Yes | |
| broadcastId | string | Yes | |
| commentData | CommentData | Yes | |
| sessionId | string | No | |
| sso | string | No |
Response
Returns: CreateCommentPublic_200_response
Example

deleteComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| contextUserId | string | No | |
| isLive | bool | No |
Response
Returns: DeleteComment_200_response
Example

deleteCommentPublic 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| broadcastId | string | Yes | |
| editKey | string | No | |
| sso | string | No |
Response
Returns: DeleteCommentPublic_200_response
Example

deleteCommentVote 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| voteId | string | Yes | |
| urlId | string | Yes | |
| broadcastId | string | Yes | |
| editKey | string | No | |
| sso | string | No |
Response
Returns: DeleteCommentVote_200_response
Example

flagComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| userId | string | No | |
| anonUserId | string | No |
Response
Returns: FlagComment_200_response
Example

getComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: GetComment_200_response
Example

getComments 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| page | int32_t | No | |
| limit | int32_t | No | |
| skip | int32_t | No | |
| asTree | bool | No | |
| skipChildren | int32_t | No | |
| limitChildren | int32_t | No | |
| maxTreeDepth | int32_t | No | |
| urlId | string | No | |
| userId | string | No | |
| anonUserId | string | No | |
| contextUserId | string | No | |
| hashTag | string | No | |
| parentId | string | No | |
| direction | SortDirections | No |
Response
Returns: GetComments_200_response
Example

getCommentsPublic 
req tenantId urlId
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| urlId | string | Yes | |
| page | int32_t | No | |
| direction | SortDirections | No | |
| sso | string | No | |
| skip | int32_t | No | |
| skipChildren | int32_t | No | |
| limit | int32_t | No | |
| limitChildren | int32_t | No | |
| countChildren | bool | No | |
| fetchPageForCommentId | string | No | |
| includeConfig | bool | No | |
| countAll | bool | No | |
| includei10n | bool | No | |
| locale | string | No | |
| modules | string | No | |
| isCrawler | bool | No | |
| includeNotificationCount | bool | No | |
| asTree | bool | No | |
| maxTreeDepth | int32_t | No | |
| useFullTranslationIds | bool | No | |
| parentId | string | No | |
| searchText | string | No | |
| hashTags | vector<string | No | |
| userId | string | No | |
| customConfigStr | string | No | |
| afterCommentId | string | No | |
| beforeCommentId | string | No |
Response
Returns: GetCommentsPublic_200_response
Example

getCommentText 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| editKey | string | No | |
| sso | string | No |
Response
Returns: GetCommentText_200_response
Example

getCommentVoteUserNames 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| dir | int32_t | Yes | |
| sso | string | No |
Response
Returns: GetCommentVoteUserNames_200_response
Example

lockComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| broadcastId | string | Yes | |
| sso | string | No |
Response
Returns: LockComment_200_response
Example

pinComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| broadcastId | string | Yes | |
| sso | string | No |
Response
Returns: PinComment_200_response
Example

saveComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createCommentParams | CreateCommentParams | Yes | |
| isLive | bool | No | |
| doSpamCheck | bool | No | |
| sendEmails | bool | No | |
| populateNotifications | bool | No |
Response
Returns: SaveComment_200_response
Example

setCommentText 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| broadcastId | string | Yes | |
| commentTextUpdateRequest | CommentTextUpdateRequest | Yes | |
| editKey | string | No | |
| sso | string | No |
Response
Returns: SetCommentText_200_response
Example

unBlockUserFromComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| unBlockFromCommentParams | UnBlockFromCommentParams | Yes | |
| userId | string | No | |
| anonUserId | string | No |
Response
Returns: UnBlockCommentPublic_200_response
Example

unFlagComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| userId | string | No | |
| anonUserId | string | No |
Response
Returns: FlagComment_200_response
Example

unLockComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| broadcastId | string | Yes | |
| sso | string | No |
Response
Returns: LockComment_200_response
Example

unPinComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| broadcastId | string | Yes | |
| sso | string | No |
Response
Returns: PinComment_200_response
Example

updateComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| updatableCommentParams | UpdatableCommentParams | Yes | |
| contextUserId | string | No | |
| doSpamCheck | bool | No | |
| isLive | bool | No |
Response
Returns: FlagCommentPublic_200_response
Example

voteComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| urlId | string | Yes | |
| broadcastId | string | Yes | |
| voteBodyParams | VoteBodyParams | Yes | |
| sessionId | string | No | |
| sso | string | No |
Response
Returns: VoteComment_200_response
Example

addDomainConfig 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| addDomainConfigParams | AddDomainConfigParams | Yes |
Response
Returns: AddDomainConfig_200_response
Example

deleteDomainConfig 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| domain | string | Yes |
Response
Returns: DeleteDomainConfig_200_response
Example

getDomainConfig 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| domain | string | Yes |
Response
Returns: GetDomainConfig_200_response
Example

getDomainConfigs 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes |
Response
Returns: GetDomainConfigs_200_response
Example

patchDomainConfig 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| domainToUpdate | string | Yes | |
| patchDomainConfigParams | PatchDomainConfigParams | Yes |
Response
Returns: GetDomainConfig_200_response
Example

putDomainConfig 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| domainToUpdate | string | Yes | |
| updateDomainConfigParams | UpdateDomainConfigParams | Yes |
Response
Returns: GetDomainConfig_200_response
Example

createEmailTemplate 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createEmailTemplateBody | CreateEmailTemplateBody | Yes |
Response
Returns: CreateEmailTemplate_200_response
Example

deleteEmailTemplate 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: FlagCommentPublic_200_response
Example

deleteEmailTemplateRenderError 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| errorId | string | Yes |
Response
Returns: FlagCommentPublic_200_response
Example

getEmailTemplate 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: GetEmailTemplate_200_response
Example

getEmailTemplateDefinitions 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes |
Response
Returns: GetEmailTemplateDefinitions_200_response
Example

getEmailTemplateRenderErrors 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| skip | double | No |
Response
Returns: GetEmailTemplateRenderErrors_200_response
Example

getEmailTemplates 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| skip | double | No |
Response
Returns: GetEmailTemplates_200_response
Example

renderEmailTemplate 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| renderEmailTemplateBody | RenderEmailTemplateBody | Yes | |
| locale | string | No |
Response
Returns: RenderEmailTemplate_200_response
Example

updateEmailTemplate 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| updateEmailTemplateBody | UpdateEmailTemplateBody | Yes |
Response
Returns: FlagCommentPublic_200_response
Example

getEventLog 
req tenantId urlId userIdWS
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| urlId | string | Yes | |
| userIdWS | string | Yes | |
| startTime | int64_t | Yes | |
| endTime | int64_t | Yes |
Response
Returns: GetEventLog_200_response
Example

getGlobalEventLog 
req tenantId urlId userIdWS
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| urlId | string | Yes | |
| userIdWS | string | Yes | |
| startTime | int64_t | Yes | |
| endTime | int64_t | Yes |
Response
Returns: GetEventLog_200_response
Example

createFeedPost 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createFeedPostParams | CreateFeedPostParams | Yes | |
| broadcastId | string | No | |
| isLive | bool | No | |
| doSpamCheck | bool | No | |
| skipDupCheck | bool | No |
Response
Returns: CreateFeedPost_200_response
Example

createFeedPostPublic 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createFeedPostParams | CreateFeedPostParams | Yes | |
| broadcastId | string | No | |
| sso | string | No |
Response
Returns: CreateFeedPostPublic_200_response
Example

deleteFeedPostPublic 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| postId | string | Yes | |
| broadcastId | string | No | |
| sso | string | No |
Response
Returns: DeleteFeedPostPublic_200_response
Example

getFeedPosts 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| afterId | string | No | |
| limit | int32_t | No | |
| tags | vector<string | No |
Response
Returns: GetFeedPosts_200_response
Example

getFeedPostsPublic 
req tenantId afterId
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| afterId | string | No | |
| limit | int32_t | No | |
| tags | vector<string | No | |
| sso | string | No | |
| isCrawler | bool | No | |
| includeUserInfo | bool | No |
Response
Returns: GetFeedPostsPublic_200_response
Example

getFeedPostsStats 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| postIds | vector<string | Yes | |
| sso | string | No |
Response
Returns: GetFeedPostsStats_200_response
Example

getUserReactsPublic 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| postIds | vector<string | No | |
| sso | string | No |
Response
Returns: GetUserReactsPublic_200_response
Example

reactFeedPostPublic 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| postId | string | Yes | |
| reactBodyParams | ReactBodyParams | Yes | |
| isUndo | bool | No | |
| broadcastId | string | No | |
| sso | string | No |
Response
Returns: ReactFeedPostPublic_200_response
Example

updateFeedPost 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| feedPost | FeedPost | Yes |
Response
Returns: FlagCommentPublic_200_response
Example

updateFeedPostPublic 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| postId | string | Yes | |
| updateFeedPostParams | UpdateFeedPostParams | Yes | |
| broadcastId | string | No | |
| sso | string | No |
Response
Returns: CreateFeedPostPublic_200_response
Example

flagCommentPublic 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| isFlagged | bool | Yes | |
| sso | string | No |
Response
Returns: FlagCommentPublic_200_response
Example

addHashTag 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | No | |
| createHashTagBody | CreateHashTagBody | No |
Response
Returns: AddHashTag_200_response
Example

addHashTagsBulk 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | No | |
| bulkCreateHashTagsBody | BulkCreateHashTagsBody | No |
Response
Returns: AddHashTagsBulk_200_response
Example

deleteHashTag 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tag | string | Yes | |
| tenantId | string | No | |
| deleteHashTagRequest | DeleteHashTag_request | No |
Response
Returns: FlagCommentPublic_200_response
Example

getHashTags 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| page | double | No |
Response
Returns: GetHashTags_200_response
Example

patchHashTag 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tag | string | Yes | |
| tenantId | string | No | |
| updateHashTagBody | UpdateHashTagBody | No |
Response
Returns: PatchHashTag_200_response
Example

createModerator 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createModeratorBody | CreateModeratorBody | Yes |
Response
Returns: CreateModerator_200_response
Example

deleteModerator 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| sendEmail | string | No |
Response
Returns: FlagCommentPublic_200_response
Example

getModerator 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: GetModerator_200_response
Example

getModerators 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| skip | double | No |
Response
Returns: GetModerators_200_response
Example

sendInvite 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| fromName | string | Yes |
Response
Returns: FlagCommentPublic_200_response
Example

updateModerator 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| updateModeratorBody | UpdateModeratorBody | Yes |
Response
Returns: FlagCommentPublic_200_response
Example

deleteNotificationCount 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: FlagCommentPublic_200_response
Example

getCachedNotificationCount 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: GetCachedNotificationCount_200_response
Example

getNotificationCount 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| userId | string | No | |
| urlId | string | No | |
| fromCommentId | string | No | |
| viewed | bool | No | |
| type | string | No |
Response
Returns: GetNotificationCount_200_response
Example

getNotifications 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| userId | string | No | |
| urlId | string | No | |
| fromCommentId | string | No | |
| viewed | bool | No | |
| type | string | No | |
| skip | double | No |
Response
Returns: GetNotifications_200_response
Example

updateNotification 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| updateNotificationBody | UpdateNotificationBody | Yes | |
| userId | string | No |
Response
Returns: FlagCommentPublic_200_response
Example

addPage 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createAPIPageData | CreateAPIPageData | Yes |
Response
Returns: AddPageAPIResponse
Example

deletePage 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: DeletePageAPIResponse
Example

getPageByURLId 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| urlId | string | Yes |
Response
Returns: GetPageByURLIdAPIResponse
Example

getPages 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes |
Response
Returns: GetPagesAPIResponse
Example

patchPage 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| updateAPIPageData | UpdateAPIPageData | Yes |
Response
Returns: PatchPageAPIResponse
Example

deletePendingWebhookEvent 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: FlagCommentPublic_200_response
Example

getPendingWebhookEventCount 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | No | |
| externalId | string | No | |
| eventType | string | No | |
| type | string | No | |
| domain | string | No | |
| attemptCountGT | double | No |
Response
Returns: GetPendingWebhookEventCount_200_response
Example

getPendingWebhookEvents 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | No | |
| externalId | string | No | |
| eventType | string | No | |
| type | string | No | |
| domain | string | No | |
| attemptCountGT | double | No | |
| skip | double | No |
Response
Returns: GetPendingWebhookEvents_200_response
Example

createQuestionConfig 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createQuestionConfigBody | CreateQuestionConfigBody | Yes |
Response
Returns: CreateQuestionConfig_200_response
Example

deleteQuestionConfig 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: FlagCommentPublic_200_response
Example

getQuestionConfig 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: GetQuestionConfig_200_response
Example

getQuestionConfigs 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| skip | double | No |
Response
Returns: GetQuestionConfigs_200_response
Example

updateQuestionConfig 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| updateQuestionConfigBody | UpdateQuestionConfigBody | Yes |
Response
Returns: FlagCommentPublic_200_response
Example

createQuestionResult 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createQuestionResultBody | CreateQuestionResultBody | Yes |
Response
Returns: CreateQuestionResult_200_response
Example

deleteQuestionResult 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: FlagCommentPublic_200_response
Example

getQuestionResult 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: GetQuestionResult_200_response
Example

getQuestionResults 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| urlId | string | No | |
| userId | string | No | |
| startDate | string | No | |
| questionId | string | No | |
| questionIds | string | No | |
| skip | double | No |
Response
Returns: GetQuestionResults_200_response
Example

updateQuestionResult 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| updateQuestionResultBody | UpdateQuestionResultBody | Yes |
Response
Returns: FlagCommentPublic_200_response
Example

aggregateQuestionResults 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| questionId | string | No | |
| questionIds | vector<string | No | |
| urlId | string | No | |
| timeBucket | AggregateTimeBucket | No | |
| startDate | datetime | No | |
| forceRecalculate | bool | No |
Response
Returns: AggregateQuestionResults_200_response
Example

bulkAggregateQuestionResults 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| bulkAggregateQuestionResultsRequest | BulkAggregateQuestionResultsRequest | Yes | |
| forceRecalculate | bool | No |
Response
Returns: BulkAggregateQuestionResults_200_response
Example

combineCommentsWithQuestionResults 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| questionId | string | No | |
| questionIds | vector<string | No | |
| urlId | string | No | |
| startDate | datetime | No | |
| forceRecalculate | bool | No | |
| minValue | double | No | |
| maxValue | double | No | |
| limit | double | No |
Response
Returns: CombineCommentsWithQuestionResults_200_response
Example

addSSOUser 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createAPISSOUserData | CreateAPISSOUserData | Yes |
Response
Returns: AddSSOUserAPIResponse
Example

deleteSSOUser 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| deleteComments | bool | No | |
| commentDeleteMode | string | No |
Response
Returns: DeleteSSOUserAPIResponse
Example

getSSOUserByEmail 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| string | Yes |
Response
Returns: GetSSOUserByEmailAPIResponse
Example

getSSOUserById 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: GetSSOUserByIdAPIResponse
Example

getSSOUsers 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| skip | int32_t | No |
Response
Returns: GetSSOUsers_200_response
Example

patchSSOUser 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| updateAPISSOUserData | UpdateAPISSOUserData | Yes | |
| updateComments | bool | No |
Response
Returns: PatchSSOUserAPIResponse
Example

putSSOUser 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| updateAPISSOUserData | UpdateAPISSOUserData | Yes | |
| updateComments | bool | No |
Response
Returns: PutSSOUserAPIResponse
Example

createSubscription 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createAPIUserSubscriptionData | CreateAPIUserSubscriptionData | Yes |
Response
Returns: CreateSubscriptionAPIResponse
Example

deleteSubscription 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| userId | string | No |
Response
Returns: DeleteSubscriptionAPIResponse
Example

getSubscriptions 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| userId | string | No |
Response
Returns: GetSubscriptionsAPIResponse
Example

getTenantDailyUsages 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| yearNumber | double | No | |
| monthNumber | double | No | |
| dayNumber | double | No | |
| skip | double | No |
Response
Returns: GetTenantDailyUsages_200_response
Example

createTenantPackage 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createTenantPackageBody | CreateTenantPackageBody | Yes |
Response
Returns: CreateTenantPackage_200_response
Example

deleteTenantPackage 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: FlagCommentPublic_200_response
Example

getTenantPackage 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: GetTenantPackage_200_response
Example

getTenantPackages 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| skip | double | No |
Response
Returns: GetTenantPackages_200_response
Example

replaceTenantPackage 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| replaceTenantPackageBody | ReplaceTenantPackageBody | Yes |
Response
Returns: FlagCommentPublic_200_response
Example

updateTenantPackage 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| updateTenantPackageBody | UpdateTenantPackageBody | Yes |
Response
Returns: FlagCommentPublic_200_response
Example

createTenantUser 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createTenantUserBody | CreateTenantUserBody | Yes |
Response
Returns: CreateTenantUser_200_response
Example

deleteTenantUser 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| deleteComments | string | No | |
| commentDeleteMode | string | No |
Response
Returns: FlagCommentPublic_200_response
Example

getTenantUser 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: GetTenantUser_200_response
Example

getTenantUsers 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| skip | double | No |
Response
Returns: GetTenantUsers_200_response
Example

replaceTenantUser 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| replaceTenantUserBody | ReplaceTenantUserBody | Yes | |
| updateComments | string | No |
Response
Returns: FlagCommentPublic_200_response
Example

sendLoginLink 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| redirectURL | string | No |
Response
Returns: FlagCommentPublic_200_response
Example

updateTenantUser 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| updateTenantUserBody | UpdateTenantUserBody | Yes | |
| updateComments | string | No |
Response
Returns: FlagCommentPublic_200_response
Example

createTenant 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createTenantBody | CreateTenantBody | Yes |
Response
Returns: CreateTenant_200_response
Example

deleteTenant 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| sure | string | No |
Response
Returns: FlagCommentPublic_200_response
Example

getTenant 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: GetTenant_200_response
Example

getTenants 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| meta | string | No | |
| skip | double | No |
Response
Returns: GetTenants_200_response
Example

updateTenant 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| updateTenantBody | UpdateTenantBody | Yes |
Response
Returns: FlagCommentPublic_200_response
Example

uploadImage 
Upload and resize an image
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| file | HttpContent | Yes | |
| sizePreset | SizePreset | No | |
| urlId | string | No |
Response
Returns: UploadImageResponse
Example

getUserBadgeProgressById 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: GetUserBadgeProgressById_200_response
Example

getUserBadgeProgressByUserId 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| userId | string | Yes |
Response
Returns: GetUserBadgeProgressById_200_response
Example

getUserBadgeProgressList 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| userId | string | No | |
| limit | double | No | |
| skip | double | No |
Response
Returns: GetUserBadgeProgressList_200_response
Example

createUserBadge 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createUserBadgeParams | CreateUserBadgeParams | Yes |
Response
Returns: CreateUserBadge_200_response
Example

deleteUserBadge 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: UpdateUserBadge_200_response
Example

getUserBadge 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: GetUserBadge_200_response
Example

getUserBadges 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| userId | string | No | |
| badgeId | string | No | |
| type | double | No | |
| displayedOnComments | bool | No | |
| limit | double | No | |
| skip | double | No |
Response
Returns: GetUserBadges_200_response
Example

updateUserBadge 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| updateUserBadgeParams | UpdateUserBadgeParams | Yes |
Response
Returns: UpdateUserBadge_200_response
Example

getUserNotificationCount 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| sso | string | No |
Response
Returns: GetUserNotificationCount_200_response
Example

getUserNotifications 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| pageSize | int32_t | No | |
| afterId | string | No | |
| includeContext | bool | No | |
| afterCreatedAt | int64_t | No | |
| unreadOnly | bool | No | |
| dmOnly | bool | No | |
| noDm | bool | No | |
| includeTranslations | bool | No | |
| sso | string | No |
Response
Returns: GetUserNotifications_200_response
Example

resetUserNotificationCount 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| sso | string | No |
Response
Returns: ResetUserNotifications_200_response
Example

resetUserNotifications 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| afterId | string | No | |
| afterCreatedAt | int64_t | No | |
| unreadOnly | bool | No | |
| dmOnly | bool | No | |
| noDm | bool | No | |
| sso | string | No |
Response
Returns: ResetUserNotifications_200_response
Example

updateUserNotificationCommentSubscriptionStatus 
Enable or disable notifications for a specific comment.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| notificationId | string | Yes | |
| optedInOrOut | string | Yes | |
| commentId | string | Yes | |
| sso | string | No |
Response
Returns: UpdateUserNotificationStatus_200_response
Example

updateUserNotificationPageSubscriptionStatus 
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 |
|---|---|---|---|
| tenantId | string | Yes | |
| urlId | string | Yes | |
| url | string | Yes | |
| pageTitle | string | Yes | |
| subscribedOrUnsubscribed | string | Yes | |
| sso | string | No |
Response
Returns: UpdateUserNotificationStatus_200_response
Example

updateUserNotificationStatus 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| notificationId | string | Yes | |
| newStatus | string | Yes | |
| sso | string | No |
Response
Returns: UpdateUserNotificationStatus_200_response
Example

getUserPresenceStatuses 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| urlIdWS | string | Yes | |
| userIds | string | Yes |
Response
Returns: GetUserPresenceStatuses_200_response
Example

searchUsers 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| urlId | string | Yes | |
| usernameStartsWith | string | No | |
| mentionGroupIds | vector<string | No | |
| sso | string | No |
Response
Returns: SearchUsers_200_response
Example

getUser 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: GetUser_200_response
Example

createVote 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| direction | string | Yes | |
| userId | string | No | |
| anonUserId | string | No |
Response
Returns: VoteComment_200_response
Example

deleteVote 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| editKey | string | No |
Response
Returns: DeleteCommentVote_200_response
Example

getVotes 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| urlId | string | Yes |
Response
Returns: GetVotes_200_response
Example

getVotesForUser 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| urlId | string | Yes | |
| userId | string | No | |
| anonUserId | string | No |
Response
Returns: GetVotesForUser_200_response
Example

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