Просмотров: 21360
Дата последнего изменения: 03.03.2017
Дата последнего изменения: 03.03.2017
С версии 12.5.1 модуля socialservices появилась возможность использовать REST API, используя PHP.
Задача: получить список всех событий календаря, добавленных вручную на портале my.bitrix24.ru.
Для этого на my.bitrix24.ru имеется зарегистрированное приложение, от имени которого будут идти запросы:
"CLIENT_ID" => 'planner_app', "CLIENT_SECRET" => 'secret_key', "TITLE" => 'Тестовое приложение', "REDIRECT_URI" => 'http://test.com/bitrix/oauth/oauth_test.php', "SCOPE" => array('user')где:
Request token
). GET запрос по адресу:
http://my.bitrix24.ru/oauth/authorize/?client_id=planner_app&response_type=code&redirect_uri= http%3A%2F%2Ftest.com%2Fbitrix%2Foauth%2Foauth_test.php
где:http://test.com/bitrix/oauth/oauth_test.php?code=xxxxxxxxxxxxxxxxxxxxxxxxxxx
где:request token
(время жизни по умолчанию 30 секунд)$requestCode = $_REQUEST[‘code’];
$objBitrixOAuth = new CSocServBitrixOAuth('planner_app', 'secret_key', 'http://my.bitrix24.ru', 'http://test.com/bitrix/oauth/oauth_test.php', $USER);
$objBitrixOAuth->getEntityOAuth()->setScope(array('calendar', 'task'));
access token
:
$accessToken = $objBitrixOAuth->getAccessToken($requestCode);
$obApp = new CBitrixPHPAppTransport($accessToken, 'http://my.bitrix24.ru'); $arEvents = $obApp->call('calendar.event.get.nearest', array('maxEventsCount' => '5'));
Получим список добавленных вручную задач с помощью batch’а:
$obApp = new CBitrixPHPAppTransport($accessToken, 'http://my.bitrix24.ru'); $arPlannerTasks = array(array('task.planner.getlist', array()), array('task.items.getlist', array('ORDER' => array("ID" => 'desc'), 'FILTER' => array('ID' => '$result[0]')))); $arTasksBatch = $obApp->batch($arPlannerTasks);