@inviziblll

Как через вебхук вывести список элементов инфоблока?

У меня коробочная версия Битрикс24 необходимо на другом сайте который работает на БУС вывести данные по спискам из Битрикс24.

Как из коробочной версии Битрикс24 через вебхук вывести список элементов инфоблока в PHP коде стороннего сайта?

В документации есть только пример на JS как вывести элементы инфоблока через REST API https://dev.1c-bitrix.ru/rest_help/lists/lists/lis...

Я попытался вывести элементы инфоблока из Битрикс24 через вебхук. На стороне Битрикс24 создал вебхук и указал нужные права на то чтобы выводить Списки (lists) и CRM и пользователей (users).

6108180e29b4c683396002.png

В коде я обращаюсь на адрес веб-хука где указываю метод lists.get но возвращаемся массив где указана ошибка ERROR_METHOD_NOT_FOUND

Мой PHP код на стороне БУС
$queryUrl = 'https://мой адрес/rest/27/wu939soul79dnt6h/';
$queryData = http_build_query(array(
		'IBLOCK_TYPE_ID'=>'lists',
	    'IBLOCK_ID'=>'25'
	));
	
	$rest = 'lists.get';	
	$queryUrl = $queryUrl.$rest;	
	$curl = curl_init();	
	curl_setopt_array($curl, array(
		CURLOPT_SSL_VERIFYPEER => 0,
		CURLOPT_POST => 1,
		CURLOPT_HEADER => 0,
		CURLOPT_RETURNTRANSFER => 1,
		CURLOPT_URL => $queryUrl,
		CURLOPT_POSTFIELDS => $queryData,
	));
	
	$result = curl_exec($curl);	
	curl_close($curl);	
	$result = json_decode($result, true);	

var_dump($result);


Что я делаю не правильно?

Я предположил что код будет работать так как ранее я написал похожий код для получения данных по отдельному лиду из Битрикс24, данные приходят все работает нормально.

Вот работающий код где я через вебхук получаю данные по лиду из Битриикс24 указывая параметр ID нужного лида
$queryUrl = 'https://мой адрес/rest/27/wu939soul79dnt6h/';
$data = [];
$data['ID'] = 595;

// Получаем поля необходимого лида по айди
	$queryData = http_build_query(array(
		'id' => $data['ID']
	));
	
	$rest = 'crm.lead.get';	
	$queryUrl = $queryUrl.$rest;	
	$curl = curl_init();	
	curl_setopt_array($curl, array(
		CURLOPT_SSL_VERIFYPEER => 0,
		CURLOPT_POST => 1,
		CURLOPT_HEADER => 0,
		CURLOPT_RETURNTRANSFER => 1,
		CURLOPT_URL => $queryUrl,
		CURLOPT_POSTFIELDS => $queryData,
	));
	
	$result = curl_exec($curl);	
	curl_close($curl);	
	$result = json_decode($result, true);	

var_dump($result);
  • Вопрос задан
  • 1067 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы