Создание API для связи сайты + АМО

10 000 руб. за проект
02 марта 2022, 18:24 • 2 отклика • 24 просмотра
Описание для договора API с формы обратной связи
Добавить функционал API запросов в программный код (backend).
Backend – программа написанная на языке программирования Python с использованием фреймворка Django. Располагается на сервере по адресу https://app.lifeguards.space. Программный код запускается по средствам Docker контейнеров. Основная база PostgreSQL.

После доработки в программе должны появится справочник сайтов и дополнительные API запросы для передачи сайтами данных с форм обратной связи в сущности АМО (сделки и клиент). Сайты клиенты, использующие API запросы должны быть прописаны в Справочнике (Сайты) и иметь свой уникальный ключ на исполнение запроса. Отдельно уточню что сайтов будет около 200 и все они могут одновременно отправлять API запросы на создание сделки с формы обратной связи.
Справочник (Сайты) должен хранить информацию о
Название – наименование сайта в системе (backend);
Тег – метка которая будет передан в АМО для маркировки сделки (тег сделки), тегов может быть несколько штук.
API ключ – ключ, который передается программисту сайта для авторизации запросов при передаче данных с сайта в API запросе. Ключ генерирует система самостоятельно. Рядом с полем API ключ есть кнопка обновить ключ, после нажатия будет сгенерирован новый уникальный ключ.
Источник – это текстовое поле, данные из поля подставляются в АМО при создании сделки в поле источник. Поле источник по ID должно быть сопоставлено с полем в АМО в справочнике ‘Сопоставление amo полей’ (картинка 1 )

Запрос должен иметь следующую форму
Текстовое поле, Адрес сайта (возможно страница источник обращения)
Например: https://anonim-alco.ru/ или anonim-alco.ru
Текстовое поле, Имя (будет или фио или просто имя)
Например: Иван или Иванов Иван Иванович
Текстовое поле, Телефон (разного формата, так как страны СНГ) Например: +7(909)434-35-45, +375 17 298ХХХ
Текстовое поле, Почта (редко, но бывает поле с email)
Текстовое поле, Сообщение (из текстового поля с произвольной информацией от пользователя)
Текстовое поле, Название услуги (обратный звонок, запись на консультацию, итд.)
Текстовое поле, Дополнительно (сюда будет отправляться вся инфа из форм-конструкторов, например консультация врача: сколько лет больному, сколько употребляет и прочее).
Массивом или каждый отдельно как текстовое поле, UTM – это УТМ метки которые передаются через запрос и записываются в соответствующие поля в АМО при создании сделки. Поля UTM_SOURCE, UTM_MEDIUM, UTM_CAMPAIGN, UTM_CONTENT, UTM_TERM по ID должны быть сопоставлено с полями в АМО в справочнике ‘Сопоставление amo полей’ (картинка 1 )
Логика работы написанного модуля:
Сайт по API с авторизацией (по ключу из справочника сайтов) передает данные в backend, полученные данные backend проверяет на уникальность клиента (если нет создать нового) и уникальность сделки. Уникальность сделки, если есть открытая сделка по данному клиенту от добавить запрос как примечание и создать задачу на перезвон клиенту (задачу создать на того, за кем закреплена открытая сделка), если открытых сделок нет, создать новую и назначить задачу на перезвон клиенту.
Все полученные данные из API, backend записывает в соответствующие поля и дублирует в примечание в сделки АМО.

Все задачи и сделки назначать на руководителя. Руководителя отдела назначается в справочнике ‘Пользователь Amo’. На каждую воронку может быть назначен только один руководитель из списка пользователей амо (картинка 2).


цепочка действий будет примерно такая
клиент заходит на сайт -> заполняет форму обратной связи и при нажатии отправить, сайт по API с авторизацией передает данные в backend -> backend получает данные о клиенте проверяет что это новый клиент, проверяет на дубли и после создает сделку или дополняет в существующей сделке примечание что был запрос.

Файлы
Отзывы
как всегда, все супер
~ 2 года назад
R50 8320fdaa0e13951f26260459d10bc65a
Фрилансер
 
~ 2 года назад