Google Drive is a cloud-based file storage and synchronization service developed by Google that allows users to save files on their servers, making them accessible from any device. It facilitates real-time collaboration and sharing, and integrates with the Google Docs Editors suite (Docs, Sheets, Slides) for creating and editing documents online.
Authorize Connection to Google Drive
To authorize this service, use OAuth 2.0 to share specific data with Dataddo while keeping usernames, passwords, and other information private.
- On the Authorizers page, click on Authorize New Service and select your service.
- Follow the on-screen prompts to grant Dataddo the necessary permissions to access and retrieve your data.
- [Optional] Once your authorizer is created, click on it to change the label for easier identification.
Ensure that the account you're granting access to holds at least admin-level permissions. If necessary, assign a team member with the required permissions with the authorizer role to authenticate the service for you.
For more information, see our article on authorizers.
Connect a New Google Drive Destination
- On the Destinations page, click on the Create Destination button and select the destination from the list.
- Select your authorizer from the drop-down menu.
- For non-business accounts, provide your Google Drive ID. For guide on how to retriveve your Drive ID, see Non-Business Account: Drive ID.
- [Optional] Path: Select your directory, folder on input the name manually, e.g.
/Documents/. - Name your destination and click on Save.
Click on Add new Account in drop-down menu during authorizer selection and follow the on-screen prompts. You can also go to the Authorizers tab and click on Add New Service.
Non-Business Account: Drive ID
Unless you have a Business account, you will need to provide your Drive ID when creating your destination.
Use Google API Explorer
One of the methods to retrieve the Drive ID without writing code is by using the Google API Explorer. To obtain your Google Drive ID:
- Navigate to the
files.getpage of the Drive API section available on Google Workspace. - On the right, you will find the Page info section. Here, click Try it!
- The link will have prefilled necessary fields but make sure:
- fileId has
rootfilled in. - Google OAuth 2.0 permission scopes have at least the
.../auth/drivescope selected.
- fileId has
- Click Execute and select your Google account to authorize the request.
- From the response, copy the
idvalue. The response will look something like:
{
"kind": "drive#file",
"id": "a1b2c3d4f5g6h7",
"name": "My Drive",
//etc.
}
If the link above doesn't work:
- Navigate to Google Workspace.
- In the Google Workspace apps list in the left menu, click Google Drive.
- Scroll down to the Connect your service to Google Drive, find the Drive API card and click Try it out.
- In the left menu, click on
get. - On the right, you will find the Page info section. Here, click Try it!
- Fill in the following fields:
- fileId:
root - Google OAuth 2.0 permission scopes: At least the
.../auth/drivescope is selected.
- fileId:
- Click Execute and select your Google account.
- From the response, copy the
idvalue. Example response will be the same as above.
Use the Drive API
Alternatively, you can send a GET request to the Google Drive API's files.get endpoint, setting the file identifier to the root alias:
GET [https://www.googleapis.com/drive/v3/files/root](https://www.googleapis.com/drive/v3/files/root)
Ensure the request is authorized with a valid access token and the necessary Drive scope (e.g., https://www.googleapis.com/auth/drive).
Similarly to the example response above, the id will be in the JSON response body.
Create a Flow to Google Drive
Related Articles
- Data Backfilling to Storages
- Write Modes
- Implementation of Batch Ingestion to Data Warehouses
- Network Access Control List (ACL) Configuration
- SSH Tunnelling
- Data Transformations
- Data Quality Firewall
Supported File Formats
As a source, the connector reads one file per data source, in any of these formats:
| Format | Notes |
|---|---|
| CSV | Set the CSV Delimiter, whether the file has a Header row, an optional Comment character (lines starting with it are skipped), and Lazy Quotes for files with imperfect quoting. |
| JSON | An array of objects, one object per row. |
| XML | Repeated elements become rows. |
| XLSX | Select the Sheet to read, an optional cell Range, and whether the sheet has a header row. |
| Parquet | Columnar files exported from data platforms. |
Files can be plain or GZIP-compressed; set File compression accordingly.
Selecting the File
When you create the source, point it at the file:
- Drive - the Google Drive to read from (see the Drive ID guide above for non-business accounts).
- Path - the directory that holds the file.
- File name - the name of the file to read.
The path and file name support dynamic date placeholders, so one source can follow files that are named by date. {{today}} and {{yesterday}} are replaced at run time; add a date format after | (the default is Ymd):
| File name mask | Resolves to |
|---|---|
report_{{today}}.csv |
report_ followed by the current date, e.g. report_20260709.csv |
export_{{yesterday\|Y-m-d}}.csv |
export_ followed by yesterday's date, e.g. export_2026-07-08.csv |
How Data Extraction Works
There is no date range for this connector. Every run downloads the file at the configured location (after resolving the date placeholders) and extracts its full current content.
The two most common setups:
- One file that is updated in place: schedule the source as often as the file changes and use the replace write mode in the flow, so the destination table mirrors the file.
- A new date-stamped file every day: use a
{{yesterday}}mask in the file name, schedule the source daily, and use the append write mode. Each run adds one day's file, which builds the history over time.
Transformation
Before the data reaches your destination, an initial transformation turns the parsed file into rows. Dataddo pre-fills it based on the selected file format and header settings. You can edit it in the Transformation editor when creating the source, for example to rename fields, unwind nested arrays, or drop columns.
How to Create a Google Drive Data Source
- In Dataddo, open Sources and click Create Source.
- Select Google Drive and choose the Authorizer you created above.
- Fill in the drive, path, and file name, using date placeholders if the file is named by date.
- Select the File Format and its options (delimiter and header for CSV, sheet and range for XLSX), and the File compression if the file is gzipped.
- (Optional) Adjust the pre-filled Transformation.
- Click Test Data to preview the result, then click Save.
Troubleshooting
Data Preview Unavailable
No data preview when you click on Test Data might be caused by an issue with your source configuration. The most common causes are:
- Date range: Try a smaller date range. You can load the rest of your data afterward via manual data load.
- Insufficient permissions: Please make sure your authorized account has at least admin-level permissions.
Related Articles
Now that you have successfully created a data source, see how you can connect your data to a dashboarding app or a data storage.
Sending Data to Dashboarding Apps
Sending Data to Data Storages
Other Resources