Google BigQuery: Node.js Client
Google BigQuery Client Library for Node.js
A comprehensive list of changes in each version may be found inthe CHANGELOG.
- Google BigQuery Node.js Client API Reference
- Google BigQuery Documentation
- github.com/googleapis/nodejs-bigquery
Read more about the client libraries for Cloud APIs, including the olderGoogle APIs Client Libraries, inClient Libraries Explained.
Table of contents:
Quickstart
Before you begin
- Select or create a Cloud Platform project.
- Enable the Google BigQuery API.
- Set up authentication so you can access theAPI from your local workstation.
Installing the client library
npm install @google-cloud/bigqueryUsing the client library
// Imports the Google Cloud client libraryconst {BigQuery} = require('@google-cloud/bigquery');async function createDataset() { // Creates a client const bigqueryClient = newBigQuery(); // Create the dataset const [dataset] = await bigqueryClient.createDataset(datasetName); console.log(`Dataset ${dataset.id} created.`);}createDataset();Samples
Samples are in thesamples/ directory. Each sample'sREADME.md has instructions for running its sample.
| Sample | Source Code | Try it |
|---|---|---|
| Add Column Load Append | source code | ![]() |
| Add Column Query Append | source code | ![]() |
| Add Empty Column | source code | ![]() |
| Auth View Tutorial | source code | ![]() |
| Browse Table | source code | ![]() |
| Cancel Job | source code | ![]() |
| Client JSON Credentials | source code | ![]() |
| Copy Table | source code | ![]() |
| Copy Table Multiple Source | source code | ![]() |
| Create Dataset | source code | ![]() |
| Create Job | source code | ![]() |
| Create Model | source code | ![]() |
| Create Routine | source code | ![]() |
| Create Routine DDL | source code | ![]() |
| Create Table | source code | ![]() |
| Create Table Clustered | source code | ![]() |
| Create Table Column ACL | source code | ![]() |
| Create Table Partitioned | source code | ![]() |
| Create Table Range Partitioned | source code | ![]() |
| Create View | source code | ![]() |
| Ddl Create View | source code | ![]() |
| Delete Dataset | source code | ![]() |
| Delete Label Dataset | source code | ![]() |
| Delete Label Table | source code | ![]() |
| Delete Model | source code | ![]() |
| Delete Routine | source code | ![]() |
| Delete Table | source code | ![]() |
| Extract Table Compressed | source code | ![]() |
| Extract Table JSON | source code | ![]() |
| Extract Table To GCS | source code | ![]() |
| Get Dataset | source code | ![]() |
| Get Dataset Labels | source code | ![]() |
| Get Job | source code | ![]() |
| BigQuery Get Model | source code | ![]() |
| Get Routine | source code | ![]() |
| BigQuery Get Table | source code | ![]() |
| Get Table Labels | source code | ![]() |
| Get View | source code | ![]() |
| Insert Rows As Stream | source code | ![]() |
| Inserting Data Types | source code | ![]() |
| BigQuery Label Dataset | source code | ![]() |
| Label Table | source code | ![]() |
| List Datasets | source code | ![]() |
| List Datasets By Label | source code | ![]() |
| List Jobs | source code | ![]() |
| BigQuery List Models | source code | ![]() |
| BigQuery List Models Streaming | source code | ![]() |
| List Routines | source code | ![]() |
| List Tables | source code | ![]() |
| Load CSV From GCS | source code | ![]() |
| Load CSV From GCS Autodetect | source code | ![]() |
| Load CSV From GCS Truncate | source code | ![]() |
| Load JSON From GCS | source code | ![]() |
| Load JSON From GCS Autodetect | source code | ![]() |
| Load JSON From GCS Truncate | source code | ![]() |
| Load Local File | source code | ![]() |
| Load Orc From GCS Truncate | source code | ![]() |
| Load Parquet From GCS Truncate | source code | ![]() |
| Load Table Clustered | source code | ![]() |
| Load Table GCS Avro | source code | ![]() |
| Load Table GCS Avro Truncate | source code | ![]() |
| Load Table GCSORC | source code | ![]() |
| Load Table GCS Parquet | source code | ![]() |
| Load Table Partitioned | source code | ![]() |
| Load Table URI Firestore | source code | ![]() |
| Nested Repeated Schema | source code | ![]() |
| Query | source code | ![]() |
| Query Batch | source code | ![]() |
| Query Clustered Table | source code | ![]() |
| Query Destination Table | source code | ![]() |
| Query Disable Cache | source code | ![]() |
| Query Dry Run | source code | ![]() |
| Query External GCS Perm | source code | ![]() |
| Query External GCS Temp | source code | ![]() |
| Query Legacy | source code | ![]() |
| Query Legacy Large Results | source code | ![]() |
| Query Pagination | source code | ![]() |
| Query Params Arrays | source code | ![]() |
| Query Params Named | source code | ![]() |
| Query Params Named Types | source code | ![]() |
| Query Params Positional | source code | ![]() |
| Query Params Positional Types | source code | ![]() |
| Query Params Structs | source code | ![]() |
| Query Params Timestamps | source code | ![]() |
| Query Short Mode | source code | ![]() |
| Query Stack Overflow | source code | ![]() |
| Quickstart | source code | ![]() |
| Relax Column | source code | ![]() |
| Relax Column Load Append | source code | ![]() |
| Relax Column Query Append | source code | ![]() |
| Remove Table Clustering | source code | ![]() |
| Set Client Endpoint | source code | ![]() |
| Set User Agent | source code | ![]() |
| Table Exists | source code | ![]() |
| Undelete Table | source code | ![]() |
| Update Dataset Access | source code | ![]() |
| Update Dataset Description | source code | ![]() |
| Update Dataset Expiration | source code | ![]() |
| BigQuery Update Model | source code | ![]() |
| Update Routine | source code | ![]() |
| Update Table Column ACL | source code | ![]() |
| Update Table Description | source code | ![]() |
| Update Table Expiration | source code | ![]() |
| Update View Query | source code | ![]() |
TheGoogle BigQuery Node.js Client API Reference documentationalso contains samples.
Supported Node.js Versions
Our client libraries follow theNode.js release schedule.Libraries are compatible with all currentactive andmaintenance versions ofNode.js.If you are using an end-of-life version of Node.js, we recommend that you updateas soon as possible to an actively supported LTS version.
Google's client libraries support legacy versions of Node.js runtimes on abest-efforts basis with the following warnings:
- Legacy versions are not tested in continuous integration.
- Some security patches and features cannot be backported.
- Dependencies cannot be kept up-to-date.
Client libraries targeting some end-of-life versions of Node.js are available, andcan be installed through npmdist-tags.The dist-tags follow the naming conventionlegacy-(version).For example,npm install @google-cloud/bigquery@legacy-8 installs client librariesfor versions compatible with Node.js 8.
Versioning
This library followsSemantic Versioning.
This library is considered to bestable. The code surface will not change in backwards-incompatible waysunless absolutely necessary (e.g. because of critical security issues) or withan extensive deprecation period. Issues and requests againststable librariesare addressed with the highest priority.
More Information:Google Cloud Platform Launch Stages
Contributing
Contributions welcome! See theContributing Guide.
Please note that thisREADME.md, thesamples/README.md,and a variety of configuration files in this repository (including.nycrc andtsconfig.json)are generated from a central template. To edit one of these files, make an editto its templates indirectory.
License
Apache Version 2.0
SeeLICENSE
Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-10-30 UTC.
