Skip to content

[Enhancement] Add functionality to legal-hold command #176

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
maddie-vargo opened this issue Dec 10, 2020 · 6 comments
Closed

[Enhancement] Add functionality to legal-hold command #176

maddie-vargo opened this issue Dec 10, 2020 · 6 comments
Labels
enhancement New feature or request

Comments

@maddie-vargo
Copy link
Contributor

Summary

The Code42 console does not offer sufficient options for querying legal hold. Technical Services utilizes and maintains a script that allows customer to report on legal hold objects and memberships. A number of these reporting options are already available through the legal-hold cli command; however, some are not.

Paul Hirst, the developer of the script, and I identified the current gaps and separated them into two phases.

Phase I:

  • Devices on Legal Hold
  • Legal Hold Storage by Organization

Phase II:

  • Transactions leveraging LegalHoldEvents endpoint (not currently on roadmap for Audit Log functionality)
  • Allow show to show details for all matters, not just one specified matter

Proposed API

code42cli legal-hold show <matter_id> —-include-devices
—include-devices  View all devices associated with legal hold custodians


code42cli legal-hold show <matter_id> —-include-org-storage
—include-org-storage   View total legal hold storage by organization

code42cli legal-hold events —-begin ‘2020-01-01 00:00’ —end ‘2020-06-01 00:00'
Usage: Fetch legal hold events
--begin  The beginning date range in which to look for events
--end    The end of the date range in which to look for events

Intended Use Case

Environment reporting

@maddie-vargo
Copy link
Contributor Author

maddie-vargo commented Mar 3, 2021

Phase I merged in with PR#192 | Looking to start the conversation on Phase II

LegalHoldEvents

This information is visible in console through the Legal Hold Timeline, but it is neither queryable or exportable. Because this is already visible in console, this has been deprioritized for Audit Log.

The prosed addition is such:

code42cli legal-hold events —-begin ‘2020-01-01 00:00’ —end ‘2020-06-01 00:00'
Usage: Fetch legal hold events
-b, --begin  The beginning date range in which to look for events
-e, --end    The end of the date range in which to look for events
-t, --type   [HoldCreated, HoldDeactivated, HoldReactivated, MembershipCreated, MembershipDeactivated, MembershipReactivated, Restore]
         Limit events to those with the given event type

To accomplish this, we will need to add a method to py42 to gather all events from the LegalHoldEvent resource.

Show details for all matters

This was discussed in PR#192 - the show command is intended to show details on one object while list show the details about many objects. We have added functionality to show all devices on legal hold in the devices command, but there still remains a gap where a customer cannot report on all users on legal hold. Do you have a suggestion for where this would fit? Or if it would be more suited to an extension?

@maddie-vargo
Copy link
Contributor Author

@timabrmsn for input

@timabrmsn
Copy link
Contributor

I think that proposal for legal hold events is good.

For reporting on legal hold users, what types of detail are customers looking for? Or is it just to get a list of all usernames that are currently on legal hold?

@maddie-vargo
Copy link
Contributor Author

Ok. The LegalHoldEvent api requires a very particular ISO date format (e.g. 2021-02-19T10:00:00.000-05:00). Is there any existing date handling in py42 / cli that takes user input to match specific formats?

As for the users, customers care about username, first name, last name.

@kiran-chaudhary
Copy link
Contributor

In Py42 user can specify date in string format yyyy-MM-dd, as a date object or even as an epoch timestamp. There are conversion functions in util module.

@maddie-vargo
Copy link
Contributor Author

PR #264 address the events portion of Phase II.

The remaining item is: Allow show to show details for all matters, not just one specified matter

The details that we wish to show are the user memberships. Issue #259 will add a users command, which may be a reasonable place for legal hold membership reporting (similar to running devices list --include-legal-hold-membership).

If others agree, then we can close this Issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants