Skip to content

Powershell module for Google / G Suite API calls wrapped in handy functions. Authentication is established using a service account via P12 key to negate the consent popup and allow for greater handsoff automation capabilities

License

Notifications You must be signed in to change notification settings

SCRT-HQ/PSGSuite

Repository files navigation

PSGSuite

PSGSuite 2.0.0 released!

Azure Pipelines      Discord - Chat      Slack - Chat      Gitter - Chat

Codacy      PowerShell Gallery      GitHub Releases      GitHub Releases


Documentation

Check out PSGSuite.io for PSGSuite documentation, including initial setup help as well as function help!

Contributing

Interested in helping out with PSGSuite development? Please check out our Contribution Guidelines!

Building the module locally to test changes is as easy as running the build.ps1 file in the root of the repo. This will compile the module with your changes and import the newly compiled module at the end by default.

Want to run the Pester tests locally? Pass Test as the value to the Task script parameter like so:

.\build.ps1 -Task Test

Code of Conduct

Please adhere to our Code of Conduct when interacting with this repo.

License

Apache 2.0

Changelog

Full CHANGELOG here


2.0.0 - Changes

New Functionality

  • PowerShell Core support for cross-platform functionality
  • P12 Keys (service accounts) and client_secrets.json (OAuth) are both now supported
  • All Drive functions now support Team Drives
  • Get-GSGmailMessage can now save message attachments to a local path
  • File uploads to Drive are now supported (including recursive folder uploads!)

Breaking Changes in 2.0.0

Gmail Delegation Management Removed

The Gmail API does not yet support handling inbox delegation. The functionality addition has been pushed back again until Q3 of 2018. Once the Gmail API supports inbox delegation, those functions will be added.

Delegation functions have been re-added to PSGSuite as of v2.4.0! Update now to get all the goodness of v2 + delegation commands!

Functions Removed

Please note that not all functions were ported to PSGSuite 2.0.0 due to restrictions within the .NET SDK and deprecated API calls. Here is the list of functions no longer existing in PSGSuite as of 2.0.0:

  • Get-GSToken: no need for this as the keys are being consumed by Googles Auth SDK directly now, which makes Access/Refresh tokens non-existent for P12 Key service accounts and token management is handled automatically
  • Revoke-GSToken: same here, no longer needed due to auth service changes
  • Start-PSGSuiteConfigWizard: no longer supported as WPF is not compatible outside of Windows

Functions Aliased

All other functions are either intact or have an alias included to support backwards compatibility in scripts. Full list of aliases:

Alias Maps To
Add-GSDriveFilePermissions Add-GSDrivePermission
Export-PSGSuiteConfiguration Set-PSGSuiteConfig
Get-GSCalendarEventList Get-GSCalendarEvent
Get-GSCalendarResourceList Get-GSResourceList
Get-GSDataTransferApplicationList Get-GSDataTransferApplication
Get-GSDriveFileInfo Get-GSDriveFile
Get-GSDriveFilePermissionsList Get-GSDrivePermission
Get-GSGmailDelegates Get-GSGmailDelegate
Get-GSGmailFilterList Get-GSGmailFilter
Get-GSGmailLabelList Get-GSGmailLabel
Get-GSGmailMessageInfo Get-GSGmailMessage
Get-GSGmailSendAsSettings Get-GSGmailSendAsAlias
Get-GSGmailSignature Get-GSGmailSendAsAlias
Get-GSGroupList Get-GSGroup
Get-GSGroupMemberList Get-GSGroupMember
Get-GSMobileDeviceList Get-GSMobileDevice
Get-GSOrganizationalUnitList Get-GSOrganizationalUnit
Get-GSOrgUnit Get-GSOrganizationalUnit
Get-GSOrgUnitList Get-GSOrganizationalUnit
Get-GSOU Get-GSOrganizationalUnit
Get-GSResourceList Get-GSResource
Get-GSShortURLInfo Get-GSShortURL
Get-GSTeamDrive Get-GSDrive
Get-GSTeamDrivesList Get-GSDrive
Get-GSUserASPList Get-GSUserASP
Get-GSUserLicenseInfo Get-GSUserLicense
Get-GSUserLicenseList Get-GSUserLicense
Get-GSUserList Get-GSUser
Get-GSUserSchemaInfo Get-GSUserSchema
Get-GSUserSchemaList Get-GSUserSchema
Get-GSUserTokenList Get-GSUserToken
Import-PSGSuiteConfiguration Get-PSGSuiteConfig
Move-GSGmailMessageToTrash Remove-GSGmailMessage
New-GSCalendarResource New-GSResource
Remove-GSGmailMessageFromTrash Restore-GSGmailMessage
Set-PSGSuiteDefaultDomain Switch-PSGSuiteConfig
Switch-PSGSuiteDomain Switch-PSGSuiteConfig
Update-GSCalendarResource Update-GSResource
Update-GSGmailSendAsSettings Update-GSGmailSendAsAlias
Update-GSSheetValue Export-GSSheet

Most recent changes

Full CHANGELOG here

2.33.2 - 2019-10-06

  • Issue #242
    • Fixed: Error handling around [System.Console]::CursorVisible on Start-GSDriveFileUpload, Wait-GSDriveFileUpload and Write-InlineProgress
    • Cleaned up verbose handling on Stop-GSDriveFileUpload due to file uploads showing as Failed even though they were successful.
  • Miscellaneous
    • Updated build.ps1 script for better verbose output

2.33.1 - 2019-10-06

  • Issue #235
    • Removed: Name parameter from Start-GSDriveFileUpload as it was unused in the function and doesnt make sense when uploading an array of files.
  • Issue #238
    • Added: Get-GSDataTransfer to Get/List current Data Transfers
  • Issue #239
    • Removed: Update-GSResource Id parameter as it was non-applicable (duplicate of ResourceId and not writable per API docs)
    • Cleaned up function help and examples to match changes
  • Issue #240
    • Fixed: Get-GSCalendar now properly resolves single calendar metadata retrieval and passes List requests to Get-GSCalendarSubscription since the Calendars service does not support List requests.
  • Miscellaneous
    • Updated Google .NET SDKs to latest versions
    • Cleaned up build.ps1 script

2.33.0 - 2019-09-26

  • Issue #236
    • Fixed: Custom converter for Configuration metadata defaults to ConvertTo-SecureString as the preferred function instead of the custom Secure. Secure is still supported for backwards compatibility.

About

Powershell module for Google / G Suite API calls wrapped in handy functions. Authentication is established using a service account via P12 key to negate the consent popup and allow for greater handsoff automation capabilities

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published