REST API v1
Покупка и управление прокси из вашего кода: каталог, заказы, продление, смена IP и протокола, баланс, экспорт.
Base URL
https://proxyleet.com/api/v1
Авторизация
Заголовок Authorization: Bearer <ваш токен>
Полная документация
Все методы, параметры, коды ошибок и примеры — в интерактивной справке. Она собирается из самого кода API, поэтому всегда соответствует актуальному поведению.
Быстрый старт
1. Получить токен
Понадобятся email и пароль вашего личного кабинета. Токен показывается один раз — сохраните его сразу, восстановить значение нельзя.
curl -X POST https://proxyleet.com/api/v1/tokens \
-H "Content-Type: application/json" \
-d '{"email":"you@example.com","password":"...","name":"my integration"}'
2. Проверить токен
curl https://proxyleet.com/api/v1/me \
-H "Authorization: Bearer plt_..."
3. Выбрать товар и узнать цену
curl "https://proxyleet.com/api/v1/products?product_type=proxy&country=DE" \
-H "Authorization: Bearer plt_..."
curl "https://proxyleet.com/api/v1/products/12345/pricing?period=30&count=2" \
-H "Authorization: Bearer plt_..."
4. Купить
Заголовок Idempotency-Key защищает от двойного списания:
при повторе запроса с тем же ключом вернётся тот же заказ.
curl -X POST https://proxyleet.com/api/v1/orders \
-H "Authorization: Bearer plt_..." \
-H "Content-Type: application/json" \
-H "Idempotency-Key: order-2026-09-11-001" \
-d '{"product_id":12345,"period":30,"count":2}'
5. Получить данные прокси
curl https://proxyleet.com/api/v1/proxies \
-H "Authorization: Bearer plt_..."
Прокси по подписке (общий пул)
Ключ подписки передаётся тем же заголовком Authorization.
Формат ответа выбирается параметром format:
json, plain (ip:port) или
prefixed (тип://ip:port).
curl "https://proxyleet.com/api/v1/subscription/proxies?type=http,socks5&country=DE&format=plain" \
-H "Authorization: Bearer ВАШ_КЛЮЧ"
Прежний адрес https://proxyleet.com/proxy/key=...&type=http
продолжает работать без изменений — переходить на новый не обязательно.
Ошибки
Ошибки отдаются по стандарту RFC 9457 в виде
application/problem+json. Ветвите логику по полю
code, а не по тексту.
{
"type": "https://proxyleet.com/api/v1/errors/insufficient_funds",
"title": "Insufficient funds",
"status": 402,
"code": "insufficient_funds",
"detail": "Balance 120 RUB is less than the required 164 RUB.",
"request_id": "01M27M8BXC2VEMRS73ENNA7ZT8",
"balance": 120,
"required": 164,
"missing": 44
}
request_id есть в каждом ответе (в теле ошибки и в
заголовке X-Request-Id). Указывайте его при обращении в
поддержку — по нему мы находим запрос сразу.
Лимит частоты запросов виден в заголовках
RateLimit-Limit, RateLimit-Remaining и
RateLimit-Reset. Полный перечень кодов — в
документации.