gam7 7.10.0__tar.gz → 7.10.2__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.

Files changed (318) hide show
  1. {gam7-7.10.0 → gam7-7.10.2}/PKG-INFO +1 -1
  2. {gam7-7.10.0 → gam7-7.10.2}/src/GamCommands.txt +21 -4
  3. {gam7-7.10.0 → gam7-7.10.2}/src/GamUpdate.txt +14 -0
  4. {gam7-7.10.0 → gam7-7.10.2}/src/gam/__init__.py +52 -6
  5. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gamlib/glapi.py +1 -1
  6. {gam7-7.10.0 → gam7-7.10.2}/wiki/GamUpdates.md +11 -0
  7. {gam7-7.10.0 → gam7-7.10.2}/wiki/How-to-Upgrade-Legacy-GAM-to-GAM7.md +2 -2
  8. {gam7-7.10.0 → gam7-7.10.2}/wiki/Reports.md +2 -1
  9. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Forms.md +19 -1
  10. {gam7-7.10.0 → gam7-7.10.2}/wiki/Version-and-Help.md +6 -6
  11. {gam7-7.10.0 → gam7-7.10.2}/.github/ISSUE_TEMPLATE/aa-question.md +0 -0
  12. {gam7-7.10.0 → gam7-7.10.2}/.github/ISSUE_TEMPLATE/za-bug-report.md +0 -0
  13. {gam7-7.10.0 → gam7-7.10.2}/.github/ISSUE_TEMPLATE/zz-feature-request.md +0 -0
  14. {gam7-7.10.0 → gam7-7.10.2}/.github/ISSUE_TEMPLATE.txt +0 -0
  15. {gam7-7.10.0 → gam7-7.10.2}/.github/actions/decrypt.sh +0 -0
  16. {gam7-7.10.0 → gam7-7.10.2}/.github/actions/entitlements.plist +0 -0
  17. {gam7-7.10.0 → gam7-7.10.2}/.github/actions/package_exclusions.txt +0 -0
  18. {gam7-7.10.0 → gam7-7.10.2}/.github/stale.yml +0 -0
  19. {gam7-7.10.0 → gam7-7.10.2}/.github/workflows/build.yml +0 -0
  20. {gam7-7.10.0 → gam7-7.10.2}/.github/workflows/codeql-analysis.yml +0 -0
  21. {gam7-7.10.0 → gam7-7.10.2}/.github/workflows/get-cacerts.yml +0 -0
  22. {gam7-7.10.0 → gam7-7.10.2}/.github/workflows/pushwiki.yml +0 -0
  23. {gam7-7.10.0 → gam7-7.10.2}/.github/workflows/pypi.yml +0 -0
  24. {gam7-7.10.0 → gam7-7.10.2}/.pre-commit-config.yaml +0 -0
  25. {gam7-7.10.0 → gam7-7.10.2}/LICENSE +0 -0
  26. {gam7-7.10.0 → gam7-7.10.2}/README.md +0 -0
  27. {gam7-7.10.0 → gam7-7.10.2}/pyproject.toml +0 -0
  28. {gam7-7.10.0 → gam7-7.10.2}/src/.gitignore +0 -0
  29. {gam7-7.10.0 → gam7-7.10.2}/src/LICENSE +0 -0
  30. {gam7-7.10.0 → gam7-7.10.2}/src/cacerts.pem +0 -0
  31. {gam7-7.10.0 → gam7-7.10.2}/src/callgam.py +0 -0
  32. {gam7-7.10.0 → gam7-7.10.2}/src/gam/__main__.py +0 -0
  33. {gam7-7.10.0 → gam7-7.10.2}/src/gam/atom/__init__.py +0 -0
  34. {gam7-7.10.0 → gam7-7.10.2}/src/gam/atom/auth.py +0 -0
  35. {gam7-7.10.0 → gam7-7.10.2}/src/gam/atom/client.py +0 -0
  36. {gam7-7.10.0 → gam7-7.10.2}/src/gam/atom/core.py +0 -0
  37. {gam7-7.10.0 → gam7-7.10.2}/src/gam/atom/data.py +0 -0
  38. {gam7-7.10.0 → gam7-7.10.2}/src/gam/atom/http.py +0 -0
  39. {gam7-7.10.0 → gam7-7.10.2}/src/gam/atom/http_core.py +0 -0
  40. {gam7-7.10.0 → gam7-7.10.2}/src/gam/atom/http_interface.py +0 -0
  41. {gam7-7.10.0 → gam7-7.10.2}/src/gam/atom/mock_http.py +0 -0
  42. {gam7-7.10.0 → gam7-7.10.2}/src/gam/atom/mock_http_core.py +0 -0
  43. {gam7-7.10.0 → gam7-7.10.2}/src/gam/atom/mock_service.py +0 -0
  44. {gam7-7.10.0 → gam7-7.10.2}/src/gam/atom/service.py +0 -0
  45. {gam7-7.10.0 → gam7-7.10.2}/src/gam/atom/token_store.py +0 -0
  46. {gam7-7.10.0 → gam7-7.10.2}/src/gam/atom/url.py +0 -0
  47. {gam7-7.10.0 → gam7-7.10.2}/src/gam/cacerts.pem +0 -0
  48. {gam7-7.10.0 → gam7-7.10.2}/src/gam/cbcm-v1.1beta1.json +0 -0
  49. {gam7-7.10.0 → gam7-7.10.2}/src/gam/contactdelegation-v1.json +0 -0
  50. {gam7-7.10.0 → gam7-7.10.2}/src/gam/datastudio-v1.json +0 -0
  51. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gamlib/__init__.py +0 -0
  52. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gamlib/glaction.py +0 -0
  53. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gamlib/glcfg.py +0 -0
  54. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gamlib/glclargs.py +0 -0
  55. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gamlib/glentity.py +0 -0
  56. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gamlib/glgapi.py +0 -0
  57. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gamlib/glgdata.py +0 -0
  58. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gamlib/glglobals.py +0 -0
  59. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gamlib/glindent.py +0 -0
  60. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gamlib/glmsgs.py +0 -0
  61. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gamlib/glskus.py +0 -0
  62. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gamlib/gluprop.py +0 -0
  63. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gamlib/glverlibs.py +0 -0
  64. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gamlib/yubikey.py +0 -0
  65. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gdata/__init__.py +0 -0
  66. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gdata/alt/__init__.py +0 -0
  67. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gdata/alt/app_engine.py +0 -0
  68. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gdata/alt/appengine.py +0 -0
  69. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gdata/apps/__init__.py +0 -0
  70. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gdata/apps/audit/__init__.py +0 -0
  71. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gdata/apps/audit/service.py +0 -0
  72. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gdata/apps/contacts/__init__.py +0 -0
  73. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gdata/apps/contacts/service.py +0 -0
  74. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gdata/apps/service.py +0 -0
  75. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gdata/service.py +0 -0
  76. {gam7-7.10.0 → gam7-7.10.2}/src/gam/gdata/urlfetch.py +0 -0
  77. {gam7-7.10.0 → gam7-7.10.2}/src/gam/googleapiclient/__init__.py +0 -0
  78. {gam7-7.10.0 → gam7-7.10.2}/src/gam/googleapiclient/_auth.py +0 -0
  79. {gam7-7.10.0 → gam7-7.10.2}/src/gam/googleapiclient/_helpers.py +0 -0
  80. {gam7-7.10.0 → gam7-7.10.2}/src/gam/googleapiclient/channel.py +0 -0
  81. {gam7-7.10.0 → gam7-7.10.2}/src/gam/googleapiclient/discovery.py +0 -0
  82. {gam7-7.10.0 → gam7-7.10.2}/src/gam/googleapiclient/discovery_cache/__init__.py +0 -0
  83. {gam7-7.10.0 → gam7-7.10.2}/src/gam/googleapiclient/discovery_cache/appengine_memcache.py +0 -0
  84. {gam7-7.10.0 → gam7-7.10.2}/src/gam/googleapiclient/discovery_cache/base.py +0 -0
  85. {gam7-7.10.0 → gam7-7.10.2}/src/gam/googleapiclient/discovery_cache/file_cache.py +0 -0
  86. {gam7-7.10.0 → gam7-7.10.2}/src/gam/googleapiclient/errors.py +0 -0
  87. {gam7-7.10.0 → gam7-7.10.2}/src/gam/googleapiclient/http.py +0 -0
  88. {gam7-7.10.0 → gam7-7.10.2}/src/gam/googleapiclient/mimeparse.py +0 -0
  89. {gam7-7.10.0 → gam7-7.10.2}/src/gam/googleapiclient/model.py +0 -0
  90. {gam7-7.10.0 → gam7-7.10.2}/src/gam/googleapiclient/schema.py +0 -0
  91. {gam7-7.10.0 → gam7-7.10.2}/src/gam/googleapiclient/version.py +0 -0
  92. {gam7-7.10.0 → gam7-7.10.2}/src/gam/iso8601/__init__.py +0 -0
  93. {gam7-7.10.0 → gam7-7.10.2}/src/gam/iso8601/iso8601.py +0 -0
  94. {gam7-7.10.0 → gam7-7.10.2}/src/gam/meet-v2beta.json +0 -0
  95. {gam7-7.10.0 → gam7-7.10.2}/src/gam/serviceaccountlookup-v1.json +0 -0
  96. {gam7-7.10.0 → gam7-7.10.2}/src/gam/six.py +0 -0
  97. {gam7-7.10.0 → gam7-7.10.2}/src/gam-install.sh +0 -0
  98. {gam7-7.10.0 → gam7-7.10.2}/src/gam-setup.bat +0 -0
  99. {gam7-7.10.0 → gam7-7.10.2}/src/gam.exe.manifest +0 -0
  100. {gam7-7.10.0 → gam7-7.10.2}/src/gam.py +0 -0
  101. {gam7-7.10.0 → gam7-7.10.2}/src/gam.spec +0 -0
  102. {gam7-7.10.0 → gam7-7.10.2}/src/gam.wxs +0 -0
  103. {gam7-7.10.0 → gam7-7.10.2}/src/license.rtf +0 -0
  104. {gam7-7.10.0 → gam7-7.10.2}/src/requirements-dev.txt +0 -0
  105. {gam7-7.10.0 → gam7-7.10.2}/src/requirements.txt +0 -0
  106. {gam7-7.10.0 → gam7-7.10.2}/src/setup.cfg +0 -0
  107. {gam7-7.10.0 → gam7-7.10.2}/src/setup.py +0 -0
  108. {gam7-7.10.0 → gam7-7.10.2}/src/tools/a_atleast_b.py +0 -0
  109. {gam7-7.10.0 → gam7-7.10.2}/src/tools/gen-wix-xml-filelist.py +0 -0
  110. {gam7-7.10.0 → gam7-7.10.2}/src/tools/mkGamRef.py +0 -0
  111. {gam7-7.10.0 → gam7-7.10.2}/src/tools/openssl.props +0 -0
  112. {gam7-7.10.0 → gam7-7.10.2}/src/version_info.txt.in +0 -0
  113. {gam7-7.10.0 → gam7-7.10.2}/wiki/00scratch.md +0 -0
  114. {gam7-7.10.0 → gam7-7.10.2}/wiki/Addresses.md +0 -0
  115. {gam7-7.10.0 → gam7-7.10.2}/wiki/Administrators.md +0 -0
  116. {gam7-7.10.0 → gam7-7.10.2}/wiki/Alert-Center.md +0 -0
  117. {gam7-7.10.0 → gam7-7.10.2}/wiki/Aliases.md +0 -0
  118. {gam7-7.10.0 → gam7-7.10.2}/wiki/Authorization.md +0 -0
  119. {gam7-7.10.0 → gam7-7.10.2}/wiki/BNF-Syntax.md +0 -0
  120. {gam7-7.10.0 → gam7-7.10.2}/wiki/Basic-Items.md +0 -0
  121. {gam7-7.10.0 → gam7-7.10.2}/wiki/Bulk-Processing.md +0 -0
  122. {gam7-7.10.0 → gam7-7.10.2}/wiki/CSV-Input-Filtering.md +0 -0
  123. {gam7-7.10.0 → gam7-7.10.2}/wiki/CSV-Output-Filtering.md +0 -0
  124. {gam7-7.10.0 → gam7-7.10.2}/wiki/CSV-Special-Characters.md +0 -0
  125. {gam7-7.10.0 → gam7-7.10.2}/wiki/Calendars-Access.md +0 -0
  126. {gam7-7.10.0 → gam7-7.10.2}/wiki/Calendars-Events.md +0 -0
  127. {gam7-7.10.0 → gam7-7.10.2}/wiki/Calendars.md +0 -0
  128. {gam7-7.10.0 → gam7-7.10.2}/wiki/Chat-Bot.md +0 -0
  129. {gam7-7.10.0 → gam7-7.10.2}/wiki/Chrome-AUE-Counts.md +0 -0
  130. {gam7-7.10.0 → gam7-7.10.2}/wiki/Chrome-Browser-Cloud-Management.md +0 -0
  131. {gam7-7.10.0 → gam7-7.10.2}/wiki/Chrome-Installed-Apps.md +0 -0
  132. {gam7-7.10.0 → gam7-7.10.2}/wiki/Chrome-Needs-Attention-Counts.md +0 -0
  133. {gam7-7.10.0 → gam7-7.10.2}/wiki/Chrome-Policies.md +0 -0
  134. {gam7-7.10.0 → gam7-7.10.2}/wiki/Chrome-Printers.md +0 -0
  135. {gam7-7.10.0 → gam7-7.10.2}/wiki/Chrome-Profile-Management.md +0 -0
  136. {gam7-7.10.0 → gam7-7.10.2}/wiki/Chrome-Version-Counts.md +0 -0
  137. {gam7-7.10.0 → gam7-7.10.2}/wiki/Chrome-Version-History.md +0 -0
  138. {gam7-7.10.0 → gam7-7.10.2}/wiki/ChromeOS-Devices.md +0 -0
  139. {gam7-7.10.0 → gam7-7.10.2}/wiki/Classroom-Courses.md +0 -0
  140. {gam7-7.10.0 → gam7-7.10.2}/wiki/Classroom-Guardians.md +0 -0
  141. {gam7-7.10.0 → gam7-7.10.2}/wiki/Classroom-Invitations.md +0 -0
  142. {gam7-7.10.0 → gam7-7.10.2}/wiki/Classroom-Membership.md +0 -0
  143. {gam7-7.10.0 → gam7-7.10.2}/wiki/Cloud-Channel.md +0 -0
  144. {gam7-7.10.0 → gam7-7.10.2}/wiki/Cloud-Identity-Devices.md +0 -0
  145. {gam7-7.10.0 → gam7-7.10.2}/wiki/Cloud-Identity-Groups-Membership.md +0 -0
  146. {gam7-7.10.0 → gam7-7.10.2}/wiki/Cloud-Identity-Groups.md +0 -0
  147. {gam7-7.10.0 → gam7-7.10.2}/wiki/Cloud-Identity-Policies.md +0 -0
  148. {gam7-7.10.0 → gam7-7.10.2}/wiki/Cloud-Storage.md +0 -0
  149. {gam7-7.10.0 → gam7-7.10.2}/wiki/Collections-of-ChromeOS-Devices.md +0 -0
  150. {gam7-7.10.0 → gam7-7.10.2}/wiki/Collections-of-Items.md +0 -0
  151. {gam7-7.10.0 → gam7-7.10.2}/wiki/Collections-of-Users.md +0 -0
  152. {gam7-7.10.0 → gam7-7.10.2}/wiki/Command-Data-From-Google-Docs-Sheets-Storage.md +0 -0
  153. {gam7-7.10.0 → gam7-7.10.2}/wiki/Command-Line-Parsing.md +0 -0
  154. {gam7-7.10.0 → gam7-7.10.2}/wiki/Command-Logging-Progress.md +0 -0
  155. {gam7-7.10.0 → gam7-7.10.2}/wiki/Context-Aware-Access-Levels.md +0 -0
  156. {gam7-7.10.0 → gam7-7.10.2}/wiki/Customer.md +0 -0
  157. {gam7-7.10.0 → gam7-7.10.2}/wiki/Domain-People-Contacts-Profiles.md +0 -0
  158. {gam7-7.10.0 → gam7-7.10.2}/wiki/Domain-SharedContacts.md +0 -0
  159. {gam7-7.10.0 → gam7-7.10.2}/wiki/Domains-Verification.md +0 -0
  160. {gam7-7.10.0 → gam7-7.10.2}/wiki/Domains.md +0 -0
  161. {gam7-7.10.0 → gam7-7.10.2}/wiki/Downloads-Installs.md +0 -0
  162. {gam7-7.10.0 → gam7-7.10.2}/wiki/Drive-File-Selection.md +0 -0
  163. {gam7-7.10.0 → gam7-7.10.2}/wiki/Drive-Items.md +0 -0
  164. {gam7-7.10.0 → gam7-7.10.2}/wiki/Drive-REST-API-v3.md +0 -0
  165. {gam7-7.10.0 → gam7-7.10.2}/wiki/Email-Audit-Monitor.md +0 -0
  166. {gam7-7.10.0 → gam7-7.10.2}/wiki/Find-File-Owner.md +0 -0
  167. {gam7-7.10.0 → gam7-7.10.2}/wiki/GAM-Public-Chat-Room.md +0 -0
  168. {gam7-7.10.0 → gam7-7.10.2}/wiki/GAM-Return-Codes.md +0 -0
  169. {gam7-7.10.0 → gam7-7.10.2}/wiki/GAM-with-minimal-GCP-rights.md +0 -0
  170. {gam7-7.10.0 → gam7-7.10.2}/wiki/GAM7-on-Android-Devices.md +0 -0
  171. {gam7-7.10.0 → gam7-7.10.2}/wiki/GAM7-on-Chrome-OS-Devices.md +0 -0
  172. {gam7-7.10.0 → gam7-7.10.2}/wiki/Google-Data-Transfers.md +0 -0
  173. {gam7-7.10.0 → gam7-7.10.2}/wiki/Google-Network-Addresses.md +0 -0
  174. {gam7-7.10.0 → gam7-7.10.2}/wiki/Groups-Membership.md +0 -0
  175. {gam7-7.10.0 → gam7-7.10.2}/wiki/Groups.md +0 -0
  176. {gam7-7.10.0 → gam7-7.10.2}/wiki/HTTPS-Proxy.md +0 -0
  177. {gam7-7.10.0 → gam7-7.10.2}/wiki/Home.md +0 -0
  178. {gam7-7.10.0 → gam7-7.10.2}/wiki/How-to-Install-GAM7.md +0 -0
  179. {gam7-7.10.0 → gam7-7.10.2}/wiki/How-to-Uninstall-GAM7.md +0 -0
  180. {gam7-7.10.0 → gam7-7.10.2}/wiki/How-to-Update-GAM7.md +0 -0
  181. {gam7-7.10.0 → gam7-7.10.2}/wiki/How-to-Upgrade-GAMADV-XTD3-to-GAM7.md +0 -0
  182. {gam7-7.10.0 → gam7-7.10.2}/wiki/Inbound-SSO.md +0 -0
  183. {gam7-7.10.0 → gam7-7.10.2}/wiki/Install-GAM-as-Python-Library.md +0 -0
  184. {gam7-7.10.0 → gam7-7.10.2}/wiki/Licenses.md +0 -0
  185. {gam7-7.10.0 → gam7-7.10.2}/wiki/List-Items.md +0 -0
  186. {gam7-7.10.0 → gam7-7.10.2}/wiki/List.md +0 -0
  187. {gam7-7.10.0 → gam7-7.10.2}/wiki/Meta-Commands-and-File-Redirection.md +0 -0
  188. {gam7-7.10.0 → gam7-7.10.2}/wiki/Mobile-Devices.md +0 -0
  189. {gam7-7.10.0 → gam7-7.10.2}/wiki/Organizational-Units.md +0 -0
  190. {gam7-7.10.0 → gam7-7.10.2}/wiki/Other-Resources.md +0 -0
  191. {gam7-7.10.0 → gam7-7.10.2}/wiki/Permission-Matches.md +0 -0
  192. {gam7-7.10.0 → gam7-7.10.2}/wiki/Python-Regular-Expressions.md +0 -0
  193. {gam7-7.10.0 → gam7-7.10.2}/wiki/README.md +0 -0
  194. {gam7-7.10.0 → gam7-7.10.2}/wiki/Rclone.md +0 -0
  195. {gam7-7.10.0 → gam7-7.10.2}/wiki/Reseller.md +0 -0
  196. {gam7-7.10.0 → gam7-7.10.2}/wiki/Resources.md +0 -0
  197. {gam7-7.10.0 → gam7-7.10.2}/wiki/Running-GAM7-securely-on-a-Google-Compute-Engine.md +0 -0
  198. {gam7-7.10.0 → gam7-7.10.2}/wiki/SSL-Root-CA-Certificates.md +0 -0
  199. {gam7-7.10.0 → gam7-7.10.2}/wiki/Schemas.md +0 -0
  200. {gam7-7.10.0 → gam7-7.10.2}/wiki/Scripts.md +0 -0
  201. {gam7-7.10.0 → gam7-7.10.2}/wiki/Send-Email.md +0 -0
  202. {gam7-7.10.0 → gam7-7.10.2}/wiki/Shared-Drives.md +0 -0
  203. {gam7-7.10.0 → gam7-7.10.2}/wiki/Sites.md +0 -0
  204. {gam7-7.10.0 → gam7-7.10.2}/wiki/Tag-Replace.md +0 -0
  205. {gam7-7.10.0 → gam7-7.10.2}/wiki/Todrive.md +0 -0
  206. {gam7-7.10.0 → gam7-7.10.2}/wiki/Unmanaged-Accounts.md +0 -0
  207. {gam7-7.10.0 → gam7-7.10.2}/wiki/Upgrade-Benefits.md +0 -0
  208. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Analytics-Admin.md +0 -0
  209. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Application-Specific-Passwords.md +0 -0
  210. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Backup-Verification-Codes.md +0 -0
  211. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Calendars-Access.md +0 -0
  212. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Calendars-Events.md +0 -0
  213. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Calendars.md +0 -0
  214. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Chat.md +0 -0
  215. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Classification-Labels.md +0 -0
  216. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Classroom-Profile.md +0 -0
  217. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Contacts-Delegates.md +0 -0
  218. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Contacts.md +0 -0
  219. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Deprovision.md +0 -0
  220. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Drive-Activity-Settings.md +0 -0
  221. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Drive-Cleanup.md +0 -0
  222. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Drive-Comments.md +0 -0
  223. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Drive-Copy-Move.md +0 -0
  224. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Drive-Files-Display.md +0 -0
  225. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Drive-Files-Manage.md +0 -0
  226. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Drive-Orphans.md +0 -0
  227. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Drive-Ownership.md +0 -0
  228. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Drive-Permissions.md +0 -0
  229. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Drive-Query.md +0 -0
  230. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Drive-Revisions.md +0 -0
  231. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Drive-Shortcuts.md +0 -0
  232. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Drive-Transfer.md +0 -0
  233. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Gmail-CSE.md +0 -0
  234. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Gmail-Delegates.md +0 -0
  235. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Gmail-Filters.md +0 -0
  236. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Gmail-Forwarding.md +0 -0
  237. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Gmail-Labels.md +0 -0
  238. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Gmail-Messages-Threads.md +0 -0
  239. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Gmail-Profile.md +0 -0
  240. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Gmail-S-MIME.md +0 -0
  241. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Gmail-Send-As-Signature-Vacation.md +0 -0
  242. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Gmail-Settings.md +0 -0
  243. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Group-Membership.md +0 -0
  244. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Keep-Notes.md +0 -0
  245. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Looker-Studio.md +0 -0
  246. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Meet.md +0 -0
  247. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-People-Contacts-Profiles.md +0 -0
  248. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Photo.md +0 -0
  249. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Profile-Photo.md +0 -0
  250. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Profile-Sharing.md +0 -0
  251. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Shared-Drives.md +0 -0
  252. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Signout-Turnoff2SV.md +0 -0
  253. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Spreadsheets.md +0 -0
  254. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Tasks.md +0 -0
  255. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-Tokens.md +0 -0
  256. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users-YouTube.md +0 -0
  257. {gam7-7.10.0 → gam7-7.10.2}/wiki/Users.md +0 -0
  258. {gam7-7.10.0 → gam7-7.10.2}/wiki/Using-GAM7-with-a-YubiKey.md +0 -0
  259. {gam7-7.10.0 → gam7-7.10.2}/wiki/Using-GAM7-with-a-delegated-admin-service-account.md +0 -0
  260. {gam7-7.10.0 → gam7-7.10.2}/wiki/Vault-Takeout.md +0 -0
  261. {gam7-7.10.0 → gam7-7.10.2}/wiki/Verifying-a-GAM7-Build-is-Legitimate-and-Official.md +0 -0
  262. {gam7-7.10.0 → gam7-7.10.2}/wiki/_Sidebar.md +0 -0
  263. {gam7-7.10.0 → gam7-7.10.2}/wiki/gam.cfg.md +0 -0
  264. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-AdminSettingsExamples.md +0 -0
  265. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Android-Installation.md +0 -0
  266. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-BulkOperations.md +0 -0
  267. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-CalendarExamples.md +0 -0
  268. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Chat-Bot.md +0 -0
  269. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Chrome-Browser-Management.md +0 -0
  270. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Chrome-OS-Installation.md +0 -0
  271. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Chrome-Policy-Settings.md +0 -0
  272. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Cloud-Identity-Groups.md +0 -0
  273. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Command-Reference-Calendar-Resources.md +0 -0
  274. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Command-Reference-Calendars.md +0 -0
  275. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Command-Reference-Definitions.md +0 -0
  276. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Command-Reference-Drive.md +0 -0
  277. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Command-Reference-Email.md +0 -0
  278. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Command-Reference-Group-Attributes.md +0 -0
  279. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Command-Reference-Groups.md +0 -0
  280. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Command-Reference-Users.md +0 -0
  281. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Context-Aware-Access-Levels.md +0 -0
  282. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Creating-client_secrets.json-and-oauth2service.json.md +0 -0
  283. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-CreatingClientSecretsFile.md +0 -0
  284. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Custom-Schemas.md +0 -0
  285. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Data-Transfers.md +0 -0
  286. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-DomainVerification.md +0 -0
  287. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-ExamplesAccountAuditing.md +0 -0
  288. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-ExamplesCSV.md +0 -0
  289. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-ExamplesEmailSettings.md +0 -0
  290. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-ExamplesOrganizations.md +0 -0
  291. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-GAM-Discussion-Group.md +0 -0
  292. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-GAM-on-Android-and-Chrome-OS.md +0 -0
  293. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-GAM-options-files.md +0 -0
  294. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-GAM-with--minimal-GCP-rights.md +0 -0
  295. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-GAM3CSVListings.md +0 -0
  296. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-GAM3DirectoryCommands.md +0 -0
  297. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-GAM3GroupSettings.md +0 -0
  298. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-GAM7-FAQ.md +0 -0
  299. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Google-Vault---Takeout-Commands.md +0 -0
  300. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-GoogleDriveManagement.md +0 -0
  301. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Grouping-18-or-Older-Users.md +0 -0
  302. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Home.md +0 -0
  303. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-How-to-upgrade-from-Standard-GAM.md +0 -0
  304. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Inbound-SSO-Settings.md +0 -0
  305. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-LicenseExamples.md +0 -0
  306. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Managing-Admins.md +0 -0
  307. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Managing-CloudPrint-Printers.md +0 -0
  308. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Managing-Devices.md +0 -0
  309. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Managing-Google-Classroom.md +0 -0
  310. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-OAuthKeyManagement.md +0 -0
  311. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Printers.md +0 -0
  312. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-ResellerCommands.md +0 -0
  313. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Running-GAM-on-Google-Compute-Engine-(GCE)-Securely.md +0 -0
  314. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-SecurityExamples.md +0 -0
  315. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-UnmanagedUsersExamples.md +0 -0
  316. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Use-a-Yubikey.md +0 -0
  317. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-Using-GAM-with-a-delegated-admin-service-account-(DASA).md +0 -0
  318. {gam7-7.10.0 → gam7-7.10.2}/wiki/l-_Footer.md +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: gam7
3
- Version: 7.10.0
3
+ Version: 7.10.2
4
4
  Summary: CLI tool to manage Google Workspace
5
5
  Project-URL: Homepage, https://github.com/GAM-team/GAM
6
6
  Project-URL: Issues, https://github.com/GAM-team/GAM/issues
@@ -4440,13 +4440,14 @@ gam report usage customer [todrive <ToDriveAttribute>*]
4440
4440
  calendar|calendars|
4441
4441
  chat|
4442
4442
  chrome|
4443
+ classroom|
4443
4444
  contextawareaccess|
4444
4445
  currents|gplus|google+|
4445
4446
  datastudio|
4446
4447
  devices|mobile|
4447
4448
  domain|
4448
4449
  drive|doc|docs|
4449
- gcp|
4450
+ gcp|cloud|
4450
4451
  gemini|geminiforworkspace|
4451
4452
  groups|group|
4452
4453
  groupsenterprise|enterprisegroups|
@@ -4465,7 +4466,7 @@ gam report <ActivityApplicationName> [todrive <ToDriveAttribute>*]
4465
4466
  [(user all|<UserItem>)|(orgunit|org|ou <OrgUnitPath> [showorgunit])|(select <UserTypeEntity>)]
4466
4467
  [([start <Time>] [end <Time>])|(range <Time> <Time>)|
4467
4468
  yesterday|today|thismonth|(previousmonths <Integer>)]
4468
- [filtertime.* <Time>] [filter|filters <String>]
4469
+ [filtertime.String> <Time>] [filter|filters <String>]
4469
4470
  [event|events <EventNameList>] [ip <String>]
4470
4471
  [groupidfilter <String>]
4471
4472
  [maxactivities <Number>] [maxevents <Number>] [maxresults <Number>]
@@ -7417,10 +7418,12 @@ gam <UserTypeEntity> print filters [labelidsonly] [todrive <ToDriveAttribute>*]
7417
7418
 
7418
7419
  gam <UserTypeEntity> create form
7419
7420
  title <String> [description <String>] [isquiz [<Boolean>]] [<JSONData>]
7421
+ [ispublished [<Boolean>] isacceptingresponses [<Boolean>]]
7420
7422
  [drivefilename <DriveFileName>] [<DriveFileParentAttribute>]
7421
7423
  [(csv [todrive <ToDriveAttribute>*]) | returnidonly]
7422
7424
  gam <UserTypeEntity> update form <DriveFileEntity>
7423
7425
  [title <String>] [description <String>] [isquiz [<Boolean>]] [<JSONData>]
7426
+ [ispublished [<Boolean>] isacceptingresponses [<Boolean>]]
7424
7427
 
7425
7428
  gam <UserTypeEntity> print forms <DriveFileEntity> [todrive <ToDriveAttribute>*]
7426
7429
  (addcsvdata <FieldName> <String>)*
@@ -7612,48 +7615,61 @@ gam <UserTypeEntity> insert message
7612
7615
 
7613
7616
  gam <UserTypeEntity> archive messages <GroupItem>
7614
7617
  (((query <QueryGmail> [querytime<String> <Date>]*) (matchlabel <LabelName>) [or|and])+
7618
+ [labelids <LabelIDList>]
7615
7619
  [quick|notquick] [doit] [max_to_archive <Number>])|(ids <MessageIDEntity>)
7616
7620
  [csv [todrive <ToDriveAttribute>*]]
7617
7621
  gam <UserTypeEntity> delete messages|threads
7618
7622
  (((query <QueryGmail> [querytime<String> <Date>]*) (matchlabel <LabelName>) [or|and])+
7623
+ [labelids <LabelIDList>]
7619
7624
  [quick|notquick] [doit] [max_to_delete <Number>])|(ids <MessageIDEntity>)
7620
7625
  [csv [todrive <ToDriveAttribute>*]]
7621
7626
  gam <UserTypeEntity> modify messages|threads
7622
7627
  (((query <QueryGmail> [querytime<String> <Date>]*) (matchlabel <LabelName>) [or|and])+
7628
+ [labelids <LabelIDList>]
7623
7629
  [quick|notquick] [doit] [max_to_modify <Number>])|(ids <MessageIDEntity>)
7624
7630
  ((addlabel <LabelName>)|(removelabel <LabelName>))+
7625
7631
  [csv [todrive <ToDriveAttribute>*]]
7626
7632
  gam <UserTypeEntity> spam messages|threads
7627
7633
  (((query <QueryGmail> [querytime<String> <Date>]*) (matchlabel <LabelName>) [or|and])+
7634
+ [labelids <LabelIDList>]
7628
7635
  [quick|notquick] [doit] [max_to_spam <Number>])|(ids <MessageIDEntity>)
7629
7636
  [csv [todrive <ToDriveAttribute>*]]
7630
7637
  gam <UserTypeEntity> trash messages|threads
7631
7638
  (((query <QueryGmail> [querytime<String> <Date>]*) (matchlabel <LabelName>) [or|and])+
7639
+ [labelids <LabelIDList>]
7632
7640
  [quick|notquick] [doit] [max_to_trash <Number>])|(ids <MessageIDEntity>)
7633
7641
  [csv [todrive <ToDriveAttribute>*]]
7634
7642
  gam <UserTypeEntity> untrash messages|threads
7635
7643
  (((query <QueryGmail> [querytime<String> <Date>]*) (matchlabel <LabelName>) [or|and])+
7644
+ [labelids <LabelIDList>]
7636
7645
  [quick|notquick] [doit] [max_to_untrash <Number>])|(ids <MessageIDEntity>)
7637
7646
  [csv [todrive <ToDriveAttribute>*]]
7638
7647
 
7639
7648
  gam <UserTypeEntity> export message|messages
7640
- (((query <QueryGmail> [querytime<String> <Date>]*) (matchlabel <LabelName>) [or|and])+ [quick|notquick] [doit] [max_to_export <Number>])|(ids <MessageIDEntity>)
7649
+ (((query <QueryGmail> [querytime<String> <Date>]*) (matchlabel <LabelName>) [or|and])+
7650
+ [labelids <LabelIDList>]
7651
+ [quick|notquick] [doit] [max_to_export <Number>])|(ids <MessageIDEntity>)
7641
7652
  [targetfolder <FilePath>] [targetname <FileName>] [overwrite [<Boolean>]]
7642
7653
  gam <UserTypeEntity> export thread|threads
7643
- (((query <QueryGmail> [querytime<String> <Date>]*) (matchlabel <LabelName>) [or|and])+ [quick|notquick] [doit] [max_to_export <Number>])|(ids <ThreadIDEntity>)
7654
+ (((query <QueryGmail> [querytime<String> <Date>]*) (matchlabel <LabelName>) [or|and])+
7655
+ [labelids <LabelIDList>]
7656
+ [quick|notquick] [doit] [max_to_export <Number>])|(ids <ThreadIDEntity>)
7644
7657
  [targetfolder <FilePath>] [targetname <FileName>] [overwrite [<Boolean>]]
7645
7658
 
7646
7659
  gam <UserTypeEntity> forward message|messages recipient|to <RecipientEntity>
7647
7660
  (((query <QueryGmail> [querytime<String> <Date>]*) (matchlabel <LabelName>) [or|and])+
7661
+ [labelids <LabelIDList>]
7648
7662
  [quick|notquick] [doit] [max_to_forward <Number>])|(ids <MessageIDEntity>)
7649
7663
  [subject <String>] [addorigfieldstosubject [<Boolean>]] [altcharset <String>]
7650
7664
  gam <UserTypeEntity> forward thread|thtreads recipient|to <RecipientEntity>
7651
7665
  (((query <QueryGmail> [querytime<String> <Date>]*) (matchlabel <LabelName>) [or|and])+
7666
+ [labelids <LabelIDList>]
7652
7667
  quick|notquick] [doit] [max_to_forward <Number>])|(ids <ThreadIDEntity>)
7653
7668
  [subject <String>] [addorigfieldstosubject [<Boolean>]] [altcharset <String>]
7654
7669
 
7655
7670
  gam <UserTypeEntity> show messages|threads
7656
7671
  (((query <QueryGmail> [querytime<String> <Date>]*) (matchlabel <LabelName>) [or|and])*
7672
+ [labelids <LabelIDList>]
7657
7673
  [quick|notquick] [max_to_show <Number>] [includespamtrash])|(ids <MessageIDEntity>)
7658
7674
  [labelmatchpattern <REMatchPattern>] [sendermatchpattern <REMatchPattern>]
7659
7675
  [countsonly|positivecountsonly] [useronly]
@@ -7666,6 +7682,7 @@ gam <UserTypeEntity> show messages|threads
7666
7682
  [uploadattachments [<DriveFileParentAttribute>]]]
7667
7683
  gam <UserTypeEntity> print messages|threads [todrive <ToDriveAttribute>*]
7668
7684
  (((query <QueryGmail> [querytime<String> <Date>]*) (matchlabel <LabelName>) [or|and])*
7685
+ [labelids <LabelIDList>]
7669
7686
  [quick|notquick] [max_to_print <Number>] [includespamtrash])|(ids <MessageIDEntity>)
7670
7687
  [labelmatchpattern <REMatchPattern>] [sendermatchpattern <REMatchPattern>]
7671
7688
  [countsonly|positivecountsonly] [useronly]
@@ -1,3 +1,17 @@
1
+ 7.10.02
2
+
3
+ Added option `labelids <LabelIdList>` to all commands that process messages;
4
+ this option causes GAM to only return messages with labels that match all of the specified label IDs.
5
+
6
+ Updated `gam <UserTypeEntity> print|show forms` to always display `isPublished` and
7
+ `isAcceptingResponses` in `publishSettings/publishState` regardless of their value;
8
+ the API doesn't return these values when they are False.
9
+
10
+ 7.10.01
11
+
12
+ Added options `ispublished [<Boolean>]` and `isacceptingresponses [<Boolean>]` to
13
+ `gam <UserTypeEntity> create|update form`.
14
+
1
15
  7.10.00
2
16
 
3
17
  Added commands to manage/display Chat Custom Emojis.
@@ -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.10.00'
28
+ __version__ = '7.10.02'
29
29
  __license__ = 'Apache License 2.0 (http://www.apache.org/licenses/LICENSE-2.0)'
30
30
 
31
31
  #pylint: disable=wrong-import-position
@@ -13556,7 +13556,10 @@ REPORT_CHOICE_MAP = {
13556
13556
  'calendars': 'calendar',
13557
13557
  'chat': 'chat',
13558
13558
  'chrome': 'chrome',
13559
+ 'classroom': 'classroom',
13560
+ 'cloud': 'gcp',
13559
13561
  'contextawareaccess': 'context_aware_access',
13562
+ 'currents': 'gplus',
13560
13563
  'customer': 'customer',
13561
13564
  'customers': 'customer',
13562
13565
  'datastudio': 'data_studio',
@@ -70130,6 +70133,7 @@ def _initMessageThreadParameters(entityType, doIt, maxToProcess):
70130
70133
  'query': '', 'queryTimes': {},
70131
70134
  'entityType': entityType, 'messageEntity': None, 'doIt': doIt, 'quick': True,
70132
70135
  'labelMatchPattern': None, 'senderMatchPattern': None,
70136
+ 'labelIds': [],
70133
70137
  'maxToProcess': maxToProcess, 'maxItems': 0, 'maxMessagesPerThread': 0,
70134
70138
  'maxToKeywords': [MESSAGES_MAX_TO_KEYWORDS[Act.Get()], 'maxtoprocess'],
70135
70139
  'listType': listType, 'fields': f'nextPageToken,{listType}(id)'}
@@ -70162,6 +70166,8 @@ def _getMessageSelectParameters(myarg, parameters):
70162
70166
  parameters['labelMatchPattern'] = getREPattern(re.IGNORECASE)
70163
70167
  elif myarg == 'sendermatchpattern':
70164
70168
  parameters['senderMatchPattern'] = getREPattern(re.IGNORECASE)
70169
+ elif myarg == 'labelids':
70170
+ parameters['labelIds'].extend(getEntityList(Cmd.OB_LABEL_ID_LIST))
70165
70171
  elif myarg == 'ids':
70166
70172
  parameters['messageEntity'] = getUserObjectEntity(Cmd.OB_MESSAGE_ID, parameters['entityType'])
70167
70173
  elif myarg == 'quick':
@@ -71806,7 +71812,8 @@ def printShowMessagesThreads(users, entityType):
71806
71812
  listResult = callGAPIpages(service, 'list', parameters['listType'],
71807
71813
  pageMessage=getPageMessageForWhom(), maxItems=parameters['maxItems'],
71808
71814
  throwReasons=GAPI.GMAIL_THROW_REASONS+GAPI.GMAIL_LIST_THROW_REASONS,
71809
- userId='me', q=parameters['query'], fields=parameters['fields'], includeSpamTrash=includeSpamTrash,
71815
+ userId='me', q=parameters['query'], labelIds=parameters['labelIds'],
71816
+ fields=parameters['fields'], includeSpamTrash=includeSpamTrash,
71810
71817
  maxResults=GC.Values[GC.MESSAGE_MAX_RESULTS])
71811
71818
  messageIds = [message['id'] for message in listResult]
71812
71819
  else:
@@ -72603,8 +72610,28 @@ def updateFormRequestUpdateMasks(ubody):
72603
72610
  v['updateMask'] = ','.join(v['updateMask'])
72604
72611
  break
72605
72612
 
72613
+ def _initPublishSettings():
72614
+ return {'publishSettings': {'publishState': {}}, 'updateMask': ''}
72615
+
72616
+ def _getPublishSettings(myarg, pbody):
72617
+ if myarg == 'ispublished':
72618
+ bval = getBoolean()
72619
+ pbody['publishSettings']['publishState']['isPublished'] = bval
72620
+ if not bval:
72621
+ pbody['publishSettings']['publishState']['isAcceptingResponses'] = bval
72622
+ elif myarg == 'isacceptingresponses':
72623
+ bval = getBoolean()
72624
+ pbody['publishSettings']['publishState']['isAcceptingResponses'] = bval
72625
+ if bval:
72626
+ pbody['publishSettings']['publishState']['isPublished'] = bval
72627
+ else:
72628
+ return False
72629
+ pbody['updateMask'] = 'publishState'
72630
+ return True
72631
+
72606
72632
  # gam <UserTypeEntity> create form
72607
72633
  # title <String> [description <String>] [isquiz [<Boolean>]] [<JSONData>]
72634
+ # [ispublished [<Boolean>] isacceptingresponses [<Boolean>]]
72608
72635
  # [drivefilename <DriveFileName>] [<DriveFileParentAttribute>]
72609
72636
  # [(csv [todrive <ToDriveAttribute>*]) | returnidonly]
72610
72637
  def createForm(users):
@@ -72613,6 +72640,7 @@ def createForm(users):
72613
72640
  title = ''
72614
72641
  body = {'mimeType': MIMETYPE_GA_FORM}
72615
72642
  ubody = {'includeFormInResponse': True, 'requests': []}
72643
+ pbody = _initPublishSettings()
72616
72644
  parentParms = initDriveFileAttributes()
72617
72645
  while Cmd.ArgumentsRemaining():
72618
72646
  myarg = getArgument()
@@ -72626,6 +72654,8 @@ def createForm(users):
72626
72654
  elif myarg == 'json':
72627
72655
  jsonData = getJSON([])
72628
72656
  ubody['requests'].extend(jsonData.get('requests', []))
72657
+ elif _getPublishSettings(myarg, pbody):
72658
+ pass
72629
72659
  elif myarg == 'drivefilename':
72630
72660
  body['name'] = getString(Cmd.OB_DRIVE_FILE_NAME)
72631
72661
  elif getDriveFileParentAttribute(myarg, parentParms):
@@ -72666,6 +72696,10 @@ def createForm(users):
72666
72696
  form = callGAPI(gform.forms(), 'batchUpdate',
72667
72697
  throwReasons=[GAPI.INVALID_ARGUMENT, GAPI.PERMISSION_DENIED],
72668
72698
  formId=formId, body=ubody)
72699
+ if pbody['updateMask']:
72700
+ callGAPI(gform.forms(), 'setPublishSettings',
72701
+ throwReasons=[GAPI.NOT_FOUND, GAPI.INVALID_ARGUMENT, GAPI.PERMISSION_DENIED],
72702
+ formId=formId, body=pbody)
72669
72703
  if returnIdOnly:
72670
72704
  writeStdout(f'{formId}\n')
72671
72705
  elif not csvPF:
@@ -72690,8 +72724,10 @@ def createForm(users):
72690
72724
 
72691
72725
  # gam <UserTypeEntity> update form <DriveFileEntity>
72692
72726
  # [title <String>] [description <String>] [isquiz [Boolean>]] [<JSONData>]
72727
+ # [ispublished [<Boolean>] isacceptingresponses [<Boolean>]]
72693
72728
  def updateForm(users):
72694
72729
  ubody = {'includeFormInResponse': False, 'requests': []}
72730
+ pbody = _initPublishSettings()
72695
72731
  fileIdEntity = getDriveFileEntity()
72696
72732
  while Cmd.ArgumentsRemaining():
72697
72733
  myarg = getArgument()
@@ -72704,10 +72740,12 @@ def updateForm(users):
72704
72740
  elif myarg == 'json':
72705
72741
  jsonData = getJSON([])
72706
72742
  ubody['requests'].extend(jsonData.get('requests', []))
72743
+ elif _getPublishSettings(myarg, pbody):
72744
+ pass
72707
72745
  else:
72708
72746
  unknownArgumentExit()
72709
72747
  updateFormRequestUpdateMasks(ubody)
72710
- if not ubody['requests']:
72748
+ if not ubody['requests'] and not pbody['updateMask']:
72711
72749
  return
72712
72750
  i, count, users = getEntityArgument(users)
72713
72751
  for user in users:
@@ -72723,9 +72761,14 @@ def updateForm(users):
72723
72761
  for formId in fileIdEntity['list']:
72724
72762
  j += 1
72725
72763
  try:
72726
- callGAPI(gform.forms(), 'batchUpdate',
72727
- throwReasons=[GAPI.NOT_FOUND, GAPI.INVALID_ARGUMENT, GAPI.PERMISSION_DENIED],
72728
- formId=formId, body=ubody)
72764
+ if ubody['requests']:
72765
+ callGAPI(gform.forms(), 'batchUpdate',
72766
+ throwReasons=[GAPI.NOT_FOUND, GAPI.INVALID_ARGUMENT, GAPI.PERMISSION_DENIED],
72767
+ formId=formId, body=ubody)
72768
+ if pbody['updateMask']:
72769
+ callGAPI(gform.forms(), 'setPublishSettings',
72770
+ throwReasons=[GAPI.NOT_FOUND, GAPI.INVALID_ARGUMENT, GAPI.PERMISSION_DENIED],
72771
+ formId=formId, body=pbody)
72729
72772
  entityActionPerformed([Ent.USER, user, Ent.FORM, formId], j, jcount)
72730
72773
  except (GAPI.notFound, GAPI.invalidArgument) as e:
72731
72774
  entityActionFailedWarning([Ent.USER, user, Ent.FORM, formId], str(e), j, jcount)
@@ -72774,6 +72817,9 @@ def printShowForms(users):
72774
72817
  result = callGAPI(gform.forms(), 'get',
72775
72818
  throwReasons=[GAPI.NOT_FOUND, GAPI.PERMISSION_DENIED],
72776
72819
  formId=formId)
72820
+ if 'publishSettings' in result and 'publishState' in result['publishSettings']:
72821
+ result['publishSettings']['publishState'].setdefault('isPublished', False)
72822
+ result['publishSettings']['publishState'].setdefault('isAcceptingResponses', False)
72777
72823
  if not csvPF:
72778
72824
  if not FJQC.formatJSON:
72779
72825
  printEntity([Ent.FORM, result['formId']], j, jcount)
@@ -650,7 +650,7 @@ _SVCACCT_SCOPES = [
650
650
  'api': GMAIL,
651
651
  'subscopes': [],
652
652
  'scope': 'https://www.googleapis.com/auth/gmail.modify'},
653
- {'name': 'Gmail API - Basic Settings (Filters,IMAP, Language, POP, Vacation) - read/write, Sharing Settings (Delegates, Forwarding, SendAs) - read',
653
+ {'name': 'Gmail API - Basic Settings (Filters, IMAP, Language, POP, Vacation) - read/write, Sharing Settings (Delegates, Forwarding, SendAs) - read',
654
654
  'api': GMAIL,
655
655
  'subscopes': [],
656
656
  'scope': 'https://www.googleapis.com/auth/gmail.settings.basic'},
@@ -10,6 +10,17 @@ 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.10.02
14
+
15
+ Updated `gam <UserTypeEntity> print|show forms` to always display `isPublished` and
16
+ `isAcceptingResponses` in `publishSettings/publishState` regardless of their value;
17
+ the API doesn't return these values when they are False.
18
+
19
+ ### 7.10.01
20
+
21
+ Added options `ispublished [<Boolean>]` and `isacceptingresponses [<Boolean>]` to
22
+ `gam <UserTypeEntity> create|update form`.
23
+
13
24
  ### 7.10.00
14
25
 
15
26
  Added commands to manage/display Chat Custom Emojis.
@@ -251,7 +251,7 @@ writes the credentials into the file oauth2.txt.
251
251
  admin@server:/Users/admin$ rm -f /Users/admin/GAMConfig/oauth2.txt
252
252
  admin@server:/Users/admin$ gam version
253
253
  WARNING: Config File: /Users/admin/GAMConfig/gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: /Users/admin/GAMConfig/oauth2.txt, Not Found
254
- GAM 7.10.00 - https://github.com/GAM-team/GAM - pyinstaller
254
+ GAM 7.10.02 - https://github.com/GAM-team/GAM - pyinstaller
255
255
  GAM Team <google-apps-manager@googlegroups.com>
256
256
  Python 3.13.5 64-bit final
257
257
  MacOS Sequoia 15.5 x86_64
@@ -989,7 +989,7 @@ writes the credentials into the file oauth2.txt.
989
989
  C:\>del C:\GAMConfig\oauth2.txt
990
990
  C:\>gam version
991
991
  WARNING: Config File: C:\GAMConfig\gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: C:\GAMConfig\oauth2.txt, Not Found
992
- GAM 7.10.00 - https://github.com/GAM-team/GAM - pythonsource
992
+ GAM 7.10.02 - https://github.com/GAM-team/GAM - pythonsource
993
993
  GAM Team <google-apps-manager@googlegroups.com>
994
994
  Python 3.13.5 64-bit final
995
995
  Windows-10-10.0.17134 AMD64
@@ -44,13 +44,14 @@ config csv_output_row_filter "'\"accounts:used_quota_in_mb\":count>15000'"
44
44
  calendar|calendars|
45
45
  chat|
46
46
  chrome|
47
+ classroom|
47
48
  contextawareaccess|
48
49
  currents|gplus|google+|
49
50
  datastudio|
50
51
  devices|mobile|
51
52
  domain|
52
53
  drive|doc|docs|
53
- gcp|
54
+ gcp|cloud|
54
55
  gemini|geminiforworkspace|
55
56
  groups|group|
56
57
  groupsenterprise|enterprisegroups|
@@ -49,10 +49,19 @@ gam user user@domain.com update serviceaccount
49
49
  ```
50
50
  gam <UserTypeEntity> create form
51
51
  title <String> [description <String>] [isquiz [Boolean>]] [<JSONData>]
52
+ [ispublished [<Boolean>] isacceptingresponses [<Boolean>]]
52
53
  [drivefilename <DriveFileName>] [<DriveFileParentAttribute>]
53
54
  [(csv [todrive <ToDriveAttribute>*]) | returnidonly]
54
55
  ```
55
56
 
57
+ The valid combinations of `ispublished` and `isacceptingresponses` are:
58
+ * `ispublished true isacceptingresponses true`
59
+ * `ispublished true isacceptingresponses false`
60
+ * `ispublished false isacceptingresponses false`
61
+ * `ispublished false` - Sets `isacceptingresponses false`
62
+ * `isacceptingresponses false` - Sets `ispublished false`
63
+ * `isacceptingresponses true` - Sets `ispublished true`
64
+
56
65
  `<JSONData>` is a list of form update requests.
57
66
 
58
67
  * See: https://developers.google.com/forms/api/reference/rest/v1/forms/batchUpdate
@@ -79,15 +88,24 @@ Select forms with `<DriveFileEntity>`:
79
88
  ```
80
89
  gam <UserTypeEntity> update form <DriveFileEntity>
81
90
  [title <String>] [description <String>] [isquiz [Boolean>]] [<JSONData>]
91
+ [ispublished [<Boolean>] isacceptingresponses [<Boolean>]]
82
92
  ```
83
93
 
94
+ The valid combinations of `ispublished` and `isacceptingresponses` are:
95
+ * `ispublished true isacceptingresponses true`
96
+ * `ispublished true isacceptingresponses false`
97
+ * `ispublished false isacceptingresponses false`
98
+ * `ispublished false` - Sets `isacceptingresponses false`
99
+ * `isacceptingresponses false` - Sets `ispublished false`
100
+ * `isacceptingresponses true` - Sets `ispublished true`
101
+
84
102
  `<JSONData>` is a list of form update requests.
85
103
 
86
104
  * See: https://developers.google.com/forms/api/reference/rest/v1/forms/batchUpdate
87
105
 
88
106
  ## Extended Example
89
107
 
90
- This example illustrates the use of JSN data to create and update forms
108
+ This example illustrates the use of JSON data to create and update forms
91
109
  concerning student classtoom attendance.
92
110
  The form has two items: Absences and Notes.
93
111
  In `Absences`, the teacher can check `All present.` or check individual student absences.
@@ -3,7 +3,7 @@
3
3
  Print the current version of Gam with details
4
4
  ```
5
5
  gam version
6
- GAM 7.10.00 - https://github.com/GAM-team/GAM - pyinstaller
6
+ GAM 7.10.02 - https://github.com/GAM-team/GAM - pyinstaller
7
7
  GAM Team <google-apps-manager@googlegroups.com>
8
8
  Python 3.13.5 64-bit final
9
9
  MacOS Sequoia 15.5 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.10.00 - https://github.com/GAM-team/GAM - pyinstaller
18
+ GAM 7.10.02 - https://github.com/GAM-team/GAM - pyinstaller
19
19
  GAM Team <google-apps-manager@googlegroups.com>
20
20
  Python 3.13.5 64-bit final
21
21
  MacOS Sequoia 15.5 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.10.00 - https://github.com/GAM-team/GAM - pyinstaller
30
+ GAM 7.10.02 - https://github.com/GAM-team/GAM - pyinstaller
31
31
  GAM Team <google-apps-manager@googlegroups.com>
32
32
  Python 3.13.5 64-bit final
33
33
  MacOS Sequoia 15.5 x86_64
@@ -64,7 +64,7 @@ MacOS High Sierra 10.13.6 x86_64
64
64
  Path: /Users/Admin/bin/gam7
65
65
  Version Check:
66
66
  Current: 5.35.08
67
- Latest: 7.10.00
67
+ Latest: 7.10.02
68
68
  echo $?
69
69
  1
70
70
  ```
@@ -72,7 +72,7 @@ echo $?
72
72
  Print the current version number without details
73
73
  ```
74
74
  gam version simple
75
- 7.10.00
75
+ 7.10.02
76
76
  ```
77
77
  In Linux/MacOS you can do:
78
78
  ```
@@ -82,7 +82,7 @@ echo $VER
82
82
  Print the current version of Gam and address of this Wiki
83
83
  ```
84
84
  gam help
85
- GAM 7.10.00 - https://github.com/GAM-team/GAM
85
+ GAM 7.10.02 - https://github.com/GAM-team/GAM
86
86
  GAM Team <google-apps-manager@googlegroups.com>
87
87
  Python 3.13.5 64-bit final
88
88
  MacOS Sequoia 15.5 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
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