Syntax highlighting of Home

= Введение =

== О проекте ==

Проект '''ГосПлан''' представляется собой набор сервисов, направленных на интеграцию с государственными закупками. Проект запущен в 2018м году. Базовыми публичными сервисами проекта '''ГосПлан''' являются веб-сервисы, которые предоставляют API к документам Единой информационной системе в сфере закупок (ЕИС Закупки, [[https://zakupki.gov.ru]]). Данный ресурс описывает вторую версию API, который запущен в 2025 году. Информация об API v1 приведена [[ v1 | здесь ]].

== Возможности API ==

Сервис предоставляет следующие данные:

 . по '''44-ФЗ''': планы-графики закупок, закупки (извещения, протоколы и др. документы), процедуры заключения контрактов, контракты. Начало загрузки документов - 01.01.2024.
 . по '''223-ФЗ''': планы закупок, закупки (извещения, протоколы и др. документы), договоры. Начало загрузки документов - 01.10.2024.
 . по '''ПП РФ 615''': закупки (извещения, протоколы и др. документы), контракты. Начало загрузки документов - 01.01.2025.

Ориентировочный период хранения данных - '''3 года'''.

== Ресурсы сервиса ==

 . '''Продуктовый сервер''' - [[https://v2.gosplan.info]]. Сервер предоставляет данные по REST протоколу. Для получения данных требуется API ключ (c 01.07.2025).
 . '''Тестовый сервер''' - [[https://v2test.gosplan.info]]. Почти то же самое, что и продуктовый сервер с количественными ограничениями по запросам. Для получения данных API ключ '''НЕ''' требуется. Рекомендуется использовать для демонстрационных целей, быстрого старта, работы в swagger  [[ https://swagger.gosplan.info ]].
 . '''Описание API методов''' - [[ https://swagger.gosplan.info ]]. Содержит подробное описание API методов, а также историю изменений.
 . '''Статусная страница''' - [[https://stats.uptimerobot.com/FCAeTgC4tf]] страница с состоянием доступности основных сервисов.

== Архитектура сервиса ==

Сервис предоставляет JSON-данные по REST-протоколу и реализован на ''Python3'' с использованием [[https://fastapi.tiangolo.com/|FastAPI]]. API обеспечивает обработку входящих запросов с высокой производительностью и удобным документированием. Запросы обрабатываются синхронно, а выполнение сложных вычислений делегируется фоновым процессам.

Для хранения данных используется [[https://www.mongodb.com/|MongoDB]], выступающая в роли основного хранилища. В базе данных содержатся как оперативные, так и исторические данные, а также метаданные для внутренней обработки.

В качестве промежуточного хранилища для больших объемов данных, временных файлов и резервных копий используется [[https://aws.amazon.com/s3/|S3-совместимое хранилище]]. Оно применяется для обмена данными между сервисами, а также для хранения подготовленных файлов перед загрузкой в основную базу данных.

Фоновая обработка данных, включая их загрузку, очистку и агрегацию, управляется системой [[https://airflow.apache.org/|Apache Airflow]], которая организует выполнение задач в виде DAG (Directed Acyclic Graph).

Развертывание и обновление сервисов осуществляется с помощью [[https://argo-cd.readthedocs.io/|ArgoCD]], который отслеживает изменения в репозитории конфигураций и автоматически применяет их в [[https://kubernetes.io/|Kubernetes]]-кластере. Это позволяет реализовать GitOps-подход и обеспечить предсказуемость обновлений. 

Для обеспечения отказоустойчивости в случае инфраструктурных сбоев у основного провайдера сервис поддерживает Disaster Recovery (DR) окружение. DR-окружение разворачивается в альтернативном центре обработки данных (ЦОД) и синхронизируется с основной системой. При возникновении проблем с доступностью основной инфраструктуры выполняется автоматическое переключение на резервный контур с минимальным временем простоя.

== Полезные ссылки ==

 . вики - [[https://wiki.gosplan.info]]
 . описание API 44-ФЗ в формате swagger - [[https://swagger.gosplan.info/?urls.primaryName=44-ФЗ]]
 . описание API 223-ФЗ в формате swagger - [[https://swagger.gosplan.info/?urls.primaryName=223-ФЗ]]
 . описание API ПП РФ 615 в формате swagger  - [[https://swagger.gosplan.info/?urls.primaryName=ППРФ-615]]

= Начало работы =

== Регистрация и аутентификация ==

В настоящее время регистрация и аутентификация к продуктовому серверу [[ https://v2.gosplan.info ]] не требуется. Доступ к API предоставляется на свободной основе до '''01.07.2025'''. После окончания бесплатного периода доступ будет осуществляться по '''API ключу''.

{{{#!wiki note
Информация о получении и использовании API ключа будет опубликована в ближайшее время.
}}}

Доступ к тестовому серверу [[ https://v2test.gosplan.info ]] подразумевается без регистрации и аутентификации, но с ограничениями по количеству запросов.

== Быстрый старт ==

Здесь вы найдете всю необходимую информацию для того, чтобы начать работу с '''ГосПлан API v2''' за считанные минуты. Подготовлены простые инструкции, которые помогут вам протестировать функциональность сервиса через командную строку, язык программирования python, а так же с использованием Swagger — удобного инструмента для взаимодействия с API.

Для выполнения запросов не требуется регистрация и аутентификация.

Быстрый старт для:

 . [[docs/quickstart-curl | Командная строка]]
 . [[docs/quickstart-python | Python]]
 . [[docs/quickstart-swagger | Swagger ]]

== Лимиты и тарифы ==

=== Продуктовый сервер ===

На текущий момент доступен '''единственный тарифный план''' для продуктового сервера [[ https://v2.gosplan.info ]], подходящий для большинства пользователей. Тариф начнет действовать с 01 июля 2025 года.

'''Базовый тариф'''

 * '''Стоимость:''' 3 000 ₽/месяц
 * '''Лимит запросов:''' 6 000 запросов за 10 минут
 * '''Тип лимита:''' Оконное скользящее ограничение (rolling window)
 * '''Доп. запросы:''' Не предусмотрены (превышение лимита приводит к ошибке `429 Too Many Requests`)


'''Как считается лимит?'''

Система отслеживает количество запросов за '''последние 10 минут'''. Например:
 * Если в `12:00` вы отправили 6 000 запросов, то новые запросы будут отклоняться до `12:10`
 * В `12:01` учитываются только запросы, сделанные с `11:51` до `12:01`

=== Тестовый сервер ===

Доступ к тестовому серверу [[https://v2test.gosplan.info]] с учетом следующих условий:

 * '''Стоимость:''' бесплатно
 * '''Лимит запросов:''' 10 запросов за 1 минуту
 * '''Тип лимита:''' Оконное скользящее ограничение (rolling window)
 * '''Доп. запросы:''' Не предусмотрены (превышение лимита приводит к ошибке `429 Too Many Requests`)

Тариф начнет действовать с 01 июля 2025 года.

Лимит рассчитывается аналогичным образом.

= Документация API =

== Инструкции и руководства ==

 . [[ docs/howto-xsd | Схемы документов ]]
 . [[ docs/howto-history | Исторические данные ]]


== Типы документов ==

 . [[ docs/tenderplans | Планы-графики ]]
 . [[ docs/purchases | Закупки ]]
 . [[ docs/procedures | Процедуры заключения контрактов ]]
 . [[ docs/contracts | Контракты ]]

== Справочники ==

Раздел содержит полезные справочные данные, которые используются в API

 . [[docs/regions-kladr | Коды регионов по КЛАДР]]
 . [[docs/okpd2 | ОКПД2 ]]
 . [[docs/ktru | КТРУ ]]
 . [[docs/nsiSpecialPurchases2020 | Типы особых закупок ]]


= Частые вопросы =

'''Сколько стоит?'''

Стоимость доступа и ограничения на запросы указаны в разделе ''Лимиты и тарифы''

'''Когда загружаются новые данные?'''

Сервис загружает данные из ЕИС ежедневно с 03-00 МСК до 09-00 МСК за предыдущий день. Если документ опубликован на сайте [[ https://zakupki.gov.ru ]] условного ''сегодня'', то в API этот документ появится условно ''завтра'' после 09-00 МСК. Обозначенный интервал времени разделяется на временные слоты, в которых загружаются различные типы документов.

||Интервал времени, МСК ||  Раздел ||
=============================
|| 03:00 - 04:15 || Закупки по 44-ФЗ  ||
|| 04:15 - 05:30 || Контракты по 44-ФЗ  ||
|| 05:30 - 05:45 || Планы-графики по 44-ФЗ  ||
|| 05:45 - 07:00 || Контрактные процедуры по 44-ФЗ  ||
|| 07:00 - 08:15 || Закупки по 223-ФЗ  ||
|| 08:15 - 08:30 || Договоры по 223-ФЗ  ||
|| 08:30 - 08:45 || Планы закупок по 223-ФЗ  ||
|| 08:45 - 09:00 || Закупки и контракты по ПП РФ 615  ||

'''Почему мой документ не найден?'''

Документ может отсутствовать по следующим причинам:

 1. Некорректный идентификатор документа, который передается в запросе
 1. Документ еще не загружен в API (см. вопрос ''Когда загружаются данные?'')
 1. Документ не попадает под дату начала загрузки и глубину хранения (подробно в разделе ''Введение'')
 1. Ошибка в работе сервиса. Свяжитесь с нами, контакты ниже.

'''А если лимитов тарифов не достаточно?'''

Опишите ваши потребности по координатам в разделе ''Контакты''. Ваш вопрос будет проработан и предложены варианты решений.

'''Можно ли запросить изменение API?'''

Запросы на изменения API рассматриваются в порядке очередности и с  учетом наличия свободных ресурсов. Приоритет отдается клиентам с оплаченными тарифами.

= Юридическая информация =

 . [[ legal/API-Usage-Agreement-v2 | Соглашение об использовании API ]]
 . [[ legal/requisites | Реквизиты ]]


= Контакты =

По всем вопросам работы сервисов '''ГосПлан API v2''' обращайтесь по контактным данным ниже:
 . почта - [[mailto:apiv2@gosplan.info | apiv2@gosplan.info]]
 . телеграмм - [[ https://t.me/gosplan_project ]]