<? $data = array( 'token' => "xxxxxxxxxxxxxxx" /* токен */ ); $data['param'] = array("login");/* логин */ $data['method'] = "GetCampaignsList"; /* метод получения списка компаний */ $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data)); curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_setopt($ch, CURLOPT_URL, 'https://api-sandbox.direct.yandex.ru/v4/json/'); $result = curl_exec($ch); $c = json_decode($result,true); /* список компаний */ foreach($c['data'] as $cItem){ $arCompanies[$cItem['CampaignID']] = $cItem; $arCompaniesIDs[] = $cItem['CampaignID']; } /* интервал */ if(strlen($_GET['start'])==0 || strlen($_GET['end'])==0){ $StartDate = '01.'.date('m').'.'.date('Y'); $EndDate = date('d').'.'.date('m').'.'.date('Y'); } else { $StartDate = $_GET['start']; $EndDate = $_GET['end']; } $StartDate_api = substr($StartDate,6,4).'-'.substr($StartDate,3,2).'-'.substr($StartDate,0,2); $EndDate_api = substr($EndDate,6,4).'-'.substr($EndDate,3,2).'-'.substr($EndDate,0,2); $StartDate_unix = strtotime($StartDate.' 00:00'); $EndDate_unix = strtotime($EndDate.' 00:00'); $days_period = ($EndDate_unix - $StartDate_unix) / 3600 / 24 + 1; /* количество дней в интервале */ $data['method'] = "GetSummaryStat"; // $data['param'] = array('CampaignIDS'=>$arCompaniesIDs,'StartDate'=>'2015-06-30','EndDate'=>'2015-07-02','Currency'=>'RUB'); $data['param'] = array('CampaignIDS'=>$arCompaniesIDs,'StartDate'=>$StartDate_api,'EndDate'=>$EndDate_api); $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data)); curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_setopt($ch, CURLOPT_URL, 'https://api-sandbox.direct.yandex.ru/v4/json/'); $result = curl_exec($ch); $c = json_decode($result,true); /* собираем статистику по стоимостям, кликам и показам */ if(!empty($c['data'])){ foreach($c['data'] as $cItem){ $arCompanies[$cItem['CampaignID']]['stat'][] = $cItem; } }
Пример работы с api яндекс директ
Для того, чтобы запустить приложение, работающее на апи яндекс директа, необходимо в первую очередь написать приложение в песочнице я.директа, далее подать заявку на полные права администратору, и если заявка будет одобрена, заменяется ссылка сервера с песочницы на боевой профиль в яндекс директе. Для песочницы необходимо получить авторизационный токен. В примере приведен способ получения списка компаний и его показов, кликов, стоимостей кликов.