Adwords Api如何在广告级上暂停广告

时间:2020-06-23 18:35:01

标签: c# google-ads-api

我正在尝试使用AdId和AdGroupID暂停广告。我已成功暂停广告组,但我想单独暂停广告。这在Adwords API上可行吗?我尝试了以下代码,但似乎仅适用于广告组一级。还检查了AdService,但似乎没有选项可以编辑状态。 我正在使用Ads.AdWords.v201809 预先感谢

    public void googleEnableDisableAds(AdWordsUser user, long adGroupId, long AdID, AdGroupAdStatus AdStatus)
    {
        using (AdGroupAdService adGroupAdService =
             (AdGroupAdService)user.GetService(AdWordsService.v201809.AdGroupAdService))
        {
            List<AdGroupAdOperation> operations = new List<AdGroupAdOperation>();


            // Create the expanded text ad.
            ExpandedTextAd expandedTextAd = new ExpandedTextAd
            {
                //CR[i].                              
                id = AdID
            };

            AdGroupAd expandedTextAdGroupAd = new AdGroupAd
            {
                adGroupId = adGroupId,
                ad = expandedTextAd,

                // Optional: Set the status.
                status = AdStatus
            };

            // Create the operation.
            AdGroupAdOperation operation = new AdGroupAdOperation
            {
                @operator = Operator.SET,
                operand = expandedTextAdGroupAd
            };

            operations.Add(operation);

            AdGroupAdReturnValue retVal = null;

            try
            {
                if (operations.Count > 0)
                {
                    // Create the ads.
                    retVal = adGroupAdService.mutate(operations.ToArray());

                    // Display the results.
                    if (retVal != null && retVal.value != null)
                    {
                        foreach (AdGroupAd adGroupAd in retVal.value)
                        {
                            ExpandedTextAd newAd = adGroupAd.ad as ExpandedTextAd;
                            Console.WriteLine(
                                "Expanded text ad with ID '{0}' and headline '{1} - {2}' " +
                                "was added.", newAd.id, newAd.headlinePart1, newAd.headlinePart2);
                            //adGroupId                      
                        }
                    }
                    else
                    {
                        Console.WriteLine("No expanded text ads were created.");
                    }
                }

                adGroupAdService.Close();
            }
            catch (Exception e)
            {
                throw new System.ApplicationException("Failed to create expanded text ad.", e);
            }
        }
    }

1 个答案:

答案 0 :(得分:0)

以下是API文档https://developers.google.com/adwords/api/docs/samples/csharp/basic-operations#pause-an-ad

中的示例

关键思想是将status属性设置为PAUSED

AdGroupAdStatus status = AdGroupAdStatus.PAUSED