1. Help Hub
  2. Using PebblePad
  3. LTi with Moodle

Install Moodle LTI

Follow the end-to-end installation guide for the PebblePad LTI with Moodle for global administrators to integrate the platforms together, as recommended.






Installation is not self-serve. To initiate, request support from a PebblePad Integration engineer.
Please complete this process in the same web session for the browser to correctly authenticate the set-up.



Moodle Version


This guide is for Moodle 4.2.



Moodle 4.1 Moodle 4.3Moodle 4.5
Set-up and functionality match Moodle 4.2. Continue as guided.






1. Whitelist domain


  1. Log in to your PebblePad with an administrator account.
  2. From the Pebble+ burger menu, choose Additional services > Administration.
  3. Click the Settings tab.
  4. In the General panel, tick Content Security Policy header.
  5. Click Update to save the page.
  6. Return to Content Security Policy header,
  7. Add your Moodle URL - must end with /
  8. Click Update to save the page.






2. Add external tool


  1. Log in to Moodle with an administration account.
  2. From the main menu, click Site Administration and choose Plugins.
  3. In the Activity Modules panel, beneath External tools, click Manage tools.
  4. Click Configure a tool manually.
  5. Complete the fields using the information in the table below.
  6. Click Save.


Tool namePebblePad LTI 1.3
Tool URLhttps://LocationServer/login/openid/redirect
LTI VersionLTI 1.3
Public key typeKeyset URL
Public key sethttps://LocationServer/login/OrgURL/.well-known/jwks.json
Initiate login URLhttps://LocationServer/login/openid/authorise
Redirection URI(s)https://LocationServer/login/openid/redirect
Customer Parameterspebble_username=$User.username
Tool configuration usageShow as preconfigured tool when adding an external tool
Default launch containerNew Window
Supports Deep Linking✓
Content Selection URLBlank
Icon URL (within show more...)https://resources.pebblepad.co.uk/hubfs/Full%20colour%20iconPebblePad.png

Services
IMS LTI Assignment and Grade ServicesUse this service for grade sync and column management
IMS LTI Names and Role ProvisioningUse this service to retrieve members' information as per privacy settings
Tool SettingsUse this service

Privacy
Share launcher's name with toolAlways
Share launcher's email with toolAlways
Accept graders from the toolAs specified in Deep Lining definition or Delegate to teacher
Force SSLUnticked



Where indicated, replace LocationServer with the domain for your geographical area:


Test (all regions)lti1p3.apptest.pebblepad.com
AU Productionlti1p3.pebblepad.com.au
CA Productionlti1p3.pebblepad.ca
UK Productionlti1p3.pebblepad.co.uk
US Productionlti1p3.pebblepad.com


Your OrgURL is found in your installation's URL, e.g. https://apptest.pebblepad.com/login/abcde






3. Note tool details


  1. From the new PebblePad LTI 1.3 tile, click the list icon.
  2. From the modal, copy the tool details.
  3. Paste somewhere safe - to be used in stage 10.






4. Create service account


For authentication, the API requires a user account with administration permissions. We recommend using a dedicated service user account.


  • Follow the Moodle guide to create a user (opens in new tab).
  • Assign the account with the following permissions (as minumum).


moodle/user:update

moodle/user:viewalldetails

moodle/user:viewhiddendetails
moodle/grade:edit
gradereport/user:view
moodle/course:managegroups
moodle/course:useremail
moodle/course:view
moodle/course:viewhiddencourses
moodle/course:viewparticipants
moodle/user:viewdetails
mod/lti:view
moodle/site:accessallgroups
moodle/site:viewfullnames






5. Set up API 


  1. Log in to Moodle with the dedicated service account.
  2. From the main menu, click Site Administration and choose Server.
  3. Click Web Services.
  4. Click External Services and click Add
  5. Complete the fields using the information in the table below.
  6. Click Add service.


NamePebblePad LTI 1.3
Short namelti1p3
Enabled✓
Authorised users only✓






6. Add functions


The Add functions page will open for the new PebblePad LTI 1.3 service.


  • In Name field, add the following functions - copy and paste into the search field.


core_enrol_get_enrolled_users
core_grades_update_grades
core_group_get_course_groups
core_group_get_groups
core_group_get_group_members
gradereport_user_get_grade_items
mod_lti_get_ltis_by_courses






7. Add authorised user


  1. Return to External services.
  2. From the new PebblePad LTI service, click Authorise Users.
  3. In the Not Authorised list, find the service account user
  4. Click the user and Add to the Authorised list.






8. Enable protocols


  1. Return to Web Services.
  2. Click Enable Protocols.
  3. Confirm REST Protocol is present, has a version number, and is enabled.
  4. Return to Web Services.
  5. Click Manage Tokens and Create token.
  6. Complete the fields using the information in the table below.
  7. Click Save changes.



User[Your service account user]
ServicePebblePad LTI 1.3






9. Set up API in PebblePad


  1. Log in to your PebblePad with an administrator account.
  2. From the Pebble+ burger menu, choose Additional services > Administration.
  3. Click Integrations and Moodle from the sub menu.
  4. Complete the fields using the information in the table below.
  5. Click Save.


Moodle's location[Your Moodle URL] - must end with /
Moodle's Service Namelti1p3
Username[Your service account username]
Password[Your service account password]






10. Contact PebblePad Helpdesk


For the PebblePad Integration Engineer to authenticate the integration, provide them with:


  • Set-up Stage
  • Platform ID
  • Client ID
  • Deployment ID
  • Public keyset URL
  • Access Token URL
  • Authentication request URL



To run an end-to-end user test, follow the workspace manager's guide to creating a Moodle-linked assignment.

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article