---
metadata:
  - name: generator
    content: Diplodoc Platform v5.52.0
alternate:
  - https://yandex.ru/dev/direct/doc/en/best-practice/check-changes.md
  - https://yandex.ru/dev/direct/doc/ru/best-practice/check-changes.md
  - href: ru/best-practice/check-changes.md
    type: text/markdown
    title: Markdown version
  - href: ../llms.txt
    type: text/markdown
    title: llms.txt
sourcePath: ru/dg/best-practice/check-changes.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.ru/dev/direct/doc/ru/llms.txt

# Отслеживание изменений

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

Заново получать с сервера рекомендуется только фактически изменившиеся объекты. Для проверки наличия изменений следует использовать методы сервиса [Changes](https://yandex.ru/dev/direct/doc/ref-v5/changes/changes.html):

- [CheckDictionaries](https://yandex.ru/dev/direct/doc/ref-v5/changes/checkDictionaries.html) — сообщает о наличии изменений в справочниках;
- [CheckCampaings](https://yandex.ru/dev/direct/doc/ref-v5/changes/checkCampaigns.html) — сообщает о наличии изменений в кампаниях клиента;
- [check](https://yandex.ru/dev/direct/doc/ref-v5/changes/check.html) — сообщает о наличии изменений в кампаниях, группах и объявлениях клиента.

{% note info %}

Изменения в ключевых фразах считаются изменениями в группе.

{% endnote %}

Рекомендуется использовать методы следующим образом:

1. При первом запуске приложения вызовите метод [CheckDictionaries](https://yandex.ru/dev/direct/doc/ref-v5/changes/checkDictionaries.html) без параметра `Timestamp` для синхронизации текущего времени.

   Метод возвращает параметр `Timestamp` — текущее время на сервере по UTC.

1. При каждом последующем вызове методов укажите значение параметра `Timestamp`, полученное при предыдущем вызове. Это гарантирует непрерывность интервалов для проверки изменений вне зависимости от возможных задержек, а также разницы во времени сервера и приложения.

Если требуется проверить наличие изменений во всех кампаниях, группах и объявлениях клиента, то:

1. С помощью метода [CheckCampaings](https://yandex.ru/dev/direct/doc/ref-v5/changes/checkCampaigns.html) проверьте, в каких кампаниях произошли изменения.

   Метод возвращает идентификаторы кампаний, в которых произошли изменения. В параметре `ChangesIn` указывается, где произошли изменения:

   - `SELF` — в параметрах кампании;
   - `CHILDREN` — в дочерних объектах: группах, объявлениях, фразах;
   - `STAT` — корректировка статистики кампании (как правило, в связи с фильтрацией недобросовестных кликов).

1. Если метод показал наличие изменений в дочерних объектах кампании (значение CHILDREN), получите идентификаторы изменившихся объектов с помощью метода [check](https://yandex.ru/dev/direct/doc/ref-v5/changes/check.html). Для этого во входном массиве `CampaignIds` укажите идентификатор кампании, а во входном массиве `FieldNames` — значения AdGroupIds и AdIds.

В случае получения ответа о наличии изменений актуальные данные можно получить с помощью метода `get` соответствующих сервисов — [AdGroups](https://yandex.ru/dev/direct/doc/ref-v5/adgroups/adgroups.html) или [Ads](https://yandex.ru/dev/direct/doc/ref-v5/ads/ads.html).
