Усе, чого торкнулася застосована зміна, було зчитано з акаунта й записано до її виконання. Повернення відтворює цей запис, тож це записане, а не відновлене.
Подивіться, перш ніж натискати
curl -s https://top-rated.team/google-ads/v1/changes/chg_abc123 \ -H "X-API-KEY: $MAKEHYBRID_KEY"
У відповіді є revertable, а коли він false — ще й not_revertable_because. Прочитайте це першим: зміна, що створила щось нове, так скасувати не можна, як і все, що Google не дозволив нам зчитати до виконання зміни.
Поверніть як було
curl -sX POST https://top-rated.team/google-ads/v1/changes/chg_abc123/revert \ -H "X-API-KEY: $MAKEHYBRID_KEY"
Повернення проходить як окрема зміна, зі своїм записом і своїм відкатом, тож повернене теж можна повернути. Початкову зміну позначено як повернену, і вона називає зміну, що це зробила.
Якщо Google відхиляє повернення, нічого не сталося: mutate виконується цілком або не виконується зовсім, тож початкова зміна лишається застосованою і саме такою, якою була. Відмова каже про це, а не лишає її позначеною як скасовану.
Що було записано і коли
Відкат зчитується з акаунта в мить перед виконанням зміни, а не після. Саме цей порядок усе й уможливлює: коли ставка вже зрушила, числа, з якого вона зрушила, в акаунті більше немає, і відновити його може лише копія, зроблена заздалегідь. Тому її роблять.
Записується стан рівно того, чого стосується зміна, — полів, названих у її масках оновлення, зчитаних із ресурсів, які вона називає. Зміна, що призупиняє одну кампанію, записує статус цієї кампанії, а не знімок акаунта, і тому повернення не затре зміну, яку тим часом зробив хтось інший.
Запитання, які ставлять
Які зміни не можна повернути?
Усе, що створило щось нове, — кампанію, оголошення, ресурс, — бо попереднього стану, який можна записати, не було. Зміна каже про це в not_revertable_because до того, як ви натиснете, а не падає, коли ви пробуєте.
Чи можна скасувати скасування?
Так. Повернення зміни проходить як окрема зміна, зі своїм записом і своїм відкатом, записаним так само, тож її своєю чергою можна повернути.
Що, якщо хтось тим часом змінив те саме в Google Ads?
Повернення записує збережені значення поверх того, що там зараз. Для скасування це чесна поведінка, і саме тому варто читати акаунт до того, як натискати, а не після.