@google-analytics/data 3.3.0 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,29 @@
1
1
  # Changelog
2
2
 
3
+ ## [4.0.1](https://github.com/googleapis/google-cloud-node/compare/data-v4.0.0...data-v4.0.1) (2023-09-06)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * [Many APIs] simplify logic for HTTP/1.1 REST fallback option ([#4583](https://github.com/googleapis/google-cloud-node/issues/4583)) ([c3ddba8](https://github.com/googleapis/google-cloud-node/commit/c3ddba8df9fee6185e36a4e99f7c67b0319f1242))
9
+ * **deps:** Update dependency google-auth-library to v9 ([#4560](https://github.com/googleapis/google-cloud-node/issues/4560)) ([e5099b7](https://github.com/googleapis/google-cloud-node/commit/e5099b7a475e0cfaf0d25aa8d6755cd7bc43cbe0))
10
+
11
+ ## [4.0.0](https://github.com/googleapis/google-cloud-node/compare/data-v3.3.0...data-v4.0.0) (2023-08-06)
12
+
13
+
14
+ ### ⚠ BREAKING CHANGES
15
+
16
+ * migrate to Node 14 ([#4443](https://github.com/googleapis/google-cloud-node/issues/4443))
17
+
18
+ ### Bug Fixes
19
+
20
+ * [Many APIs] fix typings for IAM methods ([#4459](https://github.com/googleapis/google-cloud-node/issues/4459)) ([1d510be](https://github.com/googleapis/google-cloud-node/commit/1d510bef5bd7b0ac3552b4729ef3d9ebe1ac3dc4))
21
+
22
+
23
+ ### Miscellaneous Chores
24
+
25
+ * Migrate to Node 14 ([#4443](https://github.com/googleapis/google-cloud-node/issues/4443)) ([2260f12](https://github.com/googleapis/google-cloud-node/commit/2260f12543d171bda95345e53475f5f0fdc45770))
26
+
3
27
  ## [3.3.0](https://github.com/googleapis/google-cloud-node/compare/data-v3.2.2...data-v3.3.0) (2023-07-11)
4
28
 
5
29
 
package/README.md CHANGED
@@ -130,7 +130,7 @@ also contains samples.
130
130
 
131
131
  ## Supported Node.js Versions
132
132
 
133
- Our client libraries follow the [Node.js release schedule](https://nodejs.org/en/about/releases/).
133
+ Our client libraries follow the [Node.js release schedule](https://github.com/nodejs/release#release-schedule).
134
134
  Libraries are compatible with all current _active_ and _maintenance_ versions of
135
135
  Node.js.
136
136
  If you are using an end-of-life version of Node.js, we recommend that you update
@@ -1,4 +1,4 @@
1
- // Copyright 2022 Google LLC
1
+ // Copyright 2023 Google LLC
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -66,7 +66,8 @@ service BetaAnalyticsData {
66
66
 
67
67
  // Returns multiple reports in a batch. All reports must be for the same
68
68
  // GA4 Property.
69
- rpc BatchRunReports(BatchRunReportsRequest) returns (BatchRunReportsResponse) {
69
+ rpc BatchRunReports(BatchRunReportsRequest)
70
+ returns (BatchRunReportsResponse) {
70
71
  option (google.api.http) = {
71
72
  post: "/v1beta/{property=properties/*}:batchRunReports"
72
73
  body: "*"
@@ -75,7 +76,8 @@ service BetaAnalyticsData {
75
76
 
76
77
  // Returns multiple pivot reports in a batch. All reports must be for the same
77
78
  // GA4 Property.
78
- rpc BatchRunPivotReports(BatchRunPivotReportsRequest) returns (BatchRunPivotReportsResponse) {
79
+ rpc BatchRunPivotReports(BatchRunPivotReportsRequest)
80
+ returns (BatchRunPivotReportsResponse) {
79
81
  option (google.api.http) = {
80
82
  post: "/v1beta/{property=properties/*}:batchRunPivotReports"
81
83
  body: "*"
@@ -108,7 +110,8 @@ service BetaAnalyticsData {
108
110
  // For a guide to constructing realtime requests & understanding responses,
109
111
  // see [Creating a Realtime
110
112
  // Report](https://developers.google.com/analytics/devguides/reporting/data/v1/realtime-basics).
111
- rpc RunRealtimeReport(RunRealtimeReportRequest) returns (RunRealtimeReportResponse) {
113
+ rpc RunRealtimeReport(RunRealtimeReportRequest)
114
+ returns (RunRealtimeReportResponse) {
112
115
  option (google.api.http) = {
113
116
  post: "/v1beta/{property=properties/*}:runRealtimeReport"
114
117
  body: "*"
@@ -125,7 +128,8 @@ service BetaAnalyticsData {
125
128
  //
126
129
  // The Realtime and Core reports have different compatibility rules. This
127
130
  // method checks compatibility for Core reports.
128
- rpc CheckCompatibility(CheckCompatibilityRequest) returns (CheckCompatibilityResponse) {
131
+ rpc CheckCompatibility(CheckCompatibilityRequest)
132
+ returns (CheckCompatibilityResponse) {
129
133
  option (google.api.http) = {
130
134
  post: "/v1beta/{property=properties/*}:checkCompatibility"
131
135
  body: "*"
@@ -144,10 +148,6 @@ message CheckCompatibilityRequest {
144
148
  // `property` should be the same value as in your `runReport` request.
145
149
  //
146
150
  // Example: properties/1234
147
- //
148
- // Set the Property ID to 0 for compatibility checking on dimensions and
149
- // metrics common to all properties. In this special mode, this method will
150
- // not return custom dimensions and metrics.
151
151
  string property = 1;
152
152
 
153
153
  // The dimensions in this report. `dimensions` should be the same value as in
@@ -223,7 +223,7 @@ message RunReportRequest {
223
223
  // must be unspecified.
224
224
  repeated DateRange date_ranges = 4;
225
225
 
226
- // Dimension filters allow you to ask for only specific dimension values in
226
+ // Dimension filters let you ask for only specific dimension values in
227
227
  // the report. To learn more, see [Fundamentals of Dimension
228
228
  // Filters](https://developers.google.com/analytics/devguides/reporting/data/v1/basics#dimension_filters)
229
229
  // for examples. Metrics cannot be used in this filter.
@@ -245,7 +245,7 @@ message RunReportRequest {
245
245
  int64 offset = 7;
246
246
 
247
247
  // The number of rows to return. If unspecified, 10,000 rows are returned. The
248
- // API returns a maximum of 100,000 rows per request, no matter how many you
248
+ // API returns a maximum of 250,000 rows per request, no matter how many you
249
249
  // ask for. `limit` must be positive.
250
250
  //
251
251
  // The API can also return fewer rows than the requested `limit`, if there
@@ -276,6 +276,13 @@ message RunReportRequest {
276
276
  // If false or unspecified, each row with all metrics equal to 0 will not be
277
277
  // returned. If true, these rows will be returned if they are not separately
278
278
  // removed by a filter.
279
+ //
280
+ // Regardless of this `keep_empty_rows` setting, only data recorded by the
281
+ // Google Analytics (GA4) property can be displayed in a report.
282
+ //
283
+ // For example if a property never logs a `purchase` event, then a query for
284
+ // the `eventName` dimension and `eventCount` metric will not have a row
285
+ // eventName: "purchase" and eventCount: 0.
279
286
  bool keep_empty_rows = 13;
280
287
 
281
288
  // Toggles whether to return the current state of this Analytics Property's
@@ -381,6 +388,13 @@ message RunPivotReportRequest {
381
388
  // If false or unspecified, each row with all metrics equal to 0 will not be
382
389
  // returned. If true, these rows will be returned if they are not separately
383
390
  // removed by a filter.
391
+ //
392
+ // Regardless of this `keep_empty_rows` setting, only data recorded by the
393
+ // Google Analytics (GA4) property can be displayed in a report.
394
+ //
395
+ // For example if a property never logs a `purchase` event, then a query for
396
+ // the `eventName` dimension and `eventCount` metric will not have a row
397
+ // eventName: "purchase" and eventCount: 0.
384
398
  bool keep_empty_rows = 10;
385
399
 
386
400
  // Toggles whether to return the current state of this Analytics Property's
@@ -560,7 +574,7 @@ message RunRealtimeReportRequest {
560
574
  FilterExpression metric_filter = 5;
561
575
 
562
576
  // The number of rows to return. If unspecified, 10,000 rows are returned. The
563
- // API returns a maximum of 100,000 rows per request, no matter how many you
577
+ // API returns a maximum of 250,000 rows per request, no matter how many you
564
578
  // ask for. `limit` must be positive.
565
579
  //
566
580
  // The API can also return fewer rows than the requested `limit`, if there
@@ -1,4 +1,4 @@
1
- // Copyright 2022 Google LLC
1
+ // Copyright 2023 Google LLC
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -21,8 +21,8 @@ option java_multiple_files = true;
21
21
  option java_outer_classname = "ReportingApiProto";
22
22
  option java_package = "com.google.analytics.data.v1beta";
23
23
 
24
- // A contiguous set of days: startDate, startDate + 1, ..., endDate. Requests
25
- // are allowed up to 4 date ranges.
24
+ // A contiguous set of days: `startDate`, `startDate + 1`, ..., `endDate`.
25
+ // Requests are allowed up to 4 date ranges.
26
26
  message DateRange {
27
27
  // The inclusive start date for the query in the format `YYYY-MM-DD`. Cannot
28
28
  // be after `end_date`. The format `NdaysAgo`, `yesterday`, or `today` is also
@@ -43,8 +43,8 @@ message DateRange {
43
43
  string name = 3;
44
44
  }
45
45
 
46
- // A contiguous set of minutes: startMinutesAgo, startMinutesAgo + 1, ...,
47
- // endMinutesAgo. Requests are allowed up to 2 minute ranges.
46
+ // A contiguous set of minutes: `startMinutesAgo`, `startMinutesAgo + 1`, ...,
47
+ // `endMinutesAgo`. Requests are allowed up to 2 minute ranges.
48
48
  message MinuteRange {
49
49
  // The inclusive start minute for the query as a number of minutes before now.
50
50
  // For example, `"startMinutesAgo": 29` specifies the report should include
@@ -420,7 +420,7 @@ message Pivot {
420
420
  // single pivot requests.
421
421
  //
422
422
  // The product of the `limit` for each `pivot` in a `RunPivotReportRequest`
423
- // must not exceed 100,000. For example, a two pivot request with `limit:
423
+ // must not exceed 250,000. For example, a two pivot request with `limit:
424
424
  // 1000` in each pivot will fail because the product is `1,000,000`.
425
425
  int64 limit = 4;
426
426
 
@@ -581,6 +581,18 @@ message ResponseMetaData {
581
581
 
582
582
  // If true, indicates some buckets of dimension combinations are rolled into
583
583
  // "(other)" row. This can happen for high cardinality reports.
584
+ //
585
+ // The metadata parameter dataLossFromOtherRow is populated based on the
586
+ // aggregated data table used in the report. The parameter will be accurately
587
+ // populated regardless of the filters and limits in the report.
588
+ //
589
+ // For example, the (other) row could be dropped from the report because the
590
+ // request contains a filter on sessionSource = google. This parameter will
591
+ // still be populated if data loss from other row was present in the input
592
+ // aggregate data used to generate this report.
593
+ //
594
+ // To learn more, see [About the (other) row and data
595
+ // sampling](https://support.google.com/analytics/answer/13208658#reports).
584
596
  bool data_loss_from_other_row = 3;
585
597
 
586
598
  // Describes the schema restrictions actively enforced in creating this
@@ -739,13 +751,13 @@ message NumericValue {
739
751
  // property is exhausted, all requests to that property will return Resource
740
752
  // Exhausted errors.
741
753
  message PropertyQuota {
742
- // Standard Analytics Properties can use up to 25,000 tokens per day;
743
- // Analytics 360 Properties can use 250,000 tokens per day. Most requests
754
+ // Standard Analytics Properties can use up to 200,000 tokens per day;
755
+ // Analytics 360 Properties can use 2,000,000 tokens per day. Most requests
744
756
  // consume fewer than 10 tokens.
745
757
  QuotaStatus tokens_per_day = 1;
746
758
 
747
- // Standard Analytics Properties can use up to 5,000 tokens per hour;
748
- // Analytics 360 Properties can use 50,000 tokens per hour. An API request
759
+ // Standard Analytics Properties can use up to 40,000 tokens per hour;
760
+ // Analytics 360 Properties can use 400,000 tokens per hour. An API request
749
761
  // consumes a single number of tokens, and that number is deducted from all of
750
762
  // the hourly, daily, and per project hourly quotas.
751
763
  QuotaStatus tokens_per_hour = 2;
@@ -765,9 +777,9 @@ message PropertyQuota {
765
777
  // thresholded dimensions.
766
778
  QuotaStatus potentially_thresholded_requests_per_hour = 5;
767
779
 
768
- // Analytics Properties can use up to 25% of their tokens per project per
769
- // hour. This amounts to standard Analytics Properties can use up to 1,250
770
- // tokens per project per hour, and Analytics 360 Properties can use 12,500
780
+ // Analytics Properties can use up to 35% of their tokens per project per
781
+ // hour. This amounts to standard Analytics Properties can use up to 14,000
782
+ // tokens per project per hour, and Analytics 360 Properties can use 140,000
771
783
  // tokens per project per hour. An API request consumes a single number of
772
784
  // tokens, and that number is deducted from all of the hourly, daily, and per
773
785
  // project hourly quotas.
@@ -57,8 +57,7 @@ export declare class AlphaAnalyticsDataClient {
57
57
  * API remote host.
58
58
  * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override.
59
59
  * Follows the structure of {@link gapicConfig}.
60
- * @param {boolean | "rest"} [options.fallback] - Use HTTP fallback mode.
61
- * Pass "rest" to use HTTP/1.1 REST API instead of gRPC.
60
+ * @param {boolean} [options.fallback] - Use HTTP/1.1 REST mode.
62
61
  * For more information, please check the
63
62
  * {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}.
64
63
  * @param {gax} [gaxInstance]: loaded instance of `google-gax`. Useful if you
@@ -66,7 +65,7 @@ export declare class AlphaAnalyticsDataClient {
66
65
  * HTTP implementation. Load only fallback version and pass it to the constructor:
67
66
  * ```
68
67
  * const gax = require('google-gax/build/src/fallback'); // avoids loading google-gax with gRPC
69
- * const client = new AlphaAnalyticsDataClient({fallback: 'rest'}, gax);
68
+ * const client = new AlphaAnalyticsDataClient({fallback: true}, gax);
70
69
  * ```
71
70
  */
72
71
  constructor(opts?: ClientOptions, gaxInstance?: typeof gax | typeof gax.fallback);
@@ -191,9 +190,8 @@ export declare class AlphaAnalyticsDataClient {
191
190
  * @param {object} [options]
192
191
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
193
192
  * @returns {Promise} - The promise which resolves to an array.
194
- * The first element of the array is an object representing {@link google.analytics.data.v1alpha.RunFunnelReportResponse | RunFunnelReportResponse}.
195
- * Please see the
196
- * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods)
193
+ * The first element of the array is an object representing {@link protos.google.analytics.data.v1alpha.RunFunnelReportResponse|RunFunnelReportResponse}.
194
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
197
195
  * for more details and examples.
198
196
  * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.run_funnel_report.js</caption>
199
197
  * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_RunFunnelReport_async
@@ -243,9 +241,8 @@ export declare class AlphaAnalyticsDataClient {
243
241
  * @param {object} [options]
244
242
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
245
243
  * @returns {Promise} - The promise which resolves to an array.
246
- * The first element of the array is an object representing {@link google.analytics.data.v1alpha.QueryAudienceListResponse | QueryAudienceListResponse}.
247
- * Please see the
248
- * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods)
244
+ * The first element of the array is an object representing {@link protos.google.analytics.data.v1alpha.QueryAudienceListResponse|QueryAudienceListResponse}.
245
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
249
246
  * for more details and examples.
250
247
  * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.query_audience_list.js</caption>
251
248
  * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_QueryAudienceList_async
@@ -269,9 +266,8 @@ export declare class AlphaAnalyticsDataClient {
269
266
  * @param {object} [options]
270
267
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
271
268
  * @returns {Promise} - The promise which resolves to an array.
272
- * The first element of the array is an object representing {@link google.analytics.data.v1alpha.AudienceList | AudienceList}.
273
- * Please see the
274
- * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods)
269
+ * The first element of the array is an object representing {@link protos.google.analytics.data.v1alpha.AudienceList|AudienceList}.
270
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
275
271
  * for more details and examples.
276
272
  * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.get_audience_list.js</caption>
277
273
  * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_GetAudienceList_async
@@ -313,8 +309,7 @@ export declare class AlphaAnalyticsDataClient {
313
309
  * The first element of the array is an object representing
314
310
  * a long running operation. Its `promise()` method returns a promise
315
311
  * you can `await` for.
316
- * Please see the
317
- * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations)
312
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
318
313
  * for more details and examples.
319
314
  * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.create_audience_list.js</caption>
320
315
  * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_CreateAudienceList_async
@@ -332,8 +327,7 @@ export declare class AlphaAnalyticsDataClient {
332
327
  * The operation name that will be passed.
333
328
  * @returns {Promise} - The promise which resolves to an object.
334
329
  * The decoded operation object has result and metadata field to get information from.
335
- * Please see the
336
- * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations)
330
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
337
331
  * for more details and examples.
338
332
  * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.create_audience_list.js</caption>
339
333
  * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_CreateAudienceList_async
@@ -364,14 +358,13 @@ export declare class AlphaAnalyticsDataClient {
364
358
  * @param {object} [options]
365
359
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
366
360
  * @returns {Promise} - The promise which resolves to an array.
367
- * The first element of the array is Array of {@link google.analytics.data.v1alpha.AudienceList | AudienceList}.
361
+ * The first element of the array is Array of {@link protos.google.analytics.data.v1alpha.AudienceList|AudienceList}.
368
362
  * The client library will perform auto-pagination by default: it will call the API as many
369
363
  * times as needed and will merge results from all the pages into this array.
370
364
  * Note that it can affect your quota.
371
365
  * We recommend using `listAudienceListsAsync()`
372
366
  * method described below for async iteration which you can stop as needed.
373
- * Please see the
374
- * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination)
367
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
375
368
  * for more details and examples.
376
369
  */
377
370
  listAudienceLists(request?: protos.google.analytics.data.v1alpha.IListAudienceListsRequest, options?: CallOptions): Promise<[
@@ -402,13 +395,12 @@ export declare class AlphaAnalyticsDataClient {
402
395
  * @param {object} [options]
403
396
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
404
397
  * @returns {Stream}
405
- * An object stream which emits an object representing {@link google.analytics.data.v1alpha.AudienceList | AudienceList} on 'data' event.
398
+ * An object stream which emits an object representing {@link protos.google.analytics.data.v1alpha.AudienceList|AudienceList} on 'data' event.
406
399
  * The client library will perform auto-pagination by default: it will call the API as many
407
400
  * times as needed. Note that it can affect your quota.
408
401
  * We recommend using `listAudienceListsAsync()`
409
402
  * method described below for async iteration which you can stop as needed.
410
- * Please see the
411
- * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination)
403
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
412
404
  * for more details and examples.
413
405
  */
414
406
  listAudienceListsStream(request?: protos.google.analytics.data.v1alpha.IListAudienceListsRequest, options?: CallOptions): Transform;
@@ -435,12 +427,11 @@ export declare class AlphaAnalyticsDataClient {
435
427
  * @param {object} [options]
436
428
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
437
429
  * @returns {Object}
438
- * An iterable Object that allows [async iteration](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols).
430
+ * An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }.
439
431
  * When you iterate the returned iterable, each element will be an object representing
440
- * {@link google.analytics.data.v1alpha.AudienceList | AudienceList}. The API will be called under the hood as needed, once per the page,
432
+ * {@link protos.google.analytics.data.v1alpha.AudienceList|AudienceList}. The API will be called under the hood as needed, once per the page,
441
433
  * so you can stop the iteration when you don't need more results.
442
- * Please see the
443
- * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination)
434
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
444
435
  * for more details and examples.
445
436
  * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.list_audience_lists.js</caption>
446
437
  * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_ListAudienceLists_async
@@ -60,8 +60,7 @@ class AlphaAnalyticsDataClient {
60
60
  * API remote host.
61
61
  * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override.
62
62
  * Follows the structure of {@link gapicConfig}.
63
- * @param {boolean | "rest"} [options.fallback] - Use HTTP fallback mode.
64
- * Pass "rest" to use HTTP/1.1 REST API instead of gRPC.
63
+ * @param {boolean} [options.fallback] - Use HTTP/1.1 REST mode.
65
64
  * For more information, please check the
66
65
  * {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}.
67
66
  * @param {gax} [gaxInstance]: loaded instance of `google-gax`. Useful if you
@@ -69,7 +68,7 @@ class AlphaAnalyticsDataClient {
69
68
  * HTTP implementation. Load only fallback version and pass it to the constructor:
70
69
  * ```
71
70
  * const gax = require('google-gax/build/src/fallback'); // avoids loading google-gax with gRPC
72
- * const client = new AlphaAnalyticsDataClient({fallback: 'rest'}, gax);
71
+ * const client = new AlphaAnalyticsDataClient({fallback: true}, gax);
73
72
  * ```
74
73
  */
75
74
  constructor(opts, gaxInstance) {
@@ -126,7 +125,7 @@ class AlphaAnalyticsDataClient {
126
125
  if (!opts.fallback) {
127
126
  clientHeader.push(`grpc/${this._gaxGrpc.grpcVersion}`);
128
127
  }
129
- else if (opts.fallback === 'rest') {
128
+ else {
130
129
  clientHeader.push(`rest/${this._gaxGrpc.grpcVersion}`);
131
130
  }
132
131
  if (opts.libName && opts.libVersion) {
@@ -155,7 +154,7 @@ class AlphaAnalyticsDataClient {
155
154
  auth: this.auth,
156
155
  grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined,
157
156
  };
158
- if (opts.fallback === 'rest') {
157
+ if (opts.fallback) {
159
158
  lroOptions.protoJson = protoFilesRoot;
160
159
  lroOptions.httpRules = [];
161
160
  }
@@ -360,8 +359,7 @@ class AlphaAnalyticsDataClient {
360
359
  * The operation name that will be passed.
361
360
  * @returns {Promise} - The promise which resolves to an object.
362
361
  * The decoded operation object has result and metadata field to get information from.
363
- * Please see the
364
- * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations)
362
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
365
363
  * for more details and examples.
366
364
  * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.create_audience_list.js</caption>
367
365
  * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_CreateAudienceList_async
@@ -414,13 +412,12 @@ class AlphaAnalyticsDataClient {
414
412
  * @param {object} [options]
415
413
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
416
414
  * @returns {Stream}
417
- * An object stream which emits an object representing {@link google.analytics.data.v1alpha.AudienceList | AudienceList} on 'data' event.
415
+ * An object stream which emits an object representing {@link protos.google.analytics.data.v1alpha.AudienceList|AudienceList} on 'data' event.
418
416
  * The client library will perform auto-pagination by default: it will call the API as many
419
417
  * times as needed. Note that it can affect your quota.
420
418
  * We recommend using `listAudienceListsAsync()`
421
419
  * method described below for async iteration which you can stop as needed.
422
- * Please see the
423
- * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination)
420
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
424
421
  * for more details and examples.
425
422
  */
426
423
  listAudienceListsStream(request, options) {
@@ -461,12 +458,11 @@ class AlphaAnalyticsDataClient {
461
458
  * @param {object} [options]
462
459
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
463
460
  * @returns {Object}
464
- * An iterable Object that allows [async iteration](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols).
461
+ * An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }.
465
462
  * When you iterate the returned iterable, each element will be an object representing
466
- * {@link google.analytics.data.v1alpha.AudienceList | AudienceList}. The API will be called under the hood as needed, once per the page,
463
+ * {@link protos.google.analytics.data.v1alpha.AudienceList|AudienceList}. The API will be called under the hood as needed, once per the page,
467
464
  * so you can stop the iteration when you don't need more results.
468
- * Please see the
469
- * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination)
465
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
470
466
  * for more details and examples.
471
467
  * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.list_audience_lists.js</caption>
472
468
  * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_ListAudienceLists_async
@@ -54,8 +54,7 @@ export declare class BetaAnalyticsDataClient {
54
54
  * API remote host.
55
55
  * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override.
56
56
  * Follows the structure of {@link gapicConfig}.
57
- * @param {boolean | "rest"} [options.fallback] - Use HTTP fallback mode.
58
- * Pass "rest" to use HTTP/1.1 REST API instead of gRPC.
57
+ * @param {boolean} [options.fallback] - Use HTTP/1.1 REST mode.
59
58
  * For more information, please check the
60
59
  * {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}.
61
60
  * @param {gax} [gaxInstance]: loaded instance of `google-gax`. Useful if you
@@ -63,7 +62,7 @@ export declare class BetaAnalyticsDataClient {
63
62
  * HTTP implementation. Load only fallback version and pass it to the constructor:
64
63
  * ```
65
64
  * const gax = require('google-gax/build/src/fallback'); // avoids loading google-gax with gRPC
66
- * const client = new BetaAnalyticsDataClient({fallback: 'rest'}, gax);
65
+ * const client = new BetaAnalyticsDataClient({fallback: true}, gax);
67
66
  * ```
68
67
  */
69
68
  constructor(opts?: ClientOptions, gaxInstance?: typeof gax | typeof gax.fallback);
@@ -140,7 +139,7 @@ export declare class BetaAnalyticsDataClient {
140
139
  * response rows for both date ranges. In a cohort request, this `dateRanges`
141
140
  * must be unspecified.
142
141
  * @param {google.analytics.data.v1beta.FilterExpression} request.dimensionFilter
143
- * Dimension filters allow you to ask for only specific dimension values in
142
+ * Dimension filters let you ask for only specific dimension values in
144
143
  * the report. To learn more, see [Fundamentals of Dimension
145
144
  * Filters](https://developers.google.com/analytics/devguides/reporting/data/v1/basics#dimension_filters)
146
145
  * for examples. Metrics cannot be used in this filter.
@@ -159,7 +158,7 @@ export declare class BetaAnalyticsDataClient {
159
158
  * [Pagination](https://developers.google.com/analytics/devguides/reporting/data/v1/basics#pagination).
160
159
  * @param {number} request.limit
161
160
  * The number of rows to return. If unspecified, 10,000 rows are returned. The
162
- * API returns a maximum of 100,000 rows per request, no matter how many you
161
+ * API returns a maximum of 250,000 rows per request, no matter how many you
163
162
  * ask for. `limit` must be positive.
164
163
  *
165
164
  * The API can also return fewer rows than the requested `limit`, if there
@@ -185,15 +184,21 @@ export declare class BetaAnalyticsDataClient {
185
184
  * If false or unspecified, each row with all metrics equal to 0 will not be
186
185
  * returned. If true, these rows will be returned if they are not separately
187
186
  * removed by a filter.
187
+ *
188
+ * Regardless of this `keep_empty_rows` setting, only data recorded by the
189
+ * Google Analytics (GA4) property can be displayed in a report.
190
+ *
191
+ * For example if a property never logs a `purchase` event, then a query for
192
+ * the `eventName` dimension and `eventCount` metric will not have a row
193
+ * eventName: "purchase" and eventCount: 0.
188
194
  * @param {boolean} request.returnPropertyQuota
189
195
  * Toggles whether to return the current state of this Analytics Property's
190
196
  * quota. Quota is returned in [PropertyQuota](#PropertyQuota).
191
197
  * @param {object} [options]
192
198
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
193
199
  * @returns {Promise} - The promise which resolves to an array.
194
- * The first element of the array is an object representing {@link google.analytics.data.v1beta.RunReportResponse | RunReportResponse}.
195
- * Please see the
196
- * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods)
200
+ * The first element of the array is an object representing {@link protos.google.analytics.data.v1beta.RunReportResponse|RunReportResponse}.
201
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
197
202
  * for more details and examples.
198
203
  * @example <caption>include:samples/generated/v1beta/beta_analytics_data.run_report.js</caption>
199
204
  * region_tag:analyticsdata_v1beta_generated_BetaAnalyticsData_RunReport_async
@@ -258,15 +263,21 @@ export declare class BetaAnalyticsDataClient {
258
263
  * If false or unspecified, each row with all metrics equal to 0 will not be
259
264
  * returned. If true, these rows will be returned if they are not separately
260
265
  * removed by a filter.
266
+ *
267
+ * Regardless of this `keep_empty_rows` setting, only data recorded by the
268
+ * Google Analytics (GA4) property can be displayed in a report.
269
+ *
270
+ * For example if a property never logs a `purchase` event, then a query for
271
+ * the `eventName` dimension and `eventCount` metric will not have a row
272
+ * eventName: "purchase" and eventCount: 0.
261
273
  * @param {boolean} request.returnPropertyQuota
262
274
  * Toggles whether to return the current state of this Analytics Property's
263
275
  * quota. Quota is returned in [PropertyQuota](#PropertyQuota).
264
276
  * @param {object} [options]
265
277
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
266
278
  * @returns {Promise} - The promise which resolves to an array.
267
- * The first element of the array is an object representing {@link google.analytics.data.v1beta.RunPivotReportResponse | RunPivotReportResponse}.
268
- * Please see the
269
- * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods)
279
+ * The first element of the array is an object representing {@link protos.google.analytics.data.v1beta.RunPivotReportResponse|RunPivotReportResponse}.
280
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
270
281
  * for more details and examples.
271
282
  * @example <caption>include:samples/generated/v1beta/beta_analytics_data.run_pivot_report.js</caption>
272
283
  * region_tag:analyticsdata_v1beta_generated_BetaAnalyticsData_RunPivotReport_async
@@ -300,9 +311,8 @@ export declare class BetaAnalyticsDataClient {
300
311
  * @param {object} [options]
301
312
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
302
313
  * @returns {Promise} - The promise which resolves to an array.
303
- * The first element of the array is an object representing {@link google.analytics.data.v1beta.BatchRunReportsResponse | BatchRunReportsResponse}.
304
- * Please see the
305
- * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods)
314
+ * The first element of the array is an object representing {@link protos.google.analytics.data.v1beta.BatchRunReportsResponse|BatchRunReportsResponse}.
315
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
306
316
  * for more details and examples.
307
317
  * @example <caption>include:samples/generated/v1beta/beta_analytics_data.batch_run_reports.js</caption>
308
318
  * region_tag:analyticsdata_v1beta_generated_BetaAnalyticsData_BatchRunReports_async
@@ -336,9 +346,8 @@ export declare class BetaAnalyticsDataClient {
336
346
  * @param {object} [options]
337
347
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
338
348
  * @returns {Promise} - The promise which resolves to an array.
339
- * The first element of the array is an object representing {@link google.analytics.data.v1beta.BatchRunPivotReportsResponse | BatchRunPivotReportsResponse}.
340
- * Please see the
341
- * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods)
349
+ * The first element of the array is an object representing {@link protos.google.analytics.data.v1beta.BatchRunPivotReportsResponse|BatchRunPivotReportsResponse}.
350
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
342
351
  * for more details and examples.
343
352
  * @example <caption>include:samples/generated/v1beta/beta_analytics_data.batch_run_pivot_reports.js</caption>
344
353
  * region_tag:analyticsdata_v1beta_generated_BetaAnalyticsData_BatchRunPivotReports_async
@@ -379,9 +388,8 @@ export declare class BetaAnalyticsDataClient {
379
388
  * @param {object} [options]
380
389
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
381
390
  * @returns {Promise} - The promise which resolves to an array.
382
- * The first element of the array is an object representing {@link google.analytics.data.v1beta.Metadata | Metadata}.
383
- * Please see the
384
- * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods)
391
+ * The first element of the array is an object representing {@link protos.google.analytics.data.v1beta.Metadata|Metadata}.
392
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
385
393
  * for more details and examples.
386
394
  * @example <caption>include:samples/generated/v1beta/beta_analytics_data.get_metadata.js</caption>
387
395
  * region_tag:analyticsdata_v1beta_generated_BetaAnalyticsData_GetMetadata_async
@@ -424,7 +432,7 @@ export declare class BetaAnalyticsDataClient {
424
432
  * SQL having-clause. Dimensions cannot be used in this filter.
425
433
  * @param {number} request.limit
426
434
  * The number of rows to return. If unspecified, 10,000 rows are returned. The
427
- * API returns a maximum of 100,000 rows per request, no matter how many you
435
+ * API returns a maximum of 250,000 rows per request, no matter how many you
428
436
  * ask for. `limit` must be positive.
429
437
  *
430
438
  * The API can also return fewer rows than the requested `limit`, if there
@@ -449,9 +457,8 @@ export declare class BetaAnalyticsDataClient {
449
457
  * @param {object} [options]
450
458
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
451
459
  * @returns {Promise} - The promise which resolves to an array.
452
- * The first element of the array is an object representing {@link google.analytics.data.v1beta.RunRealtimeReportResponse | RunRealtimeReportResponse}.
453
- * Please see the
454
- * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods)
460
+ * The first element of the array is an object representing {@link protos.google.analytics.data.v1beta.RunRealtimeReportResponse|RunRealtimeReportResponse}.
461
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
455
462
  * for more details and examples.
456
463
  * @example <caption>include:samples/generated/v1beta/beta_analytics_data.run_realtime_report.js</caption>
457
464
  * region_tag:analyticsdata_v1beta_generated_BetaAnalyticsData_RunRealtimeReport_async
@@ -484,10 +491,6 @@ export declare class BetaAnalyticsDataClient {
484
491
  * `property` should be the same value as in your `runReport` request.
485
492
  *
486
493
  * Example: properties/1234
487
- *
488
- * Set the Property ID to 0 for compatibility checking on dimensions and
489
- * metrics common to all properties. In this special mode, this method will
490
- * not return custom dimensions and metrics.
491
494
  * @param {number[]} request.dimensions
492
495
  * The dimensions in this report. `dimensions` should be the same value as in
493
496
  * your `runReport` request.
@@ -507,9 +510,8 @@ export declare class BetaAnalyticsDataClient {
507
510
  * @param {object} [options]
508
511
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
509
512
  * @returns {Promise} - The promise which resolves to an array.
510
- * The first element of the array is an object representing {@link google.analytics.data.v1beta.CheckCompatibilityResponse | CheckCompatibilityResponse}.
511
- * Please see the
512
- * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods)
513
+ * The first element of the array is an object representing {@link protos.google.analytics.data.v1beta.CheckCompatibilityResponse|CheckCompatibilityResponse}.
514
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
513
515
  * for more details and examples.
514
516
  * @example <caption>include:samples/generated/v1beta/beta_analytics_data.check_compatibility.js</caption>
515
517
  * region_tag:analyticsdata_v1beta_generated_BetaAnalyticsData_CheckCompatibility_async
@@ -60,8 +60,7 @@ class BetaAnalyticsDataClient {
60
60
  * API remote host.
61
61
  * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override.
62
62
  * Follows the structure of {@link gapicConfig}.
63
- * @param {boolean | "rest"} [options.fallback] - Use HTTP fallback mode.
64
- * Pass "rest" to use HTTP/1.1 REST API instead of gRPC.
63
+ * @param {boolean} [options.fallback] - Use HTTP/1.1 REST mode.
65
64
  * For more information, please check the
66
65
  * {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}.
67
66
  * @param {gax} [gaxInstance]: loaded instance of `google-gax`. Useful if you
@@ -69,7 +68,7 @@ class BetaAnalyticsDataClient {
69
68
  * HTTP implementation. Load only fallback version and pass it to the constructor:
70
69
  * ```
71
70
  * const gax = require('google-gax/build/src/fallback'); // avoids loading google-gax with gRPC
72
- * const client = new BetaAnalyticsDataClient({fallback: 'rest'}, gax);
71
+ * const client = new BetaAnalyticsDataClient({fallback: true}, gax);
73
72
  * ```
74
73
  */
75
74
  constructor(opts, gaxInstance) {
@@ -126,7 +125,7 @@ class BetaAnalyticsDataClient {
126
125
  if (!opts.fallback) {
127
126
  clientHeader.push(`grpc/${this._gaxGrpc.grpcVersion}`);
128
127
  }
129
- else if (opts.fallback === 'rest') {
128
+ else {
130
129
  clientHeader.push(`rest/${this._gaxGrpc.grpcVersion}`);
131
130
  }
132
131
  if (opts.libName && opts.libVersion) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@google-analytics/data",
3
- "version": "3.3.0",
3
+ "version": "4.0.1",
4
4
  "description": "Data client for Node.js",
5
5
  "repository": {
6
6
  "type": "git",
@@ -45,30 +45,27 @@
45
45
  "test": "c8 mocha build/test"
46
46
  },
47
47
  "dependencies": {
48
- "google-gax": "^3.5.8"
48
+ "google-gax": "^4.0.3"
49
49
  },
50
50
  "devDependencies": {
51
51
  "@types/mocha": "^9.0.0",
52
- "@types/node": "^18.0.0",
52
+ "@types/node": "^20.4.5",
53
53
  "@types/sinon": "^10.0.0",
54
- "c8": "^7.2.0",
55
- "gts": "^3.1.0",
54
+ "c8": "^8.0.1",
55
+ "gapic-tools": "^0.1.8",
56
+ "gts": "^5.0.0",
56
57
  "jsdoc": "^4.0.0",
57
- "jsdoc-fresh": "^2.0.0",
58
- "jsdoc-region-tag": "^2.0.0",
58
+ "jsdoc-fresh": "^3.0.0",
59
+ "jsdoc-region-tag": "^3.0.0",
59
60
  "linkinator": "4.1.2",
60
61
  "long": "^5.2.3",
61
62
  "mocha": "^9.2.2",
62
- "null-loader": "^4.0.0",
63
63
  "pack-n-play": "^1.0.0-2",
64
64
  "sinon": "^15.0.0",
65
- "ts-loader": "^9.0.0",
66
- "typescript": "^4.6.4",
67
- "webpack": "^5.0.0",
68
- "webpack-cli": "^5.0.0"
65
+ "typescript": "^5.1.6"
69
66
  },
70
67
  "engines": {
71
- "node": ">=12.0.0"
68
+ "node": ">=14.0.0"
72
69
  },
73
70
  "homepage": "https://github.com/googleapis/google-cloud-node/tree/main/packages/google-analytics-data"
74
71
  }