كل ما لمسه التغيير المطبَّق قُرئ من الحساب ودُوِّن قبل تنفيذه. والتراجع يعيد تشغيل ذلك، فهو شيء مسجَّل لا إعادة بناء.
انظر قبل أن تضغط
curl -s https://top-rated.team/google-ads/v1/changes/chg_abc123 \ -H "X-API-KEY: $MAKEHYBRID_KEY"
يحمل الجواب revertable، وnot_revertable_because حين تكون القيمة false. اقرأ ذلك أولًا: التغيير الذي أنشأ شيئًا جديدًا لا يمكن إبطاله بهذه الطريقة، وكذلك أي شيء لم يسمح Google بقراءته مجددًا قبل إجراء التغيير.
أعِده
curl -sX POST https://top-rated.team/google-ads/v1/changes/chg_abc123/revert \ -H "X-API-KEY: $MAKEHYBRID_KEY"
يدخل تغييرًا قائمًا بذاته، بسجله الخاص وتراجعه الخاص — فالتراجع عن شيء يمكن أن يُتراجع عنه بدوره. ويُوسَم الأصل بأنه reverted ويُسمّى فيه التغيير الذي فعل ذلك.
إذا رفض Google التراجع فلم يحدث شيء: العملية mutate تُنفَّذ كاملة أو لا تُنفَّذ، فيبقى الأصل مطبَّقًا وكما هو تمامًا. ويقول الرفض ذلك بدل أن يتركه موسومًا بأنه أُبطل.
ما الذي دُوِّن، ومتى
يُقرأ ما يلزم للتراجع من الحساب في اللحظة التي تسبق تنفيذ التغيير، لا بعده. وهذا الترتيب هو سبب نجاح الأمر كله: فحين تتحرك مزايدة لا يعود الرقم الذي تحركت منه في الحساب، ولا شيء يستطيع إعادة بنائه إلا نسخة أُخذت مسبقًا. لذلك تُؤخذ نسخة.
ما يُدوَّن هو حالة الأشياء التي يلمسها التغيير تحديدًا — الحقول المسمّاة في أقنعة التحديث، مقروءةً من الموارد التي يسمّيها. والتغيير الذي يوقف حملة واحدة يسجّل حالة تلك الحملة، لا لقطة للحساب، ولهذا لا يدوس التراجع على تغيير أجراه شخص آخر في الأثناء.
أسئلة شائعة
أي التغييرات لا يمكن التراجع عنها؟
كل ما أنشأ شيئًا جديدًا — حملة أو إعلانًا أو أصلًا — لأنه لم تكن هناك حالة سابقة تُدوَّن. ويقول التغيير ذلك في not_revertable_because قبل أن تضغط، بدل أن يفشل حين تحاول.
هل أستطيع التراجع عن التراجع؟
نعم. التراجع عن تغيير يدخل تغييرًا قائمًا بذاته، بسجله الخاص وتراجعه الخاص المدوَّن بالطريقة نفسها، فيمكن التراجع عنه بدوره.
ماذا لو غيّر أحد الشيء نفسه في Google Ads في الأثناء؟
التراجع عن التغيير يكتب القيم المدوَّنة فوق ما هو موجود الآن. وهذا السلوك الأمين للتراجع، وهو سبب قراءة الحساب قبل الضغط لا بعده.