1818"""
1919
2020
21- import argparse
2221import argparse
2322import datetime
2423import sys
24+ from typing import List
2525import uuid
26- from typing import MutableSequence
2726
2827from google .ads .googleads .client import GoogleAdsClient
2928from google .ads .googleads .errors import GoogleAdsException
30- from google .ads .googleads .v19 .services .types .campaign_budget_service import (
29+ from google .ads .googleads .v20 .services .types .campaign_budget_service import (
3130 CampaignBudgetOperation ,
3231 CampaignBudgetServiceClient ,
3332 MutateCampaignBudgetsResponse ,
3433)
35- from google .ads .googleads .v19 .services .types .campaign_service import (
34+ from google .ads .googleads .v20 .services .types .campaign_service import (
3635 CampaignOperation ,
3736 CampaignServiceClient ,
3837 MutateCampaignsResponse ,
3938)
40- from google .ads .googleads .v19 .resources .types .campaign_budget import (
39+ from google .ads .googleads .v20 .resources .types .campaign_budget import (
4140 CampaignBudget ,
4241)
43- from google .ads .googleads .v19 .resources .types .campaign import Campaign
44- from google .ads .googleads .v19 .common .types .bidding import ManualCpc
42+ from google .ads .googleads .v20 .resources .types .campaign import Campaign
43+ from google .ads .googleads .v20 .common .types .bidding import ManualCpc
4544
4645
4746_DATE_FORMAT : str = "%Y%m%d"
@@ -70,10 +69,11 @@ def main(client: GoogleAdsClient, customer_id: str) -> None:
7069 # Add budget.
7170 campaign_budget_response : MutateCampaignBudgetsResponse
7271 try :
72+ budget_operations : List [CampaignBudgetOperation ] = [campaign_budget_operation ]
7373 campaign_budget_response = (
7474 campaign_budget_service .mutate_campaign_budgets (
7575 customer_id = customer_id ,
76- operations = [ campaign_budget_operation ], # type: ignore
76+ operations = budget_operations ,
7777 )
7878 )
7979 except GoogleAdsException as ex :
@@ -98,7 +98,7 @@ def main(client: GoogleAdsClient, customer_id: str) -> None:
9898 campaign .status = client .enums .CampaignStatusEnum .PAUSED
9999
100100 # Set the bidding strategy and budget.
101- campaign .manual_cpc = ManualCpc ( )
101+ campaign .manual_cpc = client . get_type ( "ManualCpc" )
102102 campaign .campaign_budget = campaign_budget_response .results [0 ].resource_name
103103
104104 # Set the campaign network options.
@@ -123,8 +123,9 @@ def main(client: GoogleAdsClient, customer_id: str) -> None:
123123 # Add the campaign.
124124 campaign_response : MutateCampaignsResponse
125125 try :
126+ campaign_operations : List [CampaignOperation ] = [campaign_operation ]
126127 campaign_response = campaign_service .mutate_campaigns (
127- customer_id = customer_id , operations = [ campaign_operation ] # type: ignore
128+ customer_id = customer_id , operations = campaign_operations
128129 )
129130 print (f"Created campaign { campaign_response .results [0 ].resource_name } ." )
130131 except GoogleAdsException as ex :
0 commit comments