
Язык 🇷🇺 Русский
Начало работы
Документация
Агрегирование
Журналы аудита
Аутентификация
Блокировка по комментарию
Проверка заблокированных комментариев
Комментарии
Комментарии пользователя
Конфигурации домена
Шаблоны электронной почты
Журнал событий
Посты ленты
Пометка комментария
Гифки
Хэштеги
Модерация
Модераторы
Количество уведомлений
Уведомления
Реакции на странице
Страницы
Ожидающие вебхук-события
Конфигурации вопросов
Результаты вопросов
Агрегация результатов вопросов
SSO-пользователи
Подписки
Ежедневное использование тенанта
Пакеты тенанта
Пользователи тенанта
Тенанты
Тикеты
Переводы
Загрузка изображения
Прогресс значков пользователя
Значки пользователя
Уведомления пользователя
Статусы присутствия пользователя
Поиск пользователей
Пользователи
Голоса
FastComments Java SDK
Это официальный Java SDK для FastComments.
Официальный Java SDK для API FastComments
Репозиторий
Установка 
Maven
Добавьте репозиторий Repsy в POM вашего проекта:
<repositories>
<repository>
<id>repsy</id>
<name>FastComments Maven Repository on Repsy</name>
<url>https://repo.repsy.io/mvn/winrid/fastcomments</url>
</repository>
</repositories>
Затем добавьте необходимые зависимости:
<dependencies>
<!-- API Client -->
<dependency>
<groupId>com.fastcomments</groupId>
<artifactId>client</artifactId>
<version>2.0.0</version>
</dependency>
<!-- Core Library (includes SSO) -->
<dependency>
<groupId>com.fastcomments</groupId>
<artifactId>core</artifactId>
<version>2.0.0</version>
</dependency>
<!-- PubSub Library (for live events) -->
<dependency>
<groupId>com.fastcomments</groupId>
<artifactId>pubsub</artifactId>
<version>2.0.0</version>
</dependency>
</dependencies>
Gradle
Добавьте репозиторий Repsy в файл build.gradle:
repositories {
mavenCentral()
maven {
url "https://repo.repsy.io/mvn/winrid/fastcomments"
}
}
dependencies {
// API Client
implementation "com.fastcomments:client:2.0.0"
// Core Library (includes SSO)
implementation "com.fastcomments:core:2.0.0"
// PubSub Library (for live events)
implementation "com.fastcomments:pubsub:2.0.0"
}
Содержимое библиотеки
Эта библиотека содержит три модуля. Сгенерированный клиент API, основная Java-библиотека, которая содержит вручную написанные утилиты для упрощения работы с API, и модуль pubsub, который является библиотекой для подписки на потоки изменений.
- Документация библиотеки клиента API
- Документация основной библиотеки, включая примеры SSO
- Документация библиотеки PubSub
Публичные и защищённые API
Для клиента API есть три класса: DefaultApi, PublicApi и ModerationApi. DefaultApi содержит методы, которые требуют ваш API-ключ, а PublicApi содержит методы, которые можно вызывать прямо из браузера/мобильного устройства и т.д. без аутентификации.
ModerationApi обеспечивает работу панели модератора. Он содержит методы для модерации комментариев (список, подсчёт, поиск, логи и экспорт), действия модерации (удаление/восстановление, пометка, установка статуса на проверку/спам/одобрение, голоса и повторное открытие/закрытие темы), баны (забанить от комментирования, отменить бан, предварительные сводки перед баном, статус и настройки бана, и подсчёты заблокированных пользователей), и значки и доверие (назначить/удалить значок, ручные значки, получить/установить коэффициент доверия и внутренний профиль пользователя). Каждый метод ModerationApi принимает параметр sso, чтобы вызов мог выполняться от имени модератора, аутентифицированного через SSO.
Быстрый старт 
Using Authenticated APIs (DefaultApi)
Важно: Вы должны установить ваш API-ключ в ApiClient перед выполнением аутентифицированных запросов. Если вы этого не сделаете, запросы завершатся с ошибкой 401.
import com.fastcomments.invoker.ApiClient;
import com.fastcomments.invoker.ApiException;
import com.fastcomments.api.DefaultApi;
import com.fastcomments.model.*;
public class Example {
public static void main(String[] args) {
// Создаём и настраиваем API-клиент
ApiClient apiClient = new ApiClient();
// REQUIRED: Set your API key (get this from your FastComments dashboard)
apiClient.setApiKey("YOUR_API_KEY_HERE");
// Create the API instance with the configured client
DefaultApi api = new DefaultApi(apiClient);
// Now you can make authenticated API calls
try {
// Example: Add an SSO user
CreateAPISSOUserData userData = new CreateAPISSOUserData();
userData.setId("user-123");
userData.setEmail("user@example.com");
userData.setDisplayName("John Doe");
AddSSOUserAPIResponse response = api.addSSOUser("YOUR_TENANT_ID", userData)
.execute();
System.out.println("User created: " + response);
} catch (ApiException e) {
System.err.println("Error: " + e.getResponseBody());
// Распространённые ошибки:
// - 401: API-ключ отсутствует или недействителен
// - 400: Ошибка валидации запроса
}
}
}
Using Public APIs (PublicApi)
Публичные эндпойнты не требуют аутентификации:
import com.fastcomments.api.PublicApi;
import com.fastcomments.invoker.ApiException;
PublicApi publicApi = new PublicApi();
try {
var response = publicApi.getCommentsPublic("YOUR_TENANT_ID", "page-url-id")
.execute();
System.out.println(response);
} catch (ApiException e) {
e.printStackTrace();
}
Using Moderation APIs (ModerationApi)
The ModerationApi drives the moderator dashboard. Each method accepts an sso parameter identifying the SSO-authenticated moderator on whose behalf the request is made:
import com.fastcomments.api.ModerationApi;
import com.fastcomments.invoker.ApiException;
import com.fastcomments.model.*;
ModerationApi moderationApi = new ModerationApi();
try {
// Список комментариев, ожидающих модерации
ModerationAPIGetCommentsResponse response = moderationApi.getApiComments()
.sso("YOUR_SSO_TOKEN")
.execute();
System.out.println(response);
} catch (ApiException e) {
e.printStackTrace();
}
Common Issues
- 401 "missing-api-key" error: Убедитесь, что вы вызываете
apiClient.setApiKey("YOUR_KEY")перед созданием экземпляра DefaultApi. - Wrong API class: Используйте
DefaultApiдля серверных аутентифицированных запросов,PublicApiдля клиентских/публичных запросов. - Null API key: SDK молча пропустит аутентификацию, если API-ключ равен null, что приведёт к ошибкам 401.
Заметки 
Идентификаторы Broadcast
Вы увидите, что в некоторых вызовах API нужно передавать broadcastId. Когда вы получаете события, вам вернётся этот ID, чтобы вы могли игнорировать событие, если планируете оптимистично применять изменения на клиенте
(что, вероятно, вы захотите сделать, поскольку это обеспечивает лучший пользовательский опыт). Передавайте здесь UUID. ID должен быть достаточно уникальным, чтобы не повторяться в рамках одной сессии браузера.
Агрегировать 
Агрегирует документы, группируя их (если указан groupBy) и применяя несколько операций. Поддерживаются разные операции (например, sum, countDistinct, avg и т.д.).
Parameters
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| parentTenantId | string | query | Нет | |
| includeStats | boolean | query | Нет |
Response
Возвращает: AggregateResponse
Пример

Получить журналы аудита 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| limit | number | query | Нет | |
| skip | number | query | Нет | |
| order | string | query | Нет | |
| after | number | query | Нет | |
| before | number | query | Нет |
Ответ
Возвращает: GetAuditLogsResponse
Пример

Выйти (публично) 
Ответ
Возвращает: APIEmptyResponse
Пример

Заблокировать по комментарию (публично) 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| commentId | string | path | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: BlockSuccess
Пример

Разблокировать комментарий (публично) 
Параметры
| Имя | Тип | Местоположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| commentId | string | path | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: UnblockSuccess
Пример

Проверить комментарии на блокировку 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentIds | string | query | Yes | Список идентификаторов комментариев, разделённых запятыми. |
| sso | string | query | No |
Ответ
Возвращает: CheckBlockedCommentsResponse
Пример

Заблокировать пользователя по комментарию 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| id | string | path | Yes | |
| userId | string | query | No | |
| anonUserId | string | query | No |
Ответ
Возвращает: BlockSuccess
Пример

Создать комментарий (публично) 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| urlId | string | query | Да | |
| broadcastId | string | query | Да | |
| sessionId | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: SaveCommentsResponseWithPresence
Пример

Удалить комментарий 
Параметры
| Имя | Тип | Местоположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| contextUserId | string | query | Нет | |
| isLive | boolean | query | Нет |
Response
Возвращает: DeleteCommentResult
Пример

Удалить комментарий (публично) 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| commentId | string | path | Да | |
| broadcastId | string | query | Да | |
| editKey | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: PublicAPIDeleteCommentResponse
Пример

Удалить голос за комментарий 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| commentId | string | path | Yes | |
| voteId | string | path | Yes | |
| urlId | string | query | Yes | |
| broadcastId | string | query | Yes | |
| editKey | string | query | No | |
| sso | string | query | No |
Ответ
Возвращает: VoteDeleteResponse
Пример

Пожаловаться на комментарий 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| userId | string | query | Нет | |
| anonUserId | string | query | Нет |
Ответ
Возвращает: FlagCommentResponse
Пример

Получить комментарий 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: APIGetCommentResponse
Пример

Получить комментарии 
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| page | integer | query | Нет | |
| limit | integer | query | Нет | |
| skip | integer | query | Нет | |
| asTree | boolean | query | Нет | |
| skipChildren | integer | query | Нет | |
| limitChildren | integer | query | Нет | |
| maxTreeDepth | integer | query | Нет | |
| urlId | string | query | Нет | |
| userId | string | query | Нет | |
| anonUserId | string | query | Нет | |
| contextUserId | string | query | Нет | |
| hashTag | string | query | Нет | |
| parentId | string | query | Нет | |
| direction | string | query | Нет | |
| fromDate | integer | query | Нет | |
| toDate | integer | query | Нет |
Ответ
Возвращает: APIGetCommentsResponse
Пример

Получить комментарии (публично) 
req tenantId urlId
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| urlId | string | query | Yes | |
| page | integer | query | No | |
| direction | string | query | No | |
| sso | string | query | No | |
| skip | integer | query | No | |
| skipChildren | integer | query | No | |
| limit | integer | query | No | |
| limitChildren | integer | query | No | |
| countChildren | boolean | query | No | |
| fetchPageForCommentId | string | query | No | |
| includeConfig | boolean | query | No | |
| countAll | boolean | query | No | |
| includei10n | boolean | query | No | |
| locale | string | query | No | |
| modules | string | query | No | |
| isCrawler | boolean | query | No | |
| includeNotificationCount | boolean | query | No | |
| asTree | boolean | query | No | |
| maxTreeDepth | integer | query | No | |
| useFullTranslationIds | boolean | query | No | |
| parentId | string | query | No | |
| searchText | string | query | No | |
| hashTags | array | query | No | |
| userId | string | query | No | |
| customConfigStr | string | query | No | |
| afterCommentId | string | query | No | |
| beforeCommentId | string | query | No |
Ответ
Возвращает: GetCommentsResponseWithPresencePublicComment
Пример

Получить текст комментария 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| commentId | string | path | Yes | |
| editKey | string | query | No | |
| sso | string | query | No |
Ответ
Возвращает: PublicAPIGetCommentTextResponse
Пример

Получить имена пользователей, голосовавших за комментарий 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| commentId | string | path | Yes | |
| dir | integer | query | Yes | |
| sso | string | query | No |
Ответ
Возвращает: GetCommentVoteUserNamesSuccessResponse
Пример

Заблокировать комментарий 
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| tenantId | string | путь | Да | |
| commentId | string | путь | Да | |
| broadcastId | string | параметр запроса | Да | |
| sso | string | параметр запроса | Нет |
Ответ
Возвращает: APIEmptyResponse
Пример

Закрепить комментарий 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| commentId | string | path | Да | |
| broadcastId | string | query | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: ChangeCommentPinStatusResponse
Пример

Сохранить комментарий 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| isLive | boolean | query | No | |
| doSpamCheck | boolean | query | No | |
| sendEmails | boolean | query | No | |
| populateNotifications | boolean | query | No |
Ответ
Возвращает: APISaveCommentResponse
Пример

Сохранить комментарии массово 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| isLive | boolean | query | Нет | |
| doSpamCheck | boolean | query | Нет | |
| sendEmails | boolean | query | Нет | |
| populateNotifications | boolean | query | Нет |
Ответ
Возвращает: SaveCommentsBulkResponse
Пример

Установить текст комментария 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| commentId | string | path | Yes | |
| broadcastId | string | query | Yes | |
| editKey | string | query | No | |
| sso | string | query | No |
Ответ
Возвращает: PublicAPISetCommentTextResponse
Пример

Разблокировать пользователя по комментарию 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| userId | string | query | Нет | |
| anonUserId | string | query | Нет |
Ответ
Возвращает: UnblockSuccess
Пример

Убрать пометку с комментария 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| id | string | path | Yes | |
| userId | string | query | No | |
| anonUserId | string | query | No |
Ответ
Возвращает: FlagCommentResponse
Пример

Разблокировать комментарий 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| commentId | string | path | Да | |
| broadcastId | string | query | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: APIEmptyResponse
Пример

Открепить комментарий 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| commentId | string | path | Yes | |
| broadcastId | string | query | Yes | |
| sso | string | query | No |
Ответ
Возвращает: ChangeCommentPinStatusResponse
Пример

Обновить комментарий 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| contextUserId | string | query | Нет | |
| doSpamCheck | boolean | query | Нет | |
| isLive | boolean | query | Нет |
Ответ
Возвращает: APIEmptyResponse
Пример

Проголосовать за комментарий 
Параметры
| Имя | Тип | Местоположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| commentId | string | path | Да | |
| urlId | string | query | Да | |
| broadcastId | string | query | Да | |
| sessionId | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: VoteResponse
Пример

Получить комментарии пользователя 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| userId | string | query | No | |
| direction | string | query | No | |
| repliesToUserId | string | query | No | |
| page | number | query | No | |
| includei10n | boolean | query | No | |
| locale | string | query | No | |
| isCrawler | boolean | query | No |
Ответ
Возвращает: GetCommentsForUserResponse
Пример

Добавить конфигурацию домена 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да |
Ответ
Возвращает: AddDomainConfigResponse
Пример

Удалить конфигурацию домена 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| domain | string | path | Да |
Ответ
Возвращает: DeleteDomainConfigResponse
Пример

Получить конфигурацию домена 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| domain | string | path | Да |
Ответ
Возвращает: GetDomainConfigResponse
Пример

Получить конфигурации доменов 
Параметры
| Имя | Тип | Местоположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да |
Ответ
Возвращает: GetDomainConfigsResponse
Пример

Применить патч к конфигурации домена 
Параметры
| Имя | Тип | Местоположение | Обязательный | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| domainToUpdate | string | path | Да |
Ответ
Возвращает: PatchDomainConfigResponse
Пример

Заменить/установить конфигурацию домена 
Параметры
| Имя | Тип | Местоположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| domainToUpdate | string | path | Да |
Ответ
Возвращает: PutDomainConfigResponse
Пример

Создать шаблон письма 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да |
Ответ
Возвращает: CreateEmailTemplateResponse
Пример

Удалить шаблон письма 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| id | string | path | Yes |
Ответ
Возвращает: APIEmptyResponse
Пример

Удалить ошибку рендеринга шаблона письма 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| errorId | string | path | Да |
Ответ
Возвращает: APIEmptyResponse
Пример

Получить шаблон письма 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: GetEmailTemplateResponse
Пример

Получить определения шаблонов письма 
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да |
Ответ
Возвращает: GetEmailTemplateDefinitionsResponse
Пример

Получить ошибки рендеринга шаблонов 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| skip | number | query | Нет |
Ответ
Возвращает: GetEmailTemplateRenderErrorsResponse
Пример

Получить шаблоны писем 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| skip | number | query | Нет |
Ответ
Возвращает: GetEmailTemplatesResponse
Пример

Отрендерить шаблон письма 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| locale | string | query | Нет |
Ответ
Возвращает: RenderEmailTemplateResponse
Пример

Обновить шаблон письма 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: APIEmptyResponse
Пример

Получить журнал событий 
req tenantId urlId userIdWS
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| urlId | string | query | Да | |
| userIdWS | string | query | Да | |
| startTime | integer | query | Да | |
| endTime | integer | query | Нет |
Ответ
Возвращает: GetEventLogResponse
Пример

Получить глобальный журнал событий 
req tenantId urlId userIdWS
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| urlId | string | query | Да | |
| userIdWS | string | query | Да | |
| startTime | integer | query | Да | |
| endTime | integer | query | Нет |
Ответ
Возвращает: GetEventLogResponse
Пример

Создать пост ленты 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| broadcastId | string | query | Нет | |
| isLive | boolean | query | Нет | |
| doSpamCheck | boolean | query | Нет | |
| skipDupCheck | boolean | query | Нет |
Ответ
Возвращает: CreateFeedPostsResponse
Пример

Создать пост ленты (публично) 
Параметры
| Имя | Тип | Location | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| broadcastId | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: CreateFeedPostResponse
Пример

Удалить пост ленты (публично) 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| postId | string | path | Да | |
| broadcastId | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: DeleteFeedPostPublicResponse
Пример

Получить посты ленты 
req tenantId afterId
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| afterId | string | query | Нет | |
| limit | integer | query | Нет | |
| tags | array | query | Нет |
Ответ
Возвращает: GetFeedPostsResponse
Пример

Получить посты ленты (публично) 
req tenantId afterId
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| afterId | string | query | Нет | |
| limit | integer | query | Нет | |
| tags | array | query | Нет | |
| sso | string | query | Нет | |
| isCrawler | boolean | query | Нет | |
| includeUserInfo | boolean | query | Нет |
Ответ
Возвращает: PublicFeedPostsResponse
Пример

Получить статистику постов ленты 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| postIds | array | query | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: FeedPostsStatsResponse
Пример

Получить реакции пользователя (публично) 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| postIds | array | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: UserReactsResponse
Пример

Поставить реакцию посту (публично) 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| postId | string | path | Да | |
| isUndo | boolean | query | Нет | |
| broadcastId | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: ReactFeedPostResponse
Пример

Обновить пост ленты 
Параметры
| Название | Тип | Местоположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: APIEmptyResponse
Пример

Обновить пост ленты (публично) 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| postId | string | path | Да | |
| broadcastId | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: CreateFeedPostResponse
Пример

Пожаловаться на комментарий (публично) 
Параметры
| Имя | Тип | Location | Обязательный | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| commentId | string | path | Да | |
| isFlagged | boolean | query | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: APIEmptyResponse
Пример

Получить большое GIF 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| largeInternalURLSanitized | string | query | Да |
Ответ
Возвращает: GifGetLargeResponse
Пример

Поиск гифок 
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| search | string | query | Да | |
| locale | string | query | Нет | |
| rating | string | query | Нет | |
| page | number | query | Нет |
Ответ
Возвращает: GetGifsSearchResponse
Пример

Получить трендовые гифки 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| locale | string | query | Нет | |
| rating | string | query | Нет | |
| page | number | query | Нет |
Ответ
Возвращает: GetGifsTrendingResponse
Пример

Добавить хэштег 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Нет |
Ответ
Возвращает: CreateHashTagResponse
Пример

Добавить хэштеги массово 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | No |
Ответ
Возвращает: BulkCreateHashTagsResponse
Пример

Удалить хэштег 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tag | string | path | Да | |
| tenantId | string | query | Нет |
Ответ
Возвращает: APIEmptyResponse
Пример

Получить хэштеги 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| page | number | query | Нет |
Ответ
Возвращает: GetHashTagsResponse
Пример

Применить патч к хэштегу 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tag | string | path | Да | |
| tenantId | string | query | Нет |
Ответ
Возвращает: UpdateHashTagResponse
Пример

Удалить голос модерации 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| commentId | string | path | Да | |
| voteId | string | path | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: VoteDeleteResponse
Пример

Получить комментарии через API 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| page | number | query | Нет | |
| count | number | query | Нет | |
| text-search | string | query | Нет | |
| byIPFromComment | string | query | Нет | |
| filters | string | query | Нет | |
| searchFilters | string | query | Нет | |
| sorts | string | query | Нет | |
| demo | boolean | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: ModerationAPIGetCommentsResponse
Пример

Получить статус экспорта API 
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| batchJobId | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: ModerationExportStatusResponse
Пример

Получить API идентификаторы 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| text-search | string | query | No | |
| byIPFromComment | string | query | No | |
| filters | string | query | No | |
| searchFilters | string | query | No | |
| afterId | string | query | No | |
| demo | boolean | query | No | |
| sso | string | query | No |
Ответ
Возвращает: ModerationAPIGetCommentIdsResponse
Пример

Получить забаненных пользователей по комментарию 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| commentId | string | path | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: GetBannedUsersFromCommentResponse
Пример

Получить статус бана комментария 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| commentId | string | path | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: GetCommentBanStatusResponse
Пример

Получить дочерние комментарии 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| commentId | string | path | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: ModerationAPIChildCommentsResponse
Пример

Получить количество 
Параметры
| Имя | Тип | Местоположение | Обязательно | Описание |
|---|---|---|---|---|
| text-search | string | query | Нет | |
| byIPFromComment | string | query | Нет | |
| filter | string | query | Нет | |
| searchFilters | string | query | Нет | |
| demo | boolean | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: ModerationAPICountCommentsResponse
Пример

Получить подсчёты 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| sso | string | query | Нет |
Ответ
Возвращает: GetBannedUsersCountResponse
Пример

Получить логи 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| commentId | string | path | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: ModerationAPIGetLogsResponse
Пример

Получить ручные бейджи 
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| sso | string | query | No |
Ответ
Возвращает: GetTenantManualBadgesResponse
Пример

Получить ручные бейджи пользователя 
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| badgesUserId | string | query | Нет | |
| commentId | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: GetUserManualBadgesResponse
Пример

Получить модерационный комментарий 
Параметры
| Имя | Тип | Местоположение | Обязательно | Описание |
|---|---|---|---|---|
| commentId | string | path | Да | |
| includeEmail | boolean | query | Нет | |
| includeIP | boolean | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: ModerationAPICommentResponse
Пример

Получить текст модерационного комментария 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| commentId | string | path | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: GetCommentTextResponse
Пример

Получить сводку перед баном 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| commentId | string | path | Да | |
| includeByUserIdAndEmail | boolean | query | Нет | |
| includeByIP | boolean | query | Нет | |
| includeByEmailDomain | boolean | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: PreBanSummary
Пример

Получить сводку поиска комментариев 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| value | string | query | Нет | |
| filters | string | query | Нет | |
| searchFilters | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: ModerationCommentSearchResponse
Пример

Получить результаты поиска страниц 
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| value | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: ModerationPageSearchResponse
Пример

Получить результаты поиска сайтов 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| value | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: ModerationSiteSearchResponse
Пример

Получить подсказки поиска 
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| text-search | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: ModerationSuggestResponse
Пример

Получить результаты поиска пользователей 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| value | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: ModerationUserSearchResponse
Пример

Получить фактор доверия 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| userId | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: GetUserTrustFactorResponse
Пример

Получить предпочтения бана пользователя 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| sso | string | query | Нет |
Ответ
Возвращает: APIModerateGetUserBanPreferencesResponse
Пример

Получить внутренний профиль пользователя 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| commentId | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: GetUserInternalProfileResponse
Пример

Скорректировать голоса комментария 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| commentId | string | path | Yes | |
| sso | string | query | No |
Ответ
Возвращает: AdjustVotesResponse
Пример

Запрос экспорта API 
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| text-search | string | query | Нет | |
| byIPFromComment | string | query | Нет | |
| filters | string | query | Нет | |
| searchFilters | string | query | Нет | |
| sorts | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: ModerationExportResponse
Пример

Забанить пользователя по комментарию 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| commentId | string | path | Да | |
| banEmail | boolean | query | Нет | |
| banEmailDomain | boolean | query | Нет | |
| banIP | boolean | query | Нет | |
| deleteAllUsersComments | boolean | query | Нет | |
| bannedUntil | string | query | Нет | |
| isShadowBan | boolean | query | Нет | |
| updateId | string | query | Нет | |
| banReason | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: BanUserFromCommentResult
Пример

Отменить бан пользователя 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| sso | string | query | Нет |
Ответ
Возвращает: APIEmptyResponse
Пример

Массовая предварительная сводка по банам 
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| includeByUserIdAndEmail | boolean | query | Нет | |
| includeByIP | boolean | query | Нет | |
| includeByEmailDomain | boolean | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: BulkPreBanSummary
Пример

Получить комментарии по идентификаторам 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| sso | string | query | Нет |
Ответ
Возвращает: ModerationAPIChildCommentsResponse
Пример

Поставить флаг комментарию 
Параметры
| Имя | Тип | Местоположение | Обязательно | Описание |
|---|---|---|---|---|
| commentId | string | path | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: APIEmptyResponse
Пример

Удалить комментарий (модерация) 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| commentId | string | path | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: PostRemoveCommentResponse
Пример

Восстановить удалённый комментарий 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| commentId | string | path | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: APIEmptyResponse
Пример

Установить статус утверждения комментария 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| commentId | string | path | Да | |
| approved | boolean | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: SetCommentApprovedResponse
Пример

Установить статус просмотра комментария 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| commentId | string | path | Yes | |
| reviewed | boolean | query | No | |
| sso | string | query | No |
Ответ
Возвращает: APIEmptyResponse
Пример

Установить статус спама для комментария 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| commentId | string | path | Да | |
| spam | boolean | query | Нет | |
| permNotSpam | boolean | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: APIEmptyResponse
Пример

Установить текст комментария (модерация) 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| commentId | string | path | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: SetCommentTextResponse
Пример

Снять флаг с комментария 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| commentId | string | path | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: APIEmptyResponse
Пример

Проголосовать (модерация) 
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| commentId | string | path | Да | |
| direction | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: VoteResponse
Пример

Выдать бейдж 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| badgeId | string | query | Да | |
| userId | string | query | Нет | |
| commentId | string | query | Нет | |
| broadcastId | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: AwardUserBadgeResponse
Пример

Закрыть ветку 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| urlId | string | query | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: APIEmptyResponse
Пример

Убрать бейдж 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| badgeId | string | query | Да | |
| userId | string | query | Нет | |
| commentId | string | query | Нет | |
| broadcastId | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: RemoveUserBadgeResponse
Пример

Переоткрыть ветку 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| urlId | string | query | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: APIEmptyResponse
Пример

Установить фактор доверия 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| userId | string | query | Нет | |
| trustFactor | string | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: SetUserTrustFactorResponse
Пример

Создать модератора 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да |
Ответ
Возвращает: CreateModeratorResponse
Пример

Удалить модератора 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| sendEmail | string | query | Нет |
Ответ
Возвращает: APIEmptyResponse
Пример

Получить модератора 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: GetModeratorResponse
Пример

Получить модераторов 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| skip | number | query | Нет |
Ответ
Возвращает: GetModeratorsResponse
Пример

Отправить приглашение 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| fromName | string | query | Да |
Ответ
Возвращает: APIEmptyResponse
Пример

Обновить модератора 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: APIEmptyResponse
Пример

Удалить счётчик уведомлений 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: APIEmptyResponse
Пример

Получить кешированное количество уведомлений 
Параметры
| Имя | Тип | Расположение | Обязательное | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: GetCachedNotificationCountResponse
Пример

Получить количество уведомлений 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| userId | string | query | No | |
| urlId | string | query | No | |
| fromCommentId | string | query | No | |
| viewed | boolean | query | No | |
| type | string | query | No |
Ответ
Возвращает: GetNotificationCountResponse
Пример

Получить уведомления 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| userId | string | query | Нет | |
| urlId | string | query | Нет | |
| fromCommentId | string | query | Нет | |
| viewed | boolean | query | Нет | |
| type | string | query | Нет | |
| skip | number | query | Нет |
Ответ
Возвращает: GetNotificationsResponse
Пример

Обновить уведомление 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| userId | string | query | Нет |
Ответ
Возвращает: APIEmptyResponse
Пример

Создать реакцию на страницу V1 
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| urlId | string | query | Да | |
| title | string | query | Нет |
Ответ
Возвращает: CreateV1PageReact
Пример

Создать реакцию на страницу V2 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| urlId | string | query | Yes | |
| id | string | query | Yes | |
| title | string | query | No |
Ответ
Возвращает: CreateV1PageReact
Пример

Удалить реакцию на страницу V1 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| urlId | string | query | Да |
Ответ
Возвращает: CreateV1PageReact
Пример

Удалить реакцию на страницу V2 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| urlId | string | query | Да | |
| id | string | query | Да |
Ответ
Возвращает: CreateV1PageReact
Пример

Получить лайки страницы V1 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| urlId | string | query | Да |
Ответ
Возвращает: GetV1PageLikes
Пример

Получить реакции страницы V2 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| urlId | string | query | Yes |
Ответ
Возвращает: GetV2PageReacts
Пример

Получить пользователей, реагировавших на страницу V2 
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| urlId | string | query | Да | |
| id | string | query | Да |
Ответ
Возвращает: GetV2PageReactUsersResponse
Пример

Добавить страницу 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да |
Ответ
Возвращает: AddPageAPIResponse
Пример

Удалить страницу 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: DeletePageAPIResponse
Пример

Получить офлайн-пользователей 
Предыдущие комментаторы на странице, которые в настоящее время НЕ в сети. Отсортированы по displayName. Используйте это после обращения к /users/online, чтобы отобразить раздел «Members». Курсорная пагинация по commenterName: сервер проходит по частичному индексу {tenantId, urlId, commenterName} индекс от afterName вперёд с использованием $gt — без затрат на $skip.
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| urlId | string | query | Yes | Идентификатор URL страницы (очищается на стороне сервера). |
| afterName | string | query | No | Курсор: передайте nextAfterName из предыдущего ответа. |
| afterUserId | string | query | No | Тайбрейкер курсора: передайте nextAfterUserId из предыдущего ответа. Обязательно, когда afterName задан, чтобы при совпадении имён записи не терялись. |
Ответ
Возвращает: PageUsersOfflineResponse
Пример

Получить онлайн-пользователей 
В данный момент онлайн-зрители страницы: люди, чья websocket-сессия в данный момент подписана на страницу. Возвращает anonCount + totalCount (подписчики комнаты в целом, включая анонимных зрителей, которых мы не перечисляем).
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| urlId | string | query | Yes | Идентификатор URL страницы (очищается на сервере). |
| afterName | string | query | No | Курсор: передайте nextAfterName из предыдущего ответа. |
| afterUserId | string | query | No | Тайбрейкер курсора: передайте nextAfterUserId из предыдущего ответа. Обязательно, когда задан afterName, чтобы совпадения имён не приводили к пропуску записей. |
Ответ
Возвращает: PageUsersOnlineResponse
Пример

Получить страницу по URL/ID 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| urlId | string | query | Да |
Ответ
Возвращает: GetPageByURLIdAPIResponse
Пример

Получить страницы 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да |
Ответ
Возвращает: GetPagesAPIResponse
Пример

Получить страницы (публично) 
Список страниц для арендатора. Используется настольным клиентом FChat для заполнения списка комнат.
Требует, чтобы enableFChat было true в разрешённой пользовательской конфигурации для каждой страницы.
Страницы, требующие SSO, фильтруются по доступу групп запрашивающего пользователя.
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Yes | |
| cursor | string | query | No | Непрозрачный курсор пагинации, возвращаемый как nextCursor в предыдущем запросе. Привязан к тому же sortBy. |
| limit | integer | query | No | 1..200, по умолчанию 50 |
| q | string | query | No | Необязательный регистронезависимый фильтр по префиксу заголовка. |
| sortBy | string | query | No | Порядок сортировки. updatedAt (по умолчанию, сначала новые), commentCount (сначала страницы с наибольшим количеством комментариев), или title (по алфавиту). |
| hasComments | boolean | query | No | Если true, возвращаются только страницы с хотя бы одним комментарием. |
Ответ
Возвращает: GetPublicPagesResponse
Пример

Получить информацию о пользователях 
Массовая информация о пользователях для тенанта. По заданным userIds возвращает отображаемую информацию из User / SSOUser. Используется виджетом комментариев для дополнения пользователей, которые только что появились через событие присутствия. Нет контекста страницы: приватность применяется одинаково (приватные профили скрыты).
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | путь | Да | |
| ids | string | параметр запроса | Да | Список userIds, разделённых запятыми. |
Ответ
Возвращает: PageUsersInfoResponse
Пример

Применить патч к странице 
Parameters
| Название | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: PatchPageAPIResponse
Пример

Удалить ожидающее событие вебхука 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: APIEmptyResponse
Пример

Получить количество ожидающих вебхук-событий 
Параметры
| Name | Type | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| commentId | string | query | Нет | |
| externalId | string | query | Нет | |
| eventType | string | query | Нет | |
| type | string | query | Нет | |
| domain | string | query | Нет | |
| attemptCountGT | number | query | Нет |
Ответ
Возвращает: GetPendingWebhookEventCountResponse
Пример

Получить ожидающие вебхук-события 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | query | No | |
| externalId | string | query | No | |
| eventType | string | query | No | |
| type | string | query | No | |
| domain | string | query | No | |
| attemptCountGT | number | query | No | |
| skip | number | query | No |
Ответ
Возвращает: GetPendingWebhookEventsResponse
Пример

Создать конфигурацию вопроса 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да |
Ответ
Возвращает: CreateQuestionConfigResponse
Пример

Удалить конфигурацию вопроса 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: APIEmptyResponse
Пример

Получить конфигурацию вопроса 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: GetQuestionConfigResponse
Пример

Получить конфигурации вопросов 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| skip | number | query | Нет |
Ответ
Возвращает: GetQuestionConfigsResponse
Пример

Обновить конфигурацию вопроса 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: APIEmptyResponse
Пример

Создать результат вопроса 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Yes |
Ответ
Возвращает: CreateQuestionResultResponse
Пример

Удалить результат вопроса 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: APIEmptyResponse
Пример

Получить результат вопроса 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: GetQuestionResultResponse
Пример

Получить результаты вопросов 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| urlId | string | query | Нет | |
| userId | string | query | Нет | |
| startDate | string | query | Нет | |
| questionId | string | query | Нет | |
| questionIds | string | query | Нет | |
| skip | number | query | Нет |
Ответ
Возвращает: GetQuestionResultsResponse
Пример

Обновить результат вопроса 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: APIEmptyResponse
Пример

Агрегировать результаты вопросов 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| questionId | string | query | Нет | |
| questionIds | array | query | Нет | |
| urlId | string | query | Нет | |
| timeBucket | string | query | Нет | |
| startDate | string | query | Нет | |
| forceRecalculate | boolean | query | Нет |
Ответ
Возвращает: AggregateQuestionResultsResponse
Пример

Массовая агрегация результатов вопросов 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| forceRecalculate | boolean | query | Нет |
Ответ
Возвращает: BulkAggregateQuestionResultsResponse
Пример

Объединить комментарии с результатами вопросов 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| questionId | string | query | Нет | |
| questionIds | array | query | Нет | |
| urlId | string | query | Нет | |
| startDate | string | query | Нет | |
| forceRecalculate | boolean | query | Нет | |
| minValue | number | query | Нет | |
| maxValue | number | query | Нет | |
| limit | number | query | Нет |
Ответ
Возвращает: CombineQuestionResultsWithCommentsResponse
Пример

Добавить SSO-пользователя 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes |
Ответ
Возвращает: AddSSOUserAPIResponse
Пример

Удалить SSO-пользователя 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| deleteComments | boolean | query | Нет | |
| commentDeleteMode | string | query | Нет |
Ответ
Возвращает: DeleteSSOUserAPIResponse
Пример

Получить SSO-пользователя по email 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| string | path | Yes |
Ответ
Возвращает: GetSSOUserByEmailAPIResponse
Пример

Получить SSO-пользователя по ID 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: GetSSOUserByIdAPIResponse
Пример

Получить SSO-пользователей 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| skip | integer | query | Нет |
Ответ
Возвращает: GetSSOUsersResponse
Пример

Применить патч к SSO-пользователю 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| updateComments | boolean | query | Нет |
Ответ
Возвращает: PatchSSOUserAPIResponse
Пример

Заменить/установить SSO-пользователя 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| updateComments | boolean | query | Нет |
Ответ
Возвращает: PutSSOUserAPIResponse
Пример

Создать подписку 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да |
Ответ
Возвращает: CreateSubscriptionAPIResponse
Пример

Удалить подписку 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| userId | string | query | Нет |
Ответ
Возвращает: DeleteSubscriptionAPIResponse
Пример

Получить подписки 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| userId | string | query | No |
Ответ
Возвращает: GetSubscriptionsAPIResponse
Пример

Обновить подписку 
Параметры
| Имя | Тип | Местоположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| id | string | path | Yes | |
| userId | string | query | No |
Ответ
Возвращает: UpdateSubscriptionAPIResponse
Пример

Получить ежедневное использование тенанта 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| yearNumber | number | query | Нет | |
| monthNumber | number | query | Нет | |
| dayNumber | number | query | Нет | |
| skip | number | query | Нет |
Ответ
Возвращает: GetTenantDailyUsagesResponse
Пример

Создать пакет тенанта 
Параметры
| Name | Type | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да |
Ответ
Возвращает: CreateTenantPackageResponse
Пример

Удалить пакет тенанта 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: APIEmptyResponse
Пример

Получить пакет тенанта 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: GetTenantPackageResponse
Пример

Получить пакеты тенанта 
Параметры
| Name | Тип | Location | Обязательный | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| skip | number | query | Нет |
Ответ
Возвращает: GetTenantPackagesResponse
Пример

Заменить пакет тенанта 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: APIEmptyResponse
Пример

Обновить пакет тенанта 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Response
Возвращает: APIEmptyResponse
Пример

Создать пользователя тенанта 
Параметры
| Имя | Тип | Location | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да |
Ответ
Возвращает: CreateTenantUserResponse
Пример

Удалить пользователя тенанта 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| deleteComments | string | query | Нет | |
| commentDeleteMode | string | query | Нет |
Ответ
Возвращает: APIEmptyResponse
Пример

Получить пользователя тенанта 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: GetTenantUserResponse
Пример

Получить пользователей тенанта 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| skip | number | query | Нет |
Ответ
Возвращает: GetTenantUsersResponse
Пример

Заменить пользователя тенанта 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| updateComments | string | query | Нет |
Ответ
Возвращает: APIEmptyResponse
Пример

Отправить ссылку для входа 
Параметры
| Имя | Тип | Местоположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| redirectURL | string | query | Нет |
Ответ
Возвращает: APIEmptyResponse
Пример

Обновить пользователя тенанта 
Параметры
| Имя | Тип | Location | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| updateComments | string | query | Нет |
Ответ
Возвращает: APIEmptyResponse
Пример

Создать тенант 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да |
Ответ
Возвращает: CreateTenantResponse
Пример

Удалить тенант 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| sure | string | query | Нет |
Ответ
Возвращает: APIEmptyResponse
Пример

Получить тенант 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: GetTenantResponse
Пример

Получить тенанты 
Parameters
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| meta | string | query | Нет | |
| skip | number | query | Нет |
Response
Возвращает: GetTenantsResponse
Пример

Обновить тенант 
Параметры
| Имя | Тип | Местоположение | Обязательный | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: APIEmptyResponse
Пример

Изменить состояние тикета 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| userId | string | query | Да | |
| id | string | path | Да |
Response
Возвращает: ChangeTicketStateResponse
Пример

Создать тикет 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| userId | string | query | Да |
Ответ
Возвращает: CreateTicketResponse
Пример

Получить тикет 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| userId | string | query | Нет |
Ответ
Возвращает: GetTicketResponse
Пример

Получить тикеты 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| userId | string | query | Нет | |
| state | number | query | Нет | |
| skip | number | query | Нет | |
| limit | number | query | Нет |
Ответ
Возвращает: GetTicketsResponse
Пример

Получить переводы 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| namespace | string | path | Да | |
| component | string | path | Да | |
| locale | string | query | Нет | |
| useFullTranslationIds | boolean | query | Нет |
Ответ
Возвращает: GetTranslationsResponse
Пример

Загрузить изображение 
Загрузить и изменить размер изображения
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| sizePreset | string | query | Нет | Предустановка размера: "Default" (1000x1000px) или "CrossPlatform" (создает размеры для популярных устройств) |
| urlId | string | query | Нет | Идентификатор страницы, с которой выполняется загрузка, для настройки |
Ответ
Возвращает: UploadImageResponse
Пример

Получить прогресс значка пользователя по ID 
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: APIGetUserBadgeProgressResponse
Пример

Получить прогресс значка пользователя по ID пользователя 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| userId | string | path | Да |
Ответ
Возвращает: APIGetUserBadgeProgressResponse
Пример

Получить список прогресса значков пользователя 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| userId | string | query | Нет | |
| limit | number | query | Нет | |
| skip | number | query | Нет |
Ответ
Возвращает: APIGetUserBadgeProgressListResponse
Пример

Создать бейдж пользователя 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да |
Ответ
Возвращает: APICreateUserBadgeResponse
Пример

Удалить бейдж пользователя 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: APIEmptySuccessResponse
Пример

Получить бейдж пользователя 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: APIGetUserBadgeResponse
Пример

Получить бейджи пользователя 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| userId | string | query | Нет | |
| badgeId | string | query | Нет | |
| type | number | query | Нет | |
| displayedOnComments | boolean | query | Нет | |
| limit | number | query | Нет | |
| skip | number | query | Нет |
Ответ
Возвращает: APIGetUserBadgesResponse
Пример

Обновить бейдж пользователя 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: APIEmptySuccessResponse
Пример

Получить количество уведомлений пользователя 
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: GetUserNotificationCountResponse
Пример

Получить уведомления пользователя 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| urlId | string | query | Нет | Используется для определения, подписана ли текущая страница. |
| pageSize | integer | query | Нет | |
| afterId | string | query | Нет | |
| includeContext | boolean | query | Нет | |
| afterCreatedAt | integer | query | Нет | |
| unreadOnly | boolean | query | Нет | |
| dmOnly | boolean | query | Нет | |
| noDm | boolean | query | Нет | |
| includeTranslations | boolean | query | Нет | |
| includeTenantNotifications | boolean | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: GetMyNotificationsResponse
Пример

Сбросить количество уведомлений пользователя 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: ResetUserNotificationsResponse
Пример

Сбросить уведомления пользователя 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| afterId | string | query | Нет | |
| afterCreatedAt | integer | query | Нет | |
| unreadOnly | boolean | query | Нет | |
| dmOnly | boolean | query | Нет | |
| noDm | boolean | query | Нет | |
| sso | string | query | Нет |
Ответ
Возвращает: ResetUserNotificationsResponse
Пример

Обновить статус подписки пользователя на комментарии 
Включение или отключение уведомлений для конкретного комментария.
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| notificationId | string | path | Да | |
| optedInOrOut | string | path | Да | |
| commentId | string | query | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: UpdateUserNotificationCommentSubscriptionStatusResponse
Пример

Обновить статус подписки пользователя на страницу 
Включить или отключить уведомления для страницы. Когда пользователи подписаны на страницу, создаются уведомления для новых корневых комментариев, а также
Parameters
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| urlId | string | query | Да | |
| url | string | query | Да | |
| pageTitle | string | query | Да | |
| subscribedOrUnsubscribed | string | path | Да | |
| sso | string | query | Нет |
Response
Возвращает: UpdateUserNotificationPageSubscriptionStatusResponse
Example

Обновить статус уведомлений пользователя 
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| notificationId | string | path | Да | |
| newStatus | string | path | Да | |
| sso | string | query | Нет |
Ответ
Возвращает: UpdateUserNotificationStatusResponse
Пример

Получить статусы присутствия пользователей 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| urlIdWS | string | query | Yes | |
| userIds | string | query | Yes |
Ответ
Возвращает: GetUserPresenceStatusesResponse
Пример

Поиск пользователей 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | path | Да | |
| urlId | string | query | Да | |
| usernameStartsWith | string | query | Нет | |
| mentionGroupIds | array | query | Нет | |
| sso | string | query | Нет | |
| searchSection | string | query | Нет |
Ответ
Возвращает: SearchUsersResult
Пример

Получить пользователя 
Параметры
| Имя | Тип | Местоположение | Обязательный | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да |
Ответ
Возвращает: GetUserResponse
Пример

Создать голос 
Параметры
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | query | Yes | |
| commentId | string | query | Yes | |
| direction | string | query | Yes | |
| userId | string | query | No | |
| anonUserId | string | query | No |
Ответ
Возвращает: VoteResponse
Пример

Удалить голос 
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| id | string | path | Да | |
| editKey | string | query | Нет |
Ответ
Возвращает: VoteDeleteResponse
Пример

Получить голоса 
Параметры
| Имя | Тип | Расположение | Обязательный | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| urlId | string | query | Да |
Ответ
Возвращает: GetVotesResponse
Пример

Получить голоса пользователя 
Параметры
| Имя | Тип | Расположение | Обязательно | Описание |
|---|---|---|---|---|
| tenantId | string | query | Да | |
| urlId | string | query | Да | |
| userId | string | query | Нет | |
| anonUserId | string | query | Нет |
Ответ
Возвращает: GetVotesForUserResponse
Пример

Нужна помощь?
Если вы столкнулись с проблемами или у вас есть вопросы по Java SDK, пожалуйста:
Вклад
Вклады приветствуются! Пожалуйста, посетите репозиторий на GitHub для руководства по внесению вклада.