Как отладить Яндекс Оригинальные Тексты API?

Добрый день. До 31 декабря оригинальные тексты по api отлично работали. https://tech.yandex.ru/webmaster/doc/dg/reference/...
С 1 января не хочет. Токен обновил, ключ обновил. Авторизация успешно( если левый токен - то сразу ошибка)
Выдает http code 100 и ответ сервера false. Все перепробовал.
Некоторые вырезки кода
public $appId;
    public $appSecret;
    public $yandexToken;
    public $siteId;
    protected  $host = 'webmaster.yandex.ru';
    protected  $url;
    protected $timeOut = 30;

    public function init()
    {
        $this->url = "/api/v2/hosts/" . $this->siteId . "/original-texts/";
        parent::init();
    }


    private function getPage($curlOptions = array())
    {
        $ch = curl_init();
        curl_setopt_array($ch, $curlOptions);
        $result = curl_exec($ch);
        $info = curl_getinfo($ch);
       
        return array('result' => $result, 'info' => $info);
    }

    # Функция непосредсвенной подготовки на выполнения запроса добавления уникального текста
    private function performYandexWebmasterApiRequest(
        $url,
        $requestType = 'POST',
        $curlOptions = array(),
        $additionalHeaders = array()
    ) {
        $headers = array(
            "{$requestType} {$url} HTTP/1.1",
            'Host: webmaster.yandex.ru',
            'Authorization: OAuth ' . $this->yandexToken
        );

        $headers = array_merge($headers, $additionalHeaders);
        $requestOptions = array(
            CURLOPT_URL => $this->host . $this->url,
            CURLOPT_SSL_VERIFYPEER => 0,
            CURLOPT_CONNECTTIMEOUT => $this->timeOut,
            CURLOPT_HTTPHEADER => $headers,
            CURLOPT_RETURNTRANSFER => 1
        );
        if (count($curlOptions)) {
            foreach ($curlOptions as $curlOption => $curlOptionValue) {
                $requestOptions[$curlOption] = $curlOptionValue;
            }
        }

        $response = $this->getPage($requestOptions);

        return $response;
    }

    public function add($text)
    {
        $text = strip_tags(html_entity_decode($text));
        $text = urlencode("<original-text><content>{$text}</content></original-text>");
        $additionalHeaders = array('Content-Length: ' . mb_strlen($text));
        $curlOptions = array(CURLOPT_CONNECTTIMEOUT => 30, CURLOPT_POSTFIELDS => $text);
        $response = $this->performYandexWebmasterApiRequest($this->url, 'POST', $curlOptions, $additionalHeaders);




        if($response['info']['http_code'] == 201)
        {
            $xml = new SimpleXMLElement($response['result']);
            return $xml->id;
        }
        else
            return false;



    }
  • Вопрос задан
  • 3954 просмотра
Пригласить эксперта
Ответы на вопрос 2
@Rencom
Проблема 1в1, перестали отправляться тексты 31 декабря
Ответ написан
Комментировать
AloneCoder
@AloneCoder
[object Object]
У всех такая проблема, судя по ответу саппорта, проблема у них
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы