Added
- `Watchlists` and `UserRiskProfile` clients
- These features replace the `DetectionLists` client as well as its `DepartingEmployee` and `HighRiskEmployee` services. All related classes and methods have been marked as deprecated and will raise deprecation warnings.
- `Watchlists` client includes the following methods:
- `get()`
- `delete()`
- `get_all()`
- `create()`
- `get_all_included_users()`
- `add_included_users_by_watchlist_id()`
- `add_included_users_by_watchlist_type()`
- `remove_included_users_by_watchlist_id()`
- `remove_included_users_by_watchlist_type()`
- `get_all_watchlist_members()`
- `get_watchlist_member()`
- `UserRiskProfile` client includes the following methods:
- `get_by_id()`
- `get_by_username()`
- `update()`
- `get_page()`
- `get_all()`
- `add_cloud_aliases()`
- `delete_cloud_aliases()`
- `sdk.devices.upgrade()` to instruct the Code42 cloud to upgrade an individual device to the latest available version.
- `sdk.archive.stream_from_backup()` and `sdk.archive.stream_to_device()` methods now accept an optional `backup_set_id` parameter to identify which backup set to restore from (only applicable to V3 archives).
Fixed
- Bug where attempting to restore from an empty archive would throw a confusing `TypeError`, we now raise appropriate `Py42ArchiveFileNotFoundError`.
- Py42 now automatically sleeps and retries file event search queries if a 429 (too many requests) error is hit.
Deprecated
- The `DetectionLists` client including its `DepartingEmployee` and `HighRiskEmployee` services.