gam7 7.5.11__tar.gz → 7.5.13__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.
- {gam7-7.5.11 → gam7-7.5.13}/PKG-INFO +1 -1
- {gam7-7.5.11 → gam7-7.5.13}/src/GamUpdate.txt +12 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/__init__.py +15 -15
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/atom/mock_http.py +1 -1
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gamlib/glmsgs.py +2 -2
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gamlib/glskus.py +4 -4
- gam7-7.5.11/src/project-apis.txt +0 -23
- {gam7-7.5.11 → gam7-7.5.13}/.github/ISSUE_TEMPLATE/aa-question.md +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/.github/ISSUE_TEMPLATE/za-bug-report.md +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/.github/ISSUE_TEMPLATE/zz-feature-request.md +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/.github/ISSUE_TEMPLATE.txt +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/.github/actions/creds.tar.xz.gpg +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/.github/actions/decrypt.sh +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/.github/actions/entitlements.plist +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/.github/actions/package_exclusions.txt +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/.github/stale.yml +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/.github/workflows/build.yml +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/.github/workflows/codeql-analysis.yml +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/.github/workflows/get-cacerts.yml +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/.github/workflows/pypi.yml +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/.pre-commit-config.yaml +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/LICENSE +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/README.md +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/pyproject.toml +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/.gitignore +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/GamCommands.txt +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/LICENSE +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/cacerts.pem +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/callgam.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/__main__.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/atom/__init__.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/atom/auth.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/atom/client.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/atom/core.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/atom/data.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/atom/http.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/atom/http_core.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/atom/http_interface.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/atom/mock_http_core.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/atom/mock_service.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/atom/service.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/atom/token_store.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/atom/url.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/cacerts.pem +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/cbcm-v1.1beta1.json +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/contactdelegation-v1.json +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/datastudio-v1.json +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gamlib/__init__.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gamlib/glaction.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gamlib/glapi.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gamlib/glcfg.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gamlib/glclargs.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gamlib/glentity.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gamlib/glgapi.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gamlib/glgdata.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gamlib/glglobals.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gamlib/glindent.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gamlib/gluprop.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gamlib/glverlibs.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gamlib/yubikey.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gdata/__init__.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gdata/alt/__init__.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gdata/alt/app_engine.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gdata/alt/appengine.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gdata/apps/__init__.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gdata/apps/audit/__init__.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gdata/apps/audit/service.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gdata/apps/contacts/__init__.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gdata/apps/contacts/service.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gdata/apps/service.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gdata/service.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/gdata/urlfetch.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/googleapiclient/__init__.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/googleapiclient/_auth.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/googleapiclient/_helpers.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/googleapiclient/channel.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/googleapiclient/discovery.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/googleapiclient/discovery_cache/__init__.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/googleapiclient/discovery_cache/appengine_memcache.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/googleapiclient/discovery_cache/base.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/googleapiclient/discovery_cache/file_cache.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/googleapiclient/errors.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/googleapiclient/http.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/googleapiclient/mimeparse.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/googleapiclient/model.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/googleapiclient/schema.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/googleapiclient/version.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/iso8601/__init__.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/iso8601/iso8601.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/meet-v2beta.json +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/serviceaccountlookup-v1.json +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam/six.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam-install.sh +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam-setup.bat +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam.exe.manifest +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam.spec +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/gam.wxs +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/license.rtf +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/requirements-dev.txt +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/requirements.txt +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/setup.cfg +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/setup.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/tools/a_atleast_b.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/tools/gen-wix-xml-filelist.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/tools/mkGamRef.py +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/tools/openssl.props +0 -0
- {gam7-7.5.11 → gam7-7.5.13}/src/version_info.txt.in +0 -0
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
7.05.13
|
|
2
|
+
|
|
3
|
+
Updated license product names to match Google.
|
|
4
|
+
|
|
5
|
+
7.05.12
|
|
6
|
+
|
|
7
|
+
Fixed bug in `gam update chromepolicy` where `appid` was misinterpreted for `chrome.devices.kiosk` policies
|
|
8
|
+
and an error was generated.
|
|
9
|
+
```
|
|
10
|
+
ERROR: Chrome Policy Schema: customers/C123abc456/policySchemas/<Field>, Does not exist
|
|
11
|
+
```
|
|
12
|
+
|
|
1
13
|
7.05.11
|
|
2
14
|
|
|
3
15
|
Added the following License SKUs:
|
|
@@ -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.05.
|
|
28
|
+
__version__ = '7.05.13'
|
|
29
29
|
__license__ = 'Apache License 2.0 (http://www.apache.org/licenses/LICENSE-2.0)'
|
|
30
30
|
|
|
31
31
|
#pylint: disable=wrong-import-position
|
|
@@ -28202,6 +28202,7 @@ def doUpdateChromePolicy():
|
|
|
28202
28202
|
schemaName, schema = simplifyChromeSchema(_getChromePolicySchema(cp, Cmd.Previous(), '*'))
|
|
28203
28203
|
body['requests'].append({'policyValue': {'policySchema': schemaName, 'value': {}},
|
|
28204
28204
|
'updateMask': ''})
|
|
28205
|
+
schemaNameList.append(schemaName)
|
|
28205
28206
|
while Cmd.ArgumentsRemaining():
|
|
28206
28207
|
field = getArgumentEmptyAllowed()
|
|
28207
28208
|
# Allow an empty field/value pair which makes processing an input CSV file with schemas with different numbers of fields easy
|
|
@@ -28210,8 +28211,9 @@ def doUpdateChromePolicy():
|
|
|
28210
28211
|
Cmd.Advance()
|
|
28211
28212
|
continue
|
|
28212
28213
|
if field in {'ou', 'org', 'orgunit', 'group', 'printerid', 'appid'} or '.' in field:
|
|
28213
|
-
|
|
28214
|
-
|
|
28214
|
+
if field != 'appid' or not schemaName.startswith('chrome.devices.kiosk'):
|
|
28215
|
+
Cmd.Backup()
|
|
28216
|
+
break # field is actually a new policy name or orgunit
|
|
28215
28217
|
# JSON
|
|
28216
28218
|
if field == 'json':
|
|
28217
28219
|
jsonData = getJSON(['direct', 'name', 'orgUnitPath', 'parentOrgUnitPath', 'group'])
|
|
@@ -28222,7 +28224,7 @@ def doUpdateChromePolicy():
|
|
|
28222
28224
|
body['requests'][-1]['policyTargetKey']['additionalTargetKeys'] = {atk['name']: atk['value']}
|
|
28223
28225
|
if atk['name'] == 'app_id':
|
|
28224
28226
|
schemaNameAppId += f"({atk['value']})"
|
|
28225
|
-
schemaNameList
|
|
28227
|
+
schemaNameList[-1] = schemaNameAppId
|
|
28226
28228
|
for field in jsonData.get('fields', []):
|
|
28227
28229
|
casedField = field['name']
|
|
28228
28230
|
lowerField = casedField.lower()
|
|
@@ -28263,7 +28265,6 @@ def doUpdateChromePolicy():
|
|
|
28263
28265
|
body['requests'][-1]['policyValue']['value'][casedField] = value
|
|
28264
28266
|
body['requests'][-1]['updateMask'] += f'{casedField},'
|
|
28265
28267
|
break
|
|
28266
|
-
schemaNameList.append(schemaName)
|
|
28267
28268
|
# Handle TYPE_MESSAGE fields with durations, values, counts and timeOfDay as special cases
|
|
28268
28269
|
tmschema = CHROME_SCHEMA_TYPE_MESSAGE.get(schemaName, {}).get(field)
|
|
28269
28270
|
if tmschema:
|
|
@@ -42476,16 +42477,16 @@ class PasswordOptions():
|
|
|
42476
42477
|
up = 'password'
|
|
42477
42478
|
password = self.GetPassword()
|
|
42478
42479
|
if password:
|
|
42479
|
-
|
|
42480
|
-
if notFoundBody[up].lower() in {'blocklogin'}:
|
|
42480
|
+
if password.lower() == 'blocklogin':
|
|
42481
42481
|
self.makeCleanPassword = False
|
|
42482
42482
|
notFoundBody[up] = self.CreateRandomPassword()
|
|
42483
|
-
|
|
42484
|
-
elif notFoundBody[up].lower() in {'random', 'uniquerandom'}:
|
|
42483
|
+
elif password.lower() in {'random', 'uniquerandom'}:
|
|
42485
42484
|
self.SetCleanPasswordLen()
|
|
42486
42485
|
self.makeCleanPassword = True
|
|
42487
42486
|
notFoundBody[up] = self.CreateRandomPassword()
|
|
42488
|
-
|
|
42487
|
+
else:
|
|
42488
|
+
notFoundBody[up] = password
|
|
42489
|
+
self.notFoundPassword = notFoundBody[up]
|
|
42489
42490
|
elif myarg in {'lograndompassword', 'logpassword'}:
|
|
42490
42491
|
self.filename = getString(Cmd.OB_FILE_NAME)
|
|
42491
42492
|
else:
|
|
@@ -42528,6 +42529,8 @@ class PasswordOptions():
|
|
|
42528
42529
|
self.promptForUniquePassword = True
|
|
42529
42530
|
else:
|
|
42530
42531
|
self.promptForPassword = True
|
|
42532
|
+
else:
|
|
42533
|
+
self.password = password
|
|
42531
42534
|
elif up == 'hashFunction':
|
|
42532
42535
|
body[up] = self.HASH_FUNCTION_MAP[myarg]
|
|
42533
42536
|
self.clearPassword = self.hashPassword = False
|
|
@@ -43240,9 +43243,7 @@ def doCreateUser():
|
|
|
43240
43243
|
cd = buildGAPIObject(API.DIRECTORY)
|
|
43241
43244
|
body, notify, tagReplacements, addGroups, addAliases, PwdOpts, \
|
|
43242
43245
|
_, _, _, \
|
|
43243
|
-
parameters, resolveConflictAccount = getUserAttributes(cd,
|
|
43244
|
-
False,
|
|
43245
|
-
noUid=True)
|
|
43246
|
+
parameters, resolveConflictAccount = getUserAttributes(cd, False, noUid=True)
|
|
43246
43247
|
suffix = 0
|
|
43247
43248
|
originalEmail = body['primaryEmail']
|
|
43248
43249
|
atLoc = originalEmail.find('@')
|
|
@@ -43350,8 +43351,7 @@ def updateUsers(entityList):
|
|
|
43350
43351
|
updateRetryDelay = 5
|
|
43351
43352
|
body, notify, tagReplacements, addGroups, addAliases, PwdOpts, \
|
|
43352
43353
|
updatePrimaryEmail, notFoundBody, groupOrgUnitMap, \
|
|
43353
|
-
parameters, resolveConflictAccount = getUserAttributes(cd,
|
|
43354
|
-
True)
|
|
43354
|
+
parameters, resolveConflictAccount = getUserAttributes(cd, True)
|
|
43355
43355
|
vfe = 'primaryEmail' in body and body['primaryEmail'][:4].lower() == 'vfe@'
|
|
43356
43356
|
if body.get('orgUnitPath', '') and parameters['immutableOUs']:
|
|
43357
43357
|
ubody = body.copy()
|
|
@@ -108,7 +108,7 @@ class MockHttpClient(atom.http_interface.GenericHttpClient):
|
|
|
108
108
|
for recording in self.recordings:
|
|
109
109
|
if recording[0].operation == operation and recording[0].url == url:
|
|
110
110
|
return recording[1]
|
|
111
|
-
raise NoRecordingFound('No
|
|
111
|
+
raise NoRecordingFound('No recordings found for %s %s' % (
|
|
112
112
|
operation, url))
|
|
113
113
|
else:
|
|
114
114
|
# There is a real HTTP client, so make the request, and record the
|
|
@@ -118,7 +118,7 @@ Your workspace is configured to disable service account private key uploads.
|
|
|
118
118
|
|
|
119
119
|
Please go to:
|
|
120
120
|
|
|
121
|
-
https://github.com/
|
|
121
|
+
https://github.com/GAM-team/GAM/wiki/Authorization#authorize-service-account-key-uploads
|
|
122
122
|
|
|
123
123
|
Follow the steps to allow a service account private key upload for the project ({0}) just created.
|
|
124
124
|
Once those steps are completed, you can continue with your project authentication.
|
|
@@ -322,7 +322,7 @@ INVALID_NUMBER_OF_CHAT_SPACE_MEMBERS = '{0} type {1} number of members, {2}, mus
|
|
|
322
322
|
INVALID_ORGUNIT = 'Invalid Organizational Unit'
|
|
323
323
|
INVALID_PATH = 'Invalid Path'
|
|
324
324
|
INVALID_PERMISSION_ATTRIBUTE_TYPE = 'permission attribute {0} not allowed with type {1}'
|
|
325
|
-
INVALID_REGION = 'See: https://github.com/
|
|
325
|
+
INVALID_REGION = 'See: https://github.com/GAM-team/GAM/wiki/Context-Aware-Access-Levels#caa-region-codes'
|
|
326
326
|
INVALID_QUERY = 'Invalid Query'
|
|
327
327
|
INVALID_RE = 'Invalid RE'
|
|
328
328
|
INVALID_REQUEST = 'Invalid Request'
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
|
|
23
23
|
# Products/SKUs
|
|
24
24
|
_PRODUCTS = {
|
|
25
|
-
'101001': 'Cloud Identity
|
|
25
|
+
'101001': 'Cloud Identity',
|
|
26
26
|
'101005': 'Cloud Identity Premium',
|
|
27
27
|
'101031': 'Google Workspace for Education',
|
|
28
28
|
'101033': 'Google Voice',
|
|
@@ -127,7 +127,7 @@ _SKUS = {
|
|
|
127
127
|
'product': 'Google-Apps', 'aliases': ['gau', 'gsb', 'unlimited', 'gsuitebusiness'], 'displayName': 'G Suite Business'},
|
|
128
128
|
'1010020020': {
|
|
129
129
|
'product': 'Google-Apps', 'aliases': ['gae', 'gse', 'enterprise', 'gsuiteenterprise',
|
|
130
|
-
'wsentplus', 'workspaceenterpriseplus'], 'displayName': 'Google Workspace Enterprise Plus'},
|
|
130
|
+
'wsentplus', 'workspaceenterpriseplus'], 'displayName': 'Google Workspace Enterprise Plus (formerly G Suite Enterprise)'},
|
|
131
131
|
'1010020025': {
|
|
132
132
|
'product': 'Google-Apps', 'aliases': ['wsbizplus', 'workspacebusinessplus'], 'displayName': 'Google Workspace Business Plus'},
|
|
133
133
|
'1010020026': {
|
|
@@ -159,11 +159,11 @@ _SKUS = {
|
|
|
159
159
|
'1010060001': {
|
|
160
160
|
'product': '101006', 'aliases': ['gsuiteessentials', 'essentials',
|
|
161
161
|
'd4e', 'driveenterprise', 'drive4enterprise',
|
|
162
|
-
'wsess', 'workspaceesentials'], 'displayName': 'Google Workspace Essentials'},
|
|
162
|
+
'wsess', 'workspaceesentials'], 'displayName': 'Google Workspace Essentials (formerly G Suite Essentials)'},
|
|
163
163
|
'1010060003': {
|
|
164
164
|
'product': 'Google-Apps', 'aliases': ['wsentess', 'workspaceenterpriseessentials'], 'displayName': 'Google Workspace Enterprise Essentials'},
|
|
165
165
|
'1010060005': {
|
|
166
|
-
'product': 'Google-Apps', 'aliases': ['wsessplus', 'workspaceessentialsplus'], 'displayName': 'Google Workspace Essentials Plus'},
|
|
166
|
+
'product': 'Google-Apps', 'aliases': ['wsessplus', 'workspaceessentialsplus'], 'displayName': 'Google Workspace Enterprise Essentials Plus'},
|
|
167
167
|
'Google-Drive-storage-20GB': {
|
|
168
168
|
'product': 'Google-Drive-storage', 'aliases': ['drive20gb', '20gb', 'googledrivestorage20gb'], 'displayName': 'Google Drive Storage 20GB'},
|
|
169
169
|
'Google-Drive-storage-50GB': {
|
gam7-7.5.11/src/project-apis.txt
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
accesscontextmanager.googleapis.com
|
|
2
|
-
admin.googleapis.com
|
|
3
|
-
alertcenter.googleapis.com
|
|
4
|
-
calendar-json.googleapis.com
|
|
5
|
-
chat.googleapis.com
|
|
6
|
-
chromemanagement.googleapis.com
|
|
7
|
-
chromepolicy.googleapis.com
|
|
8
|
-
classroom.googleapis.com
|
|
9
|
-
cloudidentity.googleapis.com
|
|
10
|
-
cloudresourcemanager.googleapis.com
|
|
11
|
-
contacts.googleapis.com
|
|
12
|
-
drive.googleapis.com
|
|
13
|
-
driveactivity.googleapis.com
|
|
14
|
-
iap.googleapis.com
|
|
15
|
-
gmail.googleapis.com
|
|
16
|
-
groupssettings.googleapis.com
|
|
17
|
-
iam.googleapis.com
|
|
18
|
-
licensing.googleapis.com
|
|
19
|
-
reseller.googleapis.com
|
|
20
|
-
sheets.googleapis.com
|
|
21
|
-
siteverification.googleapis.com
|
|
22
|
-
storage-api.googleapis.com
|
|
23
|
-
vault.googleapis.com
|
|
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
|
|
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
|
|
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
|