Общее описание
Раздел «ФАС» включает три типа выдачи: Жалобы в ФАС (источник — ЕИС, mode=fasEIS), Результаты жалоб (также mode=fasEIS, но с полями результата) и Реестр дел ФАС (источник — сайт ФАС, mode=fas). Для поиска доступны фильтры по ИНН заказчика/поставщика, номеру закупки и ключевым словам.
Как вызвать
GET /api2.3/export?mode=fasEIS | fas
Раздел «ФАС» включает: реестр жалоб в ЕИС (mode=fasEIS)
и реестр дел ФАС (mode=fas). Ниже — основные
варианты запросов: по ИНН поставщика, ИНН заказчика, номеру закупки и поиску по делам.
GET https://www.tenderguru.ru/api2.3/export?mode=fasEIS&dtype=json&api_code=ВАШ_API_КЛЮЧ
GET https://www.tenderguru.ru/api2.3/export?mode=fasEIS&fasSupplierInn={ИНН_поставщика}&dtype=json&api_code=ВАШ_API_КЛЮЧ
GET https://www.tenderguru.ru/api2.3/export?mode=fasEIS&fasCustomerInn={ИНН_заказчика}&dtype=json&api_code=ВАШ_API_КЛЮЧ
GET https://www.tenderguru.ru/api2.3/export?mode=fasEIS&tend_num={номер_закупки}&complaint_regNumber={реестровый_номер}&dtype=json&api_code=ВАШ_API_КЛЮЧ
GET https://www.tenderguru.ru/api2.3/export?mode=fasEIS&complaintID={номер жалобы}&result=1&dtype=json&api_code=ВАШ_API_КЛЮЧ
GET https://www.tenderguru.ru/api2.3/export?mode=fas&kwords={фраза_или_ИНН}&dtype=json&api_code=ВАШ_API_КЛЮЧ
GET https://www.tenderguru.ru/api2.3/export?mode=fas&id={id_дела}&dtype=json&api_code=ВАШ_API_КЛЮЧ
Песочница вызовов
Соберите запрос — получите URL и выполните. Если браузер блокирует CORS, используйте «Открыть в новой вкладке».
Что в запросе
| Параметр | Тип | Описание |
|---|---|---|
fasCustomerInn | string/int | ИНН заказчика |
fasSupplierInn | string/int | ИНН поставщика |
tend_num | int | Номер закупки (ЕИС) |
complaintID | string | ID жалобы |
complaint_regNumber | string | Реестровый номер жалобы |
dtype | string | xml (по умолчанию) | json |
api_code | string | Ключ доступа (опционально) |
| Параметр | Тип | Описание |
|---|---|---|
id | int | ID дела |
kwords | string | Ключевая фраза или ИНН участника |
dtype | string | xml | json |
api_code | string | Ключ доступа (опционально) |
Что в ответах
Поле, тип, назначение и доступ (бесплатно/по тарифу). Для ФАС все основные поля — бесплатно.
| Поле | Тип | Описание | Доступ |
|---|---|---|---|
purchasePlacingDate | date | Дата размещения закупки | Бесплатно |
applicantRD | string | Реквизиты заявителя/обращения (если заполнено) | Бесплатно |
complaintNumber | string | Номер жалобы | Бесплатно |
complaintID | string | ID жалобы в ЕИС | Бесплатно |
versionNumber | int | Номер версии записи | Бесплатно |
regNum | string | Рег. номер документа жалобы | Бесплатно |
registration_fullname | string | Наименование регистрирующего органа | Бесплатно |
registration_inn | string | ИНН регистрирующего органа | По тарифу |
registration_kpp | string | КПП регистрирующего органа | По тарифу |
purchaseObjectInfo | string | Наименование закупки | Бесплатно |
purchaseNumber | string | Номер закупки (ЕИС) | По тарифу |
supplierName | string | Наименование поставщика | Бесплатно |
supplierInn | int | ИНН поставщика | По тарифу |
text | string | Краткий текст/описание жалобы | По тарифу |
link | url | Ссылка на карточку в ЕИС/источник | По тарифу |
resultFAS | string | Статус/результат рассмотрения (если есть) | Бесплатно |
complaint_indicted_textXML | xml | Текст жалобы в XML | Бесплатно |
date_publ | date | Дата публикации жалобы | Бесплатно |
complaint_indicted_text | string | Текст жалобы (строка) | Бесплатно |
customerInn | int | ИНН заказчика | Бесплатно |
| Поле | Тип | Описание | Доступ |
|---|---|---|---|
checkResultNumber | string | Номер результата проверки ФАС | Бесплатно |
complaintNumber | string | Номер жалобы | Бесплатно |
complaintID | string | ID жалобы | Бесплатно |
regNumber | string | Рег. номер результата/документа | Бесплатно |
docNumber | string | Внутренний номер документа | Бесплатно |
createDate | date | Дата создания записи | Бесплатно |
publishDate | date | Дата публикации результата | Бесплатно |
owner_regNum | string | Рег. номер владельца закупки (заказчика) | Бесплатно |
owner_fullName | string | Полное наименование заказчика | Бесплатно |
owner_INN | string | ИНН заказчика | Бесплатно |
owner_KPP | string | КПП заказчика | Бесплатно |
complaint_regNumber | string | Рег. номер жалобы в ЕИС | Бесплатно |
complaint_publishDate | date | Дата публикации жалобы | Бесплатно |
subject_fullName | string | Полное название заявителя (участника) | Бесплатно |
subject_shortName | string | Краткое название заявителя | Бесплатно |
subject_INN | string | ИНН заявителя | По тарифу |
subject_KPP | string | КПП заявителя | По тарифу |
subject_OKPO | string | ОКПО заявителя | По тарифу |
subject_address | string | Адрес заявителя | По тарифу |
purchaseNumber | string | Номер закупки (ЕИС) | По тарифу |
purchaseCode | string | Код закупки по классификации ЕИС | Бесплатно |
purchaseName | string | Наименование закупки | Бесплатно |
purchasePlacingDate | date | Дата размещения закупки | Бесплатно |
decisionNumber | string | Номер решения ФАС | Бесплатно |
decisionDate | date | Дата решения | Бесплатно |
decisionText | string | Текст решения / резолютивная часть | По тарифу |
attachment_fileName | string | Имя файла приложения к решению | По тарифу |
attachment_docDescription | string | Описание приложения к решению | По тарифу |
attachment_docNumber | string | Номер документа-приложения | По тарифу |
attachment_url | url | Ссылка на скачивание приложения | По тарифу |
complaintResult | string | Результат рассмотрения жалобы | По тарифу |
isGISNR | bool | Признак публикации в ГИС НР | Бесплатно |
printForm_url | url | Ссылка на печатную форму решения | По тарифу |
prescriptionNumber | string | Номер предписания | По тарифу |
prescriptionDate | date | Дата предписания | По тарифу |
prescriptionText | string | Текст предписания | По тарифу |
prescription_attachment_fileName | string | Имя файла приложения к предписанию | По тарифу |
prescription_attachment_docDescription | string | Описание приложения (предписание) | По тарифу |
prescription_attachment_docNumber | string | Номер документа приложения (предписание) | По тарифу |
prescription_attachment_url | url | Ссылка на скачивание приложения к предписанию | По тарифу |
| Поле | Тип | Описание | Доступ |
|---|---|---|---|
id | int | ID дела | Бесплатно |
remote_id | string | ID на источнике (сайт ФАС) | Бесплатно |
name | string | Название дела | Бесплатно |
type | int | Тип документа/дела | Бесплатно |
date | date | Дата документа/дела | Бесплатно |
upr | string | Управление УФАС | Бесплатно |
sphera | string | Сфера | Бесплатно |
delo | string | Номер и название дела | Бесплатно |
procedure_name | string | Наименование процедуры | Бесплатно |
attachment | string | Присоединённый файл (имя/ссылка) | По тарифу |
text | string | Описание | По тарифу |
link | url | Ссылка на источник (сайт ФАС) | По тарифу |
orgXML | xml | Встроенные данные по организациям (XML) | Бесплатно |
Примеры кода
GET /api2.3/export?mode=fasEIS|fas
В примерах ниже мы запрашиваем жалобы в ФАС на поставщика с ИНН
7707083893 через параметр fasSupplierInn.
Если записи найдены, выводим основную информацию по первой жалобе:
номер, номер закупки, заказчика и краткий текст. Ответ API
уже в UTF-8, дополнительные действия с кодировкой не нужны.
curl "https://www.tenderguru.ru/api2.3/export?mode=fasEIS&fasSupplierInn=7707083893&dtype=json&api_code=ВАШ_API_КЛЮЧ"
const params = new URLSearchParams({
mode: "fasEIS",
fasSupplierInn: "7707083893",
dtype: "json",
api_code: "ВАШ_API_КЛЮЧ"
});
const url = "https://www.tenderguru.ru/api2.3/export?" + params.toString();
fetch(url)
.then(response => {
if (!response.ok) {
throw new Error("HTTP " + response.status);
}
// Ответ уже в UTF-8
return response.json();
})
.then(items => {
if (!Array.isArray(items) || items.length === 0) {
console.log("Жалобы в ФАС для этого ИНН не найдены");
return;
}
const first = items[0];
console.log("Номер жалобы:", first.complaintNumber);
console.log("Номер закупки:", first.purchaseNumber);
console.log("Название закупки:", first.purchaseObjectInfo);
console.log("ИНН заказчика:", first.customerInn);
console.log("Дата публикации:", first.date_publ);
})
.catch(console.error);
import requests
url = "https://www.tenderguru.ru/api2.3/export"
params = {
"mode": "fasEIS",
"fasSupplierInn": "7707083893",
"dtype": "json",
"api_code": "ВАШ_API_КЛЮЧ",
}
resp = requests.get(url, params=params)
resp.raise_for_status()
# Ответ уже в UTF-8, encoding вручную не трогаем
items = resp.json()
if not items:
print("Жалобы в ФАС для этого ИНН не найдены")
else:
first = items[0]
print("Номер жалобы:", first.get("complaintNumber"))
print("Номер закупки:", first.get("purchaseNumber"))
print("Название закупки:", first.get("purchaseObjectInfo"))
print("ИНН заказчика:", first.get("customerInn"))
print("ИНН поставщика:", first.get("supplierInn"))
print("Дата публикации:", first.get("date_publ"))
<?php
$baseUrl = 'https://www.tenderguru.ru/api2.3/export';
$params = [
'mode' => 'fasEIS',
'fasSupplierInn'=> '7707083893',
'dtype' => 'json',
'api_code' => 'ВАШ_API_КЛЮЧ',
];
$url = $baseUrl . '?' . http_build_query($params);
$ch = curl_init($url);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 30,
]);
$body = curl_exec($ch);
if ($body === false) {
throw new RuntimeException('Curl error: ' . curl_error($ch));
}
curl_close($ch);
// Ответ уже в UTF-8, никаких mb_convert_encoding не требуется
$data = json_decode($body, true);
if (empty($data)) {
echo "Жалобы в ФАС для этого ИНН не найдены\n";
return;
}
$first = $data[0];
echo "Номер жалобы: {$first['complaintNumber']}\n";
echo "Номер закупки: {$first['purchaseNumber']}\n";
echo "Название закупки: {$first['purchaseObjectInfo']}\n";
echo "ИНН заказчика: {$first['customerInn']}\n";
echo "ИНН поставщика: {$first['supplierInn']}\n";
echo "Дата публикации: {$first['date_publ']}\n";
using System;
using System.Net.Http;
using System.Threading.Tasks;
using System.Text.Json;
using System.Text.Json.Nodes;
class Program
{
static async Task Main()
{
using var client = new HttpClient();
var url = "https://www.tenderguru.ru/api2.3/export" +
"?mode=fasEIS&fasSupplierInn=7707083893" +
"&dtype=json&api_code=ВАШ_API_КЛЮЧ";
var response = await client.GetAsync(url);
response.EnsureSuccessStatusCode();
// HttpClient читает ответ в UTF-8 по умолчанию
var json = await response.Content.ReadAsStringAsync();
var arr = JsonNode.Parse(json)?.AsArray();
if (arr == null || arr.Count == 0)
{
Console.WriteLine("Жалобы в ФАС для этого ИНН не найдены");
return;
}
var first = arr[0];
Console.WriteLine($"Номер жалобы: {first["complaintNumber"]}");
Console.WriteLine($"Номер закупки: {first["purchaseNumber"]}");
Console.WriteLine($"Название закупки: {first["purchaseObjectInfo"]}");
Console.WriteLine($"ИНН заказчика: {first["customerInn"]}");
Console.WriteLine($"ИНН поставщика: {first["supplierInn"]}");
Console.WriteLine($"Дата публикации: {first["date_publ"]}");
}
}
Описание языка поисковых запросов
параметр kwords
Поиск в TenderGuru — морфологический и регистронезависимый. Это значит, что система понимает разные формы слова и не различает заглавные и строчные буквы.
Морфология и регистр
-
При запросе
генераторыбудут найдены такжегенератор,генераторов,генератораи т.д. -
Регистр не имеет значения:
Кирпичикирпич— это один и тот же запрос.
Точная словоформа
Для поиска строго конкретной формы слова перед словом ставится знак
=.
-
=аудит— найдутся только вхождения слова «аудит». -
Формы вроде
аудио,аудитови т.п. в выдачу не попадут.
Логические операторы
| Оператор | Синтаксис | Пример | Что даёт |
|---|---|---|---|
| И (по умолчанию) | пробел | Кирпич шамотный |
Тендеры, где есть и «кирпич», и «шамотный». |
| ИЛИ | | |
щебень|песок |
Тендеры, где есть либо слово «щебень», либо «песок». |
| ИСКЛЮЧЕНИЕ | ! |
смартфон !услуги !связь |
Тендеры, где есть слово «смартфон», но нет слов «услуги» и «связь». |
| СТРОГАЯ фраза | "..." |
"источник бесперебойного питания" |
Все три слова идут подряд в указанном порядке. |
| Группировка | (...) |
(источник бесперебойного питания)|ИБП |
Либо фраза «источник бесперебойного питания» (слова могут идти в любом порядке), либо слово «ИБП». |
Все эти операторы работают в параметре kwords и другим, где поддерживается текстовый поиск.
Ограничения
TenderGuru API может использоваться как внутри организаций (в рамках тарифных планов), так и для внешних приложений и коммерческих сервисов. Ниже описаны базовые принципы.
Использование в рамках тарифов
- При использовании API внутри организации в рамках оплачиваемых тарифов (интеграция в ваши внутренние системы, отчётность, аналитика) жёстких ограничений на количество запросов, как правило, нет.
- Конкретные параметры (ожидаемая нагрузка, объём данных, частота обновления) согласуются при подключении тарифа и могут отличаться для разных клиентов.
Коммерческие приложения и сервисы
- При использовании API для создания внешних сервисов и приложений (порталы, SaaS-решения, мобильные приложения и др.) условия по объёму запросов и ретрансляции данных оговориваются индивидуально.
- Рекомендуется заранее обсудить модель использования, чтобы корректно рассчитать нагрузку и подобрать оптимальный тариф/лицензию.
Высокая нагрузка и технические лимиты
- При аномально высокой активности (существенно превышающей типичные сценарии использования) мы оставляем за собой право временно ограничить скорость обработки запросов (rate limiting), обрабатывать их с задержкой или временно блокировать ключ.
- Такие меры применяются для защиты стабильности сервиса и не направлены на ограничение прав добросовестных пользователей.
- При планировании высокой постоянной нагрузки (интенсивные бэч-выгрузки, массовые сканеры) лучше заранее согласовать параметры работы — это позволит избежать несанкционированных блокировок.
Финальные условия по ограничениям, допустимым сценариям использования, а также по возможным дополнительным правам (кэширование, ретрансляция данных и т.п.) фиксируются в договоре и/или оферте.
Стоимость
Стандарт
12900 за 6 месяцев
19900 за год + 6 по акции
Что включено
- Доступ к тендерам
- Ежедневная рассылка закупок
- API
- Кол-во сотрудников - 2
- Техподдержка
- Мониторинг цен госзакупок
- Контакты организаций
- Отчеты online - 500 строк
Гуру
17900 за 6 месяцев
24900 за год + 6 по акции
Все, что в "Стандарт" и плюс
- Рассылка победителей закупок
- Размещение информации об организации в карточках тендеров и контрактов
- Кол-во сотрудников - 4
- Онлайн ИИ анализ документации Новое
- Отчеты online - 1000 строк
- Персональный менеджер
Корпоративный
140000 за год
Все, что в "Стандарт" и "Гуру" плюс
- Возможность индивидуальной настройки рассылки для разных филиалов/представительств/сотрудников
- Кастомизированный API
- Кол-во сотрудников (рабочих мест) - 30
Бесплатно
0
Что включено
- Рассылка новых тендеров
- Анонсы закупок
- Отчеты online - 30 строк
Позволит оценить функционал нашего портала