Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Os rascunhos de campanha são uma maneira de preparar um conjunto de mudanças pretendidas em uma campanha
base. Cada rascunho de campanha tem uma campanha de base e uma campanha de rascunho associadas a ele.
A campanha básica é uma campanha normal na sua conta, com anúncios, grupos de anúncios e outros recursos.
A campanha de rascunho é uma camada virtual em que as mudanças são agregadas à medida que você
realiza operações, mas não afetam nenhuma campanha real na sua conta. Quando estiver tudo certo com o estado da campanha rascunho, você poderá aplicá-la a uma campanha real de algumas maneiras diferentes.
A solicitação create se comporta como uma chamada de API típica, em que uma resposta é retornada imediatamente.
Como modificar uma campanha de rascunho
Depois de criar o rascunho da campanha, você precisará pesquisar o nome do recurso
da campanha associada para começar a fazer mudanças. Para isso, use a seguinte consulta em GoogleAdsService.SearchStream:
Depois de ter o nome do recurso da campanha de rascunho, você pode modificar essa campanha da mesma forma que faria com qualquer campanha real na sua conta. A campanha rascunho não veicula anúncios, mas serve como uma área de teste para mudanças que podem ser aplicadas a uma campanha real mais tarde.
Promover ou remover uma campanha de rascunho
Depois de configurar a campanha de rascunho, você terá algumas opções.
Promova a campanha de rascunho para a campanha de base, aplicando todas as mudanças feitas na campanha de rascunho à campanha de base. Essa é uma operação assíncrona. Para isso, chame CampaignDraftService.PromoteCampaignDraft.
Remova o rascunho de campanha definindo o
status como REMOVED. Isso vai descartar as mudanças se você decidir não continuar. Essa é uma operação
síncrona e funciona como qualquer outra chamada de API.
[null,null,["Última atualização 2025-08-27 UTC."],[[["\u003cp\u003eCampaign drafts provide a virtual environment (draft campaign) to stage changes to an existing campaign (base campaign) without affecting live ads.\u003c/p\u003e\n"],["\u003cp\u003eCreating a campaign draft is a simple process involving specifying the base campaign and draft name, while draft campaign modifications follow standard campaign editing procedures.\u003c/p\u003e\n"],["\u003cp\u003eYou can promote the draft campaign, applying the changes to the base campaign asynchronously, or remove the draft campaign discarding changes entirely.\u003c/p\u003e\n"],["\u003cp\u003ePromoting a draft campaign is an asynchronous operation, providing a mechanism to track its progress without repeated API calls.\u003c/p\u003e\n"]]],[],null,["# Campaign Drafts\n\nCampaign drafts are a way of staging some set of intended changes to a base\ncampaign. Each campaign draft has a base campaign and a draft campaign\nassociated with it.\n\n- The base campaign is a normal campaign in your account, with ads, ad groups, and other resources.\n- The draft campaign is a virtual layer where changes are aggregated as you perform operations, but don't affect any real campaigns in your account. Once you are satisfied with the state of the draft campaign, you can apply it to a real campaign in a few different ways.\n\n| **Key Term:** The **campaign draft** is a resource you use to create new drafts from a base campaign and to determine associations between base campaigns and draft campaigns. The **draft campaign** is a virtual campaign that acts as a campaign but cannot serve ads.\n\nCreating a draft\n----------------\n\nCreating a [`CampaignDraft`](/google-ads/api/reference/rpc/v21/CampaignDraft) is as simple as any\nother entity creation in the Google Ads API. Create a `CampaignDraft` and specify its\n[`base_campaign`](/google-ads/api/reference/rpc/v21/CampaignDraft#base_campaign) and\n[`name`](/google-ads/api/reference/rpc/v21/CampaignDraft#name), then call\n[`CampaignDraftService.MutateCampaignDrafts`](/google-ads/api/reference/rpc/v21/CampaignDraftService),\npassing in the newly created `CampaignDraft` as a\n[`create`](/google-ads/api/reference/rpc/v21/CampaignDraftOperation/Create) operation.\n\nThe [`create`](/google-ads/api/reference/rpc/v21/CampaignDraftOperation/Create) request behaves\nlike a typical API call in that a response is returned immediately.\n\nModifying a draft campaign\n--------------------------\n\nOnce you create your campaign draft, you will need to look up the resource name\nof its associated draft campaign so that you can begin making changes. You can\ndo this using the following query in\n[`GoogleAdsService.SearchStream`](/google-ads/api/reference/rpc/v21/GoogleAdsService/SearchStream): \n\n SELECT campaign_draft.draft_campaign\n FROM campaign_draft\n WHERE campaign_draft.resource_name = \"CAMPAIGN_DRAFT_RESOURCE_NAME_HERE\"\n\nOnce you have your draft campaign resource name, you can modify that campaign\nthe same way you would any real campaign in your account. The draft campaign\ncannot serve ads but serves as a staging area for changes that you can apply to\na real campaign later.\n\nPromote or remove a draft campaign\n----------------------------------\n\n| **Key Term:** Asynchronous operations in the Google Ads API return what's called a **longrunning operation**. Longrunning operations serve as a convenient way to poll for operation completion without needing to make a full API call.\n\nAfter you are done configuring your draft campaign, you have a few options.\n\n1. **Promote** the draft campaign to the base campaign, applying all the changes you made in the draft campaign to the base campaign. This is an **asynchronous operation** . This can be performed by calling [`CampaignDraftService.PromoteCampaignDraft`](/google-ads/api/reference/rpc/v21/CampaignDraftService/PromoteCampaignDraft).\n2. **Remove the campaign draft** by setting its [`status`](/google-ads/api/reference/rpc/v21/CampaignDraft#status) to `REMOVED`. This will throw away the changes if you decided not to proceed. This is a synchronous operation and works like any other API call."]]