Перейти к основному содержимому

Пагинация и фильтры

Курсорная пагинация​

Все списки отвечают одинаково:

{ "data": [], "page": { "nextCursor": "eyJ2IjoxMiwiaWQiOjQ1fQ", "hasMore": true } }
  • limit — размер страницы, 1..100. По умолчанию 20 для большинства списков (24 для коллекций).
  • cursor — передайте page.nextCursor из предыдущего ответа, с теми же фильтрами и сортировкой. Остановитесь, когда hasMore равен false.
  • Курсоры непрозрачны: не собирайте и не меняйте их (400 invalid_cursor).
  • Пагинация по ключу: записи, появившиеся во время обхода, не сдвигают и не повторяют уже полученные.

Фильтры модов​

GET /mods принимает параметры запроса, они объединяются через «И»:

ПараметрПримерЗначение
gamedeadlockSlug игры
categoryskinsSlug категории, вместе с подкатегориями (лучше вместе с game: slug-и повторяются в разных играх)
taghdSlug тега
authormeowИмя пользователя автора
nsfwincludeexclude (по умолчанию), include или only
wipfalseТолько в разработке (true) или только готовые (false)
featuredtrueТолько выбор редакции
updatedSince2026-01-01T00:00:00ZИзменённые в это время или позже — для синхронизации
GET /mods?game=deadlock&category=skins&nsfw=exclude&sort=updated&limit=50

Сортировка и поиск​

sort:

  • new (по умолчанию) — сначала новые публикации.
  • updated — сначала недавно изменённые.
  • downloads, likes — по общему числу.
  • trending — загрузки + 5 × лайки среди модов, опубликованных за последние 7 дней.
  • relevance — только вместе с q; при заданном q используется по умолчанию.

q — полнотекстовый поиск по названиям, тегам, описаниям, авторам и играм. Если поиск недоступен, API отвечает 503 search_unavailable; тот же запрос без q работает.

Синхронизация каталога​

Чтобы держать у себя копию модов игры, один раз обойдите GET /mods?game=…&sort=updated, запомните самый свежий updatedAt, а в следующий раз запрашивайте с updatedSince, равным ему. Моды, которые перестали быть публичными, пропадают из списков; о своих модах без опросов сообщат вебхуки.