BigQuery Data Transfer API

Schedule queries or transfer external data from SaaS applications to Google BigQuery on a regular basis.

Service: bigquerydatatransfer.googleapis.com

To call this service, we recommend that you use the Google-provided client libraries. If your application needs to use your own libraries to call this service, use the following information when you make the API requests.

Discovery document

A Discovery Document is a machine-readable specification for describing and consuming REST APIs. It is used to build client libraries, IDE plugins, and other tools that interact with Google APIs. One service may provide multiple discovery documents. This service provides the following discovery document:

Service endpoint

A service endpoint is a base URL that specifies the network address of an API service. One service might have multiple service endpoints. This service has the following service endpoint and all URIs below are relative to this service endpoint:

  • https://bigquerydatatransfer.googleapis.com

REST Resource: v1.projects

Methods
enrollDataSources POST /v1/{name=projects/*}:enrollDataSources
Enroll data sources in a user project.

REST Resource: v1.projects.dataSources

Methods
checkValidCreds POST /v1/{name=projects/*/dataSources/*}:checkValidCreds
Returns true if valid credentials exist for the given data source and requesting user.
get GET /v1/{name=projects/*/dataSources/*}
Retrieves a supported data source and returns its settings.
list GET /v1/{parent=projects/*}/dataSources
Lists supported data sources and returns their settings.

REST Resource: v1.projects.locations

Methods
enrollDataSources POST /v1/{name=projects/*/locations/*}:enrollDataSources
Enroll data sources in a user project.
get GET /v1/{name=projects/*/locations/*}
Gets information about a location.
list GET /v1/{name=projects/*}/locations
Lists information about the supported locations for this service.
unenrollDataSources POST /v1/{name=projects/*/locations/*}:unenrollDataSources
Unenroll data sources in a user project.

REST Resource: v1.projects.locations.dataSources

Methods
checkValidCreds POST /v1/{name=projects/*/locations/*/dataSources/*}:checkValidCreds
Returns true if valid credentials exist for the given data source and requesting user.
get GET /v1/{name=projects/*/locations/*/dataSources/*}
Retrieves a supported data source and returns its settings.
list GET /v1/{parent=projects/*/locations/*}/dataSources
Lists supported data sources and returns their settings.

REST Resource: v1.projects.locations.transferConfigs

Methods
create POST /v1/{parent=projects/*/locations/*}/transferConfigs
Creates a new data transfer configuration.
delete DELETE /v1/{name=projects/*/locations/*/transferConfigs/*}
Deletes a data transfer configuration, including any associated transfer runs and logs.
get GET /v1/{name=projects/*/locations/*/transferConfigs/*}
Returns information about a data transfer config.
list GET /v1/{parent=projects/*/locations/*}/transferConfigs
Returns information about all transfer configs owned by a project in the specified location.
patch PATCH /v1/{transferConfig.name=projects/*/locations/*/transferConfigs/*}
Updates a data transfer configuration.
scheduleRuns
(deprecated)
POST /v1/{parent=projects/*/locations/*/transferConfigs/*}:scheduleRuns
Creates transfer runs for a time range [start_time, end_time].
startManualRuns POST /v1/{parent=projects/*/locations/*/transferConfigs/*}:startManualRuns
Start manual transfer runs to be executed now with schedule_time equal to current time.

REST Resource: v1.projects.locations.transferConfigs.runs

Methods
delete DELETE /v1/{name=projects/*/locations/*/transferConfigs/*/runs/*}
Deletes the specified transfer run.
get GET /v1/{name=projects/*/locations/*/transferConfigs/*/runs/*}
Returns information about the particular transfer run.
list GET /v1/{parent=projects/*/locations/*/transferConfigs/*}/runs
Returns information about running and completed transfer runs.

REST Resource: v1.projects.locations.transferConfigs.runs.transferLogs

Methods
list GET /v1/{parent=projects/*/locations/*/transferConfigs/*/runs/*}/transferLogs
Returns log messages for the transfer run.

REST Resource: v1.projects.transferConfigs

Methods
create POST /v1/{parent=projects/*}/transferConfigs
Creates a new data transfer configuration.
delete DELETE /v1/{name=projects/*/transferConfigs/*}
Deletes a data transfer configuration, including any associated transfer runs and logs.
get GET /v1/{name=projects/*/transferConfigs/*}
Returns information about a data transfer config.
list GET /v1/{parent=projects/*}/transferConfigs
Returns information about all transfer configs owned by a project in the specified location.
patch PATCH /v1/{transferConfig.name=projects/*/transferConfigs/*}
Updates a data transfer configuration.
scheduleRuns
(deprecated)
POST /v1/{parent=projects/*/transferConfigs/*}:scheduleRuns
Creates transfer runs for a time range [start_time, end_time].
startManualRuns POST /v1/{parent=projects/*/transferConfigs/*}:startManualRuns
Start manual transfer runs to be executed now with schedule_time equal to current time.

REST Resource: v1.projects.transferConfigs.runs

Methods
delete DELETE /v1/{name=projects/*/transferConfigs/*/runs/*}
Deletes the specified transfer run.
get GET /v1/{name=projects/*/transferConfigs/*/runs/*}
Returns information about the particular transfer run.
list GET /v1/{parent=projects/*/transferConfigs/*}/runs
Returns information about running and completed transfer runs.

REST Resource: v1.projects.transferConfigs.runs.transferLogs

Methods
list GET /v1/{parent=projects/*/transferConfigs/*/runs/*}/transferLogs
Returns log messages for the transfer run.