gam7 7.18.7__py3-none-any.whl → 7.19.0__py3-none-any.whl

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.

gam/__init__.py CHANGED
@@ -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.18.07'
28
+ __version__ = '7.19.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
@@ -4739,8 +4739,6 @@ def getAPIService(api, httpObj):
4739
4739
  discoveryServiceUrl=DISCOVERY_URIS[v2discovery], static_discovery=False)
4740
4740
 
4741
4741
  def getService(api, httpObj):
4742
- ### Drive v3beta
4743
- # mapDriveURL = api == API.DRIVE3 and GC.Values[GC.DRIVE_V3_BETA]
4744
4742
  hasLocalJSON = API.hasLocalJSON(api)
4745
4743
  api, version, v2discovery = API.getVersion(api)
4746
4744
  if api in GM.Globals[GM.CURRENT_API_SERVICES] and version in GM.Globals[GM.CURRENT_API_SERVICES][api]:
@@ -4756,9 +4754,6 @@ def getService(api, httpObj):
4756
4754
  discoveryServiceUrl=DISCOVERY_URIS[v2discovery], static_discovery=False)
4757
4755
  GM.Globals[GM.CURRENT_API_SERVICES].setdefault(api, {})
4758
4756
  GM.Globals[GM.CURRENT_API_SERVICES][api][version] = service._rootDesc.copy()
4759
- ### Drive v3beta
4760
- # if mapDriveURL:
4761
- # setattr(service, '_baseUrl', getattr(service, '_baseUrl').replace('/v3/', '/v3beta/'))
4762
4757
  if GM.Globals[GM.CACHE_DISCOVERY_ONLY]:
4763
4758
  clearServiceCache(service)
4764
4759
  return service
@@ -4800,7 +4795,10 @@ def defaultSvcAcctScopes():
4800
4795
  for scope in scopesList:
4801
4796
  if not scope.get('offByDefault'):
4802
4797
  saScopes.setdefault(scope['api'], [])
4803
- saScopes[scope['api']].append(scope['scope'])
4798
+ if not isinstance(scope['scope'], list):
4799
+ saScopes[scope['api']].append(scope['scope'])
4800
+ else:
4801
+ saScopes[scope['api']].extend(scope['scope'])
4804
4802
  saScopes[API.DRIVEACTIVITY].append(API.DRIVE_SCOPE)
4805
4803
  saScopes[API.DRIVE2] = saScopes[API.DRIVE3]
4806
4804
  saScopes[API.DRIVETD] = saScopes[API.DRIVE3]
@@ -5615,8 +5613,6 @@ def buildGAPIServiceObject(api, user, i=0, count=0, displayError=True):
5615
5613
  userEmail = getSaUser(user)
5616
5614
  httpObj = getHttpObj(cache=GM.Globals[GM.CACHE_DIR])
5617
5615
  service = getService(api, httpObj)
5618
- if api == API.MEET_BETA:
5619
- api = API.MEET
5620
5616
  credentials = getSvcAcctCredentials(api, userEmail)
5621
5617
  request = transportCreateRequest(httpObj)
5622
5618
  triesLimit = 3
@@ -10713,14 +10709,21 @@ Continue to authorization by entering a 'c'
10713
10709
  api = a_scope['api']
10714
10710
  possibleScope = a_scope['scope']
10715
10711
  if api in currentScopes:
10716
- for scope in currentScopes[api]:
10717
- if scope == possibleScope:
10718
- selectedScopes[i] = '*'
10719
- break
10720
- if 'readonly' in a_scope['subscopes']:
10721
- if (scope == possibleScope+'.readonly') or (scope == a_scope.get('roscope')):
10722
- selectedScopes[i] = 'R'
10712
+ if not isinstance(possibleScope, list):
10713
+ for scope in currentScopes[api]:
10714
+ if scope == possibleScope:
10715
+ selectedScopes[i] = '*'
10723
10716
  break
10717
+ if 'readonly' in a_scope['subscopes']:
10718
+ if (scope == possibleScope+'.readonly') or (scope == a_scope.get('roscope')):
10719
+ selectedScopes[i] = 'R'
10720
+ break
10721
+ else:
10722
+ for scope in possibleScope:
10723
+ if scope not in currentScopes[api]:
10724
+ break
10725
+ else:
10726
+ selectedScopes[i] = '*'
10724
10727
  i += 1
10725
10728
  else:
10726
10729
  i = 0
@@ -12331,8 +12334,12 @@ def checkServiceAccount(users):
12331
12334
  for scope in scopesList:
12332
12335
  if selectedScopes[i] == '*':
12333
12336
  saScopes.setdefault(scope['api'], [])
12334
- saScopes[scope['api']].append(scope['scope'])
12335
- checkScopesSet.add(scope['scope'])
12337
+ if not isinstance(scope['scope'], list):
12338
+ saScopes[scope['api']].append(scope['scope'])
12339
+ checkScopesSet.add(scope['scope'])
12340
+ else:
12341
+ saScopes[scope['api']].extend(scope['scope'])
12342
+ checkScopesSet.update(scope['scope'])
12336
12343
  elif selectedScopes[i] == 'R':
12337
12344
  saScopes.setdefault(scope['api'], [])
12338
12345
  if 'roscope' not in scope:
@@ -13628,6 +13635,7 @@ REPORT_CHOICE_MAP = {
13628
13635
  'drive': 'drive',
13629
13636
  'gcp': 'gcp',
13630
13637
  'geminiinworkspaceapps': 'gemini_in_workspace_apps',
13638
+ 'gmail': 'gmail',
13631
13639
  'gplus': 'gplus',
13632
13640
  'groups': 'groups',
13633
13641
  'groupsenterprise': 'groups_enterprise',
@@ -28239,9 +28247,7 @@ def printShowChatEvents(users):
28239
28247
  if csvPF:
28240
28248
  csvPF.writeCSVfile('Chat Events')
28241
28249
 
28242
- def buildMeetServiceObject(api=API.MEET, user=None, i=0, count=0, entityTypeList=None):
28243
- if GC.Values[GC.MEET_V2_BETA]:
28244
- api = API.MEET_BETA
28250
+ def buildMeetServiceObject(api, user=None, i=0, count=0, entityTypeList=None):
28245
28251
  user, meet = buildGAPIServiceObject(api, user, i, count)
28246
28252
  kvList = [Ent.USER, user]
28247
28253
  if entityTypeList is not None:
@@ -28350,7 +28356,7 @@ def createMeetSpace(users):
28350
28356
  i, count, users = getEntityArgument(users)
28351
28357
  for user in users:
28352
28358
  i += 1
28353
- user, meet, kvList = buildMeetServiceObject(API.MEET, user, i, count, [Ent.MEET_SPACE, None])
28359
+ user, meet, kvList = buildMeetServiceObject(API.MEET_SPACES, user, i, count, [Ent.MEET_SPACE, None])
28354
28360
  if not meet:
28355
28361
  continue
28356
28362
  try:
@@ -28389,7 +28395,7 @@ def updateMeetSpace(users):
28389
28395
  i, count, users = getEntityArgument(users)
28390
28396
  for user in users:
28391
28397
  i += 1
28392
- user, meet, kvList = buildMeetServiceObject(API.MEET, user, i, count, [Ent.MEET_SPACE, name])
28398
+ user, meet, kvList = buildMeetServiceObject(API.MEET_SPACES, user, i, count, [Ent.MEET_SPACE, name])
28393
28399
  if not meet:
28394
28400
  continue
28395
28401
  try:
@@ -28420,7 +28426,7 @@ def infoMeetSpace(users):
28420
28426
  i, count, users = getEntityArgument(users)
28421
28427
  for user in users:
28422
28428
  i += 1
28423
- user, meet, kvList = buildMeetServiceObject(API.MEET, user, i, count, [Ent.MEET_SPACE, name])
28429
+ user, meet, kvList = buildMeetServiceObject(API.MEET_SPACES, user, i, count, [Ent.MEET_SPACE, name])
28424
28430
  if not meet:
28425
28431
  continue
28426
28432
  try:
@@ -28449,7 +28455,7 @@ def endMeetConference(users):
28449
28455
  i, count, users = getEntityArgument(users)
28450
28456
  for user in users:
28451
28457
  i += 1
28452
- user, meet, kvList = buildMeetServiceObject(API.MEET, user, i, count, [Ent.MEET_SPACE, name, Ent.MEET_CONFERENCE, None])
28458
+ user, meet, kvList = buildMeetServiceObject(API.MEET_SPACES, user, i, count, [Ent.MEET_SPACE, name, Ent.MEET_CONFERENCE, None])
28453
28459
  if not meet:
28454
28460
  continue
28455
28461
  try:
@@ -28530,7 +28536,7 @@ def printShowMeetConferences(users):
28530
28536
  i, count, users = getEntityArgument(users)
28531
28537
  for user in users:
28532
28538
  i += 1
28533
- user, meet, kvList = buildMeetServiceObject(API.MEET, user, i, count, [Ent.MEET_CONFERENCE, None])
28539
+ user, meet, kvList = buildMeetServiceObject(API.MEET_READONLY, user, i, count, [Ent.MEET_CONFERENCE, None])
28534
28540
  if not meet:
28535
28541
  continue
28536
28542
  try:
@@ -28606,7 +28612,7 @@ def _printShowMeetItems(users, entityType):
28606
28612
  i, count, users = getEntityArgument(users)
28607
28613
  for user in users:
28608
28614
  i += 1
28609
- user, meet, kvList = buildMeetServiceObject(API.MEET, user, i, count, [Ent.MEET_CONFERENCE, parent])
28615
+ user, meet, kvList = buildMeetServiceObject(API.MEET_READONLY, user, i, count, [Ent.MEET_CONFERENCE, parent])
28610
28616
  if not meet:
28611
28617
  continue
28612
28618
  if entityType == Ent.MEET_PARTICIPANT:
gam/cacerts.pem CHANGED
@@ -433,106 +433,6 @@ pL/QlwVKvOoYKAKQvVR4CSFx09F9HdkWsKlhPdAKACL8x3vLCWRFCztAgfd9fDL1
433
433
  mMpYjn0q7pBZc2T5NnReJaH1ZgUufzkVqSr7UIuOhWn0
434
434
  -----END CERTIFICATE-----
435
435
 
436
- # Operating CA: GoDaddy
437
- # Issuer: O=Starfield Technologies, Inc. OU=Starfield Class 2 Certification Authority
438
- # Subject: O=Starfield Technologies, Inc. OU=Starfield Class 2 Certification Authority
439
- # Label: "Starfield Class 2 CA"
440
- # Serial: 0
441
- # MD5 Fingerprint: 32:4a:4b:bb:c8:63:69:9b:be:74:9a:c6:dd:1d:46:24
442
- # SHA1 Fingerprint: ad:7e:1c:28:b0:64:ef:8f:60:03:40:20:14:c3:d0:e3:37:0e:b5:8a
443
- # SHA256 Fingerprint: 14:65:fa:20:53:97:b8:76:fa:a6:f0:a9:95:8e:55:90:e4:0f:cc:7f:aa:4f:b7:c2:c8:67:75:21:fb:5f:b6:58
444
- -----BEGIN CERTIFICATE-----
445
- MIIEDzCCAvegAwIBAgIBADANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJVUzEl
446
- MCMGA1UEChMcU3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAGA1UECxMp
447
- U3RhcmZpZWxkIENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDQw
448
- NjI5MTczOTE2WhcNMzQwNjI5MTczOTE2WjBoMQswCQYDVQQGEwJVUzElMCMGA1UE
449
- ChMcU3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAGA1UECxMpU3RhcmZp
450
- ZWxkIENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggEgMA0GCSqGSIb3
451
- DQEBAQUAA4IBDQAwggEIAoIBAQC3Msj+6XGmBIWtDBFk385N78gDGIc/oav7PKaf
452
- 8MOh2tTYbitTkPskpD6E8J7oX+zlJ0T1KKY/e97gKvDIr1MvnsoFAZMej2YcOadN
453
- +lq2cwQlZut3f+dZxkqZJRRU6ybH838Z1TBwj6+wRir/resp7defqgSHo9T5iaU0
454
- X9tDkYI22WY8sbi5gv2cOj4QyDvvBmVmepsZGD3/cVE8MC5fvj13c7JdBmzDI1aa
455
- K4UmkhynArPkPw2vCHmCuDY96pzTNbO8acr1zJ3o/WSNF4Azbl5KXZnJHoe0nRrA
456
- 1W4TNSNe35tfPe/W93bC6j67eA0cQmdrBNj41tpvi/JEoAGrAgEDo4HFMIHCMB0G
457
- A1UdDgQWBBS/X7fRzt0fhvRbVazc1xDCDqmI5zCBkgYDVR0jBIGKMIGHgBS/X7fR
458
- zt0fhvRbVazc1xDCDqmI56FspGowaDELMAkGA1UEBhMCVVMxJTAjBgNVBAoTHFN0
459
- YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xMjAwBgNVBAsTKVN0YXJmaWVsZCBD
460
- bGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8w
461
- DQYJKoZIhvcNAQEFBQADggEBAAWdP4id0ckaVaGsafPzWdqbAYcaT1epoXkJKtv3
462
- L7IezMdeatiDh6GX70k1PncGQVhiv45YuApnP+yz3SFmH8lU+nLMPUxA2IGvd56D
463
- eruix/U0F47ZEUD0/CwqTRV/p2JdLiXTAAsgGh1o+Re49L2L7ShZ3U0WixeDyLJl
464
- xy16paq8U4Zt3VekyvggQQto8PT7dL5WXXp59fkdheMtlb71cZBDzI0fmgAKhynp
465
- VSJYACPq4xJDKVtHCN2MQWplBqjlIapBtJUhlbl90TSrE9atvNziPTnNvT51cKEY
466
- WQPJIrSPnNVeKtelttQKbfi3QBFGmh95DmK/D5fs4C8fF5Q=
467
- -----END CERTIFICATE-----
468
-
469
- # Operating CA: GoDaddy
470
- # Issuer: O=The Go Daddy Group, Inc. OU=Go Daddy Class 2 Certification Authority
471
- # Subject: O=The Go Daddy Group, Inc. OU=Go Daddy Class 2 Certification Authority
472
- # Label: "Go Daddy Class 2 CA"
473
- # Serial: 0
474
- # MD5 Fingerprint: 91:de:06:25:ab:da:fd:32:17:0c:bb:25:17:2a:84:67
475
- # SHA1 Fingerprint: 27:96:ba:e6:3f:18:01:e2:77:26:1b:a0:d7:77:70:02:8f:20:ee:e4
476
- # SHA256 Fingerprint: c3:84:6b:f2:4b:9e:93:ca:64:27:4c:0e:c6:7c:1e:cc:5e:02:4f:fc:ac:d2:d7:40:19:35:0e:81:fe:54:6a:e4
477
- -----BEGIN CERTIFICATE-----
478
- MIIEADCCAuigAwIBAgIBADANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEh
479
- MB8GA1UEChMYVGhlIEdvIERhZGR5IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBE
480
- YWRkeSBDbGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA0MDYyOTE3
481
- MDYyMFoXDTM0MDYyOTE3MDYyMFowYzELMAkGA1UEBhMCVVMxITAfBgNVBAoTGFRo
482
- ZSBHbyBEYWRkeSBHcm91cCwgSW5jLjExMC8GA1UECxMoR28gRGFkZHkgQ2xhc3Mg
483
- MiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASAwDQYJKoZIhvcNAQEBBQADggEN
484
- ADCCAQgCggEBAN6d1+pXGEmhW+vXX0iG6r7d/+TvZxz0ZWizV3GgXne77ZtJ6XCA
485
- PVYYYwhv2vLM0D9/AlQiVBDYsoHUwHU9S3/Hd8M+eKsaA7Ugay9qK7HFiH7Eux6w
486
- wdhFJ2+qN1j3hybX2C32qRe3H3I2TqYXP2WYktsqbl2i/ojgC95/5Y0V4evLOtXi
487
- EqITLdiOr18SPaAIBQi2XKVlOARFmR6jYGB0xUGlcmIbYsUfb18aQr4CUWWoriMY
488
- avx4A6lNf4DD+qta/KFApMoZFv6yyO9ecw3ud72a9nmYvLEHZ6IVDd2gWMZEewo+
489
- YihfukEHU1jPEX44dMX4/7VpkI+EdOqXG68CAQOjgcAwgb0wHQYDVR0OBBYEFNLE
490
- sNKR1EwRcbNhyz2h/t2oatTjMIGNBgNVHSMEgYUwgYKAFNLEsNKR1EwRcbNhyz2h
491
- /t2oatTjoWekZTBjMQswCQYDVQQGEwJVUzEhMB8GA1UEChMYVGhlIEdvIERhZGR5
492
- IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBEYWRkeSBDbGFzcyAyIENlcnRpZmlj
493
- YXRpb24gQXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQAD
494
- ggEBADJL87LKPpH8EsahB4yOd6AzBhRckB4Y9wimPQoZ+YeAEW5p5JYXMP80kWNy
495
- OO7MHAGjHZQopDH2esRU1/blMVgDoszOYtuURXO1v0XJJLXVggKtI3lpjbi2Tc7P
496
- TMozI+gciKqdi0FuFskg5YmezTvacPd+mSYgFFQlq25zheabIZ0KbIIOqPjCDPoQ
497
- HmyW74cNxA9hi63ugyuV+I6ShHI56yDqg+2DzZduCLzrTia2cyvk0/ZM/iZx4mER
498
- dEr/VxqHD3VILs9RaRegAhJhldXRQLIQTO7ErBBDpqWeCtWVYpoNz4iCxTIM5Cuf
499
- ReYNnyicsbkqWletNw+vHX/bvZ8=
500
- -----END CERTIFICATE-----
501
-
502
- # Operating CA: Sectigo
503
- # Issuer: CN=AAA Certificate Services O=Comodo CA Limited
504
- # Subject: CN=AAA Certificate Services O=Comodo CA Limited
505
- # Label: "Comodo AAA Services root"
506
- # Serial: 1
507
- # MD5 Fingerprint: 49:79:04:b0:eb:87:19:ac:47:b0:bc:11:51:9b:74:d0
508
- # SHA1 Fingerprint: d1:eb:23:a4:6d:17:d6:8f:d9:25:64:c2:f1:f1:60:17:64:d8:e3:49
509
- # SHA256 Fingerprint: d7:a7:a0:fb:5d:7e:27:31:d7:71:e9:48:4e:bc:de:f7:1d:5f:0c:3e:0a:29:48:78:2b:c8:3e:e0:ea:69:9e:f4
510
- -----BEGIN CERTIFICATE-----
511
- MIIEMjCCAxqgAwIBAgIBATANBgkqhkiG9w0BAQUFADB7MQswCQYDVQQGEwJHQjEb
512
- MBkGA1UECAwSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRow
513
- GAYDVQQKDBFDb21vZG8gQ0EgTGltaXRlZDEhMB8GA1UEAwwYQUFBIENlcnRpZmlj
514
- YXRlIFNlcnZpY2VzMB4XDTA0MDEwMTAwMDAwMFoXDTI4MTIzMTIzNTk1OVowezEL
515
- MAkGA1UEBhMCR0IxGzAZBgNVBAgMEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UE
516
- BwwHU2FsZm9yZDEaMBgGA1UECgwRQ29tb2RvIENBIExpbWl0ZWQxITAfBgNVBAMM
517
- GEFBQSBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczCCASIwDQYJKoZIhvcNAQEBBQADggEP
518
- ADCCAQoCggEBAL5AnfRu4ep2hxxNRUSOvkbIgwadwSr+GB+O5AL686tdUIoWMQua
519
- BtDFcCLNSS1UY8y2bmhGC1Pqy0wkwLxyTurxFa70VJoSCsN6sjNg4tqJVfMiWPPe
520
- 3M/vg4aijJRPn2jymJBGhCfHdr/jzDUsi14HZGWCwEiwqJH5YZ92IFCokcdmtet4
521
- YgNW8IoaE+oxox6gmf049vYnMlhvB/VruPsUK6+3qszWY19zjNoFmag4qMsXeDZR
522
- rOme9Hg6jc8P2ULimAyrL58OAd7vn5lJ8S3frHRNG5i1R8XlKdH5kBjHYpy+g8cm
523
- ez6KJcfA3Z3mNWgQIJ2P2N7Sw4ScDV7oL8kCAwEAAaOBwDCBvTAdBgNVHQ4EFgQU
524
- oBEKIz6W8Qfs4q8p74Klf9AwpLQwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQF
525
- MAMBAf8wewYDVR0fBHQwcjA4oDagNIYyaHR0cDovL2NybC5jb21vZG9jYS5jb20v
526
- QUFBQ2VydGlmaWNhdGVTZXJ2aWNlcy5jcmwwNqA0oDKGMGh0dHA6Ly9jcmwuY29t
527
- b2RvLm5ldC9BQUFDZXJ0aWZpY2F0ZVNlcnZpY2VzLmNybDANBgkqhkiG9w0BAQUF
528
- AAOCAQEACFb8AvCb6P+k+tZ7xkSAzk/ExfYAWMymtrwUSWgEdujm7l3sAg9g1o1Q
529
- GE8mTgHj5rCl7r+8dFRBv/38ErjHT1r0iWAFf2C3BUrz9vHCv8S5dIa2LX1rzNLz
530
- Rt0vxuBqw8M0Ayx9lt1awg6nCpnBBYurDC/zXDrPbDdVCYfeU0BsWO/8tqtlbgT2
531
- G9w84FoVxp7Z8VlIMCFlA2zs6SFz7JsDoeA3raAVGI/6ugLOpyypEBMs1OUIJqsi
532
- l2D4kF501KKaU73yqWjgom7C12yxow+ev+to51byrvLjKzg6CYG1a4XXvi3tPxq3
533
- smPi9WIsgtRqAEFQ8TmDn5XpNpaYbg==
534
- -----END CERTIFICATE-----
535
-
536
436
  # Operating CA: Sectigo
537
437
  # Issuer: CN=COMODO Certification Authority O=COMODO CA Limited
538
438
  # Subject: CN=COMODO Certification Authority O=COMODO CA Limited
gam/gamlib/glapi.py CHANGED
@@ -75,8 +75,8 @@ IAM_CREDENTIALS = 'iamcredentials'
75
75
  KEEP = 'keep'
76
76
  LICENSING = 'licensing'
77
77
  LOOKERSTUDIO = 'datastudio'
78
- MEET = 'meet'
79
- MEET_BETA = 'meetbeta'
78
+ MEET_SPACES = 'meet'
79
+ MEET_READONLY = 'meetreadonly'
80
80
  OAUTH2 = 'oauth2'
81
81
  ORGPOLICY = 'orgpolicy'
82
82
  PEOPLE = 'people'
@@ -267,8 +267,8 @@ _INFO = {
267
267
  KEEP: {'name': 'Keep API', 'version': 'v1', 'v2discovery': True},
268
268
  LICENSING: {'name': 'License Manager API', 'version': 'v1', 'v2discovery': True},
269
269
  LOOKERSTUDIO: {'name': 'Looker Studio API', 'version': 'v1', 'v2discovery': True, 'localjson': True},
270
- MEET: {'name': 'Meet API', 'version': 'v2', 'v2discovery': True},
271
- MEET_BETA: {'name': 'Meet API Beta', 'version': 'v2beta', 'v2discovery': True, 'localjson': True, 'mappedAPI': MEET},
270
+ MEET_SPACES: {'name': 'Meet API - Manage/Display Meeting Spaces', 'version': 'v2', 'v2discovery': True},
271
+ MEET_READONLY: {'name': 'Meet API - Read Meeting Spaces metadata', 'version': 'v2', 'v2discovery': True, 'mappedAPI': MEET_SPACES},
272
272
  OAUTH2: {'name': 'OAuth2 API', 'version': 'v2', 'v2discovery': False},
273
273
  ORGPOLICY: {'name': 'Organization Policy API', 'version': 'v2', 'v2discovery': True},
274
274
  PEOPLE: {'name': 'People API', 'version': 'v1', 'v2discovery': True},
@@ -689,11 +689,15 @@ _SVCACCT_SCOPES = [
689
689
  'api': LOOKERSTUDIO,
690
690
  'subscopes': READONLY,
691
691
  'scope': 'https://www.googleapis.com/auth/datastudio'},
692
- {'name': 'Meet API',
693
- 'api': MEET,
694
- 'subscopes': READONLY,
695
- 'scope': 'https://www.googleapis.com/auth/meetings.space.created',
696
- 'roscope': 'https://www.googleapis.com/auth/meetings.space.readonly'},
692
+ {'name': 'Meet API - Manage/Display Meeting Spaces',
693
+ 'api': MEET_SPACES,
694
+ 'subscopes': [],
695
+ 'scope': ['https://www.googleapis.com/auth/meetings.space.created',
696
+ 'https://www.googleapis.com/auth/meetings.space.settings']},
697
+ {'name': 'Meet API - Read Meeting Spaces metadata',
698
+ 'api': MEET_READONLY,
699
+ 'subscopes': [],
700
+ 'scope': 'https://www.googleapis.com/auth/meetings.space.readonly'},
697
701
  {'name': 'OAuth2 API',
698
702
  'api': OAUTH2,
699
703
  'subscopes': [],
@@ -844,4 +848,3 @@ def findAPIforScope(scopesList):
844
848
  if not requiredAPIs:
845
849
  requiredAPIs = scopesList
846
850
  return ' or '.join(requiredAPIs)
847
-
gam/gamlib/glcfg.py CHANGED
@@ -153,8 +153,6 @@ DOMAIN = 'domain'
153
153
  DRIVE_DIR = 'drive_dir'
154
154
  # When retrieving lists of Drive files/folders from API, how many should be retrieved in each chunk
155
155
  DRIVE_MAX_RESULTS = 'drive_max_results'
156
- # Use Drive V3 beta
157
- DRIVE_V3_BETA = 'drive_v3_beta'
158
156
  # When processing email messages in batches, how many should be processed in each batch
159
157
  EMAIL_BATCH_SIZE = 'email_batch_size'
160
158
  # Enable Delegated Admin Service Account
@@ -177,8 +175,6 @@ INTER_BATCH_WAIT = 'inter_batch_wait'
177
175
  LICENSE_MAX_RESULTS = 'license_max_results'
178
176
  # License SKUs to process
179
177
  LICENSE_SKUS = 'license_skus'
180
- # Use Meet V2 beta
181
- MEET_V2_BETA = 'meet_v2_beta'
182
178
  # When retrieving lists of Google Group members from API, how many should be retrieved in each chunk
183
179
  MEMBER_MAX_RESULTS = 'member_max_results'
184
180
  # CI API Group members max page size when view=BASIC
@@ -379,7 +375,6 @@ Defaults = {
379
375
  DRIVE_DIR: '',
380
376
  ENFORCE_EXPANSIVE_ACCESS: TRUE,
381
377
  DRIVE_MAX_RESULTS: '1000',
382
- DRIVE_V3_BETA: FALSE,
383
378
  EMAIL_BATCH_SIZE: '50',
384
379
  ENABLE_DASA: FALSE,
385
380
  ENABLE_GCLOUD_REAUTH: FALSE,
@@ -390,7 +385,6 @@ Defaults = {
390
385
  INTER_BATCH_WAIT: '0',
391
386
  LICENSE_MAX_RESULTS: '100',
392
387
  LICENSE_SKUS: '',
393
- MEET_V2_BETA: FALSE,
394
388
  MEMBER_MAX_RESULTS: '200',
395
389
  MEMBER_MAX_RESULTS_CI_BASIC: '1000',
396
390
  MEMBER_MAX_RESULTS_CI_FULL: '500',
@@ -547,7 +541,6 @@ VAR_INFO = {
547
541
  DRIVE_DIR: {VAR_TYPE: TYPE_DIRECTORY, VAR_ENVVAR: 'GAMDRIVEDIR'},
548
542
  ENFORCE_EXPANSIVE_ACCESS: {VAR_TYPE: TYPE_BOOLEAN},
549
543
  DRIVE_MAX_RESULTS: {VAR_TYPE: TYPE_INTEGER, VAR_LIMITS: (1, 1000)},
550
- DRIVE_V3_BETA: {VAR_TYPE: TYPE_BOOLEAN},
551
544
  EMAIL_BATCH_SIZE: {VAR_TYPE: TYPE_INTEGER, VAR_LIMITS: (1, 100)},
552
545
  ENABLE_DASA: {VAR_TYPE: TYPE_BOOLEAN, VAR_SIGFILE: 'enabledasa.txt', VAR_SFFT: (FALSE, TRUE)},
553
546
  ENABLE_GCLOUD_REAUTH: {VAR_TYPE: TYPE_BOOLEAN},
@@ -558,7 +551,6 @@ VAR_INFO = {
558
551
  INTER_BATCH_WAIT: {VAR_TYPE: TYPE_FLOAT, VAR_LIMITS: (0.0, 60.0)},
559
552
  LICENSE_MAX_RESULTS: {VAR_TYPE: TYPE_INTEGER, VAR_LIMITS: (10, 1000)},
560
553
  LICENSE_SKUS: {VAR_TYPE: TYPE_STRING, VAR_LIMITS: (0, None)},
561
- MEET_V2_BETA: {VAR_TYPE: TYPE_BOOLEAN},
562
554
  MEMBER_MAX_RESULTS: {VAR_TYPE: TYPE_INTEGER, VAR_LIMITS: (1, 200)},
563
555
  MEMBER_MAX_RESULTS_CI_BASIC: {VAR_TYPE: TYPE_INTEGER, VAR_LIMITS: (1, 1000)},
564
556
  MEMBER_MAX_RESULTS_CI_FULL: {VAR_TYPE: TYPE_INTEGER, VAR_LIMITS: (1, 500)},
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: gam7
3
- Version: 7.18.7
3
+ Version: 7.19.0
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
@@ -1,6 +1,6 @@
1
- gam/__init__.py,sha256=atub7c8uKUikbdJWxNf8X6b25PxCkfIIn56c3OO1ykE,3584006
1
+ gam/__init__.py,sha256=7DpxmEIlRnGPPhwqAmElntWcaDz5hJc8HLxBWyrB8g4,3584280
2
2
  gam/__main__.py,sha256=amz0-959ph6zkZKqjaar4n60yho-T37w6qWI36qx0CA,1049
3
- gam/cacerts.pem,sha256=82Ak7btW_2XvocLUvAwPmpx8Chi0oqtZUG1gseLK_t4,50235
3
+ gam/cacerts.pem,sha256=DUsVo2XlFYwfkhe3gnxa-Km4Z4noz74hSApXwTT-nQE,44344
4
4
  gam/cbcm-v1.1beta1.json,sha256=xO5XloCQQULmPbFBx5bckdqmbLFQ7sJ2TImhE1ysDIY,19439
5
5
  gam/contactdelegation-v1.json,sha256=kCWykxSH7jLHglb-nWE_RFauxRXa_1eisWXXAqHu6Ws,7663
6
6
  gam/datastudio-v1.json,sha256=L_mQBN8oYmfWODGvgrwTF9d2i8rEZJmzqIxw_Yr83lI,15673
@@ -23,8 +23,8 @@ gam/atom/token_store.py,sha256=7E6Ecvxa86WCvl1pJAhv78jg9OxQv8pMtIUcPhZCq04,3803
23
23
  gam/atom/url.py,sha256=pxO1TlORxyKQTQ1bkBE1unFzjnv9c8LjJkm-UEORShY,4276
24
24
  gam/gamlib/__init__.py,sha256=z5mF-y0j8pm-YNFBaiuxB4M_GAUPG-cXWwrhYwrVReM,679
25
25
  gam/gamlib/glaction.py,sha256=1Il_HrChVnPkzZwiZs5au4mFQVtq4K1Z42uIuR6qdnI,9419
26
- gam/gamlib/glapi.py,sha256=YPa_XvdoltFLSSrZOZ9thAwrAB_PU9BzJAIO6cUOSWI,35760
27
- gam/gamlib/glcfg.py,sha256=J4w16Nfk282S7iuSmk3601GHgt_MJ4qWeSzF5y7ZzX0,28139
26
+ gam/gamlib/glapi.py,sha256=u97M7Y2BeP3tYEEGYEz-9kY4fdV0fYkeqC3YN-sRwNc,36028
27
+ gam/gamlib/glcfg.py,sha256=87OwNxPbZy9nZr9n-12RSqTYai3zsZNYtR5WBaia6Y0,27906
28
28
  gam/gamlib/glclargs.py,sha256=pgomQOKbiKOI5TfdC0hTT5BqGbQcikDMRfkUk6DEXrM,43881
29
29
  gam/gamlib/glentity.py,sha256=ZQTdjVtGe8soMlgcSHJIpLHjQ_UtUL9qfw8ux-C4kik,34855
30
30
  gam/gamlib/glgapi.py,sha256=pdBbwNtnCwFWxJGaP-_3hdTjSNoOCJF2yo76WdQOi1k,40426
@@ -65,8 +65,8 @@ gam/googleapiclient/discovery_cache/base.py,sha256=yCDPtxnbNN-p5_9fzBacC6P3wcUPl
65
65
  gam/googleapiclient/discovery_cache/file_cache.py,sha256=sim3Mg4HgRYo3vX75jvcKy_aV568EvIrtBfvfbw-044,4774
66
66
  gam/iso8601/__init__.py,sha256=Z2PsYbXgAH5a5xzUvgczCboPzqWpm65kRcIngCnhViU,1218
67
67
  gam/iso8601/iso8601.py,sha256=Li2FHZ4sBTWuthuQhyCvmvj0j6At8JbGzkSv2fc2RHU,4384
68
- gam7-7.18.7.dist-info/METADATA,sha256=g_A8aIoSjWA76SA2SnuphAvL2w5WxTss4j_-5E6E2v4,2940
69
- gam7-7.18.7.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
70
- gam7-7.18.7.dist-info/entry_points.txt,sha256=HVUM5J7dA8YwvJfG30jiLefR19ExMs387TWugWd9sf4,42
71
- gam7-7.18.7.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
72
- gam7-7.18.7.dist-info/RECORD,,
68
+ gam7-7.19.0.dist-info/METADATA,sha256=fFVymg4f_UGTNHQI3Iz8uDInt15xAi5khvprWIsZYT8,2940
69
+ gam7-7.19.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
70
+ gam7-7.19.0.dist-info/entry_points.txt,sha256=HVUM5J7dA8YwvJfG30jiLefR19ExMs387TWugWd9sf4,42
71
+ gam7-7.19.0.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
72
+ gam7-7.19.0.dist-info/RECORD,,
File without changes