Why Google Solutions Products Pricing Getting started Docs Support
Docs Support


Google Cloud Platform logo

Google BigQuery Data Transfer Service: Node.js Client

release level CircleCI AppVeyor codecov

Node.js idiomatic client for BigQuery Data Transfer Service .

Client API Reference


Before you begin

  1. Select or create a Cloud Platform project.

    Go to the projects page

  2. Enable billing for your project.

    Enable billing

  3. Enable the Google BigQuery Data Transfer Service API.

    Enable the API

  4. Set up authentication with a service account so you can access the API from your local workstation.

Installing the client library

npm install --save @google-cloud/bigquery-data-transfer

Using the client library

if (
  !process.env.GCLOUD_PROJECT ||
) {
  throw new Error(
    'Usage: GCLOUD_PROJECT=<project_id> GOOGLE_APPLICATION_CREDENTIALS=<path to key json file> node #{$0}'

const bigqueryDataTransfer = require('@google-cloud/bigquery-data-transfer');

const client = new bigqueryDataTransfer.v1.DataTransferServiceClient({
  // optional auth parameters.
const projectId = process.env.GCLOUD_PROJECT;

// Iterate over all elements.
const formattedParent = client.locationPath(projectId, 'us-central1');

client.listDataSources({parent: formattedParent}).then(responses => {
  const resources = responses[0];
  for (let i = 0; i < resources.length; i += 1) {

const options = {autoPaginate: false};
const callback = responses => {
  // The actual resources in a response.
  const resources = responses[0];
  // The next request if the response shows that there are more responses.
  const nextRequest = responses[1];
  // The actual response object, if necessary.
  // const rawResponse = responses[2];
  for (let i = 0; i < resources.length; i += 1) {
  if (nextRequest) {
    // Fetch the next page.
    return client.listDataSources(nextRequest, options).then(callback);
client.listDataSources({parent: formattedParent}, options).then(callback);

client.listDataSourcesStream({parent: formattedParent}).on('data', element => {

The BigQuery Data Transfer Service Node.js Client API Reference documentation also contains samples.


This library follows Semantic Versioning .

This library is considered to be in alpha . This means it is still a work-in-progress and under active development. Any release is subject to backwards-incompatible changes at any time.

More Information: Google Cloud Platform Launch Stages


Contributions welcome! See the Contributing Guide .


Apache Version 2.0