Skip to content

Commit c44ef40

Browse files
Merge pull request #133 from Opteo/google-ads-v23
Google Ads v23
2 parents c1a15e9 + e68da0d commit c44ef40

1,472 files changed

Lines changed: 269772 additions & 210504 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

Dockerfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,4 +62,5 @@ RUN sed -i 's/request.keywordPlan/request.keyword_plan/' googleads-nodejs/src/${
6262
sed -i 's/request.resourceName/request.resource_name/' googleads-nodejs/src/${GOOGLE_ADS_VERSION}/*.ts && \
6363
sed -i 's/request.customerId/request.customer_id/' googleads-nodejs/src/${GOOGLE_ADS_VERSION}/*.ts && \
6464
sed -i 's/request.adGroupAd/request.ad_group_ad/' googleads-nodejs/src/${GOOGLE_ADS_VERSION}/*.ts && \
65+
sed -i 's/request.selectedIncentiveId/request.selected_incentive_id/' googleads-nodejs/src/${GOOGLE_ADS_VERSION}/*.ts && \
6566
sed -i 's/"compile-protos": "compileProtos src"/"compile-protos": "compileProtos --keep-case --force-number src"/' googleads-nodejs/package.json

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Google Ads API version
22
# This only needs changing for major versions e.g. v8 -> v9
3-
GOOGLE_ADS_VERSION=v22
3+
GOOGLE_ADS_VERSION=v23
44

55
BUNDLE=googleads-nodejs.tar.gz
66
PACKAGE_BUILD=/package/googleads-nodejs

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
<p align="center">
1212
<a href="https://developers.google.com/google-ads/api/docs/release-notes">
13-
<img src="https://img.shields.io/badge/google%20ads-v22-009688.svg?style=flat-square">
13+
<img src="https://img.shields.io/badge/google%20ads-v23-009688.svg?style=flat-square">
1414
</a>
1515
<a href="https://www.npmjs.com/package/google-ads-node">
1616
<img src="https://img.shields.io/npm/v/google-ads-node.svg?style=flat-square">

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "google-ads-node",
3-
"version": "19.0.0",
3+
"version": "23.0.0-beta.0",
44
"description": "Google Ads API client library",
55
"main": "build/src/index.js",
66
"files": [

package/googleads-nodejs/package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@
4848
"audience service",
4949
"automatically created asset removal service",
5050
"batch job service",
51+
"benchmarks service",
5152
"bidding data exclusion service",
5253
"bidding seasonality adjustment service",
5354
"bidding strategy service",
@@ -100,6 +101,7 @@
100101
"google ads field service",
101102
"google ads service",
102103
"identity verification service",
104+
"incentive service",
103105
"invoice service",
104106
"keyword plan ad group keyword service",
105107
"keyword plan ad group service",

package/googleads-nodejs/protos/google/ads/googleads/v22/common/ad_asset.proto renamed to package/googleads-nodejs/protos/google/ads/googleads/v23/common/ad_asset.proto

Lines changed: 24 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2025 Google LLC
1+
// Copyright 2026 Google LLC
22
//
33
// Licensed under the Apache License, Version 2.0 (the "License");
44
// you may not use this file except in compliance with the License.
@@ -14,20 +14,20 @@
1414

1515
syntax = "proto3";
1616

17-
package google.ads.googleads.v22.common;
17+
package google.ads.googleads.v23.common;
1818

19-
import "google/ads/googleads/v22/common/asset_policy.proto";
20-
import "google/ads/googleads/v22/enums/asset_performance_label.proto";
21-
import "google/ads/googleads/v22/enums/served_asset_field_type.proto";
19+
import "google/ads/googleads/v23/common/asset_policy.proto";
20+
import "google/ads/googleads/v23/enums/asset_performance_label.proto";
21+
import "google/ads/googleads/v23/enums/served_asset_field_type.proto";
2222

23-
option csharp_namespace = "Google.Ads.GoogleAds.V22.Common";
24-
option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v22/common;common";
23+
option csharp_namespace = "Google.Ads.GoogleAds.V23.Common";
24+
option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v23/common;common";
2525
option java_multiple_files = true;
2626
option java_outer_classname = "AdAssetProto";
27-
option java_package = "com.google.ads.googleads.v22.common";
27+
option java_package = "com.google.ads.googleads.v23.common";
2828
option objc_class_prefix = "GAA";
29-
option php_namespace = "Google\\Ads\\GoogleAds\\V22\\Common";
30-
option ruby_package = "Google::Ads::GoogleAds::V22::Common";
29+
option php_namespace = "Google\\Ads\\GoogleAds\\V23\\Common";
30+
option ruby_package = "Google::Ads::GoogleAds::V23::Common";
3131

3232
// Proto file describing assets used inside an ad.
3333

@@ -40,11 +40,11 @@ message AdTextAsset {
4040
// within this field. Multiple assets can be pinned to the same field. An
4141
// asset that is unpinned or pinned to a different field will not serve in a
4242
// field where some other asset has been pinned.
43-
google.ads.googleads.v22.enums.ServedAssetFieldTypeEnum.ServedAssetFieldType
43+
google.ads.googleads.v23.enums.ServedAssetFieldTypeEnum.ServedAssetFieldType
4444
pinned_field = 2;
4545

4646
// The performance label of this text asset.
47-
google.ads.googleads.v22.enums.AssetPerformanceLabelEnum.AssetPerformanceLabel
47+
google.ads.googleads.v23.enums.AssetPerformanceLabelEnum.AssetPerformanceLabel
4848
asset_performance_label = 5;
4949

5050
// The policy summary of this text asset.
@@ -78,6 +78,11 @@ message AdVideoAssetInfo {
7878
// given ad slot can be found.
7979
optional AdVideoAssetInventoryPreferences
8080
ad_video_asset_inventory_preferences = 1;
81+
82+
// Defines feature controls for this AdVideoAsset during serving time.
83+
// For example, whether YouTube comments should be enabled for Partnership Ads
84+
// served on YouTube Shorts.
85+
optional AdVideoAssetLinkFeatureControl ad_video_asset_feature_control = 2;
8186
}
8287

8388
// YouTube Video Asset inventory preferences.
@@ -95,6 +100,13 @@ message AdVideoAssetInventoryPreferences {
95100
optional bool shorts_preference = 3;
96101
}
97102

103+
// YouTube Video Asset feature controls.
104+
message AdVideoAssetLinkFeatureControl {
105+
// Defines if YouTube comments should be enabled for the creative
106+
// using this YouTube video asset served on YouTube Shorts.
107+
optional bool allow_youtube_comments = 1;
108+
}
109+
98110
// A media bundle asset used inside an ad.
99111
message AdMediaBundleAsset {
100112
// The Asset resource name of this media bundle.

package/googleads-nodejs/protos/google/ads/googleads/v22/common/ad_type_infos.proto renamed to package/googleads-nodejs/protos/google/ads/googleads/v23/common/ad_type_infos.proto

Lines changed: 30 additions & 77 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2025 Google LLC
1+
// Copyright 2026 Google LLC
22
//
33
// Licensed under the Apache License, Version 2.0 (the "License");
44
// you may not use this file except in compliance with the License.
@@ -14,25 +14,24 @@
1414

1515
syntax = "proto3";
1616

17-
package google.ads.googleads.v22.common;
17+
package google.ads.googleads.v23.common;
1818

19-
import "google/ads/googleads/v22/common/ad_asset.proto";
20-
import "google/ads/googleads/v22/enums/call_conversion_reporting_state.proto";
21-
import "google/ads/googleads/v22/enums/display_ad_format_setting.proto";
22-
import "google/ads/googleads/v22/enums/display_upload_product_type.proto";
23-
import "google/ads/googleads/v22/enums/legacy_app_install_ad_app_store.proto";
24-
import "google/ads/googleads/v22/enums/mime_type.proto";
25-
import "google/ads/googleads/v22/enums/video_thumbnail.proto";
19+
import "google/ads/googleads/v23/common/ad_asset.proto";
20+
import "google/ads/googleads/v23/enums/display_ad_format_setting.proto";
21+
import "google/ads/googleads/v23/enums/display_upload_product_type.proto";
22+
import "google/ads/googleads/v23/enums/legacy_app_install_ad_app_store.proto";
23+
import "google/ads/googleads/v23/enums/mime_type.proto";
24+
import "google/ads/googleads/v23/enums/video_thumbnail.proto";
2625
import "google/api/field_behavior.proto";
2726

28-
option csharp_namespace = "Google.Ads.GoogleAds.V22.Common";
29-
option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v22/common;common";
27+
option csharp_namespace = "Google.Ads.GoogleAds.V23.Common";
28+
option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v23/common;common";
3029
option java_multiple_files = true;
3130
option java_outer_classname = "AdTypeInfosProto";
32-
option java_package = "com.google.ads.googleads.v22.common";
31+
option java_package = "com.google.ads.googleads.v23.common";
3332
option objc_class_prefix = "GAA";
34-
option php_namespace = "Google\\Ads\\GoogleAds\\V22\\Common";
35-
option ruby_package = "Google::Ads::GoogleAds::V22::Common";
33+
option php_namespace = "Google\\Ads\\GoogleAds\\V23\\Common";
34+
option ruby_package = "Google::Ads::GoogleAds::V23::Common";
3635

3736
// Proto file containing info messages for specific ad types.
3837

@@ -121,7 +120,7 @@ message ImageAdInfo {
121120
optional string preview_image_url = 20;
122121

123122
// The mime type of the image.
124-
google.ads.googleads.v22.enums.MimeTypeEnum.MimeType mime_type = 10;
123+
google.ads.googleads.v23.enums.MimeTypeEnum.MimeType mime_type = 10;
125124

126125
// The name of the image. If the image was created from a MediaFile, this is
127126
// the MediaFile's name. If the image was created from bytes, this is empty.
@@ -212,7 +211,7 @@ message InFeedVideoAdInfo {
212211
string description2 = 3;
213212

214213
// Video thumbnail image to use.
215-
google.ads.googleads.v22.enums.VideoThumbnailEnum.VideoThumbnail thumbnail =
214+
google.ads.googleads.v23.enums.VideoThumbnailEnum.VideoThumbnail thumbnail =
216215
4;
217216
}
218217

@@ -268,6 +267,13 @@ message VideoResponsiveAdInfo {
268267
// Currently, only a single value for the YouTube video asset is supported.
269268
repeated AdVideoAsset videos = 5;
270269

270+
// Optional advertiser/brand name. Maximum display width is 25 characters.
271+
AdTextAsset business_name = 9;
272+
273+
// Optional logo image to be used in the ad. The minimum size is 128x128 and
274+
// the aspect ratio must be 1:1(+-1%).
275+
repeated AdImageAsset logo_images = 10;
276+
271277
// List of image assets used for the companion banner.
272278
// Currently, only a single value for the companion banner asset is supported.
273279
repeated AdImageAsset companion_banners = 6;
@@ -355,7 +361,7 @@ message LegacyResponsiveDisplayAdInfo {
355361
optional string square_marketing_image = 27;
356362

357363
// Specifies which format the ad will be served in. Default is ALL_FORMATS.
358-
google.ads.googleads.v22.enums.DisplayAdFormatSettingEnum
364+
google.ads.googleads.v23.enums.DisplayAdFormatSettingEnum
359365
.DisplayAdFormatSetting format_setting = 13;
360366

361367
// Prefix before price. For example, 'as low as'.
@@ -439,7 +445,7 @@ message LegacyAppInstallAdInfo {
439445
optional string app_id = 6;
440446

441447
// The app store the mobile app is available in.
442-
google.ads.googleads.v22.enums.LegacyAppInstallAdAppStoreEnum
448+
google.ads.googleads.v23.enums.LegacyAppInstallAdAppStoreEnum
443449
.LegacyAppInstallAdAppStore app_store = 2;
444450

445451
// The headline of the ad.
@@ -521,7 +527,7 @@ message ResponsiveDisplayAdInfo {
521527
optional string promo_text = 23;
522528

523529
// Specifies which format the ad will be served in. Default is ALL_FORMATS.
524-
google.ads.googleads.v22.enums.DisplayAdFormatSettingEnum
530+
google.ads.googleads.v23.enums.DisplayAdFormatSettingEnum
525531
.DisplayAdFormatSetting format_setting = 16;
526532

527533
// Specification for various creative controls.
@@ -572,7 +578,7 @@ message LocalAdInfo {
572578
// need to be included with the ad.
573579
message DisplayUploadAdInfo {
574580
// The product type of this ad. See comments on the enum for details.
575-
google.ads.googleads.v22.enums.DisplayUploadProductTypeEnum
581+
google.ads.googleads.v23.enums.DisplayUploadProductTypeEnum
576582
.DisplayUploadProductType display_upload_product_type = 1;
577583

578584
// The asset data that makes up the ad.
@@ -608,60 +614,6 @@ message SmartCampaignAdInfo {
608614
repeated AdTextAsset descriptions = 2;
609615
}
610616

611-
// A call ad.
612-
message CallAdInfo {
613-
// The country code in the ad.
614-
string country_code = 1;
615-
616-
// The phone number in the ad.
617-
string phone_number = 2;
618-
619-
// The business name in the ad.
620-
string business_name = 3;
621-
622-
// First headline in the ad.
623-
string headline1 = 11;
624-
625-
// Second headline in the ad.
626-
string headline2 = 12;
627-
628-
// The first line of the ad's description.
629-
string description1 = 4;
630-
631-
// The second line of the ad's description.
632-
string description2 = 5;
633-
634-
// Whether to enable call tracking for the creative. Enabling call
635-
// tracking also enables call conversions.
636-
bool call_tracked = 6;
637-
638-
// Whether to disable call conversion for the creative.
639-
// If set to `true`, disables call conversions even when `call_tracked` is
640-
// `true`.
641-
// If `call_tracked` is `false`, this field is ignored.
642-
bool disable_call_conversion = 7;
643-
644-
// The URL to be used for phone number verification.
645-
string phone_number_verification_url = 8;
646-
647-
// The conversion action to attribute a call conversion to. If not set a
648-
// default conversion action is used. This field only has effect if
649-
// `call_tracked` is set to `true`. Otherwise this field is ignored.
650-
string conversion_action = 9;
651-
652-
// The call conversion behavior of this call ad. It can use its own call
653-
// conversion setting, inherit the account level setting, or be disabled.
654-
google.ads.googleads.v22.enums.CallConversionReportingStateEnum
655-
.CallConversionReportingState conversion_reporting_state = 10;
656-
657-
// First part of text that can be appended to the URL in the ad. Optional.
658-
string path1 = 13;
659-
660-
// Second part of text that can be appended to the URL in the ad. This field
661-
// can only be set when `path1` is also set. Optional.
662-
string path2 = 14;
663-
}
664-
665617
// A Demand Gen multi asset ad.
666618
message DemandGenMultiAssetAdInfo {
667619
// Marketing image assets to be used in the ad. Valid image types are GIF,
@@ -711,9 +663,6 @@ message DemandGenMultiAssetAdInfo {
711663

712664
// Call to action text.
713665
optional string call_to_action_text = 8;
714-
715-
// Boolean option that indicates if this ad must be served with lead form.
716-
optional bool lead_form_only = 9;
717666
}
718667

719668
// A Demand Gen carousel ad.
@@ -757,6 +706,10 @@ message DemandGenVideoResponsiveAdInfo {
757706
// The minimum size is 128x128 and the aspect ratio must be 1:1 (+-1%).
758707
repeated AdImageAsset logo_images = 5;
759708

709+
// List of image assets used for the companion banner.
710+
// Currently, only a single value for the companion banner asset is supported.
711+
repeated AdImageAsset companion_banners = 10;
712+
760713
// First part of text that appears in the ad with the displayed URL.
761714
string breadcrumb1 = 6;
762715

package/googleads-nodejs/protos/google/ads/googleads/v22/common/additional_application_info.proto renamed to package/googleads-nodejs/protos/google/ads/googleads/v23/common/additional_application_info.proto

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2025 Google LLC
1+
// Copyright 2026 Google LLC
22
//
33
// Licensed under the Apache License, Version 2.0 (the "License");
44
// you may not use this file except in compliance with the License.
@@ -14,18 +14,18 @@
1414

1515
syntax = "proto3";
1616

17-
package google.ads.googleads.v22.common;
17+
package google.ads.googleads.v23.common;
1818

19-
import "google/ads/googleads/v22/enums/application_instance.proto";
19+
import "google/ads/googleads/v23/enums/application_instance.proto";
2020

21-
option csharp_namespace = "Google.Ads.GoogleAds.V22.Common";
22-
option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v22/common;common";
21+
option csharp_namespace = "Google.Ads.GoogleAds.V23.Common";
22+
option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v23/common;common";
2323
option java_multiple_files = true;
2424
option java_outer_classname = "AdditionalApplicationInfoProto";
25-
option java_package = "com.google.ads.googleads.v22.common";
25+
option java_package = "com.google.ads.googleads.v23.common";
2626
option objc_class_prefix = "GAA";
27-
option php_namespace = "Google\\Ads\\GoogleAds\\V22\\Common";
28-
option ruby_package = "Google::Ads::GoogleAds::V22::Common";
27+
option php_namespace = "Google\\Ads\\GoogleAds\\V23\\Common";
28+
option ruby_package = "Google::Ads::GoogleAds::V23::Common";
2929

3030
// Proto file describing common application info proto messages.
3131

@@ -39,6 +39,6 @@ message AdditionalApplicationInfo {
3939
string application_id = 1;
4040

4141
// The instance type of the application sending the request.
42-
google.ads.googleads.v22.enums.ApplicationInstanceEnum.ApplicationInstance
42+
google.ads.googleads.v23.enums.ApplicationInstanceEnum.ApplicationInstance
4343
application_instance = 2;
4444
}

0 commit comments

Comments
 (0)