gam7 7.16.0__tar.gz → 7.17.0__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.16.0 → gam7-7.17.0}/PKG-INFO +1 -1
- {gam7-7.16.0 → gam7-7.17.0}/src/GamCommands.txt +15 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/GamUpdate.txt +33 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/__init__.py +103 -1
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gamlib/glapi.py +13 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gamlib/glclargs.py +4 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gamlib/glentity.py +4 -0
- gam7-7.17.0/wiki/Drive-REST-API-v3.md +77 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/GamUpdates.md +29 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/How-to-Upgrade-Legacy-GAM-to-GAM7.md +3 -2
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Drive-Files-Display.md +10 -4
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Drive-Files-Manage.md +1 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Version-and-Help.md +6 -7
- gam7-7.16.0/wiki/Drive-REST-API-v3.md +0 -93
- {gam7-7.16.0 → gam7-7.17.0}/.github/ISSUE_TEMPLATE/aa-question.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/.github/ISSUE_TEMPLATE/za-bug-report.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/.github/ISSUE_TEMPLATE/zz-feature-request.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/.github/ISSUE_TEMPLATE.txt +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/.github/actions/decrypt.sh +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/.github/actions/entitlements.plist +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/.github/actions/package_exclusions.txt +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/.github/stale.yml +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/.github/workflows/build.yml +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/.github/workflows/codeql-analysis.yml +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/.github/workflows/get-cacerts.yml +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/.github/workflows/pushwiki.yml +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/.github/workflows/pypi.yml +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/.pre-commit-config.yaml +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/LICENSE +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/README.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/pyproject.toml +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/.gitignore +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/LICENSE +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/README.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/cacerts.pem +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/callgam.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/__main__.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/atom/__init__.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/atom/auth.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/atom/client.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/atom/core.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/atom/data.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/atom/http.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/atom/http_core.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/atom/http_interface.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/atom/mock_http.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/atom/mock_http_core.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/atom/mock_service.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/atom/service.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/atom/token_store.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/atom/url.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/cacerts.pem +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/cbcm-v1.1beta1.json +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/contactdelegation-v1.json +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/datastudio-v1.json +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gamlib/__init__.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gamlib/glaction.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gamlib/glcfg.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gamlib/glgapi.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gamlib/glgdata.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gamlib/glglobals.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gamlib/glindent.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gamlib/glmsgs.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gamlib/glskus.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gamlib/gluprop.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gamlib/glverlibs.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gamlib/yubikey.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gdata/__init__.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gdata/alt/__init__.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gdata/alt/app_engine.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gdata/alt/appengine.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gdata/apps/__init__.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gdata/apps/audit/__init__.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gdata/apps/audit/service.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gdata/apps/contacts/__init__.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gdata/apps/contacts/service.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gdata/apps/service.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gdata/service.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/gdata/urlfetch.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/googleapiclient/__init__.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/googleapiclient/_auth.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/googleapiclient/_helpers.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/googleapiclient/channel.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/googleapiclient/discovery.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/googleapiclient/discovery_cache/__init__.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/googleapiclient/discovery_cache/appengine_memcache.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/googleapiclient/discovery_cache/base.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/googleapiclient/discovery_cache/file_cache.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/googleapiclient/errors.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/googleapiclient/http.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/googleapiclient/mimeparse.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/googleapiclient/model.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/googleapiclient/schema.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/googleapiclient/version.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/iso8601/__init__.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/iso8601/iso8601.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/meet-v2beta.json +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/serviceaccountlookup-v1.json +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam/six.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam-install.sh +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam-setup.bat +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam.exe.manifest +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam.spec +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/gam.wxs +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/license.rtf +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/requirements-dev.txt +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/tools/a_atleast_b.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/tools/gen-wix-xml-filelist.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/tools/mkGamRef.py +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/tools/openssl.props +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/src/version_info.txt.in +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/00scratch.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Addresses.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Administrators.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Alert-Center.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Aliases.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Authorization.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/BNF-Syntax.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Basic-Items.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Bulk-Processing.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/CSV-Input-Filtering.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/CSV-Output-Filtering.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/CSV-Special-Characters.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Calendars-Access.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Calendars-Events.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Calendars.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Chat-Bot.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Chrome-AUE-Counts.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Chrome-Browser-Cloud-Management.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Chrome-Installed-Apps.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Chrome-Needs-Attention-Counts.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Chrome-Policies.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Chrome-Printers.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Chrome-Profile-Management.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Chrome-Version-Counts.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Chrome-Version-History.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/ChromeOS-Devices.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Classroom-Courses.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Classroom-Guardians.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Classroom-Invitations.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Classroom-Membership.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Cloud-Channel.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Cloud-Identity-Devices.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Cloud-Identity-Groups-Membership.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Cloud-Identity-Groups.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Cloud-Identity-Policies.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Cloud-Storage.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Collections-of-ChromeOS-Devices.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Collections-of-Items.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Collections-of-Users.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Command-Data-From-Google-Docs-Sheets-Storage.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Command-Line-Parsing.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Command-Logging-Progress.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Context-Aware-Access-Levels.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Customer.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Domain-People-Contacts-Profiles.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Domain-SharedContacts.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Domains-Verification.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Domains.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Downloads-Installs.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Drive-File-Selection.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Drive-Items.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Email-Audit-Monitor.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Find-File-Owner.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/GAM-Public-Chat-Room.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/GAM-Return-Codes.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/GAM-with-minimal-GCP-rights.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/GAM7-on-Android-Devices.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/GAM7-on-Chrome-OS-Devices.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Global-Address-List.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Google-Data-Transfers.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Google-Network-Addresses.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Groups-Membership.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Groups.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/HTTPS-Proxy.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Home.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/How-to-Install-GAM7.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/How-to-Uninstall-GAM7.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/How-to-Update-GAM7.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/How-to-Upgrade-GAMADV-XTD3-to-GAM7.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Inbound-SSO.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Install-GAM-as-Python-Library.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Licenses.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/List-Items.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/List.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Meta-Commands-and-File-Redirection.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Mobile-Devices.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Organizational-Units.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Other-Resources.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Permission-Matches.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Python-Regular-Expressions.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/README.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Rclone.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Reports.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Reseller.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Resources.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Running-GAM7-securely-on-a-Google-Compute-Engine.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/SSL-Root-CA-Certificates.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Schemas.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Scripts.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Send-Email.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Shared-Drives.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Sites.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Tag-Replace.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Todrive.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Unmanaged-Accounts.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Upgrade-Benefits.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Analytics-Admin.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Application-Specific-Passwords.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Backup-Verification-Codes.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Calendars-Access.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Calendars-Events.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Calendars.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Chat.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Classification-Labels.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Classroom-Profile.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Contacts-Delegates.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Contacts.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Deprovision.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Drive-Activity-Settings.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Drive-Cleanup.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Drive-Comments.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Drive-Copy-Move.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Drive-Orphans.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Drive-Ownership.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Drive-Permissions.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Drive-Query.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Drive-Revisions.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Drive-Shortcuts.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Drive-Transfer.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Forms.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Gmail-CSE.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Gmail-Delegates.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Gmail-Filters.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Gmail-Forwarding.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Gmail-Labels.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Gmail-Messages-Threads.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Gmail-Profile.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Gmail-S-MIME.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Gmail-Send-As-Signature-Vacation.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Gmail-Settings.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Group-Membership.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Keep-Notes.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Looker-Studio.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Meet.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-People-Contacts-Profiles.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Photo.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Profile-Photo.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Profile-Sharing.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Shared-Drives.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Signout-Turnoff2SV.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Spreadsheets.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Tag-Manager.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Tasks.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-Tokens.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users-YouTube.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Users.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Using-GAM7-with-a-YubiKey.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Using-GAM7-with-a-delegated-admin-service-account.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Vault-Takeout.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/Verifying-a-GAM7-Build-is-Legitimate-and-Official.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/_Sidebar.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/gam.cfg.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-AdminSettingsExamples.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Android-Installation.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-BulkOperations.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-CalendarExamples.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Chat-Bot.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Chrome-Browser-Management.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Chrome-OS-Installation.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Chrome-Policy-Settings.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Cloud-Identity-Groups.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Command-Reference-Calendar-Resources.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Command-Reference-Calendars.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Command-Reference-Definitions.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Command-Reference-Drive.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Command-Reference-Email.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Command-Reference-Group-Attributes.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Command-Reference-Groups.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Command-Reference-Users.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Context-Aware-Access-Levels.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Creating-client_secrets.json-and-oauth2service.json.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-CreatingClientSecretsFile.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Custom-Schemas.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Data-Transfers.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-DomainVerification.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-ExamplesAccountAuditing.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-ExamplesCSV.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-ExamplesEmailSettings.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-ExamplesOrganizations.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-GAM-Discussion-Group.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-GAM-on-Android-and-Chrome-OS.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-GAM-options-files.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-GAM-with--minimal-GCP-rights.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-GAM3CSVListings.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-GAM3DirectoryCommands.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-GAM3GroupSettings.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-GAM7-FAQ.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Google-Vault---Takeout-Commands.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-GoogleDriveManagement.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Grouping-18-or-Older-Users.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Home.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-How-to-upgrade-from-Standard-GAM.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Inbound-SSO-Settings.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-LicenseExamples.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Managing-Admins.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Managing-CloudPrint-Printers.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Managing-Devices.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Managing-Google-Classroom.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-OAuthKeyManagement.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Printers.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-ResellerCommands.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Running-GAM-on-Google-Compute-Engine-(GCE)-Securely.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-SecurityExamples.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-UnmanagedUsersExamples.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Use-a-Yubikey.md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-Using-GAM-with-a-delegated-admin-service-account-(DASA).md +0 -0
- {gam7-7.16.0 → gam7-7.17.0}/wiki/l-_Footer.md +0 -0
|
@@ -6597,6 +6597,7 @@ gam <UserTypeEntity> print chatemojis [todrive <ToDriveAttribute>*]
|
|
|
6597
6597
|
(folderColorRgb <ColorValue>)|
|
|
6598
6598
|
(indexabletext <String>)|
|
|
6599
6599
|
(inheritedpermissionsdisabled [<Boolean>])|
|
|
6600
|
+
(itemdownloadrestriction restrictedforreaders|restrictedforwriters [<Boolean>])|
|
|
6600
6601
|
(keeprevisionforever|pinned)|
|
|
6601
6602
|
(lastviewedbyme <Time>)|
|
|
6602
6603
|
(mimetype <MimeType>)|
|
|
@@ -7071,6 +7072,10 @@ gam <UserTypeEntity> collect orphans
|
|
|
7071
7072
|
contentrestrictions.restrictiontime|
|
|
7072
7073
|
contentrestrictions.type
|
|
7073
7074
|
|
|
7075
|
+
<DriveDownloadRestrictionsSubfieldName> ::=
|
|
7076
|
+
downloadrestrictions.itemdownloadrestriction|
|
|
7077
|
+
downloadrestrictions.effectivedownloadrestrictionwithcontext
|
|
7078
|
+
|
|
7074
7079
|
<ClassificationLabelInfoSubfieldName> ::=
|
|
7075
7080
|
labels.id| # modifiedByMe
|
|
7076
7081
|
labels.revisionid| # copyRequiresWriterPermission
|
|
@@ -7164,6 +7169,8 @@ gam <UserTypeEntity> collect orphans
|
|
|
7164
7169
|
copyrequireswriterpermission|
|
|
7165
7170
|
createddate|createdtime|
|
|
7166
7171
|
description|
|
|
7172
|
+
downloadrestictions|
|
|
7173
|
+
<DriveDownloadRestrictionsSubfieldName>|
|
|
7167
7174
|
driveid|
|
|
7168
7175
|
drivename|
|
|
7169
7176
|
editable|
|
|
@@ -8696,3 +8703,11 @@ gam <UserTypeEntity> print youtubechannels [todrive <ToDriveAttribute>*]
|
|
|
8696
8703
|
gam create|add verify|verification <DomainName>
|
|
8697
8704
|
gam update verify|verification <DomainName> cname|txt|text|site|file
|
|
8698
8705
|
gam info verify|verification
|
|
8706
|
+
|
|
8707
|
+
# Web Resourses and Sites
|
|
8708
|
+
|
|
8709
|
+
gam <UserTypeEntity> show webresources
|
|
8710
|
+
gam <UserTypeEntity> print webresources [todrive <ToDriveAttribute>*]
|
|
8711
|
+
gam <UserTypeEntity> show webmastersites
|
|
8712
|
+
gam <UserTypeEntity> print webmastersites [todrive <ToDriveAttribute>*]
|
|
8713
|
+
```
|
|
@@ -1,3 +1,36 @@
|
|
|
1
|
+
7.17.00
|
|
2
|
+
|
|
3
|
+
Added commands to discover Sites and WebResources that managed users (previously unmanaged) may have access to for better governance and visibility.
|
|
4
|
+
These are special purpose commands and will not generally be used.
|
|
5
|
+
```
|
|
6
|
+
gam <UserTypeEntity> show webresources
|
|
7
|
+
gam <UserTypeEntity> print webresources [todrive <ToDriveAttribute>*]
|
|
8
|
+
gam <UserTypeEntity> show webmastersites
|
|
9
|
+
gam <UserTypeEntity> print webmastersites [todrive <ToDriveAttribute>*]
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
7.16.01
|
|
13
|
+
|
|
14
|
+
The Drive API now supports setting download restrictions on individual files.
|
|
15
|
+
|
|
16
|
+
Added `downloadrestictions` and `<DriveDownloadRestrictionsSubfieldName>` to `<DriveFieldName>`.
|
|
17
|
+
```
|
|
18
|
+
<DriveDownloadRestrictionsSubfieldName> ::=
|
|
19
|
+
downloadrestrictions.itemdownloadrestriction|
|
|
20
|
+
downloadrestrictions.effectivedownloadrestrictionwithcontext
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Added `itemdownloadrestriction restrictedforreaders|restrictedforwriters [<Boolean>]`
|
|
24
|
+
to `<DriveFileAttribute>`.
|
|
25
|
+
|
|
26
|
+
From the Drive API documentation:
|
|
27
|
+
```
|
|
28
|
+
itemDownloadRestriction - The download restriction of the file applied directly by the owner or organizer. This does not take into account shared drive settings or DLP rules.
|
|
29
|
+
effectiveDownloadRestrictionWithContext - Output only. The effective download restriction applied to this file. This considers all restriction settings and DLP rules.
|
|
30
|
+
restrictedForReaders - Whether download and copy is restricted for readers.
|
|
31
|
+
restrictedForWriters - Whether download and copy is restricted for writers. If true, download is also restricted for readers.
|
|
32
|
+
```
|
|
33
|
+
|
|
1
34
|
7.16.00
|
|
2
35
|
|
|
3
36
|
Removed `drive_v3_native_names` from `gam.cfg`; GAM now only uses Drive API v3 fields names on output.
|
|
@@ -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.
|
|
28
|
+
__version__ = '7.17.00'
|
|
29
29
|
__license__ = 'Apache License 2.0 (http://www.apache.org/licenses/LICENSE-2.0)'
|
|
30
30
|
|
|
31
31
|
#pylint: disable=wrong-import-position
|
|
@@ -47077,6 +47077,72 @@ def doInfoSiteVerification():
|
|
|
47077
47077
|
else:
|
|
47078
47078
|
printKeyValueList(['No Sites Verified.'])
|
|
47079
47079
|
|
|
47080
|
+
# gam <UserTypeEntity> show webresources
|
|
47081
|
+
# gam <UserTypeEntity> print webresources [todrive <ToDriveAttribute>*]
|
|
47082
|
+
def printShowWebResources(users):
|
|
47083
|
+
csvPF = CSVPrintFile(['User', 'site.identifier']) if Act.csvFormat() else None
|
|
47084
|
+
while Cmd.ArgumentsRemaining():
|
|
47085
|
+
myarg = getArgument()
|
|
47086
|
+
if csvPF and myarg == 'todrive':
|
|
47087
|
+
csvPF.GetTodriveParameters()
|
|
47088
|
+
else:
|
|
47089
|
+
unknownArgumentExit()
|
|
47090
|
+
i, count, users = getEntityArgument(users)
|
|
47091
|
+
for user in users:
|
|
47092
|
+
i += 1
|
|
47093
|
+
user, verif = buildGAPIServiceObject(API.SITEVERIFICATION, user, i, count)
|
|
47094
|
+
if not verif:
|
|
47095
|
+
continue
|
|
47096
|
+
sites = callGAPIitems(verif.webResource(), 'list', 'items')
|
|
47097
|
+
jcount = len(sites)
|
|
47098
|
+
if not csvPF:
|
|
47099
|
+
entityPerformActionNumItems([Ent.USER, user], jcount, Ent.WEB_RESOURCE, i, count)
|
|
47100
|
+
Ind.Increment()
|
|
47101
|
+
j = 0
|
|
47102
|
+
for site in sorted(sites, key=lambda k: (k['site']['type'], k['site']['identifier'])):
|
|
47103
|
+
j += 1
|
|
47104
|
+
_showSiteVerificationInfo(site)
|
|
47105
|
+
Ind.Decrement()
|
|
47106
|
+
else:
|
|
47107
|
+
for site in sites:
|
|
47108
|
+
row = flattenJSON(site, flattened={'User': user})
|
|
47109
|
+
csvPF.WriteRowTitles(row)
|
|
47110
|
+
if csvPF:
|
|
47111
|
+
csvPF.writeCSVfile('Web Resources')
|
|
47112
|
+
|
|
47113
|
+
# gam <UserTypeEntity> show webmastersites
|
|
47114
|
+
# gam <UserTypeEntity> print webmastersites [todrive <ToDriveAttribute>*]
|
|
47115
|
+
def printShowWebMasterSites(users):
|
|
47116
|
+
csvPF = CSVPrintFile(['User', 'siteUrl']) if Act.csvFormat() else None
|
|
47117
|
+
while Cmd.ArgumentsRemaining():
|
|
47118
|
+
myarg = getArgument()
|
|
47119
|
+
if csvPF and myarg == 'todrive':
|
|
47120
|
+
csvPF.GetTodriveParameters()
|
|
47121
|
+
else:
|
|
47122
|
+
unknownArgumentExit()
|
|
47123
|
+
i, count, users = getEntityArgument(users)
|
|
47124
|
+
for user in users:
|
|
47125
|
+
i += 1
|
|
47126
|
+
user, searchconsole = buildGAPIServiceObject(API.SEARCHCONSOLE, user, i, count)
|
|
47127
|
+
if not searchconsole:
|
|
47128
|
+
continue
|
|
47129
|
+
sites = callGAPIitems(searchconsole.sites(), 'list', 'siteEntry')
|
|
47130
|
+
jcount = len(sites)
|
|
47131
|
+
if not csvPF:
|
|
47132
|
+
entityPerformActionNumItems([Ent.USER, user], jcount, Ent.WEB_MASTERSITE, i, count)
|
|
47133
|
+
Ind.Increment()
|
|
47134
|
+
j = 0
|
|
47135
|
+
for site in sorted(sites, key=lambda k: k['siteUrl']):
|
|
47136
|
+
j += 1
|
|
47137
|
+
_showSiteVerificationInfo(site)
|
|
47138
|
+
Ind.Decrement()
|
|
47139
|
+
else:
|
|
47140
|
+
for site in sites:
|
|
47141
|
+
row = flattenJSON(site, flattened={'User': user})
|
|
47142
|
+
csvPF.WriteRowTitles(row)
|
|
47143
|
+
if csvPF:
|
|
47144
|
+
csvPF.writeCSVfile('Web Master Sites')
|
|
47145
|
+
|
|
47080
47146
|
def checkCourseExists(croom, courseId, i=0, count=0, entityType=Ent.COURSE):
|
|
47081
47147
|
courseId = addCourseIdScope(courseId)
|
|
47082
47148
|
try:
|
|
@@ -53817,6 +53883,13 @@ DRIVE_FILE_CONTENT_RESTRICTIONS_CHOICE_MAP = {
|
|
|
53817
53883
|
'ownerrestricted': 'ownerRestricted',
|
|
53818
53884
|
}
|
|
53819
53885
|
|
|
53886
|
+
DRIVE_FILE_ITEM_DOWNLOAD_RESTRICTION_CHOICE_MAP = {
|
|
53887
|
+
'downloadrestrictedforreaders': 'restrictedForReaders',
|
|
53888
|
+
'downloadrestrictedforwriters': 'restrictedForWriters',
|
|
53889
|
+
'restrictedforreaders': 'restrictedForReaders',
|
|
53890
|
+
'restrictedforwriters': 'restrictedForWriters',
|
|
53891
|
+
}
|
|
53892
|
+
|
|
53820
53893
|
def getDriveFileProperty(visibility=None):
|
|
53821
53894
|
key = getString(Cmd.OB_PROPERTY_KEY)
|
|
53822
53895
|
value = getString(Cmd.OB_PROPERTY_VALUE, minLen=0) or None
|
|
@@ -53868,6 +53941,20 @@ def getDriveFileAddRemoveParentAttribute(myarg, parameters):
|
|
|
53868
53941
|
return False
|
|
53869
53942
|
return True
|
|
53870
53943
|
|
|
53944
|
+
def _getDriveFileDownloadRestrictions(myarg, body):
|
|
53945
|
+
subField = myarg
|
|
53946
|
+
if subField.startswith('downloadrestrictions.'):
|
|
53947
|
+
_, subField = subField.split('.', 1)
|
|
53948
|
+
if subField.startswith('itemdownloadrestriction.'):
|
|
53949
|
+
_, subField = subField.split('.', 1)
|
|
53950
|
+
if subField == 'itemdownloadrestriction':
|
|
53951
|
+
subField = getChoice(DRIVE_FILE_ITEM_DOWNLOAD_RESTRICTION_CHOICE_MAP)
|
|
53952
|
+
if subField in DRIVE_FILE_ITEM_DOWNLOAD_RESTRICTION_CHOICE_MAP:
|
|
53953
|
+
body.setdefault('downloadRestrictions', {'itemDownloadRestriction': {}})
|
|
53954
|
+
body['downloadRestrictions']['itemDownloadRestriction'][DRIVE_FILE_ITEM_DOWNLOAD_RESTRICTION_CHOICE_MAP[subField]] = getBoolean()
|
|
53955
|
+
return True
|
|
53956
|
+
return False
|
|
53957
|
+
|
|
53871
53958
|
def getDriveFileCopyAttribute(myarg, body, parameters):
|
|
53872
53959
|
if myarg == 'ignoredefaultvisibility':
|
|
53873
53960
|
parameters[DFA_IGNORE_DEFAULT_VISIBILITY] = getBoolean()
|
|
@@ -53903,6 +53990,8 @@ def getDriveFileCopyAttribute(myarg, body, parameters):
|
|
|
53903
53990
|
else:
|
|
53904
53991
|
Cmd.Backup()
|
|
53905
53992
|
usageErrorExit(Msg.REASON_ONLY_VALID_WITH_CONTENTRESTRICTIONS_READONLY_TRUE)
|
|
53993
|
+
elif _getDriveFileDownloadRestrictions(myarg, body):
|
|
53994
|
+
pass
|
|
53906
53995
|
elif myarg == 'inheritedpermissionsdisabled':
|
|
53907
53996
|
body['inheritedPermissionsDisabled'] = getBoolean()
|
|
53908
53997
|
elif myarg == 'property':
|
|
@@ -54657,6 +54746,7 @@ DRIVE_FIELDS_CHOICE_MAP = {
|
|
|
54657
54746
|
'createddate': 'createdTime',
|
|
54658
54747
|
'createdtime': 'createdTime',
|
|
54659
54748
|
'description': 'description',
|
|
54749
|
+
'downloadrestrictions': 'downloadRestrictions',
|
|
54660
54750
|
'driveid': 'driveId',
|
|
54661
54751
|
'drivename': 'driveId',
|
|
54662
54752
|
'editable': 'capabilities.canEdit',
|
|
@@ -54803,6 +54893,11 @@ DRIVE_CONTENT_RESTRICTIONS_SUBFIELDS_CHOICE_MAP = {
|
|
|
54803
54893
|
'type': 'type',
|
|
54804
54894
|
}
|
|
54805
54895
|
|
|
54896
|
+
DRIVE_DOWNLOAD_RESTRICTIONS_SUBFIELDS_CHOICE_MAP = {
|
|
54897
|
+
'itemdownloadrestriction': 'itemDownloadRestriction',
|
|
54898
|
+
'effectivedownloadrestrictionwithcontext': 'effectiveDownloadRestrictionWithContext',
|
|
54899
|
+
}
|
|
54900
|
+
|
|
54806
54901
|
DRIVE_LABELINFO_SUBFIELDS_CHOICE_MAP = {
|
|
54807
54902
|
'id': 'labels(id)',
|
|
54808
54903
|
'fields': 'labels(fields)',
|
|
@@ -54867,6 +54962,7 @@ DRIVE_SHORTCUTDETAILS_SUBFIELDS_CHOICE_MAP = {
|
|
|
54867
54962
|
DRIVE_SUBFIELDS_CHOICE_MAP = {
|
|
54868
54963
|
'capabilities': DRIVE_CAPABILITIES_SUBFIELDS_CHOICE_MAP,
|
|
54869
54964
|
'contentrestrictions': DRIVE_CONTENT_RESTRICTIONS_SUBFIELDS_CHOICE_MAP,
|
|
54965
|
+
'downloadrestrictions': DRIVE_DOWNLOAD_RESTRICTIONS_SUBFIELDS_CHOICE_MAP,
|
|
54870
54966
|
'labelinfo': DRIVE_LABELINFO_SUBFIELDS_CHOICE_MAP,
|
|
54871
54967
|
'labels': DRIVE_LABEL_CHOICE_MAP,
|
|
54872
54968
|
'lastmodifyinguser': DRIVE_SHARINGUSER_SUBFIELDS_CHOICE_MAP,
|
|
@@ -78268,6 +78364,8 @@ USER_COMMANDS_WITH_OBJECTS = {
|
|
|
78268
78364
|
Cmd.ARG_USERLIST: doPrintUserList,
|
|
78269
78365
|
Cmd.ARG_VACATION: printShowVacation,
|
|
78270
78366
|
Cmd.ARG_VAULTHOLD: printShowUserVaultHolds,
|
|
78367
|
+
Cmd.ARG_WEBMASTERSITE: printShowWebMasterSites,
|
|
78368
|
+
Cmd.ARG_WEBRESOURCE: printShowWebResources,
|
|
78271
78369
|
Cmd.ARG_WORKINGLOCATION: printShowWorkingLocation,
|
|
78272
78370
|
Cmd.ARG_YOUTUBECHANNEL: printShowYouTubeChannel,
|
|
78273
78371
|
}
|
|
@@ -78378,6 +78476,8 @@ USER_COMMANDS_WITH_OBJECTS = {
|
|
|
78378
78476
|
Cmd.ARG_TOKEN: printShowTokens,
|
|
78379
78477
|
Cmd.ARG_VAULTHOLD: printShowUserVaultHolds,
|
|
78380
78478
|
Cmd.ARG_VACATION: printShowVacation,
|
|
78479
|
+
Cmd.ARG_WEBMASTERSITE: printShowWebMasterSites,
|
|
78480
|
+
Cmd.ARG_WEBRESOURCE: printShowWebResources,
|
|
78381
78481
|
Cmd.ARG_WORKINGLOCATION: printShowWorkingLocation,
|
|
78382
78482
|
Cmd.ARG_YOUTUBECHANNEL: printShowYouTubeChannel,
|
|
78383
78483
|
}
|
|
@@ -78629,6 +78729,8 @@ USER_COMMANDS_OBJ_ALIASES = {
|
|
|
78629
78729
|
Cmd.ARG_USERS: Cmd.ARG_USER,
|
|
78630
78730
|
Cmd.ARG_VAULTHOLDS: Cmd.ARG_VAULTHOLD,
|
|
78631
78731
|
Cmd.ARG_VERIFICATIONCODES: Cmd.ARG_BACKUPCODE,
|
|
78732
|
+
Cmd.ARG_WEBMASTERSITES: Cmd.ARG_WEBMASTERSITE,
|
|
78733
|
+
Cmd.ARG_WEBRESOURCES: Cmd.ARG_WEBRESOURCE,
|
|
78632
78734
|
Cmd.ARG_WORKINGLOCATIONS: Cmd.ARG_WORKINGLOCATION,
|
|
78633
78735
|
Cmd.ARG_YOUTUBECHANNELS: Cmd.ARG_YOUTUBECHANNEL,
|
|
78634
78736
|
}
|
|
@@ -85,6 +85,7 @@ PRINTERS = 'printers'
|
|
|
85
85
|
PUBSUB = 'pubsub'
|
|
86
86
|
REPORTS = 'reports'
|
|
87
87
|
RESELLER = 'reseller'
|
|
88
|
+
SEARCHCONSOLE = 'searchconsole'
|
|
88
89
|
SERVICEACCOUNTLOOKUP = 'serviceaccountlookup'
|
|
89
90
|
SERVICEMANAGEMENT = 'servicemanagement'
|
|
90
91
|
SERVICEUSAGE = 'serviceusage'
|
|
@@ -198,6 +199,7 @@ PROJECT_APIS = [
|
|
|
198
199
|
'people.googleapis.com',
|
|
199
200
|
'pubsub.googleapis.com',
|
|
200
201
|
'reseller.googleapis.com',
|
|
202
|
+
'searchconsole.googleapis.com',
|
|
201
203
|
'sheets.googleapis.com',
|
|
202
204
|
'siteverification.googleapis.com',
|
|
203
205
|
'storage-api.googleapis.com',
|
|
@@ -271,6 +273,7 @@ _INFO = {
|
|
|
271
273
|
PUBSUB: {'name': 'Pub / Sub API', 'version': 'v1', 'v2discovery': True},
|
|
272
274
|
REPORTS: {'name': 'Reports API', 'version': 'reports_v1', 'v2discovery': True, 'mappedAPI': 'admin'},
|
|
273
275
|
RESELLER: {'name': 'Reseller API', 'version': 'v1', 'v2discovery': True},
|
|
276
|
+
SEARCHCONSOLE: {'name': 'Search Console API', 'version': 'v1', 'v2discovery': True},
|
|
274
277
|
SERVICEACCOUNTLOOKUP: {'name': 'Service Account Lookup pseudo-API', 'version': 'v1', 'v2discovery': True, 'localjson': True},
|
|
275
278
|
SERVICEMANAGEMENT: {'name': 'Service Management API', 'version': 'v1', 'v2discovery': True},
|
|
276
279
|
SERVICEUSAGE: {'name': 'Service Usage API', 'version': 'v1', 'v2discovery': True},
|
|
@@ -697,10 +700,20 @@ _SVCACCT_SCOPES = [
|
|
|
697
700
|
'api': PEOPLE_OTHERCONTACTS,
|
|
698
701
|
'subscopes': [],
|
|
699
702
|
'scope': 'https://www.googleapis.com/auth/contacts.other.readonly'},
|
|
703
|
+
{'name': 'Search Console API - read only',
|
|
704
|
+
'api': SEARCHCONSOLE,
|
|
705
|
+
'subscopes': [],
|
|
706
|
+
'offByDefault': True,
|
|
707
|
+
'scope': 'https://www.googleapis.com/auth/webmasters.readonly'},
|
|
700
708
|
{'name': 'Sheets API',
|
|
701
709
|
'api': SHEETS,
|
|
702
710
|
'subscopes': READONLY,
|
|
703
711
|
'scope': 'https://www.googleapis.com/auth/spreadsheets'},
|
|
712
|
+
{'name': 'Site Verification API',
|
|
713
|
+
'api': SITEVERIFICATION,
|
|
714
|
+
'subscopes': [],
|
|
715
|
+
'offByDefault': True,
|
|
716
|
+
'scope': 'https://www.googleapis.com/auth/siteverification'},
|
|
704
717
|
{'name': 'Tag Manager API - Accounts, Containers, Workspaces, Tags - read only',
|
|
705
718
|
'api': TAGMANAGER,
|
|
706
719
|
'subscopes': [],
|
|
@@ -830,6 +830,10 @@ class GamCLArgs():
|
|
|
830
830
|
ARG_VERIFICATION = 'verification'
|
|
831
831
|
ARG_VERIFICATIONCODES = 'verificationcodes'
|
|
832
832
|
ARG_VERIFY = 'verify'
|
|
833
|
+
ARG_WEBMASTERSITE = 'webmastersite'
|
|
834
|
+
ARG_WEBMASTERSITES = 'webmastersites'
|
|
835
|
+
ARG_WEBRESOURCE = 'webresource'
|
|
836
|
+
ARG_WEBRESOURCES = 'webresources'
|
|
833
837
|
ARG_WORKINGLOCATION = 'workinglocation'
|
|
834
838
|
ARG_WORKINGLOCATIONS = 'workinglocations'
|
|
835
839
|
ARG_YOUTUBECHANNEL = 'youtubechannel'
|
|
@@ -394,6 +394,8 @@ class GamEntity():
|
|
|
394
394
|
VAULT_MATTER_ID = 'vlmi'
|
|
395
395
|
VAULT_OPERATION = 'vlto'
|
|
396
396
|
VAULT_QUERY = 'vltq'
|
|
397
|
+
WEB_MASTERSITE = 'wems'
|
|
398
|
+
WEB_RESOURCE = 'were'
|
|
397
399
|
WEBCLIPS_ENABLED = 'webc'
|
|
398
400
|
YOUTUBE_CHANNEL = 'ytch'
|
|
399
401
|
# _NAMES[0] is plural, _NAMES[1] is singular unless the item name is explicitly plural (Calendar Settings)
|
|
@@ -752,6 +754,8 @@ class GamEntity():
|
|
|
752
754
|
VAULT_OPERATION: ['Vault Operations', 'Vault Operation'],
|
|
753
755
|
VAULT_QUERY: ['Vault Queries', 'Vault Query'],
|
|
754
756
|
WEBCLIPS_ENABLED: ['Web Clips Enabled', 'Web Clips Enabled'],
|
|
757
|
+
WEB_MASTERSITE: ['Web Master Sites', 'Web Master Site'],
|
|
758
|
+
WEB_RESOURCE: ['Web Resources', 'Web Resource'],
|
|
755
759
|
YOUTUBE_CHANNEL: ['YouTube Channels', 'YouTube Channel'],
|
|
756
760
|
ROLE_MANAGER: ['Managers', 'Manager'],
|
|
757
761
|
ROLE_MEMBER: ['Members', 'Member'],
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
Legacy GAM used Drive API v2, GAM7 uses Drive API v3. See: https://developers.google.com/drive/v3/web/migration
|
|
2
|
+
Many of the changes are internal to GAM7 and have no visible effect.
|
|
3
|
+
Google has modified/renamed many field names and these will affect scripts that parse the output from `gam print/show drivesettings/drivefileacls/fileinfo/filelist/filerevisions`.
|
|
4
|
+
Additionally, Google has dropped some fields and their values are no longer available. On input, GAM7 accepts both the old and new field names where applicable.
|
|
5
|
+
|
|
6
|
+
If you use Legacy GAM and have scripts that process the output from these print commands, you may have to make modifications to your scripts when you upgrade to GAM7.
|
|
7
|
+
Run your print/show commands with a version of Legacy GAM and save the output.
|
|
8
|
+
Run your print/show commands with GAM7 and compare the output to that saved in the previous run;
|
|
9
|
+
modify your scripts that process the output as appropriate.
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
print/show drivesettings
|
|
13
|
+
Dropped fields:
|
|
14
|
+
DRIVE
|
|
15
|
+
GMAIL
|
|
16
|
+
PHOTOS
|
|
17
|
+
domainSharingPolicy
|
|
18
|
+
lauguageCode
|
|
19
|
+
Renamed fields (Old->New):
|
|
20
|
+
name->displayName,
|
|
21
|
+
quotaBytesTotal->limit
|
|
22
|
+
quotaBytesUsed->usageInDrive
|
|
23
|
+
quotaBytesUsedAggregate->usage
|
|
24
|
+
quotaBytesUsedInTrash->usageInDriveTrash
|
|
25
|
+
|
|
26
|
+
print/show drivefileacls
|
|
27
|
+
Dropped fields:
|
|
28
|
+
authKey
|
|
29
|
+
Renamed fields (Old->New):
|
|
30
|
+
name->displayName
|
|
31
|
+
withLink->allowFileDiscovery - value is complemented
|
|
32
|
+
|
|
33
|
+
print/show fileinfo/filelist
|
|
34
|
+
Dropped fields:
|
|
35
|
+
defaultOpenWithLink
|
|
36
|
+
embedLink
|
|
37
|
+
exportLinks
|
|
38
|
+
labels(hidden)
|
|
39
|
+
markedViewedByMeDate
|
|
40
|
+
openWithLinks
|
|
41
|
+
ownerNames
|
|
42
|
+
parents(isRoot)
|
|
43
|
+
parents(parentLink)
|
|
44
|
+
parents(selfLink)
|
|
45
|
+
permissions(selfLink)
|
|
46
|
+
selfLink
|
|
47
|
+
userPermission
|
|
48
|
+
Renamed fields (Old->New):
|
|
49
|
+
alternateLink->webViewLink
|
|
50
|
+
capabilities(canChangeRestrictedDownload)->capabilities(canChangeViewersCanCopyContent)
|
|
51
|
+
createdDate->createdTime
|
|
52
|
+
expirationDate->expirationTime
|
|
53
|
+
fileSize->size
|
|
54
|
+
lastModifyingUserName->lastModifyingUser(displayName)
|
|
55
|
+
lastViewedByMeDate->viewedByMeTime
|
|
56
|
+
modified->modifiedByMe
|
|
57
|
+
modifiedByMeDate->modifiedByMeTime
|
|
58
|
+
modifiedDate->modifiedTime
|
|
59
|
+
restricted->viewersCanCopyContent
|
|
60
|
+
sharedWithMeDate->sharedWithMeTime
|
|
61
|
+
title->name
|
|
62
|
+
trashedDate->trashedTime
|
|
63
|
+
viewed->viewedByMe
|
|
64
|
+
withLink->allowFileDiscovery
|
|
65
|
+
|
|
66
|
+
print/show filerevisions
|
|
67
|
+
Dropped fields:
|
|
68
|
+
exportLinks
|
|
69
|
+
publishedLink
|
|
70
|
+
selfLink
|
|
71
|
+
Renamed fields (Old->New):
|
|
72
|
+
fileSize->size
|
|
73
|
+
isAuthenticatedUser->me
|
|
74
|
+
modifiedDate->modifiedTie
|
|
75
|
+
picture.url->photoLink
|
|
76
|
+
pinned->keepForever
|
|
77
|
+
```
|
|
@@ -10,6 +10,35 @@ 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
|
+
### 7.16.01
|
|
14
|
+
|
|
15
|
+
The Drive API now supports setting download restrictions on individual files.
|
|
16
|
+
|
|
17
|
+
Added `downloadrestictions` and `<DriveDownloadRestrictionsSubfieldName>` to `<DriveFieldName>`.
|
|
18
|
+
```
|
|
19
|
+
<DriveDownloadRestrictionsSubfieldName> ::=
|
|
20
|
+
downloadrestrictions.itemdownloadrestriction|
|
|
21
|
+
downloadrestrictions.effectivedownloadrestrictionwithcontext
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Added `itemdownloadrestriction (restrictedforreaders [<Boolean>]) (restrictedforwriters [<Boolean>])`
|
|
25
|
+
to `<DriveFileAttribute>`.
|
|
26
|
+
|
|
27
|
+
From the Drive API documentation:
|
|
28
|
+
```
|
|
29
|
+
itemDownloadRestriction - The download restriction of the file applied directly by the owner or organizer. This does not take into account shared drive settings or DLP rules.
|
|
30
|
+
effectiveDownloadRestrictionWithContext - Output only. The effective download restriction applied to this file. This considers all restriction settings and DLP rules.
|
|
31
|
+
restrictedForReaders - Whether download and copy is restricted for readers.
|
|
32
|
+
restrictedForWriters - Whether download and copy is restricted for writers. If true, download is also restricted for readers.
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### 7.16.00
|
|
36
|
+
|
|
37
|
+
Removed `drive_v3_native_names` from `gam.cfg`; GAM now only uses Drive API v3 fields names on output.
|
|
38
|
+
If you had `drive_v3_native_names = False` in `gam.cfg` or are updating from Legacy GAM:
|
|
39
|
+
|
|
40
|
+
* See: https://github.com/GAM-team/GAM/wiki/Drive-REST-API-v3
|
|
41
|
+
|
|
13
42
|
### 7.15.01
|
|
14
43
|
|
|
15
44
|
Added `downloadrestrictions.restrictedforreaders` and `downloadrestrictions.restrictedforwriters`
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Use these steps if you have used any version of GAM in your domain. They will update your GAM project
|
|
3
3
|
and all necessary authentications.
|
|
4
4
|
|
|
5
|
+
- [Drive API v2 to Drive API v3](Drive-REST-v3)
|
|
5
6
|
- [Downloads-Installs](Downloads-Installs)
|
|
6
7
|
- [Linux and MacOS and Google Cloud Shell](#linux-and-mac-os-and-google-cloud-shell)
|
|
7
8
|
- [Windows](#windows)
|
|
@@ -251,7 +252,7 @@ writes the credentials into the file oauth2.txt.
|
|
|
251
252
|
admin@server:/Users/admin$ rm -f /Users/admin/GAMConfig/oauth2.txt
|
|
252
253
|
admin@server:/Users/admin$ gam version
|
|
253
254
|
WARNING: Config File: /Users/admin/GAMConfig/gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: /Users/admin/GAMConfig/oauth2.txt, Not Found
|
|
254
|
-
GAM 7.
|
|
255
|
+
GAM 7.16.01 - https://github.com/GAM-team/GAM - pyinstaller
|
|
255
256
|
GAM Team <google-apps-manager@googlegroups.com>
|
|
256
257
|
Python 3.13.5 64-bit final
|
|
257
258
|
MacOS Sequoia 15.5 x86_64
|
|
@@ -989,7 +990,7 @@ writes the credentials into the file oauth2.txt.
|
|
|
989
990
|
C:\>del C:\GAMConfig\oauth2.txt
|
|
990
991
|
C:\>gam version
|
|
991
992
|
WARNING: Config File: C:\GAMConfig\gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: C:\GAMConfig\oauth2.txt, Not Found
|
|
992
|
-
GAM 7.
|
|
993
|
+
GAM 7.16.01 - https://github.com/GAM-team/GAM - pythonsource
|
|
993
994
|
GAM Team <google-apps-manager@googlegroups.com>
|
|
994
995
|
Python 3.13.5 64-bit final
|
|
995
996
|
Windows-10-10.0.17134 AMD64
|
|
@@ -157,12 +157,16 @@
|
|
|
157
157
|
contentrestrictions.restrictiontime|
|
|
158
158
|
contentrestrictions.type
|
|
159
159
|
|
|
160
|
-
<
|
|
160
|
+
<DriveDownloadRestrictionsSubfieldName> ::=
|
|
161
|
+
downloadrestrictions.itemdownloadrestriction|
|
|
162
|
+
downloadrestrictions.effectivedownloadrestrictionwithcontext
|
|
163
|
+
|
|
164
|
+
<ClassificationLabelInfoSubfieldName> ::=
|
|
161
165
|
labels.id| # modifiedByMe
|
|
162
166
|
labels.revisionid| # copyRequiresWriterPermission
|
|
163
167
|
labels.fields # viewedByMe
|
|
164
168
|
|
|
165
|
-
<
|
|
169
|
+
<ClassificationLabelsSubfieldName~> ::=
|
|
166
170
|
labels.modified| # modifiedByMe
|
|
167
171
|
labels.restricted| # copyRequiresWriterPermission
|
|
168
172
|
labels.starred| # starred
|
|
@@ -251,6 +255,8 @@
|
|
|
251
255
|
copyrequireswriterpermission|
|
|
252
256
|
createddate|createdtime|
|
|
253
257
|
description|
|
|
258
|
+
downloadrestictions|
|
|
259
|
+
<DriveDownloadRestrictionsSubfieldName>|
|
|
254
260
|
driveid|
|
|
255
261
|
drivename|
|
|
256
262
|
editable|
|
|
@@ -269,9 +275,9 @@
|
|
|
269
275
|
inheritedpermissionsdisabled|
|
|
270
276
|
isappauthorized|
|
|
271
277
|
labelinfo|
|
|
272
|
-
<
|
|
278
|
+
<ClassificationLabelInfoSubfieldName>|
|
|
273
279
|
labels|
|
|
274
|
-
<
|
|
280
|
+
<ClassificationLabelsSubfieldName>|
|
|
275
281
|
lastmodifyinguser|
|
|
276
282
|
<DriveLastModifyingUserSubfieldName>|
|
|
277
283
|
lastmodifyingusername|
|
|
@@ -125,6 +125,7 @@
|
|
|
125
125
|
(folderColorRgb <ColorValue>)|
|
|
126
126
|
(indexabletext <String>)|
|
|
127
127
|
(inheritedpermissionsdisabled [<Boolean>])|
|
|
128
|
+
(itemdownloadrestriction (restrictedforreaders [<Boolean>]) (restrictedforwriters [<Boolean>]))|
|
|
128
129
|
(keeprevisionforever|pinned)|
|
|
129
130
|
(lastviewedbyme <Time>)|
|
|
130
131
|
(mimetype <MimeType>)|
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
k
|
|
2
1
|
# Version and Help
|
|
3
2
|
|
|
4
3
|
Print the current version of Gam with details
|
|
5
4
|
```
|
|
6
5
|
gam version
|
|
7
|
-
GAM 7.
|
|
6
|
+
GAM 7.16.01 - https://github.com/GAM-team/GAM - pyinstaller
|
|
8
7
|
GAM Team <google-apps-manager@googlegroups.com>
|
|
9
8
|
Python 3.13.5 64-bit final
|
|
10
9
|
MacOS Sequoia 15.5 x86_64
|
|
@@ -16,7 +15,7 @@ Time: 2023-06-02T21:10:00-07:00
|
|
|
16
15
|
Print the current version of Gam with details and time offset information
|
|
17
16
|
```
|
|
18
17
|
gam version timeoffset
|
|
19
|
-
GAM 7.
|
|
18
|
+
GAM 7.16.01 - https://github.com/GAM-team/GAM - pyinstaller
|
|
20
19
|
GAM Team <google-apps-manager@googlegroups.com>
|
|
21
20
|
Python 3.13.5 64-bit final
|
|
22
21
|
MacOS Sequoia 15.5 x86_64
|
|
@@ -28,7 +27,7 @@ Your system time differs from www.googleapis.com by less than 1 second
|
|
|
28
27
|
Print the current version of Gam with extended details and SSL information
|
|
29
28
|
```
|
|
30
29
|
gam version extended
|
|
31
|
-
GAM 7.
|
|
30
|
+
GAM 7.16.01 - https://github.com/GAM-team/GAM - pyinstaller
|
|
32
31
|
GAM Team <google-apps-manager@googlegroups.com>
|
|
33
32
|
Python 3.13.5 64-bit final
|
|
34
33
|
MacOS Sequoia 15.5 x86_64
|
|
@@ -65,7 +64,7 @@ MacOS High Sierra 10.13.6 x86_64
|
|
|
65
64
|
Path: /Users/Admin/bin/gam7
|
|
66
65
|
Version Check:
|
|
67
66
|
Current: 5.35.08
|
|
68
|
-
Latest: 7.
|
|
67
|
+
Latest: 7.16.01
|
|
69
68
|
echo $?
|
|
70
69
|
1
|
|
71
70
|
```
|
|
@@ -73,7 +72,7 @@ echo $?
|
|
|
73
72
|
Print the current version number without details
|
|
74
73
|
```
|
|
75
74
|
gam version simple
|
|
76
|
-
7.
|
|
75
|
+
7.16.01
|
|
77
76
|
```
|
|
78
77
|
In Linux/MacOS you can do:
|
|
79
78
|
```
|
|
@@ -83,7 +82,7 @@ echo $VER
|
|
|
83
82
|
Print the current version of Gam and address of this Wiki
|
|
84
83
|
```
|
|
85
84
|
gam help
|
|
86
|
-
GAM 7.
|
|
85
|
+
GAM 7.16.01 - https://github.com/GAM-team/GAM
|
|
87
86
|
GAM Team <google-apps-manager@googlegroups.com>
|
|
88
87
|
Python 3.13.5 64-bit final
|
|
89
88
|
MacOS Sequoia 15.5 x86_64
|