API для получения заявок с сайта
AddStudyRequest: Добавление заявки на обучение
Ни один из приведённых в примере параметров не является обязательным.
Принимается как GET-, так и POST-запрос. GET желательно использовать только для JSONP.
POST-запрос можно отправлять как в обычном (x-www-form-urlencoded), так и в JSON-формате (однако extraFields при использовании x-www-form-urlencoded всё равно необходимо отправлять в JSON, например:
extraFields: JSON.stringify({customField1: "CustomValue1"})).
Если UTM-метки содержатся в обратной ссылке (HTTP-заголовок Referer), то добавлять их в качестве параметров нет необходимости. Однако если таковые параметры есть, они сильнее соответствующих параметров из ссылки.
Также имеется возможность указывать дополнительные произвольные параметры. Они будут сохранены в базе данных и будут отображены в CRM в подсказке при наведении мышью на дату заявки.
Вместе с данными заявки CRM сохраняет (и отображает) также и значение HTTP-заголовка Referer. Если AddStudyRequest вызывается из клиентского кода (js), то браузер сам передаст этот заголовок. Если же из серверного, то не забудьте передать с запросом и заголовок Referer, если в том есть необходимость. На PHP+CURL это можно сделать вот так:
curl_setopt($curlDecriptor, CURLOPT_REFERER, $refererValue);
Пример POST-вызова с использованием jQuery
$.ajax({
url: "http://schooldomain.t8s.ru/Api/V2/AddStudyRequest",
data: JSON.stringify({
id: null, // Идентификатор заявки (используется только для обновления существующей заявки)
fullName: "Иванов Иван Иванович",
eMail: "ivanov@mail.ru",
phone: "+712312312312",
birthday: "1984-02-25",
agentFullName: "ФИО конт. лица",
agentEMail: "ivanov-father@mail.ru",
agentPhone: "+72342342323",
discipline: "Английский",
level: "Средний",
maturity: "Дошкольники",
location: "Тверь",
office: "Главный филиал",
extraFields: { // Пользовательские поля (при подтверждении заявки переносятся в лида/ученика, но только те поля, что есть в настройках)
customField1: "CustomValue1",
customField2: "True"
},
teacher: "Петров Пётр Петрович",
beginDate: "17.03",
endDate: "20.04",
weekdays: "ср/чт",
beginTime: "15:30",
endTime: "16:10",
edUnitId: null, // Идентификатор уч. единицы
type: "Заявка на обучение", // Тип заявки
description: "Примечание к заявке",
utm_source: "Yandex-Direct", // UTM-метка «Рекламная система»
utm_medium: "CPC", // UTM-метка «Тип трафика»
utm_campaign: "Первая рекламная кампания", // UTM-метка «Обозначение рекламной кампании»
utm_term: "Ключевое слово", // UTM-метка «Условие поиска кампании»
utm_content: "red-button", // UTM-метка «Содержание кампании»
extraData: "someData", // Произвольные пользовательские данные, доступные при экспорте заявок
deleted: false, // Если true, заявка создаётся сразу как удалённая и помещается в архив заявок
roistat: getCookie("roistat_visit"), // Для интеграции с системой Roistat (ф-ция «getCookie» реализуется самостоятельно)
...
}),
contentType: "application/json;charset=utf-8",
type: "post",
success: function (result) {
if (result.Error) alert("Ошибка: " + result.Error);
else alert("Успешно: " + result.Id);
},
error: function (jqXhr) {
try {
alert("Ошибка: " + $.parseJSON(jqXhr.responseText).Error);
} catch (e) {
alert("Ошибка: " + jqXhr.statusText + " (" + jqXhr.readyState + ", " + jqXhr.status + ", " + jqXhr.responseText + ")");
}
}
});