@bertscjn1
This type of report is one that I've seen requested for a long time in the Community. When building the report based on APIs you will need to define what usage you care about and keep in mind that some usage is easier to track than others and may vary based on the LTI itself. Here are some examples:
- Check what tools are installed and where
- This is available through the account level report and the External Tools API
- Unfortunately, this only lets you know where it is installed and doesn't provide any details on it actually being used.
- Check what tools are enabled on the course navigation
- This is available through the Tabs API
- You won't know if users are actually clicking the course link through this though.
- Be cautious about how you analyze the "usage" of this when it comes to tools that are defaulted to be enabled on the course navigation.
- Check what tools are used as an external tool submission type for assignments
- Check what tools are linked in modules
If you use LockDown Browser or a similar tool, you may also be able to determine this information through the Quizzes API. I would need to test if the information is provided through the New Quizzes API since I haven't tried it out yet. Nonetheless, I believe I was able to find some of the LockDown Browser information for New Quizzes through the Assignments API response.
If you are using the Turnitin Plagiarism Framework, someone shared a solution for how to check if it is enabled on an assignment: Listing Canvas Plagiarism Framework Assignments
Additional usage like embedded content may be possible to discover depending on how the LTI embeds the content, but it will take your reports significantly longer to run in order to analyze all the areas where content could be embedded from an LTI (announcements, discussions, pages, assignments, quiz questions).
When I built a report, I was inspired by what @nardell shared in Find external tool usage in course shells. Some users also suggest using Canvas Data for this type of report. I saw a comment from @robotcars on the post with some example SQL queries, but these may need to be updated for Canvas Data 2.