![]() |
VOOZH | about |
This guide explains everything you need to get started with the Google Spreadsheets PowerShell Cmdlets. You'll learn how to install the cmdlets, configure your first connection, run queries, and explore next steps for working with Google Sheets data in PowerShell.
CData PowerShell Cmdlets run anywhere PowerShell runs.
CData Cmdlets are delivered through the PowerShell Gallery, ensuring a simple and consistent installation process across platforms.
Install-Module GoogleSheetsCmdlets -Repository PSGallery -Force
This command:
To verify installation:
Get-Module -ListAvailable "*GoogleSheets*"
The cmdlets support both trial and fully licensed activation.
Trial activation is automatic - no key is required. Once installed, you can begin using the cmdlets immediately.
If you have purchased a full license, you will receive a product key from the CData Orders Team.
Run the following command:
Set-ModuleLicense ""
You should see a confirmation message indicating successful activation.
Can I use my license on multiple machines?
Depending on your subscription tier. Refer to your order confirmation or contact [email protected].
I lost my license key. What do I do?
Email [email protected] with your order number to have it resent.
Can I transfer my license to another machine?
Submit a license transfer request here: https://www.cdata.com/lic/transfer/.
Where can I manage my license?
Visit the CData Customer Portal: https://portal.cdata.com/.
Once the module is installed and licensed, you can establish a connection to Google Sheets using the
Connect-Google Sheets cmdlet
After obtaining the needed connection properties, accessing Google Sheets data in PowerShell and preparing for replication consists of four basic steps.
You can connect to a spreadsheet by providing authentication to Google and then setting the Spreadsheet connection property to the name or feed link of the spreadsheet. If you want to view a list of information about the spreadsheets in your Google Drive, execute a query to the Spreadsheets view after you authenticate.
ClientLogin (username/password authentication) has been officially deprecated since April 20, 2012 and is now no longer available. Instead, use the OAuth 2.0 authentication standard. To access Google APIs on behalf on individual users, you can use the embedded credentials or you can register your own OAuth app.
OAuth also enables you to use a service account to connect on behalf of users in a Google Apps domain. To authenticate with a service account, register an application to obtain the OAuth JWT values.
See the Getting Started chapter in the help documentation to connect to Google Sheets from different types of accounts: Google accounts, Google Apps accounts, and accounts using two-step verification.
Install the module:
Install-Module GoogleSheetsCmdlets
Connect to Google Sheets:
$googlesheets = Connect-GSheets -Spreadsheet $Spreadsheet -InitiateOAuth $InitiateOAuth
Once connected, you can query data using standard SQL like commands.
Example Query:
$results = Select-GoogleSheets ` -Connection $conn ` -Table "Orders" ` -Columns "Shipcountry,OrderPrice" ` -Where "Shipcountry != ''"
Display the results:
$results
You have now successfully accessed Google Sheets data from PowerShell!
Solution: Verify username, password, and security token. For OAuth applications, you may need to authorize CData in your application's security settings. Contact [email protected] for authorization assistance.
Solution: Confirm firewall settings and outbound access. Most cloud applications use port 443.
Solution: Ensure the module is installed-
Get-Module -ListAvailable "*Google Sheets*"
Solution:
For additional connection troubleshooting, contact [email protected] with your specific error message.
Now that you have installed, licensed, and configured the PowerShell Cmdlets, here are some scenarios you can use to explore:
| PowerShell | Article Title |
|---|---|
| Piping Cmdlets | How to pipe Google Sheets Data to CSV in PowerShell |
| Replication | PowerShell Scripting to Replicate Google Sheets Data to MySQLl |
If you need assistance:
Not always.
Install-Module GoogleSheetsCmdlets -Scope CurrentUser
CData PowerShell Cmdlets are delivered through the PowerShell Gallery. Installation is performed via:
Install-Module GoogleSheetsCmdlets -Repository PSGallery -Force
Create separate connection objects-each with different authentication properties:
$conn1 = Connect-GoogleSheets -User User1 -Password Pwd1
$conn2 = Connect-GoogleSheets -User User2 -Password Pwd2
Cmdlets do not use ODBC DSNs. All connection properties are passed directly in
Connect-Google Sheets
Many cmdlets support proxy properties such as:
Refer to the data-source-specific Help documentation.
Common causes:
Try:
Contact [email protected] for query optimization assistance.
Enable module logging with:
Set-ModuleLogging -Path "C:\logs\cdata.log" -Verbosity 3Upload the log file securely when working with CData Support.
Most cloud applications (Salesforce, HubSpot, Dynamics, Google APIs, etc.) use: HTTPS (443)
If your source requires additional ports, check its specific documentation or contact [email protected].
Install PowerShell 7 in the container and install the module:
pwsh -Command "Install-Module GoogleSheetsCmdlets -Force"Then authenticate normally.
Each cmdlet includes a Help documentation set installed locally and available online: https://www.cdata.com/powershell/.
CData releases major annual updates plus incremental updates throughout the year. Check your customer portal or contact [email protected] for version availability.
Every Cmdlet includes examples in the Help documentation, plus online examples for many services: https://www.cdata.com/powershell/. Examples include:
For questions not covered in this FAQ, [email protected].
Download a free trial of the Google Spreadsheets Cmdlets to get started:
Download NowLearn more:
👁 Google Spreadsheets IconAn easy-to-use set of PowerShell Cmdlets offering real-time access to Google Spreadsheets data. The Cmdlets allow users to easily read, write, update, and delete live data - just like working with SQL server.