gam7 7.20.3__py3-none-any.whl → 7.28.2__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.
- gam/__init__.py +1279 -673
- gam/__main__.py +6 -1
- gam/gamlib/glapi.py +35 -19
- gam/gamlib/glcfg.py +12 -0
- gam/gamlib/glclargs.py +288 -5
- gam/gamlib/glentity.py +11 -3
- gam/gamlib/glglobals.py +3 -0
- gam/gamlib/glmsgs.py +3 -1
- gam/gamlib/glverlibs.py +1 -1
- gam/gamlib/yubikey.py +13 -12
- {gam7-7.20.3.dist-info → gam7-7.28.2.dist-info}/METADATA +10 -4
- {gam7-7.20.3.dist-info → gam7-7.28.2.dist-info}/RECORD +15 -33
- gam/googleapiclient/__init__.py +0 -27
- gam/googleapiclient/_auth.py +0 -167
- gam/googleapiclient/_helpers.py +0 -207
- gam/googleapiclient/channel.py +0 -315
- gam/googleapiclient/discovery.py +0 -1662
- gam/googleapiclient/discovery_cache/__init__.py +0 -78
- gam/googleapiclient/discovery_cache/appengine_memcache.py +0 -55
- gam/googleapiclient/discovery_cache/base.py +0 -46
- gam/googleapiclient/discovery_cache/file_cache.py +0 -145
- gam/googleapiclient/errors.py +0 -197
- gam/googleapiclient/http.py +0 -1962
- gam/googleapiclient/mimeparse.py +0 -183
- gam/googleapiclient/model.py +0 -429
- gam/googleapiclient/schema.py +0 -317
- gam/googleapiclient/version.py +0 -15
- gam/iso8601/__init__.py +0 -28
- gam/iso8601/iso8601.py +0 -160
- gam/six.py +0 -982
- {gam7-7.20.3.dist-info → gam7-7.28.2.dist-info}/WHEEL +0 -0
- {gam7-7.20.3.dist-info → gam7-7.28.2.dist-info}/entry_points.txt +0 -0
- {gam7-7.20.3.dist-info → gam7-7.28.2.dist-info}/licenses/LICENSE +0 -0
gam/__main__.py
CHANGED
|
@@ -34,7 +34,12 @@ def main():
|
|
|
34
34
|
|
|
35
35
|
# Run from command line
|
|
36
36
|
if __name__ == '__main__':
|
|
37
|
-
if
|
|
37
|
+
if getattr(sys, 'frozen', False): # we're frozen:
|
|
38
38
|
multiprocessing.freeze_support()
|
|
39
|
+
if platform.system() == 'Linux':
|
|
40
|
+
# set explictly since it's not default in Python < 3.14, forkserver should
|
|
41
|
+
# be safer than fork and less likely to see bulk command hangs.
|
|
42
|
+
multiprocessing.set_start_method('forkserver')
|
|
43
|
+
else:
|
|
39
44
|
multiprocessing.set_start_method('spawn')
|
|
40
45
|
main()
|
gam/gamlib/glapi.py
CHANGED
|
@@ -46,7 +46,6 @@ CLASSROOM = 'classroom'
|
|
|
46
46
|
CLOUDCHANNEL = 'cloudchannel'
|
|
47
47
|
CLOUDIDENTITY_DEVICES = 'cloudidentitydevices'
|
|
48
48
|
CLOUDIDENTITY_GROUPS = 'cloudidentitygroups'
|
|
49
|
-
CLOUDIDENTITY_GROUPS_BETA = 'cloudidentitygroupsbeta'
|
|
50
49
|
CLOUDIDENTITY_INBOUND_SSO = 'cloudidentityinboundsso'
|
|
51
50
|
CLOUDIDENTITY_ORGUNITS = 'cloudidentityorgunits'
|
|
52
51
|
CLOUDIDENTITY_ORGUNITS_BETA = 'cloudidentityorgunitsbeta'
|
|
@@ -105,6 +104,8 @@ YOUTUBE = 'youtube'
|
|
|
105
104
|
BUSINESSACCOUNTMANAGEMENT_SCOPE = 'https://www.googleapis.com/auth/business.manage'
|
|
106
105
|
CHROMEVERSIONHISTORY_URL = 'https://versionhistory.googleapis.com/v1/chrome/platforms'
|
|
107
106
|
DRIVE_SCOPE = 'https://www.googleapis.com/auth/drive'
|
|
107
|
+
DRIVE_FILE_SCOPE = 'https://www.googleapis.com/auth/drive.file'
|
|
108
|
+
DRIVE_READONLY_SCOPE = 'https://www.googleapis.com/auth/drive.readonly'
|
|
108
109
|
GMAIL_SEND_SCOPE = 'https://www.googleapis.com/auth/gmail.send'
|
|
109
110
|
GOOGLE_AUTH_PROVIDER_X509_CERT_URL = 'https://www.googleapis.com/oauth2/v1/certs'
|
|
110
111
|
GOOGLE_OAUTH2_ENDPOINT = 'https://accounts.google.com/o/oauth2/v2/auth'
|
|
@@ -156,6 +157,7 @@ OAUTH2_TOKEN_ERRORS = [
|
|
|
156
157
|
'access_denied: Account restricted',
|
|
157
158
|
'internal_failure: Backend Error',
|
|
158
159
|
'internal_failure: None',
|
|
160
|
+
'invalid_account: Forbidden',
|
|
159
161
|
'invalid_grant',
|
|
160
162
|
'invalid_grant: Bad Request',
|
|
161
163
|
'invalid_grant: Invalid email or User ID',
|
|
@@ -239,7 +241,6 @@ _INFO = {
|
|
|
239
241
|
CLOUDCHANNEL: {'name': 'Cloud Channel API', 'version': 'v1', 'v2discovery': True},
|
|
240
242
|
CLOUDIDENTITY_DEVICES: {'name': 'Cloud Identity API - Devices', 'version': 'v1', 'v2discovery': True, 'mappedAPI': 'cloudidentity'},
|
|
241
243
|
CLOUDIDENTITY_GROUPS: {'name': 'Cloud Identity API - Groups', 'version': 'v1', 'v2discovery': True, 'mappedAPI': 'cloudidentity'},
|
|
242
|
-
CLOUDIDENTITY_GROUPS_BETA: {'name': 'Cloud Identity API - Groups Beta', 'version': 'v1beta1', 'v2discovery': True, 'mappedAPI': 'cloudidentity'},
|
|
243
244
|
CLOUDIDENTITY_INBOUND_SSO: {'name': 'Cloud Identity API - Inbound SSO Settings', 'version': 'v1', 'v2discovery': True, 'mappedAPI': 'cloudidentity'},
|
|
244
245
|
CLOUDIDENTITY_ORGUNITS: {'name': 'Cloud Identity API - OrgUnits', 'version': 'v1', 'v2discovery': True, 'mappedAPI': 'cloudidentity'},
|
|
245
246
|
CLOUDIDENTITY_ORGUNITS_BETA: {'name': 'Cloud Identity API - OrgUnits Beta', 'version': 'v1beta1', 'v2discovery': True, 'mappedAPI': 'cloudidentity'},
|
|
@@ -253,7 +254,7 @@ _INFO = {
|
|
|
253
254
|
DOCS: {'name': 'Docs API', 'version': 'v1', 'v2discovery': True},
|
|
254
255
|
DRIVE2: {'name': 'Drive API v2', 'version': 'v2', 'v2discovery': False, 'mappedAPI': 'drive'},
|
|
255
256
|
DRIVE3: {'name': 'Drive API v3', 'version': 'v3', 'v2discovery': False, 'mappedAPI': 'drive'},
|
|
256
|
-
DRIVETD: {'name': 'Drive API v3 - todrive', 'version': 'v3', 'v2discovery': False, 'mappedAPI': 'drive'},
|
|
257
|
+
DRIVETD: {'name': 'Drive API v3 - write todrive data', 'version': 'v3', 'v2discovery': False, 'mappedAPI': 'drive'},
|
|
257
258
|
DRIVEACTIVITY: {'name': 'Drive Activity API v2', 'version': 'v2', 'v2discovery': True},
|
|
258
259
|
DRIVELABELS_ADMIN: {'name': 'Drive Labels API - Admin', 'version': 'v2', 'v2discovery': True, 'mappedAPI': DRIVELABELS},
|
|
259
260
|
DRIVELABELS_USER: {'name': 'Drive Labels API - User', 'version': 'v2', 'v2discovery': True, 'mappedAPI': DRIVELABELS},
|
|
@@ -283,7 +284,7 @@ _INFO = {
|
|
|
283
284
|
SERVICEMANAGEMENT: {'name': 'Service Management API', 'version': 'v1', 'v2discovery': True},
|
|
284
285
|
SERVICEUSAGE: {'name': 'Service Usage API', 'version': 'v1', 'v2discovery': True},
|
|
285
286
|
SHEETS: {'name': 'Sheets API', 'version': 'v4', 'v2discovery': True},
|
|
286
|
-
SHEETSTD: {'name': 'Sheets API - todrive', 'version': 'v4', 'v2discovery': True, 'mappedAPI': SHEETS},
|
|
287
|
+
SHEETSTD: {'name': 'Sheets API - write todrive data', 'version': 'v4', 'v2discovery': True, 'mappedAPI': SHEETS},
|
|
287
288
|
SITEVERIFICATION: {'name': 'Site Verification API', 'version': 'v1', 'v2discovery': True},
|
|
288
289
|
STORAGE: {'name': 'Cloud Storage API', 'version': 'v1', 'v2discovery': True},
|
|
289
290
|
STORAGEREAD: {'name': 'Cloud Storage API - Read', 'version': 'v1', 'v2discovery': True, 'mappedAPI': STORAGE},
|
|
@@ -384,10 +385,6 @@ _CLIENT_SCOPES = [
|
|
|
384
385
|
'api': CLOUDIDENTITY_GROUPS,
|
|
385
386
|
'subscopes': READONLY,
|
|
386
387
|
'scope': 'https://www.googleapis.com/auth/cloud-identity.groups'},
|
|
387
|
-
{'name': 'Cloud Identity API - Groups Beta (Enables group locking/unlocking)',
|
|
388
|
-
'api': CLOUDIDENTITY_GROUPS_BETA,
|
|
389
|
-
'subscopes': [],
|
|
390
|
-
'scope': 'https://www.googleapis.com/auth/cloud-identity.groups'},
|
|
391
388
|
{'name': 'Cloud Identity API - Inbound SSO Settings',
|
|
392
389
|
'api': CLOUDIDENTITY_INBOUND_SSO,
|
|
393
390
|
'subscopes': READONLY,
|
|
@@ -400,8 +397,7 @@ _CLIENT_SCOPES = [
|
|
|
400
397
|
'api': CLOUDIDENTITY_POLICY,
|
|
401
398
|
'subscopes': READONLY,
|
|
402
399
|
'roByDefault': True,
|
|
403
|
-
'scope': 'https://www.googleapis.com/auth/cloud-identity.policies'
|
|
404
|
-
},
|
|
400
|
+
'scope': 'https://www.googleapis.com/auth/cloud-identity.policies'},
|
|
405
401
|
{'name': 'Cloud Identity API - User Invitations',
|
|
406
402
|
'api': CLOUDIDENTITY_USERINVITATIONS,
|
|
407
403
|
'subscopes': READONLY,
|
|
@@ -416,7 +412,7 @@ _CLIENT_SCOPES = [
|
|
|
416
412
|
'subscopes': [],
|
|
417
413
|
'offByDefault': True,
|
|
418
414
|
'scope': STORAGE_READWRITE_SCOPE},
|
|
419
|
-
{'name': 'Contacts API - Domain Shared Contacts
|
|
415
|
+
{'name': 'Contacts API - Domain Shared Contacts',
|
|
420
416
|
'api': CONTACTS,
|
|
421
417
|
'subscopes': [],
|
|
422
418
|
'scope': 'https://www.google.com/m8/feeds'},
|
|
@@ -530,6 +526,17 @@ _CLIENT_SCOPES = [
|
|
|
530
526
|
'scope': 'https://www.googleapis.com/auth/ediscovery'},
|
|
531
527
|
]
|
|
532
528
|
|
|
529
|
+
_COMMANDDATA_CLIENT_SCOPES = [
|
|
530
|
+
{'name': 'Drive API - commanddata_clientaccess',
|
|
531
|
+
'api': DRIVE3,
|
|
532
|
+
'subscopes': [],
|
|
533
|
+
'scope': DRIVE_READONLY_SCOPE},
|
|
534
|
+
{'name': 'Sheets API - commanddata_clientaccess',
|
|
535
|
+
'api': SHEETS,
|
|
536
|
+
'subscopes': [],
|
|
537
|
+
'scope': 'https://www.googleapis.com/auth/spreadsheets.readonly'},
|
|
538
|
+
]
|
|
539
|
+
|
|
533
540
|
_TODRIVE_CLIENT_SCOPES = [
|
|
534
541
|
{'name': 'Drive API - todrive_clientaccess',
|
|
535
542
|
'api': DRIVE3,
|
|
@@ -538,7 +545,7 @@ _TODRIVE_CLIENT_SCOPES = [
|
|
|
538
545
|
{'name': 'Drive File API - todrive_clientaccess',
|
|
539
546
|
'api': DRIVE3,
|
|
540
547
|
'subscopes': [],
|
|
541
|
-
'scope':
|
|
548
|
+
'scope': DRIVE_FILE_SCOPE},
|
|
542
549
|
{'name': 'Gmail API - todrive_clientaccess',
|
|
543
550
|
'api': GMAIL,
|
|
544
551
|
'subscopes': [],
|
|
@@ -643,7 +650,8 @@ _SVCACCT_SCOPES = [
|
|
|
643
650
|
{'name': 'Drive Activity API v2 - must pair with Drive API',
|
|
644
651
|
'api': DRIVEACTIVITY,
|
|
645
652
|
'subscopes': [],
|
|
646
|
-
'scope':
|
|
653
|
+
'scope': [DRIVE_READONLY_SCOPE,
|
|
654
|
+
'https://www.googleapis.com/auth/drive.activity']},
|
|
647
655
|
{'name': 'Drive Labels API - Admin',
|
|
648
656
|
'api': DRIVELABELS_ADMIN,
|
|
649
657
|
'subscopes': READONLY,
|
|
@@ -656,10 +664,12 @@ _SVCACCT_SCOPES = [
|
|
|
656
664
|
'api': DOCS,
|
|
657
665
|
'subscopes': READONLY,
|
|
658
666
|
'scope': 'https://www.googleapis.com/auth/documents'},
|
|
659
|
-
{'name': 'Forms API',
|
|
667
|
+
{'name': 'Forms API - must pair with Drive API',
|
|
660
668
|
'api': FORMS,
|
|
661
669
|
'subscopes': [],
|
|
662
|
-
'scope':
|
|
670
|
+
'scope': [DRIVE_READONLY_SCOPE,
|
|
671
|
+
'https://www.googleapis.com/auth/forms.body',
|
|
672
|
+
'https://www.googleapis.com/auth/forms.responses.readonly']},
|
|
663
673
|
{'name': 'Gmail API - Full Access (Labels, Messages)',
|
|
664
674
|
'api': GMAIL,
|
|
665
675
|
'subscopes': [],
|
|
@@ -750,9 +760,10 @@ _SVCACCT_SCOPES = [
|
|
|
750
760
|
]
|
|
751
761
|
|
|
752
762
|
_SVCACCT_SPECIAL_SCOPES = [
|
|
753
|
-
{'name': 'Drive API - todrive',
|
|
763
|
+
{'name': 'Drive API - write todrive data - has access to all Drive',
|
|
754
764
|
'api': DRIVETD,
|
|
755
765
|
'subscopes': [],
|
|
766
|
+
'offByDefault': True,
|
|
756
767
|
'scope': DRIVE_SCOPE},
|
|
757
768
|
{'name': 'Gmail API - Full Access - read only',
|
|
758
769
|
'api': GMAIL,
|
|
@@ -764,8 +775,9 @@ _SVCACCT_SPECIAL_SCOPES = [
|
|
|
764
775
|
'subscopes': [],
|
|
765
776
|
'offByDefault': True,
|
|
766
777
|
'scope': GMAIL_SEND_SCOPE},
|
|
767
|
-
{'name': 'Sheets API - todrive',
|
|
778
|
+
{'name': 'Sheets API - write todrive data - has access to all Sheets',
|
|
768
779
|
'api': SHEETSTD,
|
|
780
|
+
'offByDefault': True,
|
|
769
781
|
'subscopes': [],
|
|
770
782
|
'scope': 'https://www.googleapis.com/auth/spreadsheets'},
|
|
771
783
|
]
|
|
@@ -789,14 +801,18 @@ def getVersion(api):
|
|
|
789
801
|
def getClientScopesSet(api):
|
|
790
802
|
return {scope['scope'] for scope in _CLIENT_SCOPES if scope['api'] == api}
|
|
791
803
|
|
|
792
|
-
def getClientScopesList(todriveClientAccess):
|
|
804
|
+
def getClientScopesList(commanddataClientAccess, todriveClientAccess):
|
|
793
805
|
caScopes = _CLIENT_SCOPES[:]
|
|
806
|
+
if commanddataClientAccess:
|
|
807
|
+
caScopes.extend(_COMMANDDATA_CLIENT_SCOPES)
|
|
794
808
|
if todriveClientAccess:
|
|
795
809
|
caScopes.extend(_TODRIVE_CLIENT_SCOPES)
|
|
796
810
|
return sorted(caScopes, key=lambda k: k['name'])
|
|
797
811
|
|
|
798
|
-
def getClientScopesURLs(todriveClientAccess):
|
|
812
|
+
def getClientScopesURLs(commanddataClientAccess, todriveClientAccess):
|
|
799
813
|
caScopes = _CLIENT_SCOPES[:]
|
|
814
|
+
if commanddataClientAccess:
|
|
815
|
+
caScopes.extend(_COMMANDDATA_CLIENT_SCOPES)
|
|
800
816
|
if todriveClientAccess:
|
|
801
817
|
caScopes.extend(_TODRIVE_CLIENT_SCOPES)
|
|
802
818
|
return sorted({scope['scope'] for scope in _CLIENT_SCOPES})
|
gam/gamlib/glcfg.py
CHANGED
|
@@ -69,6 +69,8 @@ CACHE_DISCOVERY_ONLY = 'cache_discovery_only'
|
|
|
69
69
|
CHANNEL_CUSTOMER_ID = 'channel_customer_id'
|
|
70
70
|
# Character set of batch, csv, data files
|
|
71
71
|
CHARSET = 'charset'
|
|
72
|
+
# When retrieving lists of Chat items from API, how many should be retrieved in each chunk
|
|
73
|
+
CHAT_MAX_RESULTS = 'chat_max_results'
|
|
72
74
|
# When retrieving lists of Google Classroom items from API, how many should be retrieved in each chunk
|
|
73
75
|
CLASSROOM_MAX_RESULTS = 'classroom_max_results'
|
|
74
76
|
# Path to client_secrets.json
|
|
@@ -83,6 +85,8 @@ CMDLOG_MAX__BACKUPS = 'cmdlog_max__backups'
|
|
|
83
85
|
CMDLOG_MAX_BACKUPS = 'cmdlog_max_backups'
|
|
84
86
|
# Command logging max kilo bytes per log file
|
|
85
87
|
CMDLOG_MAX_KILO_BYTES = 'cmdlog_max_kilo_bytes'
|
|
88
|
+
# Use client access for command data from Google Docs/Sheets
|
|
89
|
+
COMMANDDATA_CLIENTACCESS = 'commanddata_clientaccess'
|
|
86
90
|
# GAM config directory containing client_secrets.json, oauth2.txt, oauth2service.json, extra_args.txt
|
|
87
91
|
CONFIG_DIR = 'config_dir'
|
|
88
92
|
# When retrieving lists of Google Contacts from API, how many should be retrieved in each chunk
|
|
@@ -145,6 +149,8 @@ CSV_OUTPUT_USERS_AUDIT = 'csv_output_users_audit'
|
|
|
145
149
|
CUSTOMER_ID = 'customer_id'
|
|
146
150
|
# If debug_level > 0: extra_args['prettyPrint'] = True, httplib2.debuglevel = gam_debug_level, appsObj.debug = True
|
|
147
151
|
DEBUG_LEVEL = 'debug_level'
|
|
152
|
+
# redact sensitive credentials from debug output
|
|
153
|
+
DEBUG_REDACTION = 'debug_redaction'
|
|
148
154
|
# Developer Preview API Key
|
|
149
155
|
DEVELOPER_PREVIEW_API_KEY = 'developer_preview_api_key'
|
|
150
156
|
# When retrieving lists of ChromeOS devices from API, how many should be retrieved in each chunk
|
|
@@ -335,12 +341,14 @@ Defaults = {
|
|
|
335
341
|
CACHE_DISCOVERY_ONLY: TRUE,
|
|
336
342
|
CHARSET: DEFAULT_CHARSET,
|
|
337
343
|
CHANNEL_CUSTOMER_ID: '',
|
|
344
|
+
CHAT_MAX_RESULTS: '100',
|
|
338
345
|
CLASSROOM_MAX_RESULTS: '0',
|
|
339
346
|
CLIENT_SECRETS_JSON: FN_CLIENT_SECRETS_JSON,
|
|
340
347
|
CLOCK_SKEW_IN_SECONDS: '10',
|
|
341
348
|
CMDLOG: '',
|
|
342
349
|
CMDLOG_MAX_BACKUPS: 5,
|
|
343
350
|
CMDLOG_MAX_KILO_BYTES: 1000,
|
|
351
|
+
COMMANDDATA_CLIENTACCESS: FALSE,
|
|
344
352
|
CONFIG_DIR: '',
|
|
345
353
|
CONTACT_MAX_RESULTS: '100',
|
|
346
354
|
CSV_INPUT_COLUMN_DELIMITER: ',',
|
|
@@ -372,6 +380,7 @@ Defaults = {
|
|
|
372
380
|
CSV_OUTPUT_USERS_AUDIT: FALSE,
|
|
373
381
|
CUSTOMER_ID: MY_CUSTOMER,
|
|
374
382
|
DEBUG_LEVEL: '0',
|
|
383
|
+
DEBUG_REDACTION: TRUE,
|
|
375
384
|
DEVELOPER_PREVIEW_API_KEY: '',
|
|
376
385
|
DEVICE_MAX_RESULTS: '200',
|
|
377
386
|
DOMAIN: '',
|
|
@@ -502,12 +511,14 @@ VAR_INFO = {
|
|
|
502
511
|
CACHE_DISCOVERY_ONLY: {VAR_TYPE: TYPE_BOOLEAN, VAR_SIGFILE: 'allcache.txt', VAR_SFFT: (TRUE, FALSE)},
|
|
503
512
|
CHARSET: {VAR_TYPE: TYPE_STRING, VAR_ENVVAR: 'GAM_CHARSET', VAR_LIMITS: (1, None)},
|
|
504
513
|
CHANNEL_CUSTOMER_ID: {VAR_TYPE: TYPE_STRING, VAR_LIMITS: (0, None)},
|
|
514
|
+
CHAT_MAX_RESULTS: {VAR_TYPE: TYPE_INTEGER, VAR_LIMITS: (1, 1000)},
|
|
505
515
|
CLASSROOM_MAX_RESULTS: {VAR_TYPE: TYPE_INTEGER, VAR_LIMITS: (0, 1000)},
|
|
506
516
|
CLIENT_SECRETS_JSON: {VAR_TYPE: TYPE_FILE, VAR_ENVVAR: 'CLIENTSECRETS', VAR_ACCESS: os.R_OK},
|
|
507
517
|
CLOCK_SKEW_IN_SECONDS: {VAR_TYPE: TYPE_INTEGER, VAR_LIMITS: (10, 3600)},
|
|
508
518
|
CMDLOG: {VAR_TYPE: TYPE_FILE, VAR_ACCESS: os.W_OK},
|
|
509
519
|
CMDLOG_MAX_BACKUPS: {VAR_TYPE: TYPE_INTEGER, VAR_LIMITS: (1, 10)},
|
|
510
520
|
CMDLOG_MAX_KILO_BYTES: {VAR_TYPE: TYPE_INTEGER, VAR_LIMITS: (100, 10000)},
|
|
521
|
+
COMMANDDATA_CLIENTACCESS: {VAR_TYPE: TYPE_BOOLEAN},
|
|
511
522
|
CONFIG_DIR: {VAR_TYPE: TYPE_DIRECTORY, VAR_ENVVAR: 'GAMUSERCONFIGDIR'},
|
|
512
523
|
CONTACT_MAX_RESULTS: {VAR_TYPE: TYPE_INTEGER, VAR_LIMITS: (1, 10000)},
|
|
513
524
|
CSV_INPUT_COLUMN_DELIMITER: {VAR_TYPE: TYPE_CHARACTER},
|
|
@@ -539,6 +550,7 @@ VAR_INFO = {
|
|
|
539
550
|
CSV_OUTPUT_USERS_AUDIT: {VAR_TYPE: TYPE_BOOLEAN},
|
|
540
551
|
CUSTOMER_ID: {VAR_TYPE: TYPE_STRING, VAR_ENVVAR: 'CUSTOMER_ID', VAR_LIMITS: (0, None)},
|
|
541
552
|
DEBUG_LEVEL: {VAR_TYPE: TYPE_INTEGER, VAR_SIGFILE: 'debug.gam', VAR_LIMITS: (0, None), VAR_SFFT: ('0', '4')},
|
|
553
|
+
DEBUG_REDACTION: {VAR_TYPE: TYPE_BOOLEAN},
|
|
542
554
|
DEVELOPER_PREVIEW_API_KEY: {VAR_TYPE: TYPE_STRING, VAR_LIMITS: (0, None)},
|
|
543
555
|
DEVICE_MAX_RESULTS: {VAR_TYPE: TYPE_INTEGER, VAR_LIMITS: (1, 200)},
|
|
544
556
|
DOMAIN: {VAR_TYPE: TYPE_STRING, VAR_ENVVAR: 'GA_DOMAIN', VAR_LIMITS: (0, None)},
|