Bitrix24 создание лида через API

16845
Алексей,

Данные из любых форм на сайте можно отправлять в Битрикс24, для примера добавим лид в crm с сайта.

Необходимо отправить запрос на создание лида в вашу crm, примерно так:

$crmUrl = 'Адрес CRM'; // https://mycrm.bitrix24.ru/
$login = 'Ваш логин от CRM';
$password = 'Ваш пароль от CRM';

$arParams = array(
	'LOGIN' => $login, // обязательно, логин для доступа к crm
	'PASSWORD' => $password, // обязательно, пароль для доступа к crm
	'TITLE' => 'test' // обязательно, название лида
);
$obHttp = new \Bitrix\Main\Web\HttpClient;
$result = $obHttp->post($crmUrl.'crm/configs/import/lead.php', $arParams);
$result = json_decode(str_replace('\'', '"', $result), true);
echo '['.$result['error'].'] '.$result['error_message'];

У пользователя ($login) должны быть права на создание лида с CRM.

Все поля которые можно заполнить при добавлении:

Параметр
Тип
Описание
LOGIN*
String
Логин
PASSWORD*
String
Пароль
TITLE*
String
Название
COMPANY_TITLE
String
Название компании
NAME
String
Имя
LAST_NAME
String
Фамилия
SECOND_NAME
String
Отчество
POST
String
Должность
ADDRESS
String
Адрес
COMMENTS
String
Комментарий
SOURCE_DESCRIPTION
String
Дополнительно об источнике
STATUS_DESCRIPTION
String
Дополнительно о статусе
OPPORTUNITY
Double
Возможная сумма сделки
CURRENCY_ID
String
Валюта
PRODUCT_ID
String
Продукт
SOURCE_ID
String
Источник
STATUS_ID
String
Статус
ASSIGNED_BY_ID
Int
Ответственный
PHONE_WORK
String
Рабочий телефон
PHONE_MOBILE
String
Мобильный телефон
PHONE_FAX
String
Номер факса
PHONE_HOME
String
Домашний телефон
PHONE_PAGER
String
Номер пейджера
PHONE_OTHER
String
Другой телефон
WEB_WORK
String
Корпоративный сайт
WEB_HOME
String
Личная страница
WEB_FACEBOOK
String
Страница Facebook
WEB_LIVEJOURNAL
String
Страница LiveJournal
WEB_TWITTER
String
Микроблог Twitter
WEB_OTHER
String
Другой сайт
EMAIL_WORK
String
Рабочий e-mail
EMAIL_HOME
String
Частный e-mail
EMAIL_OTHER
String
Другой e-mail
IM_SKYPE
String
Контакт Skype
IM_ICQ
String
Контакт ICQ
IM_MSN
String
Контакт MSN/Live!
IM_JABBER
String
Контакт Jabber
IM_OTHER
String
Другой контакт

STATUS_ID – Статусы:

Значение
Название
NEW
Не обработан
ASSIGNED
Назначен ответственный
DETAILS
Уточнение информации
CANNOT_CONTACT
Не удалось связаться
IN_PROCESS
В обработке
ON_HOLD
Обработка приостановлена
RESTORED
Сконвертирован
CONVERTED
Восстановлен
JUNK
Некачественный лид

SOURCE_ID – Источники:

Значение Название
SELF
Свой контакт
PARTNER
Существующий клиент
CALL
Звонок
WEB
Веб-сайт
EMAIL
Электронная почта
CONFERENCE
Конференция
TRADE_SHOW
Выставка
EMPLOYEE
Сотрудник
COMPANY
Кампания
HR
HR - департамент
MAIL
Письмо
OTHER
Другое

CURRENCY_ID – Валюты:

Значение
Название
RUB
Рубль
USD
Доллар США
EUR
Евро

PRODUCT_ID – Продукты:

Значение
Название
PRODUCT_1
1С-Битрикс: Управление сайтом
PRODUCT_2
1С-Битрикс: Корпоративный портал
OTHER
Другое

Помимо основных полей, у лида могу присутствовать дополнительные пользовательские поля, созданные администратором сайта. Их вы тоже можете передать из формы.

Опубликовано 6 Декабря 2016 | Обновлено 24 Мая 2020
Битрикс24, API, разработчику
Комментарии
создание лида через API Bitrix24 без 1С-Битрикс
16 Май 2020
Как выполнить API без 1С-Битрикс "управления сайтом" - например у меня есть свой сайт самописный или "лендинг" как через апи на свой bitrix24 отправить лид
Алексей
Алексей
16 Май 2020
В примере используется метод битрикс \Bitrix\Main\Web\HttpClient для отправки запроса. Вот его надо заменить.
Вам нужно отправлять запрос с помощь curl или через file_get_contents с потоком для отправки POST
Мартин
15 Май 2020
Здравствуйте, скажите пожалуйста как сделать чтоб не ругался на 10 строку кода и нужны ли дополнительные подключения к Битрикс для сайта который не связан с битрикс24
Алексей
Алексей
15 Май 2020
Мартин, а как ругается то хоть? Выполнил код в админке /bitrix/admin/php_command_line.php, работает.
Артемий
14 Апр 2020
Доброго Вам!
А как сделать чтобы в система присылала уведомление о лидах?
Если создать форму через систему и вставить код то система просто орёт, а о поступлении лидов через rest вообще тишина.
Извините что не по теме, а можно ответственного назначить за все новые ллиды?
Алексей
Алексей
14 Апр 2020
Артемий, добрый день. Я, честно, не спец по Б24 и не смогу подсказать. Может кто из посетителей сайта заглянет как-нибудь и даст ответ.
Артемий
15 Апр 2020
Алексей, спасибо за ответ.
Я думал может если лиду указать какой то статус то сработают уведомления, попробовал реализовать через STATUS_ID но без толку.
Сергей
22 Апр 2020
Артемий, Это лучше реализовывать встроенным бизнес процессом. Если Вам нужна помощь с этим, вы можете написать на s.petrichenko@lightcone.business и я с радостью проконсультирую вас
Константин
7 Май 2020
Артемий, здравствуйте. Такая же проблема. Подскажите удалось ли ее как то решить?
Василий
6 Апр 2020
а можно ли аналогичным образом добавить контакт?
Алексей
Алексей
6 Апр 2020
Василий, можно попробовать указать уникальный источник для лидов, добавленных через апи и по этому источнику автоматически конвертировать лид в контакт. Не спец по Б24, но предполагаю что это возможно.
Алексей
9 Фев 2020
А данный способ может удалить лид. вернуть ID добавленного лида и далее его удалить? Или тут поможет только REST API?
Алексей
Алексей
9 Фев 2020
Алексей, нет, только добавить
Игорь
16 Ноя 2019
Как сделку под созданый лид поместить в нужную воронку и этап?
Алексей
Алексей
16 Ноя 2019
Игорь, это уже внутри портала надо делать, как именно, не подскажу,  не спец в б24
Александр
10 Окт 2019
Здравствуйте! При попытке получения токена по адресу - https://oauth.bitrix.info/oauth/token/  я получаю ошибку {"error":"wrong_client"}. ВОт список параметров которые я передаю -
'grant_type' => 'authorization_code',
'clent_id' => '',
'client_secret' => ,
'code' => ''

Приложения в кабинете создать и ключи скопировал правильно
Алексей
Алексей
10 Окт 2019
Александр, добрый день. Для создания лида авторизация и ключи не требуются. Только логин/пароль от вашей crm.
Vitalii
21 Фев 2020
Александр, I used POST method instead of GET and that was my problem
Артем
30 Авг 2019
Здравствуйте! Никак не могу разобраться STATUS_ID может быть кастомный? Не из перечисленного вами выше списка? Если да то где посмотреть его ID? Статусы были из запросы были созданы для меня попросили поправить.
Алексей
Алексей
30 Авг 2019
Артем, добрый день. На странице создания лида /crm/lead/details/0/ выберете нужный статус в выпадающем списке и в исходном коде в скрытом инпуте [name="STATUS_ID"] будет ID этого статуса. http://joxi.ru/Vm65vL8U4QpO7r Где посмотреть более удобным способом я не знаю.
Станислав
27 Июл 2019
Алексей, возможно у Вас заказать разработку?
Алексей
Алексей
27 Июл 2019
Станислав, напишите мне на электронную почту, budagovalexey@gmail.com
Дмитрий
26 Июл 2019
Пытаюсь создать лид - выдает ошибку:
Не введено значение обязательного поля "Источник"

Хотя так передаю:
$arParams = array(
    'LOGIN' => $login, // обязательно, логин для доступа к crm
    'PASSWORD' => $password, // обязательно, пароль
.........
    'SOURCE_ID' => 'WEB',
    'SOURCE_DESCRIPTION' => 'http://site.ru'
);
Алексей
Алексей
26 Июл 2019
Дмитрий, Проверьте что бы тут https://вашпортал.bitrix24.ru/crm/configs/status/ был источник с кодом WEB. Сами SOURCE_ID можно посмотреть в форме добавления лида/контакта в html коде http://joxi.ru/52aN8bPfEBREJA. Если такой источник "WEB" есть, то не знаю в чем проблема, обратитесь в тех. поддержку 1С-Битрикс
Алексей
12 Июл 2019
Здравствуйте! Скажите пожалуйста, можно ли интегрировать ICQ и Bitrix24?
Алексей
Алексей
18 Июл 2019
Алексей, Добрый день. Честно говоря не знаю. Попробуйте узнать у тех. поддержки Битрикс24.
Екатерина
31 Май 2019
Здравствуйте!
А как прикрепить к лиду файл с сайта, если есть ссылка на него? Свойства типа файл у лида есть.
Алексей
Алексей
3 Июн 2019
Екатерина, добрый день. Если не ошибаюсь, сам файл прикрепить нельзя, только ссылку на него
Sergey
29 Май 2019
Добрый день, пытаюсь реализовать автоматическое обновление токкена bitrix24 node.js, подскажите  пожалуйста как Адекватно реализовать данную процедуру ?
Алексей
Алексей
3 Июн 2019
Sergey, Добрый день, к сожалению, не подскажу, я не специалист в этом.
Андрей Николаевич
21 Ноя 2018
Перепутали описания SOURCE_DESCRIPTION и STATUS_DESCRIPTION
Алексей
Алексей
21 Ноя 2018
Андрей Николаевич, поправил, спасибо
Авпал
7 Ноя 2018
Добрый день. Нужно получить данные по задаче. В частности, по чек листу. Нашел в api метод, там есть даже пример, но как его использовать не пойму. Как организовать авторизацию и запрос на сервер.
Алексей
Алексей
7 Ноя 2018
Авпал, добрый день. Не подскажу, я не спец по Б24.
Sergo
14 Июн 2018
забыли указать: к коробочной версии
Алексей
Алексей
15 Июн 2018
Sergo, у меня есть только облачная версия, поэтому пример для неё.
Максим
18 Мар 2018
Интересно лид вроде добавляется, а оповещения в виде пуш или сообщения на почту нету
Алексей
Алексей
18 Мар 2018
Максим, напишите в тех. поддержку Битрикс24, там подскажут по уведомлениям.
Maks
17 Мар 2018
Можете дать пример как использовать PRODUCT_ID в поле формы и как передать. Возможно дадите ссылку с примером. По остальным полям все получилось, а это поле не могу одолеть.
Я пробовал вот так:
<input type="radio" name="DATA[LEAD_PRODUCT]" value="5" class="f1-first-product form-control" id="f1-first-product">

И потом в цикле пихал номер товара, но не получилось, хотя с другими полями все ок.
Алексей
Алексей
18 Мар 2018
Maks, примера, к сожалению, нет. Обратите внимание что поле называется PRODUCT_ID, а не LEAD_PRODUCT (как в вашей форме). Значение данного поля должно быть ID продукта внутри CRM Битрикс24.
Александр
22 Фев 2018
У меня форма работает через ajax и обрабатывается в файле /actions/form.php
Если я вставляю туда этот код не чего не работает. Пробовал через функцию запускать , тоже самое не работает . Работает только если с кнопки формы убрать preventDefault(). И после проверяю isset($_POST['submit']) запуск функции.
Как можно реализовать это? всю голову поломал. Или я не то делаю?! Недавно только начал дело с bitrix! Заранее Спасибо
Алексей
Алексей
22 Фев 2018
Александр, в файле /actions/form.php должно быть подключено ядро битрикс (пролог и эпилог, для работы методов класса CHTTP). В коде файла, после валидации всех POST данных, уже делайте запрос к api Битрикс24. Нового ничего Вам сказать не могу, напишите хоть, что за ошибка возникает.
Александр
22 Фев 2018
Алексей Будагов, Благадарю
Дима
7 Фев 2018
Class 'CHTTP' not found это что такое ?
Алексей
Алексей
7 Фев 2018
Дима, похоже что не подключено ядро 1С-Битрикс на странице.
Игорь
6 Мар 2018
Алексей Будагов, а как подключить ядро?
Алексей
Алексей
6 Мар 2018
Игорь,
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
#код
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_after.php");
Алексей
Алексей
6 Мар 2018
Дима, еще можно использовать новый метод $obHttp = new \Bitrix\Main\Web\HttpClient;
Сергей
25 Янв 2018
А можно как-то файлы mp3 прикреплять из внешней системы вместе с лидом?
Алексей
Алексей
25 Янв 2018
Сергей, в комментарий "COMMENTS" ссылку если только закинуть)
Алексей
Алексей
22 Фев 2018
Сергей, еще можно создать пользовательское свойство в CRM и по коду этого свойства заполнять его из формы на сайте.
Тимоха
28 Дек 2017
А как создать лид с товарами?
Алексей
Алексей
28 Дек 2017
Тимоха, возможно вам нужно поле "PRODUCT_ID"?
Денис
23 Мар 2018
Алексей Будагов, Скиньте пожалуйста пример, как должен выглядеть код данной переменной. У меня созданы товары, передаю значение в лид, но товар не появляется.
Алексей
Алексей
23 Мар 2018
Денис, какое значение передаете? ID товара? Примера у меня нет, я не пробовал передавать товар. Напишите в тех. поддержку 1С-Битрикс, они подскажут, если не работает.
Сергей
20 Апр 2017
Только пытаюсь разобраться с АПИ битрикс. Голова пухнет все больше и больше. Вижу что ваш пример самый внятный. Но пока он у меня не сработал. И вопрос, а ключ приложения не нужен?
Алексей
Алексей
20 Апр 2017
Сергей, нет, этот код работает напрямую, без приложения. На сайте под управлением 1С-Битрикс добавляете код из статьи, заполняя первые 3 переменные своими данными, и после выполнения скрипта в Вашей CRM Битрикс24 будет создан новый лид с названием "test".

Что именно не получилось?