catalystwan 0.41.2.dev9__py3-none-any.whl → 0.41.3__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.
Files changed (509) hide show
  1. catalystwan/ENDPOINTS.md +611 -0
  2. catalystwan/__init__.py +2 -3
  3. catalystwan/api/administration.py +2 -13
  4. catalystwan/api/api_container.py +1 -4
  5. catalystwan/api/config_group_api.py +16 -41
  6. catalystwan/api/configuration_groups/parcel.py +30 -100
  7. catalystwan/api/configuration_groups/parcels/cellular_controller.py +33 -0
  8. catalystwan/api/feature_profile_api.py +237 -2016
  9. catalystwan/api/policy_api.py +116 -470
  10. catalystwan/api/template_api.py +44 -113
  11. catalystwan/api/templates/README.md +47 -61
  12. catalystwan/api/templates/cli_template.py +7 -17
  13. catalystwan/api/templates/device_template/device_template.py +32 -127
  14. catalystwan/api/templates/device_template/device_template_payload.json.j2 +19 -0
  15. catalystwan/api/templates/feature_template.py +3 -3
  16. catalystwan/api/templates/models/cisco_aaa_model.py +42 -289
  17. catalystwan/api/templates/models/cisco_banner_model.py +2 -11
  18. catalystwan/api/templates/models/cisco_bfd_model.py +36 -31
  19. catalystwan/api/templates/models/cisco_bgp_model.py +131 -382
  20. catalystwan/api/templates/models/cisco_logging_model.py +43 -80
  21. catalystwan/api/templates/models/cisco_ntp_model.py +15 -34
  22. catalystwan/api/templates/models/cisco_omp_model.py +60 -70
  23. catalystwan/api/templates/models/cisco_ospf.py +74 -143
  24. catalystwan/api/templates/models/cisco_ospfv3.py +95 -217
  25. catalystwan/api/templates/models/cisco_secure_internet_gateway.py +142 -304
  26. catalystwan/api/templates/models/cisco_snmp_model.py +52 -66
  27. catalystwan/api/templates/models/cisco_system.py +129 -238
  28. catalystwan/api/templates/models/cisco_vpn_interface_model.py +275 -632
  29. catalystwan/api/templates/models/cisco_vpn_model.py +270 -433
  30. catalystwan/api/templates/models/cli_template.py +2 -3
  31. catalystwan/api/templates/models/omp_vsmart_model.py +10 -46
  32. catalystwan/api/templates/models/security_vsmart_model.py +8 -11
  33. catalystwan/api/templates/models/supported.py +4 -10
  34. catalystwan/api/templates/models/system_vsmart_model.py +27 -164
  35. catalystwan/apigw_auth.py +2 -6
  36. catalystwan/dataclasses.py +53 -2
  37. catalystwan/endpoints/__init__.py +41 -41
  38. catalystwan/endpoints/certificate_management_device.py +0 -4
  39. catalystwan/endpoints/cluster_management.py +9 -30
  40. catalystwan/endpoints/configuration/feature_profile/sdwan/policy_object.py +12 -35
  41. catalystwan/endpoints/configuration/feature_profile/sdwan/system.py +11 -164
  42. catalystwan/endpoints/configuration/feature_profile/sdwan/transport.py +26 -144
  43. catalystwan/endpoints/configuration/policy/definition/access_control_list.py +11 -6
  44. catalystwan/endpoints/configuration/policy/definition/access_control_list_ipv6.py +11 -6
  45. catalystwan/endpoints/configuration/policy/definition/control.py +11 -6
  46. catalystwan/endpoints/configuration/policy/definition/device_access.py +11 -6
  47. catalystwan/endpoints/configuration/policy/definition/device_access_ipv6.py +11 -6
  48. catalystwan/endpoints/configuration/policy/definition/hub_and_spoke.py +11 -6
  49. catalystwan/endpoints/configuration/policy/definition/mesh.py +11 -2
  50. catalystwan/endpoints/configuration/policy/definition/qos_map.py +11 -2
  51. catalystwan/endpoints/configuration/policy/definition/rewrite.py +11 -6
  52. catalystwan/endpoints/configuration/policy/definition/rule_set.py +11 -2
  53. catalystwan/endpoints/configuration/policy/definition/security_group.py +11 -6
  54. catalystwan/endpoints/configuration/policy/definition/traffic_data.py +11 -6
  55. catalystwan/endpoints/configuration/policy/definition/vpn_membership.py +11 -6
  56. catalystwan/endpoints/configuration/policy/definition/zone_based_firewall.py +11 -6
  57. catalystwan/endpoints/configuration/policy/list/app.py +16 -3
  58. catalystwan/endpoints/configuration/policy/list/app_probe.py +15 -6
  59. catalystwan/endpoints/configuration/policy/list/as_path.py +16 -3
  60. catalystwan/endpoints/configuration/policy/list/class_map.py +16 -3
  61. catalystwan/endpoints/configuration/policy/list/color.py +16 -3
  62. catalystwan/endpoints/configuration/policy/list/community.py +16 -3
  63. catalystwan/endpoints/configuration/policy/list/data_ipv6_prefix.py +15 -6
  64. catalystwan/endpoints/configuration/policy/list/data_prefix.py +16 -3
  65. catalystwan/endpoints/configuration/policy/list/expanded_community.py +15 -6
  66. catalystwan/endpoints/configuration/policy/list/fqdn.py +16 -3
  67. catalystwan/endpoints/configuration/policy/list/geo_location.py +16 -3
  68. catalystwan/endpoints/configuration/policy/list/ips_signature.py +15 -6
  69. catalystwan/endpoints/configuration/policy/list/ipv6_prefix.py +16 -3
  70. catalystwan/endpoints/configuration/policy/list/local_app.py +16 -3
  71. catalystwan/endpoints/configuration/policy/list/local_domain.py +16 -3
  72. catalystwan/endpoints/configuration/policy/list/mirror.py +16 -3
  73. catalystwan/endpoints/configuration/policy/list/policer.py +16 -3
  74. catalystwan/endpoints/configuration/policy/list/port.py +16 -3
  75. catalystwan/endpoints/configuration/policy/list/preferred_color_group.py +15 -6
  76. catalystwan/endpoints/configuration/policy/list/prefix.py +16 -4
  77. catalystwan/endpoints/configuration/policy/list/protocol_name.py +15 -6
  78. catalystwan/endpoints/configuration/policy/list/region.py +10 -2
  79. catalystwan/endpoints/configuration/policy/list/site.py +16 -3
  80. catalystwan/endpoints/configuration/policy/list/sla.py +16 -3
  81. catalystwan/endpoints/configuration/policy/list/tloc.py +16 -3
  82. catalystwan/endpoints/configuration/policy/list/url_allow_list.py +16 -3
  83. catalystwan/endpoints/configuration/policy/list/url_block_list.py +16 -3
  84. catalystwan/endpoints/configuration/policy/list/vpn.py +16 -3
  85. catalystwan/endpoints/configuration/policy/list/zone.py +16 -3
  86. catalystwan/endpoints/configuration/policy/security_template.py +3 -2
  87. catalystwan/endpoints/configuration/software_actions.py +4 -2
  88. catalystwan/endpoints/configuration_dashboard_status.py +2 -2
  89. catalystwan/endpoints/configuration_device_template.py +1 -15
  90. catalystwan/endpoints/configuration_feature_profile.py +11 -8
  91. catalystwan/endpoints/configuration_group.py +5 -28
  92. catalystwan/endpoints/configuration_settings.py +1 -90
  93. catalystwan/endpoints/endpoints_container.py +18 -82
  94. catalystwan/endpoints/real_time_monitoring/reboot_history.py +3 -1
  95. catalystwan/endpoints/tenant_migration.py +0 -2
  96. catalystwan/exceptions.py +0 -24
  97. catalystwan/integration_tests/test_find_template_values.py +18 -7
  98. catalystwan/models/common.py +2 -1898
  99. catalystwan/models/configuration/common.py +0 -1
  100. catalystwan/models/configuration/config_migration.py +36 -0
  101. catalystwan/models/configuration/feature_profile/common.py +149 -634
  102. catalystwan/models/configuration/feature_profile/sdwan/management/vpn.py +26 -0
  103. catalystwan/models/configuration/feature_profile/sdwan/policy_object/__init__.py +60 -69
  104. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/app_probe.py +20 -34
  105. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/application_list.py +6 -8
  106. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/color_list.py +5 -7
  107. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/data_prefix.py +4 -13
  108. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/expanded_community_list.py +7 -9
  109. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/fowarding_class.py +5 -7
  110. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/ipv6_data_prefix.py +9 -11
  111. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/ipv6_prefix_list.py +10 -25
  112. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/{policer.py → policier.py} +10 -12
  113. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/prefered_group_color.py +10 -29
  114. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/prefix_list.py +8 -23
  115. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/sla_class.py +31 -12
  116. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/standard_community.py +10 -16
  117. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/tloc_list.py +7 -8
  118. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/application_list.py +6 -8
  119. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/data_prefix.py +5 -7
  120. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/fqdn.py +5 -7
  121. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/geolocation_list.py +5 -7
  122. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/ips_signature.py +5 -7
  123. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/local_domain.py +5 -7
  124. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/protocol_list.py +5 -7
  125. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/security_port.py +11 -21
  126. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/url.py +15 -36
  127. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/zone.py +18 -14
  128. catalystwan/models/configuration/feature_profile/sdwan/service/acl.py +409 -0
  129. catalystwan/models/configuration/feature_profile/sdwan/service/appqoe.py +42 -77
  130. catalystwan/models/configuration/feature_profile/sdwan/service/bgp.py +288 -0
  131. catalystwan/models/configuration/feature_profile/sdwan/service/dhcp_server.py +64 -107
  132. catalystwan/models/configuration/feature_profile/sdwan/service/eigrp.py +42 -39
  133. catalystwan/models/configuration/feature_profile/sdwan/service/lan/common.py +88 -7
  134. catalystwan/models/configuration/feature_profile/sdwan/service/lan/ethernet.py +156 -232
  135. catalystwan/models/configuration/feature_profile/sdwan/service/lan/gre.py +108 -38
  136. catalystwan/models/configuration/feature_profile/sdwan/service/lan/ipsec.py +84 -77
  137. catalystwan/models/configuration/feature_profile/sdwan/service/lan/svi.py +56 -62
  138. catalystwan/models/configuration/feature_profile/sdwan/service/lan/vpn.py +121 -112
  139. catalystwan/models/configuration/feature_profile/sdwan/service/multicast.py +57 -56
  140. catalystwan/models/configuration/feature_profile/sdwan/service/object_tracker.py +21 -15
  141. catalystwan/models/configuration/feature_profile/sdwan/{routing → service}/ospf.py +47 -55
  142. catalystwan/models/configuration/feature_profile/sdwan/{routing → service}/ospfv3.py +72 -74
  143. catalystwan/models/configuration/feature_profile/sdwan/service/route_policy.py +110 -358
  144. catalystwan/models/configuration/feature_profile/sdwan/service/service_insertion_attachment.py +25 -17
  145. catalystwan/models/configuration/feature_profile/sdwan/service/switchport.py +58 -50
  146. catalystwan/models/configuration/feature_profile/sdwan/service/tracker.py +21 -12
  147. catalystwan/models/configuration/feature_profile/sdwan/service/wireless_lan.py +31 -27
  148. catalystwan/models/configuration/feature_profile/sdwan/system/aaa.py +10 -58
  149. catalystwan/models/configuration/feature_profile/sdwan/transport/cellular_controller.py +23 -26
  150. catalystwan/models/configuration/profile_type.py +6 -1
  151. catalystwan/models/policy/__init__.py +69 -282
  152. catalystwan/models/policy/centralized.py +29 -26
  153. catalystwan/models/policy/{definition → definitions}/access_control_list.py +17 -47
  154. catalystwan/models/policy/{definition → definitions}/access_control_list_ipv6.py +18 -42
  155. catalystwan/models/policy/{definition → definitions}/control.py +25 -48
  156. catalystwan/models/policy/{definition → definitions}/device_access.py +11 -22
  157. catalystwan/models/policy/{definition → definitions}/device_access_ipv6.py +11 -20
  158. catalystwan/models/policy/{definition → definitions}/hub_and_spoke.py +4 -18
  159. catalystwan/models/policy/{definition → definitions}/mesh.py +1 -13
  160. catalystwan/models/policy/{definition → definitions}/qos_map.py +32 -39
  161. catalystwan/models/policy/{definition → definitions}/rewrite.py +2 -12
  162. catalystwan/models/policy/{definition → definitions}/rule_set.py +48 -66
  163. catalystwan/models/policy/{definition → definitions}/security_group.py +14 -38
  164. catalystwan/models/policy/{definition → definitions}/traffic_data.py +61 -184
  165. catalystwan/models/policy/{definition → definitions}/vpn_membership.py +1 -13
  166. catalystwan/models/policy/{definition → definitions}/zone_based_firewall.py +32 -93
  167. catalystwan/models/policy/lists.py +330 -0
  168. catalystwan/models/policy/lists_entries.py +444 -0
  169. catalystwan/models/policy/localized.py +16 -34
  170. catalystwan/models/policy/policy.py +10 -14
  171. catalystwan/models/policy/policy_definition.py +173 -673
  172. catalystwan/models/policy/policy_list.py +27 -38
  173. catalystwan/models/policy/security.py +46 -145
  174. catalystwan/response.py +2 -6
  175. catalystwan/session.py +1 -1
  176. catalystwan/tests/templates/definitions/{cisco_vpn_basic.json → Basic_Cisco_VPN_Model.json} +2 -2
  177. catalystwan/tests/templates/definitions/complex_aaa.json +277 -0
  178. catalystwan/tests/templates/definitions/{cisco_vpn_complex.json → complex_cisco_vpn.json} +12 -27
  179. catalystwan/tests/templates/definitions/{cisco_aaa.json → iuo.json} +15 -44
  180. catalystwan/tests/templates/definitions/omp_1.json +11 -0
  181. catalystwan/tests/templates/definitions/{omp_vsmart_2.json → omp_2.json} +2 -16
  182. catalystwan/tests/templates/definitions/{omp_vsmart_3.json → omp_3.json} +2 -16
  183. catalystwan/tests/templates/models/__init__.py +13 -46
  184. catalystwan/tests/templates/models/cisco_aaa.py +48 -81
  185. catalystwan/tests/templates/models/cisco_banner.py +2 -2
  186. catalystwan/tests/templates/models/cisco_bfd.py +6 -4
  187. catalystwan/tests/templates/models/cisco_system.py +3 -108
  188. catalystwan/tests/templates/models/cisco_vpn.py +72 -42
  189. catalystwan/tests/templates/models/omp_vsmart.py +8 -28
  190. catalystwan/tests/templates/schemas/cedge_aaa.json +1 -1
  191. catalystwan/tests/templates/schemas/cisco_system.json +0 -242
  192. catalystwan/tests/templates/schemas/cisco_vpn.json +1 -53
  193. catalystwan/tests/templates/schemas/omp-vsmart.json +0 -20
  194. catalystwan/tests/templates/test_chose_model.py +10 -6
  195. catalystwan/tests/templates/test_deserialize_model.py +4 -4
  196. catalystwan/tests/templates/test_find_template_values.py +0 -229
  197. catalystwan/tests/templates/test_serialize_model.py +2 -1
  198. catalystwan/tests/test_cli_template.py +9 -8
  199. catalystwan/tests/test_endpoints.py +11 -42
  200. catalystwan/tests/test_templates.py +19 -16
  201. catalystwan/utils/feature_template/find_template_values.py +9 -22
  202. catalystwan/utils/timezone.py +422 -0
  203. catalystwan/workflows/tenant_migration.py +1 -1
  204. {catalystwan-0.41.2.dev9.dist-info → catalystwan-0.41.3.dist-info}/METADATA +1 -20
  205. catalystwan-0.41.3.dist-info/RECORD +353 -0
  206. catalystwan/api/builders/__init__.py +0 -14
  207. catalystwan/api/builders/feature_profiles/__init__.py +0 -0
  208. catalystwan/api/builders/feature_profiles/application_priority.py +0 -58
  209. catalystwan/api/builders/feature_profiles/builder_factory.py +0 -59
  210. catalystwan/api/builders/feature_profiles/cli.py +0 -76
  211. catalystwan/api/builders/feature_profiles/mixins.py +0 -44
  212. catalystwan/api/builders/feature_profiles/other.py +0 -79
  213. catalystwan/api/builders/feature_profiles/report.py +0 -155
  214. catalystwan/api/builders/feature_profiles/service.py +0 -248
  215. catalystwan/api/builders/feature_profiles/system.py +0 -80
  216. catalystwan/api/builders/feature_profiles/transport.py +0 -256
  217. catalystwan/api/builders/feature_profiles/uc_voice.py +0 -287
  218. catalystwan/api/templates/models/aaa_model.py +0 -387
  219. catalystwan/api/templates/models/vpn_vsmart_interface_model.py +0 -198
  220. catalystwan/api/templates/models/vpn_vsmart_model.py +0 -124
  221. catalystwan/endpoints/configuration/feature_profile/sdwan/application_priority.py +0 -107
  222. catalystwan/endpoints/configuration/feature_profile/sdwan/cli.py +0 -60
  223. catalystwan/endpoints/configuration/feature_profile/sdwan/dns_security.py +0 -83
  224. catalystwan/endpoints/configuration/feature_profile/sdwan/embedded_security.py +0 -88
  225. catalystwan/endpoints/configuration/feature_profile/sdwan/other.py +0 -62
  226. catalystwan/endpoints/configuration/feature_profile/sdwan/service.py +0 -154
  227. catalystwan/endpoints/configuration/feature_profile/sdwan/sig_security.py +0 -88
  228. catalystwan/endpoints/configuration/feature_profile/sdwan/topology.py +0 -93
  229. catalystwan/endpoints/configuration/feature_profile/sdwan/uc_voice.py +0 -77
  230. catalystwan/endpoints/configuration/network_hierarchy.py +0 -47
  231. catalystwan/endpoints/configuration/packages.py +0 -36
  232. catalystwan/endpoints/configuration/policy/abstractions.py +0 -49
  233. catalystwan/endpoints/configuration/policy/definition/aip.py +0 -52
  234. catalystwan/endpoints/configuration/policy/definition/amp.py +0 -52
  235. catalystwan/endpoints/configuration/policy/definition/app_route.py +0 -50
  236. catalystwan/endpoints/configuration/policy/definition/cflowd.py +0 -46
  237. catalystwan/endpoints/configuration/policy/definition/dial_peer.py +0 -57
  238. catalystwan/endpoints/configuration/policy/definition/dns_security.py +0 -50
  239. catalystwan/endpoints/configuration/policy/definition/fxo_port.py +0 -57
  240. catalystwan/endpoints/configuration/policy/definition/fxs_did_port.py +0 -57
  241. catalystwan/endpoints/configuration/policy/definition/fxs_port.py +0 -57
  242. catalystwan/endpoints/configuration/policy/definition/intrusion_prevention.py +0 -52
  243. catalystwan/endpoints/configuration/policy/definition/pri_isdn_port.py +0 -57
  244. catalystwan/endpoints/configuration/policy/definition/route_policy.py +0 -50
  245. catalystwan/endpoints/configuration/policy/definition/srst_phone_profile.py +0 -59
  246. catalystwan/endpoints/configuration/policy/definition/ssl_decryption.py +0 -50
  247. catalystwan/endpoints/configuration/policy/definition/ssl_decryption_utd_profile.py +0 -52
  248. catalystwan/endpoints/configuration/policy/definition/url_filtering.py +0 -50
  249. catalystwan/endpoints/configuration/policy/definition/vpn_qos_map.py +0 -50
  250. catalystwan/endpoints/configuration/policy/list/extended_community.py +0 -52
  251. catalystwan/endpoints/configuration/policy/list/fax_protocol.py +0 -48
  252. catalystwan/endpoints/configuration/policy/list/identity.py +0 -48
  253. catalystwan/endpoints/configuration/policy/list/media_profile.py +0 -52
  254. catalystwan/endpoints/configuration/policy/list/modem_pass_through.py +0 -52
  255. catalystwan/endpoints/configuration/policy/list/scalable_group_tag.py +0 -52
  256. catalystwan/endpoints/configuration/policy/list/supervisory_disconnect.py +0 -52
  257. catalystwan/endpoints/configuration/policy/list/threat_grid_api_key.py +0 -52
  258. catalystwan/endpoints/configuration/policy/list/translation_profile.py +0 -52
  259. catalystwan/endpoints/configuration/policy/list/translation_rules.py +0 -52
  260. catalystwan/endpoints/configuration/policy/list/trunkgroup.py +0 -48
  261. catalystwan/endpoints/configuration/policy/list/umbrella_data.py +0 -52
  262. catalystwan/endpoints/configuration/policy/voice_template.py +0 -39
  263. catalystwan/endpoints/configuration/policy_group.py +0 -30
  264. catalystwan/endpoints/configuration/topology_group.py +0 -51
  265. catalystwan/endpoints/configuration_general_template.py +0 -31
  266. catalystwan/endpoints/configuration_template_master.py +0 -48
  267. catalystwan/integration_tests/base.py +0 -81
  268. catalystwan/integration_tests/feature_profile/sdwan/__init__.py +0 -0
  269. catalystwan/integration_tests/feature_profile/sdwan/policy/__init__.py +0 -0
  270. catalystwan/integration_tests/feature_profile/sdwan/policy/base.py +0 -33
  271. catalystwan/integration_tests/feature_profile/sdwan/policy/test_extended_community.py +0 -33
  272. catalystwan/integration_tests/feature_profile/sdwan/policy/test_security_app_list.py +0 -32
  273. catalystwan/integration_tests/feature_profile/sdwan/test_application_priority.py +0 -433
  274. catalystwan/integration_tests/feature_profile/sdwan/test_cli.py +0 -54
  275. catalystwan/integration_tests/feature_profile/sdwan/test_dns_security.py +0 -106
  276. catalystwan/integration_tests/feature_profile/sdwan/test_other.py +0 -49
  277. catalystwan/integration_tests/feature_profile/sdwan/test_service.py +0 -1078
  278. catalystwan/integration_tests/feature_profile/sdwan/test_sig_security.py +0 -322
  279. catalystwan/integration_tests/feature_profile/sdwan/test_ssl_decryption.py +0 -85
  280. catalystwan/integration_tests/feature_profile/sdwan/test_system.py +0 -368
  281. catalystwan/integration_tests/feature_profile/sdwan/test_tracker.py +0 -127
  282. catalystwan/integration_tests/feature_profile/sdwan/test_transport.py +0 -1698
  283. catalystwan/integration_tests/feature_profile/sdwan/topology/test_topology.py +0 -93
  284. catalystwan/integration_tests/feature_profile/test_parcel.py +0 -54
  285. catalystwan/integration_tests/profile_builder/__init__.py +0 -0
  286. catalystwan/integration_tests/profile_builder/test_pb_service.py +0 -197
  287. catalystwan/integration_tests/profile_builder/test_pb_transport.py +0 -226
  288. catalystwan/integration_tests/profile_builder/test_pb_uc_voice.py +0 -277
  289. catalystwan/integration_tests/test_data/__init__.py +0 -117
  290. catalystwan/integration_tests/test_network_hierarchy.py +0 -82
  291. catalystwan/integration_tests/test_settings.py +0 -30
  292. catalystwan/models/configuration/feature_profile/parcel.py +0 -245
  293. catalystwan/models/configuration/feature_profile/sdwan/acl/__init__.py +0 -13
  294. catalystwan/models/configuration/feature_profile/sdwan/acl/ipv4acl.py +0 -298
  295. catalystwan/models/configuration/feature_profile/sdwan/acl/ipv6acl.py +0 -344
  296. catalystwan/models/configuration/feature_profile/sdwan/application_priority/__init__.py +0 -218
  297. catalystwan/models/configuration/feature_profile/sdwan/application_priority/cloud_probe.py +0 -61
  298. catalystwan/models/configuration/feature_profile/sdwan/application_priority/policy_settings.py +0 -31
  299. catalystwan/models/configuration/feature_profile/sdwan/application_priority/qos_policy.py +0 -102
  300. catalystwan/models/configuration/feature_profile/sdwan/application_priority/traffic_policy.py +0 -1057
  301. catalystwan/models/configuration/feature_profile/sdwan/cli/__init__.py +0 -23
  302. catalystwan/models/configuration/feature_profile/sdwan/cli/config.py +0 -18
  303. catalystwan/models/configuration/feature_profile/sdwan/cli/full_config.py +0 -15
  304. catalystwan/models/configuration/feature_profile/sdwan/dns_security/__init__.py +0 -13
  305. catalystwan/models/configuration/feature_profile/sdwan/dns_security/dns.py +0 -110
  306. catalystwan/models/configuration/feature_profile/sdwan/embedded_security/__init__.py +0 -23
  307. catalystwan/models/configuration/feature_profile/sdwan/embedded_security/ngfirewall.py +0 -493
  308. catalystwan/models/configuration/feature_profile/sdwan/embedded_security/policy.py +0 -171
  309. catalystwan/models/configuration/feature_profile/sdwan/other/__init__.py +0 -25
  310. catalystwan/models/configuration/feature_profile/sdwan/other/cybervision.py +0 -44
  311. catalystwan/models/configuration/feature_profile/sdwan/other/thousandeyes.py +0 -147
  312. catalystwan/models/configuration/feature_profile/sdwan/other/ucse.py +0 -110
  313. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/as_path.py +0 -22
  314. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/extended_community.py +0 -34
  315. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/ipv4_network_object.py +0 -15
  316. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/ipv4_service_object.py +0 -254
  317. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/mirror.py +0 -27
  318. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/network_object_group.py +0 -15
  319. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/object_group.py +0 -15
  320. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/service_object_group.py +0 -21
  321. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/aip.py +0 -64
  322. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/amp.py +0 -79
  323. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/identity.py +0 -30
  324. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/intrusion_prevention.py +0 -58
  325. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/object_group.py +0 -72
  326. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/rule_set.py +0 -137
  327. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/scalable_group_tag.py +0 -26
  328. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/ssl_decryption.py +0 -126
  329. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/ssl_decryption_profile.py +0 -165
  330. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/url_filtering.py +0 -148
  331. catalystwan/models/configuration/feature_profile/sdwan/routing/__init__.py +0 -26
  332. catalystwan/models/configuration/feature_profile/sdwan/routing/bgp.py +0 -609
  333. catalystwan/models/configuration/feature_profile/sdwan/service/__init__.py +0 -91
  334. catalystwan/models/configuration/feature_profile/sdwan/service/dual_router_ha.py +0 -26
  335. catalystwan/models/configuration/feature_profile/sdwan/service/lan/multilink.py +0 -101
  336. catalystwan/models/configuration/feature_profile/sdwan/service/service_chain.py +0 -38
  337. catalystwan/models/configuration/feature_profile/sdwan/sig_security/__init__.py +0 -19
  338. catalystwan/models/configuration/feature_profile/sdwan/sig_security/sig_security.py +0 -379
  339. catalystwan/models/configuration/feature_profile/sdwan/system/__init__.py +0 -59
  340. catalystwan/models/configuration/feature_profile/sdwan/system/banner.py +0 -30
  341. catalystwan/models/configuration/feature_profile/sdwan/system/basic.py +0 -290
  342. catalystwan/models/configuration/feature_profile/sdwan/system/bfd.py +0 -69
  343. catalystwan/models/configuration/feature_profile/sdwan/system/device_access.py +0 -157
  344. catalystwan/models/configuration/feature_profile/sdwan/system/device_access_ipv6.py +0 -157
  345. catalystwan/models/configuration/feature_profile/sdwan/system/global_parcel.py +0 -163
  346. catalystwan/models/configuration/feature_profile/sdwan/system/logging_parcel.py +0 -162
  347. catalystwan/models/configuration/feature_profile/sdwan/system/mrf.py +0 -75
  348. catalystwan/models/configuration/feature_profile/sdwan/system/ntp.py +0 -103
  349. catalystwan/models/configuration/feature_profile/sdwan/system/omp.py +0 -120
  350. catalystwan/models/configuration/feature_profile/sdwan/system/security.py +0 -179
  351. catalystwan/models/configuration/feature_profile/sdwan/system/snmp.py +0 -173
  352. catalystwan/models/configuration/feature_profile/sdwan/topology/__init__.py +0 -29
  353. catalystwan/models/configuration/feature_profile/sdwan/topology/custom_control.py +0 -425
  354. catalystwan/models/configuration/feature_profile/sdwan/topology/hubspoke.py +0 -60
  355. catalystwan/models/configuration/feature_profile/sdwan/topology/mesh.py +0 -23
  356. catalystwan/models/configuration/feature_profile/sdwan/trackers/__init__.py +0 -36
  357. catalystwan/models/configuration/feature_profile/sdwan/trackers/tracker.py +0 -96
  358. catalystwan/models/configuration/feature_profile/sdwan/trackers/tracker_group.py +0 -63
  359. catalystwan/models/configuration/feature_profile/sdwan/transport/__init__.py +0 -93
  360. catalystwan/models/configuration/feature_profile/sdwan/transport/cellular_profile.py +0 -71
  361. catalystwan/models/configuration/feature_profile/sdwan/transport/gps.py +0 -37
  362. catalystwan/models/configuration/feature_profile/sdwan/transport/management/ethernet.py +0 -121
  363. catalystwan/models/configuration/feature_profile/sdwan/transport/t1e1controller.py +0 -124
  364. catalystwan/models/configuration/feature_profile/sdwan/transport/vpn.py +0 -285
  365. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/cellular.py +0 -173
  366. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/ethernet.py +0 -389
  367. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/gre.py +0 -46
  368. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/ipsec.py +0 -137
  369. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/multilink.py +0 -219
  370. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/protocol_over.py +0 -405
  371. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/t1e1serial.py +0 -195
  372. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/__init__.py +0 -62
  373. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/analog_interface.py +0 -436
  374. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/call_routing.py +0 -179
  375. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/digital_interface.py +0 -380
  376. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/dsp_farm.py +0 -193
  377. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/media_profile.py +0 -17
  378. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/server_group.py +0 -51
  379. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/srst.py +0 -86
  380. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/supervisory_disconnect.py +0 -69
  381. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/translation_profile.py +0 -42
  382. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/translation_rule.py +0 -31
  383. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/trunk_group.py +0 -26
  384. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/voice_global.py +0 -57
  385. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/voice_tenant.py +0 -40
  386. catalystwan/models/configuration/network_hierarchy/__init__.py +0 -24
  387. catalystwan/models/configuration/network_hierarchy/cflowd.py +0 -128
  388. catalystwan/models/configuration/network_hierarchy/node.py +0 -88
  389. catalystwan/models/configuration/network_hierarchy/security_logging.py +0 -91
  390. catalystwan/models/configuration/packages.py +0 -57
  391. catalystwan/models/configuration/policy_group.py +0 -74
  392. catalystwan/models/configuration/topology_group.py +0 -52
  393. catalystwan/models/policy/definition/aip.py +0 -60
  394. catalystwan/models/policy/definition/amp.py +0 -65
  395. catalystwan/models/policy/definition/app_route.py +0 -246
  396. catalystwan/models/policy/definition/cflowd.py +0 -95
  397. catalystwan/models/policy/definition/dial_peer.py +0 -60
  398. catalystwan/models/policy/definition/dns_security.py +0 -130
  399. catalystwan/models/policy/definition/fxo_port.py +0 -63
  400. catalystwan/models/policy/definition/fxs_did_port.py +0 -58
  401. catalystwan/models/policy/definition/fxs_port.py +0 -56
  402. catalystwan/models/policy/definition/intrusion_prevention.py +0 -55
  403. catalystwan/models/policy/definition/pri_isdn_port.py +0 -48
  404. catalystwan/models/policy/definition/route_policy.py +0 -187
  405. catalystwan/models/policy/definition/srst_phone_profile.py +0 -37
  406. catalystwan/models/policy/definition/ssl_decryption.py +0 -209
  407. catalystwan/models/policy/definition/ssl_decryption_utd_profile.py +0 -88
  408. catalystwan/models/policy/definition/url_filtering.py +0 -70
  409. catalystwan/models/policy/definition/vpn_qos_map.py +0 -46
  410. catalystwan/models/policy/list/app.py +0 -44
  411. catalystwan/models/policy/list/app_probe.py +0 -42
  412. catalystwan/models/policy/list/as_path.py +0 -30
  413. catalystwan/models/policy/list/class_map.py +0 -30
  414. catalystwan/models/policy/list/color.py +0 -28
  415. catalystwan/models/policy/list/communities.py +0 -83
  416. catalystwan/models/policy/list/data_ipv6_prefix.py +0 -30
  417. catalystwan/models/policy/list/data_prefix.py +0 -30
  418. catalystwan/models/policy/list/fax_protocol.py +0 -45
  419. catalystwan/models/policy/list/fqdn.py +0 -24
  420. catalystwan/models/policy/list/geo_location.py +0 -33
  421. catalystwan/models/policy/list/identity.py +0 -29
  422. catalystwan/models/policy/list/ips_signature.py +0 -27
  423. catalystwan/models/policy/list/ipv6_prefix.py +0 -33
  424. catalystwan/models/policy/list/local_app.py +0 -45
  425. catalystwan/models/policy/list/local_domain.py +0 -36
  426. catalystwan/models/policy/list/media_profile.py +0 -44
  427. catalystwan/models/policy/list/mirror.py +0 -27
  428. catalystwan/models/policy/list/modem_pass_through.py +0 -27
  429. catalystwan/models/policy/list/policer.py +0 -39
  430. catalystwan/models/policy/list/port.py +0 -33
  431. catalystwan/models/policy/list/preferred_color_group.py +0 -82
  432. catalystwan/models/policy/list/prefix.py +0 -33
  433. catalystwan/models/policy/list/protocol_name.py +0 -26
  434. catalystwan/models/policy/list/region.py +0 -45
  435. catalystwan/models/policy/list/scalable_group_tag.py +0 -30
  436. catalystwan/models/policy/list/site.py +0 -34
  437. catalystwan/models/policy/list/sla.py +0 -77
  438. catalystwan/models/policy/list/supervisory_disconnect.py +0 -62
  439. catalystwan/models/policy/list/threat_grid_api_key.py +0 -32
  440. catalystwan/models/policy/list/tloc.py +0 -32
  441. catalystwan/models/policy/list/translation_profile.py +0 -32
  442. catalystwan/models/policy/list/translation_rules.py +0 -29
  443. catalystwan/models/policy/list/trunkgroup.py +0 -56
  444. catalystwan/models/policy/list/umbrella_data.py +0 -30
  445. catalystwan/models/policy/list/url.py +0 -39
  446. catalystwan/models/policy/list/vpn.py +0 -40
  447. catalystwan/models/policy/list/zone.py +0 -46
  448. catalystwan/models/policy/voice.py +0 -77
  449. catalystwan/models/settings.py +0 -41
  450. catalystwan/models/templates.py +0 -79
  451. catalystwan/tests/builders/test_report.py +0 -60
  452. catalystwan/tests/builders/uc_voice.py +0 -85
  453. catalystwan/tests/models/__init__.py +0 -0
  454. catalystwan/tests/models/configuration/feature_profile/sdwan/policy_object/security/test_url.py +0 -73
  455. catalystwan/tests/models/test_digital_interface.py +0 -56
  456. catalystwan/tests/templates/definitions/aaa_basic.json +0 -96
  457. catalystwan/tests/templates/definitions/aaa_complex.json +0 -464
  458. catalystwan/tests/templates/definitions/cisco_aaa_complex.json +0 -361
  459. catalystwan/tests/templates/definitions/cisco_logging_complex.json +0 -268
  460. catalystwan/tests/templates/definitions/cisco_ntp_complex.json +0 -143
  461. catalystwan/tests/templates/definitions/cisco_omp_complex.json +0 -175
  462. catalystwan/tests/templates/definitions/cisco_ospf_complex.json +0 -302
  463. catalystwan/tests/templates/definitions/cisco_sig.json +0 -405
  464. catalystwan/tests/templates/definitions/cisco_snmp_complex.json +0 -258
  465. catalystwan/tests/templates/definitions/cisco_system_complex.json +0 -502
  466. catalystwan/tests/templates/definitions/cisco_vpn_interface_complex.json +0 -821
  467. catalystwan/tests/templates/definitions/omp_vsmart_1.json +0 -26
  468. catalystwan/tests/templates/definitions/omp_vsmart_complex.json +0 -73
  469. catalystwan/tests/templates/definitions/security_vsmart_complex.json +0 -24
  470. catalystwan/tests/templates/definitions/system_vsmart_complex.json +0 -193
  471. catalystwan/tests/templates/definitions/vpn_vsmart_basic.json +0 -17
  472. catalystwan/tests/templates/definitions/vpn_vsmart_complex.json +0 -179
  473. catalystwan/tests/templates/definitions/vpn_vsmart_interface_basic.json +0 -42
  474. catalystwan/tests/templates/definitions/vpn_vsmart_interface_complex.json +0 -208
  475. catalystwan/tests/templates/models/aaa.py +0 -106
  476. catalystwan/tests/templates/models/cisco_logging.py +0 -65
  477. catalystwan/tests/templates/models/cisco_ntp.py +0 -17
  478. catalystwan/tests/templates/models/cisco_omp.py +0 -37
  479. catalystwan/tests/templates/models/cisco_ospf.py +0 -60
  480. catalystwan/tests/templates/models/cisco_secure_internet_gateway.py +0 -95
  481. catalystwan/tests/templates/models/cisco_snmp.py +0 -40
  482. catalystwan/tests/templates/models/cisco_vpn_interface.py +0 -200
  483. catalystwan/tests/templates/models/security_vsmart.py +0 -11
  484. catalystwan/tests/templates/models/system_vsmart.py +0 -37
  485. catalystwan/tests/templates/models/vpn_vsmart.py +0 -32
  486. catalystwan/tests/templates/models/vpn_vsmart_interface.py +0 -54
  487. catalystwan/tests/templates/schemas/aaa.json +0 -1096
  488. catalystwan/tests/templates/schemas/cisco_logging.json +0 -577
  489. catalystwan/tests/templates/schemas/cisco_ntp.json +0 -265
  490. catalystwan/tests/templates/schemas/cisco_omp.json +0 -479
  491. catalystwan/tests/templates/schemas/cisco_ospf.json +0 -908
  492. catalystwan/tests/templates/schemas/cisco_secure_internet_gateway.json +0 -1520
  493. catalystwan/tests/templates/schemas/cisco_snmp.json +0 -561
  494. catalystwan/tests/templates/schemas/cisco_vpn_interface.json +0 -3348
  495. catalystwan/tests/templates/schemas/security-vsmart.json +0 -58
  496. catalystwan/tests/templates/schemas/system-vsmart.json +0 -2585
  497. catalystwan/tests/templates/schemas/vpn-vsmart-interface.json +0 -859
  498. catalystwan/tests/templates/schemas/vpn-vsmart.json +0 -445
  499. catalystwan/tests/templates/test_find_template_values_2.py +0 -193
  500. catalystwan/tests/test_feature_profile_api.py +0 -282
  501. catalystwan/tests/test_models_common.py +0 -53
  502. catalystwan/utils/model.py +0 -48
  503. catalystwan/utils/persona.py +0 -5
  504. catalystwan/utils/type_check.py +0 -22
  505. catalystwan/workflows/backup_restore_device_templates.py +0 -467
  506. catalystwan-0.41.2.dev9.dist-info/RECORD +0 -641
  507. /catalystwan/tests/templates/definitions/{cisco_banner.json → banner_1.json} +0 -0
  508. {catalystwan-0.41.2.dev9.dist-info → catalystwan-0.41.3.dist-info}/LICENSE +0 -0
  509. {catalystwan-0.41.2.dev9.dist-info → catalystwan-0.41.3.dist-info}/WHEEL +0 -0
@@ -2,85 +2,113 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import TYPE_CHECKING, Any, Dict, List, Mapping, Optional, Tuple, Type, overload
5
+ from typing import TYPE_CHECKING, Any, Dict, List, Mapping, Optional, Type, overload
6
6
  from uuid import UUID
7
7
 
8
- from pydantic import ValidationError
9
-
10
8
  from catalystwan.api.task_status_api import Task
11
- from catalystwan.endpoints.configuration.policy.abstractions import PolicyDefinitionEndpoints, PolicyListEndpoints
12
- from catalystwan.endpoints.configuration.policy.definition.access_control_list import ConfigurationPolicyAclDefinition
9
+ from catalystwan.endpoints.configuration.policy.definition.access_control_list import (
10
+ AclPolicyGetResponse,
11
+ ConfigurationPolicyAclDefinition,
12
+ )
13
13
  from catalystwan.endpoints.configuration.policy.definition.access_control_list_ipv6 import (
14
+ AclIPv6PolicyGetResponse,
14
15
  ConfigurationPolicyAclIPv6Definition,
15
16
  )
16
- from catalystwan.endpoints.configuration.policy.definition.aip import ConfigurationPolicyAIPDefinition
17
- from catalystwan.endpoints.configuration.policy.definition.amp import ConfigurationPolicyAMPDefinition
18
- from catalystwan.endpoints.configuration.policy.definition.app_route import ConfigurationPolicyAppRouteDefinition
19
- from catalystwan.endpoints.configuration.policy.definition.cflowd import ConfigurationPolicyCflowdDefinition
20
- from catalystwan.endpoints.configuration.policy.definition.control import ConfigurationPolicyControlDefinition
17
+ from catalystwan.endpoints.configuration.policy.definition.control import (
18
+ ConfigurationPolicyControlDefinition,
19
+ ControlPolicyGetResponse,
20
+ )
21
21
  from catalystwan.endpoints.configuration.policy.definition.device_access import (
22
22
  ConfigurationPolicyDeviceAccessDefinition,
23
+ DeviceAccessPolicyGetResponse,
23
24
  )
24
25
  from catalystwan.endpoints.configuration.policy.definition.device_access_ipv6 import (
25
26
  ConfigurationPolicyDeviceAccessIPv6Definition,
27
+ DeviceAccessIPv6PolicyGetResponse,
26
28
  )
27
- from catalystwan.endpoints.configuration.policy.definition.dial_peer import ConfigurationPolicyDialPeerDefinition
28
- from catalystwan.endpoints.configuration.policy.definition.dns_security import ConfigurationPolicyDnsSecurityDefinition
29
- from catalystwan.endpoints.configuration.policy.definition.fxo_port import ConfigurationPolicyFxoPortDefinition
30
- from catalystwan.endpoints.configuration.policy.definition.fxs_did_port import ConfigurationPolicyFxsDidPortDefinition
31
- from catalystwan.endpoints.configuration.policy.definition.fxs_port import ConfigurationPolicyFxsPortDefinition
32
- from catalystwan.endpoints.configuration.policy.definition.hub_and_spoke import ConfigurationPolicyHubAndSpokeDefinition
33
- from catalystwan.endpoints.configuration.policy.definition.intrusion_prevention import (
34
- ConfigurationPolicyIntrusionPreventionDefinition,
29
+ from catalystwan.endpoints.configuration.policy.definition.hub_and_spoke import (
30
+ ConfigurationPolicyHubAndSpokeDefinition,
31
+ HubAndSpokePolicyGetResponse,
35
32
  )
36
- from catalystwan.endpoints.configuration.policy.definition.mesh import ConfigurationPolicyMeshDefinition
37
- from catalystwan.endpoints.configuration.policy.definition.pri_isdn_port import ConfigurationPolicyPriIsdnPortDefinition
38
- from catalystwan.endpoints.configuration.policy.definition.qos_map import ConfigurationPolicyQoSMapDefinition
39
- from catalystwan.endpoints.configuration.policy.definition.rewrite import ConfigurationPolicyRewriteRuleDefinition
40
- from catalystwan.endpoints.configuration.policy.definition.route_policy import ConfigurationPolicyRouteDefinition
41
- from catalystwan.endpoints.configuration.policy.definition.rule_set import ConfigurationPolicyRuleSetDefinition
42
- from catalystwan.endpoints.configuration.policy.definition.security_group import (
43
- ConfigurationPolicySecurityGroupDefinition,
33
+ from catalystwan.endpoints.configuration.policy.definition.mesh import (
34
+ ConfigurationPolicyMeshDefinition,
35
+ MeshPolicyGetResponse,
36
+ )
37
+ from catalystwan.endpoints.configuration.policy.definition.qos_map import (
38
+ ConfigurationPolicyQoSMapDefinition,
39
+ QoSMapPolicyGetResponse,
40
+ )
41
+ from catalystwan.endpoints.configuration.policy.definition.rewrite import (
42
+ ConfigurationPolicyRewriteRuleDefinition,
43
+ RewritePolicyGetResponse,
44
44
  )
45
- from catalystwan.endpoints.configuration.policy.definition.srst_phone_profile import (
46
- ConfigurationPolicySrstPhoneProfileDefinition,
45
+ from catalystwan.endpoints.configuration.policy.definition.rule_set import (
46
+ ConfigurationPolicyRuleSetDefinition,
47
+ RuleSetGetResponse,
47
48
  )
48
- from catalystwan.endpoints.configuration.policy.definition.ssl_decryption import ConfigurationSslDecryptionDefinition
49
- from catalystwan.endpoints.configuration.policy.definition.ssl_decryption_utd_profile import (
50
- ConfigurationSslDecryptionUtdProfileDefinition,
49
+ from catalystwan.endpoints.configuration.policy.definition.security_group import (
50
+ ConfigurationPolicySecurityGroupDefinition,
51
+ SecurityGroupGetResponse,
51
52
  )
52
- from catalystwan.endpoints.configuration.policy.definition.traffic_data import ConfigurationPolicyDataDefinition
53
- from catalystwan.endpoints.configuration.policy.definition.url_filtering import (
54
- ConfigurationPolicyUrlFilteringDefinition,
53
+ from catalystwan.endpoints.configuration.policy.definition.traffic_data import (
54
+ ConfigurationPolicyDataDefinition,
55
+ TrafficDataPolicy,
56
+ TrafficDataPolicyGetResponse,
55
57
  )
56
58
  from catalystwan.endpoints.configuration.policy.definition.vpn_membership import (
57
59
  ConfigurationPolicyVPNMembershipGroupDefinition,
60
+ VPNMembershipPolicyGetResponse,
58
61
  )
59
- from catalystwan.endpoints.configuration.policy.definition.vpn_qos_map import ConfigurationPolicyVPNQoSMapDefinition
60
62
  from catalystwan.endpoints.configuration.policy.definition.zone_based_firewall import (
61
63
  ConfigurationPolicyZoneBasedFirewallDefinition,
64
+ ZoneBasedFWPolicyGetResponse,
62
65
  )
63
66
  from catalystwan.endpoints.configuration.policy.list.app import AppListInfo, ConfigurationPolicyApplicationList
64
- from catalystwan.endpoints.configuration.policy.list.app_probe import ConfigurationPolicyAppProbeClassList
67
+ from catalystwan.endpoints.configuration.policy.list.app_probe import (
68
+ AppProbeClassListInfo,
69
+ ConfigurationPolicyAppProbeClassList,
70
+ )
65
71
  from catalystwan.endpoints.configuration.policy.list.as_path import ASPathListInfo, ConfigurationPolicyASPathList
66
- from catalystwan.endpoints.configuration.policy.list.class_map import ConfigurationPolicyForwardingClassList
72
+ from catalystwan.endpoints.configuration.policy.list.class_map import (
73
+ ClassMapListInfo,
74
+ ConfigurationPolicyForwardingClassList,
75
+ )
67
76
  from catalystwan.endpoints.configuration.policy.list.color import ColorListInfo, ConfigurationPolicyColorList
68
- from catalystwan.endpoints.configuration.policy.list.community import ConfigurationPolicyCommunityList
69
- from catalystwan.endpoints.configuration.policy.list.data_ipv6_prefix import ConfigurationPolicyDataIPv6PrefixList
70
- from catalystwan.endpoints.configuration.policy.list.data_prefix import ConfigurationPolicyDataPrefixList
71
- from catalystwan.endpoints.configuration.policy.list.expanded_community import ConfigurationPolicyExpandedCommunityList
72
- from catalystwan.endpoints.configuration.policy.list.extended_community import ConfigurationPolicyExtendedCommunityList
73
- from catalystwan.endpoints.configuration.policy.list.fax_protocol import ConfigurationPolicyFaxProtocolList
77
+ from catalystwan.endpoints.configuration.policy.list.community import (
78
+ CommunityListInfo,
79
+ ConfigurationPolicyCommunityList,
80
+ )
81
+ from catalystwan.endpoints.configuration.policy.list.data_ipv6_prefix import (
82
+ ConfigurationPolicyDataIPv6PrefixList,
83
+ DataIPv6PrefixListInfo,
84
+ )
85
+ from catalystwan.endpoints.configuration.policy.list.data_prefix import (
86
+ ConfigurationPolicyDataPrefixList,
87
+ DataPrefixListInfo,
88
+ )
89
+ from catalystwan.endpoints.configuration.policy.list.expanded_community import (
90
+ ConfigurationPolicyExpandedCommunityList,
91
+ ExpandedCommunityListInfo,
92
+ )
74
93
  from catalystwan.endpoints.configuration.policy.list.fqdn import ConfigurationPolicyFQDNList, FQDNListInfo
75
- from catalystwan.endpoints.configuration.policy.list.geo_location import ConfigurationPolicyGeoLocationList
76
- from catalystwan.endpoints.configuration.policy.list.identity import ConfigurationPolicyIdentityList
77
- from catalystwan.endpoints.configuration.policy.list.ips_signature import ConfigurationPolicyIPSSignatureList
78
- from catalystwan.endpoints.configuration.policy.list.ipv6_prefix import ConfigurationPolicyIPv6PrefixList
94
+ from catalystwan.endpoints.configuration.policy.list.geo_location import (
95
+ ConfigurationPolicyGeoLocationList,
96
+ GeoLocationListInfo,
97
+ )
98
+ from catalystwan.endpoints.configuration.policy.list.ips_signature import (
99
+ ConfigurationPolicyIPSSignatureList,
100
+ IPSSignatureListInfo,
101
+ )
102
+ from catalystwan.endpoints.configuration.policy.list.ipv6_prefix import (
103
+ ConfigurationPolicyIPv6PrefixList,
104
+ IPv6PrefixListInfo,
105
+ )
79
106
  from catalystwan.endpoints.configuration.policy.list.local_app import ConfigurationPolicyLocalAppList, LocalAppListInfo
80
- from catalystwan.endpoints.configuration.policy.list.local_domain import ConfigurationPolicyLocalDomainList
81
- from catalystwan.endpoints.configuration.policy.list.media_profile import ConfigurationPolicyMediaProfileList
107
+ from catalystwan.endpoints.configuration.policy.list.local_domain import (
108
+ ConfigurationPolicyLocalDomainList,
109
+ LocalDomainListInfo,
110
+ )
82
111
  from catalystwan.endpoints.configuration.policy.list.mirror import ConfigurationPolicyMirrorList, MirrorListInfo
83
- from catalystwan.endpoints.configuration.policy.list.modem_pass_through import ConfigurationPolicyModemPassThroughList
84
112
  from catalystwan.endpoints.configuration.policy.list.policer import ConfigurationPolicyPolicerClassList, PolicerListInfo
85
113
  from catalystwan.endpoints.configuration.policy.list.port import ConfigurationPolicyPortList, PortListInfo
86
114
  from catalystwan.endpoints.configuration.policy.list.preferred_color_group import (
@@ -93,20 +121,9 @@ from catalystwan.endpoints.configuration.policy.list.protocol_name import (
93
121
  ProtocolNameListInfo,
94
122
  )
95
123
  from catalystwan.endpoints.configuration.policy.list.region import ConfigurationPolicyRegionList, RegionListInfo
96
- from catalystwan.endpoints.configuration.policy.list.scalable_group_tag import ConfigurationPolicyScalableGroupTagList
97
124
  from catalystwan.endpoints.configuration.policy.list.site import ConfigurationPolicySiteList, SiteListInfo
98
125
  from catalystwan.endpoints.configuration.policy.list.sla import ConfigurationPolicySLAClassList, SLAClassListInfo
99
- from catalystwan.endpoints.configuration.policy.list.supervisory_disconnect import (
100
- ConfigurationPolicySupervisoryDisconnectList,
101
- )
102
- from catalystwan.endpoints.configuration.policy.list.threat_grid_api_key import ConfigurationPolicyThreatGridApiKeyList
103
126
  from catalystwan.endpoints.configuration.policy.list.tloc import ConfigurationPolicyTLOCList, TLOCListInfo
104
- from catalystwan.endpoints.configuration.policy.list.translation_profile import (
105
- ConfigurationPolicyTranslationProfileList,
106
- )
107
- from catalystwan.endpoints.configuration.policy.list.translation_rules import ConfigurationPolicyTranslationRulesList
108
- from catalystwan.endpoints.configuration.policy.list.trunkgroup import ConfigurationPolicyTrunkGroupList
109
- from catalystwan.endpoints.configuration.policy.list.umbrella_data import ConfigurationPolicyUmbrellaDataList
110
127
  from catalystwan.endpoints.configuration.policy.list.url_allow_list import (
111
128
  ConfigurationPolicyURLAllowList,
112
129
  URLAllowListInfo,
@@ -119,15 +136,27 @@ from catalystwan.endpoints.configuration.policy.list.vpn import ConfigurationPol
119
136
  from catalystwan.endpoints.configuration.policy.list.zone import ConfigurationPolicyZoneList, ZoneListInfo
120
137
  from catalystwan.endpoints.configuration.policy.security_template import ConfigurationSecurityTemplatePolicy
121
138
  from catalystwan.endpoints.configuration.policy.vedge_template import ConfigurationVEdgeTemplatePolicy
122
- from catalystwan.endpoints.configuration.policy.voice_template import ConfigurationVoiceTemplatePolicy
123
139
  from catalystwan.endpoints.configuration.policy.vsmart_template import (
124
140
  ConfigurationVSmartTemplatePolicy,
125
141
  VSmartConnectivityStatus,
126
142
  )
127
143
  from catalystwan.models.misc.application_protocols import ApplicationProtocol
128
- from catalystwan.models.policy import (
129
- AnyPolicyDefinition,
130
- AnyPolicyList,
144
+ from catalystwan.models.policy import AnyPolicyDefinition, AnyPolicyList
145
+ from catalystwan.models.policy.centralized import CentralizedPolicy, CentralizedPolicyEditPayload, CentralizedPolicyInfo
146
+ from catalystwan.models.policy.definitions.access_control_list import AclPolicy
147
+ from catalystwan.models.policy.definitions.access_control_list_ipv6 import AclIPv6Policy
148
+ from catalystwan.models.policy.definitions.control import ControlPolicy
149
+ from catalystwan.models.policy.definitions.device_access import DeviceAccessPolicy
150
+ from catalystwan.models.policy.definitions.device_access_ipv6 import DeviceAccessIPv6Policy
151
+ from catalystwan.models.policy.definitions.hub_and_spoke import HubAndSpokePolicy
152
+ from catalystwan.models.policy.definitions.mesh import MeshPolicy
153
+ from catalystwan.models.policy.definitions.qos_map import QoSMapPolicy
154
+ from catalystwan.models.policy.definitions.rewrite import RewritePolicy
155
+ from catalystwan.models.policy.definitions.rule_set import RuleSet
156
+ from catalystwan.models.policy.definitions.security_group import SecurityGroup
157
+ from catalystwan.models.policy.definitions.vpn_membership import VPNMembershipPolicy
158
+ from catalystwan.models.policy.definitions.zone_based_firewall import ZoneBasedFWPolicy
159
+ from catalystwan.models.policy.lists import (
131
160
  AppList,
132
161
  AppProbeClassList,
133
162
  ASPathList,
@@ -137,7 +166,6 @@ from catalystwan.models.policy import (
137
166
  DataIPv6PrefixList,
138
167
  DataPrefixList,
139
168
  ExpandedCommunityList,
140
- ExtendedCommunityList,
141
169
  FQDNList,
142
170
  GeoLocationList,
143
171
  IPSSignatureList,
@@ -146,6 +174,7 @@ from catalystwan.models.policy import (
146
174
  LocalDomainList,
147
175
  MirrorList,
148
176
  PolicerList,
177
+ PolicyListBase,
149
178
  PortList,
150
179
  PreferredColorGroupList,
151
180
  PrefixList,
@@ -159,83 +188,6 @@ from catalystwan.models.policy import (
159
188
  VPNList,
160
189
  ZoneList,
161
190
  )
162
- from catalystwan.models.policy.centralized import CentralizedPolicy, CentralizedPolicyEditPayload, CentralizedPolicyInfo
163
- from catalystwan.models.policy.definition.access_control_list import AclPolicy, AclPolicyGetResponse
164
- from catalystwan.models.policy.definition.access_control_list_ipv6 import AclIPv6Policy, AclIPv6PolicyGetResponse
165
- from catalystwan.models.policy.definition.aip import (
166
- AdvancedInspectionProfilePolicy,
167
- AdvancedInspectionProfilePolicyGetResponse,
168
- )
169
- from catalystwan.models.policy.definition.amp import (
170
- AdvancedMalwareProtectionPolicy,
171
- AdvancedMalwareProtectionPolicyGetResponse,
172
- )
173
- from catalystwan.models.policy.definition.app_route import AppRoutePolicy, AppRoutePolicyGetResponse
174
- from catalystwan.models.policy.definition.cflowd import CflowdPolicy, CflowdPolicyGetResponse
175
- from catalystwan.models.policy.definition.control import ControlPolicy, ControlPolicyGetResponse
176
- from catalystwan.models.policy.definition.device_access import DeviceAccessPolicy, DeviceAccessPolicyGetResponse
177
- from catalystwan.models.policy.definition.device_access_ipv6 import (
178
- DeviceAccessIPv6Policy,
179
- DeviceAccessIPv6PolicyGetResponse,
180
- )
181
- from catalystwan.models.policy.definition.dial_peer import DialPeerPolicy, DialPeerPolicyGetResponse
182
- from catalystwan.models.policy.definition.dns_security import DnsSecurityPolicy, DnsSecurityPolicyGetResponse
183
- from catalystwan.models.policy.definition.fxo_port import FxoPortPolicy, FxoPortPolicyGetResponse
184
- from catalystwan.models.policy.definition.fxs_did_port import FxsDidPortPolicy, FxsDidPortPolicyGetResponse
185
- from catalystwan.models.policy.definition.fxs_port import FxsPortPolicy, FxsPortPolicyGetResponse
186
- from catalystwan.models.policy.definition.hub_and_spoke import HubAndSpokePolicy, HubAndSpokePolicyGetResponse
187
- from catalystwan.models.policy.definition.intrusion_prevention import (
188
- IntrusionPreventionPolicy,
189
- IntrusionPreventionPolicyGetResponse,
190
- )
191
- from catalystwan.models.policy.definition.mesh import MeshPolicy, MeshPolicyGetResponse
192
- from catalystwan.models.policy.definition.pri_isdn_port import PriIsdnPortPolicy, PriIsdnPortPolicyGetResponse
193
- from catalystwan.models.policy.definition.qos_map import QoSMapPolicy, QoSMapPolicyGetResponse
194
- from catalystwan.models.policy.definition.rewrite import RewritePolicy, RewritePolicyGetResponse
195
- from catalystwan.models.policy.definition.route_policy import RoutePolicy, RoutePolicyGetResponse
196
- from catalystwan.models.policy.definition.rule_set import RuleSet, RuleSetGetResponse
197
- from catalystwan.models.policy.definition.security_group import SecurityGroup, SecurityGroupGetResponse
198
- from catalystwan.models.policy.definition.srst_phone_profile import (
199
- SrstPhoneProfilePolicy,
200
- SrstPhoneProfilePolicyGetResponse,
201
- )
202
- from catalystwan.models.policy.definition.ssl_decryption import SslDecryptionPolicy, SslDecryptionPolicyGetResponse
203
- from catalystwan.models.policy.definition.ssl_decryption_utd_profile import (
204
- SslDecryptionUtdProfilePolicy,
205
- SslDecryptionUtdProfilePolicyGetResponse,
206
- )
207
- from catalystwan.models.policy.definition.traffic_data import TrafficDataPolicy, TrafficDataPolicyGetResponse
208
- from catalystwan.models.policy.definition.url_filtering import UrlFilteringPolicy, UrlFilteringPolicyGetResponse
209
- from catalystwan.models.policy.definition.vpn_membership import VPNMembershipPolicy, VPNMembershipPolicyGetResponse
210
- from catalystwan.models.policy.definition.vpn_qos_map import VPNQoSMapPolicy
211
- from catalystwan.models.policy.definition.zone_based_firewall import ZoneBasedFWPolicy, ZoneBasedFWPolicyGetResponse
212
- from catalystwan.models.policy.list.app_probe import AppProbeClassListInfo
213
- from catalystwan.models.policy.list.class_map import ClassMapListInfo
214
- from catalystwan.models.policy.list.communities import (
215
- CommunityListInfo,
216
- ExpandedCommunityListInfo,
217
- ExtendedCommunityListInfo,
218
- )
219
- from catalystwan.models.policy.list.data_ipv6_prefix import DataIPv6PrefixListInfo
220
- from catalystwan.models.policy.list.data_prefix import DataPrefixListInfo
221
- from catalystwan.models.policy.list.fax_protocol import FaxProtocolList, FaxProtocolListInfo
222
- from catalystwan.models.policy.list.geo_location import GeoLocationListInfo
223
- from catalystwan.models.policy.list.identity import IdentityList, IdentityListInfo
224
- from catalystwan.models.policy.list.ips_signature import IPSSignatureListInfo
225
- from catalystwan.models.policy.list.ipv6_prefix import IPv6PrefixListInfo
226
- from catalystwan.models.policy.list.local_domain import LocalDomainListInfo
227
- from catalystwan.models.policy.list.media_profile import MediaProfileList, MediaProfileListInfo
228
- from catalystwan.models.policy.list.modem_pass_through import ModemPassThroughList, ModemPassThroughListInfo
229
- from catalystwan.models.policy.list.scalable_group_tag import ScalableGroupTagList, ScalableGroupTagListInfo
230
- from catalystwan.models.policy.list.supervisory_disconnect import (
231
- SupervisoryDisconnectList,
232
- SupervisoryDisconnectListInfo,
233
- )
234
- from catalystwan.models.policy.list.threat_grid_api_key import ThreatGridApiKeyList, ThreatGridApiKeyListInfo
235
- from catalystwan.models.policy.list.translation_profile import TranslationProfileList, TranslationProfileListInfo
236
- from catalystwan.models.policy.list.translation_rules import TranslationRulesList, TranslationRulesListInfo
237
- from catalystwan.models.policy.list.trunkgroup import TrunkGroupList, TrunkGroupListInfo
238
- from catalystwan.models.policy.list.umbrella_data import UmbrellaDataList, UmbrellaDataListInfo
239
191
  from catalystwan.models.policy.localized import (
240
192
  LocalizedPolicy,
241
193
  LocalizedPolicyDeviceInfo,
@@ -245,17 +197,17 @@ from catalystwan.models.policy.localized import (
245
197
  from catalystwan.models.policy.policy_definition import (
246
198
  PolicyDefinitionBase,
247
199
  PolicyDefinitionEditResponse,
200
+ PolicyDefinitionEndpoints,
248
201
  PolicyDefinitionInfo,
249
202
  )
250
- from catalystwan.models.policy.policy_list import PolicyListBase
203
+ from catalystwan.models.policy.policy_list import PolicyListEndpoints
251
204
  from catalystwan.models.policy.security import (
252
205
  AnySecurityPolicy,
253
- AnySecurityPolicyInfoList,
206
+ AnySecurityPolicyInfo,
254
207
  SecurityPolicy,
255
208
  SecurityPolicyEditResponse,
256
209
  UnifiedSecurityPolicy,
257
210
  )
258
- from catalystwan.models.policy.voice import VoicePolicy, VoicePolicyEditResponse, VoicePolicyInfo
259
211
  from catalystwan.typed_list import DataSequence
260
212
 
261
213
  if TYPE_CHECKING:
@@ -272,72 +224,43 @@ POLICY_LIST_ENDPOINTS_MAP: Mapping[type, type] = {
272
224
  DataIPv6PrefixList: ConfigurationPolicyDataIPv6PrefixList,
273
225
  DataPrefixList: ConfigurationPolicyDataPrefixList,
274
226
  ExpandedCommunityList: ConfigurationPolicyExpandedCommunityList,
275
- ExtendedCommunityList: ConfigurationPolicyExtendedCommunityList,
276
- FaxProtocolList: ConfigurationPolicyFaxProtocolList,
277
227
  FQDNList: ConfigurationPolicyFQDNList,
278
228
  GeoLocationList: ConfigurationPolicyGeoLocationList,
279
- IdentityList: ConfigurationPolicyIdentityList,
280
229
  IPSSignatureList: ConfigurationPolicyIPSSignatureList,
281
230
  IPv6PrefixList: ConfigurationPolicyIPv6PrefixList,
282
231
  LocalAppList: ConfigurationPolicyLocalAppList,
283
232
  LocalDomainList: ConfigurationPolicyLocalDomainList,
284
- MediaProfileList: ConfigurationPolicyMediaProfileList,
285
233
  MirrorList: ConfigurationPolicyMirrorList,
286
- ModemPassThroughList: ConfigurationPolicyModemPassThroughList,
287
234
  PolicerList: ConfigurationPolicyPolicerClassList,
288
235
  PortList: ConfigurationPolicyPortList,
289
236
  PreferredColorGroupList: ConfigurationPreferredColorGroupList,
290
237
  PrefixList: ConfigurationPolicyPrefixList,
291
238
  ProtocolNameList: ConfigurationPolicyProtocolNameList,
292
239
  RegionList: ConfigurationPolicyRegionList,
293
- ScalableGroupTagList: ConfigurationPolicyScalableGroupTagList,
294
240
  SiteList: ConfigurationPolicySiteList,
295
241
  SLAClassList: ConfigurationPolicySLAClassList,
296
- SupervisoryDisconnectList: ConfigurationPolicySupervisoryDisconnectList,
297
- ThreatGridApiKeyList: ConfigurationPolicyThreatGridApiKeyList,
298
242
  TLOCList: ConfigurationPolicyTLOCList,
299
- TranslationProfileList: ConfigurationPolicyTranslationProfileList,
300
- TranslationRulesList: ConfigurationPolicyTranslationRulesList,
301
- TrunkGroupList: ConfigurationPolicyTrunkGroupList,
302
- UmbrellaDataList: ConfigurationPolicyUmbrellaDataList,
303
- URLAllowList: ConfigurationPolicyURLAllowList,
304
243
  URLBlockList: ConfigurationPolicyURLBlockList,
244
+ URLAllowList: ConfigurationPolicyURLAllowList,
305
245
  VPNList: ConfigurationPolicyVPNList,
306
246
  ZoneList: ConfigurationPolicyZoneList,
307
247
  }
308
248
 
309
249
  POLICY_DEFINITION_ENDPOINTS_MAP: Mapping[type, type] = {
310
- AclIPv6Policy: ConfigurationPolicyAclIPv6Definition,
311
- AclPolicy: ConfigurationPolicyAclDefinition,
312
- AdvancedInspectionProfilePolicy: ConfigurationPolicyAIPDefinition,
313
- AdvancedMalwareProtectionPolicy: ConfigurationPolicyAMPDefinition,
314
- AppRoutePolicy: ConfigurationPolicyAppRouteDefinition,
315
- CflowdPolicy: ConfigurationPolicyCflowdDefinition,
316
- ControlPolicy: ConfigurationPolicyControlDefinition,
317
- DeviceAccessIPv6Policy: ConfigurationPolicyDeviceAccessIPv6Definition,
318
- DeviceAccessPolicy: ConfigurationPolicyDeviceAccessDefinition,
319
- DialPeerPolicy: ConfigurationPolicyDialPeerDefinition,
320
- DnsSecurityPolicy: ConfigurationPolicyDnsSecurityDefinition,
321
- FxoPortPolicy: ConfigurationPolicyFxoPortDefinition,
322
- FxsPortPolicy: ConfigurationPolicyFxsPortDefinition,
323
- FxsDidPortPolicy: ConfigurationPolicyFxsDidPortDefinition,
324
- HubAndSpokePolicy: ConfigurationPolicyHubAndSpokeDefinition,
325
- IntrusionPreventionPolicy: ConfigurationPolicyIntrusionPreventionDefinition,
326
- MeshPolicy: ConfigurationPolicyMeshDefinition,
327
- PriIsdnPortPolicy: ConfigurationPolicyPriIsdnPortDefinition,
328
- QoSMapPolicy: ConfigurationPolicyQoSMapDefinition,
329
- RewritePolicy: ConfigurationPolicyRewriteRuleDefinition,
330
- RoutePolicy: ConfigurationPolicyRouteDefinition,
331
250
  RuleSet: ConfigurationPolicyRuleSetDefinition,
332
251
  SecurityGroup: ConfigurationPolicySecurityGroupDefinition,
333
- SslDecryptionPolicy: ConfigurationSslDecryptionDefinition,
334
- SslDecryptionUtdProfilePolicy: ConfigurationSslDecryptionUtdProfileDefinition,
335
- SrstPhoneProfilePolicy: ConfigurationPolicySrstPhoneProfileDefinition,
252
+ ZoneBasedFWPolicy: ConfigurationPolicyZoneBasedFirewallDefinition,
336
253
  TrafficDataPolicy: ConfigurationPolicyDataDefinition,
337
- UrlFilteringPolicy: ConfigurationPolicyUrlFilteringDefinition,
254
+ QoSMapPolicy: ConfigurationPolicyQoSMapDefinition,
255
+ RewritePolicy: ConfigurationPolicyRewriteRuleDefinition,
256
+ ControlPolicy: ConfigurationPolicyControlDefinition,
338
257
  VPNMembershipPolicy: ConfigurationPolicyVPNMembershipGroupDefinition,
339
- VPNQoSMapPolicy: ConfigurationPolicyVPNQoSMapDefinition,
340
- ZoneBasedFWPolicy: ConfigurationPolicyZoneBasedFirewallDefinition,
258
+ HubAndSpokePolicy: ConfigurationPolicyHubAndSpokeDefinition,
259
+ MeshPolicy: ConfigurationPolicyMeshDefinition,
260
+ AclPolicy: ConfigurationPolicyAclDefinition,
261
+ AclIPv6Policy: ConfigurationPolicyAclIPv6Definition,
262
+ DeviceAccessPolicy: ConfigurationPolicyDeviceAccessDefinition,
263
+ DeviceAccessIPv6Policy: ConfigurationPolicyDeviceAccessIPv6Definition,
341
264
  }
342
265
 
343
266
 
@@ -427,9 +350,9 @@ class SecurityPolicyAPI:
427
350
  # POST does not return anything! we need to list all after creation and find by name to get id
428
351
  self._endpoints.create_security_template(policy)
429
352
  policy_infos = [
430
- info
431
- for info in self._endpoints.generate_security_template_list().root
432
- if info.policy_name == policy.policy_name
353
+ info.root
354
+ for info in self._endpoints.generate_security_template_list()
355
+ if info.root.policy_name == policy.policy_name
433
356
  ]
434
357
  assert len(policy_infos) == 1
435
358
  return policy_infos[0].policy_id
@@ -441,7 +364,7 @@ class SecurityPolicyAPI:
441
364
  self._endpoints.delete_security_template(id)
442
365
 
443
366
  @overload
444
- def get(self) -> AnySecurityPolicyInfoList:
367
+ def get(self) -> List[AnySecurityPolicyInfo]:
445
368
  ...
446
369
 
447
370
  @overload
@@ -451,35 +374,7 @@ class SecurityPolicyAPI:
451
374
  def get(self, id: Optional[UUID] = None) -> Any:
452
375
  if id is not None:
453
376
  return self._endpoints.get_security_template(id).root
454
- return self._endpoints.generate_security_template_list()
455
-
456
-
457
- class VoicePolicyAPI:
458
- def __init__(self, session: ManagerSession):
459
- self._session = session
460
- self._endpoints = ConfigurationVoiceTemplatePolicy(session)
461
-
462
- def create(self, policy: VoicePolicy) -> None:
463
- self._endpoints.create_voice_template(policy)
464
-
465
- def edit(self, id: UUID, policy: VoicePolicy) -> VoicePolicyEditResponse:
466
- return self._endpoints.edit_voice_template(id, policy)
467
-
468
- def delete(self, id: UUID) -> None:
469
- self._endpoints.delete_voice_template(id)
470
-
471
- @overload
472
- def get(self) -> DataSequence[VoicePolicyInfo]:
473
- ...
474
-
475
- @overload
476
- def get(self, id: UUID) -> VoicePolicy:
477
- ...
478
-
479
- def get(self, id: Optional[UUID] = None) -> Any:
480
- if id is not None:
481
- return self._endpoints.get_voice_template(id)
482
- return self._endpoints.generate_voice_template_list()
377
+ return [info.root for info in self._endpoints.generate_security_template_list()]
483
378
 
484
379
 
485
380
  class PolicyListsAPI:
@@ -540,14 +435,6 @@ class PolicyListsAPI:
540
435
  def get(self, type: Type[ExpandedCommunityList]) -> DataSequence[ExpandedCommunityListInfo]:
541
436
  ...
542
437
 
543
- @overload
544
- def get(self, type: Type[ExtendedCommunityList]) -> DataSequence[ExtendedCommunityListInfo]:
545
- ...
546
-
547
- @overload
548
- def get(self, type: Type[FaxProtocolList]) -> DataSequence[FaxProtocolListInfo]:
549
- ...
550
-
551
438
  @overload
552
439
  def get(self, type: Type[FQDNList]) -> DataSequence[FQDNListInfo]:
553
440
  ...
@@ -572,14 +459,6 @@ class PolicyListsAPI:
572
459
  def get(self, type: Type[LocalDomainList]) -> DataSequence[LocalDomainListInfo]:
573
460
  ...
574
461
 
575
- @overload
576
- def get(self, type: Type[MediaProfileList]) -> DataSequence[MediaProfileListInfo]:
577
- ...
578
-
579
- @overload
580
- def get(self, type: Type[ModemPassThroughList]) -> DataSequence[ModemPassThroughListInfo]:
581
- ...
582
-
583
462
  @overload
584
463
  def get(self, type: Type[MirrorList]) -> DataSequence[MirrorListInfo]:
585
464
  ...
@@ -616,34 +495,10 @@ class PolicyListsAPI:
616
495
  def get(self, type: Type[SLAClassList]) -> DataSequence[SLAClassListInfo]:
617
496
  ...
618
497
 
619
- @overload
620
- def get(self, type: Type[SupervisoryDisconnectList]) -> DataSequence[SupervisoryDisconnectListInfo]:
621
- ...
622
-
623
- @overload
624
- def get(self, type: Type[ThreatGridApiKeyList]) -> DataSequence[ThreatGridApiKeyListInfo]:
625
- ...
626
-
627
498
  @overload
628
499
  def get(self, type: Type[TLOCList]) -> DataSequence[TLOCListInfo]:
629
500
  ...
630
501
 
631
- @overload
632
- def get(self, type: Type[TranslationProfileList]) -> DataSequence[TranslationProfileListInfo]:
633
- ...
634
-
635
- @overload
636
- def get(self, type: Type[TranslationRulesList]) -> DataSequence[TranslationRulesListInfo]:
637
- ...
638
-
639
- @overload
640
- def get(self, type: Type[TrunkGroupList]) -> DataSequence[TrunkGroupListInfo]:
641
- ...
642
-
643
- @overload
644
- def get(self, type: Type[UmbrellaDataList]) -> DataSequence[UmbrellaDataListInfo]:
645
- ...
646
-
647
502
  @overload
648
503
  def get(self, type: Type[URLBlockList]) -> DataSequence[URLBlockListInfo]:
649
504
  ...
@@ -660,14 +515,6 @@ class PolicyListsAPI:
660
515
  def get(self, type: Type[ZoneList]) -> DataSequence[ZoneListInfo]:
661
516
  ...
662
517
 
663
- @overload
664
- def get(self, type: Type[ScalableGroupTagList]) -> DataSequence[ScalableGroupTagListInfo]:
665
- ...
666
-
667
- @overload
668
- def get(self, type: Type[IdentityList]) -> DataSequence[IdentityListInfo]:
669
- ...
670
-
671
518
  # get by id
672
519
 
673
520
  @overload
@@ -706,14 +553,6 @@ class PolicyListsAPI:
706
553
  def get(self, type: Type[ExpandedCommunityList], id: UUID) -> ExpandedCommunityListInfo:
707
554
  ...
708
555
 
709
- @overload
710
- def get(self, type: Type[ExtendedCommunityList], id: UUID) -> ExtendedCommunityListInfo:
711
- ...
712
-
713
- @overload
714
- def get(self, type: Type[FaxProtocolList], id: UUID) -> FaxProtocolListInfo:
715
- ...
716
-
717
556
  @overload
718
557
  def get(self, type: Type[FQDNList], id: UUID) -> FQDNListInfo:
719
558
  ...
@@ -738,18 +577,10 @@ class PolicyListsAPI:
738
577
  def get(self, type: Type[LocalDomainList], id: UUID) -> LocalDomainListInfo:
739
578
  ...
740
579
 
741
- @overload
742
- def get(self, type: Type[MediaProfileList], id: UUID) -> MediaProfileListInfo:
743
- ...
744
-
745
580
  @overload
746
581
  def get(self, type: Type[MirrorList], id: UUID) -> MirrorListInfo:
747
582
  ...
748
583
 
749
- @overload
750
- def get(self, type: Type[ModemPassThroughList], id: UUID) -> ModemPassThroughListInfo:
751
- ...
752
-
753
584
  @overload
754
585
  def get(self, type: Type[PolicerList], id: UUID) -> PolicerListInfo:
755
586
  ...
@@ -782,34 +613,10 @@ class PolicyListsAPI:
782
613
  def get(self, type: Type[SLAClassList], id: UUID) -> SLAClassListInfo:
783
614
  ...
784
615
 
785
- @overload
786
- def get(self, type: Type[SupervisoryDisconnectList], id: UUID) -> SupervisoryDisconnectListInfo:
787
- ...
788
-
789
- @overload
790
- def get(self, type: Type[ThreatGridApiKeyList], id: UUID) -> ThreatGridApiKeyListInfo:
791
- ...
792
-
793
616
  @overload
794
617
  def get(self, type: Type[TLOCList], id: UUID) -> TLOCListInfo:
795
618
  ...
796
619
 
797
- @overload
798
- def get(self, type: Type[TranslationProfileList], id: UUID) -> TranslationProfileListInfo:
799
- ...
800
-
801
- @overload
802
- def get(self, type: Type[TranslationRulesList], id: UUID) -> TranslationRulesListInfo:
803
- ...
804
-
805
- @overload
806
- def get(self, type: Type[TrunkGroupList], id: UUID) -> TrunkGroupListInfo:
807
- ...
808
-
809
- @overload
810
- def get(self, type: Type[UmbrellaDataList], id: UUID) -> UmbrellaDataListInfo:
811
- ...
812
-
813
620
  @overload
814
621
  def get(self, type: Type[URLBlockList], id: UUID) -> URLBlockListInfo:
815
622
  ...
@@ -826,26 +633,12 @@ class PolicyListsAPI:
826
633
  def get(self, type: Type[ZoneList], id: UUID) -> ZoneListInfo:
827
634
  ...
828
635
 
829
- @overload
830
- def get(self, type: Type[ScalableGroupTagList], id: UUID) -> ScalableGroupTagListInfo:
831
- ...
832
-
833
- @overload
834
- def get(self, type: Type[IdentityList], id: UUID) -> IdentityListInfo:
835
- ...
836
-
837
636
  def get(self, type: Type[AnyPolicyList], id: Optional[UUID] = None) -> Any:
838
637
  endpoints = self.__get_list_endpoints_instance(type)
839
638
  if id is not None:
840
639
  return endpoints.get_lists_by_id(id=id)
841
640
  return endpoints.get_policy_lists()
842
641
 
843
- def get_all(self) -> List[AnyPolicyList]:
844
- infos: List[AnyPolicyList] = []
845
- for list_type, _ in POLICY_LIST_ENDPOINTS_MAP.items():
846
- infos.extend(self.get(list_type))
847
- return infos
848
-
849
642
 
850
643
  class PolicyDefinitionsAPI:
851
644
  def __init__(self, session: ManagerSession):
@@ -869,38 +662,10 @@ class PolicyDefinitionsAPI:
869
662
  endpoints = self.__get_definition_endpoints_instance(type)
870
663
  endpoints.delete_policy_definition(id=id)
871
664
 
872
- @overload
873
- def get(self, type: Type[IntrusionPreventionPolicy]) -> DataSequence[PolicyDefinitionInfo]:
874
- ...
875
-
876
665
  @overload
877
666
  def get(self, type: Type[TrafficDataPolicy]) -> DataSequence[PolicyDefinitionInfo]:
878
667
  ...
879
668
 
880
- @overload
881
- def get(self, type: Type[UrlFilteringPolicy]) -> DataSequence[PolicyDefinitionInfo]:
882
- ...
883
-
884
- @overload
885
- def get(self, type: Type[AdvancedInspectionProfilePolicy]) -> DataSequence[PolicyDefinitionInfo]:
886
- ...
887
-
888
- @overload
889
- def get(self, type: Type[AdvancedMalwareProtectionPolicy]) -> DataSequence[PolicyDefinitionInfo]:
890
- ...
891
-
892
- @overload
893
- def get(self, type: Type[CflowdPolicy]) -> DataSequence[PolicyDefinitionInfo]:
894
- ...
895
-
896
- @overload
897
- def get(self, type: Type[DnsSecurityPolicy]) -> DataSequence[PolicyDefinitionInfo]:
898
- ...
899
-
900
- @overload
901
- def get(self, type: Type[RoutePolicy]) -> DataSequence[PolicyDefinitionInfo]:
902
- ...
903
-
904
669
  @overload
905
670
  def get(self, type: Type[RuleSet]) -> DataSequence[PolicyDefinitionInfo]:
906
671
  ...
@@ -909,14 +674,6 @@ class PolicyDefinitionsAPI:
909
674
  def get(self, type: Type[SecurityGroup]) -> DataSequence[PolicyDefinitionInfo]:
910
675
  ...
911
676
 
912
- @overload
913
- def get(self, type: Type[SslDecryptionPolicy]) -> DataSequence[PolicyDefinitionInfo]:
914
- ...
915
-
916
- @overload
917
- def get(self, type: Type[SslDecryptionUtdProfilePolicy]) -> DataSequence[PolicyDefinitionInfo]:
918
- ...
919
-
920
677
  @overload
921
678
  def get(self, type: Type[ZoneBasedFWPolicy]) -> DataSequence[PolicyDefinitionInfo]:
922
679
  ...
@@ -937,10 +694,6 @@ class PolicyDefinitionsAPI:
937
694
  def get(self, type: Type[VPNMembershipPolicy]) -> DataSequence[PolicyDefinitionInfo]:
938
695
  ...
939
696
 
940
- @overload
941
- def get(self, type: Type[VPNQoSMapPolicy]) -> DataSequence[PolicyDefinitionInfo]:
942
- ...
943
-
944
697
  @overload
945
698
  def get(self, type: Type[HubAndSpokePolicy]) -> DataSequence[PolicyDefinitionInfo]:
946
699
  ...
@@ -965,67 +718,12 @@ class PolicyDefinitionsAPI:
965
718
  def get(self, type: Type[DeviceAccessIPv6Policy]) -> DataSequence[PolicyDefinitionInfo]:
966
719
  ...
967
720
 
968
- @overload
969
- def get(self, type: Type[AppRoutePolicy]) -> DataSequence[PolicyDefinitionInfo]:
970
- ...
971
-
972
- @overload
973
- def get(self, type: Type[FxoPortPolicy]) -> DataSequence[PolicyDefinitionInfo]:
974
- ...
975
-
976
- @overload
977
- def get(self, type: Type[FxsPortPolicy]) -> DataSequence[PolicyDefinitionInfo]:
978
- ...
979
-
980
- @overload
981
- def get(self, type: Type[FxsDidPortPolicy]) -> DataSequence[PolicyDefinitionInfo]:
982
- ...
983
-
984
- @overload
985
- def get(self, type: Type[DialPeerPolicy]) -> DataSequence[PolicyDefinitionInfo]:
986
- ...
987
-
988
- @overload
989
- def get(self, type: Type[PriIsdnPortPolicy]) -> DataSequence[PolicyDefinitionInfo]:
990
- ...
991
-
992
- @overload
993
- def get(self, type: Type[SrstPhoneProfilePolicy]) -> DataSequence[PolicyDefinitionInfo]:
994
- ...
995
-
996
721
  # get by id
997
- @overload
998
- def get(self, type: Type[IntrusionPreventionPolicy], id: UUID) -> IntrusionPreventionPolicyGetResponse:
999
- ...
1000
722
 
1001
723
  @overload
1002
724
  def get(self, type: Type[TrafficDataPolicy], id: UUID) -> TrafficDataPolicyGetResponse:
1003
725
  ...
1004
726
 
1005
- @overload
1006
- def get(self, type: Type[UrlFilteringPolicy], id: UUID) -> UrlFilteringPolicyGetResponse:
1007
- ...
1008
-
1009
- @overload
1010
- def get(self, type: Type[AdvancedInspectionProfilePolicy], id: UUID) -> AdvancedInspectionProfilePolicyGetResponse:
1011
- ...
1012
-
1013
- @overload
1014
- def get(self, type: Type[AdvancedMalwareProtectionPolicy], id: UUID) -> AdvancedMalwareProtectionPolicyGetResponse:
1015
- ...
1016
-
1017
- @overload
1018
- def get(self, type: Type[CflowdPolicy], id: UUID) -> CflowdPolicyGetResponse:
1019
- ...
1020
-
1021
- @overload
1022
- def get(self, type: Type[DnsSecurityPolicy], id: UUID) -> DnsSecurityPolicyGetResponse:
1023
- ...
1024
-
1025
- @overload
1026
- def get(self, type: Type[RoutePolicy], id: UUID) -> RoutePolicyGetResponse:
1027
- ...
1028
-
1029
727
  @overload
1030
728
  def get(self, type: Type[RuleSet], id: UUID) -> RuleSetGetResponse:
1031
729
  ...
@@ -1034,14 +732,6 @@ class PolicyDefinitionsAPI:
1034
732
  def get(self, type: Type[SecurityGroup], id: UUID) -> SecurityGroupGetResponse:
1035
733
  ...
1036
734
 
1037
- @overload
1038
- def get(self, type: Type[SslDecryptionPolicy], id: UUID) -> SslDecryptionPolicyGetResponse:
1039
- ...
1040
-
1041
- @overload
1042
- def get(self, type: Type[SslDecryptionUtdProfilePolicy], id: UUID) -> SslDecryptionUtdProfilePolicyGetResponse:
1043
- ...
1044
-
1045
735
  @overload
1046
736
  def get(self, type: Type[ZoneBasedFWPolicy], id: UUID) -> ZoneBasedFWPolicyGetResponse:
1047
737
  ...
@@ -1062,10 +752,6 @@ class PolicyDefinitionsAPI:
1062
752
  def get(self, type: Type[VPNMembershipPolicy], id: UUID) -> VPNMembershipPolicyGetResponse:
1063
753
  ...
1064
754
 
1065
- @overload
1066
- def get(self, type: Type[VPNQoSMapPolicy], id: UUID) -> VPNMembershipPolicyGetResponse:
1067
- ...
1068
-
1069
755
  @overload
1070
756
  def get(self, type: Type[HubAndSpokePolicy], id: UUID) -> HubAndSpokePolicyGetResponse:
1071
757
  ...
@@ -1090,51 +776,12 @@ class PolicyDefinitionsAPI:
1090
776
  def get(self, type: Type[DeviceAccessIPv6Policy], id: UUID) -> DeviceAccessIPv6PolicyGetResponse:
1091
777
  ...
1092
778
 
1093
- @overload
1094
- def get(self, type: Type[AppRoutePolicy], id: UUID) -> AppRoutePolicyGetResponse:
1095
- ...
1096
-
1097
- @overload
1098
- def get(self, type: Type[FxoPortPolicy], id: UUID) -> FxoPortPolicyGetResponse:
1099
- ...
1100
-
1101
- @overload
1102
- def get(self, type: Type[FxsPortPolicy], id: UUID) -> FxsPortPolicyGetResponse:
1103
- ...
1104
-
1105
- @overload
1106
- def get(self, type: Type[FxsDidPortPolicy], id: UUID) -> FxsDidPortPolicyGetResponse:
1107
- ...
1108
-
1109
- @overload
1110
- def get(self, type: Type[DialPeerPolicy], id: UUID) -> DialPeerPolicyGetResponse:
1111
- ...
1112
-
1113
- @overload
1114
- def get(self, type: Type[PriIsdnPortPolicy], id: UUID) -> PriIsdnPortPolicyGetResponse:
1115
- ...
1116
-
1117
- @overload
1118
- def get(self, type: Type[SrstPhoneProfilePolicy], id: UUID) -> SrstPhoneProfilePolicyGetResponse:
1119
- ...
1120
-
1121
779
  def get(self, type: Type[AnyPolicyDefinition], id: Optional[UUID] = None) -> Any:
1122
780
  endpoints = self.__get_definition_endpoints_instance(type)
1123
781
  if id is not None:
1124
782
  return endpoints.get_policy_definition(id=id)
1125
783
  return endpoints.get_definitions()
1126
784
 
1127
- def get_all(self) -> List[Tuple[type, PolicyDefinitionInfo]]:
1128
- all_items: List[Tuple[type, PolicyDefinitionInfo]] = []
1129
- for definition_type, _ in POLICY_DEFINITION_ENDPOINTS_MAP.items():
1130
- try:
1131
- all_items.extend([(definition_type, info) for info in self.get(definition_type)])
1132
- except ValidationError as e:
1133
- self._session.logger.error(
1134
- f"Multiple {definition_type} items discarded because of validation error {e}"
1135
- )
1136
- return all_items
1137
-
1138
785
 
1139
786
  class PolicyAPI:
1140
787
  """This is exposing so called 'UX 1.0' API"""
@@ -1142,11 +789,10 @@ class PolicyAPI:
1142
789
  def __init__(self, session: ManagerSession):
1143
790
  self._session = session
1144
791
  self.centralized = CentralizedPolicyAPI(session)
1145
- self.definitions = PolicyDefinitionsAPI(session)
1146
- self.lists = PolicyListsAPI(session)
1147
792
  self.localized = LocalizedPolicyAPI(session)
1148
793
  self.security = SecurityPolicyAPI(session)
1149
- self.voice = VoicePolicyAPI(session)
794
+ self.definitions = PolicyDefinitionsAPI(session)
795
+ self.lists = PolicyListsAPI(session)
1150
796
 
1151
797
  def delete_any(self, _type: Any, id: UUID) -> None:
1152
798
  if issubclass(_type, PolicyListBase):