catocli 2.1.0__py3-none-any.whl → 2.1.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.

Potentially problematic release.


This version of catocli might be problematic. Click here for more details.

Files changed (567) hide show
  1. catocli/Utils/clidriver.py +217 -194
  2. catocli/Utils/version_checker.py +1 -1
  3. catocli/__init__.py +1 -1
  4. catocli/parsers/custom/customLib.py +1 -1
  5. catocli/parsers/custom/export_sites/export_sites.py +118 -130
  6. catocli/parsers/custom/import_rules_to_tf/import_rules_to_tf.py +13 -2
  7. catocli/parsers/custom/import_sites_to_tf/import_sites_to_tf.py +8 -1
  8. catocli/parsers/customParserApiClient.py +1195 -0
  9. catocli/parsers/custom_private/__init__.py +134 -0
  10. catocli/parsers/mutation_accountManagement/__init__.py +45 -58
  11. catocli/parsers/mutation_accountManagement_addAccount/README.md +7 -5
  12. catocli/parsers/mutation_accountManagement_removeAccount/README.md +4 -5
  13. catocli/parsers/mutation_accountManagement_updateAccount/README.md +7 -5
  14. catocli/parsers/mutation_admin/__init__.py +84 -45
  15. catocli/parsers/mutation_admin_addAdmin/README.md +7 -5
  16. catocli/parsers/mutation_admin_addServicePrincipalAdmin/README.md +19 -0
  17. catocli/parsers/mutation_admin_removeAdmin/README.md +7 -5
  18. catocli/parsers/mutation_admin_removeServicePrincipalAdmin/README.md +19 -0
  19. catocli/parsers/mutation_admin_updateAdmin/README.md +8 -6
  20. catocli/parsers/mutation_admin_updateServicePrincipalAdmin/README.md +20 -0
  21. catocli/parsers/mutation_container/__init__.py +135 -135
  22. catocli/parsers/mutation_container_delete/README.md +7 -5
  23. catocli/parsers/mutation_container_fqdn_addValues/README.md +7 -5
  24. catocli/parsers/mutation_container_fqdn_createFromFile/README.md +7 -5
  25. catocli/parsers/mutation_container_fqdn_removeValues/README.md +7 -5
  26. catocli/parsers/mutation_container_fqdn_updateFromFile/README.md +7 -5
  27. catocli/parsers/mutation_container_ipAddressRange_addValues/README.md +7 -5
  28. catocli/parsers/mutation_container_ipAddressRange_createFromFile/README.md +7 -5
  29. catocli/parsers/mutation_container_ipAddressRange_removeValues/README.md +7 -5
  30. catocli/parsers/mutation_container_ipAddressRange_updateFromFile/README.md +7 -5
  31. catocli/parsers/mutation_enterpriseDirectory/README.md +7 -0
  32. catocli/parsers/mutation_enterpriseDirectory/__init__.py +61 -0
  33. catocli/parsers/mutation_enterpriseDirectory_archiveLocation/README.md +19 -0
  34. catocli/parsers/mutation_enterpriseDirectory_createLocation/README.md +19 -0
  35. catocli/parsers/mutation_enterpriseDirectory_restoreLocation/README.md +19 -0
  36. catocli/parsers/mutation_enterpriseDirectory_updateLocation/README.md +19 -0
  37. catocli/parsers/mutation_groups/__init__.py +45 -45
  38. catocli/parsers/mutation_groups_createGroup/README.md +8 -6
  39. catocli/parsers/mutation_groups_deleteGroup/README.md +8 -6
  40. catocli/parsers/mutation_groups_updateGroup/README.md +8 -6
  41. catocli/parsers/mutation_hardware/__init__.py +16 -16
  42. catocli/parsers/mutation_hardware_updateHardwareShipping/README.md +7 -5
  43. catocli/parsers/mutation_policy/__init__.py +1302 -1302
  44. catocli/parsers/mutation_policy_appTenantRestriction_addRule/README.md +8 -6
  45. catocli/parsers/mutation_policy_appTenantRestriction_addSection/README.md +8 -6
  46. catocli/parsers/mutation_policy_appTenantRestriction_createPolicyRevision/README.md +8 -6
  47. catocli/parsers/mutation_policy_appTenantRestriction_discardPolicyRevision/README.md +8 -6
  48. catocli/parsers/mutation_policy_appTenantRestriction_moveRule/README.md +8 -6
  49. catocli/parsers/mutation_policy_appTenantRestriction_moveSection/README.md +8 -6
  50. catocli/parsers/mutation_policy_appTenantRestriction_publishPolicyRevision/README.md +8 -6
  51. catocli/parsers/mutation_policy_appTenantRestriction_removeRule/README.md +8 -6
  52. catocli/parsers/mutation_policy_appTenantRestriction_removeSection/README.md +8 -6
  53. catocli/parsers/mutation_policy_appTenantRestriction_updatePolicy/README.md +8 -6
  54. catocli/parsers/mutation_policy_appTenantRestriction_updateRule/README.md +8 -6
  55. catocli/parsers/mutation_policy_appTenantRestriction_updateSection/README.md +8 -6
  56. catocli/parsers/mutation_policy_dynamicIpAllocation_addRule/README.md +8 -6
  57. catocli/parsers/mutation_policy_dynamicIpAllocation_addSection/README.md +8 -6
  58. catocli/parsers/mutation_policy_dynamicIpAllocation_createPolicyRevision/README.md +8 -6
  59. catocli/parsers/mutation_policy_dynamicIpAllocation_discardPolicyRevision/README.md +8 -6
  60. catocli/parsers/mutation_policy_dynamicIpAllocation_moveRule/README.md +8 -6
  61. catocli/parsers/mutation_policy_dynamicIpAllocation_moveSection/README.md +8 -6
  62. catocli/parsers/mutation_policy_dynamicIpAllocation_publishPolicyRevision/README.md +8 -6
  63. catocli/parsers/mutation_policy_dynamicIpAllocation_removeRule/README.md +8 -6
  64. catocli/parsers/mutation_policy_dynamicIpAllocation_removeSection/README.md +8 -6
  65. catocli/parsers/mutation_policy_dynamicIpAllocation_updatePolicy/README.md +8 -6
  66. catocli/parsers/mutation_policy_dynamicIpAllocation_updateRule/README.md +8 -6
  67. catocli/parsers/mutation_policy_dynamicIpAllocation_updateSection/README.md +8 -6
  68. catocli/parsers/mutation_policy_internetFirewall_addRule/README.md +8 -6
  69. catocli/parsers/mutation_policy_internetFirewall_addSection/README.md +8 -6
  70. catocli/parsers/mutation_policy_internetFirewall_createPolicyRevision/README.md +8 -6
  71. catocli/parsers/mutation_policy_internetFirewall_discardPolicyRevision/README.md +8 -6
  72. catocli/parsers/mutation_policy_internetFirewall_moveRule/README.md +8 -6
  73. catocli/parsers/mutation_policy_internetFirewall_moveSection/README.md +8 -6
  74. catocli/parsers/mutation_policy_internetFirewall_publishPolicyRevision/README.md +8 -6
  75. catocli/parsers/mutation_policy_internetFirewall_removeRule/README.md +8 -6
  76. catocli/parsers/mutation_policy_internetFirewall_removeSection/README.md +8 -6
  77. catocli/parsers/mutation_policy_internetFirewall_updatePolicy/README.md +8 -6
  78. catocli/parsers/mutation_policy_internetFirewall_updateRule/README.md +8 -6
  79. catocli/parsers/mutation_policy_internetFirewall_updateSection/README.md +8 -6
  80. catocli/parsers/mutation_policy_remotePortFwd_addRule/README.md +8 -6
  81. catocli/parsers/mutation_policy_remotePortFwd_addSection/README.md +8 -6
  82. catocli/parsers/mutation_policy_remotePortFwd_createPolicyRevision/README.md +8 -6
  83. catocli/parsers/mutation_policy_remotePortFwd_discardPolicyRevision/README.md +8 -6
  84. catocli/parsers/mutation_policy_remotePortFwd_moveRule/README.md +8 -6
  85. catocli/parsers/mutation_policy_remotePortFwd_moveSection/README.md +8 -6
  86. catocli/parsers/mutation_policy_remotePortFwd_publishPolicyRevision/README.md +8 -6
  87. catocli/parsers/mutation_policy_remotePortFwd_removeRule/README.md +8 -6
  88. catocli/parsers/mutation_policy_remotePortFwd_removeSection/README.md +8 -6
  89. catocli/parsers/mutation_policy_remotePortFwd_updatePolicy/README.md +8 -6
  90. catocli/parsers/mutation_policy_remotePortFwd_updateRule/README.md +8 -6
  91. catocli/parsers/mutation_policy_remotePortFwd_updateSection/README.md +8 -6
  92. catocli/parsers/mutation_policy_socketLan_addRule/README.md +8 -6
  93. catocli/parsers/mutation_policy_socketLan_addSection/README.md +8 -6
  94. catocli/parsers/mutation_policy_socketLan_createPolicyRevision/README.md +8 -6
  95. catocli/parsers/mutation_policy_socketLan_discardPolicyRevision/README.md +8 -6
  96. catocli/parsers/mutation_policy_socketLan_moveRule/README.md +8 -6
  97. catocli/parsers/mutation_policy_socketLan_moveSection/README.md +8 -6
  98. catocli/parsers/mutation_policy_socketLan_publishPolicyRevision/README.md +8 -6
  99. catocli/parsers/mutation_policy_socketLan_removeRule/README.md +8 -6
  100. catocli/parsers/mutation_policy_socketLan_removeSection/README.md +8 -6
  101. catocli/parsers/mutation_policy_socketLan_updatePolicy/README.md +8 -6
  102. catocli/parsers/mutation_policy_socketLan_updateRule/README.md +8 -6
  103. catocli/parsers/mutation_policy_socketLan_updateSection/README.md +8 -6
  104. catocli/parsers/mutation_policy_terminalServer_addRule/README.md +8 -6
  105. catocli/parsers/mutation_policy_terminalServer_addSection/README.md +8 -6
  106. catocli/parsers/mutation_policy_terminalServer_createPolicyRevision/README.md +8 -6
  107. catocli/parsers/mutation_policy_terminalServer_discardPolicyRevision/README.md +8 -6
  108. catocli/parsers/mutation_policy_terminalServer_moveRule/README.md +8 -6
  109. catocli/parsers/mutation_policy_terminalServer_moveSection/README.md +8 -6
  110. catocli/parsers/mutation_policy_terminalServer_publishPolicyRevision/README.md +8 -6
  111. catocli/parsers/mutation_policy_terminalServer_removeRule/README.md +8 -6
  112. catocli/parsers/mutation_policy_terminalServer_removeSection/README.md +8 -6
  113. catocli/parsers/mutation_policy_terminalServer_updatePolicy/README.md +8 -6
  114. catocli/parsers/mutation_policy_terminalServer_updateRule/README.md +8 -6
  115. catocli/parsers/mutation_policy_terminalServer_updateSection/README.md +8 -6
  116. catocli/parsers/mutation_policy_wanFirewall_addRule/README.md +8 -6
  117. catocli/parsers/mutation_policy_wanFirewall_addSection/README.md +8 -6
  118. catocli/parsers/mutation_policy_wanFirewall_createPolicyRevision/README.md +8 -6
  119. catocli/parsers/mutation_policy_wanFirewall_discardPolicyRevision/README.md +8 -6
  120. catocli/parsers/mutation_policy_wanFirewall_moveRule/README.md +8 -6
  121. catocli/parsers/mutation_policy_wanFirewall_moveSection/README.md +8 -6
  122. catocli/parsers/mutation_policy_wanFirewall_publishPolicyRevision/README.md +8 -6
  123. catocli/parsers/mutation_policy_wanFirewall_removeRule/README.md +8 -6
  124. catocli/parsers/mutation_policy_wanFirewall_removeSection/README.md +8 -6
  125. catocli/parsers/mutation_policy_wanFirewall_updatePolicy/README.md +8 -6
  126. catocli/parsers/mutation_policy_wanFirewall_updateRule/README.md +8 -6
  127. catocli/parsers/mutation_policy_wanFirewall_updateSection/README.md +8 -6
  128. catocli/parsers/mutation_policy_wanNetwork_addRule/README.md +8 -6
  129. catocli/parsers/mutation_policy_wanNetwork_addSection/README.md +8 -6
  130. catocli/parsers/mutation_policy_wanNetwork_createPolicyRevision/README.md +8 -6
  131. catocli/parsers/mutation_policy_wanNetwork_discardPolicyRevision/README.md +8 -6
  132. catocli/parsers/mutation_policy_wanNetwork_moveRule/README.md +8 -6
  133. catocli/parsers/mutation_policy_wanNetwork_moveSection/README.md +8 -6
  134. catocli/parsers/mutation_policy_wanNetwork_publishPolicyRevision/README.md +8 -6
  135. catocli/parsers/mutation_policy_wanNetwork_removeRule/README.md +8 -6
  136. catocli/parsers/mutation_policy_wanNetwork_removeSection/README.md +8 -6
  137. catocli/parsers/mutation_policy_wanNetwork_updatePolicy/README.md +8 -6
  138. catocli/parsers/mutation_policy_wanNetwork_updateRule/README.md +8 -6
  139. catocli/parsers/mutation_policy_wanNetwork_updateSection/README.md +8 -6
  140. catocli/parsers/mutation_sandbox/__init__.py +27 -27
  141. catocli/parsers/mutation_sandbox_deleteReport/README.md +7 -5
  142. catocli/parsers/mutation_sandbox_uploadFile/README.md +7 -5
  143. catocli/parsers/mutation_site/__init__.py +474 -474
  144. catocli/parsers/mutation_site_addBgpPeer/README.md +7 -5
  145. catocli/parsers/mutation_site_addCloudInterconnectPhysicalConnection/README.md +7 -5
  146. catocli/parsers/mutation_site_addCloudInterconnectSite/README.md +7 -5
  147. catocli/parsers/mutation_site_addIpsecIkeV2Site/README.md +7 -5
  148. catocli/parsers/mutation_site_addIpsecIkeV2SiteTunnels/README.md +8 -6
  149. catocli/parsers/mutation_site_addNetworkRange/README.md +8 -6
  150. catocli/parsers/mutation_site_addSecondaryAwsVSocket/README.md +7 -5
  151. catocli/parsers/mutation_site_addSecondaryAzureVSocket/README.md +7 -5
  152. catocli/parsers/mutation_site_addSocketAddOnCard/README.md +7 -5
  153. catocli/parsers/mutation_site_addSocketSite/README.md +7 -5
  154. catocli/parsers/mutation_site_addStaticHost/README.md +8 -6
  155. catocli/parsers/mutation_site_assignSiteBwLicense/README.md +7 -5
  156. catocli/parsers/mutation_site_removeBgpPeer/README.md +7 -5
  157. catocli/parsers/mutation_site_removeCloudInterconnectPhysicalConnection/README.md +7 -5
  158. catocli/parsers/mutation_site_removeIpsecIkeV2SiteTunnels/README.md +8 -6
  159. catocli/parsers/mutation_site_removeNetworkRange/README.md +7 -5
  160. catocli/parsers/mutation_site_removeSecondaryAwsVSocket/README.md +7 -5
  161. catocli/parsers/mutation_site_removeSecondaryAzureVSocket/README.md +7 -5
  162. catocli/parsers/mutation_site_removeSite/README.md +7 -5
  163. catocli/parsers/mutation_site_removeSiteBwLicense/README.md +7 -5
  164. catocli/parsers/mutation_site_removeSocketAddOnCard/README.md +7 -5
  165. catocli/parsers/mutation_site_removeStaticHost/README.md +7 -5
  166. catocli/parsers/mutation_site_replaceSiteBwLicense/README.md +7 -5
  167. catocli/parsers/mutation_site_startSiteUpgrade/README.md +7 -5
  168. catocli/parsers/mutation_site_updateBgpPeer/README.md +7 -5
  169. catocli/parsers/mutation_site_updateCloudInterconnectPhysicalConnection/README.md +7 -5
  170. catocli/parsers/mutation_site_updateHa/README.md +8 -6
  171. catocli/parsers/mutation_site_updateIpsecIkeV2SiteGeneralDetails/README.md +8 -6
  172. catocli/parsers/mutation_site_updateIpsecIkeV2SiteTunnels/README.md +8 -6
  173. catocli/parsers/mutation_site_updateNetworkRange/README.md +8 -6
  174. catocli/parsers/mutation_site_updateSecondaryAwsVSocket/README.md +7 -5
  175. catocli/parsers/mutation_site_updateSecondaryAzureVSocket/README.md +7 -5
  176. catocli/parsers/mutation_site_updateSiteBwLicense/README.md +7 -5
  177. catocli/parsers/mutation_site_updateSiteGeneralDetails/README.md +8 -6
  178. catocli/parsers/mutation_site_updateSocketInterface/README.md +9 -7
  179. catocli/parsers/mutation_site_updateStaticHost/README.md +8 -6
  180. catocli/parsers/mutation_sites/__init__.py +474 -474
  181. catocli/parsers/mutation_sites_addBgpPeer/README.md +7 -5
  182. catocli/parsers/mutation_sites_addCloudInterconnectPhysicalConnection/README.md +7 -5
  183. catocli/parsers/mutation_sites_addCloudInterconnectSite/README.md +7 -5
  184. catocli/parsers/mutation_sites_addIpsecIkeV2Site/README.md +7 -5
  185. catocli/parsers/mutation_sites_addIpsecIkeV2SiteTunnels/README.md +8 -6
  186. catocli/parsers/mutation_sites_addNetworkRange/README.md +8 -6
  187. catocli/parsers/mutation_sites_addSecondaryAwsVSocket/README.md +7 -5
  188. catocli/parsers/mutation_sites_addSecondaryAzureVSocket/README.md +7 -5
  189. catocli/parsers/mutation_sites_addSocketAddOnCard/README.md +7 -5
  190. catocli/parsers/mutation_sites_addSocketSite/README.md +7 -5
  191. catocli/parsers/mutation_sites_addStaticHost/README.md +8 -6
  192. catocli/parsers/mutation_sites_assignSiteBwLicense/README.md +7 -5
  193. catocli/parsers/mutation_sites_removeBgpPeer/README.md +7 -5
  194. catocli/parsers/mutation_sites_removeCloudInterconnectPhysicalConnection/README.md +7 -5
  195. catocli/parsers/mutation_sites_removeIpsecIkeV2SiteTunnels/README.md +8 -6
  196. catocli/parsers/mutation_sites_removeNetworkRange/README.md +7 -5
  197. catocli/parsers/mutation_sites_removeSecondaryAwsVSocket/README.md +7 -5
  198. catocli/parsers/mutation_sites_removeSecondaryAzureVSocket/README.md +7 -5
  199. catocli/parsers/mutation_sites_removeSite/README.md +7 -5
  200. catocli/parsers/mutation_sites_removeSiteBwLicense/README.md +7 -5
  201. catocli/parsers/mutation_sites_removeSocketAddOnCard/README.md +7 -5
  202. catocli/parsers/mutation_sites_removeStaticHost/README.md +7 -5
  203. catocli/parsers/mutation_sites_replaceSiteBwLicense/README.md +7 -5
  204. catocli/parsers/mutation_sites_startSiteUpgrade/README.md +7 -5
  205. catocli/parsers/mutation_sites_updateBgpPeer/README.md +7 -5
  206. catocli/parsers/mutation_sites_updateCloudInterconnectPhysicalConnection/README.md +7 -5
  207. catocli/parsers/mutation_sites_updateHa/README.md +8 -6
  208. catocli/parsers/mutation_sites_updateIpsecIkeV2SiteGeneralDetails/README.md +8 -6
  209. catocli/parsers/mutation_sites_updateIpsecIkeV2SiteTunnels/README.md +8 -6
  210. catocli/parsers/mutation_sites_updateNetworkRange/README.md +8 -6
  211. catocli/parsers/mutation_sites_updateSecondaryAwsVSocket/README.md +7 -5
  212. catocli/parsers/mutation_sites_updateSecondaryAzureVSocket/README.md +7 -5
  213. catocli/parsers/mutation_sites_updateSiteBwLicense/README.md +7 -5
  214. catocli/parsers/mutation_sites_updateSiteGeneralDetails/README.md +8 -6
  215. catocli/parsers/mutation_sites_updateSocketInterface/README.md +9 -7
  216. catocli/parsers/mutation_sites_updateStaticHost/README.md +8 -6
  217. catocli/parsers/mutation_xdr/__init__.py +45 -45
  218. catocli/parsers/mutation_xdr_addStoryComment/README.md +7 -5
  219. catocli/parsers/mutation_xdr_analystFeedback/README.md +7 -6
  220. catocli/parsers/mutation_xdr_deleteStoryComment/README.md +7 -5
  221. catocli/parsers/query_accountBySubdomain/README.md +7 -5
  222. catocli/parsers/query_accountBySubdomain/__init__.py +12 -12
  223. catocli/parsers/query_accountManagement/README.md +4 -5
  224. catocli/parsers/query_accountManagement/__init__.py +12 -12
  225. catocli/parsers/query_accountMetrics/README.md +20 -18
  226. catocli/parsers/query_accountMetrics/__init__.py +12 -12
  227. catocli/parsers/query_accountRoles/README.md +7 -5
  228. catocli/parsers/query_accountRoles/__init__.py +12 -12
  229. catocli/parsers/query_accountSnapshot/README.md +8 -6
  230. catocli/parsers/query_accountSnapshot/__init__.py +12 -12
  231. catocli/parsers/query_admin/README.md +7 -5
  232. catocli/parsers/query_admin/__init__.py +12 -12
  233. catocli/parsers/query_admins/README.md +11 -9
  234. catocli/parsers/query_admins/__init__.py +12 -12
  235. catocli/parsers/query_appStats/README.md +20 -11
  236. catocli/parsers/query_appStats/__init__.py +12 -12
  237. catocli/parsers/query_appStatsTimeSeries/README.md +21 -12
  238. catocli/parsers/query_appStatsTimeSeries/__init__.py +12 -12
  239. catocli/parsers/query_auditFeed/README.md +10 -8
  240. catocli/parsers/query_auditFeed/__init__.py +12 -12
  241. catocli/parsers/query_catalogs/README.md +9 -7
  242. catocli/parsers/query_catalogs/__init__.py +12 -12
  243. catocli/parsers/query_container/README.md +13 -11
  244. catocli/parsers/query_container/__init__.py +12 -12
  245. catocli/parsers/query_devices/README.md +10 -8
  246. catocli/parsers/query_devices/__init__.py +12 -12
  247. catocli/parsers/query_enterpriseDirectory/README.md +19 -0
  248. catocli/parsers/query_enterpriseDirectory/__init__.py +16 -0
  249. catocli/parsers/query_entityLookup/README.md +19 -17
  250. catocli/parsers/query_entityLookup/__init__.py +12 -12
  251. catocli/parsers/query_events/README.md +13 -11
  252. catocli/parsers/query_events/__init__.py +12 -12
  253. catocli/parsers/query_eventsFeed/README.md +9 -7
  254. catocli/parsers/query_eventsFeed/__init__.py +12 -12
  255. catocli/parsers/query_eventsTimeSeries/README.md +14 -12
  256. catocli/parsers/query_eventsTimeSeries/__init__.py +12 -12
  257. catocli/parsers/query_groups/__init__.py +51 -51
  258. catocli/parsers/query_groups_groupList/README.md +8 -6
  259. catocli/parsers/query_groups_group_members/README.md +8 -6
  260. catocli/parsers/query_groups_whereUsed/README.md +7 -5
  261. catocli/parsers/query_hardware/README.md +7 -5
  262. catocli/parsers/query_hardware/__init__.py +12 -12
  263. catocli/parsers/query_hardwareManagement/README.md +7 -5
  264. catocli/parsers/query_hardwareManagement/__init__.py +12 -12
  265. catocli/parsers/query_licensing/README.md +4 -5
  266. catocli/parsers/query_licensing/__init__.py +12 -12
  267. catocli/parsers/query_policy/__init__.py +158 -158
  268. catocli/parsers/query_policy_appTenantRestriction_policy/README.md +7 -5
  269. catocli/parsers/query_policy_dynamicIpAllocation_policy/README.md +7 -5
  270. catocli/parsers/query_policy_internetFirewall_policy/README.md +7 -5
  271. catocli/parsers/query_policy_remotePortFwd_policy/README.md +7 -5
  272. catocli/parsers/query_policy_socketLan_policy/README.md +7 -5
  273. catocli/parsers/query_policy_terminalServer_policy/README.md +7 -5
  274. catocli/parsers/query_policy_wanFirewall_policy/README.md +7 -5
  275. catocli/parsers/query_policy_wanNetwork_policy/README.md +7 -5
  276. catocli/parsers/query_popLocations/README.md +7 -5
  277. catocli/parsers/query_popLocations/__init__.py +12 -12
  278. catocli/parsers/query_sandbox/README.md +7 -5
  279. catocli/parsers/query_sandbox/__init__.py +12 -12
  280. catocli/parsers/query_servicePrincipalAdmin/README.md +19 -0
  281. catocli/parsers/query_servicePrincipalAdmin/__init__.py +16 -0
  282. catocli/parsers/query_site/__init__.py +123 -123
  283. catocli/parsers/query_siteLocation/__init__.py +10 -10
  284. catocli/parsers/query_site_availableVersionList/README.md +7 -5
  285. catocli/parsers/query_site_bgpPeer/README.md +7 -5
  286. catocli/parsers/query_site_bgpPeerList/README.md +7 -5
  287. catocli/parsers/query_site_cloudInterconnectConnectionConnectivity/README.md +7 -5
  288. catocli/parsers/query_site_cloudInterconnectPhysicalConnection/README.md +7 -5
  289. catocli/parsers/query_site_cloudInterconnectPhysicalConnectionId/README.md +7 -5
  290. catocli/parsers/query_site_secondaryAwsVSocket/README.md +7 -5
  291. catocli/parsers/query_site_secondaryAzureVSocket/README.md +7 -5
  292. catocli/parsers/query_site_siteBgpStatus/README.md +7 -5
  293. catocli/parsers/query_socketPortMetrics/README.md +13 -11
  294. catocli/parsers/query_socketPortMetrics/__init__.py +12 -12
  295. catocli/parsers/query_socketPortMetricsTimeSeries/README.md +14 -12
  296. catocli/parsers/query_socketPortMetricsTimeSeries/__init__.py +12 -12
  297. catocli/parsers/query_subDomains/README.md +7 -5
  298. catocli/parsers/query_subDomains/__init__.py +12 -12
  299. catocli/parsers/query_xdr/__init__.py +27 -27
  300. catocli/parsers/query_xdr_stories/README.md +7 -6
  301. catocli/parsers/query_xdr_story/README.md +9 -8
  302. catocli/parsers/raw/__init__.py +9 -9
  303. {catocli-2.1.0.dist-info → catocli-2.1.2.dist-info}/METADATA +1 -1
  304. catocli-2.1.2.dist-info/RECORD +659 -0
  305. graphql_client/api/call_api.py +20 -2
  306. models/mutation.accountManagement.addAccount.json +5 -15
  307. models/mutation.accountManagement.updateAccount.json +1 -3
  308. models/mutation.admin.addAdmin.json +14 -35
  309. models/mutation.admin.addServicePrincipalAdmin.json +2554 -0
  310. models/mutation.admin.removeAdmin.json +1 -1
  311. models/mutation.admin.removeServicePrincipalAdmin.json +201 -0
  312. models/mutation.admin.updateAdmin.json +13 -30
  313. models/mutation.admin.updateServicePrincipalAdmin.json +2554 -0
  314. models/mutation.container.delete.json +9 -435
  315. models/mutation.container.fqdn.addValues.json +6 -11
  316. models/mutation.container.fqdn.createFromFile.json +4 -12
  317. models/mutation.container.fqdn.removeValues.json +6 -11
  318. models/mutation.container.fqdn.updateFromFile.json +5 -15
  319. models/mutation.container.ipAddressRange.addValues.json +4 -12
  320. models/mutation.container.ipAddressRange.createFromFile.json +4 -12
  321. models/mutation.container.ipAddressRange.removeValues.json +4 -12
  322. models/mutation.container.ipAddressRange.updateFromFile.json +5 -15
  323. models/mutation.enterpriseDirectory.archiveLocation.json +1046 -0
  324. models/mutation.enterpriseDirectory.createLocation.json +2521 -0
  325. models/mutation.enterpriseDirectory.restoreLocation.json +1046 -0
  326. models/mutation.enterpriseDirectory.updateLocation.json +2567 -0
  327. models/mutation.groups.createGroup.json +39 -171
  328. models/mutation.groups.deleteGroup.json +36 -162
  329. models/mutation.groups.updateGroup.json +41 -177
  330. models/mutation.hardware.updateHardwareShipping.json +18 -47
  331. models/mutation.policy.appTenantRestriction.addRule.json +50 -136
  332. models/mutation.policy.appTenantRestriction.addSection.json +4 -12
  333. models/mutation.policy.appTenantRestriction.createPolicyRevision.json +3 -9
  334. models/mutation.policy.appTenantRestriction.discardPolicyRevision.json +2 -6
  335. models/mutation.policy.appTenantRestriction.moveRule.json +4 -12
  336. models/mutation.policy.appTenantRestriction.moveSection.json +4 -12
  337. models/mutation.policy.appTenantRestriction.publishPolicyRevision.json +3 -9
  338. models/mutation.policy.appTenantRestriction.removeRule.json +2 -6
  339. models/mutation.policy.appTenantRestriction.removeSection.json +2 -6
  340. models/mutation.policy.appTenantRestriction.updatePolicy.json +2 -6
  341. models/mutation.policy.appTenantRestriction.updateRule.json +49 -133
  342. models/mutation.policy.appTenantRestriction.updateSection.json +3 -9
  343. models/mutation.policy.dynamicIpAllocation.addRule.json +15 -45
  344. models/mutation.policy.dynamicIpAllocation.addSection.json +4 -12
  345. models/mutation.policy.dynamicIpAllocation.createPolicyRevision.json +3 -9
  346. models/mutation.policy.dynamicIpAllocation.discardPolicyRevision.json +2 -6
  347. models/mutation.policy.dynamicIpAllocation.moveRule.json +4 -12
  348. models/mutation.policy.dynamicIpAllocation.moveSection.json +4 -12
  349. models/mutation.policy.dynamicIpAllocation.publishPolicyRevision.json +3 -9
  350. models/mutation.policy.dynamicIpAllocation.removeRule.json +2 -6
  351. models/mutation.policy.dynamicIpAllocation.removeSection.json +2 -6
  352. models/mutation.policy.dynamicIpAllocation.updatePolicy.json +2 -6
  353. models/mutation.policy.dynamicIpAllocation.updateRule.json +14 -42
  354. models/mutation.policy.dynamicIpAllocation.updateSection.json +3 -9
  355. models/mutation.policy.internetFirewall.addRule.json +248 -542
  356. models/mutation.policy.internetFirewall.addSection.json +4 -12
  357. models/mutation.policy.internetFirewall.createPolicyRevision.json +3 -9
  358. models/mutation.policy.internetFirewall.discardPolicyRevision.json +2 -6
  359. models/mutation.policy.internetFirewall.moveRule.json +4 -12
  360. models/mutation.policy.internetFirewall.moveSection.json +4 -12
  361. models/mutation.policy.internetFirewall.publishPolicyRevision.json +3 -9
  362. models/mutation.policy.internetFirewall.removeRule.json +2 -6
  363. models/mutation.policy.internetFirewall.removeSection.json +2 -6
  364. models/mutation.policy.internetFirewall.updatePolicy.json +2 -6
  365. models/mutation.policy.internetFirewall.updateRule.json +247 -539
  366. models/mutation.policy.internetFirewall.updateSection.json +3 -9
  367. models/mutation.policy.remotePortFwd.addRule.json +35 -91
  368. models/mutation.policy.remotePortFwd.addSection.json +4 -12
  369. models/mutation.policy.remotePortFwd.createPolicyRevision.json +3 -9
  370. models/mutation.policy.remotePortFwd.discardPolicyRevision.json +2 -6
  371. models/mutation.policy.remotePortFwd.moveRule.json +4 -12
  372. models/mutation.policy.remotePortFwd.moveSection.json +4 -12
  373. models/mutation.policy.remotePortFwd.publishPolicyRevision.json +3 -9
  374. models/mutation.policy.remotePortFwd.removeRule.json +2 -6
  375. models/mutation.policy.remotePortFwd.removeSection.json +2 -6
  376. models/mutation.policy.remotePortFwd.updatePolicy.json +2 -6
  377. models/mutation.policy.remotePortFwd.updateRule.json +34 -88
  378. models/mutation.policy.remotePortFwd.updateSection.json +3 -9
  379. models/mutation.policy.socketLan.addRule.json +78 -185
  380. models/mutation.policy.socketLan.addSection.json +4 -12
  381. models/mutation.policy.socketLan.createPolicyRevision.json +3 -9
  382. models/mutation.policy.socketLan.discardPolicyRevision.json +2 -6
  383. models/mutation.policy.socketLan.moveRule.json +4 -12
  384. models/mutation.policy.socketLan.moveSection.json +4 -12
  385. models/mutation.policy.socketLan.publishPolicyRevision.json +3 -9
  386. models/mutation.policy.socketLan.removeRule.json +2 -6
  387. models/mutation.policy.socketLan.removeSection.json +2 -6
  388. models/mutation.policy.socketLan.updatePolicy.json +2 -6
  389. models/mutation.policy.socketLan.updateRule.json +77 -182
  390. models/mutation.policy.socketLan.updateSection.json +3 -9
  391. models/mutation.policy.terminalServer.addRule.json +10 -30
  392. models/mutation.policy.terminalServer.addSection.json +4 -12
  393. models/mutation.policy.terminalServer.createPolicyRevision.json +3 -9
  394. models/mutation.policy.terminalServer.discardPolicyRevision.json +2 -6
  395. models/mutation.policy.terminalServer.moveRule.json +4 -12
  396. models/mutation.policy.terminalServer.moveSection.json +4 -12
  397. models/mutation.policy.terminalServer.publishPolicyRevision.json +3 -9
  398. models/mutation.policy.terminalServer.removeRule.json +2 -6
  399. models/mutation.policy.terminalServer.removeSection.json +2 -6
  400. models/mutation.policy.terminalServer.updatePolicy.json +2 -6
  401. models/mutation.policy.terminalServer.updateRule.json +9 -27
  402. models/mutation.policy.terminalServer.updateSection.json +3 -9
  403. models/mutation.policy.wanFirewall.addRule.json +290 -654
  404. models/mutation.policy.wanFirewall.addSection.json +4 -12
  405. models/mutation.policy.wanFirewall.createPolicyRevision.json +3 -9
  406. models/mutation.policy.wanFirewall.discardPolicyRevision.json +2 -6
  407. models/mutation.policy.wanFirewall.moveRule.json +4 -12
  408. models/mutation.policy.wanFirewall.moveSection.json +4 -12
  409. models/mutation.policy.wanFirewall.publishPolicyRevision.json +3 -9
  410. models/mutation.policy.wanFirewall.removeRule.json +2 -6
  411. models/mutation.policy.wanFirewall.removeSection.json +2 -6
  412. models/mutation.policy.wanFirewall.updatePolicy.json +2 -6
  413. models/mutation.policy.wanFirewall.updateRule.json +289 -651
  414. models/mutation.policy.wanFirewall.updateSection.json +3 -9
  415. models/mutation.policy.wanNetwork.addRule.json +204 -514
  416. models/mutation.policy.wanNetwork.addSection.json +4 -12
  417. models/mutation.policy.wanNetwork.createPolicyRevision.json +3 -9
  418. models/mutation.policy.wanNetwork.discardPolicyRevision.json +2 -6
  419. models/mutation.policy.wanNetwork.moveRule.json +4 -12
  420. models/mutation.policy.wanNetwork.moveSection.json +4 -12
  421. models/mutation.policy.wanNetwork.publishPolicyRevision.json +3 -9
  422. models/mutation.policy.wanNetwork.removeRule.json +2 -6
  423. models/mutation.policy.wanNetwork.removeSection.json +2 -6
  424. models/mutation.policy.wanNetwork.updatePolicy.json +2 -6
  425. models/mutation.policy.wanNetwork.updateRule.json +203 -511
  426. models/mutation.policy.wanNetwork.updateSection.json +3 -9
  427. models/mutation.sandbox.deleteReport.json +1 -3
  428. models/mutation.sandbox.uploadFile.json +1 -3
  429. models/mutation.site.addBgpPeer.json +48 -123
  430. models/mutation.site.addCloudInterconnectPhysicalConnection.json +12 -36
  431. models/mutation.site.addCloudInterconnectSite.json +8 -24
  432. models/mutation.site.addIpsecIkeV2Site.json +10 -30
  433. models/mutation.site.addIpsecIkeV2SiteTunnels.json +14 -40
  434. models/mutation.site.addNetworkRange.json +15 -43
  435. models/mutation.site.addSecondaryAwsVSocket.json +5 -15
  436. models/mutation.site.addSecondaryAzureVSocket.json +4 -12
  437. models/mutation.site.addSocketAddOnCard.json +4 -12
  438. models/mutation.site.addSocketSite.json +12 -36
  439. models/mutation.site.addStaticHost.json +4 -10
  440. models/mutation.site.assignSiteBwLicense.json +120 -11782
  441. models/mutation.site.removeBgpPeer.json +1 -3
  442. models/mutation.site.removeCloudInterconnectPhysicalConnection.json +1 -3
  443. models/mutation.site.removeIpsecIkeV2SiteTunnels.json +2 -4
  444. models/mutation.site.removeNetworkRange.json +1 -1
  445. models/mutation.site.removeSecondaryAwsVSocket.json +1 -1
  446. models/mutation.site.removeSecondaryAzureVSocket.json +1 -1
  447. models/mutation.site.removeSite.json +1 -1
  448. models/mutation.site.removeSiteBwLicense.json +119 -11779
  449. models/mutation.site.removeSocketAddOnCard.json +3 -9
  450. models/mutation.site.removeStaticHost.json +1 -1
  451. models/mutation.site.replaceSiteBwLicense.json +121 -11785
  452. models/mutation.site.startSiteUpgrade.json +3 -9
  453. models/mutation.site.updateBgpPeer.json +47 -120
  454. models/mutation.site.updateCloudInterconnectPhysicalConnection.json +10 -30
  455. models/mutation.site.updateHa.json +4 -10
  456. models/mutation.site.updateIpsecIkeV2SiteGeneralDetails.json +11 -24
  457. models/mutation.site.updateIpsecIkeV2SiteTunnels.json +15 -43
  458. models/mutation.site.updateNetworkRange.json +15 -43
  459. models/mutation.site.updateSecondaryAwsVSocket.json +4 -12
  460. models/mutation.site.updateSecondaryAzureVSocket.json +3 -9
  461. models/mutation.site.updateSiteBwLicense.json +120 -11782
  462. models/mutation.site.updateSiteGeneralDetails.json +14 -40
  463. models/mutation.site.updateSocketInterface.json +26 -74
  464. models/mutation.site.updateStaticHost.json +4 -10
  465. models/mutation.sites.addBgpPeer.json +48 -123
  466. models/mutation.sites.addCloudInterconnectPhysicalConnection.json +12 -36
  467. models/mutation.sites.addCloudInterconnectSite.json +8 -24
  468. models/mutation.sites.addIpsecIkeV2Site.json +10 -30
  469. models/mutation.sites.addIpsecIkeV2SiteTunnels.json +14 -40
  470. models/mutation.sites.addNetworkRange.json +15 -43
  471. models/mutation.sites.addSecondaryAwsVSocket.json +5 -15
  472. models/mutation.sites.addSecondaryAzureVSocket.json +4 -12
  473. models/mutation.sites.addSocketAddOnCard.json +4 -12
  474. models/mutation.sites.addSocketSite.json +12 -36
  475. models/mutation.sites.addStaticHost.json +4 -10
  476. models/mutation.sites.assignSiteBwLicense.json +120 -11782
  477. models/mutation.sites.removeBgpPeer.json +1 -3
  478. models/mutation.sites.removeCloudInterconnectPhysicalConnection.json +1 -3
  479. models/mutation.sites.removeIpsecIkeV2SiteTunnels.json +2 -4
  480. models/mutation.sites.removeNetworkRange.json +1 -1
  481. models/mutation.sites.removeSecondaryAwsVSocket.json +1 -1
  482. models/mutation.sites.removeSecondaryAzureVSocket.json +1 -1
  483. models/mutation.sites.removeSite.json +1 -1
  484. models/mutation.sites.removeSiteBwLicense.json +119 -11779
  485. models/mutation.sites.removeSocketAddOnCard.json +3 -9
  486. models/mutation.sites.removeStaticHost.json +1 -1
  487. models/mutation.sites.replaceSiteBwLicense.json +121 -11785
  488. models/mutation.sites.startSiteUpgrade.json +3 -9
  489. models/mutation.sites.updateBgpPeer.json +47 -120
  490. models/mutation.sites.updateCloudInterconnectPhysicalConnection.json +10 -30
  491. models/mutation.sites.updateHa.json +4 -10
  492. models/mutation.sites.updateIpsecIkeV2SiteGeneralDetails.json +11 -24
  493. models/mutation.sites.updateIpsecIkeV2SiteTunnels.json +15 -43
  494. models/mutation.sites.updateNetworkRange.json +15 -43
  495. models/mutation.sites.updateSecondaryAwsVSocket.json +4 -12
  496. models/mutation.sites.updateSecondaryAzureVSocket.json +3 -9
  497. models/mutation.sites.updateSiteBwLicense.json +120 -11782
  498. models/mutation.sites.updateSiteGeneralDetails.json +14 -40
  499. models/mutation.sites.updateSocketInterface.json +26 -74
  500. models/mutation.sites.updateStaticHost.json +4 -10
  501. models/mutation.xdr.addStoryComment.json +15 -113
  502. models/mutation.xdr.analystFeedback.json +229 -26307
  503. models/mutation.xdr.deleteStoryComment.json +15 -113
  504. models/query.accountBySubdomain.json +2 -1
  505. models/query.accountMetrics.json +15 -12
  506. models/query.accountRoles.json +1 -1
  507. models/query.accountSnapshot.json +4 -2
  508. models/query.admin.json +1 -1
  509. models/query.admins.json +7 -10
  510. models/query.appStats.json +633 -33
  511. models/query.appStatsTimeSeries.json +15 -28
  512. models/query.auditFeed.json +225 -16
  513. models/query.catalogs.json +106 -215
  514. models/query.container.json +21 -471
  515. models/query.devices.json +333 -620
  516. models/query.enterpriseDirectory.json +3596 -0
  517. models/query.entityLookup.json +15 -27
  518. models/query.events.json +1875 -33
  519. models/query.eventsFeed.json +30 -14
  520. models/query.eventsTimeSeries.json +15 -28
  521. models/query.groups.group.members.json +23 -55
  522. models/query.groups.groupList.json +87 -266
  523. models/query.groups.whereUsed.json +2 -6
  524. models/query.hardware.json +92 -192
  525. models/query.hardwareManagement.json +21 -63
  526. models/query.licensing.json +76 -11721
  527. models/query.policy.appTenantRestriction.policy.json +2 -6
  528. models/query.policy.dynamicIpAllocation.policy.json +2 -6
  529. models/query.policy.internetFirewall.policy.json +2 -6
  530. models/query.policy.remotePortFwd.policy.json +2 -6
  531. models/query.policy.socketLan.policy.json +2 -6
  532. models/query.policy.terminalServer.policy.json +2 -6
  533. models/query.policy.wanFirewall.policy.json +2 -6
  534. models/query.policy.wanNetwork.policy.json +2 -6
  535. models/query.popLocations.json +34 -74
  536. models/query.sandbox.json +44 -83
  537. models/query.servicePrincipalAdmin.json +1098 -0
  538. models/query.site.availableVersionList.json +4 -5
  539. models/query.site.bgpPeer.json +2 -6
  540. models/query.site.bgpPeerList.json +2 -6
  541. models/query.site.cloudInterconnectConnectionConnectivity.json +1 -3
  542. models/query.site.cloudInterconnectPhysicalConnection.json +1 -3
  543. models/query.site.cloudInterconnectPhysicalConnectionId.json +3 -9
  544. models/query.site.secondaryAwsVSocket.json +1 -1
  545. models/query.site.secondaryAzureVSocket.json +1 -1
  546. models/query.site.siteBgpStatus.json +2 -6
  547. models/query.socketPortMetrics.json +465 -33
  548. models/query.socketPortMetricsTimeSeries.json +15 -28
  549. models/query.subDomains.json +1 -1
  550. models/query.xdr.stories.json +306 -26440
  551. models/query.xdr.story.json +40 -26100
  552. schema/catolib.py +1266 -956
  553. schema/importSchema.py +53 -48
  554. catocli/parsers/mutation/README.md +0 -4
  555. catocli/parsers/mutation_accountManagement_disableAccount/README.md +0 -16
  556. catocli/parsers/parserApiClient.py +0 -522
  557. catocli/parsers/query/README.md +0 -3
  558. catocli-2.1.0.dist-info/RECORD +0 -644
  559. models/mutation.accountManagement.disableAccount.json +0 -545
  560. models/query.policy.json +0 -40899
  561. models/query.site.json +0 -5688
  562. schema/remove_policyid.py +0 -89
  563. schema/remove_policyid_mutations.py +0 -89
  564. {catocli-2.1.0.dist-info → catocli-2.1.2.dist-info}/WHEEL +0 -0
  565. {catocli-2.1.0.dist-info → catocli-2.1.2.dist-info}/entry_points.txt +0 -0
  566. {catocli-2.1.0.dist-info → catocli-2.1.2.dist-info}/licenses/LICENSE +0 -0
  567. {catocli-2.1.0.dist-info → catocli-2.1.2.dist-info}/top_level.txt +0 -0
@@ -5,7 +5,7 @@ import json
5
5
  import catocli
6
6
  from graphql_client import Configuration
7
7
  from graphql_client.api_client import ApiException
8
- from ..parsers.parserApiClient import get_help
8
+ from ..parsers.customParserApiClient import get_help
9
9
  from .profile_manager import get_profile_manager
10
10
  from .version_checker import check_for_updates, force_check_updates
11
11
  import traceback
@@ -18,99 +18,115 @@ profile_manager = get_profile_manager()
18
18
  CATO_DEBUG = bool(os.getenv("CATO_DEBUG", False))
19
19
  from ..parsers.raw import raw_parse
20
20
  from ..parsers.custom import custom_parse
21
+ from ..parsers.custom_private import private_parse
21
22
  from ..parsers.query_siteLocation import query_siteLocation_parse
22
- from ..parsers.mutation_accountManagement import mutation_accountManagement_parse
23
- from ..parsers.mutation_admin import mutation_admin_parse
24
- from ..parsers.mutation_container import mutation_container_parse
25
- from ..parsers.mutation_groups import mutation_groups_parse
26
- from ..parsers.mutation_hardware import mutation_hardware_parse
27
- from ..parsers.mutation_policy import mutation_policy_parse
28
- from ..parsers.mutation_sandbox import mutation_sandbox_parse
29
- from ..parsers.mutation_site import mutation_site_parse
30
- from ..parsers.mutation_sites import mutation_sites_parse
31
- from ..parsers.mutation_xdr import mutation_xdr_parse
32
- from ..parsers.query_accountBySubdomain import query_accountBySubdomain_parse
33
- from ..parsers.query_accountManagement import query_accountManagement_parse
23
+ from ..parsers.query_socketPortMetrics import query_socketPortMetrics_parse
24
+ from ..parsers.query_socketPortMetricsTimeSeries import query_socketPortMetricsTimeSeries_parse
34
25
  from ..parsers.query_accountMetrics import query_accountMetrics_parse
35
- from ..parsers.query_accountRoles import query_accountRoles_parse
36
26
  from ..parsers.query_accountSnapshot import query_accountSnapshot_parse
37
- from ..parsers.query_admin import query_admin_parse
38
- from ..parsers.query_admins import query_admins_parse
39
- from ..parsers.query_appStats import query_appStats_parse
40
- from ..parsers.query_appStatsTimeSeries import query_appStatsTimeSeries_parse
27
+ from ..parsers.query_eventsFeed import query_eventsFeed_parse
28
+ from ..parsers.query_hardwareManagement import query_hardwareManagement_parse
29
+ from ..parsers.query_events import query_events_parse
30
+ from ..parsers.query_eventsTimeSeries import query_eventsTimeSeries_parse
41
31
  from ..parsers.query_auditFeed import query_auditFeed_parse
42
- from ..parsers.query_catalogs import query_catalogs_parse
43
32
  from ..parsers.query_container import query_container_parse
44
- from ..parsers.query_devices import query_devices_parse
33
+ from ..parsers.query_admins import query_admins_parse
45
34
  from ..parsers.query_entityLookup import query_entityLookup_parse
46
- from ..parsers.query_events import query_events_parse
47
- from ..parsers.query_eventsFeed import query_eventsFeed_parse
48
- from ..parsers.query_eventsTimeSeries import query_eventsTimeSeries_parse
49
- from ..parsers.query_groups import query_groups_parse
50
- from ..parsers.query_hardware import query_hardware_parse
51
- from ..parsers.query_hardwareManagement import query_hardwareManagement_parse
52
- from ..parsers.query_licensing import query_licensing_parse
53
- from ..parsers.query_policy import query_policy_parse
54
- from ..parsers.query_popLocations import query_popLocations_parse
35
+ from ..parsers.query_accountRoles import query_accountRoles_parse
36
+ from ..parsers.query_accountBySubdomain import query_accountBySubdomain_parse
37
+ from ..parsers.query_subDomains import query_subDomains_parse
38
+ from ..parsers.query_appStats import query_appStats_parse
39
+ from ..parsers.query_appStatsTimeSeries import query_appStatsTimeSeries_parse
40
+ from ..parsers.query_admin import query_admin_parse
41
+ from ..parsers.query_servicePrincipalAdmin import query_servicePrincipalAdmin_parse
42
+ from ..parsers.query_accountManagement import query_accountManagement_parse
55
43
  from ..parsers.query_sandbox import query_sandbox_parse
44
+ from ..parsers.query_popLocations import query_popLocations_parse
45
+ from ..parsers.query_licensing import query_licensing_parse
46
+ from ..parsers.query_hardware import query_hardware_parse
47
+ from ..parsers.query_enterpriseDirectory import query_enterpriseDirectory_parse
48
+ from ..parsers.query_devices import query_devices_parse
49
+ from ..parsers.query_catalogs import query_catalogs_parse
56
50
  from ..parsers.query_site import query_site_parse
57
- from ..parsers.query_socketPortMetrics import query_socketPortMetrics_parse
58
- from ..parsers.query_socketPortMetricsTimeSeries import query_socketPortMetricsTimeSeries_parse
59
- from ..parsers.query_subDomains import query_subDomains_parse
60
51
  from ..parsers.query_xdr import query_xdr_parse
52
+ from ..parsers.query_policy import query_policy_parse
53
+ from ..parsers.query_groups import query_groups_parse
54
+ from ..parsers.mutation_xdr import mutation_xdr_parse
55
+ from ..parsers.mutation_site import mutation_site_parse
56
+ from ..parsers.mutation_sites import mutation_sites_parse
57
+ from ..parsers.mutation_container import mutation_container_parse
58
+ from ..parsers.mutation_admin import mutation_admin_parse
59
+ from ..parsers.mutation_policy import mutation_policy_parse
60
+ from ..parsers.mutation_accountManagement import mutation_accountManagement_parse
61
+ from ..parsers.mutation_sandbox import mutation_sandbox_parse
62
+ from ..parsers.mutation_groups import mutation_groups_parse
63
+ from ..parsers.mutation_hardware import mutation_hardware_parse
64
+ from ..parsers.mutation_enterpriseDirectory import mutation_enterpriseDirectory_parse
61
65
 
62
66
  def show_version_info(args, configuration=None):
63
- print(f"catocli version {catocli.__version__}")
64
-
65
- if not args.current_only:
66
- if args.check_updates:
67
- # Force check for updates
68
- is_newer, latest_version, source = force_check_updates()
69
- else:
70
- # Regular check (uses cache)
71
- is_newer, latest_version, source = check_for_updates(show_if_available=False)
72
-
73
- if latest_version:
74
- if is_newer:
75
- print(f"Latest version: {latest_version} (from {source}) - UPDATE AVAILABLE!")
76
- print()
77
- print("To upgrade, run:")
78
- print("pip install --upgrade catocli")
79
- else:
80
- print(f"Latest version: {latest_version} (from {source}) - You are up to date!")
81
- else:
82
- print("Unable to check for updates (check your internet connection)")
83
- return [{"success": True, "current_version": catocli.__version__, "latest_version": latest_version if not args.current_only else None}]
67
+ print(f"catocli version {catocli.__version__}")
68
+
69
+ if not args.current_only:
70
+ if args.check_updates:
71
+ # Force check for updates
72
+ is_newer, latest_version, source = force_check_updates()
73
+ else:
74
+ # Regular check (uses cache)
75
+ is_newer, latest_version, source = check_for_updates(show_if_available=False)
76
+
77
+ if latest_version:
78
+ if is_newer:
79
+ print(f"Latest version: {latest_version} (from {source}) - UPDATE AVAILABLE!")
80
+ print()
81
+ print("To upgrade, run:")
82
+ print("pip install --upgrade catocli")
83
+ else:
84
+ print(f"Latest version: {latest_version} (from {source}) - You are up to date!")
85
+ else:
86
+ print("Unable to check for updates (check your internet connection)")
87
+ return [{"success": True, "current_version": catocli.__version__, "latest_version": latest_version if not args.current_only else None}]
84
88
 
89
+ def load_private_settings():
90
+ # Load private settings from ~/.cato/settings.json
91
+ settings_file = os.path.expanduser("~/.cato/settings.json")
92
+ try:
93
+ with open(settings_file, 'r') as f:
94
+ return json.load(f)
95
+ except (FileNotFoundError, json.JSONDecodeError):
96
+ return {}
97
+
85
98
  def get_configuration(skip_api_key=False):
86
- configuration = Configuration()
87
- configuration.verify_ssl = False
88
- configuration.debug = CATO_DEBUG
89
- configuration.version = "{}".format(catocli.__version__)
90
-
91
- # Try to migrate from environment variables first
92
- profile_manager.migrate_from_environment()
93
-
94
- # Get credentials from profile
95
- credentials = profile_manager.get_credentials()
96
- if not credentials:
97
- print("No Cato CLI profile configured.")
98
- print("Run 'catocli configure set' to set up your credentials.")
99
- exit(1)
99
+ configuration = Configuration()
100
+ configuration.verify_ssl = False
101
+ configuration.debug = CATO_DEBUG
102
+ configuration.version = "{}".format(catocli.__version__)
103
+
104
+ # Try to migrate from environment variables first
105
+ profile_manager.migrate_from_environment()
106
+
107
+ # Get credentials from profile
108
+ credentials = profile_manager.get_credentials()
109
+ if not credentials:
110
+ print("No Cato CLI profile configured.")
111
+ print("Run 'catocli configure set' to set up your credentials.")
112
+ exit(1)
100
113
 
101
- if not credentials.get('cato_token') or not credentials.get('account_id'):
102
- profile_name = profile_manager.get_current_profile()
103
- print(f"Profile '{profile_name}' is missing required credentials.")
104
- print(f"Run 'catocli configure set --profile {profile_name}' to update your credentials.")
105
- exit(1)
106
-
107
- # Only set API key if not using custom headers file
108
- if not skip_api_key:
109
- configuration.api_key["x-api-key"] = credentials['cato_token']
110
- configuration.host = credentials['endpoint']
111
- configuration.accountID = credentials['account_id']
112
-
113
- return configuration
114
+ if not credentials.get('cato_token') or not credentials.get('account_id'):
115
+ profile_name = profile_manager.get_current_profile()
116
+ print(f"Profile '{profile_name}' is missing required credentials.")
117
+ print(f"Run 'catocli configure set --profile {profile_name}' to update your credentials.")
118
+ exit(1)
119
+
120
+ # Use standard endpoint from profile for regular API calls
121
+ configuration.host = credentials['endpoint']
122
+
123
+ # Only set API key if not using custom headers file
124
+ # (Private settings are handled separately in createPrivateRequest)
125
+ if not skip_api_key:
126
+ configuration.api_key["x-api-key"] = credentials['cato_token']
127
+ configuration.accountID = credentials['account_id']
128
+
129
+ return configuration
114
130
 
115
131
  defaultReadmeStr = """
116
132
  The Cato CLI is a command-line interface tool designed to simplify the management and automation of Cato Networks’ configurations and operations.
@@ -136,6 +152,7 @@ version_parser.add_argument('--current-only', action='store_true', help='Show on
136
152
  version_parser.set_defaults(func=show_version_info)
137
153
 
138
154
  custom_parsers = custom_parse(subparsers)
155
+ private_parsers = private_parse(subparsers)
139
156
  raw_parsers = subparsers.add_parser('raw', help='Raw GraphQL', usage=get_help("raw"))
140
157
  raw_parser = raw_parse(raw_parsers)
141
158
  query_parser = subparsers.add_parser('query', help='Query', usage='catocli query <operationName> [options]')
@@ -144,135 +161,141 @@ query_siteLocation_parser = query_siteLocation_parse(query_subparsers)
144
161
  mutation_parser = subparsers.add_parser('mutation', help='Mutation', usage='catocli mutation <operationName> [options]')
145
162
  mutation_subparsers = mutation_parser.add_subparsers(description='valid subcommands', help='additional help')
146
163
 
147
- mutation_accountManagement_parser = mutation_accountManagement_parse(mutation_subparsers)
148
- mutation_admin_parser = mutation_admin_parse(mutation_subparsers)
149
- mutation_container_parser = mutation_container_parse(mutation_subparsers)
150
- mutation_groups_parser = mutation_groups_parse(mutation_subparsers)
151
- mutation_hardware_parser = mutation_hardware_parse(mutation_subparsers)
152
- mutation_policy_parser = mutation_policy_parse(mutation_subparsers)
153
- mutation_sandbox_parser = mutation_sandbox_parse(mutation_subparsers)
154
- mutation_site_parser = mutation_site_parse(mutation_subparsers)
155
- mutation_sites_parser = mutation_sites_parse(mutation_subparsers)
156
- mutation_xdr_parser = mutation_xdr_parse(mutation_subparsers)
157
- query_accountBySubdomain_parser = query_accountBySubdomain_parse(query_subparsers)
158
- query_accountManagement_parser = query_accountManagement_parse(query_subparsers)
164
+ query_socketPortMetrics_parser = query_socketPortMetrics_parse(query_subparsers)
165
+ query_socketPortMetricsTimeSeries_parser = query_socketPortMetricsTimeSeries_parse(query_subparsers)
159
166
  query_accountMetrics_parser = query_accountMetrics_parse(query_subparsers)
160
- query_accountRoles_parser = query_accountRoles_parse(query_subparsers)
161
167
  query_accountSnapshot_parser = query_accountSnapshot_parse(query_subparsers)
162
- query_admin_parser = query_admin_parse(query_subparsers)
163
- query_admins_parser = query_admins_parse(query_subparsers)
164
- query_appStats_parser = query_appStats_parse(query_subparsers)
165
- query_appStatsTimeSeries_parser = query_appStatsTimeSeries_parse(query_subparsers)
168
+ query_eventsFeed_parser = query_eventsFeed_parse(query_subparsers)
169
+ query_hardwareManagement_parser = query_hardwareManagement_parse(query_subparsers)
170
+ query_events_parser = query_events_parse(query_subparsers)
171
+ query_eventsTimeSeries_parser = query_eventsTimeSeries_parse(query_subparsers)
166
172
  query_auditFeed_parser = query_auditFeed_parse(query_subparsers)
167
- query_catalogs_parser = query_catalogs_parse(query_subparsers)
168
173
  query_container_parser = query_container_parse(query_subparsers)
169
- query_devices_parser = query_devices_parse(query_subparsers)
174
+ query_admins_parser = query_admins_parse(query_subparsers)
170
175
  query_entityLookup_parser = query_entityLookup_parse(query_subparsers)
171
- query_events_parser = query_events_parse(query_subparsers)
172
- query_eventsFeed_parser = query_eventsFeed_parse(query_subparsers)
173
- query_eventsTimeSeries_parser = query_eventsTimeSeries_parse(query_subparsers)
174
- query_groups_parser = query_groups_parse(query_subparsers)
175
- query_hardware_parser = query_hardware_parse(query_subparsers)
176
- query_hardwareManagement_parser = query_hardwareManagement_parse(query_subparsers)
177
- query_licensing_parser = query_licensing_parse(query_subparsers)
178
- query_policy_parser = query_policy_parse(query_subparsers)
179
- query_popLocations_parser = query_popLocations_parse(query_subparsers)
176
+ query_accountRoles_parser = query_accountRoles_parse(query_subparsers)
177
+ query_accountBySubdomain_parser = query_accountBySubdomain_parse(query_subparsers)
178
+ query_subDomains_parser = query_subDomains_parse(query_subparsers)
179
+ query_appStats_parser = query_appStats_parse(query_subparsers)
180
+ query_appStatsTimeSeries_parser = query_appStatsTimeSeries_parse(query_subparsers)
181
+ query_admin_parser = query_admin_parse(query_subparsers)
182
+ query_servicePrincipalAdmin_parser = query_servicePrincipalAdmin_parse(query_subparsers)
183
+ query_accountManagement_parser = query_accountManagement_parse(query_subparsers)
180
184
  query_sandbox_parser = query_sandbox_parse(query_subparsers)
185
+ query_popLocations_parser = query_popLocations_parse(query_subparsers)
186
+ query_licensing_parser = query_licensing_parse(query_subparsers)
187
+ query_hardware_parser = query_hardware_parse(query_subparsers)
188
+ query_enterpriseDirectory_parser = query_enterpriseDirectory_parse(query_subparsers)
189
+ query_devices_parser = query_devices_parse(query_subparsers)
190
+ query_catalogs_parser = query_catalogs_parse(query_subparsers)
181
191
  query_site_parser = query_site_parse(query_subparsers)
182
- query_socketPortMetrics_parser = query_socketPortMetrics_parse(query_subparsers)
183
- query_socketPortMetricsTimeSeries_parser = query_socketPortMetricsTimeSeries_parse(query_subparsers)
184
- query_subDomains_parser = query_subDomains_parse(query_subparsers)
185
192
  query_xdr_parser = query_xdr_parse(query_subparsers)
193
+ query_policy_parser = query_policy_parse(query_subparsers)
194
+ query_groups_parser = query_groups_parse(query_subparsers)
195
+ mutation_xdr_parser = mutation_xdr_parse(mutation_subparsers)
196
+ mutation_site_parser = mutation_site_parse(mutation_subparsers)
197
+ mutation_sites_parser = mutation_sites_parse(mutation_subparsers)
198
+ mutation_container_parser = mutation_container_parse(mutation_subparsers)
199
+ mutation_admin_parser = mutation_admin_parse(mutation_subparsers)
200
+ mutation_policy_parser = mutation_policy_parse(mutation_subparsers)
201
+ mutation_accountManagement_parser = mutation_accountManagement_parse(mutation_subparsers)
202
+ mutation_sandbox_parser = mutation_sandbox_parse(mutation_subparsers)
203
+ mutation_groups_parser = mutation_groups_parse(mutation_subparsers)
204
+ mutation_hardware_parser = mutation_hardware_parse(mutation_subparsers)
205
+ mutation_enterpriseDirectory_parser = mutation_enterpriseDirectory_parse(mutation_subparsers)
186
206
 
187
207
 
188
208
  def parse_headers(header_strings):
189
- headers = {}
190
- if header_strings:
191
- for header_string in header_strings:
192
- if ':' not in header_string:
193
- print(f"ERROR: Invalid header format '{header_string}'. Use 'Key: Value' format.")
194
- exit(1)
195
- key, value = header_string.split(':', 1)
196
- headers[key.strip()] = value.strip()
197
- return headers
209
+ headers = {}
210
+ if header_strings:
211
+ for header_string in header_strings:
212
+ if ':' not in header_string:
213
+ print(f"ERROR: Invalid header format '{header_string}'. Use 'Key: Value' format.")
214
+ exit(1)
215
+ key, value = header_string.split(':', 1)
216
+ headers[key.strip()] = value.strip()
217
+ return headers
198
218
 
199
219
  def parse_headers_from_file(file_path):
200
- headers = {}
201
- try:
202
- with open(file_path, 'r') as f:
203
- for line_num, line in enumerate(f, 1):
204
- line = line.strip()
205
- if not line or line.startswith('#'):
206
- # Skip empty lines and comments
207
- continue
208
- if ':' not in line:
209
- print(f"ERROR: Invalid header format in {file_path} at line {line_num}: '{line}'. Use 'Key: Value' format.")
210
- exit(1)
211
- key, value = line.split(':', 1)
212
- headers[key.strip()] = value.strip()
213
- except FileNotFoundError:
214
- print(f"ERROR: Headers file '{file_path}' not found.")
215
- exit(1)
216
- except IOError as e:
217
- print(f"ERROR: Could not read headers file '{file_path}': {e}")
218
- exit(1)
219
- return headers
220
+ headers = {}
221
+ try:
222
+ with open(file_path, 'r') as f:
223
+ for line_num, line in enumerate(f, 1):
224
+ line = line.strip()
225
+ if not line or line.startswith('#'):
226
+ continue
227
+ if ':' not in line:
228
+ print(f"ERROR: Invalid header format in {file_path} at line {line_num}: '{line}'. Use 'Key: Value' format.")
229
+ exit(1)
230
+ key, value = line.split(':', 1)
231
+ headers[key.strip()] = value.strip()
232
+ except FileNotFoundError:
233
+ print(f"ERROR: Headers file '{file_path}' not found.")
234
+ exit(1)
235
+ except IOError as e:
236
+ print(f"ERROR: Could not read headers file '{file_path}': {e}")
237
+ exit(1)
238
+ return headers
220
239
 
221
240
  def main(args=None):
222
- # Check if no arguments provided or help is requested
223
- if args is None:
224
- args = sys.argv[1:]
241
+ # Check if no arguments provided or help is requested
242
+ if args is None:
243
+ args = sys.argv[1:]
225
244
 
226
- # Show version check when displaying help or when no command specified
227
- if not args or '-h' in args or '--help' in args:
228
- # Check for updates in background (non-blocking)
229
- try:
230
- check_for_updates(show_if_available=True)
231
- except Exception:
232
- # Don't let version check interfere with CLI operation
233
- pass
245
+ # Show version check when displaying help or when no command specified
246
+ if not args or '-h' in args or '--help' in args:
247
+ # Check for updates in background (non-blocking)
248
+ try:
249
+ check_for_updates(show_if_available=True)
250
+ except Exception:
251
+ # Don't let version check interfere with CLI operation
252
+ pass
234
253
 
235
- args = parser.parse_args(args=args)
236
- try:
237
- # Skip authentication for configure commands
238
- if hasattr(args, 'func') and hasattr(args.func, '__module__') and 'configure' in str(args.func.__module__):
239
- response = args.func(args, None)
240
- else:
241
- # Check if using headers file to determine if we should skip API key
242
- using_headers_file = hasattr(args, 'headers_file') and args.headers_file
243
-
244
- # Get configuration from profiles
245
- configuration = get_configuration(skip_api_key=using_headers_file)
246
-
247
- # Parse custom headers if provided
248
- custom_headers = {}
249
- if hasattr(args, 'headers') and args.headers:
250
- custom_headers.update(parse_headers(args.headers))
251
- if hasattr(args, 'headers_file') and args.headers_file:
252
- custom_headers.update(parse_headers_from_file(args.headers_file))
253
- if custom_headers:
254
- configuration.custom_headers.update(custom_headers)
255
- # Handle account ID override
256
- if args.func.__name__ != "createRawRequest":
257
- if hasattr(args, 'accountID') and args.accountID is not None:
258
- # Command line override takes precedence
259
- configuration.accountID = args.accountID
260
- # Otherwise use the account ID from the profile (already set in get_configuration)
261
- response = args.func(args, configuration)
254
+ args = parser.parse_args(args=args)
255
+ try:
256
+ # Skip authentication for configure commands
257
+ if hasattr(args, 'func') and hasattr(args.func, '__module__') and 'configure' in str(args.func.__module__):
258
+ response = args.func(args, None)
259
+ else:
260
+ # Check if using headers file to determine if we should skip API key
261
+ # Note: Private settings should NOT affect regular API calls - only private commands
262
+ using_headers_file = hasattr(args, 'headers_file') and args.headers_file
263
+
264
+ # Get configuration from profiles
265
+ configuration = get_configuration(skip_api_key=using_headers_file)
266
+
267
+ # Parse custom headers if provided
268
+ custom_headers = {}
269
+ if hasattr(args, 'headers') and args.headers:
270
+ custom_headers.update(parse_headers(args.headers))
271
+ if hasattr(args, 'headers_file') and args.headers_file:
272
+ custom_headers.update(parse_headers_from_file(args.headers_file))
273
+ if custom_headers:
274
+ configuration.custom_headers.update(custom_headers)
275
+ # Handle account ID override (applies to all commands except raw)
276
+ if args.func.__name__ not in ["createRawRequest"]:
277
+ if hasattr(args, 'accountID') and args.accountID is not None:
278
+ # Command line override takes precedence
279
+ configuration.accountID = args.accountID
280
+ # Otherwise use the account ID from the profile (already set in get_configuration)
281
+ response = args.func(args, configuration)
262
282
 
263
- if type(response) == ApiException:
264
- print("ERROR! Status code: {}".format(response.status))
265
- print(response)
266
- else:
267
- if response!=None:
268
- print(json.dumps(response[0], sort_keys=True, indent=4))
269
- except Exception as e:
270
- if isinstance(e, AttributeError):
271
- print('Missing arguments. Usage: catocli <operation> -h')
272
- if args.v==True:
273
- print('ERROR: ',e)
274
- traceback.print_exc()
275
- else:
276
- print('ERROR: ',e)
277
- traceback.print_exc()
278
- exit(1)
283
+ if type(response) == ApiException:
284
+ print("ERROR! Status code: {}".format(response.status))
285
+ print(response)
286
+ else:
287
+ if response!=None:
288
+ print(json.dumps(response[0], sort_keys=True, indent=4))
289
+ except KeyboardInterrupt:
290
+ print('Operation cancelled by user (Ctrl+C).')
291
+ exit(130) # Standard exit code for SIGINT
292
+ except Exception as e:
293
+ if isinstance(e, AttributeError):
294
+ print('Missing arguments. Usage: catocli <operation> -h')
295
+ if args.v==True:
296
+ print('ERROR: ',e)
297
+ traceback.print_exc()
298
+ else:
299
+ print('ERROR: ',e)
300
+ traceback.print_exc()
301
+ exit(1)
@@ -14,7 +14,7 @@ from .. import __version__
14
14
 
15
15
  # Cache settings
16
16
  CACHE_FILE = os.path.expanduser("~/.catocli_version_cache")
17
- CACHE_DURATION = 3600 * 24 # 24 hours in seconds
17
+ CACHE_DURATION = 3600 * 4 # 4 hours in seconds
18
18
 
19
19
  def get_cached_version_info():
20
20
  """Get cached version information if still valid"""
catocli/__init__.py CHANGED
@@ -1,2 +1,2 @@
1
- __version__ = "2.1.0"
1
+ __version__ = "2.1.2"
2
2
  __cato_host__ = "https://api.catonetworks.com/api/v1/graphql2"
@@ -6,7 +6,7 @@ from pathlib import Path
6
6
  from graphql_client.api.call_api import ApiClient, CallApi
7
7
  from graphql_client.api_client import ApiException
8
8
  import logging
9
- from ..parserApiClient import validateArgs
9
+ from ..customParserApiClient import validateArgs
10
10
 
11
11
  def entityTypeList(args, configuration):
12
12
  params = vars(args)