This guide covers the first stage of how to set up Canvas with a new LTI Key for the PebblePad integration.


STEP-BY-STEP



The installation of this integration is not fully self-serve and requires the assistance of a PebblePad Implementation Engineer. Before starting, please read the overview page and make contact with the PebblePad Helpdesk to schedule a co-ordinated project. Starting unassisted may risk breaking an existing integration and/or delays in support.




Open video full screen




1: Login to Canvas

Login to your Canvas install using an account with Administrator permissions.


2: Access Admin

Locate and select the Admin section in the (left hand) main menu.


3: Open Developer Keys

From the sub-menu, select the Developer Keys.


4: Add new Developer Key

From the +Developer Key button (top right) select LTI Key.


5: Add LTI Key details

Add the following information (relative to your region):


SETTINGVALUE
Key NamePebblePad
Owner email[your email address]

Redirect URIs

- TAQAS Staging (all locations) https://lti1p3.apptest.pebblepad.com/login/openid/redirect
- Australia (production)https://lti1p3.pebblepad.com.au/login/openid/redirect
- Canada (production)https://lti1p3.pebblepad.ca/login/openid/redirect
- UK (production)https://lti1p3.pebblepad.co.uk/login/openid/redirect
- UShttps://lti1p3.pebblepad.com/login/openid/redirect


6: Paste JSON code

Copy from below the JSON code for your region. In Canvas, for Method choose Paste JSON, and add the code into the text area.




7: Replace Organisation ID

  • From the URL used to login to your PebblePad install, locate your Organisation ID
  • Within the JSON code, find {Organisation ID} and replace with your ID.
  • Save to exit

Example Organisation ID:
Where the login URL is: https://lti1p3.pebblepad.com/login/abcde
Organisation ID is: abcde


8: Turn On Tool

Using the toggle, turn on the status of the Developer Key.


9: Copy Client ID

Copy the Client ID from the Details column - you'll need this to complete stage 2 of the integration set-up.



Stage 2 - Add PebblePad App >





JSON for Test (TAQAS)


{
    "title": "PebblePad",
    "scopes": [
        "https://purl.imsglobal.org/spec/lti-ags/scope/score",
        "https://purl.imsglobal.org/spec/lti-nrps/scope/contextmembership.readonly"
    ],
    "extensions": [
        {
            "domain": "lti1p3.apptest.pebblepad.com",
            "tool_id": "pebblepad",
            "platform": "canvas.instructure.com",
            "settings": {
                "text": "PebblePad LTI 1.3",
                "icon_url": "https://tinyurl.com/ppplus",
                "platform": "canvas.instructure.com",
                "placements": [
                    {
                        "text": "PebblePad ATLAS LTI 1.3",
                        "enabled": true,
                        "icon_url": "https://tinyurl.com/ppatlas",
                        "placement": "assignment_selection",
                        "message_type": "LtiResourceLinkRequest",
                        "target_link_uri": "https://lti1p3.apptest.pebblepad.com/login/openid/redirect"
                    },
                    {
                        "text": "PebblePad Resources LTI 1.3",
                        "enabled": true,
                        "placement": "editor_button",
                        "message_type": "LtiDeepLinkingRequest",
                        "target_link_uri": "https://lti1p3.apptest.pebblepad.com/login/openid/redirect"
                    },
                    {
                        "enabled": true,
                        "placement": "course_navigation",
                        "message_type": "LtiResourceLinkRequest",
                        "windowTarget": "_blank",
                        "target_link_uri": "https://lti1p3.apptest.pebblepad.com/login/openid/redirect"
                    }
                ],
                "selection_width": 800,
                "selection_height": 600
            },
            "privacy_level": "public"
        }
    ],
    "public_jwk": {},
    "description": "PebblePad",
    "custom_fields": {
        "canvas_user_id": "$Canvas.user.id",
        "canvas_course_id": "$Canvas.course.id",
        "canvas_account_id": "$Canvas.account.id",
        "canvas_api_domain": "$Canvas.api.baseUrl",
        "canvas_assignment_id": "$Canvas.assignment.id",
        "canvas_user_login_id": "$User.username",
        "lis_person_name_full": "$Person.name.full",
        "lis_person_name_given": "$Person.name.given",
        "custom_pebble_username": "$Canvas.user.loginId",
        "lis_person_name_family": "$Person.name.family",
        "lis_person_contact_email_primary": "$Person.email.primary"
    },
    "privacy_level": "public",
    "public_jwk_url": "https://lti1p3.apptest.pebblepad.com/login/{Organisation ID}/.well-known/jwks.json",
    "target_link_uri": "https://lti1p3.apptest.pebblepad.com/login/openid/redirect",
    "oidc_initiation_url": "https://lti1p3.apptest.pebblepad.com/login/openid/authorise"
}

JSON for Australia

{
    "title": "PebblePad",
    "scopes": [
        "https://purl.imsglobal.org/spec/lti-ags/scope/score",
        "https://purl.imsglobal.org/spec/lti-nrps/scope/contextmembership.readonly"
    ],
    "extensions": [
        {
            "domain": "lti1p3.pebblepad.com.au",
            "tool_id": "pebblepad",
            "platform": "canvas.instructure.com",
            "settings": {
                "text": "PebblePad LTI 1.3",
                "icon_url": "https://tinyurl.com/ppplus",
                "platform": "canvas.instructure.com",
                "placements": [
                    {
                        "text": "PebblePad ATLAS LTI 1.3",
                        "enabled": true,
                        "icon_url": "https://tinyurl.com/ppatlas",
                        "placement": "assignment_selection",
                        "message_type": "LtiResourceLinkRequest",
                        "target_link_uri": "https://lti1p3.pebblepad.com.au/login/openid/redirect"
                    },
                    {
                        "text": "PebblePad Resources LTI 1.3",
                        "enabled": true,
                        "placement": "editor_button",
                        "message_type": "LtiDeepLinkingRequest",
                        "target_link_uri": "https://lti1p3.pebblepad.com.au/login/openid/redirect"
                    },
                    {
                        "enabled": true,
                        "placement": "course_navigation",
                        "message_type": "LtiResourceLinkRequest",
                        "windowTarget": "_blank",
                        "target_link_uri": "https://lti1p3.pebblepad.com.au/login/openid/redirect"
                    }
                ],
                "selection_width": 800,
                "selection_height": 600
            },
            "privacy_level": "public"
        }
    ],
    "public_jwk": {},
    "description": "PebblePad",
    "custom_fields": {
        "canvas_user_id": "$Canvas.user.id",
        "canvas_course_id": "$Canvas.course.id",
        "canvas_account_id": "$Canvas.account.id",
        "canvas_api_domain": "$Canvas.api.baseUrl",
        "canvas_assignment_id": "$Canvas.assignment.id",
        "canvas_user_login_id": "$User.username",
        "lis_person_name_full": "$Person.name.full",
        "lis_person_name_given": "$Person.name.given",
        "custom_pebble_username": "$Canvas.user.loginId",
        "lis_person_name_family": "$Person.name.family",
        "lis_person_contact_email_primary": "$Person.email.primary"
    },
    "privacy_level": "public",
    "public_jwk_url": "https://lti1p3.pebblepad.com.au/login/{Organisation ID}/.well-known/jwks.json",
    "target_link_uri": "https://lti1p3.pebblepad.com.au/login/openid/redirect",
    "oidc_initiation_url": "https://lti1p3.pebblepad.com.au/login/openid/authorise"
}


JSON for Canada

{
    "title": "PebblePad",
    "scopes": [
        "https://purl.imsglobal.org/spec/lti-ags/scope/score",
        "https://purl.imsglobal.org/spec/lti-nrps/scope/contextmembership.readonly"
    ],
    "extensions": [
        {
            "domain": "lti1p3.pebblepad.ca",
            "tool_id": "pebblepad",
            "platform": "canvas.instructure.com",
            "settings": {
                "text": "PebblePad LTI 1.3",
                "icon_url": "https://tinyurl.com/ppplus",
                "platform": "canvas.instructure.com",
                "placements": [
                    {
                        "text": "PebblePad ATLAS LTI 1.3",
                        "enabled": true,
                        "icon_url": "https://tinyurl.com/ppatlas",
                        "placement": "assignment_selection",
                        "message_type": "LtiResourceLinkRequest",
                        "target_link_uri": "https://lti1p3.pebblepad.ca/login/openid/redirect"
                    },
                    {
                        "text": "PebblePad Resources LTI 1.3",
                        "enabled": true,
                        "placement": "editor_button",
                        "message_type": "LtiDeepLinkingRequest",
                        "target_link_uri": "https://lti1p3.pebblepad.ca/login/openid/redirect"
                    },
                    {
                        "enabled": true,
                        "placement": "course_navigation",
                        "message_type": "LtiResourceLinkRequest",
                        "windowTarget": "_blank",
                        "target_link_uri": "https://lti1p3.pebblepad.ca/login/openid/redirect"
                    }
                ],
                "selection_width": 800,
                "selection_height": 600
            },
            "privacy_level": "public"
        }
    ],
    "public_jwk": {},
    "description": "PebblePad",
    "custom_fields": {
        "canvas_user_id": "$Canvas.user.id",
        "canvas_course_id": "$Canvas.course.id",
        "canvas_account_id": "$Canvas.account.id",
        "canvas_api_domain": "$Canvas.api.baseUrl",
        "canvas_assignment_id": "$Canvas.assignment.id",
        "canvas_user_login_id": "$User.username",
        "lis_person_name_full": "$Person.name.full",
        "lis_person_name_given": "$Person.name.given",
        "custom_pebble_username": "$Canvas.user.loginId",
        "lis_person_name_family": "$Person.name.family",
        "lis_person_contact_email_primary": "$Person.email.primary"
    },
    "privacy_level": "public",
    "public_jwk_url": "https://lti1p3.pebblepad.ca/login/{Organisation ID}/.well-known/jwks.json",
    "target_link_uri": "https://lti1p3.pebblepad.ca/login/openid/redirect",
    "oidc_initiation_url": "https://lti1p3.pebblepad.ca/login/openid/authorise"
}




JSON for UK


{
    "title": "PebblePad",
    "scopes": [
        "https://purl.imsglobal.org/spec/lti-ags/scope/score",
        "https://purl.imsglobal.org/spec/lti-nrps/scope/contextmembership.readonly"
    ],
    "extensions": [
        {
            "domain": "lti1p3.pebblepad.co.uk",
            "tool_id": "pebblepad",
            "platform": "canvas.instructure.com",
            "settings": {
                "text": "PebblePad LTI 1.3",
                "icon_url": "https://tinyurl.com/ppplus",
                "platform": "canvas.instructure.com",
                "placements": [
                    {
                        "text": "PebblePad ATLAS LTI 1.3",
                        "enabled": true,
                        "icon_url": "https://tinyurl.com/ppatlas",
                        "placement": "assignment_selection",
                        "message_type": "LtiResourceLinkRequest",
                        "target_link_uri": "https://lti1p3.pebblepad.co.uk/login/openid/redirect"
                    },
                    {
                        "text": "PebblePad Resources LTI 1.3",
                        "enabled": true,
                        "placement": "editor_button",
                        "message_type": "LtiDeepLinkingRequest",
                        "target_link_uri": "https://lti1p3.pebblepad.co.uk/login/openid/redirect"
                    },
                    {
                        "enabled": true,
                        "placement": "course_navigation",
                        "message_type": "LtiResourceLinkRequest",
                        "windowTarget": "_blank",
                        "target_link_uri": "https://lti1p3.pebblepad.co.uk/login/openid/redirect"
                    }
                ],
                "selection_width": 800,
                "selection_height": 600
            },
            "privacy_level": "public"
        }
    ],
    "public_jwk": {},
    "description": "PebblePad",
    "custom_fields": {
        "canvas_user_id": "$Canvas.user.id",
        "canvas_course_id": "$Canvas.course.id",
        "canvas_account_id": "$Canvas.account.id",
        "canvas_api_domain": "$Canvas.api.baseUrl",
        "canvas_assignment_id": "$Canvas.assignment.id",
        "canvas_user_login_id": "$User.username",
        "lis_person_name_full": "$Person.name.full",
        "lis_person_name_given": "$Person.name.given",
        "custom_pebble_username": "$Canvas.user.loginId",
        "lis_person_name_family": "$Person.name.family",
        "lis_person_contact_email_primary": "$Person.email.primary"
    },
    "privacy_level": "public",
    "public_jwk_url": "https://lti1p3.pebblepad.co.uk/login/{Organisation ID}/.well-known/jwks.json",
    "target_link_uri": "https://lti1p3.pebblepad.co.uk/login/openid/redirect",
    "oidc_initiation_url": "https://lti1p3.pebblepad.co.uk/login/openid/authorise"
}


JSON for US


{
    "title": "PebblePad",
    "scopes": [
        "https://purl.imsglobal.org/spec/lti-ags/scope/score",
        "https://purl.imsglobal.org/spec/lti-nrps/scope/contextmembership.readonly"
    ],
    "extensions": [
        {
            "domain": "lti1p3.pebblepad.com",
            "tool_id": "pebblepad",
            "platform": "canvas.instructure.com",
            "settings": {
                "text": "PebblePad LTI 1.3",
                "icon_url": "https://tinyurl.com/ppplus",
                "platform": "canvas.instructure.com",
                "placements": [
                    {
                        "text": "PebblePad ATLAS LTI 1.3",
                        "enabled": true,
                        "icon_url": "https://tinyurl.com/ppatlas",
                        "placement": "assignment_selection",
                        "message_type": "LtiResourceLinkRequest",
                        "target_link_uri": "https://lti1p3.pebblepad.com/login/openid/redirect"
                    },
                    {
                        "text": "PebblePad Resources LTI 1.3",
                        "enabled": true,
                        "placement": "editor_button",
                        "message_type": "LtiDeepLinkingRequest",
                        "target_link_uri": "https://lti1p3.pebblepad.com/login/openid/redirect"
                    },
                    {
                        "enabled": true,
                        "placement": "course_navigation",
                        "message_type": "LtiResourceLinkRequest",
                        "windowTarget": "_blank",
                        "target_link_uri": "https://lti1p3.pebblepad.com/login/openid/redirect"
                    }
                ],
                "selection_width": 800,
                "selection_height": 600
            },
            "privacy_level": "public"
        }
    ],
    "public_jwk": {},
    "description": "PebblePad",
    "custom_fields": {
        "canvas_user_id": "$Canvas.user.id",
        "canvas_course_id": "$Canvas.course.id",
        "canvas_account_id": "$Canvas.account.id",
        "canvas_api_domain": "$Canvas.api.baseUrl",
        "canvas_assignment_id": "$Canvas.assignment.id",
        "canvas_user_login_id": "$User.username",
        "lis_person_name_full": "$Person.name.full",
        "lis_person_name_given": "$Person.name.given",
        "custom_pebble_username": "$Canvas.user.loginId",
        "lis_person_name_family": "$Person.name.family",
        "lis_person_contact_email_primary": "$Person.email.primary"
    },
    "privacy_level": "public",
    "public_jwk_url": "https://lti1p3.pebblepad.com/login/{Organisation ID}/.well-known/jwks.json",
    "target_link_uri": "https://lti1p3.pebblepad.com/login/openid/redirect",
    "oidc_initiation_url": "https://lti1p3.pebblepad.com/login/openid/authorise"
}