gam7 7.22.5__tar.gz → 7.22.6__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of gam7 might be problematic. Click here for more details.
- {gam7-7.22.5 → gam7-7.22.6}/PKG-INFO +1 -1
- {gam7-7.22.5 → gam7-7.22.6}/src/GamCommands.txt +30 -5
- {gam7-7.22.5 → gam7-7.22.6}/src/GamUpdate.txt +35 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/__init__.py +133 -29
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gamlib/glclargs.py +1 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/GamUpdates.md +16 -1
- {gam7-7.22.5 → gam7-7.22.6}/wiki/How-to-Upgrade-Legacy-GAM-to-GAM7.md +1 -1
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Drive-Permissions.md +1 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Vault-Takeout.md +25 -11
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Version-and-Help.md +3 -3
- {gam7-7.22.5 → gam7-7.22.6}/.github/ISSUE_TEMPLATE/aa-question.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/.github/ISSUE_TEMPLATE/za-bug-report.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/.github/ISSUE_TEMPLATE/zz-feature-request.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/.github/ISSUE_TEMPLATE.txt +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/.github/actions/decrypt.sh +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/.github/actions/entitlements.plist +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/.github/actions/package_exclusions.txt +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/.github/stale.yml +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/.github/workflows/build.yml +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/.github/workflows/codeql-analysis.yml +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/.github/workflows/get-cacerts.yml +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/.github/workflows/pushwiki.yml +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/.github/workflows/pypi.yml +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/LICENSE +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/README.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/pyproject.toml +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/.gitignore +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/LICENSE +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/README.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/callgam.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/__main__.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/atom/__init__.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/atom/auth.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/atom/client.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/atom/core.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/atom/data.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/atom/http.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/atom/http_core.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/atom/http_interface.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/atom/mock_http.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/atom/mock_http_core.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/atom/mock_service.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/atom/service.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/atom/token_store.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/atom/url.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/cacerts.pem +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/cbcm-v1.1beta1.json +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/contactdelegation-v1.json +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/datastudio-v1.json +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gamlib/__init__.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gamlib/glaction.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gamlib/glapi.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gamlib/glcfg.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gamlib/glentity.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gamlib/glgapi.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gamlib/glgdata.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gamlib/glglobals.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gamlib/glindent.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gamlib/glmsgs.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gamlib/glskus.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gamlib/gluprop.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gamlib/glverlibs.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gamlib/yubikey.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gdata/__init__.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gdata/alt/__init__.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gdata/alt/app_engine.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gdata/alt/appengine.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gdata/apps/__init__.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gdata/apps/audit/__init__.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gdata/apps/audit/service.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gdata/apps/contacts/__init__.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gdata/apps/contacts/service.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gdata/apps/service.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gdata/service.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/gdata/urlfetch.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/meet-v2beta.json +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam/serviceaccountlookup-v1.json +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam-install.sh +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam-setup.bat +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam.exe.manifest +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam.spec +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/gam.wxs +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/license.rtf +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/tools/a_atleast_b.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/tools/gen-wix-xml-filelist.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/tools/hooks/hook-googleapiclient.model.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/tools/hooks/hook-httplib2.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/tools/mkGamRef.py +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/tools/openssl.props +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/tools/ssd.mjs +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/src/version_info.txt.in +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/00scratch.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Addresses.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Administrators.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Alert-Center.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Aliases.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Authorization.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/BNF-Syntax.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Basic-Items.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Bulk-Processing.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Business-Account-Management.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/CSV-Input-Filtering.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/CSV-Output-Filtering.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/CSV-Special-Characters.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Calendars-Access.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Calendars-Events.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Calendars.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Chat-Bot-Setup-Use.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Chrome-AUE-Counts.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Chrome-Browser-Cloud-Management.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Chrome-Installed-Apps.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Chrome-Needs-Attention-Counts.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Chrome-Policies.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Chrome-Printers.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Chrome-Profile-Management.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Chrome-Version-Counts.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Chrome-Version-History.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/ChromeOS-Devices.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Classroom-Courses.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Classroom-Guardians.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Classroom-Invitations.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Classroom-Membership.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Classroom-StudentGroups.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Cloud-Channel.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Cloud-Identity-Devices.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Cloud-Identity-Groups-Membership.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Cloud-Identity-Groups.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Cloud-Identity-Policies.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Cloud-Storage.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Collections-of-ChromeOS-Devices.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Collections-of-Items.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Collections-of-Users.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Command-Data-From-Google-Docs-Sheets-Storage.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Command-Line-Parsing.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Command-Logging-Progress.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Context-Aware-Access-Levels.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Customer.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Domain-People-Contacts-Profiles.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Domain-SharedContacts.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Domains-Verification.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Domains.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Downloads-Installs.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Drive-File-Selection.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Drive-Items.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Drive-REST-API-v3.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Email-Audit-Monitor.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Find-File-Owner.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/GAM-Public-Chat-Room.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/GAM-Release-Process.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/GAM-Return-Codes.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/GAM-with-minimal-GCP-rights.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/GAM7-FAQ.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/GAM7-on-Android-Devices.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/GAM7-on-Chrome-OS-Devices.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Global-Address-List.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Google-Data-Transfers.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Google-Network-Addresses.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Groups-Membership.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Groups.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/HTTPS-Proxy.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Home.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/How-to-Install-GAM7.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/How-to-Uninstall-GAM7.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/How-to-Update-GAM7.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/How-to-Upgrade-GAMADV-XTD3-to-GAM7.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Inbound-SSO.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Install-GAM-as-Python-Library.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Licenses.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/List-Items.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/List.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Meta-Commands-and-File-Redirection.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Mobile-Devices.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Organizational-Units.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Other-Resources.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Permission-Matches.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Python-Regular-Expressions.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/README.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Rclone.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Reports.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Reseller.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Resources.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Running-GAM7-securely-on-a-Google-Compute-Engine.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/SSL-Root-CA-Certificates.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Schemas.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Scripts.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Send-Email.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Shared-Drives.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Sites.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Tag-Replace.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Todrive.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Unmanaged-Accounts.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Upgrade-Benefits.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Analytics-Admin.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Application-Specific-Passwords.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Backup-Verification-Codes.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Calendars-Access.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Calendars-Events.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Calendars.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Chat.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Classification-Labels.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Classroom-Profile.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Contacts-Delegates.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Contacts.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Deprovision.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Drive-Activity-Settings.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Drive-Cleanup.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Drive-Comments.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Drive-Copy-Move.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Drive-Files-Display.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Drive-Files-Manage.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Drive-Orphans.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Drive-Ownership.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Drive-Query.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Drive-Revisions.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Drive-Shortcuts.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Drive-Transfer.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Forms.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Gmail-CSE.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Gmail-Delegates.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Gmail-Filters.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Gmail-Forwarding.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Gmail-Labels.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Gmail-Messages-Threads.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Gmail-Profile.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Gmail-S-MIME.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Gmail-Send-As-Signature-Vacation.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Gmail-Settings.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Group-Membership.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Keep-Notes.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Looker-Studio.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Meet.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-People-Contacts-Profiles.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Photo.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Profile-Photo.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Profile-Sharing.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Shared-Drives.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Signout-Turnoff2SV.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Spreadsheets.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Tag-Manager.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Tasks.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Tokens.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-Web-Resources-and-Sites.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users-YouTube.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Users.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Using-GAM7-with-a-YubiKey.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Using-GAM7-with-a-delegated-admin-service-account.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Using-GAM7-with-keyless-authentication-Workload-Identity-Federation.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/Verifying-a-GAM7-Build-is-Legitimate-and-Official.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/_Sidebar.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/gam.cfg.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-AdminSettingsExamples.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Android-Installation.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-BulkOperations.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-CalendarExamples.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Chat-Bot.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Chrome-Browser-Management.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Chrome-OS-Installation.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Chrome-Policy-Settings.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Cloud-Identity-Groups.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Command-Reference-Calendar-Resources.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Command-Reference-Calendars.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Command-Reference-Definitions.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Command-Reference-Drive.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Command-Reference-Email.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Command-Reference-Group-Attributes.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Command-Reference-Groups.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Command-Reference-Users.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Context-Aware-Access-Levels.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Creating-client_secrets.json-and-oauth2service.json.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-CreatingClientSecretsFile.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Custom-Schemas.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Data-Transfers.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-DomainVerification.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-ExamplesAccountAuditing.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-ExamplesCSV.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-ExamplesEmailSettings.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-ExamplesOrganizations.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-GAM-Discussion-Group.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-GAM-on-Android-and-Chrome-OS.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-GAM-options-files.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-GAM-with--minimal-GCP-rights.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-GAM3CSVListings.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-GAM3DirectoryCommands.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-GAM3GroupSettings.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Google-Vault---Takeout-Commands.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-GoogleDriveManagement.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Grouping-18-or-Older-Users.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Home.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-How-to-upgrade-from-Standard-GAM.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Inbound-SSO-Settings.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-LicenseExamples.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Managing-Admins.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Managing-CloudPrint-Printers.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Managing-Devices.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Managing-Google-Classroom.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-OAuthKeyManagement.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Printers.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-ResellerCommands.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-SecurityExamples.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-UnmanagedUsersExamples.md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-Using-GAM-with-a-delegated-admin-service-account-(DASA).md +0 -0
- {gam7-7.22.5 → gam7-7.22.6}/wiki/legacy/l-_Footer.md +0 -0
|
@@ -729,6 +729,7 @@ If an item contains spaces, it should be surrounded by ".
|
|
|
729
729
|
<DomainNameList> ::= "<DomainName>(,<DomainName>)*"
|
|
730
730
|
<DriveFileACLRoleList> ::= "<DriveFileACLRole>(,<DriveFileACLRole>)*"
|
|
731
731
|
<DriveFileACLTypeList> ::= "<DriveFileACLType>(,<DriveFileACLType>)*"
|
|
732
|
+
<DriveFileIDList> ::= "<DriveFileID>(,<DriveFileID>)*"
|
|
732
733
|
<DriveFileList> ::= "<DriveFileItem>(,<DriveFileItem>)*"
|
|
733
734
|
<DriveFilePermissionList> ::= "<DriveFilePermission>(,<DriveFilePermission>)*"
|
|
734
735
|
<DriveFilePermissionIDList> ::= "<DriveFilePermissionID>(,<DriveFilePermissionID>)*"
|
|
@@ -5411,12 +5412,13 @@ gam show vaultmatters|matters [matterstate <MatterStateList>]
|
|
|
5411
5412
|
[formatjson]
|
|
5412
5413
|
|
|
5413
5414
|
gam print vaultcounts [todrive <ToDriveAttributes>*]
|
|
5414
|
-
matter <MatterItem>
|
|
5415
|
-
[
|
|
5416
|
-
|
|
5417
|
-
|
|
5418
|
-
|
|
5415
|
+
matter <MatterItem> <QueryItem>
|
|
5416
|
+
[wait <Integer>]
|
|
5417
|
+
gam print vaultcounts [todrive <ToDriveAttributes>*]
|
|
5418
|
+
matter <MatterItem>
|
|
5419
|
+
corpus mail|groups
|
|
5419
5420
|
[scope [all_data|held_data|unprocessed_data]]
|
|
5421
|
+
[(accounts <EmailAddressEntity>) | (orgunit|org|ou <OrgUnitPath>) | everyone]
|
|
5420
5422
|
[terms <String>] [start|starttime <Date>|<Time>] [end|endtime <Date>|<Time>] [timezone <TimeZone>]
|
|
5421
5423
|
[excludedrafts <Boolean>]
|
|
5422
5424
|
[wait <Integer>]
|
|
@@ -5558,6 +5560,29 @@ gam show vaultholds|holds [matters <MatterItemList>]
|
|
|
5558
5560
|
gam <UserTypeEntity> print vaultholds|holds [todrive <ToDriveAttribute>*]
|
|
5559
5561
|
gam <UserTypeEntity> show vaultholds|holds
|
|
5560
5562
|
|
|
5563
|
+
gam create vaultquery <MatterItem> [name <String>]
|
|
5564
|
+
corpus calendar|drive|gemini|groups|hangouts_chat|mail|voice
|
|
5565
|
+
[scope all_data|held_data|unprocessed_data]
|
|
5566
|
+
(accounts <EmailAddressEntity>) | (orgunit|org|ou <OrgUnitPath>) | everyone
|
|
5567
|
+
(documentids (<DriveFileIDList>|(select <FileSelector>|<CSVFileSelector>))) |
|
|
5568
|
+
(shareddrives|teamdrives (<SharedDriveIDList>|(select <FileSelector>|<CSVFileSelector>))) |
|
|
5569
|
+
[(includeshareddrives <Boolean>)|(shareddrivesoption included|included_if_account_is_not_a_member|not_included)]
|
|
5570
|
+
(sitesurl (<URLList>||(select <FileSelector>|<CSVFileSelector>)))
|
|
5571
|
+
[driveversiondate <Date>|<Time>]
|
|
5572
|
+
[includerooms <Boolean>]
|
|
5573
|
+
(rooms (<ChatSpaceList>|(select <FileSelector>|<CSVFileSelector>))) |
|
|
5574
|
+
[terms <String>] [start|starttime <Date>|<Time>] [end|endtime <Date>|<Time>] [timezone <TimeZone>]
|
|
5575
|
+
[locationquery <StringList>] [peoplequery <StringList>] [minuswords <StringList>]
|
|
5576
|
+
[responsestatuses <AttendeeStatus>(,<AttendeeStatus>)*] [calendarversiondate <Date>|<Time>]
|
|
5577
|
+
(covereddata calllogs|textmessages|voicemails)*
|
|
5578
|
+
[shownames] [formatjson]
|
|
5579
|
+
|
|
5580
|
+
gam copy vaultquery <MatterItem> <QueryItem> [targetmatter <MatterItem"] [name <String>]
|
|
5581
|
+
[shownames] [formatjson]
|
|
5582
|
+
|
|
5583
|
+
gam delete vaultquery <QueryItem> matter <MatterItem>
|
|
5584
|
+
gam delete vaultquery <MatterItem> <QueryItem>
|
|
5585
|
+
|
|
5561
5586
|
<VaultQueryFieldName> ::=
|
|
5562
5587
|
createtime |
|
|
5563
5588
|
displayname |
|
|
@@ -1,3 +1,38 @@
|
|
|
1
|
+
7.22.06
|
|
2
|
+
|
|
3
|
+
Added commands to create, copy and delete Vault saved queries.
|
|
4
|
+
```
|
|
5
|
+
gam create vaultquery <MatterItem> [name <String>]
|
|
6
|
+
corpus calendar|drive|gemini|groups|hangouts_chat|mail|voice
|
|
7
|
+
[scope all_data|held_data|unprocessed_data]
|
|
8
|
+
(accounts <EmailAddressEntity>) | (orgunit|org|ou <OrgUnitPath>) | everyone
|
|
9
|
+
(documentids (<DriveFileIDList>|(select <FileSelector>|<CSVFileSelector>))) |
|
|
10
|
+
(shareddrives|teamdrives (<SharedDriveIDList>|(select <FileSelector>|<CSVFileSelector>))) |
|
|
11
|
+
[(includeshareddrives <Boolean>)|(shareddrivesoption included|included_if_account_is_not_a_member|not_included)]
|
|
12
|
+
(sitesurl (<URLList>||(select <FileSelector>|<CSVFileSelector>)))
|
|
13
|
+
[driveversiondate <Date>|<Time>]
|
|
14
|
+
[includerooms <Boolean>]
|
|
15
|
+
(rooms (<ChatSpaceList>|(select <FileSelector>|<CSVFileSelector>))) |
|
|
16
|
+
[terms <String>] [start|starttime <Date>|<Time>] [end|endtime <Date>|<Time>] [timezone <TimeZone>]
|
|
17
|
+
[locationquery <StringList>] [peoplequery <StringList>] [minuswords <StringList>]
|
|
18
|
+
[responsestatuses <AttendeeStatus>(,<AttendeeStatus>)*] [calendarversiondate <Date>|<Time>]
|
|
19
|
+
(covereddata calllogs|textmessages|voicemails)*
|
|
20
|
+
[shownames] [formatjson]
|
|
21
|
+
|
|
22
|
+
gam copy vaultquery <MatterItem> <QueryItem> [targetmatter <MatterItem"] [name <String>]
|
|
23
|
+
[shownames] [formatjson]
|
|
24
|
+
|
|
25
|
+
gam delete vaultquery <QueryItem> matter <MatterItem>
|
|
26
|
+
gam delete vaultquery <MatterItem> <QueryItem>
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Added a variant of `gam print vaultcounts` that gets its query parameters from a saved Vault query.
|
|
30
|
+
```
|
|
31
|
+
gam print vaultcounts [todrive <ToDriveAttributes>*]
|
|
32
|
+
matter <MatterItem> <QueryItem>
|
|
33
|
+
[wait <Integer>]
|
|
34
|
+
```
|
|
35
|
+
|
|
1
36
|
7.22.05
|
|
2
37
|
|
|
3
38
|
Added a variant of `gam create vaultexport` that gets its query parameters from a saved Vault query.
|
|
@@ -25,7 +25,7 @@ https://github.com/GAM-team/GAM/wiki
|
|
|
25
25
|
"""
|
|
26
26
|
|
|
27
27
|
__author__ = 'GAM Team <google-apps-manager@googlegroups.com>'
|
|
28
|
-
__version__ = '7.22.
|
|
28
|
+
__version__ = '7.22.06'
|
|
29
29
|
__license__ = 'Apache License 2.0 (http://www.apache.org/licenses/LICENSE-2.0)'
|
|
30
30
|
|
|
31
31
|
#pylint: disable=wrong-import-position
|
|
@@ -41716,6 +41716,7 @@ VAULT_SEARCH_METHODS_MAP = {
|
|
|
41716
41716
|
'accounts': 'ACCOUNT',
|
|
41717
41717
|
'chatspace': 'ROOM',
|
|
41718
41718
|
'chatspaces': 'ROOM',
|
|
41719
|
+
'documentids': 'DRIVE_DOCUMENT',
|
|
41719
41720
|
'entireorg': 'ENTIRE_ORG',
|
|
41720
41721
|
'everyone': 'ENTIRE_ORG',
|
|
41721
41722
|
'org': 'ORG_UNIT',
|
|
@@ -41831,6 +41832,8 @@ def _buildVaultQuery(myarg, query, corpusArgumentMap):
|
|
|
41831
41832
|
query['dataScope'] = 'ALL_DATA'
|
|
41832
41833
|
if myarg == 'corpus':
|
|
41833
41834
|
query['corpus'] = getChoice(corpusArgumentMap, mapChoice=True)
|
|
41835
|
+
elif myarg == 'scope':
|
|
41836
|
+
query['dataScope'] = getChoice(VAULT_EXPORT_DATASCOPE_MAP, mapChoice=True)
|
|
41834
41837
|
elif myarg in VAULT_SEARCH_METHODS_MAP:
|
|
41835
41838
|
if query.get('searchMethod'):
|
|
41836
41839
|
Cmd.Backup()
|
|
@@ -41851,8 +41854,8 @@ def _buildVaultQuery(myarg, query, corpusArgumentMap):
|
|
|
41851
41854
|
query['hangoutsChatInfo'] = {'roomId': roomIds}
|
|
41852
41855
|
elif searchMethod == 'SITES_URL':
|
|
41853
41856
|
query['sitesUrlInfo'] = {'urls': _getQueryList(Cmd.OB_URL_LIST)}
|
|
41854
|
-
|
|
41855
|
-
|
|
41857
|
+
elif searchMethod == 'DRIVE_DOCUMENT':
|
|
41858
|
+
query['driveDocumentInfo'] = {'documentIds': {'ids': _getQueryList(Cmd.OB_DRIVE_FILE_ID_LIST)}}
|
|
41856
41859
|
elif myarg == 'terms':
|
|
41857
41860
|
query['terms'] = getString(Cmd.OB_STRING)
|
|
41858
41861
|
elif myarg in {'start', 'starttime'}:
|
|
@@ -41919,17 +41922,18 @@ def _validateVaultQuery(body, corpusArgumentMap):
|
|
|
41919
41922
|
# [region any|europe|us] [showdetails|returnidonly]
|
|
41920
41923
|
# gam create vaultexport|export matter <MatterItem> [name <String>]
|
|
41921
41924
|
# corpus calendar|drive|gemini|groups|hangouts_chat|mail|voice
|
|
41922
|
-
#
|
|
41925
|
+
# [scope all_data|held_data|unprocessed_data]
|
|
41926
|
+
# (accounts <EmailAddressEntity>) | (orgunit|org|ou <OrgUnitPath>) | everyone|entireorg
|
|
41927
|
+
# (documentids (<DriveFileIDList>|(select <FileSelector>|<CSVFileSelector>))) |
|
|
41923
41928
|
# (shareddrives|teamdrives (<SharedDriveIDList>|(select <FileSelector>|<CSVFileSelector>))) |
|
|
41924
|
-
# (rooms (<ChatSpaceList>|(select <FileSelector>|<CSVFileSelector>))) |
|
|
41925
|
-
# (sitesurl (<URLList>||(select <FileSelector>|<CSVFileSelector>)))
|
|
41926
|
-
# [scope <all_data|held_data|unprocessed_data>]
|
|
41927
|
-
# [terms <String>] [start|starttime <Date>|<Time>] [end|endtime <Date>|<Time>] [timezone <TimeZone>]
|
|
41928
|
-
# [locationquery <StringList>] [peoplequery <StringList>] [minuswords <StringList>]
|
|
41929
|
-
# [responsestatuses <AttendeeStatus>(,<AttendeeStatus>)*] [calendarversiondate <Date>|<Time>]
|
|
41930
41929
|
# [(includeshareddrives <Boolean>)|(shareddrivesoption included|included_if_account_is_not_a_member|not_included)]
|
|
41930
|
+
# (sitesurl (<URLList>||(select <FileSelector>|<CSVFileSelector>)))
|
|
41931
41931
|
# [driveversiondate <Date>|<Time>]
|
|
41932
41932
|
# [includerooms <Boolean>]
|
|
41933
|
+
# (rooms (<ChatSpaceList>|(select <FileSelector>|<CSVFileSelector>))) |
|
|
41934
|
+
# [terms <String>] [start|starttime <Date>|<Time>] [end|endtime <Date>|<Time>] [timezone <TimeZone>]
|
|
41935
|
+
# [locationquery <StringList>] [peoplequery <StringList>] [minuswords <StringList>]
|
|
41936
|
+
# [responsestatuses <AttendeeStatus>(,<AttendeeStatus>)*] [calendarversiondate <Date>|<Time>]
|
|
41933
41937
|
# (covereddata calllogs|textmessages|voicemails)*
|
|
41934
41938
|
# [driveclientsideencryption any|encrypted|unencrypted]
|
|
41935
41939
|
# [includeaccessinfo <Boolean>]
|
|
@@ -41943,6 +41947,7 @@ def doCreateVaultExport():
|
|
|
41943
41947
|
body = {'query': {'dataScope': 'ALL_DATA'}, 'exportOptions': {}}
|
|
41944
41948
|
includeAccessInfo = None
|
|
41945
41949
|
exportFormat = None
|
|
41950
|
+
formatLocation = None
|
|
41946
41951
|
useNewExport = None
|
|
41947
41952
|
showConfidentialModeContent = None
|
|
41948
41953
|
exportLinkedDriveFiles = None
|
|
@@ -41961,6 +41966,7 @@ def doCreateVaultExport():
|
|
|
41961
41966
|
elif myarg == 'includeaccessinfo':
|
|
41962
41967
|
includeAccessInfo = getBoolean()
|
|
41963
41968
|
elif myarg == 'format':
|
|
41969
|
+
formatLocation = Cmd.Location()
|
|
41964
41970
|
exportFormat = getChoice(VAULT_EXPORT_FORMAT_MAP, mapChoice=True)
|
|
41965
41971
|
elif myarg == 'usenewexport':
|
|
41966
41972
|
useNewExport = getBoolean()
|
|
@@ -41981,18 +41987,19 @@ def doCreateVaultExport():
|
|
|
41981
41987
|
if not matterId:
|
|
41982
41988
|
missingArgumentExit('matter')
|
|
41983
41989
|
_validateVaultQuery(body, VAULT_CORPUS_ARGUMENT_MAP)
|
|
41984
|
-
if exportFormat is not None:
|
|
41985
|
-
if not exportFormat in VAULT_CORPUS_EXPORT_FORMATS[body['query']['corpus']]:
|
|
41986
|
-
invalidChoiceExit(exportFormat, VAULT_CORPUS_EXPORT_FORMATS[body['query']['corpus']], False)
|
|
41987
|
-
elif body['query']['corpus'] != 'DRIVE':
|
|
41988
|
-
exportFormat = VAULT_CORPUS_EXPORT_FORMATS[body['query']['corpus']][0]
|
|
41989
41990
|
if 'name' not in body:
|
|
41990
41991
|
body['name'] = f'GAM {body["query"]["corpus"]} Export - {ISOformatTimeStamp(todaysTime())}'
|
|
41991
41992
|
optionsField = VAULT_CORPUS_OPTIONS_MAP[body['query']['corpus']]
|
|
41992
41993
|
if body['query']['corpus'] == 'DRIVE':
|
|
41993
41994
|
if includeAccessInfo is not None:
|
|
41994
|
-
body['exportOptions'][optionsField]
|
|
41995
|
+
body['exportOptions'][optionsField] = {'includeAccessInfo': includeAccessInfo}
|
|
41995
41996
|
else:
|
|
41997
|
+
if exportFormat is not None:
|
|
41998
|
+
if not exportFormat in VAULT_CORPUS_EXPORT_FORMATS[body['query']['corpus']]:
|
|
41999
|
+
Cmd.SetLocation(formatLocation)
|
|
42000
|
+
invalidChoiceExit(exportFormat, VAULT_CORPUS_EXPORT_FORMATS[body['query']['corpus']], False)
|
|
42001
|
+
else:
|
|
42002
|
+
exportFormat = VAULT_CORPUS_EXPORT_FORMATS[body['query']['corpus']][0]
|
|
41996
42003
|
body['exportOptions'][optionsField] = {'exportFormat': exportFormat}
|
|
41997
42004
|
if body['query']['corpus'] == 'MAIL':
|
|
41998
42005
|
if showConfidentialModeContent is not None:
|
|
@@ -42474,7 +42481,7 @@ def _showVaultHold(matterNameId, hold, cd, FJQC, k=0, kcount=0):
|
|
|
42474
42481
|
showJSON(None, hold, timeObjects=VAULT_HOLD_TIME_OBJECTS)
|
|
42475
42482
|
Ind.Decrement()
|
|
42476
42483
|
|
|
42477
|
-
def
|
|
42484
|
+
def _useVaultQueryForHold(v, matterId, matterNameId, body):
|
|
42478
42485
|
_, _, _, query = convertQueryNameToID(v, getString(Cmd.OB_QUERY_ITEM), matterId, matterNameId)
|
|
42479
42486
|
body['corpus'] = query['corpus']
|
|
42480
42487
|
method = query.get('method')
|
|
@@ -42579,7 +42586,7 @@ def doCreateVaultHold():
|
|
|
42579
42586
|
elif myarg == 'name':
|
|
42580
42587
|
body['name'] = getString(Cmd.OB_STRING)
|
|
42581
42588
|
elif matterId is not None and myarg == 'vaultquery':
|
|
42582
|
-
|
|
42589
|
+
_useVaultQueryForHold(v, matterId, matterNameId, body)
|
|
42583
42590
|
usedVaultQuery = True
|
|
42584
42591
|
elif myarg == 'corpus':
|
|
42585
42592
|
body['corpus'] = getChoice(VAULT_CORPUS_ARGUMENT_MAP, mapChoice=True)
|
|
@@ -43038,6 +43045,99 @@ def _showVaultQuery(matterNameId, query, cd, drive, FJQC, k=0, kcount=0):
|
|
|
43038
43045
|
showJSON(None, query, timeObjects=VAULT_QUERY_TIME_OBJECTS)
|
|
43039
43046
|
Ind.Decrement()
|
|
43040
43047
|
|
|
43048
|
+
def doCreateCopyVaultQuery(copyCmd):
|
|
43049
|
+
v = buildGAPIObject(API.VAULT)
|
|
43050
|
+
body = {'query': {'dataScope': 'ALL_DATA'}, 'displayName': ''}
|
|
43051
|
+
matterId, matterNameId = getMatterItem(v)
|
|
43052
|
+
if copyCmd:
|
|
43053
|
+
_, queryName, _, body['query'] = convertQueryNameToID(v, getString(Cmd.OB_QUERY_ITEM), matterId, matterNameId)
|
|
43054
|
+
targetId = None
|
|
43055
|
+
cd = drive = None
|
|
43056
|
+
FJQC = FormatJSONQuoteChar()
|
|
43057
|
+
while Cmd.ArgumentsRemaining():
|
|
43058
|
+
myarg = getArgument()
|
|
43059
|
+
if myarg == 'name':
|
|
43060
|
+
body['displayName'] = getString(Cmd.OB_STRING)
|
|
43061
|
+
elif copyCmd and myarg == 'targetmatter':
|
|
43062
|
+
targetId, targetNameId = getMatterItem(v)
|
|
43063
|
+
elif not copyCmd and myarg in VAULT_QUERY_ARGS:
|
|
43064
|
+
_buildVaultQuery(myarg, body['query'], VAULT_CORPUS_ARGUMENT_MAP)
|
|
43065
|
+
elif myarg == 'shownames':
|
|
43066
|
+
cd = buildGAPIObject(API.DIRECTORY)
|
|
43067
|
+
_, drive = buildGAPIServiceObject(API.DRIVE3, _getAdminEmail())
|
|
43068
|
+
if drive is None:
|
|
43069
|
+
return
|
|
43070
|
+
else:
|
|
43071
|
+
FJQC.GetFormatJSON(myarg)
|
|
43072
|
+
if copyCmd:
|
|
43073
|
+
if targetId is None:
|
|
43074
|
+
targetId = matterId
|
|
43075
|
+
targetNameId = matterNameId
|
|
43076
|
+
if not body['displayName']:
|
|
43077
|
+
body['displayName'] = f'Copy of {queryName}' if matterId == targetId else queryName
|
|
43078
|
+
resultId = targetId
|
|
43079
|
+
resultNameId = targetNameId
|
|
43080
|
+
else:
|
|
43081
|
+
if not body['displayName']:
|
|
43082
|
+
body['displayName'] = 'GAM {body["query"]["corpus"]} Query - {ISOformatTimeStamp(todaysTime())}'
|
|
43083
|
+
resultId = matterId
|
|
43084
|
+
resultNameId = matterNameId
|
|
43085
|
+
try:
|
|
43086
|
+
result = callGAPI(v.matters().savedQueries(), 'create',
|
|
43087
|
+
throwReasons=[GAPI.NOT_FOUND, GAPI.BAD_REQUEST, GAPI.FORBIDDEN, GAPI.INVALID_ARGUMENT, GAPI.ALREADY_EXISTS],
|
|
43088
|
+
matterId=resultId, body=body)
|
|
43089
|
+
_showVaultQuery(resultNameId, result, cd, drive, FJQC)
|
|
43090
|
+
except (GAPI.notFound, GAPI.badRequest, GAPI.forbidden, GAPI.invalidArgument, GAPI.alreadyExists) as e:
|
|
43091
|
+
entityActionFailedWarning([Ent.VAULT_MATTER, resultNameId, Ent.VAULT_QUERY, body['displayName']], str(e))
|
|
43092
|
+
|
|
43093
|
+
# gam create vaultquery <MatterItem> [name <String>]
|
|
43094
|
+
# corpus calendar|drive|gemini|groups|hangouts_chat|mail|voice
|
|
43095
|
+
# [scope all_data|held_data|unprocessed_data]
|
|
43096
|
+
# (accounts <EmailAddressEntity>) | (orgunit|org|ou <OrgUnitPath>) | everyone|entireorg
|
|
43097
|
+
# (documentids (<DriveFileIDList>|(select <FileSelector>|<CSVFileSelector>))) |
|
|
43098
|
+
# (shareddrives|teamdrives (<SharedDriveIDList>|(select <FileSelector>|<CSVFileSelector>))) |
|
|
43099
|
+
# [(includeshareddrives <Boolean>)|(shareddrivesoption included|included_if_account_is_not_a_member|not_included)]
|
|
43100
|
+
# (sitesurl (<URLList>||(select <FileSelector>|<CSVFileSelector>)))
|
|
43101
|
+
# [driveversiondate <Date>|<Time>]
|
|
43102
|
+
# [includerooms <Boolean>]
|
|
43103
|
+
# (rooms (<ChatSpaceList>|(select <FileSelector>|<CSVFileSelector>))) |
|
|
43104
|
+
# [terms <String>] [start|starttime <Date>|<Time>] [end|endtime <Date>|<Time>] [timezone <TimeZone>]
|
|
43105
|
+
# [locationquery <StringList>] [peoplequery <StringList>] [minuswords <StringList>]
|
|
43106
|
+
# [responsestatuses <AttendeeStatus>(,<AttendeeStatus>)*] [calendarversiondate <Date>|<Time>]
|
|
43107
|
+
# (covereddata calllogs|textmessages|voicemails)*
|
|
43108
|
+
# [shownames] [formatjson]
|
|
43109
|
+
def doCreateVaultQuery():
|
|
43110
|
+
doCreateCopyVaultQuery(False)
|
|
43111
|
+
|
|
43112
|
+
# gam copy vaultquery <MatterItem> <QueryItem> [targetmatter <MatterItem"] [name <String>]
|
|
43113
|
+
# [shownames] [formatjson]
|
|
43114
|
+
def doCopyVaultQuery():
|
|
43115
|
+
doCreateCopyVaultQuery(True)
|
|
43116
|
+
|
|
43117
|
+
# gam delete vaultquery <QueryItem> matter <MatterItem>
|
|
43118
|
+
# gam delete vaultquery <MatterItem> <QueryItem>
|
|
43119
|
+
def doDeleteVaultQuery():
|
|
43120
|
+
v = buildGAPIObject(API.VAULT)
|
|
43121
|
+
if not Cmd.ArgumentIsAhead('matter'):
|
|
43122
|
+
matterId, matterNameId = getMatterItem(v)
|
|
43123
|
+
queryId, queryName, queryNameId, _ = convertQueryNameToID(v, getString(Cmd.OB_QUERY_ITEM), matterId, matterNameId)
|
|
43124
|
+
else:
|
|
43125
|
+
queryName = getString(Cmd.OB_QUERY_ITEM)
|
|
43126
|
+
while Cmd.ArgumentsRemaining():
|
|
43127
|
+
myarg = getArgument()
|
|
43128
|
+
if myarg == 'matter':
|
|
43129
|
+
matterId, matterNameId = getMatterItem(v)
|
|
43130
|
+
queryId, queryName, queryNameId, _ = convertQueryNameToID(v, queryName, matterId, matterNameId)
|
|
43131
|
+
else:
|
|
43132
|
+
unknownArgumentExit()
|
|
43133
|
+
try:
|
|
43134
|
+
callGAPI(v.matters().savedQueries(), 'delete',
|
|
43135
|
+
throwReasons=[GAPI.NOT_FOUND, GAPI.BAD_REQUEST, GAPI.FORBIDDEN, GAPI.INVALID_ARGUMENT],
|
|
43136
|
+
matterId=matterId, savedQueryId=queryId)
|
|
43137
|
+
entityActionPerformed([Ent.VAULT_MATTER, matterNameId, Ent.VAULT_QUERY, queryNameId])
|
|
43138
|
+
except (GAPI.notFound, GAPI.badRequest, GAPI.forbidden, GAPI.invalidArgument) as e:
|
|
43139
|
+
entityActionFailedWarning([Ent.VAULT_MATTER, matterNameId, Ent.VAULT_QUERY, queryNameId], str(e))
|
|
43140
|
+
|
|
43041
43141
|
VAULT_QUERY_FIELDS_CHOICE_MAP = {
|
|
43042
43142
|
'createtime': 'createTime',
|
|
43043
43143
|
'displayname': 'displayName',
|
|
@@ -43523,12 +43623,13 @@ def doPrintShowVaultMatters():
|
|
|
43523
43623
|
PRINT_VAULT_COUNTS_TITLES = ['account', 'count', 'error']
|
|
43524
43624
|
|
|
43525
43625
|
# gam print vaultcounts [todrive <ToDriveAttributes>*]
|
|
43526
|
-
# matter <MatterItem>
|
|
43527
|
-
#
|
|
43528
|
-
#
|
|
43529
|
-
#
|
|
43530
|
-
#
|
|
43531
|
-
# [scope
|
|
43626
|
+
# matter <MatterItem> <QueryItem>
|
|
43627
|
+
# [wait <Integer>]
|
|
43628
|
+
# gam print vaultcounts [todrive <ToDriveAttributes>*]
|
|
43629
|
+
# matter <MatterItem>
|
|
43630
|
+
# corpus mail|groups
|
|
43631
|
+
# [scope all_data|held_data|unprocessed_data]
|
|
43632
|
+
# (accounts <EmailAddressEntity>) | (orgunit|org|ou <OrgUnitPath>) | everyone|entireorg
|
|
43532
43633
|
# [terms <String>] [start|starttime <Date>|<Time>] [end|endtime <Date>|<Time>] [timezone <TimeZone>]
|
|
43533
43634
|
# [excludedrafts <Boolean>]
|
|
43534
43635
|
# [wait <Integer>]
|
|
@@ -43539,18 +43640,19 @@ def doPrintVaultCounts():
|
|
|
43539
43640
|
csvPF = CSVPrintFile(PRINT_VAULT_COUNTS_TITLES, 'sortall')
|
|
43540
43641
|
matterId = name = None
|
|
43541
43642
|
operationWait = 15
|
|
43542
|
-
body = {'view': 'ALL'}
|
|
43543
|
-
query = {}
|
|
43643
|
+
body = {'view': 'ALL', 'query': {}}
|
|
43544
43644
|
while Cmd.ArgumentsRemaining():
|
|
43545
43645
|
myarg = getArgument()
|
|
43546
43646
|
if csvPF and myarg == 'todrive':
|
|
43547
43647
|
csvPF.GetTodriveParameters()
|
|
43548
43648
|
elif myarg == 'matter':
|
|
43549
|
-
matterId,
|
|
43649
|
+
matterId, matterNameId = getMatterItem(v)
|
|
43650
|
+
elif matterId is not None and myarg == 'vaultquery':
|
|
43651
|
+
_, _, _, body['query'] = convertQueryNameToID(v, getString(Cmd.OB_QUERY_ITEM), matterId, matterNameId)
|
|
43550
43652
|
elif myarg == 'operation':
|
|
43551
43653
|
name = getString(Cmd.OB_STRING)
|
|
43552
43654
|
elif myarg in VAULT_QUERY_ARGS:
|
|
43553
|
-
_buildVaultQuery(myarg, query, VAULT_COUNTS_CORPUS_ARGUMENT_MAP)
|
|
43655
|
+
_buildVaultQuery(myarg, body['query'], VAULT_COUNTS_CORPUS_ARGUMENT_MAP)
|
|
43554
43656
|
elif myarg == 'wait':
|
|
43555
43657
|
operationWait = getInteger(minVal=1)
|
|
43556
43658
|
else:
|
|
@@ -43561,7 +43663,6 @@ def doPrintVaultCounts():
|
|
|
43561
43663
|
operation = {'name': name}
|
|
43562
43664
|
doWait = False
|
|
43563
43665
|
else:
|
|
43564
|
-
body['query'] = query
|
|
43565
43666
|
_validateVaultQuery(body, VAULT_COUNTS_CORPUS_ARGUMENT_MAP)
|
|
43566
43667
|
try:
|
|
43567
43668
|
operation = callGAPI(v.matters(), 'count',
|
|
@@ -77976,6 +78077,7 @@ MAIN_ADD_CREATE_FUNCTIONS = {
|
|
|
77976
78077
|
Cmd.ARG_VAULTEXPORT: doCreateVaultExport,
|
|
77977
78078
|
Cmd.ARG_VAULTHOLD: doCreateVaultHold,
|
|
77978
78079
|
Cmd.ARG_VAULTMATTER: doCreateVaultMatter,
|
|
78080
|
+
Cmd.ARG_VAULTQUERY: doCreateVaultQuery,
|
|
77979
78081
|
Cmd.ARG_VERIFY: doCreateSiteVerification,
|
|
77980
78082
|
}
|
|
77981
78083
|
|
|
@@ -78033,6 +78135,7 @@ MAIN_COMMANDS_WITH_OBJECTS = {
|
|
|
78033
78135
|
{Cmd.ARG_SHAREDDRIVEACLS: doCopySyncSharedDriveACLs,
|
|
78034
78136
|
Cmd.ARG_STORAGEBUCKET: doCopyCloudStorageBucket,
|
|
78035
78137
|
Cmd.ARG_VAULTEXPORT: doCopyVaultExport,
|
|
78138
|
+
Cmd.ARG_VAULTQUERY: doCopyVaultQuery,
|
|
78036
78139
|
}
|
|
78037
78140
|
),
|
|
78038
78141
|
'create':
|
|
@@ -78097,6 +78200,7 @@ MAIN_COMMANDS_WITH_OBJECTS = {
|
|
|
78097
78200
|
Cmd.ARG_VAULTEXPORT: doDeleteVaultExport,
|
|
78098
78201
|
Cmd.ARG_VAULTHOLD: doDeleteVaultHold,
|
|
78099
78202
|
Cmd.ARG_VAULTMATTER: doDeleteVaultMatter,
|
|
78203
|
+
Cmd.ARG_VAULTQUERY: doDeleteVaultQuery,
|
|
78100
78204
|
}
|
|
78101
78205
|
),
|
|
78102
78206
|
'download':
|
|
@@ -1216,6 +1216,7 @@ class GamCLArgs():
|
|
|
1216
1216
|
OB_DOMAIN_NAME_LIST = 'DomainNameList'
|
|
1217
1217
|
OB_DRIVE_FILE_ENTITY = 'DriveFileEntity'
|
|
1218
1218
|
OB_DRIVE_FILE_ID = 'DriveFileID'
|
|
1219
|
+
OB_DRIVE_FILE_ID_LIST = 'DriveFileIDList'
|
|
1219
1220
|
OB_DRIVE_FILE_NAME = 'DriveFileName'
|
|
1220
1221
|
OB_DRIVE_FILE_PERMISSION_ENTITY = 'DriveFilePermissionEntity'
|
|
1221
1222
|
OB_DRIVE_FILE_PERMISSION_ID = 'DriveFilePermissionID'
|
|
@@ -10,7 +10,22 @@ Add the `-s` option to the end of the above commands to suppress creating the `g
|
|
|
10
10
|
|
|
11
11
|
See [Downloads-Installs-GAM7](https://github.com/GAM-team/GAM/wiki/Downloads-Installs) for Windows or other options, including manual installation
|
|
12
12
|
|
|
13
|
-
###
|
|
13
|
+
### 7.22.05
|
|
14
|
+
|
|
15
|
+
Added a variant of `gam create vaultexport` that gets its query parameters from a saved Vault query.
|
|
16
|
+
|
|
17
|
+
```
|
|
18
|
+
gam create vaultexport|export matter <MatterItem> [name <String>]
|
|
19
|
+
vaultquery <QueryItem>
|
|
20
|
+
[driveclientsideencryption any|encrypted|unencrypted]
|
|
21
|
+
[includeaccessinfo <Boolean>]
|
|
22
|
+
[excludedrafts <Boolean>] [mailclientsideencryption any|encrypted|unencrypted]
|
|
23
|
+
[showconfidentialmodecontent <Boolean>] [usenewexport <Boolean>] [exportlinkeddrivefiles <Boolean>]
|
|
24
|
+
[format ics|mbox|pst|xml]
|
|
25
|
+
[region any|europe|us] [showdetails|returnidonly]
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
### 7.22.04
|
|
14
29
|
|
|
15
30
|
Added a variant of `gam create vaulthold` that gets its parameters from a saved Vault query.
|
|
16
31
|
```
|
|
@@ -252,7 +252,7 @@ writes the credentials into the file oauth2.txt.
|
|
|
252
252
|
admin@server:/Users/admin$ rm -f /Users/admin/GAMConfig/oauth2.txt
|
|
253
253
|
admin@server:/Users/admin$ gam version
|
|
254
254
|
WARNING: Config File: /Users/admin/GAMConfig/gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: /Users/admin/GAMConfig/oauth2.txt, Not Found
|
|
255
|
-
GAM 7.22.
|
|
255
|
+
GAM 7.22.05 - https://github.com/GAM-team/GAM - pyinstaller
|
|
256
256
|
GAM Team <google-apps-manager@googlegroups.com>
|
|
257
257
|
Python 3.13.7 64-bit final
|
|
258
258
|
MacOS Sequoia 15.6.1 x86_64
|
|
@@ -29,6 +29,7 @@
|
|
|
29
29
|
```
|
|
30
30
|
<DomainName> ::= <String>(.<String>)+
|
|
31
31
|
<EmailAddress> ::= <String>@<DomainName>
|
|
32
|
+
<JSONData> ::= (json [charset <Charset>] <String>) | (json file <FileName> [charset <Charset>]) |
|
|
32
33
|
<UniqueID> ::= id:<String>
|
|
33
34
|
<UserItem> ::= <EmailAddress>|<UniqueID>|<String>
|
|
34
35
|
|
|
@@ -243,7 +243,19 @@ gam print vaultcounts [todrive <ToDriveAttributes>*]
|
|
|
243
243
|
|
|
244
244
|
## Vault Exports
|
|
245
245
|
## Create Vault Exports
|
|
246
|
-
Create a Google Vault export request.
|
|
246
|
+
### Create a Google Vault export request using a saved Vault query.
|
|
247
|
+
```
|
|
248
|
+
gam create vaultexport|export matter <MatterItem> [name <String>]
|
|
249
|
+
vaultquery <QueryItem>
|
|
250
|
+
[driveclientsideencryption any|encrypted|unencrypted]
|
|
251
|
+
[includeaccessinfo <Boolean>]
|
|
252
|
+
[excludedrafts <Boolean>] [mailclientsideencryption any|encrypted|unencrypted]
|
|
253
|
+
[showconfidentialmodecontent <Boolean>] [usenewexport <Boolean>] [exportlinkeddrivefiles <Boolean>]
|
|
254
|
+
[format ics|mbox|pst|xml]
|
|
255
|
+
[region any|europe|us] [showdetails|returnidonly]
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
Create a Google Vault export request by specifying the query parameters.
|
|
247
259
|
```
|
|
248
260
|
gam create vaultexport|export matter <MatterItem> [name <String>] corpus calendar|drive|gemini|groups|hangouts_chat|mail|voice
|
|
249
261
|
(accounts <EmailAddressEntity>) | (orgunit|org|ou <OrgUnitPath>) | everyone
|
|
@@ -255,12 +267,13 @@ gam create vaultexport|export matter <MatterItem> [name <String>] corpus calenda
|
|
|
255
267
|
[locationquery <StringList>] [peoplequery <StringList>] [minuswords <StringList>]
|
|
256
268
|
[responsestatuses <AttendeeStatus>(,<AttendeeStatus>)*] [calendarversiondate <Date>|<Time>]
|
|
257
269
|
[(includeshareddrives <Boolean>)|(shareddrivesoption included|included_if_account_is_not_a_member|not_included)]
|
|
258
|
-
[driveversiondate <Date>|<Time>]
|
|
259
|
-
[driveclientsideencryption any|encrypted|unencrypted]
|
|
270
|
+
[driveversiondate <Date>|<Time>]
|
|
260
271
|
[includerooms <Boolean>]
|
|
272
|
+
(covereddata calllogs|textmessages|voicemails)*
|
|
273
|
+
[driveclientsideencryption any|encrypted|unencrypted]
|
|
274
|
+
[includeaccessinfo <Boolean>]
|
|
261
275
|
[excludedrafts <Boolean>] [mailclientsideencryption any|encrypted|unencrypted]
|
|
262
276
|
[showconfidentialmodecontent <Boolean>] [usenewexport <Boolean>] [exportlinkeddrivefiles <Boolean>]
|
|
263
|
-
(covereddata calllogs|textmessages|voicemails)*
|
|
264
277
|
[format ics|mbox|pst|xml]
|
|
265
278
|
[region any|europe|us] [showdetails|returnidonly]
|
|
266
279
|
```
|
|
@@ -366,7 +379,7 @@ For `corpus mail`, you can specify whether to enable exporting linked Drive file
|
|
|
366
379
|
See: https://support.google.com/vault/answer/4388708#new_gmail_export&zippy=%2Cfebruary-new-gmail-export-system-available
|
|
367
380
|
|
|
368
381
|
For `corpus calendar`, you can specify the format of the exported data:
|
|
369
|
-
* `format ics - Export in ICS format, this is the default
|
|
382
|
+
* `format ics` - Export in ICS format, this is the default
|
|
370
383
|
* `format pst` - Export in PST format
|
|
371
384
|
|
|
372
385
|
For `corpus drive`, you can not specify the format of the exported data,
|
|
@@ -377,7 +390,7 @@ For `corpus groups`, `corpus hangouts_chat`, `corpus mail` and `corpus voice`, y
|
|
|
377
390
|
* `format mbox` - Export in MBOX format, this is the default
|
|
378
391
|
* `format pst` - Export in PST format
|
|
379
392
|
|
|
380
|
-
For `corpus voice` you can specify
|
|
393
|
+
For `corpus voice` you can specify the data covered by the export,
|
|
381
394
|
multiple values are allowed.:
|
|
382
395
|
* `covereddata calllogs` - Call logs
|
|
383
396
|
* `covereddata textmessages` - Voice text messages
|
|
@@ -624,7 +637,8 @@ Use the `returnidonly` option to have only the hold ID displayed.
|
|
|
624
637
|
|
|
625
638
|
### Create a hold from parameters.
|
|
626
639
|
```
|
|
627
|
-
gam create vaulthold|hold matter <MatterItem> [name <String>]
|
|
640
|
+
gam create vaulthold|hold matter <MatterItem> [name <String>]
|
|
641
|
+
corpus calendar|drive|mail|groups|hangouts_chat|voice
|
|
628
642
|
[(accounts|groups|users <EmailItemList>) | (orgunit|org|ou <OrgUnit>)]
|
|
629
643
|
[query <QueryVaultCorpus>]
|
|
630
644
|
[terms <String>] [start|starttime <Date>|<Time>] [end|endtime <Date>|<Time>]
|
|
@@ -655,10 +669,10 @@ For `corpus drive`, you can specify advanced search options:
|
|
|
655
669
|
* `includeshareddrives False` - Files in shared drives are not included in the hold, this is the default
|
|
656
670
|
* `includeshareddrives True` - Files in shared drives are included in the hold
|
|
657
671
|
|
|
658
|
-
For `corpus mail`, you can specify search terms to limit the search.
|
|
672
|
+
For `corpus mail|group`, you can specify search terms to limit the search.
|
|
659
673
|
* `terms <String>` - [Vault search](https://support.google.com/vault/answer/2474474)
|
|
660
674
|
|
|
661
|
-
For `corpus mail`, you can specify time limits on the search:
|
|
675
|
+
For `corpus mail|group`, you can specify time limits on the search:
|
|
662
676
|
* `start|starttime <Date>|<Time>` - The start time range for the search query. These timestamps are in GMT and rounded down to the start of the given date.
|
|
663
677
|
* `end|endtime <Date>|<Time>` - The end time range for the search query. These timestamps are in GMT and rounded down to the start of the given date.
|
|
664
678
|
|
|
@@ -691,10 +705,10 @@ For a hold with `corpus drive`, you can specify advanced search options:
|
|
|
691
705
|
* `includeshareddrives False` - Files in shared drives are not included in the hold, this is the default
|
|
692
706
|
* `includeshareddrives True` - Files in shared drives are included in the hold
|
|
693
707
|
|
|
694
|
-
For a hold with `corpus mail`, you can specify search terms to limit the search.
|
|
708
|
+
For a hold with `corpus mail|groups`, you can specify search terms to limit the search.
|
|
695
709
|
* `terms <String>` - [Vault search](https://support.google.com/vault/answer/2474474)
|
|
696
710
|
|
|
697
|
-
For a hold with `corpus
|
|
711
|
+
For a hold with `corpus mai|groupsl`, you can specify time limits on the search:
|
|
698
712
|
* `start|starttime <Date>|<Time>` - The start time range for the search query. These timestamps are in GMT and rounded down to the start of the given date.
|
|
699
713
|
* `end|endtime <Date>|<Time>` - The end time range for the search query. These timestamps are in GMT and rounded down to the start of the given date.
|
|
700
714
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Print the current version of Gam with details
|
|
4
4
|
```
|
|
5
5
|
gam version
|
|
6
|
-
GAM 7.22.
|
|
6
|
+
GAM 7.22.05 - https://github.com/GAM-team/GAM - pyinstaller
|
|
7
7
|
GAM Team <google-apps-manager@googlegroups.com>
|
|
8
8
|
Python 3.13.7 64-bit final
|
|
9
9
|
macOS Sequoia 15.7 x86_64
|
|
@@ -15,7 +15,7 @@ Time: 2023-06-02T21:10:00-07:00
|
|
|
15
15
|
Print the current version of Gam with details and time offset information
|
|
16
16
|
```
|
|
17
17
|
gam version timeoffset
|
|
18
|
-
GAM 7.22.
|
|
18
|
+
GAM 7.22.05 - https://github.com/GAM-team/GAM - pyinstaller
|
|
19
19
|
GAM Team <google-apps-manager@googlegroups.com>
|
|
20
20
|
Python 3.13.7 64-bit final
|
|
21
21
|
macOS Sequoia 15.7 x86_64
|
|
@@ -27,7 +27,7 @@ Your system time differs from www.googleapis.com by less than 1 second
|
|
|
27
27
|
Print the current version of Gam with extended details and SSL information
|
|
28
28
|
```
|
|
29
29
|
gam version extended
|
|
30
|
-
GAM 7.22.
|
|
30
|
+
GAM 7.22.05 - https://github.com/GAM-team/GAM - pyinstaller
|
|
31
31
|
GAM Team <google-apps-manager@googlegroups.com>
|
|
32
32
|
Python 3.13.7 64-bit final
|
|
33
33
|
macOS Sequoia 15.7 x86_64
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|