Scroll to bottom of page for installation/downloads
Latest updates
6.31.03
Added commands to display Chrome Auto Update Expiration counts.
gam print chromeaues [todrive <ToDriveAttribute>*]
[(ou <OrgUnitItem>)|(ou_and_children <OrgUnitItem>)|
(ous <OrgUnitList>)|(ous_and_children <OrgUnitList>)]
[minauedate <Date>] [maxauedate <Date>]
[formatjson [quotechar <Character>]]
gam show chromeaues
[(ou <OrgUnitItem>)|(ou_and_children <OrgUnitItem>)|
(ous <OrgUnitList>)|(ous_and_children <OrgUnitList>)]
[minauedate <Date>] [maxauedate <Date>]
[formatjson]
6.31.02
Updated gam <UserTypeEntity> vacation
to process (replace <Tag> <String>)*
in the subject.
6.31.01
Added option nofile
to gam <UserTypeEntity> get photo|profilephoto
that causes GAM to suppress
writing the photo data to a file. This would typicically be used when you are capturing the photo data
written to stdout.
6.31.00
Added retry_api_service_not_available
variable to gam.cfg
that is used to have GAM retry
Service not applicable
errors on API calls; Google seems to be sending this error when it is very busy.
This is a rare event, this is an experiment to see if GAM can identify these errors and retry them.
6.30.18
Fixed bug in gam <UserTypeEntity> move drivefile
where the modified time of files was inappropriately being changed.
6.30.17
Updated code for gam <UserTypeEntity> get profilephoto size <Integer>
to account for API documentation error.
6.30.16
Added option nodefault
to gam <UserTypeEntity> get profilephoto
that causes GAM to display an
error message and set the return code to 50 if the user has a default profile photo.
6.30.15
Added option gphoto <EmailAddress> <DriveFileIDEntity>|<DriveFileNameEntity>
to gam <UserTypeEntity> update photo
that specifies an owner and file to be used as the source of the photo.
6.30.14
Fixed bug in gam <UserTypeEntity> print|show peopleprofile fields ...
where metadata was being displayed
even when showmetadata
was not specified.
6.30.13
Fixed bug in gam <UserTypeEntity> show fileinfo <DriveFileEntity> fields shortcutdetails.targetid
that caused a trap.
Added option size <Integer>
to gam <UserTypeEntity> get profilephoto
that specifies the size in pixels of the file to download.
6.30.12
Updated gam update group <GroupEntity> update [<GroupRole>] [[delivery] <DeliverySetting>] <UserTypeEntity>
to handle the following error when <UserTypeEntity>
is an external member.
ERROR: 404: resourceNotFound - Does not exist
This is a Google bug where some external members can't be updated by email address.
6.30.11
Added option emailmatchpattern [not] <RegularExpression>
to gam <UserTypeEntity> delete group|groups
that allows deleting a user from all groups of which they are a member based on (not) matching the group email address.
6.30.10
Added the ability to specify fields when displaying calendars.
- See: https://github.com/taers232c/GAMADV-XTD3/wiki/Calendars
- See: https://github.com/taers232c/GAMADV-XTD3/wiki/Users-Calendars
6.30.09
Added the following shortcuts to <DriveFileQueryShortcut>
:
* my_top_files - "'me' in owners and mimeType != application/vnd.google-apps.folder and 'root' in parents"
* my_top_folders - "'me' in owners and mimeType = application/vnd.google-apps.folder and 'root' in parents"
* my_top_items - "'me' in owners and 'root' in parents"
6.30.08
Following Jay's lead, added the following License SKUs:
1010390001 - Assured Controls
1010400001 - Beyond Corp Enterprise
6.30.07
Added option sheetsfields <SpreadsheetSheetsFieldList>
to gam <UserTypeEntity> print|show sheet <DriveFileEntity>
that lets you specfiy the desired subfields from the sheets
field of a spreadsheet that should be displayed.
By default, all sheets
subfields are displayed.
<SpreadsheetSheetsField> ::=
bandedranges|
basicfilter|
charts|
columngroups|
conditionalformats|
data|
developermetadata|
filterviews|
merges|
properties|
protectedranges|
rowgroups|
slicers
<SpreadsheetSheetsFieldList> ::= "<SpreadsheetSheetsField>(,<SpreadsheetSheetsField>)*"
6.30.06
Fixed bug in gam <UserTypeEntity> create|update|delete drivefileacl <DriveFileEntity> ... updatesheetprotectedranges
that caused a trap.
6.30.05
Cleaned up code for option updatesheetprotectedranges
in gam <UserTypeEntity> create|update|delete drivefileacl <DriveFileEntity>
.
6.30.04
Improved output formatting for field sheets
in gam <UserTypeEntity> info sheet <DriveFileEntity>
.
6.30.03
Updated gam <UserTypeEntity> create|update drivefileacl <DriveFileEntity>
commands to handle the following error.
ERROR: 403: fileOrganizerOnFoldersInSharedDriveOnly - FileOrganizer role is only allowed on folders.
Added option updatesheetprotectedranges to
gam create|update|delete drivefileacl commands that causes GAM to update Sheet Protected Ranges if
` is a Google Sheet.
6.30.02
Fixed error message in gam print cigroups
when an invalid field was specified.
6.30.01
Fixed bug in gam create cigroup <EmailAddress> name <String> <GroupAttribute>+
where the group name was set to <EmailAddress>
rather than <String>
.
6.30.00
Added option returnidonly
to gam <UserTypeEntity> show fileinfo <DriveFileEntity>
that causes GAM to return just the file ID of the files in <DriveFileEntity>
file as output.
$ gam user user@domain.com show fileinfo root returnidonly
0AHYenC8f12ALUk9xyz
$ gam user testsimple show fileinfo name "Test File" returnidonly
0B3YenC8f12ALflhUTmtNS3E2Vk9LSUpBVXRSUG5lQ29GWkRtWHM1VzU1blc4ZW1pb2FnNTA
Changed the display format of file paths for files on Shared Drives.
- Old format - SharedDrive(TS Shared Drive 6)/TS SD6 Folder/TS TD6 Doc
- New format -SharedDrives/TS Shared Drive 6/TS SD6 Folder/TS TD6 Doc
Added option returnpathonly
to gam <UserTypeEntity> show filepath <DriveFileEntity>
that causes GAM to return just the file path of the files in <DriveFileEntity>
file as output.
$ gam user user@domain.com show filepath name "Test File" returnpathonly
My Drive/Classroom/Test File
$ gam user user@domain.com show filepath 0AJ6mqwXP9wHxUk9xyz returnpathonly
TS Shared Drive 6
$ gam user testsimple show filepath 0AJ6mqwXP9wHxUk9xyz returnpathonly fullpath
SharedDrives/TS Shared Drive 6
$ gam user user@domain.com show filepath teamdriveid 0AJ6mqwXP9wHxUk9xyz teamdrivefilename "TS TD6 Doc" returnpathonly
SharedDrives/TS Shared Drive 6//TS SD6 Folder/TS TD6 Doc
Added command gam comment <String>*
that displays the comment data on stdout.
This can be used to validate csv_input_row_filters
and column value extraction.
$ more Comment.csv
col1,col2
aaa,111
bbb,222
ccc,333
$ gam config csv_input_row_drop_filter "col1:regex:bbb" csv Comment.csv gam comment "Col1:~~col1~~" "Col2:~~col2~~"
2022-12-16T12:41:50.045-08:00,0/2,Using 2 processes...
Col1:aaa Col2:111
Col1:ccc Col2:333
Updated gam <UserTypeEntity> create|delete license <SKUIDList>
to take a list of SKUs.
Updated gam create user <EmailAddress> ... license <SKUIDList>
to take a list of SKUs.
Updated gam <UserTypeEntity> sync license <SKUIDList>
to take a list of SKUs and
added option allskus|onesku
that is required when multiple SKUs are specified.
allskus
indicates that users in<UserTypeEntity>
will be updated to have all of the SKUs in<SKUIDList>
.- This is typically used when assigning different types of licenses, such as an Enterprise license and a Voice license.
onesku
indicates that users in<UserTypeEntity>
with none of the licenses in<SKUIDList>
will be updated to have the first available license SKU in<SKUIDList>
.- This is typically used with Google Education Plus or Google Education Standard licenses, which are split across multiple SKUs.
Added option basic
to gam print cigroups
that causes GAM to display the basic
Cloud Identity Group fields, i.e., those fields that do not require an additional API call per group.
Following Jay's lead, added option query <String>
to gam print cigroups
.
Installation
If you are a first time Gam user:
If you are updating your GAMADV-XTD3 version:
If you are upgrading from standard Gam
If you are upgrading from GAMADV-X or GAMADV-XTD
sha256 hashes
e83dd3ec95cf6a5bd316c08bdb89134ac96d4f45c54728c4ac1e751b4ad7c5d2 gamadv-xtd3-6.31.03-linux-arm64-glibc2.23.tar.xz
724de814e8545d75b18592fcb808c30f43522f241505c175bdea98bd80ff3e16 gamadv-xtd3-6.31.03-linux-arm64-glibc2.27.tar.xz
a9438ee0b82293b82548148334ab188bc423795954fa8976464b297cc9d065df gamadv-xtd3-6.31.03-linux-arm64-glibc2.31.tar.xz
9ebdd862b2a87e519065fd5ba838ff872776a299f8cbe4b006aab51e4b9393fa gamadv-xtd3-6.31.03-linux-x86_64-glibc2.19.tar.xz
cfb71442d53ac13a776616fc3731f44287260db20d0f09faaf06b3c9904aa2c0 gamadv-xtd3-6.31.03-linux-x86_64-glibc2.23.tar.xz
48fe1a3430ea8382ab71ed5cf44bfcdbb5035ca2495a69ad986a2872779ab348 gamadv-xtd3-6.31.03-linux-x86_64-glibc2.27.tar.xz
91f7e842b9f585609ad34f1f8f1fbd816ca6a1d1a78c5f32dee5998c895ee1bd gamadv-xtd3-6.31.03-linux-x86_64-glibc2.31.tar.xz
2bde8e48e4fcd5293db061f728e20fc1de7a3bf34cf5c0e7befc3592cd5151ac gamadv-xtd3-6.31.03-linux-x86_64-glibc2.35.tar.xz
1d3eb101554d938edfe526c35566018b34b4b2c93566f8e62be8b3cf033fbfab gamadv-xtd3-6.31.03-linux-x86_64-legacy.tar.xz
e50089a5675c3d45f86ed0d872cf7d179d1688c32e26c4ee4b16c91fdf9d32ac gamadv-xtd3-6.31.03-macos-arm64.tar.xz
f615a960d45fdf0e0d22f0231f4bef831b009a2d0f282170b3b82a6176971f9d gamadv-xtd3-6.31.03-macos-x86_64-legacy.tar
f290d835f66f60939a5971dd0b60e3d4cf9802408b97d2c75b0bd7228a0a2c85 gamadv-xtd3-6.31.03-macos-x86_64.tar.xz
f9a0357493b34a8c1b50b89ccfe52027e6e1dea70a73a71f942d1b41794c3a2c gamadv-xtd3-6.31.03-windows-x86.msi
273be97dcc73dfbf7cd169dd9190d682288db600cb49120170e451204be29add gamadv-xtd3-6.31.03-windows-x86.zip
6e7c418716886e114266922e0c6c9a8aadaf5206552968efd83ecf5cce2a7c70 gamadv-xtd3-6.31.03-windows-x86_64.msi
aaea5166505c452921e52e07905cde8b740074469195a95af6dc206fbe5ed471 gamadv-xtd3-6.31.03-windows-x86_64.zip