# BigQuery Data Transfer Service API . projects . transferConfigs

## Instance Methods

Returns the runs Resource.

Creates a new data transfer configuration.

Deletes a data transfer configuration,

Returns information about a data transfer config.

Returns information about all data transfers in the project.

Retrieves the next page of results.

Updates a data transfer configuration.

Creates transfer runs for a time range [range_start_time, range_end_time].

### Method Details

`create(parent, body, authorizationCode=None, x__xgafv=None)`

    Creates a new data transfer configuration.

    Args:
      parent: string, The BigQuery project id where the transfer configuration should be created. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # Represents a data transfer configuration. A transfer configuration
        # contains all metadata needed to perform a data transfer. For example,
        # `destination_dataset_id` specifies where data should be stored.
        # When a new transfer configuration is created, the specified
        # `destination_dataset_id` is created when needed and shared with the
        # appropriate data source service account.
      "status": "A String", # Status of the most recently updated transfer run.
          # @OutputOnly
      "dataRefreshWindowDays": 42, # The number of days to look back to automatically refresh the data.
          # For example, if `data_refresh_window_days = 10`, then every day
          # BigQuery reingests data for [today-10, today-1], rather than ingesting data
          # for just [today-1].
          # Only valid if the data source supports the feature. Set the value to  0
          # to use the default value.
      "updateTime": "A String", # Data transfer modification time. Ignored by server on input.
          # @OutputOnly
      "destinationDatasetId": "A String", # The BigQuery target dataset id.
      "displayName": "A String", # User specified display name for the data transfer.
      "name": "A String", # The resource name of the transfer run.
          # Transfer run names have the form
          # `projects/{project_id}/transferConfigs/{config_id}`.
          # Where `config_id` is usually a uuid, even though it is not
          # guaranteed or required. The name is ignored when creating a transfer run.
      "schedule": "A String", # Data transfer schedule in GROC format.
          # If the data source does not support a custom schedule, this should be
          # empty. If it is empty, the default value for the data source will be
          # used.
          # The specified times are in UTC.
          # Examples of valid GROC include:
          # `1st,3rd monday of month 15:30`,
          # `every wed,fri of jan,jun 13:15`, and
          # `first sunday of quarter 00:00`.
      "userId": "A String", # GaiaID of the user on whose behalf transfer is done. Applicable only
          # to data sources that do not support service accounts. When set to 0,
          # the data source service account credentials are used.
          # @OutputOnly
      "disabled": True or False, # Is this config disabled. When set to true, no runs are scheduled
          # for a given transfer.
      "dataSourceId": "A String", # Data source id. Cannot be changed once data transfer is created.
      "nextRunTime": "A String", # Next time when data transfer will run. Output only. Applicable
          # only for batch data transfers.
          # @OutputOnly
      "params": { # Data transfer specific parameters.
        "a_key": "", # Properties of the object.
      },
    }

      authorizationCode: string, Optional OAuth2 authorization code to use with this transfer configuration.
    This is required if new credentials are needed, as indicated by
    `CheckValidCreds`.
    In order to obtain authorization_code, please make a
    request to
    https://www.gstatic.com/bigquerydatatransfer/oauthz/auth?client_id=&scope=&redirect_uri=

    * client_id should be OAuth client_id of BigQuery DTS API for the given
      data source returned by ListDataSources method.
    * data_source_scopes are the scopes returned by ListDataSources method.
    * redirect_uri is an optional parameter. If not specified, then
      authorization code is posted to the opener of authorization flow window.
      Otherwise it will be sent to the redirect uri. A special value of
      urn:ietf:wg:oauth:2.0:oob means that authorization code should be
      returned in the title bar of the browser, with the page text prompting
      the user to copy the code and paste it in the application.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Represents a data transfer configuration. A transfer configuration
          # contains all metadata needed to perform a data transfer. For example,
          # `destination_dataset_id` specifies where data should be stored.
          # When a new transfer configuration is created, the specified
          # `destination_dataset_id` is created when needed and shared with the
          # appropriate data source service account.
        "status": "A String", # Status of the most recently updated transfer run.
            # @OutputOnly
        "dataRefreshWindowDays": 42, # The number of days to look back to automatically refresh the data.
            # For example, if `data_refresh_window_days = 10`, then every day
            # BigQuery reingests data for [today-10, today-1], rather than ingesting data
            # for just [today-1].
            # Only valid if the data source supports the feature. Set the value to  0
            # to use the default value.
        "updateTime": "A String", # Data transfer modification time. Ignored by server on input.
            # @OutputOnly
        "destinationDatasetId": "A String", # The BigQuery target dataset id.
        "displayName": "A String", # User specified display name for the data transfer.
        "name": "A String", # The resource name of the transfer run.
            # Transfer run names have the form
            # `projects/{project_id}/transferConfigs/{config_id}`.
            # Where `config_id` is usually a uuid, even though it is not
            # guaranteed or required. The name is ignored when creating a transfer run.
        "schedule": "A String", # Data transfer schedule in GROC format.
            # If the data source does not support a custom schedule, this should be
            # empty. If it is empty, the default value for the data source will be
            # used.
            # The specified times are in UTC.
            # Examples of valid GROC include:
            # `1st,3rd monday of month 15:30`,
            # `every wed,fri of jan,jun 13:15`, and
            # `first sunday of quarter 00:00`.
        "userId": "A String", # GaiaID of the user on whose behalf transfer is done. Applicable only
            # to data sources that do not support service accounts. When set to 0,
            # the data source service account credentials are used.
            # @OutputOnly
        "disabled": True or False, # Is this config disabled. When set to true, no runs are scheduled
            # for a given transfer.
        "dataSourceId": "A String", # Data source id. Cannot be changed once data transfer is created.
        "nextRunTime": "A String", # Next time when data transfer will run. Output only. Applicable
            # only for batch data transfers.
            # @OutputOnly
        "params": { # Data transfer specific parameters.
          "a_key": "", # Properties of the object.
        },
      }

`delete(name, x__xgafv=None)`

    Deletes a data transfer configuration,
    including any associated transfer runs and logs.

    Args:
      name: string, The field will contain name of the resource requested, for example:
    `projects/{project_id}/transferConfigs/{config_id}` (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A generic empty message that you can re-use to avoid defining duplicated
          # empty messages in your APIs. A typical example is to use it as the request
          # or the response type of an API method. For instance:
          #
          #     service Foo {
          #       rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
          #     }
          #
          # The JSON representation for `Empty` is empty JSON object `{}`.
      }

`get(name, x__xgafv=None)`

    Returns information about a data transfer config.

    Args:
      name: string, The field will contain name of the resource requested, for example:
    `projects/{project_id}/transferConfigs/{config_id}` (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Represents a data transfer configuration. A transfer configuration
          # contains all metadata needed to perform a data transfer. For example,
          # `destination_dataset_id` specifies where data should be stored.
          # When a new transfer configuration is created, the specified
          # `destination_dataset_id` is created when needed and shared with the
          # appropriate data source service account.
        "status": "A String", # Status of the most recently updated transfer run.
            # @OutputOnly
        "dataRefreshWindowDays": 42, # The number of days to look back to automatically refresh the data.
            # For example, if `data_refresh_window_days = 10`, then every day
            # BigQuery reingests data for [today-10, today-1], rather than ingesting data
            # for just [today-1].
            # Only valid if the data source supports the feature. Set the value to  0
            # to use the default value.
        "updateTime": "A String", # Data transfer modification time. Ignored by server on input.
            # @OutputOnly
        "destinationDatasetId": "A String", # The BigQuery target dataset id.
        "displayName": "A String", # User specified display name for the data transfer.
        "name": "A String", # The resource name of the transfer run.
            # Transfer run names have the form
            # `projects/{project_id}/transferConfigs/{config_id}`.
            # Where `config_id` is usually a uuid, even though it is not
            # guaranteed or required. The name is ignored when creating a transfer run.
        "schedule": "A String", # Data transfer schedule in GROC format.
            # If the data source does not support a custom schedule, this should be
            # empty. If it is empty, the default value for the data source will be
            # used.
            # The specified times are in UTC.
            # Examples of valid GROC include:
            # `1st,3rd monday of month 15:30`,
            # `every wed,fri of jan,jun 13:15`, and
            # `first sunday of quarter 00:00`.
        "userId": "A String", # GaiaID of the user on whose behalf transfer is done. Applicable only
            # to data sources that do not support service accounts. When set to 0,
            # the data source service account credentials are used.
            # @OutputOnly
        "disabled": True or False, # Is this config disabled. When set to true, no runs are scheduled
            # for a given transfer.
        "dataSourceId": "A String", # Data source id. Cannot be changed once data transfer is created.
        "nextRunTime": "A String", # Next time when data transfer will run. Output only. Applicable
            # only for batch data transfers.
            # @OutputOnly
        "params": { # Data transfer specific parameters.
          "a_key": "", # Properties of the object.
        },
      }

`list(parent, pageSize=None, dataSourceIds=None, pageToken=None, x__xgafv=None)`

    Returns information about all data transfers in the project.

    Args:
      parent: string, The BigQuery project id for which data sources
    should be returned: `projects/{project_id}`. (required)
      pageSize: integer, Page size. The default page size is the maximum value of 1000 results.
      dataSourceIds: string, When specified, only configurations of requested data sources are returned. (repeated)
      pageToken: string, Pagination token, which can be used to request a specific page
    of `ListTransfersRequest` list results. For multiple-page
    results, `ListTransfersResponse` outputs
    a `next_page` token, which can be used as the
    `page_token` value to request the next page of list results.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # The returned list of pipelines in the project.
        "nextPageToken": "A String", # The next-pagination token. For multiple-page list results,
            # this token can be used as the
            # `ListTransferConfigsRequest.page_token`
            # to request the next page of list results.
            # @OutputOnly
        "transferConfigs": [ # The stored pipeline transfer configurations.
            # @OutputOnly
          { # Represents a data transfer configuration. A transfer configuration
              # contains all metadata needed to perform a data transfer. For example,
              # `destination_dataset_id` specifies where data should be stored.
              # When a new transfer configuration is created, the specified
              # `destination_dataset_id` is created when needed and shared with the
              # appropriate data source service account.
            "status": "A String", # Status of the most recently updated transfer run.
                # @OutputOnly
            "dataRefreshWindowDays": 42, # The number of days to look back to automatically refresh the data.
                # For example, if `data_refresh_window_days = 10`, then every day
                # BigQuery reingests data for [today-10, today-1], rather than ingesting data
                # for just [today-1].
                # Only valid if the data source supports the feature. Set the value to  0
                # to use the default value.
            "updateTime": "A String", # Data transfer modification time. Ignored by server on input.
                # @OutputOnly
            "destinationDatasetId": "A String", # The BigQuery target dataset id.
            "displayName": "A String", # User specified display name for the data transfer.
            "name": "A String", # The resource name of the transfer run.
                # Transfer run names have the form
                # `projects/{project_id}/transferConfigs/{config_id}`.
                # Where `config_id` is usually a uuid, even though it is not
                # guaranteed or required. The name is ignored when creating a transfer run.
            "schedule": "A String", # Data transfer schedule in GROC format.
                # If the data source does not support a custom schedule, this should be
                # empty. If it is empty, the default value for the data source will be
                # used.
                # The specified times are in UTC.
                # Examples of valid GROC include:
                # `1st,3rd monday of month 15:30`,
                # `every wed,fri of jan,jun 13:15`, and
                # `first sunday of quarter 00:00`.
            "userId": "A String", # GaiaID of the user on whose behalf transfer is done. Applicable only
                # to data sources that do not support service accounts. When set to 0,
                # the data source service account credentials are used.
                # @OutputOnly
            "disabled": True or False, # Is this config disabled. When set to true, no runs are scheduled
                # for a given transfer.
            "dataSourceId": "A String", # Data source id. Cannot be changed once data transfer is created.
            "nextRunTime": "A String", # Next time when data transfer will run. Output only. Applicable
                # only for batch data transfers.
                # @OutputOnly
            "params": { # Data transfer specific parameters.
              "a_key": "", # Properties of the object.
            },
          },
        ],
      }

`list_next(previous_request, previous_response)`

    Retrieves the next page of results.

    Args:
      previous_request: The request for the previous page. (required)
      previous_response: The response from the request for the previous page. (required)

    Returns:
      A request object that you can call 'execute()' on to request the next
      page. Returns None if there are no more items in the collection.

`patch(name, body, authorizationCode=None, updateMask=None, x__xgafv=None)`

    Updates a data transfer configuration.
    All fields must be set, even if they are not updated.

    Args:
      name: string, The resource name of the transfer run.
    Transfer run names have the form
    `projects/{project_id}/transferConfigs/{config_id}`.
    Where `config_id` is usually a uuid, even though it is not
    guaranteed or required. The name is ignored when creating a transfer run. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # Represents a data transfer configuration. A transfer configuration
        # contains all metadata needed to perform a data transfer. For example,
        # `destination_dataset_id` specifies where data should be stored.
        # When a new transfer configuration is created, the specified
        # `destination_dataset_id` is created when needed and shared with the
        # appropriate data source service account.
      "status": "A String", # Status of the most recently updated transfer run.
          # @OutputOnly
      "dataRefreshWindowDays": 42, # The number of days to look back to automatically refresh the data.
          # For example, if `data_refresh_window_days = 10`, then every day
          # BigQuery reingests data for [today-10, today-1], rather than ingesting data
          # for just [today-1].
          # Only valid if the data source supports the feature. Set the value to  0
          # to use the default value.
      "updateTime": "A String", # Data transfer modification time. Ignored by server on input.
          # @OutputOnly
      "destinationDatasetId": "A String", # The BigQuery target dataset id.
      "displayName": "A String", # User specified display name for the data transfer.
      "name": "A String", # The resource name of the transfer run.
          # Transfer run names have the form
          # `projects/{project_id}/transferConfigs/{config_id}`.
          # Where `config_id` is usually a uuid, even though it is not
          # guaranteed or required. The name is ignored when creating a transfer run.
      "schedule": "A String", # Data transfer schedule in GROC format.
          # If the data source does not support a custom schedule, this should be
          # empty. If it is empty, the default value for the data source will be
          # used.
          # The specified times are in UTC.
          # Examples of valid GROC include:
          # `1st,3rd monday of month 15:30`,
          # `every wed,fri of jan,jun 13:15`, and
          # `first sunday of quarter 00:00`.
      "userId": "A String", # GaiaID of the user on whose behalf transfer is done. Applicable only
          # to data sources that do not support service accounts. When set to 0,
          # the data source service account credentials are used.
          # @OutputOnly
      "disabled": True or False, # Is this config disabled. When set to true, no runs are scheduled
          # for a given transfer.
      "dataSourceId": "A String", # Data source id. Cannot be changed once data transfer is created.
      "nextRunTime": "A String", # Next time when data transfer will run. Output only. Applicable
          # only for batch data transfers.
          # @OutputOnly
      "params": { # Data transfer specific parameters.
        "a_key": "", # Properties of the object.
      },
    }

      authorizationCode: string, Optional OAuth2 authorization code to use with this transfer configuration.
    If it is provided, the transfer configuration will be associated with the
    gaia id of the authorizing user.
    In order to obtain authorization_code, please make a
    request to
    https://www.gstatic.com/bigquerydatatransfer/oauthz/auth?client_id=&scope=&redirect_uri=

    * client_id should be OAuth client_id of BigQuery DTS API for the given
      data source returned by ListDataSources method.
    * data_source_scopes are the scopes returned by ListDataSources method.
    * redirect_uri is an optional parameter. If not specified, then
      authorization code is posted to the opener of authorization flow window.
      Otherwise it will be sent to the redirect uri. A special value of
      urn:ietf:wg:oauth:2.0:oob means that authorization code should be
      returned in the title bar of the browser, with the page text prompting
      the user to copy the code and paste it in the application.
      updateMask: string, Required list of fields to be updated in this request.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Represents a data transfer configuration. A transfer configuration
          # contains all metadata needed to perform a data transfer. For example,
          # `destination_dataset_id` specifies where data should be stored.
          # When a new transfer configuration is created, the specified
          # `destination_dataset_id` is created when needed and shared with the
          # appropriate data source service account.
        "status": "A String", # Status of the most recently updated transfer run.
            # @OutputOnly
        "dataRefreshWindowDays": 42, # The number of days to look back to automatically refresh the data.
            # For example, if `data_refresh_window_days = 10`, then every day
            # BigQuery reingests data for [today-10, today-1], rather than ingesting data
            # for just [today-1].
            # Only valid if the data source supports the feature. Set the value to  0
            # to use the default value.
        "updateTime": "A String", # Data transfer modification time. Ignored by server on input.
            # @OutputOnly
        "destinationDatasetId": "A String", # The BigQuery target dataset id.
        "displayName": "A String", # User specified display name for the data transfer.
        "name": "A String", # The resource name of the transfer run.
            # Transfer run names have the form
            # `projects/{project_id}/transferConfigs/{config_id}`.
            # Where `config_id` is usually a uuid, even though it is not
            # guaranteed or required. The name is ignored when creating a transfer run.
        "schedule": "A String", # Data transfer schedule in GROC format.
            # If the data source does not support a custom schedule, this should be
            # empty. If it is empty, the default value for the data source will be
            # used.
            # The specified times are in UTC.
            # Examples of valid GROC include:
            # `1st,3rd monday of month 15:30`,
            # `every wed,fri of jan,jun 13:15`, and
            # `first sunday of quarter 00:00`.
        "userId": "A String", # GaiaID of the user on whose behalf transfer is done. Applicable only
            # to data sources that do not support service accounts. When set to 0,
            # the data source service account credentials are used.
            # @OutputOnly
        "disabled": True or False, # Is this config disabled. When set to true, no runs are scheduled
            # for a given transfer.
        "dataSourceId": "A String", # Data source id. Cannot be changed once data transfer is created.
        "nextRunTime": "A String", # Next time when data transfer will run. Output only. Applicable
            # only for batch data transfers.
            # @OutputOnly
        "params": { # Data transfer specific parameters.
          "a_key": "", # Properties of the object.
        },
      }

`scheduleRuns(parent, body, x__xgafv=None)`

    Creates transfer runs for a time range [range_start_time, range_end_time].
    For each date - or whatever granularity the data source supports - in the
    range, one transfer run is created.
    Note that runs are created per UTC time in the time range.

    Args:
      parent: string, Transfer configuration name in the form:
    `projects/{project_id}/transferConfigs/{config_id}`. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # A request to schedule transfer runs for a time range.
        "rangeStartTime": "A String", # Start time of the range of transfer runs.
        "rangeEndTime": "A String", # End time of the range of transfer runs.
      }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A response to schedule transfer runs for a time range.
        "createdRuns": [ # The transfer runs that were created.
          { # Represents a data transfer run.
            "status": "A String", # Data transfer run status. Ignored for input requests.
                # @OutputOnly
            "updateTime": "A String", # Last time the data transfer run status was updated.
                # @OutputOnly
            "destinationDatasetId": "A String", # The BigQuery target dataset id.
            "name": "A String", # The resource name of the transfer run.
                # Transfer run names have the form
                # `projects/{project_id}/transferConfigs/{config_id}/runs/{run_id}`.
                # The name is ignored when creating a transfer run.
            "schedule": "A String", # Describes the schedule of this transfer run if it was created as part of
                # a regular schedule. For batch transfer runs that are directly created,
                # this is empty.
                # NOTE: the system might choose to delay the schedule depending on the
                # current load, so `schedule_time` doesn't always matches this.
                # @OutputOnly
            "scheduleTime": "A String", # Minimum time after which a transfer run can be started.
            "userId": "A String", # The user id for this transfer run.
                # @OutputOnly
            "dataSourceId": "A String", # Data source id.
                # @OutputOnly
            "startTime": "A String", # Time when transfer run was started. Parameter ignored by server for input
                # requests.
                # @OutputOnly
            "params": { # Data transfer specific parameters.
              "a_key": "", # Properties of the object.
            },
            "runTime": "A String", # For batch transfer runs, specifies the date and time that
                # data should be ingested.
            "endTime": "A String", # Time when transfer run ended. Parameter ignored by server for input
                # requests.
                # @OutputOnly
          },
        ],
      }