Рекламная кампания, группа объявлений и отдельные объявления могут иметь один из следующих статусов:
Подробную информацию см. в блоге для разработчиков.
Опубликованные рекламные объекты могут иметь следующие статусы:
ACTIVE
PAUSED
PENDING_REVIEW
CREDIT_CARD_NEEDED
PREAPPROVED
DISABLED
PENDING_PROCESS
WITH_ISSUES
Чтобы присвоить рекламному объекту статус ARCHIVED
, установите для поля status
значение ARCHIVED
. Если объект имеет статус ARCHIVED
, вы сможете и дальше запрашивать информацию и статистику по его ID. Однако количество объектов в архиве ограничено. Учитывайте это ограничение и устанавливайте статус DELETED
для объектов, которые вам больше не нужны.
Объекты со статусом ARCHIVED
имеют только два изменяемых поля: name
и status
. Значение поля status
можно изменить только на DELETED
.
Чтобы установить для рекламного объекта статус DELETED
, укажите в поле status
значение DELETED
или отправьте для этого объекта запрос HTTP DELETE
. Если объект имеет статус DELETED
, для него нельзя восстановить значение ARCHIVED
.
Если сохранить ID удаленного объекта, в будущем можно будет выполнять по нему запросы и получать статистику или сведения о нем. При этом извлечь удаленные объекты в виде связи из неудаленного узла или объекта невозможно. Например, <API_VERSION>/<AD_ID>/insights
сработает для удаленного объекта, но <API_VERSION>/act_<AD_ACCOUNT_ID>/insights?level=ad
не выдаст статистику по нему.
При удалении рекламы помните, что отслеживание показов, кликов и действий для нее продолжается ещё 28 дней после последнего показа. Вы можете запрашивать статистику по объектам со статусом DELETED
с помощью фильтра ad.effective_status
.
Если у вас есть группа с двумя объявлениями, одно из которых вы удалите, следующие два запроса выдадут разные результаты:
https://graph.facebook.com/v21.0
/<AD_SET_ID>/insights https://graph.facebook.com/v21.0
/<AD_ID>/insights
Группа объявлений выдаст статистику как по удаленной, так и по оставшейся рекламе, хотя при выполнении запроса в группе показывается только одно объявление:
https://graph.facebook.com/v21.0
/<AD_SET_ID>/ads
Во избежание таких ситуаций рекомендуем удалять рекламу через 28 дней после последнего показа. Кроме того, перед удалением рекомендуется сохранять статистику или ID объектов у себя в системе. Это необязательно в следующих случаях:
У объекта со статусом DELETED
можно изменить только поле name
.
Управление статусом объектов обычно происходит следующим образом:
deleted
.Правила наследования статуса:
with_issues
, paused
, archived
или deleted
, его автоматически наследуют все дочерние объекты; deleted
, для получения ее дочерних объявлений и их групп нужно в явном виде указать их ID;with_issues
, paused
, archived
или deleted
, статус группы объявлений или рекламной кампании, в которые входит это объявление, остается без изменений, и с ними можно работать как обычно.Ограничения для объектов ARCHIVED
в конкретном рекламном аккаунте:
При чтении границ контекста archived
для архивных объектов необходимо использовать фильтрацию, так как по умолчанию они не возвращаются. При чтении статистики для рекламного объекта указываются данные обо всех дочерних объектах независимо от их статуса (active
, archived
или deleted
), поэтому фильтрация в этом случае не требуется.
Объекты со статусом ACTIVE
и PAUSED
отличаются от объектов со статусом ARCHIVED
и DELETED
. Главные различия описаны ниже.
Запрос | Опубликовано | В АРХИВЕ | УДАЛЕНО |
---|---|---|---|
Есть в базе данных | Да | Да | Да |
Максимальное количество в рекламном аккаунте | 100 000 | Без ограничений | |
Запрос границ контекста без фильтра | Да | Нет | Нет |
Запрос границ с фильтрацией статуса | Да для объектов со статусом, указанным в фильтре | Да, если в фильтре статуса указано | Нет, если в фильтре статуса не указано |
Запрос по собственному ID | Да | Да | Да |
Статистика, собранная в | Да | Да | Да |
Статистика, включенная в список результатов | Да | Нет | Нет |
Статистика, включенная в список результатов | Да для объектов со статусом, указанным в фильтре | Да для объектов со статусом, указанным в фильтре | Нет |
Статистика, показанная с | Да | Да | Да |
Статус можно изменить на | Любой допустимый статус |
| Нельзя изменить |
Отправка рекламы в архив:
use FacebookAds\Object\Ad;
$ad = new Ad(<AD_ID>);
$ad->archive();
from facebookads.adobjects.ad import Ad
ad = Ad(ad_id)
ad.remote_archive()
new Ad(<AD_ID>, context).update()
.setStatus(Ad.EnumStatus.VALUE_ARCHIVED)
.execute();
curl \
-F 'status=ARCHIVED' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v2.11/<AD_ID>
Удаление рекламы:
use FacebookAds\Object\Ad;
$ad = new Ad(<AD_ID>);
$ad->deleteSelf();
from facebookads.adobjects.ad import Ad
ad = Ad(<AD_ID>)
ad.remote_delete()
new Ad(<AD_ID>, context).update()
.setStatus(Ad.EnumStatus.VALUE_DELETED)
.execute();
curl -X DELETE \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v2.11/<AD_ID>/
Извлечение опубликованных дочерних объектов (например, всех опубликованных объявлений рекламной кампании), кроме ARCHIVED
и DELETED
:
curl -X GET \
-d 'fields="name"' \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/<AD_CAMPAIGN_ID>/ads
Чтобы извлечь из опубликованного объекта его дочерние объекты со статусом ARCHIVED
(например, все объявления со статусом ARCHIVED
из группы), требуется фильтр статуса:
curl -X GET \
-d 'effective_status=[
"ARCHIVED"
]' \
-d 'fields="name"' \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/<AD_CAMPAIGN_ID>/ads