REST API для пополнения Steam. Расчёты — в USDT. Сумма на кошелёк: RUB / USD / KZT / UAH.
https://partner.gghub.ioaccess_token через /api/auth/loginAuthorization: Bearer <token>POST /api/topup/check — проверка логина и quotePOST /api/topup — списание USDT и пополнение/api/topups/{id}charge_usdt = convert_to_usd(amount × rate, currency)
rate = 1 — оплата 1:1 к номиналу Steam (в USDT)rate = 0.9 — оплата 90% от номиналаPOST /api/auth/login
curl -X POST https://partner.gghub.io/api/auth/login \
-H "Content-Type: application/json" \
-d '{"login":"partner1","password":"secret123"}'
В ответе — access_token (срок ~24ч). Дальше во всех запросах:
Authorization: Bearer <access_token>
POST /api/topup/check
Проверка Steam login и расчёт списания.
curl -X POST https://partner.gghub.io/api/topup/check \
-H "Authorization: Bearer TOKEN" \
-H "Content-Type: application/json" \
-d '{"steam_login":"my_steam_login","amount":100,"currency_code":"RUB"}'
POST /api/topup
Создаёт заказ. Рекомендуется заголовок Idempotency-Key.
curl -X POST https://partner.gghub.io/api/topup \
-H "Authorization: Bearer TOKEN" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: order-2026-07-26-001" \
-d '{"steam_login":"my_steam_login","amount":100,"currency_code":"RUB"}'
GET /api/me — профиль и баланс
GET /api/topups — список заказов
GET /api/topups/{id} — детали, статус, receipt_url
GET /api/ledger — движение USDT
| status | Значение |
|---|---|
pending | Создан, ожидает обработки |
running | В процессе |
done | Успешно зачислено |
failed | Ошибка; USDT возвращается на баланс |
После успеха в деталях заказа будет receipt_url — ссылка на чек (есть и PDF: …/pdf).
| HTTP | code | Когда |
|---|---|---|
| 401 | — | Нет или просрочен токен |
| 402 | insufficient_balance | Недостаточно USDT |
| 400 | check_failed и др. | Логин не прошёл проверку / невалидные данные |
| 429 | — | Слишком много запросов |
AuthorizationIdempotency-Key/api/auth/login