Google::Adwords::AdService - Interact with the Google Adwords AdService API calls


Google-Adwords documentation  | view source Contained in the Google-Adwords distribution.

Index


NAME

Top

Google::Adwords::AdService - Interact with the Google Adwords AdService API calls

VERSION

Top

This documentation refers to Google::Adwords::AdService version 0.5

SYNOPSIS

Top

        use Google::Adwords::AdService;
        use Google::Adwords::Ad;
        use Google::Adwords::Image;

        use File::Slurp;

        my $adgroup_id = 20048;

        # Create Text Ad
        my $ad1 = Google::Adwords::Ad->new
            ->adType('TextAd')
            ->headline('The World is Flat')
            ->description1('Yes')
            ->description2('It is')
            ->adGroupId($adgroup_id)
            ->destinationUrl('http://aarohan.biz')
            ->displayUrl('aarohan.biz')

        # Create an Image Ad
        my $ad2 = Google::Adwords::Ad->new
            ->adType('ImageAd')
            ->adGroupId($adgroup_id)
            ->destinationUrl('http://aarohan.biz')
            ->displayUrl('aarohan.biz');

        # The image stuff
        my $image_data = read_file('picture.jpg');
        my $image = Google::Adwords::Image->new;
        $image->name('picture.jpg');
        $image->data($image_data);

        # Associate the image with the Image Ad
        $ad2->image($image);

        # Create the AdService
        my $service = Google::Adwords::AdService->new();

        # login details
        $service->email('email@domain.com')
                ->password('password')
                ->developerToken($developer_token)
                ->applicationToken($app_token);

        # if you use a MCC
        #$service->clientEmail('clientemail@domain.com');
        # or 
        #$service->clientCustomerId('xxx-xxx-xxxx');

        # Add the two ads
        my @added_ads = $service->addAds($ad1, $ad2);




DESCRIPTION

Top

This module provides an interface to the Google Adwords AdService API calls.

METHODS

Top

addAds()

Description

Make a batch of new Ads. The adGroupId field of the Ad indicates which AdGroup to add the Ad to. The adGroupId field is required, and the indicated AdGroup must exist already.

Usage

    my @ads = $service->addAds($ad1, $ad2);

Parameters

A list of Google::Adwords::Ad objects to be added.

Returns

A list of Google::Adwords::Ad objects just created with their IDs filled in.

checkAds()

Description

Check a batch of Ads for policy errors. The number of Ads in the batch is limited to the maximum number of Ads per adgroup.

Usage

    my @api_errors = $service->checkAds({
        ads => \@ads,
        languageTarget => [ 'en', 'hi', ],
        geoTarget   => {
            countries => [ 'US', 'IN' ],
        },
    });

Parameters

A hashref with following keys -

* ads => an arrayref of Ad objects

* languageTarget => an arrayref of language codes

* geoTarget => a hashref of geotargeting info

Returns

A list of Google::Adwords::ApiError objects

findBusinesses()

Description

Searches for businesses with similar attributes. This call is similar to querying Google Local Search. All parameters are required.

Usage

    my @businesses = $service->findBusinesses({
        name    => 'business name',
        address => 'address of business',
        countryCode => 'IN',
    });




Parameters

A hashref with following keys :

* name => Name of the business
* address => Location of the business
* countryCode => Two letter country code of the business address.

Returns

A list of matching businesses, each as a Google::Adwords::Business object

getActiveAds()

Description

Return all active Ads associated with the list of AdGroup ids specified.

Usage

    my @ads = $obj->getActiveAds($adgroupid1, $adgroupid2);

Parameters

List of adgroupids from which we want the active Ads

Returns

A list of Google::Adwords::Ad objects

getAd()

Description

Return information about one Ad.

Usage

    my $ad = $service->getAd($adgroup_id, $ad_id);

Parameters

1) $adgroup_id => The ID of the AdGroup owning the Ad
2) $ad_id => The ID of the Ad

Returns

The requested Ad as a Google::Adwords::Ad object.

getAdStats()

Description

Get statistics for a list of ads in an ad group.

Usage

    my @ad_stats = $service->getAdStats({
        adGroupId   => 1234,
        adIds       => [ 3982, 2787, 17872 ],
        startDay    => $startDay,
        endDay      => $endDay,
    });

Parameters

Takes a hashref with following keys,

* adGroupId => The ad group that contains the Ads to be queried

* adIds => array reference of Ad IDs

* startDay => The starting day of the period for which statistics are to be collected in format YYYY-MM-DD

* endDay => The ending day of the period for which statistics are to be collected in format YYYY-MM-DD

Returns

A list of Google::Adwords::StatsRecord objects

getAllAds()

Description

Return all Ads (enabled, disabled, or paused) associated with the list of AdGroup ids specified.

Usage

    my @ads = $service->getAllAds($adgroup_id1, $adgroup_id2);

Parameters

A list of AdGroup IDs that own the Ads

Returns

A list of Google::Adwords::Ad objects

getMyBusinesses()

Description

Returns the list of businesses registered to the user in the Local Business Center. The user is determined by the clientEmail header if it is specified. Otherwise, the email header is used instead.

Usage

    my @businesses = $self->getMyBusinesses();

Parameters

    NONE

Returns

A list of Google::Adwords::Business objects

updateAds()

Description

Update a batch of ads. Use the id field of the ad to indicate which ad to update. Currently only the status field is updateable, all other fields will be ignored.

Usage

    $ret = $obj->updateAds($ad1, $ad2);

Parameters

A List of Google::Adwords::Ad objects to be updated

Returns

1 on success

SEE ALSO

Top

* Google::Adwords::Ad
* Google::Adwords::Business
* Google::Adwords::StatsRecord

AUTHORS

Top

Rohan Almeida <rohan@almeida.in>

Mathieu Jondet <mathieu@eulerian.com>

LICENSE AND COPYRIGHT

Top


Google-Adwords documentation  | view source Contained in the Google-Adwords distribution.