API пакетов
Читайте свои безлимитные пакеты прокси и управляйте разрешёнными IP каждого пакета. Для записи нужен API-ключ Bearer; сессия документации, в которой вы вошли, может читать, но не писать. Каждая запись — один вызов: заголовка предусловия нет, и побеждает последняя успешная запись.
Список и чтение#
GET /api/v1/packages
GET /api/v1/packages/{packageId}
Authorization: Bearer lit_...
| Параметр | Правила |
|---|---|
limit |
Целое число 1–100; по умолчанию 50. |
cursor |
page предыдущей страницы, отправленный обратно без изменений. |
{
"data": {
"id": 45,
"status": "active",
"product": { "key": "dc-shared-rotating", "name": "DC Shared Rotating" },
"country": "us",
"quantity": 2,
"addOns": ["high-speed"],
"limits": { "speedMbps": 20, "connections": 300, "requestsPerSec": 25 },
"renewsAt": "2027-01-01T00:00:00.000Z",
"endsAt": null,
"tokenIds": [12345, 12346]
}
}
Неизвестный, чужой или не поддающийся разбору packageId даёт 404 PACKAGE_NOT_FOUND.
Статус#
status |
Значение | Даты |
|---|---|---|
awaiting-payment |
Заказан, ещё не оплачен. | Обе — null. |
active |
Оплачивается |
renewsAt — следующее продление, а endsAt — когда пакет остановится, если не будет продлён. |
suspended |
Платёж не прошёл или пакет был приостановлен |
endsAt, если известна, иначе null. |
ended |
Больше не активен. | endsAt — время завершения. |
setup-failed |
Подготовка не завершилась. | Обе — null. |
product.key — ключ семейства в каталоге, а product.name — его отображаемое название. addOns перечисляет публичные названия дополнений: high-speed, more-allowed-ips, multi-location. limits — действующий для каждого токена предел скорости, числа соединений и частоты запросов для конфигурации этого пакета, либо null, если его не удалось определить. tokenIds перечисляет текущие токены пакета; читайте каждый через Токены.
Разрешённые IP#
Список разрешённых IP пакета позволяет принимать подключения без пароля с точных публичных исходных адресов IPv4. Он действует на каждый готовый эндпоинт прокси в пакете; каждый из этих токенов также сообщает собственный эндпоинт без пароля как ipAuth (см. Токены). Данные для подключения продолжают работать независимо от того, пуст список или нет. IPv6 не поддерживается; обратитесь в поддержку.
GET /api/v1/packages/{packageId}/allowed-ips
Authorization: Bearer lit_...
{
"data": {
"packageId": 45,
"limit": 50,
"ips": ["8.8.8.8", "9.9.9.9"],
"available": true,
"unavailableCode": null
}
}
limit равен 1 для пакета без дополнения и 50 с more-allowed-ips. available: false означает, что сама функция разрешённых IP сейчас недоступна; unavailableCode тогда называет причину.
Изменение списка#
Задайте весь список сразу:
PUT /api/v1/packages/{packageId}/allowed-ips
Authorization: Bearer lit_...
Content-Type: application/json
{"ips": ["8.8.8.8", "9.9.9.9"]}
Всё или ничего: один некорректный IP отклоняет весь запрос с 400 INVALID_IP, где он назван, а список длиннее limit даёт 409 ALLOWED_IPS_LIMIT_REACHED. Чтобы очистить список, отправьте {"ips": []}.
Добавьте или удалите один IP, не читая список заранее:
PUT /api/v1/packages/{packageId}/allowed-ips/{ip}
DELETE /api/v1/packages/{packageId}/allowed-ips/{ip}
Authorization: Bearer lit_...
Ни один из этих запросов не принимает тело. Добавление IP, который уже в списке, или удаление отсутствующего — успешная операция без изменений. Удаление лишь помечает строку как отозванную, поэтому история аудита сохраняется; в ips она снова не появляется.
Каждая запись разрешённых IP возвращает ту же форму {data: ...}, что показана выше.
Безопасность и ограничения#
Добавление IP даёт доступ без пароля с этого источника ко всем готовым эндпоинтам пакета; удаление IP этот доступ отнимает. Записи в один пакет ограничены 20 за 60 секунд сверх ограничения на ключ; см. ограничения частоты запросов.
Ошибки разрешённых IP#
| Статус | Код | Значение |
|---|---|---|
400 |
INVALID_IP |
Адрес не является точным публичным литералом IPv4. Сообщение называет его. |
400 |
IPV6 |
Отправлен адрес IPv6. Обратитесь в поддержку. |
400 |
INVALID |
Тело запроса на задание списка не в точности {"ips": [...]}. |
404 |
PACKAGE |
Неизвестный, чужой или некорректный packageId. |
409 |
ALLOWED |
Список превысил бы limit. Чтобы увеличить его, обратитесь в поддержку. |
409 |
PACKAGE |
Пакет не активен. Удаление IP по-прежнему работает. |
409 |
CONCURRENT |
Другая запись в этот пакет пришла в тот же момент. Повторите тот же запрос. |
429 |
RATE_LIMITED |
Превышено ограничение на ключ или на пакет. Подождите время, указанное в Retry-After. |
503 |
ALLOWED |
Хранилище разрешённых IP или выделение портов временно недоступно. Повторите запрос через время, указанное в Retry-After. |
Каждый код описан на странице Ошибки API; схемы — в контракте OpenAPI.
Прокси «Мультилокация»#
Целевые город и оператор прокси «Мультилокация» — настройки токена, а не пакета: читайте и меняйте их через Токены: местоположение.