GOOGLE-ADWORDS-PERL-CLIENT

 view release on metacpan or  search on metacpan

examples/v201309/basic_operations/add_keywords.pl  view on Meta::CPAN


    # Create biddable ad group criterion.
    my $keyword_biddable_ad_group_criterion =
        Google::Ads::AdWords::v201309::BiddableAdGroupCriterion->new({
          adGroupId => $ad_group_id,
          criterion => $keyword,
          # Set bids (non-required).
          biddingStrategyConfiguration =>
              Google::Ads::AdWords::v201309::BiddingStrategyConfiguration->new({
                bids => [
                  Google::Ads::AdWords::v201309::CpcBid->new({
                    bid => Google::Ads::AdWords::v201309::Money->new({
                      microAmount => 500000
                    })
                  }),
                ]
              }),
          # Additional properties (non-required).
          userStatus => "PAUSED",
          destinationUrl => "http://www.example.com/mars"
        });
    # Create operation.
    my $keyword_ad_group_operation =
      Google::Ads::AdWords::v201309::AdGroupCriterionOperation->new({
        operator => "ADD",
        operand => $keyword_biddable_ad_group_criterion
      });
    push @operations, $keyword_ad_group_operation;
  }

  # Add ad group criteria.
  my $result = $client->AdGroupCriterionService()->mutate({
    operations => \@operations
  });

  # Display ad group criteria.
  if ($result->get_value()) {
    foreach my $keyword (@{$result->get_value()}) {
      printf "Keyword with ad group id \"%d\", id \"%d\", " .
             "text \"%s\" and match type \"%s\" was added.\n",
             $keyword->get_adGroupId(),
             $keyword->get_criterion()->get_id(),
             $keyword->get_criterion()->get_text(),
             $keyword->get_criterion()->get_matchType();
    }
  } else {
    print "No keywords were added.";
  }

  return 1;
}

# Don't run the example if the file is being included.
if (abs_path($0) ne abs_path(__FILE__)) {
  return 1;
}

# Log SOAP XML request, response and API errors.
Google::Ads::AdWords::Logging::enable_all_logging();

# Get AdWords Client, credentials will be read from ~/adwords.properties.
my $client = Google::Ads::AdWords::Client->new({version => "v201309"});

# By default examples are set to die on any server returned fault.
$client->set_die_on_faults(1);

# Call the example
add_keywords($client, $ad_group_id);



( run in 0.488 second using v1.01-cache-2.11-cpan-75ffa21a3d4 )