Google Drive Connector for SSIS

In this article you will learn how to quickly and efficiently integrate Google Drive data in SSIS without coding. We will use high-performance Google Drive Connector to easily connect to Google Drive and then access the data inside SSIS.

Read / write Google Drive data inside your app; perform many Google Drive operations without coding, just using easy to use high performance API Connector for Google Drive

Let's follow the steps below to see how we can accomplish that!

Download Documentation

Video Tutorial - Integrate Google Drive data in SSIS

This video covers following and more so watch carefully. After watching this video follow the steps described in this article.

  • How to download / install required driver for Google Drive integration in SSIS
  • How to configure connection for Google Drive
  • Features about API Source (Authentication / Query Language / Examples / Driver UI)
  • Using Google Drive Connection in SSIS

Prerequisites

Before we begin, make sure the following prerequisites are met:

  1. SSIS designer installed. Sometimes it is referred as BIDS or SSDT (download it from Microsoft).
  2. Basic knowledge of SSIS package development using Microsoft SQL Server Integration Services.
  3. SSIS PowerPack is installed (if you are new to SSIS PowerPack, then get started!).

Read data from Google Drive in SSIS (Export data)

In this section we will learn how to configure and use Google Drive Connector in API Source to extract data from Google Drive.

  1. Begin with opening Visual Studio and Create a New Project.

  2. Select Integration Service Project and in new project window set the appropriate name and location for project. And click OK.

  3. In the new SSIS project screen you will find the following:

    1. SSIS ToolBox on left side bar
    2. Solution Explorer and Property Window on right bar
    3. Control flow, data flow, event Handlers, Package Explorer in tab windows
    4. Connection Manager Window in the bottom

    SSIS Project Screen
    Note: If you don't see ZappySys SSIS PowerPack Task or Components in SSIS Toolbox, please refer to this help link.
  4. Now, Drag and Drop SSIS Data Flow Task from SSIS Toolbox. Double click on the Data Flow Task to see Data Flow designer.

    SSIS Data Flow Task - Drag and Drop
  5. From the SSIS toolbox drag and API Source (Predefined Templates) on the data flow designer surface, and double click on it to edit it:
    SSIS API Source (Predefined Templates) - Drag and Drop

  6. Select New Connection to create a new connection:
    API Source - New Connection

  7. Use a preinstalled Google Drive Connector from Popular Connector List or press Search Online radio button to download Google Drive Connector. Once downloaded simply use it in the configuration:

    Google Drive
    Google Drive Connector Selection

  8. Proceed with selecting the desired Authentication Type. Then select API Base URL (in most cases default one is the right one). Finally, fill in all the required parameters and set optional parameters if needed. You may press a link Steps to Configure which will help set certain parameters. More info is available in Authentication section.

    User accounts represent a developer, administrator, or any other person who interacts with Google APIs and services. User accounts are managed as Google Accounts, either with Google Workspace or Cloud Identity. They can also be user accounts that are managed by a third-party identity provider and federated with Workforce Identity Federation. [API reference]

    Steps how to get and use Google Drive credentials

    Follow these steps on how to create Client Credentials (User Account principle) to authenticate and access Google Drive API in SSIS package or ODBC data source:

    WARNING: If you are planning to automate processes, we recommend that you use a Service Account authentication method. In case, you still need to use User Account, then make sure you use a system/generic account (e.g. automation@my-company.com). When you use a personal account which is tied to a specific employee profile and that employee leaves the company, the token may become invalid and any automated processes using that token will start to fail.

    Step-1: Create project

    This step is optional, if you already have a project in Google Cloud and can use it. However, if you don't, proceed with these simple steps to create one:

    1. First of all, go to Google API Console.

    2. Then click Select a project button and then click NEW PROJECT button:

      Start creating a new project in Google Cloud
    3. Name your project and click CREATE button:

      Create a new project in Google Cloud
    4. Wait until the project is created:

      Wait until project is created in Google Cloud
    5. Done! Let's proceed to the next step.

    Step-2: Enable Google Drive API

    In this step we will enable Google Drive API:

    1. Select your project on the top bar:

      Select project in Google Cloud
    2. Then click the "hamburger" icon on the top left and access APIs & Services:

      Access APIs and services in Google Cloud
    3. Now let's enable several APIs by clicking ENABLE APIS AND SERVICES button:

      Enable API for project in Google Cloud
    4. In the search bar search for drive and then locate and select Google Drive API:

      Search for API in Google Cloud
    5. Enable Google Drive API:

      Enable Google Drive API
    6. Done! Let's proceed to the next step.

    Step-3: Create OAuth application

    1. First of all, click the "hamburger" icon on the top left and then hit VIEW ALL PRODUCTS:

      View all products in Google Cloud
    2. Then access Google Auth Platform to start creating an OAuth application:

      Open Google Auth Platform in Google Cloud
    3. Start by pressing GET STARTED button:

      Start creating an app in Google Cloud
    4. Next, continue by filling in App name and User support email fields:

      Fill app info in Google Cloud
    5. Choose Internal option, if it's enabled, otherwise select External:

      Choose app audience in Google Cloud
    6. Optional step if you used Internal option in the previous step. Nevertheless, if you had to use External option, then click ADD USERS to add a user:

      Add test user in Google Cloud app
    7. Then add your contact Email address:

      Enter app contact info in Google Cloud
    8. Finally, check the checkbox and click CREATE button:

      Create app in Google Cloud
    9. Done! Let's create Client Credentials in the next step.

    Step-4: Create Client Credentials

    1. In Google Auth Platform, select Clients menu item and click CREATE CLIENT button:

      Start creating app client in Google Cloud
    2. Choose Desktop app as Application type and name your credentials:

      Create OAuth app client in Google Cloud
    3. Continue by opening the created credentials:

      View app client credentials in Google Cloud
    4. Finally, copy Client ID and Client secret for the later step:

      Use client ID and secret to read Google REST API data
    5. Done! We have all the data needed for authentication, let's proceed to the last step!

    Step-5: Configure connection

    1. Now go to SSIS package or ODBC data source and use previously copied values in User Account authentication configuration:

      • In the ClientId field paste the Client ID value.
      • In the ClientSecret field paste the Client secret value.
    2. Press Generate Token button to generate Access and Refresh Tokens.

    3. Finally, click Test Connection to confirm the connection is working.

    4. Done! Now you are ready to use Google Drive Connector!

    Configuring authentication parameters
    Google Drive
    User Account [OAuth]
    https://www.googleapis.com/
    Required Parameters
    UseCustomApp Fill-in the parameter...
    Optional Parameters
    ClientId
    ClientSecret
    Scope https://www.googleapis.com/auth/drive
    RetryMode RetryWhenStatusCodeMatch
    RetryStatusCodeList 403|429
    RetryCountMax 5
    RetryMultiplyWaitTime True
    Redirect URL (Only for Web App)
    ZappySys OAuth Connection

    Service accounts are accounts that do not represent a human user. They provide a way to manage authentication and authorization when a human is not directly involved, such as when an application needs to access Google Cloud resources. Service accounts are managed by IAM. [API reference]

    Steps how to get and use Google Drive credentials

    Follow these steps on how to create Service Account to authenticate and access Google Drive API in SSIS package or ODBC data source:

    Step-1: Create project

    This step is optional, if you already have a project in Google Cloud and can use it. However, if you don't, proceed with these simple steps to create one:

    1. First of all, go to Google API Console.

    2. Then click Select a project button and then click NEW PROJECT button:

      Start creating a new project in Google Cloud
    3. Name your project and click CREATE button:

      Create a new project in Google Cloud
    4. Wait until the project is created:

      Wait until project is created in Google Cloud
    5. Done! Let's proceed to the next step.

    Step-2: Enable Google Drive API

    In this step we will enable Google Drive API:

    1. Select your project on the top bar:

      Select project in Google Cloud
    2. Then click the "hamburger" icon on the top left and access APIs & Services:

      Access APIs and services in Google Cloud
    3. Now let's enable several APIs by clicking ENABLE APIS AND SERVICES button:

      Enable API for project in Google Cloud
    4. In the search bar search for drive and then locate and select Google Drive API:

      Search for API in Google Cloud
    5. Enable Google Drive API:

      Enable Google Drive API
    6. Done! Let's proceed to the next step.

    Step-3: Create Service Account

    Use the steps below to create a Service Account in Google Cloud:

    1. First of all, go to IAM & Admin in Google Cloud console:

      Access IAM & Admin in Google Cloud
    2. Once you do that, click Service Accounts on the left side and click CREATE SERVICE ACCOUNT button:

      Start creating service account in Google Cloud
    3. Then name your service account and click CREATE AND CONTINUE button:

      Create service account in Google Cloud
    4. Continue by clicking Select a role dropdown and start granting service account Project Viewer roles:

      Start granting service account project roles in Google Cloud
    5. Find Project group and select Viewer role:

      Grant service account project viewer role
    6. Finish adding roles by clicking CONTINUE button:

      Finish granting service account project roles in Google Cloud
      You can always add or modify permissions later in IAM & Admin.
    7. Finally, in the last step, just click button DONE:

      Finish configuring service account in Google Cloud
    8. Done! We are ready to add a Key to this service account in the next step.

    Step-4: Add Key to Service Account

    We are ready to add a Key (JSON or P12 file) to the created Service Account:

    1. In Service Accounts open newly created service account:

      Open service account in Google Cloud
    2. Next, copy email address of your service account for the later step:

      Copy service account email address in Google Cloud
    3. Continue by selecting KEYS tab, then press ADD KEY dropdown, and click Create new key menu item:

      Start creating key for service account in Google Cloud
    4. Finally, select JSON (Engine v19+) or P12 option and hit CREATE button:

      Create JSON or P12 key for service account in Google Cloud
    5. Key file downloads into your machine. We have all the data needed for authentication, let's proceed to the last step!

    Step-5: Share Google Drive files and folders with Service Account

    Now it's time to grant Google Drive read/write permissions to the created service account:

    1. Login to https://drive.google.com with Google account credentials whose files/folders you want to share with the service account.
    2. Select the file or folder, right-click on it, click Share menu item, and then hit Share subitem:

      Share Google Drive file or folder with service account
    3. Share it with your service account:

      Share Google Drive folder with service account
    4. Grant it appropriate permissions, e.g. Viewer or Editor (for reading or writing):

      Grant service account Google Drive file permissions
    5. That's it! Let's proceed to the configuration!

    Step-6: Configure connection

    1. Now go to SSIS package or ODBC data source and configure these fields in Service Account authentication configuration:

      • In the Service Account Email field paste the service account Email address value you copied in the previous step.
      • In the Service Account Private Key Path (i.e. *.json or *.p12) field use downloaded certificate's file path.
    2. Done! Now you are ready to use Google Drive Connector!

    Configuring authentication parameters
    Google Drive
    Service Account [OAuth]
    https://www.googleapis.com/
    Required Parameters
    Service Account Email Fill-in the parameter...
    Service Account Private Key Path (i.e. *.json OR *.p12) Fill-in the parameter...
    Optional Parameters
    Scope https://www.googleapis.com/auth/drive
    RetryMode RetryWhenStatusCodeMatch
    RetryStatusCodeList 403|429
    RetryCountMax 5
    RetryMultiplyWaitTime True
    Impersonate As (Google account email address)
    ZappySys OAuth Connection

  9. Select the desired endpoint, change/pass the properties values, and click on Preview Data button to make the API call.

    API Source - Google Drive
    Read / write Google Drive data inside your app; perform many Google Drive operations without coding, just using easy to use high performance API Connector for Google Drive
    API Source - Select Endpoint

  10. That's it! We are done! Just in a few clicks we configured the call to Google Drive using Google Drive Connector.

    You can load the source data into your desired destination using the Upsert Destination, which supports SQL Server, PostgreSQL, and Amazon Redshift. We also offer other destinations such as CSV, Excel, Azure Table, Salesforce, and more. You can check out our SSIS PowerPack Tasks and components for more options. (*loaded in Trash Destination)

    Execute Package - Reading data from Google Drive and load into target

Write data to Google Drive using SSIS (Import data)

In this section we will learn how to configure and use Google Drive Connector in the API Destination to write data to Google Drive.

Video tutorial

This video covers following and more so watch carefully. After watching this video follow the steps described in this article.

  • How to download SSIS PowerPack for Google Drive integration in SSIS
  • How to configure connection for Google Drive
  • How to write or lookup data to Google Drive
  • Features about SSIS API Destination
  • Using Google Drive Connector in SSIS

Step-by-step instructions

In upper section we learned how to read data, now in this section we will learn how to configure Google Drive in the API Source to POST data to the Google Drive.

  1. Read the data from the source, being any desired source component. In example we will use ZappySys Dummy Data Source component.

  2. From the SSIS Toolbox drag and drop API Destination (Predefined Templates) on the Data Flow Designer surface and connect source component with it, and double click to edit it.
    SSIS API Destination (Predefined Templates) - Drag and Drop

  3. Select New Connection to create a new connection:

    API Destination - Google Drive
    Read / write Google Drive data inside your app; perform many Google Drive operations without coding, just using easy to use high performance API Connector for Google Drive
    API Destination - New Connection

  4. Use a preinstalled Google Drive Connector from Popular Connector List or press Search Online radio button to download Google Drive Connector. Once downloaded simply use it in the configuration:

    Google Drive
    Google Drive Connector Selection

  5. Proceed with selecting the desired Authentication Type. Then select API Base URL (in most cases default one is the right one). Finally, fill in all the required parameters and set optional parameters if needed. You may press a link Steps to Configure which will help set certain parameters. More info is available in Authentication section.

    User accounts represent a developer, administrator, or any other person who interacts with Google APIs and services. User accounts are managed as Google Accounts, either with Google Workspace or Cloud Identity. They can also be user accounts that are managed by a third-party identity provider and federated with Workforce Identity Federation. [API reference]

    Steps how to get and use Google Drive credentials

    Follow these steps on how to create Client Credentials (User Account principle) to authenticate and access Google Drive API in SSIS package or ODBC data source:

    WARNING: If you are planning to automate processes, we recommend that you use a Service Account authentication method. In case, you still need to use User Account, then make sure you use a system/generic account (e.g. automation@my-company.com). When you use a personal account which is tied to a specific employee profile and that employee leaves the company, the token may become invalid and any automated processes using that token will start to fail.

    Step-1: Create project

    This step is optional, if you already have a project in Google Cloud and can use it. However, if you don't, proceed with these simple steps to create one:

    1. First of all, go to Google API Console.

    2. Then click Select a project button and then click NEW PROJECT button:

      Start creating a new project in Google Cloud
    3. Name your project and click CREATE button:

      Create a new project in Google Cloud
    4. Wait until the project is created:

      Wait until project is created in Google Cloud
    5. Done! Let's proceed to the next step.

    Step-2: Enable Google Drive API

    In this step we will enable Google Drive API:

    1. Select your project on the top bar:

      Select project in Google Cloud
    2. Then click the "hamburger" icon on the top left and access APIs & Services:

      Access APIs and services in Google Cloud
    3. Now let's enable several APIs by clicking ENABLE APIS AND SERVICES button:

      Enable API for project in Google Cloud
    4. In the search bar search for drive and then locate and select Google Drive API:

      Search for API in Google Cloud
    5. Enable Google Drive API:

      Enable Google Drive API
    6. Done! Let's proceed to the next step.

    Step-3: Create OAuth application

    1. First of all, click the "hamburger" icon on the top left and then hit VIEW ALL PRODUCTS:

      View all products in Google Cloud
    2. Then access Google Auth Platform to start creating an OAuth application:

      Open Google Auth Platform in Google Cloud
    3. Start by pressing GET STARTED button:

      Start creating an app in Google Cloud
    4. Next, continue by filling in App name and User support email fields:

      Fill app info in Google Cloud
    5. Choose Internal option, if it's enabled, otherwise select External:

      Choose app audience in Google Cloud
    6. Optional step if you used Internal option in the previous step. Nevertheless, if you had to use External option, then click ADD USERS to add a user:

      Add test user in Google Cloud app
    7. Then add your contact Email address:

      Enter app contact info in Google Cloud
    8. Finally, check the checkbox and click CREATE button:

      Create app in Google Cloud
    9. Done! Let's create Client Credentials in the next step.

    Step-4: Create Client Credentials

    1. In Google Auth Platform, select Clients menu item and click CREATE CLIENT button:

      Start creating app client in Google Cloud
    2. Choose Desktop app as Application type and name your credentials:

      Create OAuth app client in Google Cloud
    3. Continue by opening the created credentials:

      View app client credentials in Google Cloud
    4. Finally, copy Client ID and Client secret for the later step:

      Use client ID and secret to read Google REST API data
    5. Done! We have all the data needed for authentication, let's proceed to the last step!

    Step-5: Configure connection

    1. Now go to SSIS package or ODBC data source and use previously copied values in User Account authentication configuration:

      • In the ClientId field paste the Client ID value.
      • In the ClientSecret field paste the Client secret value.
    2. Press Generate Token button to generate Access and Refresh Tokens.

    3. Finally, click Test Connection to confirm the connection is working.

    4. Done! Now you are ready to use Google Drive Connector!

    Configuring authentication parameters
    Google Drive
    User Account [OAuth]
    https://www.googleapis.com/
    Required Parameters
    UseCustomApp Fill-in the parameter...
    Optional Parameters
    ClientId
    ClientSecret
    Scope https://www.googleapis.com/auth/drive
    RetryMode RetryWhenStatusCodeMatch
    RetryStatusCodeList 403|429
    RetryCountMax 5
    RetryMultiplyWaitTime True
    Redirect URL (Only for Web App)
    ZappySys OAuth Connection

    Service accounts are accounts that do not represent a human user. They provide a way to manage authentication and authorization when a human is not directly involved, such as when an application needs to access Google Cloud resources. Service accounts are managed by IAM. [API reference]

    Steps how to get and use Google Drive credentials

    Follow these steps on how to create Service Account to authenticate and access Google Drive API in SSIS package or ODBC data source:

    Step-1: Create project

    This step is optional, if you already have a project in Google Cloud and can use it. However, if you don't, proceed with these simple steps to create one:

    1. First of all, go to Google API Console.

    2. Then click Select a project button and then click NEW PROJECT button:

      Start creating a new project in Google Cloud
    3. Name your project and click CREATE button:

      Create a new project in Google Cloud
    4. Wait until the project is created:

      Wait until project is created in Google Cloud
    5. Done! Let's proceed to the next step.

    Step-2: Enable Google Drive API

    In this step we will enable Google Drive API:

    1. Select your project on the top bar:

      Select project in Google Cloud
    2. Then click the "hamburger" icon on the top left and access APIs & Services:

      Access APIs and services in Google Cloud
    3. Now let's enable several APIs by clicking ENABLE APIS AND SERVICES button:

      Enable API for project in Google Cloud
    4. In the search bar search for drive and then locate and select Google Drive API:

      Search for API in Google Cloud
    5. Enable Google Drive API:

      Enable Google Drive API
    6. Done! Let's proceed to the next step.

    Step-3: Create Service Account

    Use the steps below to create a Service Account in Google Cloud:

    1. First of all, go to IAM & Admin in Google Cloud console:

      Access IAM & Admin in Google Cloud
    2. Once you do that, click Service Accounts on the left side and click CREATE SERVICE ACCOUNT button:

      Start creating service account in Google Cloud
    3. Then name your service account and click CREATE AND CONTINUE button:

      Create service account in Google Cloud
    4. Continue by clicking Select a role dropdown and start granting service account Project Viewer roles:

      Start granting service account project roles in Google Cloud
    5. Find Project group and select Viewer role:

      Grant service account project viewer role
    6. Finish adding roles by clicking CONTINUE button:

      Finish granting service account project roles in Google Cloud
      You can always add or modify permissions later in IAM & Admin.
    7. Finally, in the last step, just click button DONE:

      Finish configuring service account in Google Cloud
    8. Done! We are ready to add a Key to this service account in the next step.

    Step-4: Add Key to Service Account

    We are ready to add a Key (JSON or P12 file) to the created Service Account:

    1. In Service Accounts open newly created service account:

      Open service account in Google Cloud
    2. Next, copy email address of your service account for the later step:

      Copy service account email address in Google Cloud
    3. Continue by selecting KEYS tab, then press ADD KEY dropdown, and click Create new key menu item:

      Start creating key for service account in Google Cloud
    4. Finally, select JSON (Engine v19+) or P12 option and hit CREATE button:

      Create JSON or P12 key for service account in Google Cloud
    5. Key file downloads into your machine. We have all the data needed for authentication, let's proceed to the last step!

    Step-5: Share Google Drive files and folders with Service Account

    Now it's time to grant Google Drive read/write permissions to the created service account:

    1. Login to https://drive.google.com with Google account credentials whose files/folders you want to share with the service account.
    2. Select the file or folder, right-click on it, click Share menu item, and then hit Share subitem:

      Share Google Drive file or folder with service account
    3. Share it with your service account:

      Share Google Drive folder with service account
    4. Grant it appropriate permissions, e.g. Viewer or Editor (for reading or writing):

      Grant service account Google Drive file permissions
    5. That's it! Let's proceed to the configuration!

    Step-6: Configure connection

    1. Now go to SSIS package or ODBC data source and configure these fields in Service Account authentication configuration:

      • In the Service Account Email field paste the service account Email address value you copied in the previous step.
      • In the Service Account Private Key Path (i.e. *.json or *.p12) field use downloaded certificate's file path.
    2. Done! Now you are ready to use Google Drive Connector!

    Configuring authentication parameters
    Google Drive
    Service Account [OAuth]
    https://www.googleapis.com/
    Required Parameters
    Service Account Email Fill-in the parameter...
    Service Account Private Key Path (i.e. *.json OR *.p12) Fill-in the parameter...
    Optional Parameters
    Scope https://www.googleapis.com/auth/drive
    RetryMode RetryWhenStatusCodeMatch
    RetryStatusCodeList 403|429
    RetryCountMax 5
    RetryMultiplyWaitTime True
    Impersonate As (Google account email address)
    ZappySys OAuth Connection

  6. Select the desired endpoint, change/pass the properties values, and go to the Mappings tab to map the columns.

    API Destination - Google Drive
    Read / write Google Drive data inside your app; perform many Google Drive operations without coding, just using easy to use high performance API Connector for Google Drive
    API Destination - Select Endpoint

  7. Finally, map the desired columns:

    API Destination - Google Drive
    Read / write Google Drive data inside your app; perform many Google Drive operations without coding, just using easy to use high performance API Connector for Google Drive
    API Destination - Columns Mapping

  8. That's it; we successfully configured the POST API Call. In a few clicks we configured the Google Drive API call using ZappySys Google Drive Connector

    Execute Package - Reading data from API Source and load into target

Load Google Drive data into SQL Server using Upsert Destination (Insert or Update)

Once you configured the data source, you can load Google Drive data into SQL Server using Upsert Destination.

Upsert Destination can merge or synchronize source data with the target table. It supports Microsoft SQL Server, PostgreSQL, and Redshift databases as targets. Upsert Destination also supports very fast bulk upsert operation along with bulk delete.

Upsert operation - a database operation which performs INSERT or UPDATE SQL commands based on record's existence condition in the target table. It inserts records that don't have matching records in the target table or updates them, if they do, by matching them by key columns.

Upsert Destination supports INSERT, UPDATE, and DELETE operations, so it is similar to SQL Server's MERGE command, except it can be used directly in SSIS package.

  1. From the SSIS Toolbox drag-and-drop Upsert Destination component onto the Data Flow designer background.

  2. Connect your SSIS source component to Upsert Destination.

  3. Double-click on Upsert Destination component to open configuration window.

  4. Start by selecting the Action from the list.

  5. Next, select the desired target connection or create one by clicking <New [provider] Connection> menu item from the Target Connection dropdown.

  6. Then select a table from the Target Table list or click New button to create a new table based on the source columns.

  7. Continue by checking Insert and Update options according to your scenario (e.g. if Update option is unchecked, no updates will be made).

  8. Finally, click Map All button to map all columns and then select the Key columns to match the columns on:

    Configure SSIS Upsert Destination component to merge data with SQL Server, PostgreSQL, or Redshift table
  9. Click OK to save the configuration.

  10. Run the package and Google Drive data will be merged with the target table in SQL Server, PostgreSQL, or Redshift:

    Execute Package - Reading data from API Source and load into target
  11. Done!

Deploy and schedule SSIS package

After you are done creating SSIS package, most likely, you want to deploy it to SQL Server Catalog and run it periodically. Just follow the instructions in this article:

Running SSIS package in Azure Data Factory (ADF)

To use SSIS PowerPack in ADF, you must first prepare Azure-SSIS Integration Runtime. Follow this link for detailed instructions:

Advanced topics

Actions supported by Google Drive Connector

Google Drive Connector support following actions for REST API integration. If some actions are not listed below then you can easily edit Connector file and enhance out of the box functionality.
 Get my drive info
Gets my drive information    [ Read more... ]
 Lists shared drives
Lists the user's shared drives (i.e. formally known as team drive) with optional search criteria    [ Read more... ]
 List files (Recursive)
List files / folders with search criteria    [ Read more... ]
Parameter Description
Search Criteria Data filter (e.g. somecolumn -eq 'somevalue' ) , User can select multiple filter criteria using 'AND','OR' operator , Note*:- please refer the link for more filter criteria : https://zappysys.com/links?url=https://developers.google.com/drive/api/guides/search-files
Option Value
None
By name (exact name match) name='abc'
By name (contains sub string) name contains 'abc'
By name (does not contain) not name contains 'abc'
By text (search inside file) fullText contains 'abc'
List items from a folder 'your-folder-id' in parents and trashed=false
List deleted items from a folder 'your-folder-id' in parents and trashed=true
By Parent Folder Id 'your-folder-id' in parents
By created time createdTime > '2012-06-04T12:00:00'
By modified time modifiedTime > '2012-06-04T12:00:00'
Allow only shared files and folders sharedWithMe=true
Exclude trashed files trashed=false
Include files from trash mimeType!='application/vnd.google-apps.folder'
Exclude files from trash mimeType!='application/vnd.google-apps.folder' and trashed!=true
Exclude Folders mimeType!='application/vnd.google-apps.folder'
Exclude App Script mimeType!='application/vnd.google-apps.script'
Search for spreadsheet mimeType = 'application/vnd.google-apps.spreadsheet'
Search for multiple files type mimeType contains 'application/vnd.google-apps.spreadsheet' OR mimeType contains 'application/vnd.google-apps.document' OR mimeType contains 'application/vnd.google-apps.presentation' OR mimeType contains 'application/vnd.google-apps.drawing'
 List files / folders from a parent folder (Recursive)
List files or folders under a specified parent folder    [ Read more... ]
Parameter Description
Extra Query (must start with ' and ' --OR-- ' or ') Data filter (e.g. somecolumn -eq 'somevalue' ) , User can select multiple filter criteria using 'AND','OR' operator , Note*:- please refer the link for more filter criteria : https://zappysys.com/links?url=https://developers.google.com/drive/api/guides/search-files
Option Value
None
By name (exact name match) and name='abc'
By name (contains sub string) and name contains 'abc'
By name (does not contain) and not name contains 'abc'
By text (search inside file) and fullText contains 'abc'
By created time and createdTime > '2012-06-04T12:00:00'
By modified time and modifiedTime > '2012-06-04T12:00:00'
Allow only shared files and folders and sharedWithMe=true
Exclude App Script and mimeType!='application/vnd.google-apps.script'
Search for spreadsheet and mimeType = 'application/vnd.google-apps.spreadsheet'
Search for multiple files type and mimeType contains 'application/vnd.google-apps.spreadsheet' OR mimeType contains 'application/vnd.google-apps.document' OR mimeType contains 'application/vnd.google-apps.presentation' OR mimeType contains 'application/vnd.google-apps.drawing'
Search under Folder Id (Keep Blank for all folders) Folder Id for which you like to list all files
Include files from trash
Option Value
false false
true true
Search Item type (i.e. files or folders)
Option Value
all all
files files
folders folders
files_native files_native
files_exclude_native files_exclude_native
sheets sheets
documents documents
 Search items (i.e. files / folders)
Lists items (i.e. files / folders) with search criteria    [ Read more... ]
 List folders
Lists folders    [ Read more... ]
Parameter Description
Search Criteria Data filter (e.g. somecolumn -eq 'somevalue' ) , User can select multiple filter criteria using 'AND','OR' operator , Note*:- please refer the link for more filter criteria : https://zappysys.com/links?url=https://developers.google.com/drive/api/guides/search-files
Option Value
None
By name (exact name match) name='abc'
By name (contains sub string) name contains 'abc'
By name (does not contain) not name contains 'abc'
By text (search inside file) fullText contains 'abc'
By created time createdTime > '2012-06-04T12:00:00'
Include folders from trash mimeType='application/vnd.google-apps.folder'
Exclude folders from trash mimeType='application/vnd.google-apps.folder' and trashed!=true
By modified time modifiedTime > '2012-06-04T12:00:00'
Allow only shared files and folders sharedWithMe=true
Exclude trashed files trashed=false
Exclude Folders mimeType!='application/vnd.google-apps.folder'
Exclude App Script mimeType!='application/vnd.google-apps.script'
Search for spreadsheet mimeType = 'application/vnd.google-apps.spreadsheet'
Search for multiple files type mimeType contains 'application/vnd.google-apps.spreadsheet' OR mimeType contains 'application/vnd.google-apps.document' OR mimeType contains 'application/vnd.google-apps.presentation' OR mimeType contains 'application/vnd.google-apps.drawing'
 List deleted files / folders
Lists only deleted files / folders from trash    [ Read more... ]
Parameter Description
Search Criteria
 Get file info
Gets information of a file    [ Read more... ]
Parameter Description
Id Id of a file you want to see information for
 Download a file
Downloads a file    [ Read more... ]
Parameter Description
File Id Id of a file you want to download
 Export a file
Export a document editor files such document, Spreadsheets, Drawings, Presentations, Apps Scripts to common file formats as defined in this link https://developers.google.com/drive/api/guides/ref-export-formats    [ Read more... ]
Parameter Description
File Id Id of a file you want to export and file must be editor type (e.g. document, Spreadsheets, Drawings, Presentations, Apps Scripts)
Export As (Mime Type) The MIME type of the format requested for this export.
Option Value
None
Export to PDF application/pdf
Export to HTML text/html
Export to HTML (zipped) application/zip
Export to Plain text text/plain
Export to Rich text application/rtf
Export to Open Office doc application/vnd.oasis.opendocument.text
Export to MS Word document application/vnd.openxmlformats-officedocument.wordprocessingml.document
Export to EPUB application/epub+zip
Export to MS Excel application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
Export to Open Office sheet application/x-vnd.oasis.opendocument.spreadsheet
Export to (sheet only) text/tab-separated-values
Export to JPEG image/jpeg
Export to PNG image/png
Export to SVG image/svg+xml
Export to MS PowerPoint application/vnd.openxmlformats-officedocument.presentationml.presentation
Export to Open Office presentation application/vnd.oasis.opendocument.presentation
Export to JSON application/vnd.google-apps.script+json
fields fields
 Upload a file
Uploads a file. If file exits it does not overwrite. If you like to overwrite existing file then use [Replace file data] endpoint. It requires FileId you like to replace. Get file id by calling list_parent_items or list_files endpoint (Search for file name and get id). Google API does not allow to perform create or replace in one operation.    [ Read more... ]
Parameter Description
Keep Revision Forever Defines whether uploaded file has revisions
Option Value
true true
false false
Parent FolderId Id of a parent folder you want to upload the file in. Use value 'root' to place the file in the topmost level.
Shared DriveId By default file lists from MyDrive but if you like to search other Shared drive then set this parameter.
Drive Type Default search context is User's drive. Bodies of items (files/documents) to which the query applies. Supported bodies are 'user', 'domain', 'drive', and 'allDrives'. Prefer 'user' or 'drive' to 'allDrives' for efficiency. By default, corpora is set to 'user'. However, this can change depending on the filter set through the 'Query' parameter.
Option Value
My Drive user
Shared Drive drive
Supports all drives (e.g. My and Shared) Whether the requesting application supports both My Drives and shared drives.
Option Value
true true
false false
Target FileName A filename the file will have in Google Drive
Local FilePath Specify a disk file path
AddParents A comma-separated list of parent IDs to add
OcrLanguage A language hint for OCR processing during image import (ISO 639-1 code).
UseContentAsIndexableText Whether to use the uploaded content as indexable text.
 Upload a file (with overwrite action)
Uploads a file (if file with same name exists then overwrite else create a new file).    [ Read more... ]
Parameter Description
Keep Revision Forever Defines whether uploaded file has revisions
Option Value
true true
false false
Parent FolderId Id of a parent folder you want to upload the file in. Use value 'root' to place the file in the topmost level.
Shared DriveId By default file lists from MyDrive but if you like to search other Shared drive then set this parameter.
Drive Type Default search context is User's drive. Bodies of items (files/documents) to which the query applies. Supported bodies are 'user', 'domain', 'drive', and 'allDrives'. Prefer 'user' or 'drive' to 'allDrives' for efficiency. By default, corpora is set to 'user'. However, this can change depending on the filter set through the 'Query' parameter.
Option Value
My Drive user
Shared Drive drive
Supports all drives (e.g. My and Shared) Whether the requesting application supports both My Drives and shared drives.
Option Value
true true
false false
Target FileName A filename the file will have in Google Drive
Local FilePath Specify a disk file path
File Overwrite Mode
AddParents A comma-separated list of parent IDs to add
OcrLanguage A language hint for OCR processing during image import (ISO 639-1 code).
UseContentAsIndexableText Whether to use the uploaded content as indexable text.
 Create a folder
Creates a folder    [ Read more... ]
Parameter Description
Name A folder name the folder will have in Google Drive
Parent FolderId Id of a parent folder you want to create the folder in. Use value 'root' to create the folder in the topmost level.
 Delete an item
Deletes an item    [ Read more... ]
 Duplicate a file
Duplicates a file    [ Read more... ]
Parameter Description
File Id Id of a file you want to duplicate
 Replace file data (keep same file id)
Update file with new content / metadata (keep same file Id)    [ Read more... ]
Parameter Description
File Id Id of a file you want to update
DiskFilePath A disk file path you want to update file contents with
KeepRevisionForever Defines whether uploaded file has revisions
AddParents A comma-separated list of parent IDs to add
OcrLanguage A language hint for OCR processing during image import (ISO 639-1 code).
UseContentAsIndexableText Whether to use the uploaded content as indexable text.
 Update metadata in a file
Updates meta-data in a file    [ Read more... ]
Parameter Description
File Id Id of a file you want to update meta-data to
Keep Revision Forever Defines whether uploaded file has revisions
Option Value
True True
False False
AddParents A comma-separated list of parent IDs to add
OcrLanguage A language hint for OCR processing during image import (ISO 639-1 code).
UseContentAsIndexableText Whether to use the uploaded content as indexable text.
 Empty trash
Empties trash    [ Read more... ]
 Delete all items
Deletes all items from the drive    [ Read more... ]
 Generic Request
This is generic endpoint. Use this endpoint when some actions are not implemented by connector. Just enter partial URL (Required), Body, Method, Header etc. Most parameters are optional except URL.    [ Read more... ]
Parameter Description
Url API URL goes here. You can enter full URL or Partial URL relative to Base URL. If it is full URL then domain name must be part of ServiceURL or part of TrustedDomains
Body Request Body content goes here
IsMultiPart Set this option if you want to upload file(s) (i.e. POST RAW file data) or send data using Multi-Part encoding method (i.e. Content-Type: multipart/form-data). Multi-Part request allows you to mix key/value and upload files in same request. On the other hand raw upload allows only single file upload (without any key/value) ==== Raw Upload (Content-Type: application/octet-stream) ===== To upload single file in raw mode check this option and specify full file path starting with @ sign in the Body (e.g. @c:\data\myfile.zip ) ==== Form-Data / Multipart Upload (Content-Type: multipart/form-data) ===== To treat your Request data as multi part fields you must specify key/value pairs separated by new lines into RequestData field (i.e. Body). Each key value pair is entered on new-line and key/value are separated using equal sign (=). Preceding and trailing spaces are ignored also blank lines are ignored. If field value has some any special character(s) then use escape sequence (e.g. For NewLine: \r\n, For Tab: \t, For at (@): \@). When value of any field starts with at sign (@) its automatically treated as File you want to upload. By default file content type is determined based on extension however you can supply content type manually for any field using this way [ YourFileFieldName.Content-Type=some-content-type ]. By default File Upload Field always includes Content-Type in the request (non file fields do not have content-type by default unless you supply manually). For some reason if you dont want to use Content-Type header in your request then supply blank Content-Type to exclude this header altogather [e.g. SomeFieldName.Content-Type= ]. In below example we have supplied Content-Type for file2 and SomeField1, all other fields are using default content-type. See below Example of uploading multiple files along with additional fields. If some API requires you to pass Content-Type: multipart/form-data rather than multipart/form-data then manually set Request Header => Content-Type: multipart/mixed (it must starts with multipart/ else will be ignored). file1=@c:\data\Myfile1.txt file2=@c:\data\Myfile2.json file2.Content-Type=application/json SomeField1=aaaaaaa SomeField1.Content-Type=text/plain SomeField2=12345 SomeFieldWithNewLineAndTab=This is line1\r\nThis is line2\r\nThis is \ttab \ttab \ttab SomeFieldStartingWithAtSign=\@MyTwitterHandle
Filter Enter filter to extract array from response. Example: $.rows[*] --OR-- $.customers[*].orders[*]. Check your response document and find out hierarchy you like to extract
Option Value
No filter
Example1 $.store.books[*]
Example2 (Sections Under Books) $.store.books[*].sections[*]
Example3 (Equals) $.store.books[?(@author=='sam')]
Example4 (Equals - Any Section) $..[?(@author=='sam')]
Example5 (Not Equals - Any Section) $..[?(@author!='sam')]
Example6 (Number less than) $.store.books[?(@.price<10)] Example7 (Regular Expression - Contains Pattern)=$.store.books[?(@author=~ /sam|bob/ )]
Example8 (Regular Expression - Does Not Contain Pattern) $.store.books[?(@author=~ /^((?!sam|bob).)*$/ )]
Example9 (Regular Expression - Exact Pattern Match) $.store.books[?(@author=~ /^sam|bob$/ )]
Example10 (Regular Expression - Starts With) $.store.books[?(@author=~ /^sam/ )]
Example11 (Regular Expression - Ends With) $.store.books[?(@author=~ /sam$/ )]
Example12 (Between) $.store.employees[?( @.hiredate>'2015-01-01' && @.hiredate<'2015-01-04' )]
Headers Headers for Request. To enter multiple headers use double pipe or new line after each {header-name}:{value} pair
 Generic Request (Bulk Write)
This is a generic endpoint for bulk write purpose. Use this endpoint when some actions are not implemented by connector. Just enter partial URL (Required), Body, Method, Header etc. Most parameters are optional except URL.    [ Read more... ]
Parameter Description
Url API URL goes here. You can enter full URL or Partial URL relative to Base URL. If it is full URL then domain name must be part of ServiceURL or part of TrustedDomains
IsMultiPart Set this option if you want to upload file(s) (i.e. POST RAW file data) or send data using Multi-Part encoding method (i.e. Content-Type: multipart/form-data). Multi-Part request allows you to mix key/value and upload files in same request. On the other hand raw upload allows only single file upload (without any key/value) ==== Raw Upload (Content-Type: application/octet-stream) ===== To upload single file in raw mode check this option and specify full file path starting with @ sign in the Body (e.g. @c:\data\myfile.zip ) ==== Form-Data / Multipart Upload (Content-Type: multipart/form-data) ===== To treat your Request data as multi part fields you must specify key/value pairs separated by new lines into RequestData field (i.e. Body). Each key value pair is entered on new-line and key/value are separated using equal sign (=). Preceding and trailing spaces are ignored also blank lines are ignored. If field value has some any special character(s) then use escape sequence (e.g. For NewLine: \r\n, For Tab: \t, For at (@): \@). When value of any field starts with at sign (@) its automatically treated as File you want to upload. By default file content type is determined based on extension however you can supply content type manually for any field using this way [ YourFileFieldName.Content-Type=some-content-type ]. By default File Upload Field always includes Content-Type in the request (non file fields do not have content-type by default unless you supply manually). For some reason if you dont want to use Content-Type header in your request then supply blank Content-Type to exclude this header altogather [e.g. SomeFieldName.Content-Type= ]. In below example we have supplied Content-Type for file2 and SomeField1, all other fields are using default content-type. See below Example of uploading multiple files along with additional fields. If some API requires you to pass Content-Type: multipart/form-data rather than multipart/form-data then manually set Request Header => Content-Type: multipart/mixed (it must starts with multipart/ else will be ignored). file1=@c:\data\Myfile1.txt file2=@c:\data\Myfile2.json file2.Content-Type=application/json SomeField1=aaaaaaa SomeField1.Content-Type=text/plain SomeField2=12345 SomeFieldWithNewLineAndTab=This is line1\r\nThis is line2\r\nThis is \ttab \ttab \ttab SomeFieldStartingWithAtSign=\@MyTwitterHandle
Filter Enter filter to extract array from response. Example: $.rows[*] --OR-- $.customers[*].orders[*]. Check your response document and find out hierarchy you like to extract
Headers Headers for Request. To enter multiple headers use double pipe (||) or new line after each {header-name}:{value} pair

Conclusion

In this article we showed you how to connect to Google Drive in SSIS and integrate data without any coding, saving you time and effort. We encourage you to download Google Drive Connector for SSIS and see how easy it is to use it for yourself or your team.

If you have any questions, feel free to contact ZappySys support team. You can also open a live chat immediately by clicking on the chat icon below.

Download Google Drive Connector for SSIS Documentation

More integrations

Other connectors for SSIS

Other application integration scenarios for Google Drive

  • How to connect Google Drive in SSIS?

  • How to get Google Drive data in SSIS?

  • How to read Google Drive data in SSIS?

  • How to load Google Drive data in SSIS?

  • How to import Google Drive data in SSIS?

  • How to pull Google Drive data in SSIS?

  • How to push data to Google Drive in SSIS?

  • How to write data to Google Drive in SSIS?

  • How to POST data to Google Drive in SSIS?

  • Call Google Drive API in SSIS

  • Consume Google Drive API in SSIS

  • Google Drive SSIS Automate

  • Google Drive SSIS Integration

  • Integration Google Drive in SSIS

  • Consume real-time Google Drive data in SSIS

  • Consume real-time Google Drive API data in SSIS

  • Google Drive ODBC Driver | ODBC Driver for Google Drive | ODBC Google Drive Driver | SSIS Google Drive Source | SSIS Google Drive Destination

  • Connect Google Drive in SSIS

  • Load Google Drive in SSIS

  • Load Google Drive data in SSIS

  • Read Google Drive data in SSIS

  • Google Drive API Call in SSIS