Загрузка RSS-канала

Создает задачу на загрузку RSS-канала в Вебмастер. Для загрузки необходимо использовать ссылку, которая была получена с помощью операции GET /v4/user/{user-id}/hosts/{host-id}/turbo/uploadAddress.

Внимание. Перед загрузкой ознакомьтесь с ограничениями для RSS-каналов.
  1. Формат запроса
  2. Формат ответа
  3. Коды ответа
  4. Пример

Формат запроса

Заголовки запроса

Заголовок Описание
Content-Type:application/rss+xml Определяет тип файла, который передается в теле запроса.
Content-Encoding:gzip Определяет способ кодирования содержимого — gzip.
Примечание. Gzip сжатие можно использовать, если размер RSS-канала превышает 10 МБ.
Заголовок Описание
Content-Type:application/rss+xml Определяет тип файла, который передается в теле запроса.
Content-Encoding:gzip Определяет способ кодирования содержимого — gzip.
Примечание. Gzip сжатие можно использовать, если размер RSS-канала превышает 10 МБ.

Формат тела запроса

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

Формат ответа

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

{
  "task_id": "a6792e60-ebf3-11e8-b31a-ed044935f842"
}
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
Сообщение об ошибке.
Код Описание
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"
Скопировано

Ответ:

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