Доброго времени суток
Пробовал так
$url = 'https://api-metrika.yandex.ru/management/v1/counter/code-counter/goals.json'; $dataCounter = array( 'goal' => array( "id" => 'test', "name" => 'test', "type" => 'number', 'depth' => 3, "is_retargeting" => false , ) ); $t = json_encode($dataCounter); if( $curl = curl_init() ) { curl_setopt($curl, CURLOPT_URL, $url); // set url to post to curl_setopt($curl, CURLOPT_HTTPHEADER, array( 'Authorization: OAuth token')) ; curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($curl, CURLOPT_POST, true); // set POST method curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); // return into a variable curl_setopt($curl, CURLOPT_POSTFIELDS, $t); } // add POST fields $result = curl_exec($curl); // run the whole process var_dump($result);
Ошибка '{"errors":[{"error_type":"invalid_json","message":"Could not read JSON Unexpected character ('%' (code 37)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')\n at [Source: %7B%22goal%22%3A%7B%22id%22%3A%22test%22%2C%22name%22%3A%22test%22%2C%22type%22%3A%22number%22%2C%22depth%22%3A3%2C%22is_retargeting%22%3Afalse%7D%7D=; line: 1, column: 2]"}]
Пробовал так
$dataCounter = array( 'content' => array( 'goal' => array( "id" => 'test', "name" => 'test', "type" => 'number', 'depth' => 3, "is_retargeting" => false , ) ) );
далее тоже самое что и выше
ошибка та же.
документация
Синтаксис запроса counterId — идентификатор счетчика, для которого вы хотите создать цель. POST https://api-metrika.yandex.ru/management/v1/counter/{counterId}/goals Пример запроса POST https://api-metrika.yandex.ru/management/v1/counter/{counterId}/goals
что не так?