Загрузка через api турбо страниц yandex: API Турбо‑страниц. Турбо‑страницы для контентных сайтов

Загрузка RSS-канала. Турбо‑страницы для контентных сайтов

  1. Формат запроса
  2. Формат ответа
  3. Коды ответа
  4. Пример
POST <upload_address>

RSS-канал необходимо передавать в теле запроса в виде бинарного файла или в виде строки.

Сервис возвращает данные в формате JSON (по умолчанию) или XML. Чтобы получить XML-ответ, передайте в запросе HTTP-заголовок Accept: application/xml.

{
  "task_id": "a6792e60-ebf3-11e8-b31a-ed044935f842"
}
<Data>
  <проверять статус загрузки."}}">>a6792e60-ebf3-11e8-b31a-ed044935f842</task_id>
</Data>

task_id

Идентификатор задачи на загрузку RSS-канала. С помощью него можно проверять статус загрузки.

КодОписание
202 ACCEPTEDЗапрос принят на обработку.

400 Bad Request

ENTITY_VALIDATION_ERROR
Тело запроса не прошло валидацию.

Пример ответа

{
  "error_code": "ENTITY_VALIDATION_ERROR",
  "error_message": "some string"
}

error_code

Код ошибки.

error_message

Сообщение об ошибке.

403 Forbidden
INVALID_USER_ID
ID пользователя, выдавшего токен, отличается от указанного в запросе. В примерах ниже {user_id} указан правильный uid владельца OAuth-токена.

Пример ответа

{
  "error_code": "INVALID_USER_ID",
  "available_user_id": 1,
  "error_message": "Invalid user id.  {user_id} should be used."
}

error_code

Код ошибки.

available_user_id

ID пользователя, от имени которого разрешен доступ.

error_message

Сообщение об ошибке.

LICENCE_NOT_ACCEPTED
Необходимо принять Пользовательское соглашение.

Пример ответа

{
  "error_code": "LICENCE_NOT_ACCEPTED",
  "error_message": "some string"
}

error_code

Код ошибки.

error_message

Сообщение об ошибке.

404 Not Found

HOST_NOT_VERIFIED
Не подтверждены права на управление сайтом.

Пример ответа

{
  "error_code": "HOST_NOT_VERIFIED",
  "host_id": "http:ya.ru:80",
  "error_message": "some string"
}

error_code

Код ошибки.

host_id

ID запрошенного сайта.

error_message

Сообщение об ошибке.

410 Gone
UPLOAD_ADDRESS_EXPIRED
Ресурс недоступен.

Пример ответа

{
  "error_code": "UPLOAD_ADDRESS_EXPIRED",
  "valid_until": "2016-01-01T00:00:00,000+0300",
  "error_message": "some string"
}

error_code

Код ошибки.

valid_until

Дата и время, до которого адрес доступен для создания задачи.

error_message

Сообщение об ошибке.

413 Payload Too Large

REQUEST_ENTITY_TOO_LARGE
Размер файла превышает ограничения.

Пример ответа

{
  "error_code": "REQUEST_ENTITY_TOO_LARGE",
  "error_message": "some string"
}

error_code

Код ошибки.

error_message

Сообщение об ошибке.

429 Too Many Requests

TOO_MANY_REQUESTS_ERROR
Отправлено слишком много запросов.

Пример ответа

{
  "error_code": "TOO_MANY_REQUESTS_ERROR",
  "error_message": "some string"
}

error_code

Код ошибки.

error_message

Сообщение об ошибке.

Пример загрузки RSS-канала:

curl -X POST \
  https://api.webmaster.yandex.net/v4/upload/turbo/Dz3L9xOfnCecrcgv3jdTInxCY8tMl__tDWwJV9jB1VkdUmDyqx94u-11JqUte05eXYkX49q1Z9CZAsbBgKkdIQ==/ \
  -H 'Authorization: OAuth oauth_token' \
  -H 'Content-Type: application/rss+xml' \
  --data-binary "@rss.xml"
curl -X POST \
  https://api.webmaster.yandex.net/v4/upload/turbo/Dz3L9xOfnCecrcgv3jdTInxCY8tMl__tDWwJV9jB1VkdUmDyqx94u-11JqUte05eXYkX49q1Z9CZAsbBgKkdIQ==/ \
  -H 'Authorization: OAuth oauth_token' \
  -H 'Content-Type: application/rss+xml' \
  -d '<?xml version="1. 0" encoding="UTF-8"?>
<rss version="2.0" xmlns:yandex="http://news.yandex.ru" xmlns:turbo="http://turbo.yandex.ru">
  <channel>
    <item turbo="true">
      <title>Заголовок страницы</title>
      <link>https://example.com</link>
      <turbo:content>
        <![CDATA[
          <header>
            <h2>Ресторан «Полезный завтрак»</h2>
            <h3>Вкусно и полезно</h3>
            <figure>
              <img src="https://avatars.mds.yandex.net/get-sbs-sd/403988/e6f459c3-8ada-44bf-a6c9-dbceb60f3757/orig">
            </figure>
            <menu>
              <a href="https://example.com/page1.html">Пункт меню 1</a>
              <a href="https://example.com/page2.html">Пункт меню 2</a>
            </menu>
          </header>
          <p>Как хорошо начать день? Вкусно и полезно позавтракать!</p>
          <p>Приходите к нам на завтрак.  Фотографии наших блюд ищите <a href="#">на нашем сайте</a>.</p>
          <h3>Меню</h3>
          <figure>
            <img src="https://avatars.mds.yandex.net/get-sbs-sd/369181/49e3683c-ef58-4067-91f9-786222aa0e65/orig">
            <figcaption>Омлет с травами</figcaption>
          </figure>
          <p>В нашем меню всегда есть свежие, вкусные и полезные блюда.</p>
          <p>Убедитесь в этом сами.</p>
          <button formaction="tel:+7(123)456-78-90"
            data-background-color="#5B97B0"
            data-color="white"
            data-primary="true">Заказать столик</button>
          <div data-block="widget-feedback" data-stick="false">
            <div data-block="chat" data-type="whatsapp" data-url="https://whatsapp.com"></div>
            <div data-block="chat" data-type="telegram" data-url="http://telegram.com"></div>
            <div data-block="chat" data-type="vkontakte" data-url="https://vk. com"></div>
            <div data-block="chat" data-type="facebook" data-url="https://facebook.com"></div>
            <div data-block="chat" data-type="viber" data-url="https://viber.com"></div>
          </div>
          <p>Наш адрес: <a href="#">Nullam dolor massa, porta a nulla in, ultricies vehicula arcu.</a></p>
          <p>Фотографии — http://unsplash.com</p>
        ]]>
      </turbo:content>
    </item>
  </channel>
</rss>'

Ответ:

{
  "task_id": "a6792e60-ebf3-11e8-b31a-ed044935f842"
}

Написать в службу поддержки

Была ли статья полезна?

Быстрый старт. Турбо‑страницы для контентных сайтов

Ниже представлена инструкция по загрузке RSS-канала в Вебмастер.

Для работы с API Турбо страниц необходимо получить авторизационный токен, например, с помощью Вебмастера:

  1. Перейдите на страницу Турбо‑страницы для контентных сайтов → Источники.

  2. В блоке Загрузка через API нажмите кнопку Получить токен.

Полученный OAuth-токен необходимо передавать в каждом запросе в HTTP-заголовке Authorization.

Идентификатор пользователя необходим при вызове ресурсов API Турбо‑страниц. Он передается в path-параметре user-id.

Чтобы получить идентификатор, используйте операцию GET /v4/user.

Пример:

curl -X GET \
  'https://api.webmaster.yandex.net/v4/user' \
  -H 'Authorization: OAuth oauth_token'

Идентификатор пользователя возвращается в поле user-id.

Чтобы получить ссылку для загрузки, используйте операцию GET /v4/user/{user-id}/hosts/{host-id}/turbo/uploadAddress.

Внимание. Перед публикацией Турбо‑страниц рекомендуется проверить валидность разметки и правильность отображения в режиме DEBUG. Режим задается с помощью query-параметра mode при получении адреса для загрузки. Также рекомендуется ознакомиться с ограничениями для RSS-каналов.

Пример:

curl -X GET \
  'https://api.webmaster.yandex.net/v4/user/12345678/hosts/https:example.com:443/turbo/uploadAddress?mode=PRODUCTION' \
  -H 'Authorization: OAuth oauth_token'

Ссылка для загрузки возвращается в поле upload_address. Ее необходимо использовать для загрузки RSS-канала.

Чтобы загрузить RSS-канал, отправьте POST-запрос на адрес, который получили в предыдущем шаге. В запросе необходимо указать заголовок Content-Type: application/rss+xml и передать RSS-канал в теле запроса в виде бинарного файла или в виде строки.

Пример:

curl -X POST \
  https://api.webmaster.yandex.net/v4/upload/turbo/Dz3L9xOfnCecrcgv3jdTInxCY8tMl__tDWwJV9jB1VkdUmDyqx94u-11JqUte05eXYkX49q1Z9CZAsbBgKkdIQ==/ \
  -H 'Authorization: OAuth oauth_token' \
  -H 'Content-Type: application/rss+xml' \
  -d '<?xml version="1. 0" encoding="UTF-8"?>
<rss version="2.0" xmlns:yandex="http://news.yandex.ru" xmlns:turbo="http://turbo.yandex.ru">
  <channel>
    <item turbo="true">
      <title>Заголовок страницы</title>
      <link>https://example.com</link>
      <turbo:content>
        <![CDATA[
          <header>
            <h2>Ресторан «Полезный завтрак»</h2>
            <h3>Вкусно и полезно</h3>
            <figure>
              <img src="https://avatars.mds.yandex.net/get-sbs-sd/403988/e6f459c3-8ada-44bf-a6c9-dbceb60f3757/orig">
            </figure>
            <menu>
              <a href="https://example.com/page1.html">Пункт меню 1</a>
              <a href="https://example.com/page2.html">Пункт меню 2</a>
            </menu>
          </header>
          <p>Как хорошо начать день? Вкусно и полезно позавтракать!</p>
          <p>Приходите к нам на завтрак.  Фотографии наших блюд ищите <a href="#">на нашем сайте</a>.</p>
          <h3>Меню</h3>
          <figure>
            <img src="https://avatars.mds.yandex.net/get-sbs-sd/369181/49e3683c-ef58-4067-91f9-786222aa0e65/orig">
            <figcaption>Омлет с травами</figcaption>
          </figure>
          <p>В нашем меню всегда есть свежие, вкусные и полезные блюда.</p>
          <p>Убедитесь в этом сами.</p>
          <button formaction="tel:+7(123)456-78-90"
            data-background-color="#5B97B0"
            data-color="white"
            data-primary="true">Заказать столик</button>
          <div data-block="widget-feedback" data-stick="false">
            <div data-block="chat" data-type="whatsapp" data-url="https://whatsapp.com"></div>
            <div data-block="chat" data-type="telegram" data-url="http://telegram.com"></div>
            <div data-block="chat" data-type="vkontakte" data-url="https://vk. com"></div>
            <div data-block="chat" data-type="facebook" data-url="https://facebook.com"></div>
            <div data-block="chat" data-type="viber" data-url="https://viber.com"></div>
          </div>
          <p>Наш адрес: <a href="#">Nullam dolor massa, porta a nulla in, ultricies vehicula arcu.</a></p>
          <p>Фотографии — http://unsplash.com</p>
        ]]>
      </turbo:content>
    </item>
  </channel>
</rss>'

Операция возвращает идентификатор задачи на загрузку RSS-канала в поле task_id. Его необходимо использовать для проверки статуса загрузки.

Чтобы проверить статус загрузки RSS-канала, передайте идентификатор задачи в path-параметре task_id операции GET /v4/user/{user-id}/hosts/{host-id}/turbo/tasks/{task-id}.

Результат загрузки содержит:

  • ссылки, по которым можно посмотреть примеры отображения Турбо‑страниц;

  • информацию об ошибках, если они возникают.

Примечание. Обработка RSS-канала занимает длительное время.

Пример:

curl -X GET \
  'https://api.webmaster.yandex.net/v4/user/12345678/hosts/https:example.com:443/turbo/tasks/12345e0-678f-9e' \
  -H 'Authorization: OAuth oauth_token'

Написать в службу поддержки

Была ли статья полезна?

Создание простой Турбо-страницы. Турбо-страницы для контентных сайтов

Используйте это руководство, чтобы создать Турбо-страницу для одной из страниц вашего сайта и посмотреть, как на нее реагируют мобильные пользователи.

Содержимое сгенерированной Турбо-страницы должно повторять основное содержимое страницы сайта.

  1. Шаг 1. Скопируйте структуру RSS-канала
  2. Шаг 2. Добавьте информацию о странице
  3. Шаг 3. Добавьте содержимое страницы
  4. Шаг 4. Загрузите свой RSS-канал на Яндекс.Вебмастер

Упрощенный пример RSS-канала, который содержит только обязательные элементы:

  0" encoding = "UTF-8"?>

    <>
        < турбо="правда">
            >http://www.example.com/page1.html
            <>
                
        
    
 

канал   Обязательно»}}»>

Исходная информация о сайте.

элемент   Обязательно»}}»>

Информация о странице.

ссылка   Обязательно»}}»>

URL-адрес страницы сайта, для которой создается Турбо-страница.

turbo:content   Обязательное»}}»>

Содержимое страницы.

Обязательно

Укажите элемент ссылки.

 ...
     Требования: 

    \n
  • Ссылка должна содержать префикс схемы HTTP или HTTPS.

  • \n
  • Домен ссылки должен совпадать с доменом исходного сайта.

  • \n
  • Максимальная длина URL-адреса составляет 243 символа ASCII.

  • \n
  • Каждый URL должен содержать одну статью.

  • \n

При переходе по ссылке заголовок и начало текста должны соответствовать размеру первого экрана с разрешением 1024 × 768.

"}}">>http://www.example.com/page1.html ...

ссылка   Обязательно»}}»>

URL-адрес страницы сайта, для которой создается Турбо-страница.

Требования:

  • Ссылка должна содержать префикс схемы HTTP или HTTPS.

  • Домен ссылки должен совпадать с доменом исходного сайта.

  • Максимальная длина URL-адреса составляет 243 символа ASCII.

  • Каждый URL должен содержать одну статью.

При переходе по ссылке заголовок и начало текста должны соответствовать первому экрану с разрешением 1024 × 768.

Обязательно

Содержимое страницы Turbo передается в элементе turbo:content. Содержимое должно быть заключено в ![CDATA[]]>

 ...
    <турбо:контент>
        
... 

Содержимое страницы должно содержать заголовок страницы и часть содержимого:

  • Заголовок задается в элементе header. Он может содержать заголовок, меню и изображение для предварительного просмотра.

  • Контентная часть может содержать все доступные элементы Турбо-страницы: текст, изображения и видео, таблицы и так далее. Однако он должен полностью повторять структуру и содержание главной страницы. Дополнительные сведения см. в разделе Требования к содержимому.

Чтобы Турбо-страница больше походила на оригинал, используйте HTML и CSS. Стили задаются через настройки CSS в Яндекс.Вебмастере.

 ... 
    <Заголовок страницы."}}">>
        <Заголовок страницы.\n "}}">>Заголовок страницы
        <картинка с подписью."}}">>
            Атрибут  src="http://example.com/img.jpg" />
        
        <Заголовок второго уровня.\n "}}">>Заголовок второго уровня
        <Меню навигации. 

\n

\n

a

\n

\n

Пункт меню. Атрибут href должен содержать ссылку на страницу сайта.

\n

\n

\n

\n «}}»>>
<Элемент меню. Атрибут href должен содержать ссылку на страницу сайта.\n "}}"> href=»http://example.com/page1.html»>Текст ссылки
<Элемент меню. Атрибут href должен содержать ссылку на страницу сайта.\n "}}"> href=»http://example.com/page2.html»>Текст ссылки



заголовок   Обязательно»}}»>

Заголовок страницы.

h2   Обязательное»}}»>

Заголовок страницы.

рисунок

Элемент, используемый для создания предварительного просмотра в шапке. Может использоваться для создания изображения с подписью.

img

Атрибут src должен содержать URL-адрес изображения. Поддерживаются форматы JPEG, PNG, GIF.

h3

Заголовок второго уровня.

меню

Меню навигации.

a

Пункт меню. Атрибут href должен содержать ссылку на страницу сайта.

Обязательно

Когда RSS-канал готов:

  1. Поместите файл RSS на сервер вашего сайта.

  2. Загрузите файл в Яндекс.Вебмастер.

  3. При необходимости добавьте логотип сайта.

  4. Включить отображение Турбо-страницы.

Примечание. Чтобы изменить внешний вид и содержимое страниц, используйте RSS-канал. Дополнительные сведения см. в разделе Загрузка RSS-канала.

На моем сайте появились Турбо-страницы.

Турбо-страницы для контентных сайтов

Что такое Турбо-страницы и как они создаются?

Турбо-страницы — это облегченные версии страниц вашего сайта, которые быстро открываются на мобильных устройствах. По данным Яндекса, более 40% пользователей пользуются 3G-подключением к интернету. При такой скорости загрузка базовых версий страниц сайта может занимать до 15 секунд. Турбо-страницы загружаются примерно в 15 раз быстрее, чем страницы из оригинальной версии сайта. Дополнительные сведения см. в разделе О технологии Турбо-страницы.

Турбо-страницы генерируются для сайтов, которые появляются в результатах поиска Яндекса. Их можно сгенерировать автоматически с помощью Autoparsing β . Кроме того, вы можете передавать содержимое Турбо-страницы через RSS-канал.

Вы можете изменить внешний вид заголовка страницы, отредактировать стили CSS и добавить элементы.

Зачем мне использовать Турбо-страницы?
  • Турбо-страницы загружаются быстрее, чем обычные или мобильные версии страниц сайта. Чем быстрее загружается сайт, тем больше вероятность того, что пользователь останется на странице и найдет нужную информацию.

  • Нагрузка на сервер ниже. При формировании Турбо-страницы ее содержимое кэшируется и сохраняется на сервере Яндекса. Когда пользователь открывает Турбо-страницу, она загружается с того же сервера.

  • Эта технология помогает адаптировать страницы под мобильные устройства без редактирования кода.

  • Изменения страниц отслеживаются автоматически.

Дополнительные сведения см. в разделе О технологии.

Где отображаются Турбо-страницы?

Чтобы запустить показ Турбо-страниц, включите отображение в Яндекс.Вебмастере.

Как просмотреть примеры Турбо-страниц?

Сделать это можно в Яндекс.Вебмастере:

  1. Добавьте сайт в Яндекс.Вебмастер и подтвердите свои права на управление сайтом.

  2. В Яндекс.Вебмастере перейдите в Турбо-страницы для контентных сайтов → Источники данных.

  3. В разделе Автоанализ нажмите кнопку Примеры. Откроется окно с несколькими образцами Турбо-страниц, сгенерированных для вашего сайта.

Как редактировать сгенерированную Турбо-страницу?

Вы можете отправлять информацию для Турбо-страницы через RSS-канал. Контент, который вы отправляете для Турбо-страницы, должен соответствовать основному контенту исходной страницы вашего сайта.

Работают ли установленные на сайте теги веб-аналитики на Турбо-страницах?
Если на вашем сайте установлены теги отслеживания, они не добавляются в Турбо-версию страниц автоматически. Добавьте популярные теги на все сгенерированные Турбо-страницы в Яндекс.Вебмастере.
Показываются ли объявления с сайта на Турбо-страницах?

Если вы используете рекламу на своем сайте, она не показывается на Турбо-версиях ваших страниц автоматически. Добавьте рекламу в Яндекс.Вебмастер. Он отображается на всех Турбо-страницах, созданных для вашего сайта.

This entry was posted in Популярное