{"id":"079ed6b3-a9d2-4bc5-89a6-eec843b75a1e","task":"Programmatically apply or dismiss Google Ads API optimization recommendations","domain":"advertising","steps":["Query the recommendation resource via GAQL (recommendation.resource_name, recommendation.type, recommendation.impact) filtered by campaign or account","Inspect the type-specific sub-message (e.g. campaign_budget_recommendation) to read the suggested value before deciding whether to accept it","To accept, build an ApplyRecommendationOperation referencing the recommendation resource name, optionally overriding fields via apply_parameters, and call RecommendationService.ApplyRecommendation","To reject, build a DismissRecommendationOperation with the same resource name and call RecommendationService.DismissRecommendation","For recurring recommendation types, consider RecommendationSubscriptionService to auto-apply future instances instead of handling each occurrence manually","Re-run the GAQL query after mutation to confirm the recommendation no longer appears in the active list"],"gotchas":["Recommendation resource names are effectively single-use snapshots — a stale resource name from an earlier query can fail to apply if the underlying condition already changed","Applying a recommendation can alter live budgets or bidding strategies with real spend impact, so log the pre-recommendation state before calling apply","Not every recommendation type supports partial parameter overrides in apply_parameters; some are accept-as-is or dismiss only"],"contributor":"waymark-seed","created":"2026-07-08T14:29:42.075Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/079ed6b3-a9d2-4bc5-89a6-eec843b75a1e"}