Follow the end-to-end installation guide for the PebblePad LTI with Brightspace for global administrators to integrate the platforms together as recommended.
Installation is not self-serve. To initiate, request support from a PebblePad Implementation Engineer.
Location server
In all places where indicated within this guide, replace LocationServer with the domain for your geographical area:
| Test (all regions) | lti1p3.apptest.pebblepad.com |
| AU Production | lti1p3.pebblepad.com.au |
| CA Production | lti1p3.pebblepad.ca |
| UK Production | lti1p3.pebblepad.co.uk |
| US Production | lti1p3.pebblepad.com |
1. Whitelist domain
- Log in to your PebblePad with an administrator account.
- From the Pebble+ main menu, choose Additional services > Administration.
- Click the Settings tab.
- In the General panel, tick Content Security Policy header.
- Click Update to save the page.
- Return to Content Security Policy header, and add https://s.brightspace.com/
- Click Update to save the page.
2. Add external tool
- Log in to Brightspace with an administration account.
- From the Settings cog, click Manage Extensibility
- Click LTI Advantage from the sub menu.
- Click Register Tool.
- Complete the fields using the information in the table below.
- Click Register.
| Tool | Standard |
| Enabled | On |
| Name | PebblePad LTI 1.3 |
| Domain | https://LocationServer |
| Redirect URLs | https://LocationServer/login/openid/redirect |
| OpenID Connect Login URL | https://LocationServer/login/openid/authorise |
| Target Link URI | https://LocationServer/login/openid/redirect |
| Keyset URL | https://LocationServer/login/OrgURL/.well-known/jwks.json |
| Extensions | ✓ Assignment and Grade Services ✓ Deep linking ✓ Names and Role Provisioning Services |
| Roles | ✓ Send Institution Role |
Your OrgURL is in your PebblePad installation URL, e.g:
- https://apptest.pebblepad.com/login/abcde
3. Add new deployment
- From the modal, click View Deployments
- Click New Deployments.
- Complete the fields using the information in the table below.
- (Optional) Tick Add org units, and choose specific departments, courses or modules.
- Click Create Deployment.
| Tool | PebblePad LTI 1.3 | |
| Name | PebblePad Assignment | |
| Description | (Optional) | |
| Security Settings | ✓ Org unit information ✓ User information ✓ Link information ✓ Classlist including user not known to this deployment | |
| Configuration Settings |
| |
| Custom Parameters | Name: pebble_username | Value: $User.username |
4. Add assignment link
- From the modal, click View Links.
- Click New link.
- Complete the fields using the information in the table below.
- Click Save and close.
| Name | PebblePad Assignment |
| URL | https://LocationServer/login/openid/redirect |
| Description | (Optional) |
| Type | Basic Launch |
5. Add resource link
- Click New Link (again)
- Complete the fields using the information in the table below.
- Click Save and close.
| Name | PebblePad Resource Link |
| URL | https://LocationServer/login/openid/redirect |
| Description | (Optional) |
| Type | Deep Linking Quicklink |
6. Set up config variables
This facilitates the sync of course members from Brightspace to ATLAS with accounts created using Username rather than the OrgDefinedID.
- Click the Setting cog, and choose Config Variable Browser.
- In the search, paste d2l.Tools.Classlist.DisplayUsername
- Click the link from the results.
- Click Add value and choose Select Org Unit.
- Choose your org units from the list (local set up specific)
- Click Update.
- For Value, choose On
- Click Save.
7. Create service user account
The API requires authentication from a user account with an administrator role. It is advisable to use a dedicated service account and not a person's actual account.
- From the Settings cog, click Roles and Permissions.
- Click Create/Copy.
- Click Start Fresh.
- Name the role PebblePad API Access
- In General, tick Cascading Role.
- In Course Access Options, tick Access all course groups.
- Click Save.
- In the Edit Role Interactions, tick every box in the Administrator row in all tables on the page.
- Click Save.
- From the role's dropdown menu, click Edit Role Permissions.
- For each permission below, tick the All column (to enable the whole row).
Classlist > Has Access To The Classlist Grades > See the Grades tool Grades > Enter Grades Grades > Manage Grades Grades > Manage Items and Categories Groups and Sections Management > See Groups User Information Privacy > See First Names User Information Privacy > See Last Names User Information Privacy > See Usernames User Information Privacy > See Org Defined IDs User Information Privacy > See Email Addresses Users > View User Enrolments Users > <role> (all those you want to be visible to PebblePad)
- Click Save and Close.
- Create a new Service User Account (opens in new tab) and assign it the PebblePad API Access role.
8. Register API
- Log in to Brightspace with the service account.
- Click the Settings cog and choose Manage Extensibility.
- Click OAuth2.
- Click Register an app.
- Complete the fields using the information in the table below.
- Click Register.
- Leave the tab open to retain access to the Client ID and Secret (for next stage)
| Application Name | PebblePad LTI 1.3 |
| Redirect URL | https://Domain/admin/pebble/Integrations/OAuth2/Authorised |
| Scope | enrollment:orgunit:read classlist:user:read groups:group:read grades:gradeobjects:read,write grades:gradevalues:write |
| Access token lifetime | 3600 seconds |
| Description | (Optional) |
| Prompt for user consent | ✓ |
| Enable refresh tokens | ✓ |
| Non-commercial Developer Agreement | ✓ |
Replace Domain with your location:- Test: apptest.pebblepad.com
- AU Production: v3.pebblepad.com.au
- CA Production: app.pebblepad.ca
- UK Production: v3.pebblepad.co.uk
- US Production: pebblepad.com
9. Set up PebblePad
- In a new tab, log in to your PebblePad with an administrator account.
- From the Pebble+ main menu, choose Additional services > Administration.
- Click Integrations and Brightspace from the sub menu.
- Complete the fields using the information in the table below.
- In Settings for SSO, note the Key and Secret
- Click Save.
- From the Brightspace page, Click Accept.
| Brightspace Token URL | (Leave as default value) |
| Client ID | Copy from stage 8 |
| Client Secret | Copy from stage 8 |
| Brightspace URL | Your Brightspace URL - must end with / |
| Tool ID | (Leave as default value) |
| Brightspace API Version | (Leave as default value) |
10. Contact PebblePad
For the PebblePad Implementation Engineer to authenticate the integration, provide them with:
- Set-up Stage
- We strongly suggest using the test server in the first instance
- Brightspace URL for your organisation
For the next settings, here are some steps to help you find them:
- Log into Brightspace as an Admin
- Go to Manage Extensibility
- Click LTI Advantage
- Locate the tool created for PebblePad and click it to enter the settings
- Scroll down to the bottom of the screen and the majority of the required info is present - use the 'copy' button for time-saving and accuracy
- Once these details have been copied and stored, click View Deployments at the very bottom of the page.
- Click to enter the settings for the deployment created for the PebblePad integration
- At the very bottom of the page you should see a Deployment ID (a GUID). Copy this and add to the list of other info gathered and send to your relevant contact in the PebblePad team through their stated method.
Data to send from the above steps:
- ClientID
- a GUID
- Brightspace Keyset URL
- Brightspace OAuth2 Access Token URL
- OpenID Connect Authentication Endpoint
- a URL
- Brightspace OAuth2 Audience
- a URL
- Issuer
- a URL
- DeploymentID
- a GUID
- Note that this on a different page to the others above, as noted in the earlier help steps
To run an end-to-end user test, follow the workspace manager's guide to creating a Brightspace-linked assignment.