UNPKG

googleapis

Version:
1,016 lines 249 kB
/** * Copyright 2019 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import { OAuth2Client, JWT, Compute, UserRefreshClient } from 'google-auth-library'; import { GoogleConfigurable, MethodOptions, GlobalOptions, BodyResponseCallback, APIRequestContext } from 'googleapis-common'; import { GaxiosPromise } from 'gaxios'; export declare namespace bigquery_v2 { interface Options extends GlobalOptions { version: 'v2'; } interface StandardParameters { /** * Data format for the response. */ alt?: string; /** * Selector specifying which fields to include in a partial response. */ fields?: string; /** * API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** * OAuth 2.0 token for the current user. */ oauth_token?: string; /** * Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * An opaque string that represents a user for quota purposes. Must not exceed 40 characters. */ quotaUser?: string; /** * Deprecated. Please use quotaUser instead. */ userIp?: string; } /** * BigQuery API * * A data platform for customers to create, manage, share and query data. * * @example * const {google} = require('googleapis'); * const bigquery = google.bigquery('v2'); * * @namespace bigquery * @type {Function} * @version v2 * @variation v2 * @param {object=} options Options for Bigquery */ class Bigquery { context: APIRequestContext; datasets: Resource$Datasets; jobs: Resource$Jobs; models: Resource$Models; projects: Resource$Projects; routines: Resource$Routines; tabledata: Resource$Tabledata; tables: Resource$Tables; constructor(options: GlobalOptions, google?: GoogleConfigurable); } /** * Aggregate metrics for classification/classifier models. For multi-class models, the metrics are either macro-averaged or micro-averaged. When macro-averaged, the metrics are calculated for each label and then an unweighted average is taken of those values. When micro-averaged, the metric is calculated globally by counting the total number of correctly predicted rows. */ interface Schema$AggregateClassificationMetrics { /** * Accuracy is the fraction of predictions given the correct label. For multiclass this is a micro-averaged metric. */ accuracy?: number; /** * The F1 score is an average of recall and precision. For multiclass this is a macro-averaged metric. */ f1Score?: number; /** * Logarithmic Loss. For multiclass this is a macro-averaged metric. */ logLoss?: number; /** * Precision is the fraction of actual positive predictions that had positive actual labels. For multiclass this is a macro-averaged metric treating each class as a binary classifier. */ precision?: number; /** * Recall is the fraction of actual positive labels that were given a positive prediction. For multiclass this is a macro-averaged metric. */ recall?: number; /** * Area Under a ROC Curve. For multiclass this is a macro-averaged metric. */ rocAuc?: number; /** * Threshold at which the metrics are computed. For binary classification models this is the positive class threshold. For multi-class classfication models this is the confidence threshold. */ threshold?: number; } /** * Input/output argument of a function or a stored procedure. */ interface Schema$Argument { /** * Optional. Defaults to FIXED_TYPE. */ argumentKind?: string; /** * Required unless argument_kind = ANY_TYPE. */ dataType?: Schema$StandardSqlDataType; /** * Optional. Specifies whether the argument is input or output. Can be set for procedures only. */ mode?: string; /** * Optional. The name of this argument. Can be absent for function return argument. */ name?: string; } interface Schema$BigQueryModelTraining { /** * [Output-only, Beta] Index of current ML training iteration. Updated during create model query job to show job progress. */ currentIteration?: number; /** * [Output-only, Beta] Expected number of iterations for the create model query job specified as num_iterations in the input query. The actual total number of iterations may be less than this number due to early stop. */ expectedTotalIterations?: string; } interface Schema$BigtableColumn { /** * [Optional] The encoding of the values when the type is not STRING. Acceptable encoding values are: TEXT - indicates values are alphanumeric text strings. BINARY - indicates values are encoded using HBase Bytes.toBytes family of functions. &#39;encoding&#39; can also be set at the column family level. However, the setting at this level takes precedence if &#39;encoding&#39; is set at both levels. */ encoding?: string; /** * [Optional] If the qualifier is not a valid BigQuery field identifier i.e. does not match [a-zA-Z][a-zA-Z0-9_]*, a valid identifier must be provided as the column field name and is used as field name in queries. */ fieldName?: string; /** * [Optional] If this is set, only the latest version of value in this column are exposed. &#39;onlyReadLatest&#39; can also be set at the column family level. However, the setting at this level takes precedence if &#39;onlyReadLatest&#39; is set at both levels. */ onlyReadLatest?: boolean; /** * [Required] Qualifier of the column. Columns in the parent column family that has this exact qualifier are exposed as . field. If the qualifier is valid UTF-8 string, it can be specified in the qualifier_string field. Otherwise, a base-64 encoded value must be set to qualifier_encoded. The column field name is the same as the column qualifier. However, if the qualifier is not a valid BigQuery field identifier i.e. does not match [a-zA-Z][a-zA-Z0-9_]*, a valid identifier must be provided as field_name. */ qualifierEncoded?: string; qualifierString?: string; /** * [Optional] The type to convert the value in cells of this column. The values are expected to be encoded using HBase Bytes.toBytes function when using the BINARY encoding value. Following BigQuery types are allowed (case-sensitive) - BYTES STRING INTEGER FLOAT BOOLEAN Default type is BYTES. &#39;type&#39; can also be set at the column family level. However, the setting at this level takes precedence if &#39;type&#39; is set at both levels. */ type?: string; } interface Schema$BigtableColumnFamily { /** * [Optional] Lists of columns that should be exposed as individual fields as opposed to a list of (column name, value) pairs. All columns whose qualifier matches a qualifier in this list can be accessed as .. Other columns can be accessed as a list through .Column field. */ columns?: Schema$BigtableColumn[]; /** * [Optional] The encoding of the values when the type is not STRING. Acceptable encoding values are: TEXT - indicates values are alphanumeric text strings. BINARY - indicates values are encoded using HBase Bytes.toBytes family of functions. This can be overridden for a specific column by listing that column in &#39;columns&#39; and specifying an encoding for it. */ encoding?: string; /** * Identifier of the column family. */ familyId?: string; /** * [Optional] If this is set only the latest version of value are exposed for all columns in this column family. This can be overridden for a specific column by listing that column in &#39;columns&#39; and specifying a different setting for that column. */ onlyReadLatest?: boolean; /** * [Optional] The type to convert the value in cells of this column family. The values are expected to be encoded using HBase Bytes.toBytes function when using the BINARY encoding value. Following BigQuery types are allowed (case-sensitive) - BYTES STRING INTEGER FLOAT BOOLEAN Default type is BYTES. This can be overridden for a specific column by listing that column in &#39;columns&#39; and specifying a type for it. */ type?: string; } interface Schema$BigtableOptions { /** * [Optional] List of column families to expose in the table schema along with their types. This list restricts the column families that can be referenced in queries and specifies their value types. You can use this list to do type conversions - see the &#39;type&#39; field for more details. If you leave this list empty, all column families are present in the table schema and their values are read as BYTES. During a query only the column families referenced in that query are read from Bigtable. */ columnFamilies?: Schema$BigtableColumnFamily[]; /** * [Optional] If field is true, then the column families that are not specified in columnFamilies list are not exposed in the table schema. Otherwise, they are read with BYTES type values. The default value is false. */ ignoreUnspecifiedColumnFamilies?: boolean; /** * [Optional] If field is true, then the rowkey column families will be read and converted to string. Otherwise they are read with BYTES type values and users need to manually cast them with CAST if necessary. The default value is false. */ readRowkeyAsString?: boolean; } /** * Evaluation metrics for binary classification/classifier models. */ interface Schema$BinaryClassificationMetrics { /** * Aggregate classification metrics. */ aggregateClassificationMetrics?: Schema$AggregateClassificationMetrics; /** * Binary confusion matrix at multiple thresholds. */ binaryConfusionMatrixList?: Schema$BinaryConfusionMatrix[]; /** * Label representing the negative class. */ negativeLabel?: string; /** * Label representing the positive class. */ positiveLabel?: string; } /** * Confusion matrix for binary classification models. */ interface Schema$BinaryConfusionMatrix { /** * The fraction of predictions given the correct label. */ accuracy?: number; /** * The equally weighted average of recall and precision. */ f1Score?: number; /** * Number of false samples predicted as false. */ falseNegatives?: string; /** * Number of false samples predicted as true. */ falsePositives?: string; /** * Threshold value used when computing each of the following metric. */ positiveClassThreshold?: number; /** * The fraction of actual positive predictions that had positive actual labels. */ precision?: number; /** * The fraction of actual positive labels that were given a positive prediction. */ recall?: number; /** * Number of true samples predicted as false. */ trueNegatives?: string; /** * Number of true samples predicted as true. */ truePositives?: string; } interface Schema$BqmlIterationResult { /** * [Output-only, Beta] Time taken to run the training iteration in milliseconds. */ durationMs?: string; /** * [Output-only, Beta] Eval loss computed on the eval data at the end of the iteration. The eval loss is used for early stopping to avoid overfitting. No eval loss if eval_split_method option is specified as no_split or auto_split with input data size less than 500 rows. */ evalLoss?: number; /** * [Output-only, Beta] Index of the ML training iteration, starting from zero for each training run. */ index?: number; /** * [Output-only, Beta] Learning rate used for this iteration, it varies for different training iterations if learn_rate_strategy option is not constant. */ learnRate?: number; /** * [Output-only, Beta] Training loss computed on the training data at the end of the iteration. The training loss function is defined by model type. */ trainingLoss?: number; } interface Schema$BqmlTrainingRun { /** * [Output-only, Beta] List of each iteration results. */ iterationResults?: Schema$BqmlIterationResult[]; /** * [Output-only, Beta] Training run start time in milliseconds since the epoch. */ startTime?: string; /** * [Output-only, Beta] Different state applicable for a training run. IN PROGRESS: Training run is in progress. FAILED: Training run ended due to a non-retryable failure. SUCCEEDED: Training run successfully completed. CANCELLED: Training run cancelled by the user. */ state?: string; /** * [Output-only, Beta] Training options used by this training run. These options are mutable for subsequent training runs. Default values are explicitly stored for options not specified in the input query of the first training run. For subsequent training runs, any option not explicitly specified in the input query will be copied from the previous training run. */ trainingOptions?: { l1Reg?: number; maxIteration?: string; learnRate?: number; minRelProgress?: number; l2Reg?: number; learnRateStrategy?: string; warmStart?: boolean; lineSearchInitLearnRate?: number; earlyStop?: boolean; }; } /** * Information about a single cluster for clustering model. */ interface Schema$ClusterInfo { /** * Centroid id. */ centroidId?: string; /** * Cluster radius, the average distance from centroid to each point assigned to the cluster. */ clusterRadius?: number; /** * Cluster size, the total number of points assigned to the cluster. */ clusterSize?: string; } interface Schema$Clustering { /** * [Repeated] One or more fields on which data should be clustered. Only top-level, non-repeated, simple-type fields are supported. When you cluster a table using multiple columns, the order of columns you specify is important. The order of the specified columns determines the sort order of the data. */ fields?: string[]; } /** * Evaluation metrics for clustering models. */ interface Schema$ClusteringMetrics { /** * Davies-Bouldin index. */ daviesBouldinIndex?: number; /** * Mean of squared distances between each sample to its cluster centroid. */ meanSquaredDistance?: number; } /** * Confusion matrix for multi-class classification models. */ interface Schema$ConfusionMatrix { /** * Confidence threshold used when computing the entries of the confusion matrix. */ confidenceThreshold?: number; /** * One row per actual label. */ rows?: Schema$Row[]; } interface Schema$CsvOptions { /** * [Optional] Indicates if BigQuery should accept rows that are missing trailing optional columns. If true, BigQuery treats missing trailing columns as null values. If false, records with missing trailing columns are treated as bad records, and if there are too many bad records, an invalid error is returned in the job result. The default value is false. */ allowJaggedRows?: boolean; /** * [Optional] Indicates if BigQuery should allow quoted data sections that contain newline characters in a CSV file. The default value is false. */ allowQuotedNewlines?: boolean; /** * [Optional] The character encoding of the data. The supported values are UTF-8 or ISO-8859-1. The default value is UTF-8. BigQuery decodes the data after the raw, binary data has been split using the values of the quote and fieldDelimiter properties. */ encoding?: string; /** * [Optional] The separator for fields in a CSV file. BigQuery converts the string to ISO-8859-1 encoding, and then uses the first byte of the encoded string to split the data in its raw, binary state. BigQuery also supports the escape sequence &quot;\t&quot; to specify a tab separator. The default value is a comma (&#39;,&#39;). */ fieldDelimiter?: string; /** * [Optional] The value that is used to quote data sections in a CSV file. BigQuery converts the string to ISO-8859-1 encoding, and then uses the first byte of the encoded string to split the data in its raw, binary state. The default value is a double-quote (&#39;&quot;&#39;). If your data does not contain quoted sections, set the property value to an empty string. If your data contains quoted newline characters, you must also set the allowQuotedNewlines property to true. */ quote?: string; /** * [Optional] The number of rows at the top of a CSV file that BigQuery will skip when reading the data. The default value is 0. This property is useful if you have header rows in the file that should be skipped. */ skipLeadingRows?: string; } interface Schema$Dataset { /** * [Optional] An array of objects that define dataset access for one or more entities. You can set this property when inserting or updating a dataset in order to control who is allowed to access the data. If unspecified at dataset creation time, BigQuery adds default dataset access for the following entities: access.specialGroup: projectReaders; access.role: READER; access.specialGroup: projectWriters; access.role: WRITER; access.specialGroup: projectOwners; access.role: OWNER; access.userByEmail: [dataset creator email]; access.role: OWNER; */ access?: Array<{ role?: string; view?: Schema$TableReference; groupByEmail?: string; userByEmail?: string; domain?: string; iamMember?: string; specialGroup?: string; }>; /** * [Output-only] The time when this dataset was created, in milliseconds since the epoch. */ creationTime?: string; /** * [Required] A reference that identifies the dataset. */ datasetReference?: Schema$DatasetReference; defaultEncryptionConfiguration?: Schema$EncryptionConfiguration; /** * [Optional] The default partition expiration for all partitioned tables in the dataset, in milliseconds. Once this property is set, all newly-created partitioned tables in the dataset will have an expirationMs property in the timePartitioning settings set to this value, and changing the value will only affect new tables, not existing ones. The storage in a partition will have an expiration time of its partition time plus this value. Setting this property overrides the use of defaultTableExpirationMs for partitioned tables: only one of defaultTableExpirationMs and defaultPartitionExpirationMs will be used for any new partitioned table. If you provide an explicit timePartitioning.expirationMs when creating or updating a partitioned table, that value takes precedence over the default partition expiration time indicated by this property. */ defaultPartitionExpirationMs?: string; /** * [Optional] The default lifetime of all tables in the dataset, in milliseconds. The minimum value is 3600000 milliseconds (one hour). Once this property is set, all newly-created tables in the dataset will have an expirationTime property set to the creation time plus the value in this property, and changing the value will only affect new tables, not existing ones. When the expirationTime for a given table is reached, that table will be deleted automatically. If a table&#39;s expirationTime is modified or removed before the table expires, or if you provide an explicit expirationTime when creating a table, that value takes precedence over the default expiration time indicated by this property. */ defaultTableExpirationMs?: string; /** * [Optional] A user-friendly description of the dataset. */ description?: string; /** * [Output-only] A hash of the resource. */ etag?: string; /** * [Optional] A descriptive name for the dataset. */ friendlyName?: string; /** * [Output-only] The fully-qualified unique name of the dataset in the format projectId:datasetId. The dataset name without the project name is given in the datasetId field. When creating a new dataset, leave this field blank, and instead specify the datasetId field. */ id?: string; /** * [Output-only] The resource type. */ kind?: string; /** * The labels associated with this dataset. You can use these to organize and group your datasets. You can set this property when inserting or updating a dataset. See Creating and Updating Dataset Labels for more information. */ labels?: { [key: string]: string; }; /** * [Output-only] The date when this dataset or any of its tables was last modified, in milliseconds since the epoch. */ lastModifiedTime?: string; /** * The geographic location where the dataset should reside. The default value is US. See details at https://cloud.google.com/bigquery/docs/locations. */ location?: string; /** * [Output-only] A URL that can be used to access the resource again. You can use this URL in Get or Update requests to the resource. */ selfLink?: string; } interface Schema$DatasetList { /** * An array of the dataset resources in the project. Each resource contains basic information. For full information about a particular dataset resource, use the Datasets: get method. This property is omitted when there are no datasets in the project. */ datasets?: Array<{ id?: string; location?: string; friendlyName?: string; kind?: string; labels?: { [key: string]: string; }; datasetReference?: Schema$DatasetReference; }>; /** * A hash value of the results page. You can use this property to determine if the page has changed since the last request. */ etag?: string; /** * The list type. This property always returns the value &quot;bigquery#datasetList&quot;. */ kind?: string; /** * A token that can be used to request the next results page. This property is omitted on the final results page. */ nextPageToken?: string; } interface Schema$DatasetReference { /** * [Required] A unique ID for this dataset, without the project name. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters. */ datasetId?: string; /** * [Optional] The ID of the project containing this dataset. */ projectId?: string; } interface Schema$DestinationTableProperties { /** * [Optional] The description for the destination table. This will only be used if the destination table is newly created. If the table already exists and a value different than the current description is provided, the job will fail. */ description?: string; /** * [Optional] The friendly name for the destination table. This will only be used if the destination table is newly created. If the table already exists and a value different than the current friendly name is provided, the job will fail. */ friendlyName?: string; /** * [Optional] The labels associated with this table. You can use these to organize and group your tables. This will only be used if the destination table is newly created. If the table already exists and labels are different than the current labels are provided, the job will fail. */ labels?: { [key: string]: string; }; } interface Schema$EncryptionConfiguration { /** * [Optional] Describes the Cloud KMS encryption key that will be used to protect destination BigQuery table. The BigQuery Service Account associated with your project requires access to this encryption key. */ kmsKeyName?: string; } /** * A single entry in the confusion matrix. */ interface Schema$Entry { /** * Number of items being predicted as this label. */ itemCount?: string; /** * The predicted label. For confidence_threshold &gt; 0, we will also add an entry indicating the number of items under the confidence threshold. */ predictedLabel?: string; } interface Schema$ErrorProto { /** * Debugging information. This property is internal to Google and should not be used. */ debugInfo?: string; /** * Specifies where the error occurred, if present. */ location?: string; /** * A human-readable description of the error. */ message?: string; /** * A short error code that summarizes the error. */ reason?: string; } /** * Evaluation metrics of a model. These are either computed on all training data or just the eval data based on whether eval data was used during training. These are not present for imported models. */ interface Schema$EvaluationMetrics { /** * Populated for binary classification/classifier models. */ binaryClassificationMetrics?: Schema$BinaryClassificationMetrics; /** * [Beta] Populated for clustering models. */ clusteringMetrics?: Schema$ClusteringMetrics; /** * Populated for multi-class classification/classifier models. */ multiClassClassificationMetrics?: Schema$MultiClassClassificationMetrics; /** * Populated for regression models. */ regressionMetrics?: Schema$RegressionMetrics; } interface Schema$ExplainQueryStage { /** * Number of parallel input segments completed. */ completedParallelInputs?: string; /** * Milliseconds the average shard spent on CPU-bound tasks. */ computeMsAvg?: string; /** * Milliseconds the slowest shard spent on CPU-bound tasks. */ computeMsMax?: string; /** * Relative amount of time the average shard spent on CPU-bound tasks. */ computeRatioAvg?: number; /** * Relative amount of time the slowest shard spent on CPU-bound tasks. */ computeRatioMax?: number; /** * Stage end time represented as milliseconds since epoch. */ endMs?: string; /** * Unique ID for stage within plan. */ id?: string; /** * IDs for stages that are inputs to this stage. */ inputStages?: string[]; /** * Human-readable name for stage. */ name?: string; /** * Number of parallel input segments to be processed. */ parallelInputs?: string; /** * Milliseconds the average shard spent reading input. */ readMsAvg?: string; /** * Milliseconds the slowest shard spent reading input. */ readMsMax?: string; /** * Relative amount of time the average shard spent reading input. */ readRatioAvg?: number; /** * Relative amount of time the slowest shard spent reading input. */ readRatioMax?: number; /** * Number of records read into the stage. */ recordsRead?: string; /** * Number of records written by the stage. */ recordsWritten?: string; /** * Total number of bytes written to shuffle. */ shuffleOutputBytes?: string; /** * Total number of bytes written to shuffle and spilled to disk. */ shuffleOutputBytesSpilled?: string; /** * Stage start time represented as milliseconds since epoch. */ startMs?: string; /** * Current status for the stage. */ status?: string; /** * List of operations within the stage in dependency order (approximately chronological). */ steps?: Schema$ExplainQueryStep[]; /** * Milliseconds the average shard spent waiting to be scheduled. */ waitMsAvg?: string; /** * Milliseconds the slowest shard spent waiting to be scheduled. */ waitMsMax?: string; /** * Relative amount of time the average shard spent waiting to be scheduled. */ waitRatioAvg?: number; /** * Relative amount of time the slowest shard spent waiting to be scheduled. */ waitRatioMax?: number; /** * Milliseconds the average shard spent on writing output. */ writeMsAvg?: string; /** * Milliseconds the slowest shard spent on writing output. */ writeMsMax?: string; /** * Relative amount of time the average shard spent on writing output. */ writeRatioAvg?: number; /** * Relative amount of time the slowest shard spent on writing output. */ writeRatioMax?: number; } interface Schema$ExplainQueryStep { /** * Machine-readable operation type. */ kind?: string; /** * Human-readable stage descriptions. */ substeps?: string[]; } interface Schema$ExternalDataConfiguration { /** * Try to detect schema and format options automatically. Any option specified explicitly will be honored. */ autodetect?: boolean; /** * [Optional] Additional options if sourceFormat is set to BIGTABLE. */ bigtableOptions?: Schema$BigtableOptions; /** * [Optional] The compression type of the data source. Possible values include GZIP and NONE. The default value is NONE. This setting is ignored for Google Cloud Bigtable, Google Cloud Datastore backups and Avro formats. */ compression?: string; /** * Additional properties to set if sourceFormat is set to CSV. */ csvOptions?: Schema$CsvOptions; /** * [Optional] Additional options if sourceFormat is set to GOOGLE_SHEETS. */ googleSheetsOptions?: Schema$GoogleSheetsOptions; /** * [Optional, Trusted Tester] If hive partitioning is enabled, which mode to use. Two modes are supported: - AUTO: automatically infer partition key name(s) and type(s). - STRINGS: automatic infer partition key name(s). All types are strings. Not all storage formats support hive partitioning -- requesting hive partitioning on an unsupported format will lead to an error. Note: this setting is in the process of being deprecated in favor of hivePartitioningOptions. */ hivePartitioningMode?: string; /** * [Optional, Trusted Tester] Options to configure hive partitioning support. */ hivePartitioningOptions?: Schema$HivePartitioningOptions; /** * [Optional] Indicates if BigQuery should allow extra values that are not represented in the table schema. If true, the extra values are ignored. If false, records with extra columns are treated as bad records, and if there are too many bad records, an invalid error is returned in the job result. The default value is false. The sourceFormat property determines what BigQuery treats as an extra value: CSV: Trailing columns JSON: Named values that don&#39;t match any column names Google Cloud Bigtable: This setting is ignored. Google Cloud Datastore backups: This setting is ignored. Avro: This setting is ignored. */ ignoreUnknownValues?: boolean; /** * [Optional] The maximum number of bad records that BigQuery can ignore when reading data. If the number of bad records exceeds this value, an invalid error is returned in the job result. This is only valid for CSV, JSON, and Google Sheets. The default value is 0, which requires that all records are valid. This setting is ignored for Google Cloud Bigtable, Google Cloud Datastore backups and Avro formats. */ maxBadRecords?: number; /** * [Optional] The schema for the data. Schema is required for CSV and JSON formats. Schema is disallowed for Google Cloud Bigtable, Cloud Datastore backups, and Avro formats. */ schema?: Schema$TableSchema; /** * [Required] The data format. For CSV files, specify &quot;CSV&quot;. For Google sheets, specify &quot;GOOGLE_SHEETS&quot;. For newline-delimited JSON, specify &quot;NEWLINE_DELIMITED_JSON&quot;. For Avro files, specify &quot;AVRO&quot;. For Google Cloud Datastore backups, specify &quot;DATASTORE_BACKUP&quot;. [Beta] For Google Cloud Bigtable, specify &quot;BIGTABLE&quot;. */ sourceFormat?: string; /** * [Required] The fully-qualified URIs that point to your data in Google Cloud. For Google Cloud Storage URIs: Each URI can contain one &#39;*&#39; wildcard character and it must come after the &#39;bucket&#39; name. Size limits related to load jobs apply to external data sources. For Google Cloud Bigtable URIs: Exactly one URI can be specified and it has be a fully specified and valid HTTPS URL for a Google Cloud Bigtable table. For Google Cloud Datastore backups, exactly one URI can be specified. Also, the &#39;*&#39; wildcard character is not allowed. */ sourceUris?: string[]; } interface Schema$GetQueryResultsResponse { /** * Whether the query result was fetched from the query cache. */ cacheHit?: boolean; /** * [Output-only] The first errors or warnings encountered during the running of the job. The final message includes the number of errors that caused the process to stop. Errors here do not necessarily mean that the job has completed or was unsuccessful. */ errors?: Schema$ErrorProto[]; /** * A hash of this response. */ etag?: string; /** * Whether the query has completed or not. If rows or totalRows are present, this will always be true. If this is false, totalRows will not be available. */ jobComplete?: boolean; /** * Reference to the BigQuery Job that was created to run the query. This field will be present even if the original request timed out, in which case GetQueryResults can be used to read the results once the query has completed. Since this API only returns the first page of results, subsequent pages can be fetched via the same mechanism (GetQueryResults). */ jobReference?: Schema$JobReference; /** * The resource type of the response. */ kind?: string; /** * [Output-only] The number of rows affected by a DML statement. Present only for DML statements INSERT, UPDATE or DELETE. */ numDmlAffectedRows?: string; /** * A token used for paging results. */ pageToken?: string; /** * An object with as many results as can be contained within the maximum permitted reply size. To get any additional rows, you can call GetQueryResults and specify the jobReference returned above. Present only when the query completes successfully. */ rows?: Schema$TableRow[]; /** * The schema of the results. Present only when the query completes successfully. */ schema?: Schema$TableSchema; /** * The total number of bytes processed for this query. */ totalBytesProcessed?: string; /** * The total number of rows in the complete query result set, which can be more than the number of rows in this single page of results. Present only when the query completes successfully. */ totalRows?: string; } interface Schema$GetServiceAccountResponse { /** * The service account email address. */ email?: string; /** * The resource type of the response. */ kind?: string; } interface Schema$GoogleSheetsOptions { /** * [Beta] [Optional] Range of a sheet to query from. Only used when non-empty. Typical format: sheet_name!top_left_cell_id:bottom_right_cell_id For example: sheet1!A1:B20 */ range?: string; /** * [Optional] The number of rows at the top of a sheet that BigQuery will skip when reading the data. The default value is 0. This property is useful if you have header rows that should be skipped. When autodetect is on, behavior is the following: * skipLeadingRows unspecified - Autodetect tries to detect headers in the first row. If they are not detected, the row is read as data. Otherwise data is read starting from the second row. * skipLeadingRows is 0 - Instructs autodetect that there are no headers and data should be read starting from the first row. * skipLeadingRows = N &gt; 0 - Autodetect skips N-1 rows and tries to detect headers in row N. If headers are not detected, row N is just skipped. Otherwise row N is used to extract column names for the detected schema. */ skipLeadingRows?: string; } interface Schema$HivePartitioningOptions { /** * [Optional, Trusted Tester] When set, what mode of hive partitioning to use when reading data. Two modes are supported. (1) AUTO: automatically infer partition key name(s) and type(s). (2) STRINGS: automatically infer partition key name(s). All types are interpreted as strings. Not all storage formats support hive partitioning. Requesting hive partitioning on an unsupported format will lead to an error. Currently supported types include: AVRO, CSV, JSON, ORC and Parquet. */ mode?: string; /** * [Optional, Trusted Tester] When hive partition detection is requested, a common prefix for all source uris should be supplied. The prefix must end immediately before the partition key encoding begins. For example, consider files following this data layout. gs://bucket/path_to_table/dt=2019-01-01/country=BR/id=7/file.avro gs://bucket/path_to_table/dt=2018-12-31/country=CA/id=3/file.avro When hive partitioning is requested with either AUTO or STRINGS detection, the common prefix can be either of gs://bucket/path_to_table or gs://bucket/path_to_table/ (trailing slash does not matter). */ sourceUriPrefix?: string; } /** * Information about a single iteration of the training run. */ interface Schema$IterationResult { /** * [Beta] Information about top clusters for clustering models. */ clusterInfos?: Schema$ClusterInfo[]; /** * Time taken to run the iteration in milliseconds. */ durationMs?: string; /** * Loss computed on the eval data at the end of iteration. */ evalLoss?: number; /** * Index of the iteration, 0 based. */ index?: number; /** * Learn rate used for this iteration. */ learnRate?: number; /** * Loss computed on the training data at the end of iteration. */ trainingLoss?: number; } interface Schema$Job { /** * [Required] Describes the job configuration. */ configuration?: Schema$JobConfiguration; /** * [Output-only] A hash of this resource. */ etag?: string; /** * [Output-only] Opaque ID field of the job */ id?: string; /** * [Optional] Reference describing the unique-per-user name of the job. */ jobReference?: Schema$JobReference; /** * [Output-only] The type of the resource. */ kind?: string; /** * [Output-only] A URL that can be used to access this resource again. */ selfLink?: string; /** * [Output-only] Information about the job, including starting time and ending time of the job. */ statistics?: Schema$JobStatistics; /** * [Output-only] The status of this job. Examine this value when polling an asynchronous job to see if the job is complete. */ status?: Schema$JobStatus; /** * [Output-only] Email address of the user who ran the job. */ user_email?: string; } interface Schema$JobCancelResponse { /** * The final state of the job. */ job?: Schema$Job; /** * The resource type of the response. */ kind?: string; } interface Schema$JobConfiguration { /** * [Pick one] Copies a table. */ copy?: Schema$JobConfigurationTableCopy; /** * [Optional] If set, don&#39;t actually run this job. A valid query will return a mostly empty response with some processing statistics, while an invalid query will return the same error it would if it wasn&#39;t a dry run. Behavior of non-query jobs is undefined. */ dryRun?: boolean; /** * [Pick one] Configures an extract job. */ extract?: Schema$JobConfigurationExtract; /** * [Optional] Job timeout in milliseconds. If this time limit is exceeded, BigQuery may attempt to terminate the job. */ jobTimeoutMs?: string; /** * [Output-only] The type of the job. Can be QUERY, LOAD, EXTRACT, COPY or UNKNOWN. */ jobType?: string; /** * The labels associated with this job. You can use these to organize and group your jobs. Label keys and values can be no longer than 63 characters, can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. Label values are optional. Label keys must start with a letter and each label in the list must have a different key. */ labels?: { [key: string]: string; }; /** * [Pick one] Configures a load job. */ load?: Schema$JobConfigurationLoad; /** * [Pick one] Configures a query job. */ query?: Schema$JobConfigurationQuery; } interface Schema$JobConfigurationExtract { /** * [Optional] The compression type to use for exported files. Possible values include GZIP, DEFLATE, SNAPPY, and NONE. The default value is NONE. DEFLATE and SNAPPY are only supported for Avro. */ compression?: string; /** * [Optional] The exported file format. Possible values include CSV, NEWLINE_DELIMITED_JSON and AVRO. The default value is CSV. Tables with nested or repeated fields cannot be exported as CSV. */ destinationFormat?: string; /** * [Pick one] DEPRECATED: Use destinationUris instead, passing only one URI as necessary. The fully-qualified Google Cloud Storage URI where the extracted table should be written. */ destinationUri?: string; /** * [Pick one] A list of fully-qualified Google Cloud Storage URIs where the extracted table should be written. */ destinationUris?: string[]; /** * [Optional] Delimiter to use between fields in the exported data. Default is &#39;,&#39; */ fieldDelimiter?: string; /** * [Optional] Whether to print out a header row in the results. Default is true. */ printHeader?: boolean; /** * [Required] A reference to the table being exported. */ sourceTable?: Schema$TableReference; } interface Schema$JobConfigurationLoad { /** * [Optional] Accept rows that are missing trailing optional columns. The missing values are treated as nulls. If false, records with missing trailing columns are treated as bad records, and if there are too many bad records, an invalid error is returned in the job result. The default value is false. Only applicable to CSV, ignored for other formats. */ allowJaggedRows?: boolean; /** * Indicates if BigQuery should allow quoted data sections that contain newline characters in a CSV file. The default value is false. */ allowQuotedNewlines?: boolean; /** * [Optional] Indicates if we should automatically infer the options and schema for CSV and JSON sources. */ autodetect?: boolean; /** * [Beta] Clustering specification for the destination table. Must be specified with time-based partitioning, data in the table will be first partitioned and subsequently clustered. */ clustering?: Schema$Clustering; /** * [Optional] Specifies whether the job is allowed to create new tables. The following values are supported: CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the table. CREATE_NEVER: The table must already exist. If it does not, a &#39;notFound&#39; error is returned in the job result. The default value is CREATE_IF_NEEDED. Creation, truncation and append actions occur as one atomic update upon job completion. */ createDisposition?: string; /** * Custom encryption configuration (e.g., Cloud KMS keys). */ destinationEncryptionConfiguration?: Schema$EncryptionConfiguration; /** * [Required] The destination table to load the data into. */ destinationTable?: Schema$TableReference; /** * [Beta] [Optional] Properties with which to create the destination table if it is new. */ destinationTableProperties?: Schema$DestinationTableProperties; /** * [Optional] The character encoding of the data. The supported values are UTF-8 or ISO-8859-1. The default value is UTF-8. BigQuery decodes the data after the raw, binary data has been split using the values of the quote and fieldDelimiter properties. */ encoding?: string; /** * [Optional] The separator for fields in a CSV file. The separator can be any ISO-8859-1 single-byte character. To use a character in the range 128-255, you must encode the character as UTF8. BigQuery converts the string to ISO-8859-1 encoding, and then uses the first byte of the encoded string to split the data in its raw, binary state. BigQuery also supports the escape sequence &quot;\t&quot; to specify a tab separator. The default value is a comma (&#39;,&#39;). */ fieldDelimiter?: string; /** * [Optional, Trusted Tester] If hive partitioning is enabled, which mode to use. Two modes are supported: - AUTO: automatically infer partition key name(s) and type(s). - STRINGS: automatic infer partition key name(s). All types are strings. Not all storage formats support hive partitioning -- requesting hive partitioning on an unsupported format will lead to an error. */ hivePartitioningMode?: string; /** * [Optional, Trusted Tester] Options to configure hi