
Language 🇺🇸 English
Getting Started
API Reference
Documentation
Usage
Aggregate
Audit Logs
Block From Comment
Check Blocked Comments
Comments
Domain Configs
Email Templates
Event Log
Feed Posts
Flag Comment
Hash Tags
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 JavaScript/TypeScript SDK
This is the official JavaScript/TypeScript SDK for FastComments.
Official JavaScript/TypeScript SDK for the FastComments API
Repository
API Documentation 
Full API reference: docs/api/README.md
Browser vs Server Compatibility 
This SDK uses dual entry points to ensure optimal compatibility and prevent runtime errors:
fastcomments-sdk/browser- Browser-safe version with nativefetchfastcomments-sdk/server- Full Node.js version with SSO supportfastcomments-sdk(default) - Types only, safe to import anywhere
Usage 
This SDK provides separate entry points for browser and server environments to ensure optimal compatibility and security:
Browser Usage (Client-Side)
For browser/frontend applications, use the browser-safe export that excludes Node.js dependencies:
// Browser-safe import (no Node.js dependencies)
import { createFastCommentsBrowserSDK } from 'fastcomments-sdk/browser';
// Create browser SDK instance
const sdk = createFastCommentsBrowserSDK({
basePath: 'https://fastcomments.com' // optional, defaults to https://fastcomments.com
});
// Use public APIs (no API key needed - safe for browsers)
const comments = await sdk.publicApi.getCommentsPublic({
tenantId: 'your-tenant-id',
urlId: 'page-url-id'
});
Server Usage (Node.js)
For server/backend applications, use the full SDK with SSO and authentication features:
// Server-side import (includes SSO and designed to work with NodeJS)
import { createFastCommentsSDK } from 'fastcomments-sdk/server';
// Create server SDK instance
const sdk = createFastCommentsSDK({
apiKey: 'your-api-key', // Keep this secret on the server!
basePath: 'https://fastcomments.com' // optional, defaults to https://fastcomments.com
});
// Use secured APIs with your API key
const comments = await sdk.defaultApi.getComments({
tenantId: 'your-tenant-id',
urlId: 'page-url-id'
});
Types Only Import
If you only need TypeScript types (no runtime code), use the default import:
// Types only (no runtime dependencies - safe everywhere)
import type {
PublicComment,
CreateCommentParams,
GetCommentsPublic200Response
} from 'fastcomments-sdk';
Using Individual API Classes
Browser Environment
import { PublicApi, Configuration } from 'fastcomments-sdk/browser';
const config = new Configuration({
basePath: 'https://fastcomments.com'
});
const publicApi = new PublicApi(config);
Server Environment
import { DefaultApi, PublicApi, Configuration } from 'fastcomments-sdk/server';
const config = new Configuration({
apiKey: 'your-api-key',
basePath: 'https://fastcomments.com'
});
const defaultApi = new DefaultApi(config);
const publicApi = new PublicApi(config);
Public vs Secured APIs 
The SDK provides three main API classes:
DefaultApi- Secured endpoints that require your API key for authentication. Use these for server-side operations.PublicApi- Public endpoints that can be accessed without an API key. These can be called directly from browsers/mobile devices/etc.HiddenApi- Internal/admin endpoints for advanced use cases.
Example: Using Public API (browser-safe)
import { PublicApi } from 'fastcomments-sdk/browser';
const publicApi = new PublicApi();
// Get comments for a page (no API key required)
const response = await publicApi.getCommentsPublic({
tenantId: 'your-tenant-id',
urlId: 'page-url-id'
});
Example: Using Default API (server-side only)
import { DefaultApi, Configuration } from 'fastcomments-sdk/server';
const config = new Configuration({
apiKey: 'your-api-key' // Keep this secret!
});
const defaultApi = new DefaultApi(config);
// Get comments with full admin access
const response = await defaultApi.getComments({
tenantId: 'your-tenant-id',
urlId: 'page-url-id'
});
SSO (Single Sign-On) Integration 
FastComments supports SSO to integrate with your existing user authentication system. SSO functionality is only available in the server export since it requires Node.js crypto features.
Simple SSO (Server-Side Only)
Simple SSO should be generated server-side and sent to the client:
// Server-side code (Node.js/backend)
import { FastCommentsSSO, PublicApi } from 'fastcomments-sdk/server';
// Create simple SSO using the built-in helper
const userData = {
username: 'john_doe',
email: 'john@example.com',
displayName: 'John Doe',
avatar: 'https://example.com/avatar.jpg'
};
const sso = FastCommentsSSO.createSimple(userData, {
loginURL: '/login',
logoutURL: '/logout'
});
const ssoToken = sso.createToken();
// Send ssoToken to your client-side code
// Client-side code can then use this token with the browser SDK
Secure SSO (Server-Side, Recommended)
Secure SSO should be implemented server-side and provides better security:
// Server-side code (Node.js/backend)
import { FastCommentsSSO, PublicApi } from 'fastcomments-sdk/server';
// Create secure SSO using the built-in helper
const userData = {
id: 'user-123',
email: 'john@example.com',
username: 'john_doe',
displayName: 'John Doe',
avatar: 'https://example.com/avatar.jpg',
isAdmin: false,
isModerator: false
};
const sso = FastCommentsSSO.createSecure('your-api-key', userData, {
loginURL: '/login',
logoutURL: '/logout'
});
const ssoConfig = sso.prepareToSend();
// Use with API calls on the server
const publicApi = new PublicApi();
const response = await publicApi.getCommentsPublic({
tenantId: 'your-tenant-id',
urlId: 'page-url-id',
sso: JSON.stringify(ssoConfig)
});
// Or send ssoConfig to client for browser usage
Using SSO from Browser (with Server-Generated Token)
// Client-side code (browser)
import { PublicApi } from 'fastcomments-sdk/browser';
// Get SSO token from your server endpoint
const ssoToken = await fetch('/api/sso-token').then(r => r.json());
const publicApi = new PublicApi();
const response = await publicApi.getCommentsPublic({
tenantId: 'your-tenant-id',
urlId: 'page-url-id',
sso: ssoToken // Use the server-generated SSO token
});
SSO with Comment Creation
// Server-side: Create SSO and comment
import { FastCommentsSSO, PublicApi } from 'fastcomments-sdk/server';
const sso = FastCommentsSSO.createSecure('your-api-key', userData);
const ssoConfig = sso.prepareToSend();
const response = await publicApi.createCommentPublic({
tenantId: 'your-tenant-id',
urlId: 'page-url-id',
broadcastId: 'unique-broadcast-id',
commentData: {
comment: 'This is my comment',
date: Date.now(),
commenterName: 'John Doe',
url: 'https://example.com/page',
urlId: 'page-url-id'
},
sso: JSON.stringify(ssoConfig)
});
Common Use Cases 
Getting Comments for a Page
const comments = await sdk.publicApi.getCommentsPublic({
tenantId: 'your-tenant-id',
urlId: 'article-123'
});
Creating a Comment
const newComment = await sdk.publicApi.createCommentPublic({
createCommentParams: {
tenantId: 'your-tenant-id',
urlId: 'article-123',
comment: 'Great article!',
commenterName: 'John Doe',
commenterEmail: 'john@example.com'
}
});
Voting on a Comment
const voteResponse = await sdk.publicApi.voteComment({
voteBodyParams: {
commentId: 'comment-id',
direction: 1 // 1 for upvote, -1 for downvote
}
});
User Management (Requires API Key)
// Search for users (requires DefaultApi)
const users = await sdk.defaultApi.searchUsers({
tenantId: 'your-tenant-id',
urlId: 'page-id',
usernameStartsWith: 'john'
});
Live Events (Real-time Updates) 
Subscribe to live events to get real-time updates for comments, votes, and other activities.
Page-Level Events
Listen for live events on a specific page (comments, votes, etc.):
import { subscribeToChanges, LiveEvent, LiveEventType } from 'fastcomments-sdk/browser';
const config = {
tenantId: 'your-tenant-id',
urlId: 'page-url-id',
};
// Subscribe to live events for a page
const subscription = subscribeToChanges(
config,
'your-tenant-id', // tenantIdWS
'page-url-id', // urlIdWS
'user-session-id', // userIdWS (get this from getComments response)
(event: LiveEvent) => {
console.log('Live event received:', event);
switch (event.type) {
case LiveEventType.new_comment:
console.log('New comment:', event.comment);
// Update your UI with the new comment
break;
case LiveEventType.new_vote:
console.log('New vote:', event.vote);
// Update vote counts in your UI
break;
case LiveEventType.updated_comment:
console.log('Comment updated:', event.comment);
break;
default:
console.log('Other event type:', event.type);
}
return true; // Return true if event was handled
},
(isConnected: boolean) => {
console.log('Connection status:', isConnected ? 'Connected' : 'Disconnected');
}
);
// Close the subscription when done
subscription.close();
Subscribe to User Events
Listen for user-specific events (notifications, mentions, etc.):
import { subscribeToUserFeed, LiveEvent, LiveEventType } from 'fastcomments-sdk/browser';
const userConfig = {
userIdWS: 'user-session-id', // Get this from getComments response
};
// Subscribe to user's personal feed
const userSubscription = subscribeToUserFeed(
userConfig,
(event: LiveEvent) => {
console.log('User event received:', event);
switch (event.type) {
case LiveEventType.notification:
console.log('New notification:', event.notification);
// Show notification in your UI
break;
case LiveEventType.notification_update:
console.log('Notification updated:', event.notification);
break;
default:
console.log('Other user event:', event.type);
}
return true;
},
(isConnected: boolean) => {
console.log('User feed connection:', isConnected ? 'Connected' : 'Disconnected');
}
);
// Close when done
userSubscription.close();
Getting userIdWS
The userIdWS parameter is required for live events and can be obtained from API responses:
const response = await sdk.publicApi.getCommentsPublic({
tenantId: 'your-tenant-id',
urlId: 'page-id'
});
// Extract userIdWS from the response
const userIdWS = response.data?.userSessionInfo?.userIdWS;
if (userIdWS) {
// Now you can subscribe to live events
const subscription = subscribeToChanges(config, tenantIdWS, urlIdWS, userIdWS, handleEvent);
}
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.
import { v4 as uuidv4 } from 'uuid';
const response = await sdk.publicApi.createCommentPublic({
createCommentParams: {
tenantId: 'your-tenant-id',
urlId: 'page-id',
comment: 'My comment',
broadcastId: uuidv4() // Unique ID for this operation
}
});
Error Handling 
try {
const comments = await sdk.publicApi.getCommentsPublic({
tenantId: 'your-tenant-id',
urlId: 'page-id'
});
} catch (error) {
if (error.response?.status === 404) {
console.log('Page not found');
} else {
console.error('API Error:', error.message);
}
}
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 |
|---|---|---|---|
| tenantId | string | Yes | |
| aggregationRequest | AggregationRequest | Yes | |
| parentTenantId | string | No | |
| includeStats | boolean | No |
Response
Returns: AggregationResponse
getAuditLogs 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| limit | number | No | |
| skip | number | No | |
| order | SORTDIR | No | |
| after | number | No | |
| before | number | No |
Response
Returns: GetAuditLogs200Response
blockFromCommentPublic 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| publicBlockFromCommentParams | PublicBlockFromCommentParams | Yes | |
| sso | string | No |
Response
Returns: BlockFromCommentPublic200Response
unBlockCommentPublic 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| publicBlockFromCommentParams | PublicBlockFromCommentParams | Yes | |
| sso | string | No |
Response
Returns: UnBlockCommentPublic200Response
checkedCommentsForBlocked 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentIds | string | Yes | |
| sso | string | No |
Response
Returns: CheckedCommentsForBlocked200Response
blockUserFromComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| blockFromCommentParams | BlockFromCommentParams | Yes | |
| userId | string | No | |
| anonUserId | string | No |
Response
Returns: BlockFromCommentPublic200Response
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: CreateCommentPublic200Response
deleteComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| contextUserId | string | No | |
| isLive | boolean | No |
Response
Returns: DeleteComment200Response
deleteCommentPublic 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| broadcastId | string | Yes | |
| editKey | string | No | |
| sso | string | No |
Response
Returns: DeleteCommentPublic200Response
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: DeleteCommentVote200Response
flagComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| userId | string | No | |
| anonUserId | string | No |
Response
Returns: FlagComment200Response
getComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: GetComment200Response
getComments 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| page | number | No | |
| limit | number | No | |
| skip | number | No | |
| asTree | boolean | No | |
| skipChildren | number | No | |
| limitChildren | number | No | |
| maxTreeDepth | number | No | |
| urlId | string | No | |
| userId | string | No | |
| anonUserId | string | No | |
| contextUserId | string | No | |
| hashTag | string | No | |
| parentId | string | No | |
| direction | SortDirections | No |
Response
Returns: GetComments200Response
getCommentsPublic 
req tenantId urlId
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| urlId | string | Yes | |
| page | number | No | |
| direction | SortDirections | No | |
| sso | string | No | |
| skip | number | No | |
| skipChildren | number | No | |
| limit | number | No | |
| limitChildren | number | No | |
| countChildren | boolean | No | |
| fetchPageForCommentId | string | No | |
| includeConfig | boolean | No | |
| countAll | boolean | No | |
| includei10n | boolean | No | |
| locale | string | No | |
| modules | string | No | |
| isCrawler | boolean | No | |
| includeNotificationCount | boolean | No | |
| asTree | boolean | No | |
| maxTreeDepth | number | No | |
| useFullTranslationIds | boolean | No | |
| parentId | string | No | |
| searchText | string | No | |
| hashTags | Array |
No | |
| userId | string | No | |
| customConfigStr | string | No | |
| afterCommentId | string | No | |
| beforeCommentId | string | No |
Response
Returns: GetCommentsPublic200Response
getCommentText 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| editKey | string | No | |
| sso | string | No |
Response
Returns: GetCommentText200Response
getCommentVoteUserNames 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| dir | number | Yes | |
| sso | string | No |
Response
Returns: GetCommentVoteUserNames200Response
lockComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| broadcastId | string | Yes | |
| sso | string | No |
Response
Returns: LockComment200Response
pinComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| broadcastId | string | Yes | |
| sso | string | No |
Response
Returns: PinComment200Response
saveComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createCommentParams | CreateCommentParams | Yes | |
| isLive | boolean | No | |
| doSpamCheck | boolean | No | |
| sendEmails | boolean | No | |
| populateNotifications | boolean | No |
Response
Returns: SaveComment200Response
saveCommentsBulk 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createCommentParams | Array |
Yes | |
| isLive | boolean | No | |
| doSpamCheck | boolean | No | |
| sendEmails | boolean | No | |
| populateNotifications | boolean | No |
Response
Returns: Array<SaveComment200Response
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: SetCommentText200Response
unBlockUserFromComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| unBlockFromCommentParams | UnBlockFromCommentParams | Yes | |
| userId | string | No | |
| anonUserId | string | No |
Response
Returns: UnBlockCommentPublic200Response
unFlagComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| userId | string | No | |
| anonUserId | string | No |
Response
Returns: FlagComment200Response
unLockComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| broadcastId | string | Yes | |
| sso | string | No |
Response
Returns: LockComment200Response
unPinComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| broadcastId | string | Yes | |
| sso | string | No |
Response
Returns: PinComment200Response
updateComment 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| body | PickAPICommentUpdatableCommentFields | Yes | |
| contextUserId | string | No | |
| doSpamCheck | boolean | No | |
| isLive | boolean | No |
Response
Returns: FlagCommentPublic200Response
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: VoteComment200Response
addDomainConfig 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| addDomainConfigParams | AddDomainConfigParams | Yes |
Response
Returns: AddDomainConfig200Response
deleteDomainConfig 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| domain | string | Yes |
Response
Returns: DeleteDomainConfig200Response
getDomainConfig 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| domain | string | Yes |
Response
Returns: GetDomainConfig200Response
getDomainConfigs 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes |
Response
Returns: GetDomainConfigs200Response
patchDomainConfig 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| domainToUpdate | string | Yes | |
| patchDomainConfigParams | PatchDomainConfigParams | Yes |
Response
Returns: GetDomainConfig200Response
putDomainConfig 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| domainToUpdate | string | Yes | |
| updateDomainConfigParams | UpdateDomainConfigParams | Yes |
Response
Returns: GetDomainConfig200Response
createEmailTemplate 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createEmailTemplateBody | CreateEmailTemplateBody | Yes |
Response
Returns: CreateEmailTemplate200Response
Example

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

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

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

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

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

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

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

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

getEventLog 
req tenantId urlId userIdWS
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| urlId | string | Yes | |
| userIdWS | string | Yes | |
| startTime | number | Yes | |
| endTime | number | Yes |
Response
Returns: GetEventLog200Response
getGlobalEventLog 
req tenantId urlId userIdWS
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| urlId | string | Yes | |
| userIdWS | string | Yes | |
| startTime | number | Yes | |
| endTime | number | Yes |
Response
Returns: GetEventLog200Response
createFeedPost 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createFeedPostParams | CreateFeedPostParams | Yes | |
| broadcastId | string | No | |
| isLive | boolean | No | |
| doSpamCheck | boolean | No | |
| skipDupCheck | boolean | No |
Response
Returns: CreateFeedPost200Response
createFeedPostPublic 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createFeedPostParams | CreateFeedPostParams | Yes | |
| broadcastId | string | No | |
| sso | string | No |
Response
Returns: CreateFeedPostPublic200Response
deleteFeedPostPublic 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| postId | string | Yes | |
| broadcastId | string | No | |
| sso | string | No |
Response
Returns: DeleteFeedPostPublic200Response
getFeedPosts 
req tenantId afterId
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| afterId | string | No | |
| limit | number | No | |
| tags | Array |
No |
Response
Returns: GetFeedPosts200Response
getFeedPostsPublic 
req tenantId afterId
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| afterId | string | No | |
| limit | number | No | |
| tags | Array |
No | |
| sso | string | No | |
| isCrawler | boolean | No | |
| includeUserInfo | boolean | No |
Response
Returns: GetFeedPostsPublic200Response
getFeedPostsStats 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| postIds | Array |
Yes | |
| sso | string | No |
Response
Returns: GetFeedPostsStats200Response
getUserReactsPublic 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| postIds | Array |
No | |
| sso | string | No |
Response
Returns: GetUserReactsPublic200Response
reactFeedPostPublic 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| postId | string | Yes | |
| reactBodyParams | ReactBodyParams | Yes | |
| isUndo | boolean | No | |
| broadcastId | string | No | |
| sso | string | No |
Response
Returns: ReactFeedPostPublic200Response
updateFeedPost 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| feedPost | FeedPost | Yes |
Response
Returns: FlagCommentPublic200Response
updateFeedPostPublic 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| postId | string | Yes | |
| updateFeedPostParams | UpdateFeedPostParams | Yes | |
| broadcastId | string | No | |
| sso | string | No |
Response
Returns: CreateFeedPostPublic200Response
flagCommentPublic 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| commentId | string | Yes | |
| isFlagged | boolean | Yes | |
| sso | string | No |
Response
Returns: FlagCommentPublic200Response
addHashTag 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | No | |
| createHashTagBody | CreateHashTagBody | No |
Response
Returns: AddHashTag200Response
Example

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

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

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

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

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

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

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

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

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

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

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

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

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

getNotifications 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| userId | string | No | |
| urlId | string | No | |
| fromCommentId | string | No | |
| viewed | boolean | No | |
| type | string | No | |
| skip | number | No |
Response
Returns: GetNotifications200Response
Example

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

addPage 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createAPIPageData | CreateAPIPageData | Yes |
Response
Returns: AddPageAPIResponse
deletePage 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: DeletePageAPIResponse
getPageByURLId 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| urlId | string | Yes |
Response
Returns: GetPageByURLIdAPIResponse
patchPage 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| updateAPIPageData | UpdateAPIPageData | Yes |
Response
Returns: PatchPageAPIResponse
deletePendingWebhookEvent 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: FlagCommentPublic200Response
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 | number | No |
Response
Returns: GetPendingWebhookEventCount200Response
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 | number | No | |
| skip | number | No |
Response
Returns: GetPendingWebhookEvents200Response
Example

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

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

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

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

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

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

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

getQuestionResult 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: GetQuestionResult200Response
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 | number | No |
Response
Returns: GetQuestionResults200Response
Example

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

aggregateQuestionResults 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| questionId | string | No | |
| questionIds | Array |
No | |
| urlId | string | No | |
| timeBucket | AggregateTimeBucket | No | |
| startDate | Date | No | |
| forceRecalculate | boolean | No |
Response
Returns: AggregateQuestionResults200Response
bulkAggregateQuestionResults 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| bulkAggregateQuestionResultsRequest | BulkAggregateQuestionResultsRequest | Yes | |
| forceRecalculate | boolean | No |
Response
combineCommentsWithQuestionResults 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| questionId | string | No | |
| questionIds | Array |
No | |
| urlId | string | No | |
| startDate | Date | No | |
| forceRecalculate | boolean | No | |
| minValue | number | No | |
| maxValue | number | No | |
| limit | number | No |
Response
addSSOUser 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createAPISSOUserData | CreateAPISSOUserData | Yes |
Response
Returns: AddSSOUserAPIResponse
deleteSSOUser 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| deleteComments | boolean | No | |
| commentDeleteMode | string | No |
Response
Returns: DeleteSSOUserAPIResponse
getSSOUserByEmail 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| string | Yes |
Response
Returns: GetSSOUserByEmailAPIResponse
getSSOUserById 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: GetSSOUserByIdAPIResponse
getSSOUsers 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| skip | number | No |
Response
Returns: GetSSOUsers200Response
patchSSOUser 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| updateAPISSOUserData | UpdateAPISSOUserData | Yes | |
| updateComments | boolean | No |
Response
Returns: PatchSSOUserAPIResponse
putSSOUser 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| updateAPISSOUserData | UpdateAPISSOUserData | Yes | |
| updateComments | boolean | No |
Response
Returns: PutSSOUserAPIResponse
createSubscription 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createAPIUserSubscriptionData | CreateAPIUserSubscriptionData | Yes |
Response
Returns: CreateSubscriptionAPIResponse
deleteSubscription 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| userId | string | No |
Response
Returns: DeleteSubscriptionAPIResponse
getSubscriptions 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| userId | string | No |
Response
Returns: GetSubscriptionsAPIResponse
getTenantDailyUsages 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| yearNumber | number | No | |
| monthNumber | number | No | |
| dayNumber | number | No | |
| skip | number | No |
Response
Returns: GetTenantDailyUsages200Response
Example

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

uploadImage 
Upload and resize an image
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| file | Blob | Yes | |
| sizePreset | SizePreset | No | |
| urlId | string | No |
Response
Returns: UploadImageResponse
getUserBadgeProgressById 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: GetUserBadgeProgressById200Response
getUserBadgeProgressByUserId 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| userId | string | Yes |
Response
Returns: GetUserBadgeProgressById200Response
getUserBadgeProgressList 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| userId | string | No | |
| limit | number | No | |
| skip | number | No |
Response
Returns: GetUserBadgeProgressList200Response
createUserBadge 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| createUserBadgeParams | CreateUserBadgeParams | Yes |
Response
Returns: CreateUserBadge200Response
deleteUserBadge 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: UpdateUserBadge200Response
getUserBadge 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: GetUserBadge200Response
getUserBadges 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| userId | string | No | |
| badgeId | string | No | |
| type | number | No | |
| displayedOnComments | boolean | No | |
| limit | number | No | |
| skip | number | No |
Response
Returns: GetUserBadges200Response
updateUserBadge 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes | |
| updateUserBadgeParams | UpdateUserBadgeParams | Yes |
Response
Returns: UpdateUserBadge200Response
getUserNotificationCount 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| sso | string | No |
Response
Returns: GetUserNotificationCount200Response
getUserNotifications 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| pageSize | number | No | |
| afterId | string | No | |
| includeContext | boolean | No | |
| afterCreatedAt | number | No | |
| unreadOnly | boolean | No | |
| dmOnly | boolean | No | |
| noDm | boolean | No | |
| includeTranslations | boolean | No | |
| sso | string | No |
Response
Returns: GetUserNotifications200Response
resetUserNotificationCount 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| sso | string | No |
Response
Returns: ResetUserNotifications200Response
resetUserNotifications 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| afterId | string | No | |
| afterCreatedAt | number | No | |
| unreadOnly | boolean | No | |
| dmOnly | boolean | No | |
| noDm | boolean | No | |
| sso | string | No |
Response
Returns: ResetUserNotifications200Response
updateUserNotificationCommentSubscriptionStatus 
Enable or disable notifications for a specific comment.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| notificationId | string | Yes | |
| optedInOrOut | UpdateUserNotificationCommentSubscriptionStatusOptedInOrOutEnum | Yes | |
| commentId | string | Yes | |
| sso | string | No |
Response
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 | UpdateUserNotificationPageSubscriptionStatusSubscribedOrUnsubscribedEnum | Yes | |
| sso | string | No |
Response
updateUserNotificationStatus 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| notificationId | string | Yes | |
| newStatus | UpdateUserNotificationStatusNewStatusEnum | Yes | |
| sso | string | No |
Response
getUserPresenceStatuses 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| urlIdWS | string | Yes | |
| userIds | string | Yes |
Response
Returns: GetUserPresenceStatuses200Response
searchUsers 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| urlId | string | Yes | |
| usernameStartsWith | string | Yes | |
| mentionGroupIds | Array |
No | |
| sso | string | No |
Response
Returns: SearchUsers200Response
getUser 
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenantId | string | Yes | |
| id | string | Yes |
Response
Returns: GetUser200Response
Example

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

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

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

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

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