Skip to content

Latest commit

 

History

History
463 lines (410 loc) · 22.6 KB

File metadata and controls

463 lines (410 loc) · 22.6 KB

Документация — lolzteam-api-java

Полный справочник методов Java-клиента для LOLZTEAM Forum и Market API.

Настройка клиента

Метод Описание По умолчанию
LolzteamClient.create(token) Создать клиент с настройками по умолчанию
.builder(token) Создать билдер для тонкой настройки
.proxy(url) Общий прокси для Forum и Market Нет
.forumProxy(url) Прокси только для Forum API Нет
.marketProxy(url) Прокси только для Market API Нет
.maxRetries(n) Максимум попыток при ретрае 5
.baseDelayMs(ms) Начальная задержка backoff 1000
.maxDelayMs(ms) Макс. задержка backoff 60000
.timeout(duration) Таймаут запроса 30 сек
.forumBaseUrl(url) Кастомный URL Forum API https://prod-api.lolz.live
.marketBaseUrl(url) Кастомный URL Market API https://prod-api.lzt.market
.forumRateLimit(rpm) Rate limit форума (req/min) 300
.marketRateLimit(rpm) Rate limit маркета (req/min) 120
.marketSearchRateLimit(rpm) Rate limit поиска маркета 20
.noRateLimit() Отключить rate limiting
.onRetry(callback) Callback при ретрае

Типы ошибок

Тип Описание
LolzteamException.HttpException Сетевая ошибка (таймаут, DNS, соединение)
LolzteamException.JsonException Ошибка парсинга JSON-ответа
LolzteamException.AuthException 401 Unauthorized
LolzteamException.ForbiddenException 403 Forbidden
LolzteamException.NotFoundException 404 Not Found
LolzteamException.RateLimitedException 429 — исчерпаны все попытки ретрая
LolzteamException.RetryExhaustedException Все попытки ретрая исчерпаны (502/503/504)
LolzteamException.ApiException Прочие HTTP-ошибки от API
LolzteamException.ConfigException Ошибка конфигурации

Кодогенерация

Сгенерированные файлы:

  • lolzteam-api/src/main/java/com/lolzteam/forum/ForumApi.java — методы Forum API (151 эндпоинт)
  • lolzteam-api/src/main/java/com/lolzteam/market/MarketApi.java — методы Market API (115 эндпоинтов)

Перегенерация:

# Собрать кодогенератор
mvn -pl codegen clean package -DskipTests

# Запустить генерацию
java -jar codegen/target/lolzteam-codegen-*-jar-with-dependencies.jar \
    schemas/forum.json schemas/market.json \
    lolzteam-api/src/main/java/com/lolzteam

Тела запросов

Java-клиент автоматически формирует тела запросов:

  • JSON — для большинства POST/PUT/PATCH запросов (Jackson ObjectNode)
  • Multipart — для загрузки файлов (avatar, background)

Пример загрузки аватара:

import com.lolzteam.LolzteamClient;
import com.fasterxml.jackson.databind.JsonNode;

LolzteamClient client = LolzteamClient.create("YOUR_TOKEN");

// Загрузить аватар из файла
JsonNode result = client.forum().usersAvatarUpload(
    1L,               // userId
    "avatar.png",     // путь к файлу
    0L,               // x
    0L,               // y
    256L              // crop
);

Параметры эндпоинтов

Эндпоинты с более чем тремя необязательными параметрами принимают Map<String, Object>:

import java.util.Map;
import java.util.HashMap;

// Поиск Steam аккаунтов с фильтрами
Map<String, Object> params = new HashMap<>();
params.put("pmin", 10);
params.put("pmax", 100);
params.put("page", 1);

JsonNode results = client.market().categorySteam(params);

Forum API

Categories

Метод Описание
categoriesGet(categoryId) Получить категорию
categoriesList(parentCategoryId, parentForumId, order) Список категорий

Forums

Метод Описание
forumsGet(forumId) Получить форум
forumsList(parentCategoryId, parentForumId, order) Список форумов
forumsGrouped() Форумы, сгруппированные по категориям
forumsFollow(forumId, params) Подписаться на форум
forumsUnfollow(forumId) Отписаться от форума
forumsFollowed(total) Список подписок на форумы
forumsFollowers(forumId) Подписчики форума
forumsGetFeedOptions() Настройки ленты
forumsEditFeedOptions(nodeIds, keywords) Изменить настройки ленты

Threads

Метод Описание
threadsList(params) Список тем
threadsGet(threadId, fieldsInclude) Получить тему
threadsCreate(postBody, forumId, params) Создать тему
threadsEdit(threadId, params) Редактировать тему
threadsDelete(threadId, reason) Удалить тему
threadsMove(threadId, nodeId, params) Переместить тему
threadsBump(threadId) Поднять тему
threadsRecent(params) Недавние темы
threadsUnread(limit, forumId, dataLimit) Непрочитанные темы
threadsCreateContest(postBody, contestType, ...) Создать конкурс
threadsClaim(asResponder, ...) Создать жалобу
threadsFollow(threadId, email) Подписаться на тему
threadsUnfollow(threadId) Отписаться от темы
threadsFollowed(total, fieldsInclude) Подписки на темы
threadsFollowers(threadId) Подписчики темы
threadsPollGet(threadId) Получить опрос
threadsPollVote(threadId, responseId, responseIds) Проголосовать
threadsStar(threadId) Добавить в избранное
threadsUnstar(threadId) Убрать из избранного
threadsHide(threadId) Скрыть тему
threadsFinish(threadId) Завершить тему
threadsNavigation(threadId) Навигация по теме

Posts

Метод Описание
postsList(params) Список постов
postsGet(postId) Получить пост
postsCreate(postBody, threadId, quotePostId) Создать пост
postsEdit(postId, postBody) Редактировать пост
postsDelete(postId, reason) Удалить пост
postsLike(postId) Лайкнуть пост
postsUnlike(postId) Убрать лайк
postsLikes(postId, page, limit) Список лайков
postsReport(postId, message) Пожаловаться на пост
postsReportReasons(postId) Причины жалобы
postsCommentsCreate(postId, commentBody) Создать комментарий
postsCommentsGet(postId, before, beforeComment) Получить комментарий
postsCommentsEdit(postCommentId, commentBody) Редактировать комментарий
postsCommentsDelete(postCommentId, reason) Удалить комментарий

Profile Posts

Метод Описание
profilePostsList(userId, params) Список постов профиля
profilePostsGet(profilePostId) Получить пост профиля
profilePostsCreate(userId, postBody) Создать пост профиля
profilePostsEdit(profilePostId, postBody, disableComments) Редактировать пост
profilePostsDelete(profilePostId, reason) Удалить пост
profilePostsLike(profilePostId) Лайкнуть
profilePostsUnlike(profilePostId) Убрать лайк
profilePostsStick(profilePostId) Закрепить
profilePostsUnstick(profilePostId) Открепить
profilePostsCommentsList(profilePostId, before, limit) Комментарии
profilePostsCommentsCreate(profilePostId, commentBody) Создать комментарий
profilePostsCommentsEdit(commentId, commentBody) Редактировать комментарий
profilePostsCommentsDelete(commentId) Удалить комментарий

Users

Метод Описание
usersGet(userId, fieldsInclude) Получить пользователя
usersFind(username, customFields, fieldsInclude) Найти пользователя
usersList(page, limit, fieldsInclude) Список пользователей
usersEdit(userId, params) Редактировать профиль
usersFollow(userId) Подписаться
usersUnfollow(userId) Отписаться
usersFollowers(userId, order, page, limit) Подписчики
usersFollowings(userId, order, page, limit) Подписки
usersIgnore(userId) Игнорировать
usersUnignore(userId) Убрать из игнора
usersIgnored(total) Список игнорируемых
usersLikes(userId, params) Лайки пользователя
usersTrophies(userId) Трофеи
usersContents(userId, page, limit) Контент пользователя
usersClaims(userId, type, claimState) Жалобы пользователя
usersFields() Поля профиля
usersAvatarUpload(userId, avatar, x, y, crop) Загрузить аватар
usersAvatarDelete(userId) Удалить аватар
usersAvatarCrop(userId, x, y, crop) Обрезать аватар
usersBackgroundUpload(userId, background, x, y, crop) Загрузить фон
usersBackgroundDelete(userId) Удалить фон
usersBackgroundCrop(userId, x, y, crop) Обрезать фон

Conversations

Метод Описание
conversationsList(folder, page, limit) Список диалогов
conversationsGet(conversationId) Получить диалог
conversationsCreate(params) Создать диалог
conversationsUpdate(conversationId, params) Обновить диалог
conversationsDelete(conversationId, deleteType) Удалить диалог
conversationsRead(conversationId) Отметить прочитанным
conversationsReadAll() Отметить все прочитанными
conversationsMessagesList(conversationId, params) Сообщения диалога
conversationsMessagesGet(messageId) Получить сообщение
conversationsMessagesCreate(conversationId, messageBody, replyMessageId) Отправить сообщение
conversationsMessagesEdit(conversationId, messageId, messageBody) Редактировать сообщение
conversationsMessagesDelete(conversationId, messageId) Удалить сообщение
conversationsSearch(q, conversationId, searchRecipients) Поиск по диалогам
conversationsStar(conversationId) В избранное
conversationsUnstar(conversationId) Из избранного
conversationsInvite(conversationId, recipients) Пригласить
conversationsKick(conversationId, userId) Исключить

Search

Метод Описание
searchAll(params) Поиск по всему
searchThreads(params) Поиск тем
searchPosts(params) Поиск постов
searchProfilePosts(params) Поиск постов профиля
searchTagged(params) Поиск по тегам
searchUsers(q) Поиск пользователей
searchResults(searchId, page, limit) Результаты поиска

Notifications

Метод Описание
notificationsList(type, page, limit) Список уведомлений
notificationsGet(notificationId) Получить уведомление
notificationsRead(notificationId) Отметить прочитанным

Tags

Метод Описание
tagsPopular() Популярные теги
tagsList(page, limit) Список тегов
tagsGet(tagId, page, limit) Получить тег
tagsFind(tag) Найти тег

Chatbox

Метод Описание
chatboxIndex(roomId) Главная чатбокса
chatboxGetMessages(roomId, beforeMessageId) Сообщения чатбокса
chatboxPostMessage(roomId, message, replyMessageId) Отправить сообщение
chatboxEditMessage(messageId, message) Редактировать сообщение
chatboxDeleteMessage(messageId) Удалить сообщение
chatboxOnline(roomId) Онлайн пользователи
chatboxGetLeaderboard(duration) Лидерборд
chatboxReport(messageId, reason) Пожаловаться
chatboxReportReasons(messageId) Причины жалобы
chatboxGetIgnore() Список игнорируемых
chatboxPostIgnore(userId) Добавить в игнор
chatboxDeleteIgnore(userId) Убрать из игнора

Прочее

Метод Описание
navigationList(parent) Навигация
oAuthToken(grantType, clientId, clientSecret, params) Получить токен
batchExecute() Batch-запрос
assetsCss(css) Получить CSS
formsList(page) Список форм
formsCreate(formId, fields) Создать форму
pagesList(parentPageId, order) Список страниц
pagesGet(pageId) Получить страницу
linksList() Список ссылок
linksGet(linkId) Получить ссылку

Market API

Categories

Метод Описание
categoryList(topQueries) Список категорий
categoryParams(categoryName) Параметры категории
categoryGames(categoryName) Игры категории

Category Search

Метод Описание
categoryAll(params) Поиск по всем категориям
categorySteam(params) Steam аккаунты
categoryFortnite(params) Fortnite аккаунты
categoryDiscord(params) Discord аккаунты
categoryTelegram(params) Telegram аккаунты
categoryMinecraft(params) Minecraft аккаунты
categoryRoblox(params) Roblox аккаунты
categoryRiot(params) Riot Games аккаунты
categoryEpicGames(params) Epic Games аккаунты
categoryEA(params) EA аккаунты
categoryBattleNet(params) Battle.net аккаунты
categoryUplay(params) Uplay аккаунты
categorySocialClub(params) Social Club аккаунты
categoryWot(params) World of Tanks аккаунты
categoryWotBlitz(params) WoT Blitz аккаунты
categoryWarface(params) Warface аккаунты
categorySupercell(params) Supercell аккаунты
categoryMihoyo(params) miHoYo аккаунты
categoryEscapeFromTarkov(params) Escape from Tarkov аккаунты
categoryInstagram(params) Instagram аккаунты
categoryTikTok(params) TikTok аккаунты
categoryChatGPT(params) ChatGPT аккаунты
categoryVpn(params) VPN аккаунты
categoryGifts(params) Подарочные карты
categoryHytale(params) Hytale аккаунты

Account Lists

Метод Описание
listUser(params) Мои аккаунты
listFavorites(params) Избранные
listOrders(params) Заказы
listViewed(params) Просмотренные
listStates(userId) Статусы аккаунтов
listDownload(type, params) Скачать список

Account Managing

Метод Описание
managingGet(itemId, parseSameItemIds) Получить аккаунт
managingEdit(itemId, params) Редактировать аккаунт
mangingDelete(itemId, reason) Удалить аккаунт
managingBump(itemId) Поднять аккаунт
managingAutoBump(itemId, hour) Автоподнятие
managingAutoBumpDisable(itemId) Отключить автоподнятие
managingAutoBuyPrice(itemId) Цена автопокупки
managingStick(itemId) Закрепить
managingUnstick(itemId) Открепить
managingFavorite(itemId) В избранное
managingUnfavorite(itemId) Из избранного
managingTag(itemId, tagId) Добавить тег
managingUntag(itemId, tagId) Убрать тег
managingPublicTag(itemId, tagId) Публичный тег
managingPublicUntag(itemId, tagId) Убрать публичный тег
managingNote(itemId, text) Заметка
managingImage(itemId, type) Изображение
managingClose(itemId) Закрыть
managingOpen(itemId) Открыть
managingTransfer(itemId, username, secretAnswer) Передать аккаунт
managingChangePassword(itemId, cancel) Сменить пароль
managingAIPrice(itemId) AI-оценка цены
managingBulkGet(itemId, parseSameItemIds) Массовое получение
managingCreateClaim(itemId, postBody) Создать жалобу
managingCheckGuarantee(itemId) Проверить гарантию
managingRefuseGuarantee(itemId) Отказаться от гарантии
managingEmailCode(itemId) Код с email
managingTelegramCode(itemId) Код из Telegram
managingTelegramResetAuth(itemId) Сброс авторизации Telegram
managingTempEmailPassword(itemId) Пароль временной почты
managingSteamValue(link, appId, currency, ignoreCache) Стоимость Steam
managingSteamUpdateValue(itemId, all, appId, authorize) Обновить стоимость
managingSteamInventoryValue(itemId, appId, currency, ignoreCache) Стоимость инвентаря
managingSteamPreview(itemId, type) Превью Steam
managingSteamMafileCode(itemId) Код из maFile
managingSteamGetMafile(itemId) Получить maFile
managingSteamAddMafile(itemId) Добавить maFile
managingSteamRemoveMafile(itemId) Удалить maFile
managingSteamSDA(itemId, id, nonce) Steam Desktop Auth

Account Publishing

Метод Описание
publishingAdd(price, categoryId, currency, itemOrigin, params) Добавить аккаунт
publishingCheck(itemId, params) Проверить аккаунт
publishingFastSell(price, categoryId, currency, itemOrigin, params) Быстрая продажа
publishingExternal(itemId, type, login, emailLoginData, cookies) Внешний аккаунт

Account Purchasing

Метод Описание
purchasingFastBuy(itemId, price, balanceId) Быстрая покупка
purchasingConfirm(itemId, price, balanceId) Подтвердить покупку
purchasingCheck(itemId) Проверить покупку
purchasingDiscountRequest(itemId, discountPrice, message) Запросить скидку
purchasingDiscountCancel(itemId) Отменить запрос скидки

Cart

Метод Описание
cartGet(params) Получить корзину
cartAdd(itemId) Добавить в корзину
cartDelete(itemId) Удалить из корзины

Payments

Метод Описание
paymentsHistory(params) История платежей
paymentsCurrency() Курсы валют
paymentsFee(amount) Комиссия
paymentsTransfer(amount, currency, params) Перевод
paymentsPayout(paymentSystem, wallet, amount, currency, includeFee, extra) Вывод средств
paymentsPayoutServices() Сервисы вывода
paymentsCancel(paymentId) Отменить платёж
paymentsBalanceList() Список балансов
paymentsBalanceExchange(fromBalance, toBalance, amount) Обмен валюты

Invoices

Метод Описание
paymentsInvoiceCreate(currency, amount, paymentId, ...) Создать инвойс
paymentsInvoiceGet(invoiceId, paymentId) Получить инвойс
paymentsInvoiceList(params) Список инвойсов

Auto Payments

Метод Описание
autoPaymentsCreate(usernameReceiver, day, amount, ...) Создать автоплатёж
autoPaymentsDelete(autoPaymentId) Удалить автоплатёж
autoPaymentsList() Список автоплатежей

Custom Discounts

Метод Описание
customDiscountsCreate(userId, categoryId, discountPercent, ...) Создать скидку
customDiscountsDelete(discountId) Удалить скидку
customDiscountsEdit(discountId, discountPercent, minPrice, maxPrice) Редактировать скидку
customDiscountsGet() Список скидок

Profile

Метод Описание
profileGet(fieldsInclude) Получить профиль
profileEdit(params) Редактировать профиль
profileClaims(type, claimState) Жалобы

Proxy

Метод Описание
proxyGet() Получить прокси
proxyAdd(params) Добавить прокси
proxyDelete(proxyId, deleteAll) Удалить прокси

IMAP

Метод Описание
imapCreate(domain, imapServer, port, secure) Добавить IMAP
imapDelete(domain) Удалить IMAP

Прочее

Метод Описание
batch() Batch-запрос