#!/usr/bin/perl -w
my
$ad_group_id
=
"INSERT_AD_GROUP_ID_HERE"
;
my
$keyword_id
=
"INSERT_KEYWORD_ID_HERE"
;
sub
update_keyword {
my
$client
=
shift
;
my
$ad_group_id
=
shift
;
my
$keyword_id
=
shift
;
my
$criterion
= Google::Ads::AdWords::v201309::Criterion->new({
id
=>
$keyword_id
,
});
my
$ad_group_criterion
=
Google::Ads::AdWords::v201309::BiddableAdGroupCriterion->new({
adGroupId
=>
$ad_group_id
,
criterion
=>
$criterion
});
my
$bids
=
Google::Ads::AdWords::v201309::BiddingStrategyConfiguration->new({
bids
=> [
Google::Ads::AdWords::v201309::CpcBid->new({
bid
=> Google::Ads::AdWords::v201309::Money->new({
microAmount
=> 1000000
})
}),
]});
$ad_group_criterion
->set_biddingStrategyConfiguration(
$bids
);
my
$operation
= Google::Ads::AdWords::v201309::AdGroupCriterionOperation->new({
operand
=>
$ad_group_criterion
,
operator
=>
"SET"
});
my
$result
=
$client
->AdGroupCriterionService()->mutate({
operations
=> [
$operation
]
});
if
(
$result
->get_value()) {
my
$ad_group_criterion
=
$result
->get_value()->[0];
printf
"Keyword with ad group id \"%d\", id \"%d\" was updated with bid "
.
"amount = \"%d\" micros.\n"
,
$ad_group_criterion
->get_adGroupId(),
$ad_group_criterion
->get_criterion()->get_id,
$ad_group_criterion
->get_biddingStrategyConfiguration()->
get_bids()->[0]->get_bid()->get_microAmount();
}
else
{
print
"No keyword was updated.\n"
;
}
return
1;
}
if
(abs_path($0) ne abs_path(__FILE__)) {
return
1;
}
Google::Ads::AdWords::Logging::enable_all_logging();
my
$client
= Google::Ads::AdWords::Client->new({
version
=>
"v201309"
});
$client
->set_die_on_faults(1);
update_keyword(
$client
,
$ad_group_id
,
$keyword_id
);