Londeren
@Londeren

Яндекс.Метрика: почему не создаются цели через API?

Мануал курил.
Код следующий:

<?php

$params = array(
      'name' => 'GOAL',
      'type' => 'url',
      'depth' => '',
      'conditions' => array(
        array(
          'type' =>  'exact',
          'url' => 'GOAL_URL',
        )
      )
    ) ;


 $params = json_encode($params);

    $opts = array(
      'http' => array(
        'method' => "POST",
        'header' => "Authorization: OAuth " . $token . "\r\n" .
                    "Accept: application/x-yametrika+json" . "\r\n" .
                    "Content-Type: application/x-yametrika+json" . "\r\n" .
                    "Content-length: " . strlen($params) . "\r\n",
        'content' => $params
      )
    ) ;

    $context = stream_context_create($opts);

    $result = file_get_contents('http://api-metrika.yandex.ru' . $uri . '.json?pretty=1', null, $context);


в $result без каких-либо ошибок возвращается список текущих целей, новый не создается.

В чем может быть ошибка?
  • Вопрос задан
  • 3784 просмотра
Решения вопроса 1
Melkij
@Melkij
PostgreSQL DBA
В описании апи этого тупо нет, но $params надо обернуть ещё в один массив:
'content' => array('goal'=>$params),
clubs.ya.ru/metrika/replies.xml?item_no=9965

И сразу же ещё одна неимоверно логичная вещь - в ответ возвращается тупо список всех целей, включая добавленную. И искать среди них только что созданную цель надо самому.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽