Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Functions for "Restore Data" #192

Closed
IronKane2 opened this issue May 21, 2019 · 7 comments
Closed

Functions for "Restore Data" #192

IronKane2 opened this issue May 21, 2019 · 7 comments
Assignees

Comments

@IronKane2
Copy link

I absolutely love PSGSuite! Now give me more :)
I just now finished restoring data manually for 17 students. First place I went to was PSGSuite thinking I could knock this out in just a couple of minutes. I'm hoping you can add to the toolbox a Restore Data set of functions for Drive.

Thanks Nate!

@scrthq
Copy link
Member

scrthq commented May 24, 2019

Hey @IronKane2 - Do you happen to have a link to the API page covering what you're trying to do? I know that data restoration can mean various things (Vault restoration, old version retrieval, etc), just want to make sure I understand what you're after and if it's something that is open via public API

@scrthq
Copy link
Member

scrthq commented May 24, 2019

For example, I'm not seeing anything in the API docs for Admin SDK or Drive SDK that highlight data restoration in particular. The closest thing would be the Data Transfer API, but that's not exactly a restore. The only way to restore data from the Admin console is only doable from the console itself (as far as I'm aware), not via API: https://support.google.com/a/answer/6052340?hl=en

@scrthq scrthq self-assigned this May 24, 2019
@IronKane2
Copy link
Author

Well damn. Thanks for the update. Hopefully Google will make an API for this sometime soon.
What about this --> https://developers.google.com/drive/api/v2/reference/files/untrash
Not applicable?

@scrthq
Copy link
Member

scrthq commented May 29, 2019

So that exact method isn't doable (it's using the legacy v2 of the Drive API), but the equivalent method could be something to add to Update-GSDriveFile as a switch parameter: https://developers.google.com/drive/api/v3/reference/files/update

Example of the final product:

Update-GSDriveFile -FileId $fileId -Trashed:$false

Thoughts?

@IronKane2
Copy link
Author

Please don't waste any more time on this. It sounds like we'll have to wait for future API's from Google.
I'm using PSGSuite every day. Thank you so very much.

@scrthq
Copy link
Member

scrthq commented May 30, 2019

I'll keep it backlogged for now, shouldn't be terribly difficult to implement =]. There's value there, for sure

scrthq added a commit that referenced this issue May 31, 2019
…, #197 (#198)

## 2.28.0

* [Issue #188](#188)
  * Added: `Get-GSDriveFile` now supports specifying a full file path.
  * Fixed: `Get-GSDriveFile` will now replace any special path characters in the filename with underscores
  * Added: The File object returned by `Get-GSDriveFile` will now include an additional `OutFilePath` property if the file is downloaded. This property will contain the full path to the downloaded file.
* [Issue #190](#190)
  * Fixed: `Fields` parameter on `Get-GSDriveFile` and `Update-GSDriveFile` were not being honored.
* [Issue #192](#192)
  * Added: Parameters to `Update-GSDriveFile`:
    * `CopyRequiresWriterPermission [switch]`
    * `Starred [switch]`
    * `Trashed [switch]`
    * `WritersCanShare [switch]`
* [Issue #194](#194)
  * Added: Parameters to `Update-GSChromeOSDevice`:
    * `AnnotatedAssetId [string]`
    * `AnnotatedLocation [string]`
    * `AnnotatedUser [string]`
    * `Notes [string]`
* [Issue #195](#195)
  * Added: `Limit` parameter with `First` alias to the following `List` functions:
    * `Get-GSActivityReport`
    * `Get-GSAdminRole`
    * `Get-GSAdminRoleAssignment`
    * `Get-GSCalendar`
    * `Get-GSCalendarAcl`
    * `Get-GSCalendarEvent`
    * `Get-GSChromeOSDevice`
    * `Get-GSDataTransferApplication`
    * `Get-GSDrive`
    * `Get-GSDriveFileList`
    * `Get-GSDrivePermission`
    * `Get-GSGmailMessageList`
    * `Get-GSGroup`
    * `Get-GSGroupMember`
    * `Get-GSMobileDevice`
    * `Get-GSResource`
    * `Get-GSTask`
    * `Get-GSTaskList`
    * `Get-GSUsageReport`
    * `Get-GSUser`
    * `Get-GSUserLicense`
* [Issue #196](#196)
  * Fixed: `Get-GSTeamDrive` was not paginating through the results.
* [Issue #197](#197)
  * Renamed: `Get-GSTeamDrive` has been changed to `Get-GSDrive`. `Get-GSTeamDrive` has been turned into an alias for `Get-GSDrive` to maintain backwards compatibility.
  * Replaced: `SupportsTeamDrives = $true` with `SupportsAllDrives = $true` on all functions that have it.
* Miscellaneous
  * Fixed: `Export-PSGSuiteConfig` is faster due to safely assuming that the P12Key and/or ClientSecrets values have already been pulled from the corresponding keys.
  * Fixed: Incomplete documentation for `Test-GSGroupMembership`.
  * Added: `UseDomainAdminAccess` switch parameter to `Get-GSTeamDrive`
  * Removed: `Get-GSUserLicenseListPrivate` by rolling the `List` code into `Get-GSUserLicense`
  * Removed: `Get-GSResourceListPrivate` by rolling the `List` code into `Get-GSResource`
scrthq added a commit that referenced this issue May 31, 2019
…, #197

## 2.28.0

* [Issue #188](#188)
  * Added: Get-GSDriveFile now supports specifying a full file path.
  * Fixed: Get-GSDriveFile will now replace any special path characters in the filename with underscores
  * Added: The File object returned by Get-GSDriveFile will now include an additional OutFilePath property if the file is downloaded. This property will contain the full path to the downloaded file.
* [Issue #190](#190)
  * Fixed: Fields parameter on Get-GSDriveFile and Update-GSDriveFile were not being honored.
* [Issue #192](#192)
  * Added: Parameters to Update-GSDriveFile:
    * CopyRequiresWriterPermission [switch]
    * Starred [switch]
    * Trashed [switch]
    * WritersCanShare [switch]
* [Issue #194](#194)
  * Added: Parameters to Update-GSChromeOSDevice:
    * AnnotatedAssetId [string]
    * AnnotatedLocation [string]
    * AnnotatedUser [string]
    * Notes [string]
* [Issue #195](#195)
  * Added: Limit parameter with First alias to the following List functions:
    * Get-GSActivityReport
    * Get-GSAdminRole
    * Get-GSAdminRoleAssignment
    * Get-GSCalendar
    * Get-GSCalendarAcl
    * Get-GSCalendarEvent
    * Get-GSChromeOSDevice
    * Get-GSDataTransferApplication
    * Get-GSDrive
    * Get-GSDriveFileList
    * Get-GSDrivePermission
    * Get-GSGmailMessageList
    * Get-GSGroup
    * Get-GSGroupMember
    * Get-GSMobileDevice
    * Get-GSResource
    * Get-GSTask
    * Get-GSTaskList
    * Get-GSUsageReport
    * Get-GSUser
    * Get-GSUserLicense
* [Issue #196](#196)
  * Fixed: Get-GSTeamDrive was not paginating through the results.
* [Issue #197](#197)
  * Renamed: Get-GSTeamDrive has been changed to Get-GSDrive. Get-GSTeamDrive has been turned into an alias for Get-GSDrive to maintain backwards compatibility.
  * Replaced: SupportsTeamDrives = True with SupportsAllDrives = True on all functions that have it.
* Miscellaneous
  * Fixed: Export-PSGSuiteConfig is faster due to safely assuming that the P12Key and/or ClientSecrets values have already been pulled from the corresponding keys.
  * Fixed: Incomplete documentation for Test-GSGroupMembership.
  * Added: UseDomainAdminAccess switch parameter to Get-GSTeamDrive
  * Removed: Get-GSUserLicenseListPrivate by rolling the List code into Get-GSUserLicense
  * Removed: Get-GSResourceListPrivate by rolling the List code into Get-GSResource
@scrthq
Copy link
Member

scrthq commented May 31, 2019

Hey @IronKane2 - This has been deployed in v2.28.0! Let me know if all is well or if you are seeing any issues!

@scrthq scrthq closed this as completed Jun 28, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants