ТЗ: интеграция amoCRM → Яндекс Диск
Ищу разработчика с опытом amoCRM API/Webhook, Python/FastAPI и Yandex Disk API.
Необходимо разработать надёжную интеграцию между amoCRM и Яндекс Диском.
1. Создание папки при создании сделки
При создании новой сделки в amoCRM создавать папку:
/Дела в работе/{Название сделки}
Название папки должно точно совпадать с названием сделки в amoCRM.
Если такая папка уже существует — повторно её не создавать.
2. Перевод сделки в «Возврат страховки досудебный»
Отслеживать перевод существующей сделки из:
Воронка продаж — ID 6970574
Продажи ИНСТ — ID 11239058
в:
Возврат страховки досудебный — ID 6970694
При таком переходе необходимо создать новую папку с названием сделки:
/Дела в работе/{Название сделки}
Важно: при этом не нужно перемещать уже существующую папку — именно создать папку в «Дела в работе».
Если папка уже существует, повторно её не создавать.
3. Завершение сделки
При переходе сделки в статусы:
«Успешно реализовано»
«Закрыто без результата»
соответствующую папку необходимо переместить:
/Дела в работе/{Название сделки}
→
/Завершенные дела/{Название сделки}
Если папка уже находится в «Завершенные дела», повторное перемещение выполнять не нужно.
4. Повторные Webhook
Один переход в amoCRM может вызвать несколько одинаковых webhook-событий.
Необходимо реализовать идемпотентную обработку:
не создавать дубли папок;
не выдавать ошибку при повторном событии;
не перемещать папку повторно;
корректно обрабатывать повторную доставку одного webhook.
5. Работа с amoCRM
Сервис должен:
Получать webhook от amoCRM.
Определять ID сделки.
При необходимости получать актуальные данные сделки через amoCRM API.
Получать название сделки.
Определять воронку/статус.
Выполнять соответствующее действие с папкой на Яндекс Диске.
6. Работа с Яндекс Диском
Использовать Yandex Disk API.
Необходимые операции:
создание папки;
проверка существования;
перемещение папки;
обработка уже существующей папки;
обработка уже выполненного перемещения.
7. Ошибки и логирование
Предусмотреть обработку:
повторных webhook;
отсутствия сделки;
отсутствия папки;
уже выполненного действия;
ошибок amoCRM API;
ошибок Yandex Disk API;
ошибок авторизации.
Ошибки должны записываться в понятный лог.
8. Технические требования
Предпочтительно:
Python 3.x
FastAPI
REST API
Webhook
amoCRM API
Yandex Disk API
Архитектура должна позволять в дальнейшем добавлять новые воронки, статусы и действия без полной переработки системы.
9. Что необходимо передать
полностью рабочий исходный код;
настроенную интеграцию;
настройку webhook;
безопасное хранение токенов/ключей через переменные окружения;
инструкцию по запуску и обслуживанию;
инструкцию по просмотру логов;
инструкцию по изменению ID воронок/статусов;
результаты тестирования.
10. Обязательно протестировать:
Создание новой сделки → создание папки в «Дела в работе».
Воронка продаж (6970574) → Возврат страховки досудебный (6970694) → создание папки.
Продажи ИНСТ (11239058) → Возврат страховки досудебный (6970694) → создание папки.
«Успешно реализовано» → перемещение папки в «Завершенные дела».
«Закрыто без результата» → перемещение папки в «Завершенные дела».
Повторный одинаковый webhook → отсутствие дублей и ошибок.
В отклике прошу указать:
опыт с amoCRM API/Webhook;
опыт с Yandex Disk API;
опыт Python/FastAPI;
как будет реализована защита от повторных webhook;
стоимость и срок;
какие доступы понадобятся;
примеры аналогичных интеграций.
Исходный код и все разработанные компоненты должны быть переданы заказчику.
Опубликован 30.09.2026 в 12:56