Тестовый сервер
ГосПлан предоставляет возможность попробовать полноценные методы API без регистрации: просто откройте терминал или Swagger, сделайте несколько запросов — и получите реальные данные ЕИС. Тестовый сервер предназначен именно для таких первых шагов.
Зачем нужен тестовый сервер
- Попробовать API до получения ключа. Нет необходимости проходить регистрацию, всё работает сразу.
- Оценить структуру ответов. Вы изучаете поля документов, фильтры и пагинацию в реальном времени, прежде чем настраивать интеграцию.
- Отладить сценарии. Мониторинг закупок, контракты, жалобы и справочники можно проиграть без риска потратить лимиты продуктового тарифа.
- Показать демо. Визуальные отчёты, PoC или внутренние внутрие командные презентации собираются на тестовом сервере без согласований.
Тестовый сервер опирается на те же наборы данных (44-ФЗ, 223-ФЗ, ПП РФ 615, НСИ), что и продуктовый, поэтому переход к рабочему окружению происходит без сюрпризов.
Как устроен тестовый сервер
| Характеристика | Значение |
|---|---|
| Базовый URL | https://v2test.gosplan.info |
| API-ключ | Не требуется |
| Регистрация | Не требуется — достаточно IP-адреса |
| Поддерживаемые подсистемы | 44-ФЗ, 223-ФЗ, ПП РФ 615, НСИ |
| Данные | Полный набор документов ЕИС |
| Лимит | 10 запросов в минуту на один IP |
| Стабильность | Окружение минимально; рекомендуем использовать для разработки и тестов |
Для сравнения окружений смотрите раздел «Тарифы и лимиты». Когда придёт время на стабильный продуктовый трафик, переходите к разделу «API-ключ».
Первый запрос — проверка доступности
curl -s "https://v2test.gosplan.info" | jq
Ожидаемый ответ (без заголовков и ключей):
{"app version":"1.6.2","API version":"v2.4.0","API description":"https://swagger.gosplan.info"}
Этот ответ подтверждает доступность API и подсказывает ссылку на Swagger.
Запросы через curl
Подготовка
- Установите
curlиjq, чтобы красиво выводить JSON. - Переменная
jqпомогает читать длинные ответы, но можно использовать любой JSON-валидатор.
Получение списка закупок
curl -s "https://v2test.gosplan.info/fz44/purchases?limit=1&skip=0" | jq
В ответе вы увидите поля purchase_number, object_info, max_price, published_at и updated_at. Это базовый запрос, с которым стоит начать.
Поиск самой дорогой закупки
curl -s "https://v2test.gosplan.info/fz44/purchases?sort=max_price_desc&limit=1" | jq '.[0] | {purchase_number, object_info, max_price}'
Другие подсистемы
- 223-ФЗ:
curl -s "https://v2test.gosplan.info/fz223/purchases?limit=5" | jq - ПП РФ 615:
curl -s "https://v2test.gosplan.info/pprf615/purchases?limit=5" | jq
Что делать, если превышен лимит?
Сервер вернёт 429 Too Many Requests. Подождите минуту, затем повторите запрос.
Запросы через Python
Подготовка
Убедитесь, что установлен Python 3 (python3 --version). Дополнительные зависимости не нужны — используем встроенные модули urllib и json.
Пример без API-ключа
import urllib.request
import json
url = "https://v2test.gosplan.info/fz44/purchases"
params = {
"limit": 5,
"skip": 0,
}
query_string = "&".join(f"{key}={value}" for key, value in params.items())
full_url = f"{url}?{query_string}"
try:
with urllib.request.urlopen(full_url) as response:
data = response.read().decode("utf-8")
result = json.loads(data)
print(json.dumps(result, indent=4, ensure_ascii=False))
except Exception as e:
print(f"Произошла ошибка: {e}")
Как это работает
- Формируется URL с параметрами
limit/skip. - Запрос отправляется на
https://v2test.gosplan.infoбез заголовков авторизации. - Ответ декодируется и выводится красиво.
Обработка ошибок
При превышении лимита появится исключение с сообщением HTTP Error 429. Повторите запрос через минуту.
Запросы через Swagger UI
- Перейдите на https://swagger.gosplan.info.
- Выберите нужную спецификацию (44-ФЗ, 223-ФЗ, ППРФ-615 или НСИ).
- Обратите внимание: первый сервер в списке —
https://v2test.gosplan.info(тестовый). Swagger UI по умолчанию уже работает с этим сервером, поэтому нажимать Authorize не нужно — ключ не требуется. - Выберите метод (например,
GET /fz44/purchases), нажмите Try it out, укажитеlimit/skipи нажмите Execute. - Изучите ответ, а также автоматически сгенерированный curl-команду и URL — они используют
v2test.gosplan.info.
Если вы захотите переключиться на продуктовый сервер, выберите его в списке Servers и нажмите Authorize со схемой apikey.
Ограничения и коды ответов
| Код | Описание |
|---|---|
200 OK | Запрос обработан, ответ содержит данные закупок/документов. |
404 Not Found | Документ не найден — проверьте идентификаторы и параметры. |
422 Unprocessable Entity | Один из параметров некорректен (если в Swagger выбирается пример, ищите нужное поле в описании). |
429 Too Many Requests | Превышен лимит 10 запросов в минуту с одного IP. Подождите минуту. |
5xx | Внутренняя ошибка сервера — повторите запрос позднее или обратитесь в поддержку. |
Подробные сценарии диагностики — в разделе «Ошибки и их решение».
Переход к продуктовому серверу
Когда вы убедились, что тестовый сервер покрывает ваши сценарии, переходите к продуктовому API:
- Базовый URL меняется на
https://v2.gosplan.info. - Все защищённые методы (
/fz44,/fz223,/pprf615) требуют заголовкаapikey— добавьте его в запросы (пример для curl ниже). - Получите ключ через Бота ГосПлан (рекомендуемый способ) или по почте mail@gosplan.info.
- При регистрации через Telegram-бота доступен пробный период 7 дней на продуктовом сервере — можно бесплатно протестировать стабильное окружение и лимиты тарифа.
curl -s -H "apikey: $API_KEY" "https://v2.gosplan.info/fz44/purchases?limit=1"
Что дальше
- Обратитесь к разделу «API-ключ», чтобы получить ключ.
- Изучите руководства по закупкам, контрактам и планам.
- Используйте справочники для кодов регионов, НСИ и других наборов.
- Возникли сложности? Пишите на mail@gosplan.info или пишите в Telegram — контакты на https://gosplan.info/contacts/.