
## Preflight checks for Google BigQuery

URL: https://docs.atlan.com/apps/connectors/data-warehouses/google-bigquery/references/preflight-checks-for-google-bigquery

> Each request requires an OAuth 2.0 access token generated via the [service account key](https://cloud.google.com/docs/authentication#service-accounts).

Before [running the Google BigQuery crawler](https://docs.atlan.com/llms/connectors/google-bigquery/crawl-google-bigquery/llms.txt), you can run [preflight checks](https://docs.atlan.com/llms/catalog/connector-capabilities/what-are-preflight-checks/llms.txt) to perform the necessary technical validations. 

:::info **Did you know?** 
 All Google BigQuery resources expose the `testIamPermissions()` method, which is used for permission testing in Atlan through REST API.

:::

The following preflight checks will be completed:

## Authorization

Each request requires an OAuth 2.0 access token generated via the [service account key](https://cloud.google.com/docs/authentication#service-accounts).

## Assets

### Metadata crawling permission

✅ `Check successful`

❌ `Check failed. Not all permission granted. Missing permissions:`

### Query and review permission

✅ `Check successful`

❌ `Check failed. Not all permission granted. Missing permissions:`

## Miner

:::info **Did you know?** 
 Once you have crawled assets from Google BigQuery, you can [mine query history](https://docs.atlan.com/llms/connectors/google-bigquery/mine-google-bigquery/llms.txt).

:::

### Miner policy

#### Query history

✅ `Check successful`

❌ `Check failed. Not all permission granted. Missing permissions:`

#### S3

✅ `Check successful` if the bucket, region, and prefix combination is valid and the S3 credential passed is accessible.

❌ `Check failed with error code - `

For example: `Miner S3 credentials: failed with error code: NoSuchBucket`

### Crawler workflow

This checks if the selected [connection](https://docs.atlan.com/llms/connectors/google-bigquery/crawl-google-bigquery/llms.txt) exists in Atlan.

✅ `Check successful`

❌ `Check failed. Connection does not exist.` / `Check failed. Workflow artifacts are missing. Please run the crawler workflow again.`

## Data quality

If you plan to use [Data Quality Studio](https://docs.atlan.com/llms/governance/data-quality/bigquery/llms.txt) with BigQuery, the service account needs additional IAM roles beyond the standard crawl permissions.

| IAM role | Purpose |
|---|---|
| `roles/bigquery.jobUser` | Lets Atlan submit BigQuery jobs that execute Data Quality rules |
| `roles/bigquery.dataEditor` | Lets Atlan read and write data in BigQuery tables during Data Quality execution |

:::info
These roles are required **only** for Data Quality operations. If you're setting up metadata crawling only, you don't need to grant `roles/bigquery.jobUser` or `roles/bigquery.dataEditor`. See the permissions sections in the earlier sections for the roles required for crawling.
:::

For the full Data Quality setup guide—including GCP project configuration, service account creation, dataset setup, and granular permission options—see [Set up BigQuery for Data Quality](https://docs.atlan.com/llms/governance/data-quality/set-up-bigquery/llms.txt).

---
