google-ads-api-client
Version:
A friendly and exhaustive client to the google-ads-api, code generated directly from google's published protobuf schema.
183 lines • 7.28 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.GoogleAdsServiceClient = void 0;
const google_ads_service_1 = require("./google_ads_service");
const runtime_rpc_1 = require("@protobuf-ts/runtime-rpc");
// Proto file describing the GoogleAdsService.
/**
* Service to fetch data and metrics across resources.
*
* @generated from protobuf service google.ads.googleads.v11.services.GoogleAdsService
*/
class GoogleAdsServiceClient {
constructor(_transport) {
this._transport = _transport;
this.typeName = google_ads_service_1.GoogleAdsService.typeName;
this.methods = google_ads_service_1.GoogleAdsService.methods;
this.options = google_ads_service_1.GoogleAdsService.options;
}
/**
* Returns all rows that match the search query.
*
* List of thrown errors:
* [AuthenticationError]()
* [AuthorizationError]()
* [ChangeEventError]()
* [ChangeStatusError]()
* [ClickViewError]()
* [HeaderError]()
* [InternalError]()
* [QueryError]()
* [QuotaError]()
* [RequestError]()
*
* @generated from protobuf rpc: Search(google.ads.googleads.v11.services.SearchGoogleAdsRequest) returns (google.ads.googleads.v11.services.SearchGoogleAdsResponse);
*/
search(input, options) {
const method = this.methods[0], opt = this._transport.mergeOptions(options);
return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input);
}
/**
* Returns all rows that match the search stream query.
*
* List of thrown errors:
* [AuthenticationError]()
* [AuthorizationError]()
* [ChangeEventError]()
* [ChangeStatusError]()
* [ClickViewError]()
* [HeaderError]()
* [InternalError]()
* [QueryError]()
* [QuotaError]()
* [RequestError]()
*
* @generated from protobuf rpc: SearchStream(google.ads.googleads.v11.services.SearchGoogleAdsStreamRequest) returns (stream google.ads.googleads.v11.services.SearchGoogleAdsStreamResponse);
*/
searchStream(input, options) {
const method = this.methods[1], opt = this._transport.mergeOptions(options);
return (0, runtime_rpc_1.stackIntercept)("serverStreaming", this._transport, method, opt, input);
}
/**
* Creates, updates, or removes resources. This method supports atomic
* transactions with multiple types of resources. For example, you can
* atomically create a campaign and a campaign budget, or perform up to
* thousands of mutates atomically.
*
* This method is essentially a wrapper around a series of mutate methods. The
* only features it offers over calling those methods directly are:
*
* - Atomic transactions
* - Temp resource names (described below)
* - Somewhat reduced latency over making a series of mutate calls
*
* Note: Only resources that support atomic transactions are included, so this
* method can't replace all calls to individual services.
*
* ## Atomic Transaction Benefits
*
* Atomicity makes error handling much easier. If you're making a series of
* changes and one fails, it can leave your account in an inconsistent state.
* With atomicity, you either reach the chosen state directly, or the request
* fails and you can retry.
*
* ## Temp Resource Names
*
* Temp resource names are a special type of resource name used to create a
* resource and reference that resource in the same request. For example, if a
* campaign budget is created with `resource_name` equal to
* `customers/123/campaignBudgets/-1`, that resource name can be reused in
* the `Campaign.budget` field in the same request. That way, the two
* resources are created and linked atomically.
*
* To create a temp resource name, put a negative number in the part of the
* name that the server would normally allocate.
*
* Note:
*
* - Resources must be created with a temp name before the name can be reused.
* For example, the previous CampaignBudget+Campaign example would fail if
* the mutate order was reversed.
* - Temp names are not remembered across requests.
* - There's no limit to the number of temp names in a request.
* - Each temp name must use a unique negative number, even if the resource
* types differ.
*
* ## Latency
*
* It's important to group mutates by resource type or the request may time
* out and fail. Latency is roughly equal to a series of calls to individual
* mutate methods, where each change in resource type is a new call. For
* example, mutating 10 campaigns then 10 ad groups is like 2 calls, while
* mutating 1 campaign, 1 ad group, 1 campaign, 1 ad group is like 4 calls.
*
* List of thrown errors:
* [AdCustomizerError]()
* [AdError]()
* [AdGroupAdError]()
* [AdGroupCriterionError]()
* [AdGroupError]()
* [AssetError]()
* [AuthenticationError]()
* [AuthorizationError]()
* [BiddingError]()
* [CampaignBudgetError]()
* [CampaignCriterionError]()
* [CampaignError]()
* [CampaignExperimentError]()
* [CampaignSharedSetError]()
* [CollectionSizeError]()
* [ContextError]()
* [ConversionActionError]()
* [CriterionError]()
* [CustomerFeedError]()
* [DatabaseError]()
* [DateError]()
* [DateRangeError]()
* [DistinctError]()
* [ExtensionFeedItemError]()
* [ExtensionSettingError]()
* [FeedAttributeReferenceError]()
* [FeedError]()
* [FeedItemError]()
* [FeedItemSetError]()
* [FieldError]()
* [FieldMaskError]()
* [FunctionParsingError]()
* [HeaderError]()
* [ImageError]()
* [InternalError]()
* [KeywordPlanAdGroupKeywordError]()
* [KeywordPlanCampaignError]()
* [KeywordPlanError]()
* [LabelError]()
* [ListOperationError]()
* [MediaUploadError]()
* [MutateError]()
* [NewResourceCreationError]()
* [NullError]()
* [OperationAccessDeniedError]()
* [PolicyFindingError]()
* [PolicyViolationError]()
* [QuotaError]()
* [RangeError]()
* [RequestError]()
* [ResourceCountLimitExceededError]()
* [SettingError]()
* [SharedSetError]()
* [SizeLimitError]()
* [StringFormatError]()
* [StringLengthError]()
* [UrlFieldError]()
* [UserListError]()
* [YoutubeVideoRegistrationError]()
*
* @generated from protobuf rpc: Mutate(google.ads.googleads.v11.services.MutateGoogleAdsRequest) returns (google.ads.googleads.v11.services.MutateGoogleAdsResponse);
*/
mutate(input, options) {
const method = this.methods[2], opt = this._transport.mergeOptions(options);
return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input);
}
}
exports.GoogleAdsServiceClient = GoogleAdsServiceClient;
//# sourceMappingURL=google_ads_service.client.js.map