API-пайплайн: статьи и посты

Индекс: API-пайплайны — индекс

Цель: написать статью (длинный формат) или пост (короткий; то, что кампании объявлений отправляют в группы Telegram) на одном или нескольких языках, с изображениями; выбрать, кто его видит; редактировать, архивировать или удалить.

Статьи и посты используют одни и те же вызовы. В путях ниже указано articles; для поста используйте posts.

Шаги

1. Загрузите изображения (по желанию).

POST /v0/my/media/upload          multipart/form-data: up to 10 image files, 10 MB each
→ {"files": [{"hash": "9f2c…e41a", "format": "webp", "width": 1280, "height": 720, "size": 81234, …}]}

Изображения хранятся в webp. Вставьте каждое в текст как ![caption](media:<hash>.webp).

2. Создание.

POST /v0/my/articles
Idempotency-Key: art-7d1e…
{"title": "Spring menu",
 "content": "Fresh pasta every day.\n\n![Our kitchen](media:9f2c…e41a.webp)",
 "language": "en",
 "project": "470000000000000001",
 "rubrics": ["<rubric nonce>"], "location": "<place nonce>",
 "translate_mode": "auto", "translate_langs": ["ru", "es"]}
→ {"nonce": "470000000000000042", "card_type": "article", "visibility": "Private",
   "canonical_lang": "en", "i18n": [{"lang": "en", "source": "authored", "title": "Spring menu", "content": "…"}], …}

3. Выберите, кто видит.

PATCH /v0/my/articles/470000000000000042
{"visibility": "Public", "publicity": "Everyone",
 "permissions": {"read": true, "write": false, "execute": false}}

4. Правка. PATCH /v0/my/articles/{nonce} с любыми из title, content, handle, project, rubrics, location; статьи принимают также teaser (короткая строка на плитках).

5. Архив или восстановление. POST /v0/my/archive {"nonce": "470000000000000042", "archived": true} → карточка уходит из ваших списков; GET /v0/my/articles?archived=true показывает архивные; "archived": false возвращает её.

6. Удаление. DELETE /v0/my/articles/{nonce} → {"success": true}. Статью — только владелец; пост — любой, у кого есть право записи на него.

Чтение.

Что происходит за кадром

Правила (400)

Поверхность API

Эндпоинт Назначение FE ИИ / оракул
POST /v0/my/media/upload Загрузка изображений да да
POST /v0/my/articles, POST /v0/my/posts Создание да да
PATCH /v0/my/articles/{nonce}, PATCH /v0/my/posts/{nonce} Правка, публикация, перевод да да
POST /v0/my/archive Архив, восстановление да да
DELETE /v0/my/articles/{nonce}, DELETE /v0/my/posts/{nonce} Удаление да да
GET /v0/my/articles, GET /v0/my/posts (+ /{nonce}) Ваши да да
GET /v0/graph/articles, GET /v0/graph/posts (+ /{nonce}) Публичные да да

Упомянуто