NAME

Google::Ads::GoogleAds::BaseService

DESCRIPTION

The abstract base class for all Google Ads API services, e.g. CampaignService, AdGroupService, etc.

SYNOPSIS

use Google::Ads::GoogleAds::Client;

my $api_client = Google::Ads::GoogleAds::Client->new();

my $campaign_service = $api_client->CampaignService();

ATTRIBUTES

Each service instance is initialized by Google::Ads::GoogleAds::Client, and these attributes are set automatically.

Alternatively, there is a get_ and set_ method associated with each attribute for retrieving or setting them dynamically.

my %api_client_of : ATTR(:name<api_client> :default<>);

api_client

A reference to the Google::Ads::GoogleAds::Client, holding the API credentials and configurations.

METHODS

call

Sends REST HTTP requests to Google Ads API server and handles the responses.

Parameters

  • http_method: The HTTP request method, e.g. GET, POST.

  • request_path: The relative request URL which may contain wildcards to expand, e.g. {+resourceName}, {+customerId}.

  • request_body: A Perl object representing the HTTP request payload, which will be used to expand the {+resourceName} or any other expression in the request path and encoded into JSON string for a HTTP POST request.

  • response_type: The class name of the expected response. An instance of this class will be returned if the request succeeds.

  • content_callback: The optional streaming content callback method.

Returns

An instance of the class defined by the response_type parameter, or a Google::Ads::GoogleAds::GoogleAdsException object if an error has occurred at the server side by default. However if the die_on_faults flag is set to true in Google::Ads::GoogleAds::Client, the service will issue a die() with error message on API errors.

_get_http_headers

Prepare the basic HTTP request headers including Content-Type, user-agent, developer-token, login-customer-id, linked-customer-id - if needed. The headers will be consolidated with access token in the method of "prepare_request" in Google::Ads::GoogleAds::Common::OAuth2BaseHandler.

Returns

The basic HTTP headers including Content-Type, user-agent, developer-token, login-customer-id, linked-customer-id - if needed.

LICENSE AND COPYRIGHT

Copyright 2019 Google LLC

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

REPOSITORY INFORMATION

$Rev: $
$LastChangedBy: $
$Id: $