Please note before beginning: this process requires that you have an open LMS Integration Setup ticket with CompTIA. For more information, reach out to your CompTIA Representative.
Part 1: Create Developer Key using JSON Configuration
- Go to: Admin > Developer Keys > + Developer Key > + LTI Key
- On the left, fill out the following:
- Key Name: CertMaster LTI Adv
- Owner Email: <your email here>
- Redirect URIs: https://partner.testout.com/openid/idtoken
- Notes: <your notes here>
- In the center, click the Method dropdown and select Paste JSON
- Delete the brackets in the LTI 1.3 Configuration field, and paste in the following text, including all brackets:
{"title": "CertMaster LTI Adv",
"description": "LTI 1.3 tool to connect to CompTIA's CertMaster learning platform, which includes CertMaster Learn, Labs, and Perform products, as well as TestOut content released prior to 2024",
"target_link_uri": "https://cdn.testout.com/lms-gate/index.html",
"oidc_initiation_url": "https://partner.testout.com/openid/authorize",
"public_jwk_url": "https://partner.testout.com/openid/keyset",
"public_jwk": {},
"scopes": [
"https://purl.imsglobal.org/spec/lti-ags/scope/lineitem",
"https://purl.imsglobal.org/spec/lti-ags/scope/lineitem.readonly",
"https://purl.imsglobal.org/spec/lti-ags/scope/result.readonly",
"https://purl.imsglobal.org/spec/lti-ags/scope/score",
"https://purl.imsglobal.org/spec/lti-nrps/scope/contextmembership.readonly",
"https://canvas.instructure.com/lti/account_lookup/scope/show",
"https://canvas.instructure.com/lti-ags/progress/scope/show",
"https://canvas.instructure.com/lti/page_content/show"
],
"extensions": [
{
"platform": "canvas.instructure.com",
"settings": {
"selection_height": 800,
"selection_width": 1000,
"icon_url": "https://cdn.testout.com/labsimsaas/images_v2/comptia-c-logo.png",
"placements": [
{
"placement": "module_menu_modal",
"message_type": "LtiDeepLinkingRequest"
}
]
},
"domain": "partner.testout.com",
"privacy_level": "public"
}
],
"custom_fields": {
"course_end_date": "$Canvas.term.endAt",
"course_start_date": "$Canvas.term.startAt",
"submission_end_date": "$ResourceLink.submission.endDateTime",
"submission_start_date": "$ResourceLink.submission.startDateTime",
"resource_available_end_date": "$ResourceLink.available.endDateTime",
"resource_available_start_date": "$ResourceLink.available.startDateTime"}}
5. Click Save at the bottom of the page.
- If you get an error message saying the JSON is invalid, there is likely an extra or missing bracket. Simply delete everything in the LTI 1.3 Configuration field, repaste the JSON above (the blue text, including brackets), and try again.
6. Toggle the Developer Key to On.
7. Copy the number in the Details column (Developer ID) into the online Registration Form provided by your CompTIA Representative. Don't Send yet.
Part 2: Configuring the App in Canvas
WARNING - PLEASE READ
Please take care in the next step to choose the correct Canvas sub-account, particularly if your school or institution shares a Canvas instance with other organizations.
- We strongly recommend that integrations be configured at the Canvas Sub-Account level for the school, or even better, the department that will be using the LTI integration.
- If no such Sub-Account exists and one cannot be added, the integration can also be configured at the root Canvas Account level, but be aware that everyone with the right course-building permissions in Canvas will have access to the tool.
Please note that even though Canvas allows it and you may get a successful launch initially, our system CANNOT accommodate separate installations at each Canvas Course your organization runs.
Proceeding incorrectly can cause issues with student access, grade syncing, billing, user-to-institution association, and more. If you're unsure of how to proceed, please reach out to your CompTIA Technical Implementation rep for guidance.
-
Navigate to the Canvas account or sub-account where you'd like to make the App available to course-builders by clicking the Admin tab on the far left, selecting the parent account, and then clicking Sub-Accounts in the navigation on the left.
- Please do not install the App at the Course Level. We strongly recommend selecting the lowest sub-account in the account hierarchy that covers each course you'll be integrating. For example, perhaps you might choose the sub-account for a college's Computer Science or Information Technology department, or if your organization uses a shared Canvas, the sub-account for the specific school that wishes to integrate.
- If you have a small number of sub-accounts that don't have a single parent account, we can configure up to three sub-accounts to the same Developer Key. If you need this, please make sure to note it to your CompTIA Technical Implementation team member during configuration.
2. After selecting your sub-account, go to Settings > Apps > View App Configuration > + App
3. Configuration Type: By Client ID
4. Client ID: Paste the same Developer ID copied in step 7 above.
5. Select Submit, and confirm any other prompts.
6. After installing, click on the gear icon to the right of the App and select Deployment ID.
7. Copy the whole Deployment ID
8. Return to the registration URL from your CompTIA Representative and provide the following:
-
- Paste the Canvas Developer ID into the Canvas Developer ID field.
- Paste the Deployment ID into the Canvas Deployment ID Field
- Access Token Endpoint: https://sso.canvaslms.com/login/oauth2/token
- Authorization Endpoint: https://sso.canvaslms.com/api/lti/authorize_redirect
- JWKS Endpoint: https://sso.canvaslms.com/api/lti/security/jwks
Note: Nearly all Canvas instances use the above endpoints, even for testing, but if you do have a completely separate instance of Canvas that uses Instructure's Beta or Test servers, you may need to use the following Endpoint sets instead:
-
-
Beta
- Access Token Endpoint: https://sso.beta.canvaslms.com/login/oauth2/token
- Authorization Endpoint: https://sso.beta.canvaslms.com/api/lti/authorize_redirect
- JWKS Endpoint: https://sso.beta.canvaslms.com/api/lti/security/jwks
-
Test
- Access Token Endpoint: https://sso.test.canvaslms.com/login/oauth2/token
- Authorization Endpoint: https://sso.test.canvaslms.com/api/lti/authorize_redirect
- JWKS Endpoint: https://sso.test.canvaslms.com/api/lti/security/jwks
-
Beta
- 9. Click Save.
Testing
We strongly encourage testing your integration, as finding out something doesn't work after students have already entered the course is very unpleasant for all parties involved. If anything goes wrong in the following process, please take a screenshot and inform the CompTIA Representative working your LMS Integration Setup ticket.
1. Create or navigate to a course in the Canvas sub-account where you installed the App.
2. Add a graded assignment using the documentation on this page.
3. In Canvas, publish the course, the module, and the assignment.
4. Enroll your Canvas account in the course as the Student role.
5. Click the LTI link you placed and complete the activity.
6. Check the Canvas grade book to confirm that a score appears within 2 minutes. (If you don't see the account doing the testing as a row in the gradebook, please confirm that the testing account is a Student in the course.)
Important Information:
Automatically Creating a class and Enrolling students
AS THE INSTRUCTOR:
Click one of the CertMaster assignment links in your LMS course. When you click on the link, a like-named class is automatically created in CertMaster. You can view this class on your home (MY School) page within your CertMaster account. As applicable, make sure to click a link from each of your LMS courses. When you do, again, a class matching your LMS course's name will be automatically created in your CertMaster account. As a best practice, don't rename, archive, or manually create a duplicate of this class in CertMaster. However, you may archive the class after your semester ends.
DO NOT create your class manually in CertMaster.
Note: It is critical that at least one initial assignment be clicked to establish integration between your LMS and your CertMaster account, which involves the creation of the automatic class within your CertMaster account, as well as its associated start/end dates. See below for additional information around class dates.
INSTRUCT YOUR STUDENTS:
Click one of the CertMaster assignment links inside your LMS course. Upon clicking, a student account will automatically be created for the student in CertMaster, and the student will be enrolled in the corresponding class in CertMaster. It is critical that at least one initial assignment be clicked to establish integration between your LMS and the CertMaster student and instructor accounts. This is how the CertMaster platform knows that your student exists, and is also important for multiple aspects of integration functionality, such as score return from CertMaster to your LMS.
Licenses: If your agreement with CompTIA involves pre-purchased licenses or usage-based billing, a courseware license is also automatically activated and applied to the billing method in question.
Access Keys: If your students will be gaining access through Access Keys (usually purchased by the student ahead of time via a bookstore or https://shop.testout.com/), they will be prompted to enter their access key when they click their first CertMaster link. If purchasing from https://shop.testout.com/ a student purchase price code can be obtained from your school's CompTIA Customer Success Manager.
- For students who already have CertMaster accounts, make sure that the email address associated with their CertMaster account is the same as the email address of their LMS account. This way, the integration will be able to find and connect to the existing student CertMaster account.
- DO NOT create your students' accounts inside CertMaster through CSV, individually, or through email.
- Students DO NOT need to create their accounts through testout.com.
Regarding Start and End Dates of your CertMaster class
-
If the LMS course start date is known via the integration, this date will be used as the start date for the CertMaster class.
-
If the LMS course end date is known via the integration, this date will be used as the end date for the CertMaster class. The end date shouldn’t exceed 18 months from when a course is first created in CertMaster.
-
If the LMS course start date is NOT known via the integration, the date when the first initial TestOut assignment link is clicked will be used as the start date for the CertMaster class.
-
If the LMS course end date is NOT known via the integration, the CertMaster end date will be 12 months from the start date (the start date is based on the standards set above).
-
If the LMS course end date is set to continuous, the CertMaster end date will be 12 months from the start date (the start date is based on the standards set above).