Admin API: корзина
Два метода Admin API для корзины: список архивных кампаний, удалённых офферов и лендингов и восстановление объекта по ID.
Через API доступны те же действия, что и в разделе панели Корзина: получить список объектов и вернуть объект в работу. Оба метода требуют токен с доступом Полный доступ (full). Авторизация описана на странице Admin API: обзор и авторизация, формат ответов и ошибок — на странице Формат запросов, ответов и ошибок.
Что лежит в корзине
Значение kind | Объект | Как попадает в корзину |
|---|---|---|
campaign | Кампания в статусе archived | DELETE /api/v1/campaigns/{id} или PUT /api/v1/campaigns/{id} с {"state":"archived"} — см. Admin API: кампании |
offer | Удалённый оффер | DELETE /api/v1/offers/{id} — см. Admin API: офферы |
lander | Удалённый лендинг | DELETE /api/v1/landers/{id} — см. Admin API: лендинги |
Архивная кампания остаётся и в ответе GET /api/v1/campaigns. Удалённые оффер и лендинг методами своих разделов не отдаются: запрос по их id отвечает 404.
Потоки и домены в корзину не попадают: DELETE удаляет их сразу.
Методы
Список объектов корзины
GET /api/v1/page-trashВозвращает все объекты корзины команды одним списком.
Параметров пути, запроса и тела нет. Постраничности и фильтров нет: отбирайте записи по kind и name на своей стороне.
Ответ — код 200 и массив объектов, отсортированный по deleted_at: новые записи идут первыми. Если корзина пуста, приходит пустой массив [].
| Поле | Тип | Описание |
|---|---|---|
id | строка, UUID | ID объекта. Тот же, что у кампании, оффера или лендинга в своём разделе |
name | строка | Название объекта |
kind | строка | Тип: campaign, offer или lander |
deleted_at | строка, дата и время RFC 3339 | Время удаления. У кампании — время её последнего изменения |
Пример запроса:
curl https://panel.example.com/api/v1/page-trash \
-H "Api-Key: <токен>"Пример ответа:
[
{
"id": "7b0c1d52-3f4e-4a6b-9c8d-1e2f3a4b5c6d",
"name": "Nutra PL — прелендинг",
"kind": "lander",
"deleted_at": "2026-10-03T14:22:05.418332Z"
},
{
"id": "c41a9e07-52bd-4f13-8a60-9d7e6f5a4b3c",
"name": "FB PL Nutra",
"kind": "campaign",
"deleted_at": "2026-10-02T09:10:47.905114Z"
}
]Восстановить объект
POST /api/v1/page-trash/{id}/restoreВозвращает кампанию, оффер или лендинг из корзины в работу. Тип объекта трекер определяет сам по ID.
Тела запроса нет.
| Параметр | Где | Тип | Обязательность | Описание |
|---|---|---|---|---|
id | путь | строка, UUID | да | Значение id из списка корзины |
Ответ — код 200:
{"ok": true}Ошибки:
| Код | code | message | Когда |
|---|---|---|---|
404 | not_found | страница не найдена | Объекта с таким ID в корзине нет: ID указан с ошибкой или объект уже восстановлен. ID не в формате UUID даёт тот же ответ, а не 400 |
Пример запроса:
curl -X POST https://panel.example.com/api/v1/page-trash/7b0c1d52-3f4e-4a6b-9c8d-1e2f3a4b5c6d/restore \
-H "Api-Key: <токен>"После восстановления
Объект исчезает из списка корзины. Его настройки, связи с потоками и файлы локальной страницы сохраняются.
| Тип | Состояние | Что сделать дальше |
|---|---|---|
| Кампания | state равен paused, ссылка кампании отвечает 404 | Включить кампанию: PUT /api/v1/campaigns/{id} с {"state":"active"} — см. Admin API: кампании |
| Оффер | Снова отдаётся методами раздела офферов. state равен paused, потоки на него не ведут | Включить оффер: PUT /api/v1/offers/{id} с {"state":"active"} — см. Admin API: офферы |
| Лендинг | Снова отдаётся методами раздела лендингов и участвует в потоках, где был выбран | Ничего |
Ограничения восстановления
- Объекты восстанавливаются по одному: один запрос — один ID. Метода для нескольких объектов нет.
- Повторный запрос с тем же ID отвечает
404: объекта в корзине уже нет. - Метода для окончательного удаления или очистки корзины нет. Объект хранится в корзине, пока его не восстановят.
- Токен работает от имени создателя — владельца или администратора. Поэтому в списке видны все объекты корзины, а восстановить можно любой, включая оффер с включённым PHP с доступом в сеть — см. PHP в локальных страницах и доступ в сеть. Ограничения для тимлида и верстальщика относятся к работе в панели и описаны на странице Корзина.
- При неактивной лицензии оба метода отвечают
402— см. Истёкшая лицензия.