diff --git a/docs/GamUpdates.md b/docs/GamUpdates.md index dd8aa5fa..29385900 100644 --- a/docs/GamUpdates.md +++ b/docs/GamUpdates.md @@ -10,6 +10,12 @@ Add the `-s` option to the end of the above commands to suppress creating the `g See [Downloads-Installs](https://github.com/taers232c/GAMADV-XTD3/wiki/Downloads-Installs) for Windows or other options, including manual installation +### 6.80.18 + +Updated `gam print|show admins` to handle the following error: +``` +ERROR: 503: serviceNotAvailable - The service is currently unavailable. + ### 6.80.17 Updated `gam modify messages` to improve error handling. diff --git a/docs/How-to-Upgrade-from-Standard-GAM.md b/docs/How-to-Upgrade-from-Standard-GAM.md index 88091d3f..2ac7350e 100644 --- a/docs/How-to-Upgrade-from-Standard-GAM.md +++ b/docs/How-to-Upgrade-from-Standard-GAM.md @@ -251,7 +251,7 @@ writes the credentials into the file oauth2.txt. admin@server:/Users/admin$ rm -f /Users/admin/GAMConfig/oauth2.txt admin@server:/Users/admin$ gam version WARNING: Config File: /Users/admin/GAMConfig/gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: /Users/admin/GAMConfig/oauth2.txt, Not Found -GAMADV-XTD3 6.80.17 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.80.18 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.12.5 64-bit final MacOS Sonoma 14.5 x86_64 @@ -923,7 +923,7 @@ writes the credentials into the file oauth2.txt. C:\>del C:\GAMConfig\oauth2.txt C:\>gam version WARNING: Config File: C:\GAMConfig\gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: C:\GAMConfig\oauth2.txt, Not Found -GAMADV-XTD3 6.80.17 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.80.18 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.12.5 64-bit final Windows-10-10.0.17134 AMD64 diff --git a/docs/Users-Gmail-Messages-Threads.md b/docs/Users-Gmail-Messages-Threads.md index 545dec1e..8b2377e2 100644 --- a/docs/Users-Gmail-Messages-Threads.md +++ b/docs/Users-Gmail-Messages-Threads.md @@ -440,7 +440,7 @@ gam delete messages|threads gam modify messages|threads (((query [querytime ]*) (matchlabel ) [or|and])+ [quick|notquick] [doit] [max_to_modify ])|(ids ) - (addlabel )* (removelabel )* + ((addlabel )|(removelabel ))+ [csv [todrive *]] gam spam messages|threads (((query [querytime ]*) (matchlabel ) [or|and])+ diff --git a/docs/Users-Signout-Turnoff2SV.md b/docs/Users-Signout-Turnoff2SV.md index 0cdc4c62..f5dd43f4 100644 --- a/docs/Users-Signout-Turnoff2SV.md +++ b/docs/Users-Signout-Turnoff2SV.md @@ -21,6 +21,7 @@ gam signout Turn off 2-Step Verification for a user. If successful, this call will turn off 2-Step Verification and also remove all registered second steps on the user account. This call will fail if **any** of the following is true: +* the user is suspended * the user is not enrolled in 2-Step Verification. * the user has 2-Step Verification enforced. * the user is enrolled in the Advanced Protection Program. diff --git a/docs/Version-and-Help.md b/docs/Version-and-Help.md index a7596298..70011ac9 100644 --- a/docs/Version-and-Help.md +++ b/docs/Version-and-Help.md @@ -3,7 +3,7 @@ Print the current version of Gam with details ``` gam version -GAMADV-XTD3 6.80.17 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.80.18 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.12.5 64-bit final MacOS Sonoma 14.5 x86_64 @@ -15,7 +15,7 @@ Time: 2023-06-02T21:10:00-07:00 Print the current version of Gam with details and time offset information ``` gam version timeoffset -GAMADV-XTD3 6.80.17 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.80.18 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.12.5 64-bit final MacOS Sonoma 14.5 x86_64 @@ -27,7 +27,7 @@ Your system time differs from www.googleapis.com by less than 1 second Print the current version of Gam with extended details and SSL information ``` gam version extended -GAMADV-XTD3 6.80.17 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.80.18 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.12.5 64-bit final MacOS Sonoma 14.5 x86_64 @@ -64,7 +64,7 @@ MacOS High Sierra 10.13.6 x86_64 Path: /Users/Admin/bin/gamadv-xtd3 Version Check: Current: 5.35.08 - Latest: 6.80.17 + Latest: 6.80.18 echo $? 1 ``` @@ -72,7 +72,7 @@ echo $? Print the current version number without details ``` gam version simple -6.80.17 +6.80.18 ``` In Linux/MacOS you can do: ``` @@ -82,7 +82,7 @@ echo $VER Print the current version of Gam and address of this Wiki ``` gam help -GAM 6.80.17 - https://github.com/taers232c/GAMADV-XTD3 +GAM 6.80.18 - https://github.com/taers232c/GAMADV-XTD3 Ross Scroggs Python 3.12.5 64-bit final MacOS Sonoma 14.5 x86_64 diff --git a/src/GamCommands.txt b/src/GamCommands.txt index 2b3d06a3..a0e12948 100644 --- a/src/GamCommands.txt +++ b/src/GamCommands.txt @@ -7458,7 +7458,7 @@ gam delete messages|threads gam modify messages|threads (((query [querytime ]*) (matchlabel ) [or|and])+ [quick|notquick] [doit] [max_to_modify ])|(ids ) - (addlabel )* (removelabel )* + ((addlabel )|(removelabel ))+ [csv [todrive *]] gam spam messages|threads (((query [querytime ]*) (matchlabel ) [or|and])+ diff --git a/src/GamUpdate.txt b/src/GamUpdate.txt index 2ec09239..e75b7e50 100644 --- a/src/GamUpdate.txt +++ b/src/GamUpdate.txt @@ -2,6 +2,13 @@ Merged GAM-Team version +6.80.18 + +Updated `gam print|show admins` to handle the following error: +``` +ERROR: 503: serviceNotAvailable - The service is currently unavailable. +``` + 6.80.17 Updated `gam modify messages` to improve error handling. diff --git a/src/gam/__init__.py b/src/gam/__init__.py index 271c2389..2423d9ee 100755 --- a/src/gam/__init__.py +++ b/src/gam/__init__.py @@ -16540,11 +16540,12 @@ def doPrintShowAdmins(): try: rolePrivileges[roleId] = callGAPI(cd.roles(), 'get', throwReasons=[GAPI.NOT_FOUND, GAPI.FORBIDDEN, GAPI.FAILED_PRECONDITION, - GAPI.BAD_REQUEST, GAPI.CUSTOMER_NOT_FOUND], + GAPI.SERVICE_NOT_AVAILABLE, GAPI.BAD_REQUEST, GAPI.CUSTOMER_NOT_FOUND], + retryReasons=GAPI.SERVICE_NOT_AVAILABLE_RETRY_REASONS, customer=GC.Values[GC.CUSTOMER_ID], roleId=roleId, fields='rolePrivileges') - except (GAPI.notFound, GAPI.forbidden, GAPI.failedPrecondition) as e: + except (GAPI.notFound, GAPI.forbidden, GAPI.failedPrecondition, GAPI.serviceNotAvailable) as e: entityActionFailedExit([Ent.USER, userKey, Ent.ADMIN_ROLE, admin['roleId']], str(e)) rolePrivileges[roleId] = None except (GAPI.badRequest, GAPI.customerNotFound): @@ -16616,7 +16617,8 @@ def doPrintShowAdmins(): try: admins = callGAPIpages(cd.roleAssignments(), 'list', 'items', pageMessage=getPageMessage(), - throwReasons=[GAPI.INVALID, GAPI.USER_NOT_FOUND, GAPI.BAD_REQUEST, GAPI.CUSTOMER_NOT_FOUND, GAPI.FORBIDDEN], + throwReasons=[GAPI.INVALID, GAPI.USER_NOT_FOUND, GAPI.BAD_REQUEST, + GAPI.CUSTOMER_NOT_FOUND, GAPI.FORBIDDEN], customer=GC.Values[GC.CUSTOMER_ID], fields=fields, **kwargs) except (GAPI.invalid, GAPI.userNotFound): entityUnknownWarning(Ent.ADMINISTRATOR, userKey)