Top-Rated Team
简体中文

撤销已应用的 Google Ads 更改

依据更改执行之前记录下的内容,撤销一项已经执行的更改 — 并事先知道哪些无法撤销。

已应用的更改所触及的一切,都在它执行之前从账户里读出并记录下来了。撤销就是重放这些记录,所以是已记录的内容,而不是重建。

按下之前先看

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"

它会作为一项独立的更改进入,有自己的记录和自己的撤销 — 所以撤销一件事本身也可以被撤销。原来的那项更改被标记为 reverted,并写明是哪项更改做了这件事。

如果 Google 拒绝了这次撤销,那就什么都没有发生:mutate 要么整块执行,要么完全不执行,所以原来的更改仍是已应用状态,和原来一模一样。拒绝会这样说明,而不是把它留在已撤销的标记下。

记录了什么,什么时候记录

撤销所需的内容,是在更改执行前的那一刻从账户里读出的,而不是执行之后。这个顺序就是它能起作用的全部原因:出价一旦变动,它原来的数值就不在账户里了,除了事先留下的副本,没有任何东西能重建它。所以会先留一份。

记录下来的,恰好是这项更改所触及之物的状态 — 即它的更新掩码里指明的字段,从它指明的资源里读回。暂停一个广告系列的更改,记录的是那个广告系列的状态,而不是账户的快照,所以撤销时不会践踏别人在此期间做的更改。

常见问题

哪些更改无法撤销?

任何新建了东西的更改 — 广告系列、广告、素材资源 — 因为没有可以记录的先前状态。更改会在你按下之前,通过 not_revertable_because 这样说明,而不是在你尝试时失败。

可以撤销这次撤销吗?

可以。撤销一项更改会作为一项独立的更改进入,有自己的记录,以及用同样方式记录的自己的撤销,所以可以再依次撤销。

如果在此期间有人在 Google Ads 里改了同一个东西呢?

撤销更改会把记录下的值写到现在的内容之上。这是撤销应有的诚实行为,也是要在按下之前而不是之后读取账户的原因。

让它自己运转起来

说说你的业务是做什么的,它就成了你自己的服务和产品合二为一:工作自己运转,用的是你的名字、你的账号和你的 AI 密钥。前 30 天免费,这里的一切都不需要工程师。

开始试用