1616
1717
1818import argparse
19- from typing import Any , List
19+ from typing import List
2020import sys
2121
2222from google .ads .googleads .client import GoogleAdsClient
2323from google .ads .googleads .errors import GoogleAdsException
24+ from google .ads .googleads .v20 .common .types .criteria import (
25+ KeywordInfo ,
26+ )
27+ from google .ads .googleads .v20 .resources .types .campaign_criterion import (
28+ CampaignCriterion ,
29+ )
30+ from google .ads .googleads .v20 .services .services .campaign_service import (
31+ CampaignServiceClient ,
32+ )
33+ from google .ads .googleads .v20 .services .services .campaign_criterion_service import (
34+ CampaignCriterionServiceClient ,
35+ )
36+ from google .ads .googleads .v20 .services .services .geo_target_constant_service import (
37+ GeoTargetConstantServiceClient ,
38+ )
39+ from google .ads .googleads .v20 .services .types .campaign_criterion_service import (
40+ CampaignCriterionOperation ,
41+ MutateCampaignCriteriaResponse
42+ )
2443
2544
2645def main (
@@ -30,19 +49,19 @@ def main(
3049 keyword_text : str ,
3150 location_id : str ,
3251) -> None :
33- campaign_criterion_service : Any = client .get_service (
52+ campaign_criterion_service : CampaignCriterionServiceClient = client .get_service (
3453 "CampaignCriterionService"
3554 )
3655
37- operations : List [Any ] = [
56+ operations : List [CampaignCriterionOperation ] = [
3857 create_location_op (client , customer_id , campaign_id , location_id ),
3958 create_negative_keyword_op (
4059 client , customer_id , campaign_id , keyword_text
4160 ),
4261 create_proximity_op (client , customer_id , campaign_id ),
4362 ]
4463
45- campaign_criterion_response : Any = (
64+ campaign_criterion_response : MutateCampaignCriteriaResponse = (
4665 campaign_criterion_service .mutate_campaign_criteria (
4766 customer_id = customer_id , operations = operations
4867 )
@@ -55,17 +74,17 @@ def main(
5574# [START add_campaign_targeting_criteria]
5675def create_location_op (
5776 client : GoogleAdsClient , customer_id : str , campaign_id : str , location_id : str
58- ) -> Any :
59- campaign_service : Any = client .get_service ("CampaignService" )
60- geo_target_constant_service : Any = client .get_service (
77+ ) -> CampaignCriterionOperation :
78+ campaign_service : CampaignServiceClient = client .get_service ("CampaignService" )
79+ geo_target_constant_service : GeoTargetConstantServiceClient = client .get_service (
6180 "GeoTargetConstantService"
6281 )
6382
6483 # Create the campaign criterion.
65- campaign_criterion_operation : Any = client .get_type (
84+ campaign_criterion_operation : CampaignCriterionOperation = client .get_type (
6685 "CampaignCriterionOperation"
6786 )
68- campaign_criterion : Any = campaign_criterion_operation .create
87+ campaign_criterion : CampaignCriterion = campaign_criterion_operation .create
6988 campaign_criterion .campaign = campaign_service .campaign_path (
7089 customer_id , campaign_id
7190 )
@@ -84,19 +103,19 @@ def create_location_op(
84103
85104def create_negative_keyword_op (
86105 client : GoogleAdsClient , customer_id : str , campaign_id : str , keyword_text : str
87- ) -> Any :
88- campaign_service : Any = client .get_service ("CampaignService" )
106+ ) -> CampaignCriterionOperation :
107+ campaign_service : CampaignServiceClient = client .get_service ("CampaignService" )
89108
90109 # Create the campaign criterion.
91- campaign_criterion_operation : Any = client .get_type (
110+ campaign_criterion_operation : CampaignCriterionOperation = client .get_type (
92111 "CampaignCriterionOperation"
93112 )
94- campaign_criterion : Any = campaign_criterion_operation .create
113+ campaign_criterion : CampaignCriterion = campaign_criterion_operation .create
95114 campaign_criterion .campaign = campaign_service .campaign_path (
96115 customer_id , campaign_id
97116 )
98117 campaign_criterion .negative = True
99- criterion_keyword = campaign_criterion .keyword
118+ criterion_keyword : KeywordInfo = campaign_criterion .keyword
100119 criterion_keyword .text = keyword_text
101120 criterion_keyword .match_type = client .enums .KeywordMatchTypeEnum .BROAD
102121
@@ -106,14 +125,14 @@ def create_negative_keyword_op(
106125# [START add_campaign_targeting_criteria_1]
107126def create_proximity_op (
108127 client : GoogleAdsClient , customer_id : str , campaign_id : str
109- ) -> Any :
110- campaign_service : Any = client .get_service ("CampaignService" )
128+ ) -> CampaignCriterionOperation :
129+ campaign_service : CampaignServiceClient = client .get_service ("CampaignService" )
111130
112131 # Create the campaign criterion.
113- campaign_criterion_operation : Any = client .get_type (
132+ campaign_criterion_operation : CampaignCriterionOperation = client .get_type (
114133 "CampaignCriterionOperation"
115134 )
116- campaign_criterion : Any = campaign_criterion_operation .create
135+ campaign_criterion : CampaignCriterion = campaign_criterion_operation .create
117136 campaign_criterion .campaign = campaign_service .campaign_path (
118137 customer_id , campaign_id
119138 )
0 commit comments