xAPI with LTI tools

Canvas has implemented a small piece of xAPI (Tin Can API). Go here to learn more about xAPI.

An external tool can ask for an xAPI callback URL, and then POST back an interaction activity to Canvas. This will update the activity time for the user in Canvas, and add a page view for that tool. Page views will show up in the course analytics section as activity.


Here is an example of the minimum JSON that would log 3 minutes of activity for http://example.com:

  "id": "12345678-1234-5678-1234-567812345678",
  "actor": {
    "account": {
      "homePage": "http://www.instructure.com/",
      "name": "unique_name_for_user_of_some_kind_maybe_lti_user_id"
  "verb": {
    "id": "http://adlnet.gov/expapi/verbs/interacted",
    "display": {
      "en-US": "interacted"
  "object": {
    "id": "http://example.com/"
  "result": {
    "duration": "PT3M0S"