UNPKG

@google-analytics/data

Version:
741 lines 86.7 kB
import type * as gax from 'google-gax'; import type { Callback, CallOptions, Descriptors, ClientOptions, LROperation, PaginationCallback } from 'google-gax'; import { Transform } from 'stream'; import * as protos from '../../protos/protos'; /** * Google Analytics reporting data service. * @class * @memberof v1alpha */ export declare class AlphaAnalyticsDataClient { private _terminated; private _opts; private _providedCustomServicePath; private _gaxModule; private _gaxGrpc; private _protos; private _defaults; private _universeDomain; private _servicePath; private _log; auth: gax.GoogleAuth; descriptors: Descriptors; warn: (code: string, message: string, warnType?: string) => void; innerApiCalls: { [name: string]: Function; }; pathTemplates: { [name: string]: gax.PathTemplate; }; operationsClient: gax.OperationsClient; alphaAnalyticsDataStub?: Promise<{ [name: string]: Function; }>; /** * Construct an instance of AlphaAnalyticsDataClient. * * @param {object} [options] - The configuration object. * The options accepted by the constructor are described in detail * in [this document](https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#creating-the-client-instance). * The common options are: * @param {object} [options.credentials] - Credentials object. * @param {string} [options.credentials.client_email] * @param {string} [options.credentials.private_key] * @param {string} [options.email] - Account email address. Required when * using a .pem or .p12 keyFilename. * @param {string} [options.keyFilename] - Full path to the a .json, .pem, or * .p12 key downloaded from the Google Developers Console. If you provide * a path to a JSON file, the projectId option below is not necessary. * NOTE: .pem and .p12 require you to specify options.email as well. * @param {number} [options.port] - The port on which to connect to * the remote host. * @param {string} [options.projectId] - The project ID from the Google * Developer's Console, e.g. 'grape-spaceship-123'. We will also check * the environment variable GCLOUD_PROJECT for your project ID. If your * app is running in an environment which supports * {@link https://cloud.google.com/docs/authentication/application-default-credentials Application Default Credentials}, * your project ID will be detected automatically. * @param {string} [options.apiEndpoint] - The domain name of the * API remote host. * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override. * Follows the structure of {@link gapicConfig}. * @param {boolean} [options.fallback] - Use HTTP/1.1 REST mode. * For more information, please check the * {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}. * @param {gax} [gaxInstance]: loaded instance of `google-gax`. Useful if you * need to avoid loading the default gRPC version and want to use the fallback * HTTP implementation. Load only fallback version and pass it to the constructor: * ``` * const gax = require('google-gax/build/src/fallback'); // avoids loading google-gax with gRPC * const client = new AlphaAnalyticsDataClient({fallback: true}, gax); * ``` */ constructor(opts?: ClientOptions, gaxInstance?: typeof gax | typeof gax.fallback); /** * Initialize the client. * Performs asynchronous operations (such as authentication) and prepares the client. * This function will be called automatically when any class method is called for the * first time, but if you need to initialize it before calling an actual method, * feel free to call initialize() directly. * * You can await on this method if you want to make sure the client is initialized. * * @returns {Promise} A promise that resolves to an authenticated service stub. */ initialize(): Promise<{ [name: string]: Function; }>; /** * The DNS address for this API service. * @deprecated Use the apiEndpoint method of the client instance. * @returns {string} The DNS address for this service. */ static get servicePath(): string; /** * The DNS address for this API service - same as servicePath. * @deprecated Use the apiEndpoint method of the client instance. * @returns {string} The DNS address for this service. */ static get apiEndpoint(): string; /** * The DNS address for this API service. * @returns {string} The DNS address for this service. */ get apiEndpoint(): string; get universeDomain(): string; /** * The port for this API service. * @returns {number} The default port for this service. */ static get port(): number; /** * The scopes needed to make gRPC calls for every method defined * in this service. * @returns {string[]} List of default scopes. */ static get scopes(): string[]; getProjectId(): Promise<string>; getProjectId(callback: Callback<string, undefined, undefined>): void; /** * Returns a customized funnel report of your Google Analytics event data. The * data returned from the API is as a table with columns for the requested * dimensions and metrics. * * Funnel exploration lets you visualize the steps your users take to complete * a task and quickly see how well they are succeeding or failing at each * step. For example, how do prospects become shoppers and then become buyers? * How do one time buyers become repeat buyers? With this information, you can * improve inefficient or abandoned customer journeys. To learn more, see [GA4 * Funnel Explorations](https://support.google.com/analytics/answer/9327974). * * This method is introduced at alpha stability with the intention of * gathering feedback on syntax and capabilities before entering beta. To give * your feedback on this API, complete the [Google Analytics Data API Funnel * Reporting * Feedback](https://docs.google.com/forms/d/e/1FAIpQLSdwOlQDJAUoBiIgUZZ3S_Lwi8gr7Bb0k1jhvc-DEg7Rol3UjA/viewform). * * @param {Object} request * The request object that will be sent. * @param {string} [request.property] * Optional. A Google Analytics property identifier whose events are tracked. * Specified in the URL path and not the body. To learn more, see [where to * find your Property * ID](https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). * Within a batch request, this property should either be unspecified or * consistent with the batch-level property. * * Example: properties/1234 * @param {number[]} [request.dateRanges] * Optional. Date ranges of data to read. If multiple date ranges are * requested, each response row will contain a zero based date range index. If * two date ranges overlap, the event data for the overlapping days is * included in the response rows for both date ranges. * @param {google.analytics.data.v1alpha.Funnel} [request.funnel] * Optional. The configuration of this request's funnel. This funnel * configuration is required. * @param {google.analytics.data.v1alpha.FunnelBreakdown} [request.funnelBreakdown] * Optional. If specified, this breakdown adds a dimension to the funnel table * sub report response. This breakdown dimension expands each funnel step to * the unique values of the breakdown dimension. For example, a breakdown by * the `deviceCategory` dimension will create rows for `mobile`, `tablet`, * `desktop`, and the total. * @param {google.analytics.data.v1alpha.FunnelNextAction} [request.funnelNextAction] * Optional. If specified, next action adds a dimension to the funnel * visualization sub report response. This next action dimension expands each * funnel step to the unique values of the next action. For example a next * action of the `eventName` dimension will create rows for several events * (for example `session_start` & `click`) and the total. * * Next action only supports `eventName` and most Page / Screen dimensions * like `pageTitle` and `pagePath`. * @param {google.analytics.data.v1alpha.RunFunnelReportRequest.FunnelVisualizationType} [request.funnelVisualizationType] * Optional. The funnel visualization type controls the dimensions present in * the funnel visualization sub report response. If not specified, * `STANDARD_FUNNEL` is used. * @param {number[]} [request.segments] * Optional. The configurations of segments. Segments are subsets of a * property's data. In a funnel report with segments, the funnel is evaluated * in each segment. * * Each segment specified in this request * produces a separate row in the response; in the response, each segment * identified by its name. * * The segments parameter is optional. Requests are limited to 4 segments. * @param {number} [request.limit] * Optional. The number of rows to return. If unspecified, 10,000 rows are * returned. The API returns a maximum of 250,000 rows per request, no matter * how many you ask for. `limit` must be positive. * * The API can also return fewer rows than the requested `limit`, if there * aren't as many dimension values as the `limit`. * @param {google.analytics.data.v1alpha.FilterExpression} [request.dimensionFilter] * Optional. Dimension filters allow you to ask for only specific dimension * values in the report. To learn more, see [Creating a Report: Dimension * Filters](https://developers.google.com/analytics/devguides/reporting/data/v1/basics#dimension_filters) * for examples. Metrics cannot be used in this filter. * @param {boolean} [request.returnPropertyQuota] * Optional. Toggles whether to return the current state of this Analytics * Property's quota. Quota is returned in [PropertyQuota](#PropertyQuota). * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.analytics.data.v1alpha.RunFunnelReportResponse|RunFunnelReportResponse}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.run_funnel_report.js</caption> * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_RunFunnelReport_async */ runFunnelReport(request?: protos.google.analytics.data.v1alpha.IRunFunnelReportRequest, options?: CallOptions): Promise<[ protos.google.analytics.data.v1alpha.IRunFunnelReportResponse, protos.google.analytics.data.v1alpha.IRunFunnelReportRequest | undefined, {} | undefined ]>; runFunnelReport(request: protos.google.analytics.data.v1alpha.IRunFunnelReportRequest, options: CallOptions, callback: Callback<protos.google.analytics.data.v1alpha.IRunFunnelReportResponse, protos.google.analytics.data.v1alpha.IRunFunnelReportRequest | null | undefined, {} | null | undefined>): void; runFunnelReport(request: protos.google.analytics.data.v1alpha.IRunFunnelReportRequest, callback: Callback<protos.google.analytics.data.v1alpha.IRunFunnelReportResponse, protos.google.analytics.data.v1alpha.IRunFunnelReportRequest | null | undefined, {} | null | undefined>): void; /** * Retrieves an audience list of users. After creating an audience, the users * are not immediately available for listing. First, a request to * `CreateAudienceList` is necessary to create an audience list of users, and * then second, this method is used to retrieve the users in the audience * list. * * See [Creating an Audience * List](https://developers.google.com/analytics/devguides/reporting/data/v1/audience-list-basics) * for an introduction to Audience Lists with examples. * * Audiences in Google Analytics 4 allow you to segment your users in the ways * that are important to your business. To learn more, see * https://support.google.com/analytics/answer/9267572. * * This method is available at beta stability at * [audienceExports.query](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties.audienceExports/query). * To give your feedback on this API, complete the [Google Analytics Audience * Export API Feedback](https://forms.gle/EeA5u5LW6PEggtCEA) form. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. The name of the audience list to retrieve users from. * Format: `properties/{property}/audienceLists/{audience_list}` * @param {number} [request.offset] * Optional. The row count of the start row. The first row is counted as row * 0. * * When paging, the first request does not specify offset; or equivalently, * sets offset to 0; the first request returns the first `limit` of rows. The * second request sets offset to the `limit` of the first request; the second * request returns the second `limit` of rows. * * To learn more about this pagination parameter, see * [Pagination](https://developers.google.com/analytics/devguides/reporting/data/v1/basics#pagination). * @param {number} [request.limit] * Optional. The number of rows to return. If unspecified, 10,000 rows are * returned. The API returns a maximum of 250,000 rows per request, no matter * how many you ask for. `limit` must be positive. * * The API can also return fewer rows than the requested `limit`, if there * aren't as many dimension values as the `limit`. * * To learn more about this pagination parameter, see * [Pagination](https://developers.google.com/analytics/devguides/reporting/data/v1/basics#pagination). * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.analytics.data.v1alpha.QueryAudienceListResponse|QueryAudienceListResponse}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.query_audience_list.js</caption> * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_QueryAudienceList_async */ queryAudienceList(request?: protos.google.analytics.data.v1alpha.IQueryAudienceListRequest, options?: CallOptions): Promise<[ protos.google.analytics.data.v1alpha.IQueryAudienceListResponse, protos.google.analytics.data.v1alpha.IQueryAudienceListRequest | undefined, {} | undefined ]>; queryAudienceList(request: protos.google.analytics.data.v1alpha.IQueryAudienceListRequest, options: CallOptions, callback: Callback<protos.google.analytics.data.v1alpha.IQueryAudienceListResponse, protos.google.analytics.data.v1alpha.IQueryAudienceListRequest | null | undefined, {} | null | undefined>): void; queryAudienceList(request: protos.google.analytics.data.v1alpha.IQueryAudienceListRequest, callback: Callback<protos.google.analytics.data.v1alpha.IQueryAudienceListResponse, protos.google.analytics.data.v1alpha.IQueryAudienceListRequest | null | undefined, {} | null | undefined>): void; /** * Gets configuration metadata about a specific audience list. This method * can be used to understand an audience list after it has been created. * * See [Creating an Audience * List](https://developers.google.com/analytics/devguides/reporting/data/v1/audience-list-basics) * for an introduction to Audience Lists with examples. * * This method is available at beta stability at * [audienceExports.get](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties.audienceExports/get). * To give your feedback on this API, complete the * [Google Analytics Audience Export API * Feedback](https://forms.gle/EeA5u5LW6PEggtCEA) form. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. The audience list resource name. * Format: `properties/{property}/audienceLists/{audience_list}` * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.analytics.data.v1alpha.AudienceList|AudienceList}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.get_audience_list.js</caption> * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_GetAudienceList_async */ getAudienceList(request?: protos.google.analytics.data.v1alpha.IGetAudienceListRequest, options?: CallOptions): Promise<[ protos.google.analytics.data.v1alpha.IAudienceList, protos.google.analytics.data.v1alpha.IGetAudienceListRequest | undefined, {} | undefined ]>; getAudienceList(request: protos.google.analytics.data.v1alpha.IGetAudienceListRequest, options: CallOptions, callback: Callback<protos.google.analytics.data.v1alpha.IAudienceList, protos.google.analytics.data.v1alpha.IGetAudienceListRequest | null | undefined, {} | null | undefined>): void; getAudienceList(request: protos.google.analytics.data.v1alpha.IGetAudienceListRequest, callback: Callback<protos.google.analytics.data.v1alpha.IAudienceList, protos.google.analytics.data.v1alpha.IGetAudienceListRequest | null | undefined, {} | null | undefined>): void; /** * Creates a recurring audience list. Recurring audience lists produces new * audience lists each day. Audience lists are users in an audience at the * time of the list's creation. * * A recurring audience list ensures that you have audience list based on the * most recent data available for use each day. If you manually create * audience list, you don't know when an audience list based on an additional * day's data is available. This recurring audience list automates the * creation of an audience list when an additional day's data is available. * You will consume fewer quota tokens by using recurring audience list versus * manually creating audience list at various times of day trying to guess * when an additional day's data is ready. * * This method is introduced at alpha stability with the intention of * gathering feedback on syntax and capabilities before entering beta. To give * your feedback on this API, complete the * [Google Analytics Audience Export API * Feedback](https://forms.gle/EeA5u5LW6PEggtCEA) form. * * @param {Object} request * The request object that will be sent. * @param {string} request.parent * Required. The parent resource where this recurring audience list will be * created. Format: `properties/{property}` * @param {google.analytics.data.v1alpha.RecurringAudienceList} request.recurringAudienceList * Required. The recurring audience list to create. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.analytics.data.v1alpha.RecurringAudienceList|RecurringAudienceList}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.create_recurring_audience_list.js</caption> * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_CreateRecurringAudienceList_async */ createRecurringAudienceList(request?: protos.google.analytics.data.v1alpha.ICreateRecurringAudienceListRequest, options?: CallOptions): Promise<[ protos.google.analytics.data.v1alpha.IRecurringAudienceList, protos.google.analytics.data.v1alpha.ICreateRecurringAudienceListRequest | undefined, {} | undefined ]>; createRecurringAudienceList(request: protos.google.analytics.data.v1alpha.ICreateRecurringAudienceListRequest, options: CallOptions, callback: Callback<protos.google.analytics.data.v1alpha.IRecurringAudienceList, protos.google.analytics.data.v1alpha.ICreateRecurringAudienceListRequest | null | undefined, {} | null | undefined>): void; createRecurringAudienceList(request: protos.google.analytics.data.v1alpha.ICreateRecurringAudienceListRequest, callback: Callback<protos.google.analytics.data.v1alpha.IRecurringAudienceList, protos.google.analytics.data.v1alpha.ICreateRecurringAudienceListRequest | null | undefined, {} | null | undefined>): void; /** * Gets configuration metadata about a specific recurring audience list. This * method can be used to understand a recurring audience list's state after it * has been created. For example, a recurring audience list resource will * generate audience list instances for each day, and this method can be used * to get the resource name of the most recent audience list instance. * * This method is introduced at alpha stability with the intention of * gathering feedback on syntax and capabilities before entering beta. To give * your feedback on this API, complete the * [Google Analytics Audience Export API * Feedback](https://forms.gle/EeA5u5LW6PEggtCEA) form. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. The recurring audience list resource name. * Format: * `properties/{property}/recurringAudienceLists/{recurring_audience_list}` * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.analytics.data.v1alpha.RecurringAudienceList|RecurringAudienceList}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.get_recurring_audience_list.js</caption> * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_GetRecurringAudienceList_async */ getRecurringAudienceList(request?: protos.google.analytics.data.v1alpha.IGetRecurringAudienceListRequest, options?: CallOptions): Promise<[ protos.google.analytics.data.v1alpha.IRecurringAudienceList, protos.google.analytics.data.v1alpha.IGetRecurringAudienceListRequest | undefined, {} | undefined ]>; getRecurringAudienceList(request: protos.google.analytics.data.v1alpha.IGetRecurringAudienceListRequest, options: CallOptions, callback: Callback<protos.google.analytics.data.v1alpha.IRecurringAudienceList, protos.google.analytics.data.v1alpha.IGetRecurringAudienceListRequest | null | undefined, {} | null | undefined>): void; getRecurringAudienceList(request: protos.google.analytics.data.v1alpha.IGetRecurringAudienceListRequest, callback: Callback<protos.google.analytics.data.v1alpha.IRecurringAudienceList, protos.google.analytics.data.v1alpha.IGetRecurringAudienceListRequest | null | undefined, {} | null | undefined>): void; /** * Get all property quotas organized by quota category for a given property. * This will charge 1 property quota from the category with the most quota. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. Quotas from this property will be listed in the response. * Format: `properties/{property}/propertyQuotasSnapshot` * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.analytics.data.v1alpha.PropertyQuotasSnapshot|PropertyQuotasSnapshot}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.get_property_quotas_snapshot.js</caption> * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_GetPropertyQuotasSnapshot_async */ getPropertyQuotasSnapshot(request?: protos.google.analytics.data.v1alpha.IGetPropertyQuotasSnapshotRequest, options?: CallOptions): Promise<[ protos.google.analytics.data.v1alpha.IPropertyQuotasSnapshot, protos.google.analytics.data.v1alpha.IGetPropertyQuotasSnapshotRequest | undefined, {} | undefined ]>; getPropertyQuotasSnapshot(request: protos.google.analytics.data.v1alpha.IGetPropertyQuotasSnapshotRequest, options: CallOptions, callback: Callback<protos.google.analytics.data.v1alpha.IPropertyQuotasSnapshot, protos.google.analytics.data.v1alpha.IGetPropertyQuotasSnapshotRequest | null | undefined, {} | null | undefined>): void; getPropertyQuotasSnapshot(request: protos.google.analytics.data.v1alpha.IGetPropertyQuotasSnapshotRequest, callback: Callback<protos.google.analytics.data.v1alpha.IPropertyQuotasSnapshot, protos.google.analytics.data.v1alpha.IGetPropertyQuotasSnapshotRequest | null | undefined, {} | null | undefined>): void; /** * Retrieves a report task's content. After requesting the `CreateReportTask`, * you are able to retrieve the report content once the report is * ACTIVE. This method will return an error if the report task's state is not * `ACTIVE`. A query response will return the tabular row & column values of * the report. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. The report source name. * Format: `properties/{property}/reportTasks/{report}` * @param {number} [request.offset] * Optional. The row count of the start row in the report. The first row is * counted as row 0. * * When paging, the first request does not specify offset; or equivalently, * sets offset to 0; the first request returns the first `limit` of rows. The * second request sets offset to the `limit` of the first request; the second * request returns the second `limit` of rows. * * To learn more about this pagination parameter, see * [Pagination](https://developers.google.com/analytics/devguides/reporting/data/v1/basics#pagination). * @param {number} [request.limit] * Optional. The number of rows to return from the report. If unspecified, * 10,000 rows are returned. The API returns a maximum of 250,000 rows per * request, no matter how many you ask for. `limit` must be positive. * * The API can also return fewer rows than the requested `limit`, if there * aren't as many dimension values as the `limit`. The number of rows * available to a QueryReportTaskRequest is further limited by the limit of * the associated ReportTask. A query can retrieve at most ReportTask.limit * rows. For example, if the ReportTask has a limit of 1,000, then a * QueryReportTask request with offset=900 and limit=500 will return at most * 100 rows. * * To learn more about this pagination parameter, see * [Pagination](https://developers.google.com/analytics/devguides/reporting/data/v1/basics#pagination). * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.analytics.data.v1alpha.QueryReportTaskResponse|QueryReportTaskResponse}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.query_report_task.js</caption> * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_QueryReportTask_async */ queryReportTask(request?: protos.google.analytics.data.v1alpha.IQueryReportTaskRequest, options?: CallOptions): Promise<[ protos.google.analytics.data.v1alpha.IQueryReportTaskResponse, protos.google.analytics.data.v1alpha.IQueryReportTaskRequest | undefined, {} | undefined ]>; queryReportTask(request: protos.google.analytics.data.v1alpha.IQueryReportTaskRequest, options: CallOptions, callback: Callback<protos.google.analytics.data.v1alpha.IQueryReportTaskResponse, protos.google.analytics.data.v1alpha.IQueryReportTaskRequest | null | undefined, {} | null | undefined>): void; queryReportTask(request: protos.google.analytics.data.v1alpha.IQueryReportTaskRequest, callback: Callback<protos.google.analytics.data.v1alpha.IQueryReportTaskResponse, protos.google.analytics.data.v1alpha.IQueryReportTaskRequest | null | undefined, {} | null | undefined>): void; /** * Gets report metadata about a specific report task. After creating a report * task, use this method to check its processing state or inspect its * report definition. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. The report task resource name. * Format: `properties/{property}/reportTasks/{report_task}` * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.analytics.data.v1alpha.ReportTask|ReportTask}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.get_report_task.js</caption> * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_GetReportTask_async */ getReportTask(request?: protos.google.analytics.data.v1alpha.IGetReportTaskRequest, options?: CallOptions): Promise<[ protos.google.analytics.data.v1alpha.IReportTask, protos.google.analytics.data.v1alpha.IGetReportTaskRequest | undefined, {} | undefined ]>; getReportTask(request: protos.google.analytics.data.v1alpha.IGetReportTaskRequest, options: CallOptions, callback: Callback<protos.google.analytics.data.v1alpha.IReportTask, protos.google.analytics.data.v1alpha.IGetReportTaskRequest | null | undefined, {} | null | undefined>): void; getReportTask(request: protos.google.analytics.data.v1alpha.IGetReportTaskRequest, callback: Callback<protos.google.analytics.data.v1alpha.IReportTask, protos.google.analytics.data.v1alpha.IGetReportTaskRequest | null | undefined, {} | null | undefined>): void; /** * Returns a customized report of your Google Analytics event data. Reports * contain statistics derived from data collected by the Google Analytics * tracking code. The data returned from the API is as a table with columns * for the requested dimensions and metrics. Metrics are individual * measurements of user activity on your property, such as active users or * event count. Dimensions break down metrics across some common criteria, * such as country or event name. * * @param {Object} request * The request object that will be sent. * @param {string} request.property * Required. A Google Analytics property identifier whose events are tracked. * Specified in the URL path and not the body. To learn more, see [where to * find your Property * ID](https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). * Within a batch request, this property should either be unspecified or * consistent with the batch-level property. * * Example: properties/1234 * @param {number[]} [request.dimensions] * Optional. The dimensions requested and displayed. * @param {number[]} [request.metrics] * Optional. The metrics requested and displayed. * @param {number[]} [request.dateRanges] * Optional. Date ranges of data to read. If multiple date ranges are * requested, each response row will contain a zero based date range index. If * two date ranges overlap, the event data for the overlapping days is * included in the response rows for both date ranges. In a cohort request, * this `dateRanges` must be unspecified. * @param {google.analytics.data.v1alpha.FilterExpression} [request.dimensionFilter] * Optional. Dimension filters let you ask for only specific dimension values * in the report. To learn more, see [Fundamentals of Dimension * Filters](https://developers.google.com/analytics/devguides/reporting/data/v1/basics#dimension_filters) * for examples. Metrics cannot be used in this filter. * @param {google.analytics.data.v1alpha.FilterExpression} [request.metricFilter] * Optional. The filter clause of metrics. Applied after aggregating the * report's rows, similar to SQL having-clause. Dimensions cannot be used in * this filter. * @param {number} [request.offset] * Optional. The row count of the start row. The first row is counted as row * 0. * * When paging, the first request does not specify offset; or equivalently, * sets offset to 0; the first request returns the first `limit` of rows. The * second request sets offset to the `limit` of the first request; the second * request returns the second `limit` of rows. * * To learn more about this pagination parameter, see * [Pagination](https://developers.google.com/analytics/devguides/reporting/data/v1/basics#pagination). * @param {number} [request.limit] * Optional. The maximum number of rows to return. If unspecified, 10,000 rows * are returned. The API returns a maximum of 250,000 rows per request, no * matter how many you ask for. `limit` must be positive. * * The API can also return fewer rows than the requested `limit`, if there * aren't as many dimension values as the `limit`. For instance, there are * fewer than 300 possible values for the dimension `country`, so when * reporting on only `country`, you can't get more than 300 rows, even if you * set `limit` to a higher value. * * To learn more about this pagination parameter, see * [Pagination](https://developers.google.com/analytics/devguides/reporting/data/v1/basics#pagination). * @param {number[]} [request.metricAggregations] * Optional. Aggregation of metrics. Aggregated metric values will be shown in * rows where the dimension_values are set to "RESERVED_(MetricAggregation)". * Aggregates including both comparisons and multiple date ranges will * be aggregated based on the date ranges. * @param {number[]} [request.orderBys] * Optional. Specifies how rows are ordered in the response. * Requests including both comparisons and multiple date ranges will * have order bys applied on the comparisons. * @param {string} [request.currencyCode] * Optional. A currency code in ISO4217 format, such as "AED", "USD", "JPY". * If the field is empty, the report uses the property's default currency. * @param {google.analytics.data.v1alpha.CohortSpec} [request.cohortSpec] * Optional. Cohort group associated with this request. If there is a cohort * group in the request the 'cohort' dimension must be present. * @param {boolean} [request.keepEmptyRows] * Optional. If false or unspecified, each row with all metrics equal to 0 * will not be returned. If true, these rows will be returned if they are not * separately removed by a filter. * * Regardless of this `keep_empty_rows` setting, only data recorded by the * Google Analytics property can be displayed in a report. * * For example if a property never logs a `purchase` event, then a query for * the `eventName` dimension and `eventCount` metric will not have a row * eventName: "purchase" and eventCount: 0. * @param {boolean} [request.returnPropertyQuota] * Optional. Toggles whether to return the current state of this Google * Analytics property's quota. Quota is returned in * [PropertyQuota](#PropertyQuota). * @param {number[]} [request.comparisons] * Optional. The configuration of comparisons requested and displayed. The * request only requires a comparisons field in order to receive a comparison * column in the response. * @param {google.analytics.data.v1alpha.ConversionSpec} [request.conversionSpec] * Optional. Controls conversion reporting. This field is optional. If this * field is set or any conversion metrics are requested, the report will be a * conversion report. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.analytics.data.v1alpha.RunReportResponse|RunReportResponse}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.run_report.js</caption> * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_RunReport_async */ runReport(request?: protos.google.analytics.data.v1alpha.IRunReportRequest, options?: CallOptions): Promise<[ protos.google.analytics.data.v1alpha.IRunReportResponse, protos.google.analytics.data.v1alpha.IRunReportRequest | undefined, {} | undefined ]>; runReport(request: protos.google.analytics.data.v1alpha.IRunReportRequest, options: CallOptions, callback: Callback<protos.google.analytics.data.v1alpha.IRunReportResponse, protos.google.analytics.data.v1alpha.IRunReportRequest | null | undefined, {} | null | undefined>): void; runReport(request: protos.google.analytics.data.v1alpha.IRunReportRequest, callback: Callback<protos.google.analytics.data.v1alpha.IRunReportResponse, protos.google.analytics.data.v1alpha.IRunReportRequest | null | undefined, {} | null | undefined>): void; /** * Returns metadata for dimensions and metrics available in reporting methods. * Used to explore the dimensions and metrics. In this method, a Google * Analytics property identifier is specified in the request, and * the metadata response includes Custom dimensions and metrics as well as * Universal metadata. * * For example if a custom metric with parameter name `levels_unlocked` is * registered to a property, the Metadata response will contain * `customEvent:levels_unlocked`. Universal metadata are dimensions and * metrics applicable to any property such as `country` and `totalUsers`. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. The resource name of the metadata to retrieve. This name field is * specified in the URL path and not URL parameters. Property is a numeric * Google Analytics property identifier. To learn more, see [where to find * your Property * ID](https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). * * Example: properties/1234/metadata * * Set the Property ID to 0 for dimensions and metrics common to all * properties. In this special mode, this method will not return custom * dimensions and metrics. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.analytics.data.v1alpha.Metadata|Metadata}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.get_metadata.js</caption> * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_GetMetadata_async */ getMetadata(request?: protos.google.analytics.data.v1alpha.IGetMetadataRequest, options?: CallOptions): Promise<[ protos.google.analytics.data.v1alpha.IMetadata, protos.google.analytics.data.v1alpha.IGetMetadataRequest | undefined, {} | undefined ]>; getMetadata(request: protos.google.analytics.data.v1alpha.IGetMetadataRequest, options: CallOptions, callback: Callback<protos.google.analytics.data.v1alpha.IMetadata, protos.google.analytics.data.v1alpha.IGetMetadataRequest | null | undefined, {} | null | undefined>): void; getMetadata(request: protos.google.analytics.data.v1alpha.IGetMetadataRequest, callback: Callback<protos.google.analytics.data.v1alpha.IMetadata, protos.google.analytics.data.v1alpha.IGetMetadataRequest | null | undefined, {} | null | undefined>): void; /** * Creates an audience list for later retrieval. This method quickly returns * the audience list's resource name and initiates a long running asynchronous * request to form an audience list. To list the users in an audience list, * first create the audience list through this method and then send the * audience resource name to the `QueryAudienceList` method. * * See [Creating an Audience * List](https://developers.google.com/analytics/devguides/reporting/data/v1/audience-list-basics) * for an introduction to Audience Lists with examples. * * An audience list is a snapshot of the users currently in the audience at * the time of audience list creation. Creating audience lists for one * audience on different days will return different results as users enter and * exit the audience. * * Audiences in Google Analytics 4 allow you to segment your users in the ways * that are important to your business. To learn more, see * https://support.google.com/analytics/answer/9267572. Audience lists contain * the users in each audience. * * This method is available at beta stability at * [audienceExports.create](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties.audienceExports/create). * To give your feedback on this API, complete the [Google Analytics Audience * Export API Feedback](https://forms.gle/EeA5u5LW6PEggtCEA) form. * * @param {Object} request * The request object that will be sent. * @param {string} request.parent * Required. The parent resource where this audience list will be created. * Format: `properties/{property}` * @param {google.analytics.data.v1alpha.AudienceList} request.audienceList * Required. The audience list to create. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing * a long running operation. Its `promise()` method returns a promise * you can `await` for. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.create_audience_list.js</caption> * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_CreateAudienceList_async */ createAudienceList(request?: protos.google.analytics.data.v1alpha.ICreateAudienceListRequest, options?: CallOptions): Promise<[ LROperation<protos.google.analytics.data.v1alpha.IAudienceList, protos.google.analytics.data.v1alpha.IAudienceListMetadata>, protos.google.longrunning.IOperation | undefined, {} | undefined ]>; createAudienceList(request: protos.google.analytics.data.v1alpha.ICreateAudienceListRequest, options: CallOptions, callback: Callback<LROperation<protos.google.analytics.data.v1alpha.IAudienceList, protos.google.analytics.data.v1alpha.IAudienceListMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void; createAudienceList(request: protos.google.analytics.data.v1alpha.ICreateAudienceListRequest, callback: Callback<LROperation<protos.google.analytics.data.v1alpha.IAudienceList, protos.google.analytics.data.v1alpha.IAudienceListMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void; /** * Check the status of the long running operation returned by `createAudienceList()`. * @param {String} name * The operation name that will be passed. * @returns {Promise} - The promise which resolves to an object. * The decoded operation object has result and metadata field to get information from. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1alpha/alpha_analytics_data.create_audience_list.js</caption> * region_tag:analyticsdata_v1alpha_generated_AlphaAnalyticsData_CreateAudienceList_async */ checkCreateAudienceListProgress(name: string): Promise<LROperation<protos.google.analytics.data.v1alpha.AudienceList, protos.google.analytics.data.v1alpha.AudienceListMetadata>>; /** * Initiates the creation of a report task. This method quickly * returns a report task and initiates a long running * asynchronous request to form a customized report of your Google Analytics * event data. * * A report task will be retained and available for querying for 72 hours * after it has been created. * * A report task created by one user can be listed and queried by all users * who have access to the property. * * @param {Object} request * The request object that will be sent. * @param {string} request.parent * Required. The parent resource where this report task will be created. * Format: `properties/{propertyId}` * @param {google.analytics.data.v1alpha.ReportTask} request.reportTask * Required. The report task configuration to create. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing * a long running operation. Its `promise()` m