# BigQuery Data Transfer API . projects . dataSources

## Instance Methods

Returns true if valid credentials exist for the given data source and

Retrieves a supported data source and returns its settings,

Lists supported data sources and returns their settings,

Retrieves the next page of results.

### Method Details

`checkValidCreds(name, body=None, x__xgafv=None)`

    Returns true if valid credentials exist for the given data source and
    requesting user.
    Some data sources doesn't support service account, so we need to talk to
    them on behalf of the end user. This API just checks whether we have OAuth
    token for the particular user, which is a pre-requisite before user can
    create a transfer config.

    Args:
      name: string, Required. The data source in the form:
    `projects/{project_id}/dataSources/{data_source_id}` or
    `projects/{project_id}/locations/{location_id}/dataSources/{data_source_id}`. (required)
      body: object, The request body.
        The object takes the form of:

    { # A request to determine whether the user has valid credentials. This method
          # is used to limit the number of OAuth popups in the user interface. The
          # user id is inferred from the API call context.
          # If the data source has the Google+ authorization type, this method
          # returns false, as it cannot be determined whether the credentials are
          # already valid merely based on the user id.
      }

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

    Returns:
      An object of the form:

        { # A response indicating whether the credentials exist and are valid.
        "hasValidCreds": True or False, # If set to `true`, the credentials exist and are valid.
      }

`get(name, x__xgafv=None)`

    Retrieves a supported data source and returns its settings,
    which can be used for UI rendering.

    Args:
      name: string, Required. The field will contain name of the resource requested, for example:
    `projects/{project_id}/dataSources/{data_source_id}` or
    `projects/{project_id}/locations/{location_id}/dataSources/{data_source_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 data source metadata. Metadata is sufficient to
          # render UI and request proper OAuth tokens.
        "dataRefreshType": "A String", # Specifies whether the data source supports automatic data refresh for the
            # past few days, and how it's supported.
            # For some data sources, data might not be complete until a few days later,
            # so it's useful to refresh data automatically.
        "parameters": [ # Data source parameters.
          { # Represents a data source parameter with validation rules, so that
              # parameters can be rendered in the UI. These parameters are given to us by
              # supported data sources, and include all needed information for rendering
              # and validation.
              # Thus, whoever uses this api can decide to generate either generic ui,
              # or custom data source specific forms.
            "allowedValues": [ # All possible values for the parameter.
              "A String",
            ],
            "minValue": 3.14, # For integer and double values specifies minimum allowed value.
            "validationHelpUrl": "A String", # URL to a help document to further explain the naming requirements.
            "validationRegex": "A String", # Regular expression which can be used for parameter validation.
            "paramId": "A String", # Parameter identifier.
            "required": True or False, # Is parameter required.
            "repeated": True or False, # Deprecated. This field has no effect.
            "displayName": "A String", # Parameter display name in the user interface.
            "validationDescription": "A String", # Description of the requirements for this field, in case the user input does
                # not fulfill the regex pattern or min/max values.
            "immutable": True or False, # Cannot be changed after initial creation.
            "deprecated": True or False, # If true, it should not be used in new transfers, and it should not be
                # visible to users.
            "fields": [ # Deprecated. This field has no effect.
              # Object with schema name: DataSourceParameter
            ],
            "maxValue": 3.14, # For integer and double values specifies maxminum allowed value.
            "type": "A String", # Parameter type.
            "recurse": True or False, # Deprecated. This field has no effect.
            "description": "A String", # Parameter description.
          },
        ],
        "helpUrl": "A String", # Url for the help document for this data source.
        "defaultSchedule": "A String", # Default data transfer schedule.
            # Examples of valid schedules include:
            # `1st,3rd monday of month 15:30`,
            # `every wed,fri of jan,jun 13:15`, and
            # `first sunday of quarter 00:00`.
        "supportsMultipleTransfers": True or False, # Deprecated. This field has no effect.
        "defaultDataRefreshWindowDays": 42, # Default data refresh window on days.
            # Only meaningful when `data_refresh_type` = `SLIDING_WINDOW`.
        "manualRunsDisabled": True or False, # Disables backfilling and manual run scheduling
            # for the data source.
        "transferType": "A String", # Deprecated. This field has no effect.
        "description": "A String", # User friendly data source description string.
        "dataSourceId": "A String", # Data source id.
        "scopes": [ # Api auth scopes for which refresh token needs to be obtained. These are
            # scopes needed by a data source to prepare data and ingest them into
            # BigQuery, e.g., https://www.googleapis.com/auth/bigquery
          "A String",
        ],
        "name": "A String", # Output only. Data source resource name.
        "minimumScheduleInterval": "A String", # The minimum interval for scheduler to schedule runs.
        "clientId": "A String", # Data source client id which should be used to receive refresh token.
        "authorizationType": "A String", # Indicates the type of authorization.
        "supportsCustomSchedule": True or False, # Specifies whether the data source supports a user defined schedule, or
            # operates on the default schedule.
            # When set to `true`, user can override default schedule.
        "displayName": "A String", # User friendly data source name.
        "updateDeadlineSeconds": 42, # The number of seconds to wait for an update from the data source
            # before the Data Transfer Service marks the transfer as FAILED.
      }

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

    Lists supported data sources and returns their settings,
    which can be used for UI rendering.

    Args:
      parent: string, Required. The BigQuery project id for which data sources should be returned.
    Must be in the form: `projects/{project_id}` or
    `projects/{project_id}/locations/{location_id} (required)
      pageSize: integer, Page size. The default page size is the maximum value of 1000 results.
      pageToken: string, Pagination token, which can be used to request a specific page
    of `ListDataSourcesRequest` list results. For multiple-page
    results, `ListDataSourcesResponse` 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:

        { # Returns list of supported data sources and their metadata.
        "dataSources": [ # List of supported data sources and their transfer settings.
          { # Represents data source metadata. Metadata is sufficient to
              # render UI and request proper OAuth tokens.
            "dataRefreshType": "A String", # Specifies whether the data source supports automatic data refresh for the
                # past few days, and how it's supported.
                # For some data sources, data might not be complete until a few days later,
                # so it's useful to refresh data automatically.
            "parameters": [ # Data source parameters.
              { # Represents a data source parameter with validation rules, so that
                  # parameters can be rendered in the UI. These parameters are given to us by
                  # supported data sources, and include all needed information for rendering
                  # and validation.
                  # Thus, whoever uses this api can decide to generate either generic ui,
                  # or custom data source specific forms.
                "allowedValues": [ # All possible values for the parameter.
                  "A String",
                ],
                "minValue": 3.14, # For integer and double values specifies minimum allowed value.
                "validationHelpUrl": "A String", # URL to a help document to further explain the naming requirements.
                "validationRegex": "A String", # Regular expression which can be used for parameter validation.
                "paramId": "A String", # Parameter identifier.
                "required": True or False, # Is parameter required.
                "repeated": True or False, # Deprecated. This field has no effect.
                "displayName": "A String", # Parameter display name in the user interface.
                "validationDescription": "A String", # Description of the requirements for this field, in case the user input does
                    # not fulfill the regex pattern or min/max values.
                "immutable": True or False, # Cannot be changed after initial creation.
                "deprecated": True or False, # If true, it should not be used in new transfers, and it should not be
                    # visible to users.
                "fields": [ # Deprecated. This field has no effect.
                  # Object with schema name: DataSourceParameter
                ],
                "maxValue": 3.14, # For integer and double values specifies maxminum allowed value.
                "type": "A String", # Parameter type.
                "recurse": True or False, # Deprecated. This field has no effect.
                "description": "A String", # Parameter description.
              },
            ],
            "helpUrl": "A String", # Url for the help document for this data source.
            "defaultSchedule": "A String", # Default data transfer schedule.
                # Examples of valid schedules include:
                # `1st,3rd monday of month 15:30`,
                # `every wed,fri of jan,jun 13:15`, and
                # `first sunday of quarter 00:00`.
            "supportsMultipleTransfers": True or False, # Deprecated. This field has no effect.
            "defaultDataRefreshWindowDays": 42, # Default data refresh window on days.
                # Only meaningful when `data_refresh_type` = `SLIDING_WINDOW`.
            "manualRunsDisabled": True or False, # Disables backfilling and manual run scheduling
                # for the data source.
            "transferType": "A String", # Deprecated. This field has no effect.
            "description": "A String", # User friendly data source description string.
            "dataSourceId": "A String", # Data source id.
            "scopes": [ # Api auth scopes for which refresh token needs to be obtained. These are
                # scopes needed by a data source to prepare data and ingest them into
                # BigQuery, e.g., https://www.googleapis.com/auth/bigquery
              "A String",
            ],
            "name": "A String", # Output only. Data source resource name.
            "minimumScheduleInterval": "A String", # The minimum interval for scheduler to schedule runs.
            "clientId": "A String", # Data source client id which should be used to receive refresh token.
            "authorizationType": "A String", # Indicates the type of authorization.
            "supportsCustomSchedule": True or False, # Specifies whether the data source supports a user defined schedule, or
                # operates on the default schedule.
                # When set to `true`, user can override default schedule.
            "displayName": "A String", # User friendly data source name.
            "updateDeadlineSeconds": 42, # The number of seconds to wait for an update from the data source
                # before the Data Transfer Service marks the transfer as FAILED.
          },
        ],
        "nextPageToken": "A String", # Output only. The next-pagination token. For multiple-page list results,
            # this token can be used as the
            # `ListDataSourcesRequest.page_token`
            # to request the next page of list results.
      }

`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.