For Agents
Manage Open edX learner enrollments, certificates, cohorts and course progress on behalf of admins, instructors or HR systems.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Open edX LMS API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Open edX LMS API.
Bulk-enroll learners into one or more courses in a single call
Issue and look up certificates of completion for a learner
Add, list and update cohorts that group learners within a course
GET STARTED
Use for: Bulk-enroll a list of email addresses into the compliance training course, Look up the certificate for a learner in a specific course, List the cohorts in a course and their members, Get the course outline for a course key
Not supported: Does not handle course authoring (Studio), payment processing for paid enrollments, or video streaming infrastructure — use for LMS enrollments, certificates, cohorts and progress only.
The Open edX LMS API exposes 21 endpoints across the open-source learning management system used by edX, MIT and many universities and corporate training programs. It covers bulk enrollments, certificates, cohorts, course home metadata and dates, completion tracking, integrity agreements, bookmarks and authorisation checks. Authenticated via OAuth2 or bearer tokens, it lets admins automate enrollment, sync progress to downstream systems, and integrate Open edX into broader employee development or accreditation workflows.
Read course outline, dates and progress metadata for the course home
Track learner completion at block level via the completion-batch endpoint
Manage bookmarks learners create against course content
Validate the current user's permissions in the Open edX authorisation system
Patterns agents use Open edX LMS API for, with concrete tasks.
★ Corporate Training Enrollment Automation
An HR or LMS admin tool can keep Open edX in sync with a workforce system by bulk-enrolling new hires into onboarding courses and removing leavers. POST /bulk_enroll/v1/bulk_enroll takes a list of identifiers and course ids in one call, replacing per-user scripts. This shortens onboarding cycles and reduces manual errors when scaling training programs.
POST /bulk_enroll/v1/bulk_enroll with a list of learner emails and course_id='course-v1:Acme+Onboarding+2026' to enroll all new hires.
Certificate Issuance and Verification
An accreditation or HR records system can pull certificates from Open edX to verify completion claims. GET /certificates/v0/certificates/{username}/courses/{course_id} returns the certificate object including grade and download URL, suitable for storing in an HRIS or for sharing with auditors.
GET /certificates/v0/certificates/{username}/courses/{course_id} for each completed enrollment and store the certificate URL against the learner record.
Course Progress Reporting
Build a learner progress dashboard for instructors or training managers using /course_home/v1/progress/{course_key_string}. The response contains structured progress data per learner, which can be aggregated into cohort views or exported to a BI tool. Useful for showing completion rates ahead of accreditation or compliance audits.
GET /course_home/v1/progress/{course_key_string} for each enrolled learner and aggregate completion percentages into a cohort summary.
AI Agent Learning Assistant
Through Jentic, an AI assistant for a corporate training program can answer 'who hasn't finished compliance training this quarter?' and 'enroll the new sales team in product training'. The agent searches Jentic for the right Open edX operation, loads the schema and executes against an admin OAuth2 token. This collapses what would be a manual instructor workflow into a chat interaction.
Use Jentic to search 'enroll learners in Open edX course', load /bulk_enroll/v1/bulk_enroll, and execute it with the new sales team's emails and the product training course id.
21 endpoints — the open edx lms api exposes 21 endpoints across the open-source learning management system used by edx, mit and many universities and corporate training programs.
METHOD
PATH
DESCRIPTION
/bulk_enroll/v1/bulk_enroll
Bulk-enroll learners into one or more courses
/certificates/v0/certificates/{username}/courses/{course_id}
Get a learner's certificate for a course
/course_home/v1/progress/{course_key_string}
Read learner progress for a course
/course_home/v1/outline/{course_key_string}
Read the course outline structure
/cohorts/v1/courses/{course_key_string}/cohorts/{cohort_id}
Get a cohort's details
/completion/v1/completion-batch
Mark a batch of blocks complete for a learner
/bulk_enroll/v1/bulk_enroll
Bulk-enroll learners into one or more courses
/certificates/v0/certificates/{username}/courses/{course_id}
Get a learner's certificate for a course
/course_home/v1/progress/{course_key_string}
Read learner progress for a course
/course_home/v1/outline/{course_key_string}
Read the course outline structure
/cohorts/v1/courses/{course_key_string}/cohorts/{cohort_id}
Get a cohort's details
Three things that make agents converge on Jentic-routed access.
Credential isolation
Open edX OAuth client credentials and bearer tokens are stored encrypted in the Jentic vault. Agents receive scoped access via Jentic's MAXsystem; the underlying client secret never enters agent context, which matters for staff-scoped tokens that can enroll or unenroll users.
Intent-based discovery
Agents search by intent (for example 'bulk enroll learners' or 'get course progress') and Jentic returns matching Open edX operations under /bulk_enroll/v1 or /course_home/v1 with their input schemas, so the agent calls the right endpoint without crawling the LMS API docs.
Time to first call
Direct Open edX integration: 2-4 days for OAuth setup, course key handling and pagination through course content. Through Jentic: under 1 hour — search, load schema, execute.
Alternatives and complements available in the Jentic catalogue.
Specific to using Open edX LMS API through Jentic.
What authentication does the Open edX LMS API use?
Open edX accepts OAuth2 (the recommended path for production) and bearer tokens. Admin operations like bulk enrollment require staff-level scopes. Through Jentic, OAuth client credentials sit in the Jentic vault so the agent receives a scoped token rather than client_id and secret.
Can I bulk-enroll learners with the Open edX API?
Yes. POST /bulk_enroll/v1/bulk_enroll accepts a list of emails or usernames and one or more course ids in a single request, which is the standard way to provision a cohort at scale rather than calling per-user enrollment endpoints.
What are the rate limits for the Open edX LMS API?
Rate limits depend on the deployment — open edx is typically self-hosted by universities or training providers, with limits set in the platform's nginx or middleware. There are no fixed vendor-side limits in the spec; treat heavy operations like bulk enrollment as discrete jobs rather than tight loops.
How do I check a learner's progress in a course through Jentic?
Search Jentic for 'get Open edX course progress', load /course_home/v1/progress/{course_key_string}, and execute it with the course key. Through Jentic the OAuth token stays in the vault, so the agent never sees the bearer string.
Can I look up certificates with the Open edX API?
Yes. GET /certificates/v0/certificates/{username} returns the certificate set for a learner, and the per-course variant /certificates/v0/certificates/{username}/courses/{course_id} returns a single course certificate, including grade and download URL.
Is the Open edX LMS API free?
Open edX is open-source and the API itself has no licence cost. Hosting is on the institution, so total cost depends on the infrastructure, which can be self-hosted or run via a commercial Open edX provider.
/completion/v1/completion-batch
Mark a batch of blocks complete for a learner