zscaler-sdk-python 0.6.0__tar.gz → 0.6.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/PKG-INFO +1 -1
  2. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/pyproject.toml +1 -1
  3. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/__init__.py +1 -1
  4. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/isolation_profile.py +1 -2
  5. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/locations.py +60 -8
  6. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/client.py +1 -1
  7. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/LICENSE.md +0 -0
  8. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/README.md +0 -0
  9. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/cache/__init__.py +0 -0
  10. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/cache/cache.py +0 -0
  11. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/cache/no_op_cache.py +0 -0
  12. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/cache/zscaler_cache.py +0 -0
  13. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/constants.py +0 -0
  14. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/errors/__init__.py +0 -0
  15. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/errors/error.py +0 -0
  16. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/errors/http_error.py +0 -0
  17. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/errors/zscaler_api_error.py +0 -0
  18. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/exceptions/__init__.py +0 -0
  19. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/exceptions/exceptions.py +0 -0
  20. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/logger.py +0 -0
  21. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/ratelimiter/__init__.py +0 -0
  22. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/ratelimiter/ratelimiter.py +0 -0
  23. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/user_agent.py +0 -0
  24. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/utils.py +0 -0
  25. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zdx/__init__.py +0 -0
  26. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zdx/admin.py +0 -0
  27. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zdx/alerts.py +0 -0
  28. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zdx/apps.py +0 -0
  29. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zdx/devices.py +0 -0
  30. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zdx/filters.py +0 -0
  31. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zdx/inventory.py +0 -0
  32. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zdx/troubleshooting.py +0 -0
  33. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zdx/users.py +0 -0
  34. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zdx/zdx_client.py +0 -0
  35. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/__init__.py +0 -0
  36. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/activate.py +0 -0
  37. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/admin_and_role_management.py +0 -0
  38. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/apptotal.py +0 -0
  39. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/audit_logs.py +0 -0
  40. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/authentication_settings.py +0 -0
  41. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/client.py +0 -0
  42. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/cloud_apps.py +0 -0
  43. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/device_management.py +0 -0
  44. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/dlp.py +0 -0
  45. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/errors.py +0 -0
  46. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/firewall.py +0 -0
  47. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/forwarding_control.py +0 -0
  48. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/labels.py +0 -0
  49. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/sandbox.py +0 -0
  50. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/security.py +0 -0
  51. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/ssl_inspection.py +0 -0
  52. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/traffic.py +0 -0
  53. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/url_categories.py +0 -0
  54. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/url_filtering.py +0 -0
  55. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/users.py +0 -0
  56. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/web_dlp.py +0 -0
  57. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/workload_groups.py +0 -0
  58. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zia/zpa_gateway.py +0 -0
  59. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/README.md +0 -0
  60. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/__init__.py +0 -0
  61. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/app_segments.py +0 -0
  62. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/app_segments_inspection.py +0 -0
  63. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/app_segments_pra.py +0 -0
  64. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/authdomains.py +0 -0
  65. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/certificates.py +0 -0
  66. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/cloud_connector_groups.py +0 -0
  67. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/connectors.py +0 -0
  68. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/emergency_access.py +0 -0
  69. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/errors.py +0 -0
  70. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/idp.py +0 -0
  71. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/inspection.py +0 -0
  72. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/isolation.py +0 -0
  73. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/lss.py +0 -0
  74. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/machine_groups.py +0 -0
  75. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/microtenants.py +0 -0
  76. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/policies.py +0 -0
  77. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/posture_profiles.py +0 -0
  78. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/privileged_remote_access.py +0 -0
  79. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/provisioning.py +0 -0
  80. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/saml_attributes.py +0 -0
  81. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/scim_attributes.py +0 -0
  82. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/scim_groups.py +0 -0
  83. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/segment_groups.py +0 -0
  84. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/server_groups.py +0 -0
  85. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/servers.py +0 -0
  86. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/service_edges.py +0 -0
  87. {zscaler_sdk_python-0.6.0 → zscaler_sdk_python-0.6.1}/zscaler/zpa/trusted_networks.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: zscaler-sdk-python
3
- Version: 0.6.0
3
+ Version: 0.6.1
4
4
  Summary: Official Python SDK for the Zscaler Products (Beta)
5
5
  Home-page: https://github.com/zscaler/zscaler-sdk-python
6
6
  License: MIT
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "zscaler-sdk-python"
3
- version = "0.6.0"
3
+ version = "0.6.1"
4
4
  description = "Official Python SDK for the Zscaler Products (Beta)"
5
5
  authors = ["Zscaler, Inc. <devrel@zscaler.com>"]
6
6
  license = "MIT"
@@ -29,7 +29,7 @@ __license__ = "MIT"
29
29
  __contributors__ = [
30
30
  "William Guilherme",
31
31
  ]
32
- __version__ = "0.6.0"
32
+ __version__ = "0.6.1"
33
33
 
34
34
  from zscaler.zia import ZIAClientHelper # noqa
35
35
  from zscaler.zpa import ZPAClientHelper # noqa
@@ -39,8 +39,7 @@ class IsolationProfileAPI:
39
39
  >>> isolation_profiles = zia.isolation_profiles.list_isolation_profiles()
40
40
 
41
41
  """
42
- payload = {snake_to_camel(key): value for key, value in kwargs.items()}
43
- return self.rest.get("browserIsolation/profiles", json=payload)
42
+ return self.rest.get("browserIsolation/profiles")
44
43
 
45
44
  def get_profiles_by_name(self, name: str):
46
45
  """
@@ -462,7 +462,28 @@ class LocationsAPI:
462
462
  """
463
463
  return self.rest.delete(f"locations/{location_id}").status_code
464
464
 
465
- def list_location_groups(self, **kwargs) -> BoxList:
465
+ def bulk_delete_locations(self, location_ids: list, **kwargs) -> int:
466
+ """
467
+ Deletes all specified Location Management from ZIA.
468
+
469
+ Args:
470
+ location_ids (list): The list of unique ids for the ZIA Locations that will be deleted.
471
+
472
+ Returns:
473
+ :obj:`int`: The status code for the operation.
474
+
475
+ Examples:
476
+ >>> zia.locations.bulk_delete_locations(['111111', '222222', '333333'])
477
+
478
+ """
479
+ payload = {"ids": location_ids}
480
+ response = self.rest.post("locations/bulkDelete", json=payload).status_code
481
+ if isinstance(response, Response):
482
+ status_code = response.status_code
483
+ raise Exception(f"API call failed with status {status_code}: {response.json()}")
484
+ return response
485
+
486
+ def list_location_groups(self) -> BoxList:
466
487
  """
467
488
  Return a list of location groups in ZIA.
468
489
 
@@ -479,8 +500,7 @@ class LocationsAPI:
479
500
  Get a list of all configured location groups:
480
501
  >>> location = zia.locations.list_location_groups()
481
502
  """
482
- payload = {snake_to_camel(key): value for key, value in kwargs.items()}
483
- return self.rest.get("locations/groups", json=payload)
503
+ return self.rest.get("locations/groups")
484
504
 
485
505
  def get_location_group_by_id(self, group_id: int) -> Box:
486
506
  """
@@ -515,9 +535,9 @@ class LocationsAPI:
515
535
  >>> location = zia.locations.get_location_group_by_name("Unassigned Locations")
516
536
  """
517
537
  params = {"page": page, "pageSize": page_size, "search": group_name}
518
- return self.rest.get("locations/groups", json=params)
538
+ return self.rest.get("locations/groups", params=params)
519
539
 
520
- def list_location_groups_lite(self, **kwargs) -> BoxList:
540
+ def list_location_groups_lite(self, page: int = 1, page_size: int = 100) -> BoxList:
521
541
  """
522
542
  Returns a list of location groups (lite version) by their ID where only name and ID is returned in ZIA.
523
543
 
@@ -534,8 +554,8 @@ class LocationsAPI:
534
554
  Get a list of all configured location groups:
535
555
  >>> location = zia.locations.list_location_groups_lite()
536
556
  """
537
- payload = {snake_to_camel(key): value for key, value in kwargs.items()}
538
- return self.rest.get("locations/groups/lite", json=payload)
557
+ params = {"page": page, "pageSize": page_size}
558
+ return self.rest.get("locations/groups/lite", params=params)
539
559
 
540
560
  def get_location_group_lite_by_id(self, group_id: int) -> Box:
541
561
  """
@@ -570,7 +590,39 @@ class LocationsAPI:
570
590
  >>> locations = zia.locations.get_location_group_lite_by_name("Unassigned Locations")
571
591
  """
572
592
  params = {"page": page, "pageSize": page_size, "search": group_name}
573
- return self.rest.get("locations/groups/lite", json=params)
593
+ return self.rest.get("locations/groups/lite", params=params)
594
+
595
+ def list_location_groups_count(self, **kwargs) -> BoxList:
596
+ """
597
+ Returns a list of location groups for your organization.
598
+
599
+ Args:
600
+ **kwargs: Optional keyword args.
601
+
602
+ Keyword Args:
603
+ group_type (str): The location group's type (i.e., Static or Dynamic).
604
+ last_mod_user (str): The admin who modified the location group last.
605
+ version (int): The version parameter is for Zscaler internal use only. The version is used by the service for backup operations.
606
+ name (str): The location group's name.
607
+ comments (str): Additional comments or information about the location group.
608
+ location_id (int): The unique identifier for a location within a location group.
609
+
610
+ Returns:
611
+ :obj:`BoxList`: A list of location group resource records.
612
+
613
+ Examples:
614
+ Gets the list of location groups for your organization:
615
+ >>> location = zia.locations.list_location_groups_count(group_type='Static', name='Corporate')
616
+ """
617
+ params = {}
618
+ optional_params = ['group_type', 'last_mod_user', 'version', 'name', 'comments', 'location_id']
619
+
620
+ for key in optional_params:
621
+ if key in kwargs:
622
+ params[key] = kwargs[key]
623
+
624
+ response = self.rest.get("locations/groups/count", params=params)
625
+ return int(response.text)
574
626
 
575
627
  def list_region_geo_coordinates(self, latitude: int, longitude: int) -> Box:
576
628
  """
@@ -57,7 +57,7 @@ class ZPAClient:
57
57
  scim_user_id=None,
58
58
  scim_username=None,
59
59
  page=None,
60
- pagesize=20,
60
+ pagesize=500,
61
61
  microtenant_id=None,
62
62
  ):
63
63
  """