Skip to main content
Public API

Основан на SteamTools API

Те же конечные точки, которые использует домашняя страница, представленные как простой HTTP. Никакой аутентификации, никакого SDK, никакой привязки к поставщику — просто закручивайтесь с терминала.

Создать пару манифест + Lua

POST/api/generate

Сверяет App ID с хранилищем Steam, затем возвращает канонические CDN URL для файлов .manifest и .lua. Для этого App ID на Steam должны существовать ветки, отличные от общедоступных.

Request body

appId
Числовой Steam App ID.
branch
Дополнительная метка имени файла. По умолчанию общедоступный. Восходящие пакеты почти всегда являются общедоступными, независимо от этого поля.

Пример запроса

bash
curl -s -X POST "https://steamtools.games/api/generate" \
  -H "Content-Type: application/json" \
  -d '{"appId": "400", "branch": "public"}' | jq

Пример ответа

json
{
  "code": 0,
  "message": "ok",
  "data": {
    "appId": "400",
    "branch": "public",
    "gameName": "Portal",
    "gameImage": "https://shared.cloudflare.steamstatic.com/store_item_assets/steam/apps/400/capsule_231x87.jpg",
    "downloadUrl": "https://steamtools.games/api/files/400/zip",
    "luaUrl": "https://steamtools.games/api/files/400/lua",
    "keyVdfUrl": "https://steamtools.games/api/files/400/key",
    "instructions": [
      "1. Click Download ZIP — the package contains 400_public.lua, key.vdf, and a README.",
      "2. Copy the .lua and key.vdf into your SteamTools install root (same folder as the executable).",
      "3. Restart SteamTools and the game will appear in your library.",
      "4. Branches available for this App ID: public."
    ],
    "generatedAt": "2026-06-30T12:34:56.000Z"
  }
}

JSON с манифестом, luaUrl, gameName, gameImage и пошаговыми инструкциями по установке.

Ограничения ставок и добросовестное использование

Поиск ограничивается одним запросом за 300 мс на каждый IP-адрес; генерирование ограничивается одним запросом за 1,5 с. Дневной нормы нет. Если вам нужна более высокая пропускная способность, запустите собственный экземпляр — проект с открытым исходным кодом.

OpenAPI 3.1 спецификация

Полная схема доступна в виде статического файла JSON, который идеально подходит для подключения к Postman, Insomnia или вашему CI-линтеру.

Скачать openapi.json

Часто задаваемые вопросы

Нужен ли мне ключ API?
Нет. Конечные точки являются общедоступными, бесплатными и не прошедшими проверку подлинности. Мы ограничиваем скорость по IP, чтобы свет оставался включенным.
Могу ли я использовать это в коммерческом продукте?
Да, при условии, что вы соблюдаете условия обслуживания Steam и не переупаковываете файлы манифеста в рекламу или платный доступ.
Почему JSON вместо XML?
JSON — наименьший общий знаменатель. Форма отражает то, что уже возвращает генератор домашней страницы, поэтому любой клиент, который обращается к одному, может общаться и к другому.