Latest updates
6.15.07
Updated code in gam print cros
to handle a missing data field that caused a trap.
6.15.06
Added option dateheaderconverttimezone [<Boolean>]>
to gam <UserTypeEntity> print|show messages|threads
that
converts <SMTPDateHeader>
values to the gam.cfg timezone
.
Updated option dateheaderformat iso|rfc2822|<String>
to gam <UserTypeEntity> print|show messages|threads
that allows
reformatting of any <SMTPDateHeader>
value from RFC2822 format to the the following:
iso
- Format is%Y-%m-%dT%H:%M:%S%z
rfc2822
- Format is%a, %d %b %Y %H:%M:%S %z
<String>
- Format according to: https://docs.python.org/3/library/datetime.html#strftime-strptime-behavior
6.15.05
Added option dateheaderformat <String>
to gam <UserTypeEntity> print|show messages|threads
that allows
reformatting of the message Date
header value from RFC2822 format to the format specified by <String>
.
If <String>
is iso
, then ISO 8601 format is used, otherwise see: https://docs.python.org/3/library/datetime.html#strftime-strptime-behavior
If the Date
header value can't be parsed as RFC2822, it is left unchanged.
6.15.04
Fixed bug in gam <UserTypeEntity> copy drivefile <DriveFileEntity> ... excludepermissionsfromdomains <DomainNameList>
that caused a trap.
6.15.03
Updated <CourseAttribute>
and <CourseFieldName>
to use descriptionheading
and heading
synonymously.
6.15.02
Added the following options to gam <UserTypeEntity> copy drivefile <DriveFileEntity>
that provide more flexibility in managing permissions when copying/moving folders.
- Thanks to Kevin Sanghvi for suggesting these enhancements.
copysheetprotectedrangesinheritedpermissions [<Boolean>]
copysheetprotectedrangesnoninheritedpermissions [<Boolean>]
6.15.01
Fixed bug in gam <UserTypeEntity> print|show messages ... showattachments|saveattachments
where
some attachments were not recognized.
- Thanks to Craig Millsap for spending the time with me to find the solution.
6.15.00
Updated processing of teamdrive <SharedDriveName>
in the following commands.
Previously, if there were multiple Shared Drives with the same <SharedDriveName>
, GAM silently processed
the first one which may not have been the desired action. Now, a message is issued listing the multiple <DriveFileIDs>
and
no processing is performed. Determine which Shared Drive ID is desired and reissue the command with teamdriveid <DriveFileID>
.
gam <UserTypeEntity> print filelist select teamdrive <SharedDriveName>
gam <UserTypeEntity> print|show filecounts select teamdrive <SharedDriveName>
gam <UserTypeEntity> print|show filetree select teamdrive <SharedDriveName>
gam <UserTypeEntity> update teamdrive teamdrive <SharedDriveName>
gam <UserTypeEntity> delete teamdrive teamdrive <SharedDriveName>
gam <UserTypeEntity> hide teamdrive teamdrive <SharedDriveName>
gam <UserTypeEntity> unhide teamdrive teamdrive <SharedDriveName>
gam <UserTypeEntity> info teamdrive teamdrive <SharedDriveName>
gam <UserTypeEntity> print emptydrivefolders teamdrive <SharedDriveName>
gam <UserTypeEntity> delete emptydrivefolders teamdrive <SharedDriveName>
gam <UserTypeEntity> empty drivetrash teamdrive <SharedDriveName>
Added the following commands to transfer top level ACLs from one Shared Drive to another.
gam [<UserTypeEntity>] copy teamdriveacls <SharedDriveEntity> to <SharedDriveEntity>
[adminaccess|asadmin]
[showpermissionsmessages [<Boolean>]]
[excludepermissionsfromdomains <DomainNameList>]
(mappermissionsdomain <DomainName> <DomainName>)*
gam [<UserTypeEntity>] sync teamdriveacls <SharedDriveEntity> with <SharedDriveEntity>
[adminaccess|asadmin]
[showpermissionsmessages [<Boolean>]]
[excludepermissionsfromdomains <DomainNameList>]
(mappermissionsdomain <DomainName> <DomainName>)*
Added option shownopermissionsdrives false|true|only
to gam <UserTypeEntity> print|show teamdriveacls
that
controls whether Shared Drives with no permissions are displayed.
false
- Do not display Shared Drives with no permissions; this is the defaulttrue
- Display Shared Drives with no permissions in addition to Shared Drives with permissionsonly
- Display only Shared Drives with no permissions
Added the option mappermissionsdomain <DomainName1> <DomainName2>
to gam <UserTypeEntity> copy|move drivefile <DriveFileEntity>
that maps <DomainName1>
to <DomainName2>
in any non-inherited permissions that are copied. The option can be specified multiple times to provide different mappings.
- Thanks to Kevin Sanghvi for suggesting this enhancement.
Updated gam <UserTypeEntity> delete othercontacts
to retry the delete step when
notFound
errors are returned after the update step.
Fixed bug in gam courses <CourseEntity> add|remove students|teachers
that caused API
call retries to fail with the following error:
Temporary error: notFound - @CourseNotFound The course was not found.
Improved performance when converting Shared Drive names to IDs.
Updated code to handle Shared Drive names that contain single quotes.* Updated google-api-python-client to version 2.35.0
Installation
If you are a first time Gam user:
If you are upgrading from standard Gam
If you are upgrading from GAMADV-X or GAMADV-XTD