catocli 3.0.14__py3-none-any.whl → 3.0.22__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 catocli might be problematic. Click here for more details.

Files changed (192) hide show
  1. catocli/Utils/clidriver.py +16 -8
  2. catocli/Utils/formatter_account_metrics.py +544 -0
  3. catocli/Utils/formatter_app_stats.py +184 -0
  4. catocli/Utils/formatter_app_stats_timeseries.py +377 -0
  5. catocli/Utils/formatter_events_timeseries.py +459 -0
  6. catocli/Utils/formatter_socket_port_metrics.py +189 -0
  7. catocli/Utils/formatter_socket_port_metrics_timeseries.py +339 -0
  8. catocli/Utils/formatter_utils.py +251 -0
  9. catocli/Utils/help_formatter.py +1 -1
  10. catocli/__init__.py +1 -1
  11. catocli/clisettings.json +37 -5
  12. catocli/parsers/custom/query_eventsFeed/README.md +94 -0
  13. catocli/parsers/custom/scim/README.md +346 -0
  14. catocli/parsers/custom/scim/scim_client.py +132 -26
  15. catocli/parsers/custom/scim/scim_commands.py +14 -56
  16. catocli/parsers/customParserApiClient.py +213 -65
  17. catocli/parsers/mutation_policy/__init__.py +405 -405
  18. catocli/parsers/mutation_site/__init__.py +15 -15
  19. catocli/parsers/mutation_sites/__init__.py +15 -15
  20. catocli/parsers/query_accountMetrics/README.md +99 -9
  21. catocli/parsers/query_accountMetrics/__init__.py +6 -0
  22. catocli/parsers/query_appStats/README.md +11 -11
  23. catocli/parsers/query_appStats/__init__.py +4 -2
  24. catocli/parsers/query_appStatsTimeSeries/README.md +10 -10
  25. catocli/parsers/query_appStatsTimeSeries/__init__.py +4 -2
  26. catocli/parsers/query_auditFeed/README.md +9 -9
  27. catocli/parsers/query_events/README.md +9 -9
  28. catocli/parsers/query_eventsTimeSeries/README.md +289 -9
  29. catocli/parsers/query_eventsTimeSeries/__init__.py +6 -0
  30. catocli/parsers/query_policy/__init__.py +42 -42
  31. catocli/parsers/query_socketPortMetrics/README.md +53 -9
  32. catocli/parsers/query_socketPortMetrics/__init__.py +6 -0
  33. catocli/parsers/query_socketPortMetricsTimeSeries/README.md +92 -9
  34. catocli/parsers/query_socketPortMetricsTimeSeries/__init__.py +4 -2
  35. {catocli-3.0.14.dist-info → catocli-3.0.22.dist-info}/METADATA +1 -1
  36. {catocli-3.0.14.dist-info → catocli-3.0.22.dist-info}/RECORD +187 -183
  37. {catocli-3.0.14.dist-info → catocli-3.0.22.dist-info}/top_level.txt +0 -1
  38. models/mutation.policy.antiMalwareFileHash.addRule.json +20 -0
  39. models/mutation.policy.antiMalwareFileHash.addSection.json +103 -0
  40. models/mutation.policy.antiMalwareFileHash.createPolicyRevision.json +123 -0
  41. models/mutation.policy.antiMalwareFileHash.discardPolicyRevision.json +123 -0
  42. models/mutation.policy.antiMalwareFileHash.moveRule.json +20 -0
  43. models/mutation.policy.antiMalwareFileHash.moveSection.json +103 -0
  44. models/mutation.policy.antiMalwareFileHash.publishPolicyRevision.json +123 -0
  45. models/mutation.policy.antiMalwareFileHash.removeRule.json +20 -0
  46. models/mutation.policy.antiMalwareFileHash.removeSection.json +103 -0
  47. models/mutation.policy.antiMalwareFileHash.updatePolicy.json +123 -0
  48. models/mutation.policy.antiMalwareFileHash.updateRule.json +20 -0
  49. models/mutation.policy.antiMalwareFileHash.updateSection.json +103 -0
  50. models/mutation.policy.appTenantRestriction.addRule.json +20 -0
  51. models/mutation.policy.appTenantRestriction.addSection.json +103 -0
  52. models/mutation.policy.appTenantRestriction.createPolicyRevision.json +123 -0
  53. models/mutation.policy.appTenantRestriction.discardPolicyRevision.json +123 -0
  54. models/mutation.policy.appTenantRestriction.moveRule.json +20 -0
  55. models/mutation.policy.appTenantRestriction.moveSection.json +103 -0
  56. models/mutation.policy.appTenantRestriction.publishPolicyRevision.json +123 -0
  57. models/mutation.policy.appTenantRestriction.removeRule.json +20 -0
  58. models/mutation.policy.appTenantRestriction.removeSection.json +103 -0
  59. models/mutation.policy.appTenantRestriction.updatePolicy.json +123 -0
  60. models/mutation.policy.appTenantRestriction.updateRule.json +20 -0
  61. models/mutation.policy.appTenantRestriction.updateSection.json +103 -0
  62. models/mutation.policy.applicationControl.addRule.json +20 -0
  63. models/mutation.policy.applicationControl.addSection.json +103 -0
  64. models/mutation.policy.applicationControl.createPolicyRevision.json +123 -0
  65. models/mutation.policy.applicationControl.discardPolicyRevision.json +123 -0
  66. models/mutation.policy.applicationControl.moveRule.json +20 -0
  67. models/mutation.policy.applicationControl.moveSection.json +103 -0
  68. models/mutation.policy.applicationControl.publishPolicyRevision.json +123 -0
  69. models/mutation.policy.applicationControl.removeRule.json +20 -0
  70. models/mutation.policy.applicationControl.removeSection.json +103 -0
  71. models/mutation.policy.applicationControl.updatePolicy.json +123 -0
  72. models/mutation.policy.applicationControl.updateRule.json +20 -0
  73. models/mutation.policy.applicationControl.updateSection.json +103 -0
  74. models/mutation.policy.dynamicIpAllocation.addRule.json +20 -0
  75. models/mutation.policy.dynamicIpAllocation.addSection.json +103 -0
  76. models/mutation.policy.dynamicIpAllocation.createPolicyRevision.json +123 -0
  77. models/mutation.policy.dynamicIpAllocation.discardPolicyRevision.json +123 -0
  78. models/mutation.policy.dynamicIpAllocation.moveRule.json +20 -0
  79. models/mutation.policy.dynamicIpAllocation.moveSection.json +103 -0
  80. models/mutation.policy.dynamicIpAllocation.publishPolicyRevision.json +123 -0
  81. models/mutation.policy.dynamicIpAllocation.removeRule.json +20 -0
  82. models/mutation.policy.dynamicIpAllocation.removeSection.json +103 -0
  83. models/mutation.policy.dynamicIpAllocation.updatePolicy.json +123 -0
  84. models/mutation.policy.dynamicIpAllocation.updateRule.json +20 -0
  85. models/mutation.policy.dynamicIpAllocation.updateSection.json +103 -0
  86. models/mutation.policy.internetFirewall.addRule.json +20 -0
  87. models/mutation.policy.internetFirewall.addSection.json +103 -0
  88. models/mutation.policy.internetFirewall.createPolicyRevision.json +123 -0
  89. models/mutation.policy.internetFirewall.discardPolicyRevision.json +123 -0
  90. models/mutation.policy.internetFirewall.moveRule.json +20 -0
  91. models/mutation.policy.internetFirewall.moveSection.json +103 -0
  92. models/mutation.policy.internetFirewall.publishPolicyRevision.json +123 -0
  93. models/mutation.policy.internetFirewall.removeRule.json +20 -0
  94. models/mutation.policy.internetFirewall.removeSection.json +103 -0
  95. models/mutation.policy.internetFirewall.updatePolicy.json +123 -0
  96. models/mutation.policy.internetFirewall.updateRule.json +20 -0
  97. models/mutation.policy.internetFirewall.updateSection.json +103 -0
  98. models/mutation.policy.remotePortFwd.addRule.json +20 -0
  99. models/mutation.policy.remotePortFwd.addSection.json +103 -0
  100. models/mutation.policy.remotePortFwd.createPolicyRevision.json +123 -0
  101. models/mutation.policy.remotePortFwd.discardPolicyRevision.json +123 -0
  102. models/mutation.policy.remotePortFwd.moveRule.json +20 -0
  103. models/mutation.policy.remotePortFwd.moveSection.json +103 -0
  104. models/mutation.policy.remotePortFwd.publishPolicyRevision.json +123 -0
  105. models/mutation.policy.remotePortFwd.removeRule.json +20 -0
  106. models/mutation.policy.remotePortFwd.removeSection.json +103 -0
  107. models/mutation.policy.remotePortFwd.updatePolicy.json +123 -0
  108. models/mutation.policy.remotePortFwd.updateRule.json +20 -0
  109. models/mutation.policy.remotePortFwd.updateSection.json +103 -0
  110. models/mutation.policy.socketLan.addRule.json +40 -0
  111. models/mutation.policy.socketLan.addSection.json +103 -0
  112. models/mutation.policy.socketLan.createPolicyRevision.json +143 -0
  113. models/mutation.policy.socketLan.discardPolicyRevision.json +143 -0
  114. models/mutation.policy.socketLan.moveRule.json +40 -0
  115. models/mutation.policy.socketLan.moveSection.json +103 -0
  116. models/mutation.policy.socketLan.publishPolicyRevision.json +143 -0
  117. models/mutation.policy.socketLan.removeRule.json +40 -0
  118. models/mutation.policy.socketLan.removeSection.json +103 -0
  119. models/mutation.policy.socketLan.updatePolicy.json +143 -0
  120. models/mutation.policy.socketLan.updateRule.json +40 -0
  121. models/mutation.policy.socketLan.updateSection.json +103 -0
  122. models/mutation.policy.terminalServer.addRule.json +20 -0
  123. models/mutation.policy.terminalServer.addSection.json +103 -0
  124. models/mutation.policy.terminalServer.createPolicyRevision.json +123 -0
  125. models/mutation.policy.terminalServer.discardPolicyRevision.json +123 -0
  126. models/mutation.policy.terminalServer.moveRule.json +20 -0
  127. models/mutation.policy.terminalServer.moveSection.json +103 -0
  128. models/mutation.policy.terminalServer.publishPolicyRevision.json +123 -0
  129. models/mutation.policy.terminalServer.removeRule.json +20 -0
  130. models/mutation.policy.terminalServer.removeSection.json +103 -0
  131. models/mutation.policy.terminalServer.updatePolicy.json +123 -0
  132. models/mutation.policy.terminalServer.updateRule.json +20 -0
  133. models/mutation.policy.terminalServer.updateSection.json +103 -0
  134. models/mutation.policy.tlsInspect.addRule.json +20 -0
  135. models/mutation.policy.tlsInspect.addSection.json +103 -0
  136. models/mutation.policy.tlsInspect.createPolicyRevision.json +123 -0
  137. models/mutation.policy.tlsInspect.discardPolicyRevision.json +123 -0
  138. models/mutation.policy.tlsInspect.moveRule.json +20 -0
  139. models/mutation.policy.tlsInspect.moveSection.json +103 -0
  140. models/mutation.policy.tlsInspect.publishPolicyRevision.json +123 -0
  141. models/mutation.policy.tlsInspect.removeRule.json +20 -0
  142. models/mutation.policy.tlsInspect.removeSection.json +103 -0
  143. models/mutation.policy.tlsInspect.updatePolicy.json +123 -0
  144. models/mutation.policy.tlsInspect.updateRule.json +20 -0
  145. models/mutation.policy.tlsInspect.updateSection.json +103 -0
  146. models/mutation.policy.wanFirewall.addRule.json +20 -0
  147. models/mutation.policy.wanFirewall.addSection.json +103 -0
  148. models/mutation.policy.wanFirewall.createPolicyRevision.json +123 -0
  149. models/mutation.policy.wanFirewall.discardPolicyRevision.json +123 -0
  150. models/mutation.policy.wanFirewall.moveRule.json +20 -0
  151. models/mutation.policy.wanFirewall.moveSection.json +103 -0
  152. models/mutation.policy.wanFirewall.publishPolicyRevision.json +123 -0
  153. models/mutation.policy.wanFirewall.removeRule.json +20 -0
  154. models/mutation.policy.wanFirewall.removeSection.json +103 -0
  155. models/mutation.policy.wanFirewall.updatePolicy.json +123 -0
  156. models/mutation.policy.wanFirewall.updateRule.json +20 -0
  157. models/mutation.policy.wanFirewall.updateSection.json +103 -0
  158. models/mutation.policy.wanNetwork.addRule.json +20 -0
  159. models/mutation.policy.wanNetwork.addSection.json +103 -0
  160. models/mutation.policy.wanNetwork.createPolicyRevision.json +123 -0
  161. models/mutation.policy.wanNetwork.discardPolicyRevision.json +123 -0
  162. models/mutation.policy.wanNetwork.moveRule.json +20 -0
  163. models/mutation.policy.wanNetwork.moveSection.json +103 -0
  164. models/mutation.policy.wanNetwork.publishPolicyRevision.json +123 -0
  165. models/mutation.policy.wanNetwork.removeRule.json +20 -0
  166. models/mutation.policy.wanNetwork.removeSection.json +103 -0
  167. models/mutation.policy.wanNetwork.updatePolicy.json +123 -0
  168. models/mutation.policy.wanNetwork.updateRule.json +20 -0
  169. models/mutation.policy.wanNetwork.updateSection.json +103 -0
  170. models/mutation.xdr.analystFeedback.json +822 -87
  171. models/query.policy.antiMalwareFileHash.policy.json +123 -0
  172. models/query.policy.appTenantRestriction.policy.json +123 -0
  173. models/query.policy.applicationControl.policy.json +123 -0
  174. models/query.policy.dynamicIpAllocation.policy.json +123 -0
  175. models/query.policy.internetFirewall.policy.json +123 -0
  176. models/query.policy.remotePortFwd.policy.json +123 -0
  177. models/query.policy.socketLan.policy.json +143 -0
  178. models/query.policy.terminalServer.policy.json +123 -0
  179. models/query.policy.tlsInspect.policy.json +123 -0
  180. models/query.policy.wanFirewall.policy.json +123 -0
  181. models/query.policy.wanNetwork.policy.json +123 -0
  182. models/query.xdr.stories.json +822 -87
  183. models/query.xdr.story.json +822 -87
  184. schema/catolib.py +34 -17
  185. catocli/Utils/csv_formatter.py +0 -663
  186. scripts/catolib.py +0 -62
  187. scripts/export_if_rules_to_json.py +0 -188
  188. scripts/export_wf_rules_to_json.py +0 -111
  189. scripts/import_wf_rules_to_tfstate.py +0 -331
  190. {catocli-3.0.14.dist-info → catocli-3.0.22.dist-info}/WHEEL +0 -0
  191. {catocli-3.0.14.dist-info → catocli-3.0.22.dist-info}/entry_points.txt +0 -0
  192. {catocli-3.0.14.dist-info → catocli-3.0.22.dist-info}/licenses/LICENSE +0 -0
@@ -114,21 +114,6 @@ def mutation_site_parse(mutation_subparsers):
114
114
  mutation_site_addSocketSite_parser.add_argument('--headers-file', dest='headers_file', help='Load headers from a file. Each line should contain a header in "Key: Value" format.')
115
115
  mutation_site_addSocketSite_parser.set_defaults(func=createRequest,operation_name='mutation.site.addSocketSite')
116
116
 
117
- mutation_site_updateSiteGeneralDetails_parser = mutation_site_subparsers.add_parser('updateSiteGeneralDetails',
118
- help='updateSiteGeneralDetails() site operation',
119
- usage=get_help("mutation_site_updateSiteGeneralDetails"))
120
-
121
- mutation_site_updateSiteGeneralDetails_parser.add_argument('json', nargs='?', default='{}', help='Variables in JSON format (defaults to empty object if not provided).')
122
- mutation_site_updateSiteGeneralDetails_parser.add_argument('-accountID', help='The cato account ID to use for this operation. Overrides the account_id value in the profile setting. This is use for reseller and MSP accounts to run queries against cato sub accounts from the parent account.')
123
- mutation_site_updateSiteGeneralDetails_parser.add_argument('-t', const=True, default=False, nargs='?', help='Print GraphQL query without sending API call')
124
- mutation_site_updateSiteGeneralDetails_parser.add_argument('-v', const=True, default=False, nargs='?', help='Verbose output')
125
- mutation_site_updateSiteGeneralDetails_parser.add_argument('-p', const=True, default=False, nargs='?', help='Pretty print')
126
- mutation_site_updateSiteGeneralDetails_parser.add_argument('-n', '--stream-events', dest='stream_events', help='Send events over network to host:port TCP')
127
- mutation_site_updateSiteGeneralDetails_parser.add_argument('-z', '--sentinel', dest='sentinel', help='Send events to Sentinel customerid:sharedkey')
128
- mutation_site_updateSiteGeneralDetails_parser.add_argument('-H', '--header', action='append', dest='headers', help='Add custom headers in "Key: Value" format. Can be used multiple times.')
129
- mutation_site_updateSiteGeneralDetails_parser.add_argument('--headers-file', dest='headers_file', help='Load headers from a file. Each line should contain a header in "Key: Value" format.')
130
- mutation_site_updateSiteGeneralDetails_parser.set_defaults(func=createRequest,operation_name='mutation.site.updateSiteGeneralDetails')
131
-
132
117
  mutation_site_removeSite_parser = mutation_site_subparsers.add_parser('removeSite',
133
118
  help='removeSite() site operation',
134
119
  usage=get_help("mutation_site_removeSite"))
@@ -519,6 +504,21 @@ def mutation_site_parse(mutation_subparsers):
519
504
  mutation_site_removeSiteBwLicense_parser.add_argument('--headers-file', dest='headers_file', help='Load headers from a file. Each line should contain a header in "Key: Value" format.')
520
505
  mutation_site_removeSiteBwLicense_parser.set_defaults(func=createRequest,operation_name='mutation.site.removeSiteBwLicense')
521
506
 
507
+ mutation_site_updateSiteGeneralDetails_parser = mutation_site_subparsers.add_parser('updateSiteGeneralDetails',
508
+ help='updateSiteGeneralDetails() site operation',
509
+ usage=get_help("mutation_site_updateSiteGeneralDetails"))
510
+
511
+ mutation_site_updateSiteGeneralDetails_parser.add_argument('json', nargs='?', default='{}', help='Variables in JSON format (defaults to empty object if not provided).')
512
+ mutation_site_updateSiteGeneralDetails_parser.add_argument('-accountID', help='The cato account ID to use for this operation. Overrides the account_id value in the profile setting. This is use for reseller and MSP accounts to run queries against cato sub accounts from the parent account.')
513
+ mutation_site_updateSiteGeneralDetails_parser.add_argument('-t', const=True, default=False, nargs='?', help='Print GraphQL query without sending API call')
514
+ mutation_site_updateSiteGeneralDetails_parser.add_argument('-v', const=True, default=False, nargs='?', help='Verbose output')
515
+ mutation_site_updateSiteGeneralDetails_parser.add_argument('-p', const=True, default=False, nargs='?', help='Pretty print')
516
+ mutation_site_updateSiteGeneralDetails_parser.add_argument('-n', '--stream-events', dest='stream_events', help='Send events over network to host:port TCP')
517
+ mutation_site_updateSiteGeneralDetails_parser.add_argument('-z', '--sentinel', dest='sentinel', help='Send events to Sentinel customerid:sharedkey')
518
+ mutation_site_updateSiteGeneralDetails_parser.add_argument('-H', '--header', action='append', dest='headers', help='Add custom headers in "Key: Value" format. Can be used multiple times.')
519
+ mutation_site_updateSiteGeneralDetails_parser.add_argument('--headers-file', dest='headers_file', help='Load headers from a file. Each line should contain a header in "Key: Value" format.')
520
+ mutation_site_updateSiteGeneralDetails_parser.set_defaults(func=createRequest,operation_name='mutation.site.updateSiteGeneralDetails')
521
+
522
522
  mutation_site_addSocketAddOnCard_parser = mutation_site_subparsers.add_parser('addSocketAddOnCard',
523
523
  help='addSocketAddOnCard() site operation',
524
524
  usage=get_help("mutation_site_addSocketAddOnCard"))
@@ -114,21 +114,6 @@ def mutation_sites_parse(mutation_subparsers):
114
114
  mutation_sites_addSocketSite_parser.add_argument('--headers-file', dest='headers_file', help='Load headers from a file. Each line should contain a header in "Key: Value" format.')
115
115
  mutation_sites_addSocketSite_parser.set_defaults(func=createRequest,operation_name='mutation.sites.addSocketSite')
116
116
 
117
- mutation_sites_updateSiteGeneralDetails_parser = mutation_sites_subparsers.add_parser('updateSiteGeneralDetails',
118
- help='updateSiteGeneralDetails() sites operation',
119
- usage=get_help("mutation_sites_updateSiteGeneralDetails"))
120
-
121
- mutation_sites_updateSiteGeneralDetails_parser.add_argument('json', nargs='?', default='{}', help='Variables in JSON format (defaults to empty object if not provided).')
122
- mutation_sites_updateSiteGeneralDetails_parser.add_argument('-accountID', help='The cato account ID to use for this operation. Overrides the account_id value in the profile setting. This is use for reseller and MSP accounts to run queries against cato sub accounts from the parent account.')
123
- mutation_sites_updateSiteGeneralDetails_parser.add_argument('-t', const=True, default=False, nargs='?', help='Print GraphQL query without sending API call')
124
- mutation_sites_updateSiteGeneralDetails_parser.add_argument('-v', const=True, default=False, nargs='?', help='Verbose output')
125
- mutation_sites_updateSiteGeneralDetails_parser.add_argument('-p', const=True, default=False, nargs='?', help='Pretty print')
126
- mutation_sites_updateSiteGeneralDetails_parser.add_argument('-n', '--stream-events', dest='stream_events', help='Send events over network to host:port TCP')
127
- mutation_sites_updateSiteGeneralDetails_parser.add_argument('-z', '--sentinel', dest='sentinel', help='Send events to Sentinel customerid:sharedkey')
128
- mutation_sites_updateSiteGeneralDetails_parser.add_argument('-H', '--header', action='append', dest='headers', help='Add custom headers in "Key: Value" format. Can be used multiple times.')
129
- mutation_sites_updateSiteGeneralDetails_parser.add_argument('--headers-file', dest='headers_file', help='Load headers from a file. Each line should contain a header in "Key: Value" format.')
130
- mutation_sites_updateSiteGeneralDetails_parser.set_defaults(func=createRequest,operation_name='mutation.sites.updateSiteGeneralDetails')
131
-
132
117
  mutation_sites_removeSite_parser = mutation_sites_subparsers.add_parser('removeSite',
133
118
  help='removeSite() sites operation',
134
119
  usage=get_help("mutation_sites_removeSite"))
@@ -519,6 +504,21 @@ def mutation_sites_parse(mutation_subparsers):
519
504
  mutation_sites_removeSiteBwLicense_parser.add_argument('--headers-file', dest='headers_file', help='Load headers from a file. Each line should contain a header in "Key: Value" format.')
520
505
  mutation_sites_removeSiteBwLicense_parser.set_defaults(func=createRequest,operation_name='mutation.sites.removeSiteBwLicense')
521
506
 
507
+ mutation_sites_updateSiteGeneralDetails_parser = mutation_sites_subparsers.add_parser('updateSiteGeneralDetails',
508
+ help='updateSiteGeneralDetails() sites operation',
509
+ usage=get_help("mutation_sites_updateSiteGeneralDetails"))
510
+
511
+ mutation_sites_updateSiteGeneralDetails_parser.add_argument('json', nargs='?', default='{}', help='Variables in JSON format (defaults to empty object if not provided).')
512
+ mutation_sites_updateSiteGeneralDetails_parser.add_argument('-accountID', help='The cato account ID to use for this operation. Overrides the account_id value in the profile setting. This is use for reseller and MSP accounts to run queries against cato sub accounts from the parent account.')
513
+ mutation_sites_updateSiteGeneralDetails_parser.add_argument('-t', const=True, default=False, nargs='?', help='Print GraphQL query without sending API call')
514
+ mutation_sites_updateSiteGeneralDetails_parser.add_argument('-v', const=True, default=False, nargs='?', help='Verbose output')
515
+ mutation_sites_updateSiteGeneralDetails_parser.add_argument('-p', const=True, default=False, nargs='?', help='Pretty print')
516
+ mutation_sites_updateSiteGeneralDetails_parser.add_argument('-n', '--stream-events', dest='stream_events', help='Send events over network to host:port TCP')
517
+ mutation_sites_updateSiteGeneralDetails_parser.add_argument('-z', '--sentinel', dest='sentinel', help='Send events to Sentinel customerid:sharedkey')
518
+ mutation_sites_updateSiteGeneralDetails_parser.add_argument('-H', '--header', action='append', dest='headers', help='Add custom headers in "Key: Value" format. Can be used multiple times.')
519
+ mutation_sites_updateSiteGeneralDetails_parser.add_argument('--headers-file', dest='headers_file', help='Load headers from a file. Each line should contain a header in "Key: Value" format.')
520
+ mutation_sites_updateSiteGeneralDetails_parser.set_defaults(func=createRequest,operation_name='mutation.sites.updateSiteGeneralDetails')
521
+
522
522
  mutation_sites_addSocketAddOnCard_parser = mutation_sites_subparsers.add_parser('addSocketAddOnCard',
523
523
  help='addSocketAddOnCard() sites operation',
524
524
  usage=get_help("mutation_sites_addSocketAddOnCard"))
@@ -38,25 +38,115 @@ catocli query accountMetrics '{
38
38
  }'
39
39
  ```
40
40
 
41
+ ## Advanced Usage
42
+ ### Additional Examples
43
+ - Example all values and lables
44
+ - Example all values and lables for a single account
45
+ - Example all values and lables for a single user
46
+ - Last hour no filters
47
+
48
+ # Example all values and lables
49
+
50
+ ```bash
51
+ # Example all values and lables for a single account
52
+ catocli query accountMetrics '{
53
+ "buckets": 24,
54
+ "groupDevices": true,
55
+ "groupInterfaces": true,
56
+ "labels": [
57
+ "bytesDownstream",
58
+ "bytesDownstreamMax",
59
+ "bytesTotal",
60
+ "bytesUpstream",
61
+ "bytesUpstreamMax",
62
+ "health",
63
+ "jitterDownstream",
64
+ "jitterUpstream",
65
+ "lastMileLatency",
66
+ "lastMilePacketLoss",
67
+ "lostDownstream",
68
+ "lostDownstreamPcnt",
69
+ "lostUpstream",
70
+ "lostUpstreamPcnt",
71
+ "packetsDiscardedDownstream",
72
+ "packetsDiscardedDownstreamPcnt",
73
+ "packetsDiscardedUpstream",
74
+ "packetsDiscardedUpstreamPcnt",
75
+ "packetsDownstream",
76
+ "packetsUpstream",
77
+ "rtt",
78
+ "tunnelAge"
79
+ ],
80
+ "perSecond": true,
81
+ "siteIDs": [
82
+ "132814"
83
+ ],
84
+ "timeFrame": "last.P1D",
85
+ "toRate": true,
86
+ "useDefaultSizeBucket": true,
87
+ "withMissingData": true
88
+ }'
89
+ ```
90
+
91
+ # Example all values and lables for a single user
92
+
93
+ ```bash
94
+ # Example all values and lables for a single user
95
+ catocli query accountMetrics '{
96
+ "buckets": 24,
97
+ "labels": [
98
+ "health",
99
+ "jitterDownstream",
100
+ "jitterUpstream",
101
+ "lastMileLatency",
102
+ "lastMilePacketLoss",
103
+ "lostDownstream",
104
+ "lostDownstreamPcnt",
105
+ "lostUpstream",
106
+ "lostUpstreamPcnt",
107
+ "packetsDiscardedDownstream",
108
+ "packetsDiscardedDownstreamPcnt",
109
+ "packetsDiscardedUpstream",
110
+ "packetsDiscardedUpstreamPcnt",
111
+ "packetsDownstream",
112
+ "packetsUpstream"
113
+ ],
114
+ "timeFrame": "last.PT1H",
115
+ "userIDs": [
116
+ "0"
117
+ ]
118
+ }'
119
+ ```
120
+
121
+ # Last hour no filters
122
+
123
+ ```bash
124
+ # Last hour no filters
125
+ catocli query accountMetrics '{
126
+ "timeFrame":"last.PT1H"
127
+ }'
128
+ ```
129
+
130
+
41
131
 
42
132
  #### TimeFrame Parameter Examples
43
133
 
44
134
  The `timeFrame` parameter supports both relative time ranges and absolute date ranges:
45
135
 
46
136
  **Relative Time Ranges:**
47
- - `"last.PT5M"` = Previous 5 minutes
48
- - `"last.PT1H"` = Previous 1 hour
49
- - `"last.P1D"` = Previous 1 day
50
- - `"last.P14D"` = Previous 14 days
51
- - `"last.P1M"` = Previous 1 month
137
+ - "last.PT5M" = Previous 5 minutes
138
+ - "last.PT1H" = Previous 1 hour
139
+ - "last.P1D" = Previous 1 day
140
+ - "last.P14D" = Previous 14 days
141
+ - "last.P1M" = Previous 1 month
52
142
 
53
143
  **Absolute Date Ranges:**
54
144
  Format: `"utc.YYYY-MM-{DD/HH:MM:SS--DD/HH:MM:SS}"`
55
145
 
56
- - Single day: `"utc.2023-02-{28/00:00:00--28/23:59:59}"`
57
- - Multiple days: `"utc.2023-02-{25/00:00:00--28/23:59:59}"`
58
- - Specific hours: `"utc.2023-02-{28/09:00:00--28/17:00:00}"`
59
- - Across months: `"utc.2023-{01-28/00:00:00--02-03/23:59:59}"`
146
+ - Single day: "utc.2023-02-{28/00:00:00--28/23:59:59}"
147
+ - Multiple days: "utc.2023-02-{25/00:00:00--28/23:59:59}"
148
+ - Specific hours: "utc.2023-02-{28/09:00:00--28/17:00:00}"
149
+ - Across months: "utc.2023-{01-28/00:00:00--02-03/23:59:59}"
60
150
 
61
151
 
62
152
  #### Operation Arguments for query.accountMetrics ####
@@ -16,4 +16,10 @@ def query_accountMetrics_parse(query_subparsers):
16
16
  query_accountMetrics_parser.add_argument('-z', '--sentinel', dest='sentinel', help='Send events to Sentinel customerid:sharedkey')
17
17
  query_accountMetrics_parser.add_argument('-H', '--header', action='append', dest='headers', help='Add custom headers in "Key: Value" format. Can be used multiple times.')
18
18
  query_accountMetrics_parser.add_argument('--headers-file', dest='headers_file', help='Load headers from a file. Each line should contain a header in "Key: Value" format.')
19
+
20
+
21
+ query_accountMetrics_parser.add_argument('-f', '--format', choices=['json', 'csv'], help='Output format (default: formatted json, use -raw for original json)')
22
+ query_accountMetrics_parser.add_argument('-raw', '--raw', dest='raw_output', action='store_true', help='Return raw/original JSON format (bypasses default formatting)')
23
+ query_accountMetrics_parser.add_argument('--csv-filename', dest='csv_filename', help='Override CSV file name (default: accountmetrics.csv)')
24
+ query_accountMetrics_parser.add_argument('--append-timestamp', dest='append_timestamp', action='store_true', help='Append timestamp to the CSV file name')
19
25
  query_accountMetrics_parser.set_defaults(func=createRequest,operation_name='query.accountMetrics')
@@ -74,7 +74,7 @@ catocli query appStats '{
74
74
  # Query to export application_name, user_name and risk_score with traffic sum(upstream, downstream, trafffic) for last day
75
75
 
76
76
  ```bash
77
- ## Query to export application_name, user_name and risk_score with traffic sum(upstream, downstream, trafffic) for last day
77
+ ## Query to export application_name, user_name and risk_score with traffic sum(upstream, downstream, trafffic) for last day exported to csv format
78
78
  catocli query appStats '{
79
79
  "appStatsFilter": [],
80
80
  "appStatsSort": [],
@@ -104,7 +104,7 @@ catocli query appStats '{
104
104
  }
105
105
  ],
106
106
  "timeFrame": "last.P1D"
107
- }' -f csv
107
+ }' -f csv --csv-filename app_user_account_metrics_report.csv
108
108
  ```
109
109
 
110
110
 
@@ -115,19 +115,19 @@ catocli query appStats '{
115
115
  The `timeFrame` parameter supports both relative time ranges and absolute date ranges:
116
116
 
117
117
  **Relative Time Ranges:**
118
- - `"last.PT5M"` = Previous 5 minutes
119
- - `"last.PT1H"` = Previous 1 hour
120
- - `"last.P1D"` = Previous 1 day
121
- - `"last.P14D"` = Previous 14 days
122
- - `"last.P1M"` = Previous 1 month
118
+ - "last.PT5M" = Previous 5 minutes
119
+ - "last.PT1H" = Previous 1 hour
120
+ - "last.P1D" = Previous 1 day
121
+ - "last.P14D" = Previous 14 days
122
+ - "last.P1M" = Previous 1 month
123
123
 
124
124
  **Absolute Date Ranges:**
125
125
  Format: `"utc.YYYY-MM-{DD/HH:MM:SS--DD/HH:MM:SS}"`
126
126
 
127
- - Single day: `"utc.2023-02-{28/00:00:00--28/23:59:59}"`
128
- - Multiple days: `"utc.2023-02-{25/00:00:00--28/23:59:59}"`
129
- - Specific hours: `"utc.2023-02-{28/09:00:00--28/17:00:00}"`
130
- - Across months: `"utc.2023-{01-28/00:00:00--02-03/23:59:59}"`
127
+ - Single day: "utc.2023-02-{28/00:00:00--28/23:59:59}"
128
+ - Multiple days: "utc.2023-02-{25/00:00:00--28/23:59:59}"
129
+ - Specific hours: "utc.2023-02-{28/09:00:00--28/17:00:00}"
130
+ - Across months: "utc.2023-{01-28/00:00:00--02-03/23:59:59}"
131
131
 
132
132
 
133
133
  #### Operation Arguments for query.appStats ####
@@ -17,7 +17,9 @@ def query_appStats_parse(query_subparsers):
17
17
  query_appStats_parser.add_argument('-H', '--header', action='append', dest='headers', help='Add custom headers in "Key: Value" format. Can be used multiple times.')
18
18
  query_appStats_parser.add_argument('--headers-file', dest='headers_file', help='Load headers from a file. Each line should contain a header in "Key: Value" format.')
19
19
 
20
- query_appStats_parser.add_argument('-f', '--format', choices=['json', 'csv'], default='json', help='Output format (default: json)')
21
- query_appStats_parser.add_argument('--csv-filename', dest='csv_filename', help='Override CSV file name (default: accountmetrics.csv)')
20
+
21
+ query_appStats_parser.add_argument('-f', '--format', choices=['json', 'csv'], help='Output format (default: formatted json, use -raw for original json)')
22
+ query_appStats_parser.add_argument('-raw', '--raw', dest='raw_output', action='store_true', help='Return raw/original JSON format (bypasses default formatting)')
23
+ query_appStats_parser.add_argument('--csv-filename', dest='csv_filename', help='Override CSV file name (default: appstats.csv)')
22
24
  query_appStats_parser.add_argument('--append-timestamp', dest='append_timestamp', action='store_true', help='Append timestamp to the CSV file name')
23
25
  query_appStats_parser.set_defaults(func=createRequest,operation_name='query.appStats')
@@ -72,7 +72,7 @@ catocli query appStatsTimeSeries '{
72
72
  "fieldName": "traffic"
73
73
  }
74
74
  ],
75
- "timeFrame": "last.PT1H"
75
+ "timeFrame": "last.P1D"
76
76
  }'
77
77
  ```
78
78
 
@@ -124,19 +124,19 @@ catocli query appStatsTimeSeries '{
124
124
  The `timeFrame` parameter supports both relative time ranges and absolute date ranges:
125
125
 
126
126
  **Relative Time Ranges:**
127
- - `"last.PT5M"` = Previous 5 minutes
128
- - `"last.PT1H"` = Previous 1 hour
129
- - `"last.P1D"` = Previous 1 day
130
- - `"last.P14D"` = Previous 14 days
131
- - `"last.P1M"` = Previous 1 month
127
+ - "last.PT5M" = Previous 5 minutes
128
+ - "last.PT1H" = Previous 1 hour
129
+ - "last.P1D" = Previous 1 day
130
+ - "last.P14D" = Previous 14 days
131
+ - "last.P1M" = Previous 1 month
132
132
 
133
133
  **Absolute Date Ranges:**
134
134
  Format: `"utc.YYYY-MM-{DD/HH:MM:SS--DD/HH:MM:SS}"`
135
135
 
136
- - Single day: `"utc.2023-02-{28/00:00:00--28/23:59:59}"`
137
- - Multiple days: `"utc.2023-02-{25/00:00:00--28/23:59:59}"`
138
- - Specific hours: `"utc.2023-02-{28/09:00:00--28/17:00:00}"`
139
- - Across months: `"utc.2023-{01-28/00:00:00--02-03/23:59:59}"`
136
+ - Single day: "utc.2023-02-{28/00:00:00--28/23:59:59}"
137
+ - Multiple days: "utc.2023-02-{25/00:00:00--28/23:59:59}"
138
+ - Specific hours: "utc.2023-02-{28/09:00:00--28/17:00:00}"
139
+ - Across months: "utc.2023-{01-28/00:00:00--02-03/23:59:59}"
140
140
 
141
141
 
142
142
  #### Operation Arguments for query.appStatsTimeSeries ####
@@ -17,7 +17,9 @@ def query_appStatsTimeSeries_parse(query_subparsers):
17
17
  query_appStatsTimeSeries_parser.add_argument('-H', '--header', action='append', dest='headers', help='Add custom headers in "Key: Value" format. Can be used multiple times.')
18
18
  query_appStatsTimeSeries_parser.add_argument('--headers-file', dest='headers_file', help='Load headers from a file. Each line should contain a header in "Key: Value" format.')
19
19
 
20
- query_appStatsTimeSeries_parser.add_argument('-f', '--format', choices=['json', 'csv'], default='json', help='Output format (default: json)')
21
- query_appStatsTimeSeries_parser.add_argument('--csv-filename', dest='csv_filename', help='Override CSV file name (default: accountmetrics.csv)')
20
+
21
+ query_appStatsTimeSeries_parser.add_argument('-f', '--format', choices=['json', 'csv'], help='Output format (default: formatted json, use -raw for original json)')
22
+ query_appStatsTimeSeries_parser.add_argument('-raw', '--raw', dest='raw_output', action='store_true', help='Return raw/original JSON format (bypasses default formatting)')
23
+ query_appStatsTimeSeries_parser.add_argument('--csv-filename', dest='csv_filename', help='Override CSV file name (default: appstatstimeseries.csv)')
22
24
  query_appStatsTimeSeries_parser.add_argument('--append-timestamp', dest='append_timestamp', action='store_true', help='Append timestamp to the CSV file name')
23
25
  query_appStatsTimeSeries_parser.set_defaults(func=createRequest,operation_name='query.appStatsTimeSeries')
@@ -40,19 +40,19 @@ catocli query auditFeed '{
40
40
  The `timeFrame` parameter supports both relative time ranges and absolute date ranges:
41
41
 
42
42
  **Relative Time Ranges:**
43
- - `"last.PT5M"` = Previous 5 minutes
44
- - `"last.PT1H"` = Previous 1 hour
45
- - `"last.P1D"` = Previous 1 day
46
- - `"last.P14D"` = Previous 14 days
47
- - `"last.P1M"` = Previous 1 month
43
+ - "last.PT5M" = Previous 5 minutes
44
+ - "last.PT1H" = Previous 1 hour
45
+ - "last.P1D" = Previous 1 day
46
+ - "last.P14D" = Previous 14 days
47
+ - "last.P1M" = Previous 1 month
48
48
 
49
49
  **Absolute Date Ranges:**
50
50
  Format: `"utc.YYYY-MM-{DD/HH:MM:SS--DD/HH:MM:SS}"`
51
51
 
52
- - Single day: `"utc.2023-02-{28/00:00:00--28/23:59:59}"`
53
- - Multiple days: `"utc.2023-02-{25/00:00:00--28/23:59:59}"`
54
- - Specific hours: `"utc.2023-02-{28/09:00:00--28/17:00:00}"`
55
- - Across months: `"utc.2023-{01-28/00:00:00--02-03/23:59:59}"`
52
+ - Single day: "utc.2023-02-{28/00:00:00--28/23:59:59}"
53
+ - Multiple days: "utc.2023-02-{25/00:00:00--28/23:59:59}"
54
+ - Specific hours: "utc.2023-02-{28/09:00:00--28/17:00:00}"
55
+ - Across months: "utc.2023-{01-28/00:00:00--02-03/23:59:59}"
56
56
 
57
57
 
58
58
  #### Operation Arguments for query.auditFeed ####
@@ -46,19 +46,19 @@ catocli query events '{
46
46
  The `timeFrame` parameter supports both relative time ranges and absolute date ranges:
47
47
 
48
48
  **Relative Time Ranges:**
49
- - `"last.PT5M"` = Previous 5 minutes
50
- - `"last.PT1H"` = Previous 1 hour
51
- - `"last.P1D"` = Previous 1 day
52
- - `"last.P14D"` = Previous 14 days
53
- - `"last.P1M"` = Previous 1 month
49
+ - "last.PT5M" = Previous 5 minutes
50
+ - "last.PT1H" = Previous 1 hour
51
+ - "last.P1D" = Previous 1 day
52
+ - "last.P14D" = Previous 14 days
53
+ - "last.P1M" = Previous 1 month
54
54
 
55
55
  **Absolute Date Ranges:**
56
56
  Format: `"utc.YYYY-MM-{DD/HH:MM:SS--DD/HH:MM:SS}"`
57
57
 
58
- - Single day: `"utc.2023-02-{28/00:00:00--28/23:59:59}"`
59
- - Multiple days: `"utc.2023-02-{25/00:00:00--28/23:59:59}"`
60
- - Specific hours: `"utc.2023-02-{28/09:00:00--28/17:00:00}"`
61
- - Across months: `"utc.2023-{01-28/00:00:00--02-03/23:59:59}"`
58
+ - Single day: "utc.2023-02-{28/00:00:00--28/23:59:59}"
59
+ - Multiple days: "utc.2023-02-{25/00:00:00--28/23:59:59}"
60
+ - Specific hours: "utc.2023-02-{28/09:00:00--28/17:00:00}"
61
+ - Across months: "utc.2023-{01-28/00:00:00--02-03/23:59:59}"
62
62
 
63
63
 
64
64
  #### Operation Arguments for query.events ####