Connecting Open edX
This page describes how to connect an Open edX site to Blocks. Open edX
exposes LTI 1.3 tools through the reusable LTI configuration (lti_store) and the
lti_consumer XBlock.
Before you start
You need administrator access to the Open edX site, including the LTI reusable configuration store (Django admin or Studio LTI settings, depending on your deployment).
You need a Blocks workspace with available platform/registration/deployment capacity in your plan.
Step 1: Create the platform in Blocks
In the workspace sidebar, open Integrations.
Create a new platform and choose the Open edX setup type.
Enter your Open edX site’s issuer (its base URL, for example
https://campus.example.com) and save.
Step 2: Register Blocks in Open edX
Open the new platform’s edit page in Blocks. It shows the Open edX form values to use.
In Open edX, create a reusable LTI configuration (LTI 1.3) and paste in the Blocks values:
OIDC login URL
Launch / redirect URL
JWKS URL (or the public key PEM, if your version pastes a key instead of a URL)
Deep Linking URL
Save the configuration in Open edX. Open edX then issues platform values, including:
Client ID
Deployment ID (usually
1)Public keyset URL
Access token URL
Login URL
Step 3: Complete the registration in Blocks
Copy the Client ID from Open edX back into the Blocks platform.
Use the Create suggested registration shortcut on the platform edit page. Blocks pre-fills the access token URL and public keyset URL from the issuer using the default Open edX reusable store path; adjust them if your deployment uses different values.
Save the registration. Blocks automatically creates the default deployment (ID
1).
Note
OIDC login and launch validation will fail until both the registration and the deployment exist in Blocks. The Open edX registration flow creates the default deployment for you.
Step 4: Add an activity to a course
In Studio, add an LTI Consumer component to a unit and select the reusable configuration you created.
Use the component’s content-selection (Deep Linking) action to open Blocks and choose a tool type. See Adding Activities (Deep Linking).
Publish the unit. Learners can now launch the activity from the course.
Troubleshooting
Launch is rejected — confirm the client ID, deployment ID, and keyset/token URLs in Blocks exactly match what Open edX issued, and that both a registration and a deployment exist.
Keyset errors — verify the public keyset URL in Blocks points to the correct
lti_consumerkeyset for this configuration.