К содержанию
SerpJet Документация Войти
Разделы
  1. Документация
  2. Публичный API доставки

Исправить URL публикации с проверкой предыдущего значения

Если адрес опубликованной статьи изменился, вызовите PATCH /external/articles/{article_id}/publication-url с новым адресом и, для защиты от гонок, прежним адресом в expected_external_url.

Проверено
Содержание
  1. Когда нужно
  2. Запрос
  3. Требования
  4. Что происходит

Когда нужно

  • CMS поменяла адрес записи (новый alias, перенос раздела).
  • В accepted был отправлен временный адрес, например /node/421.

Не используйте для этого повторный result — он не меняет адрес закрытой доставки.

Запрос

PATCH /external/articles/421/publication-url
X-Api-Key: <ваш ключ>
Content-Type: application/json

{"external_url": "https://site.example.com/blog/new-alias",
 "expected_external_url": "https://site.example.com/node/421"}
  • В пути — ID статьи, а не доставки.
  • expected_external_url необязателен: передайте последний известный адрес, чтобы не перезаписать более свежее исправление.

Требования

  • Публикация статьи подтверждена (было accepted или отметка в панели). Иначе — 409 publication_not_confirmed.
  • Адрес — постоянный HTTP(S) на домене проекта, без логина и пароля, параметров запроса и якоря. Иначе — 400 invalid_external_url.

Что происходит

  • Статус и дата публикации не меняются, токены не списываются.
  • Аналитика начинает учитывать новый адрес, история сохраняется.
  • Повтор с тем же новым адресом безопасен и возвращает 200.
  • Несовпадение expected_external_url — 409 external_url_conflict.

Не нашли ответ? Напишите в поддержку из панели — укажите проект и что вы видите на экране.