Задать вопрос
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 без каких-либо ошибок возвращается список текущих целей, новый не создается.

В чем может быть ошибка?
  • Вопрос задан
  • 3798 просмотров
Подписаться 3 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
Melkij
@Melkij
DBA для вашего PostgreSQL?
В описании апи этого тупо нет, но $params надо обернуть ещё в один массив:
'content' => array('goal'=>$params),
clubs.ya.ru/metrika/replies.xml?item_no=9965

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

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

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
IT ATLAS Москва
от 250 000 до 500 000 ₽