# Hobbyka: справочные страницы через Codex без установки Официальный сценарий создания и редактирования страниц `https://hobbyka.ru/infocenter/help/`. Не устанавливай CLI, MCP или плагины и не меняй инфоблок напрямую. Codex сохраняет отдельный черновик Content Draft API; применяет его только администратор или участник группы «Контент-редакторы» (ID 7) в защищённом предпросмотре. ## Подключение Используй действующий доступ к Content Draft API. Если доступа нет, выполни подключение по разделу «Подключение» инструкции `https://hobbyka.ru/ai/cli/articles.php`: POST `/ai/content-access/request/`, покажи редактору только `verification_uri` и `user_code`, после подтверждения получи токен через `/ai/content-access/token/`. Bearer-токен не показывай, не проси присылать в чат и передавай только по HTTPS на `hobbyka.ru`. ## Подготовка Сначала проверь существующие страницы: `GET https://hobbyka.ru/api/internal/v1/content-drafts/help-meta` с Bearer-токеном либо публичный `GET /api/ai/v1/content?type=help`. Не создавай дубль страницы с тем же назначением. Для новой справочной страницы подготовь: - `type=help`; - `title` — заголовок детальной страницы; - `html` — полный полезный текст страницы; - необязательные `code`, `sort` (по умолчанию 500), `excerpt`, `seo_title`, `seo_description`, `page_title` и `agent`. Для изменения существующей страницы сначала открой её точный URL `/infocenter/help//`, сохрани подтверждённые факты и передай полный итоговый заголовок и HTML вместе с `source_url` либо `source_element_id`. API создаст `status=revision` и привяжет черновик к исходному элементу, но не изменит его до ручного одобрения. Символьный код существующей страницы сохраняется, сортировка наследуется, если её не передавать. Оформляй `html` как содержимое реальной детальной страницы: вводный текст, смысловые `h2`/`h3`, списки, таблицы, ссылки, изображения и подписи, когда они действительно нужны. Не добавляй H1, повтор заголовка, SEO-теги, скрипты, стили, формы или внешние изображения: H1 и оболочку выводит шаблон сайта. Для изображения сначала создай черновик, затем POST `/ai/content-media/` с JSON `{draft_id,image_base64}` и вставь полученный `image_url` в `html` через PATCH. У справочной страницы нет отдельной обложки и товарного слайдера, поэтому не передавай `cover_image_url` или `product_ids`. SEO передавай отдельными полями: `seo_title`, `seo_description`, `page_title`. Не вставляй `` в HTML. `excerpt` можно использовать как внутреннее краткое резюме и запасное SEO-описание; на детальной странице он отдельным блоком не выводится. Ссылки на страницы и товары автоматически открываются в новой вкладке (`target="_blank"`, `rel="noopener noreferrer"`), в том числе в ранее созданных черновиках и после одобрения. Якоря `href="#..."`, `mailto:` и `tel:` сохраняют обычное действие. Для внешних HTTP/HTTPS-ссылок, включая `//site.com/...`, используй `rel="nofollow noopener noreferrer"`: API добавляет недостающий `nofollow` автоматически. Относительные ссылки и точные домены `hobbyka.ru`, `www.hobbyka.ru`, `new.hobbyka.ru` не получают автоматический `nofollow`; явно заданный редактором сохраняется. Упоминания без ссылок оставляй обычным текстом; жирное выделение не требуется. Фотографию с подписью оформляй одним блоком `
...
Подпись
`. В шаблоне «Справки» и в предпросмотре между фото и подписью остаётся 8 px; подпись — 14 px, курсив. Большой внутренний отступ изображения внутри `figure` убран, но внешние отступы блока сохранены. Не пытайся управлять расстоянием через `style`, произвольные классы, пустые абзацы или `
`: API очищает неподдерживаемое оформление. ## Сохранение Создание: `POST https://hobbyka.ru/api/internal/v1/content-drafts` с `Authorization: Bearer ...`, `Content-Type: application/json; charset=utf-8` и уникальным `Idempotency-Key` длиной 8–128 ASCII-символов. При таймауте повторяй тот же запрос с тем же ключом. Правки черновика: `PATCH /api/internal/v1/content-drafts/{id}`. Проверка: `GET` по тому же адресу. Успешная новая страница имеет `type=help`, `status=draft`, `operation=create`, строковый `id`, `preview_url`, `published_url=null` и `iblock_element_id=null`. Правка существующей страницы имеет `status=revision`, `operation=update`, прежний `source_element_id` и защищённый `preview_url`; публичная страница остаётся без изменений до одобрения. Верни пользователю ссылку `preview_url`. Не вызывай `/publish`, не нажимай кнопку от имени редактора, не создавай и не меняй `CIBlockElement` напрямую. Предпросмотр повторяет реальную детальную страницу «Справки». Новую страницу можно опубликовать или сохранить без активации, а для существующей доступна ручная кнопка «Применить правки».