Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Complete LMS API - With Bulk Course Creation, 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://jentic.com/install.sh?src=apis&api=%2Fapis%2Flms-platform.com%2Flms-platform" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Flms-platform.com%2Flms-platform" | 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 Complete LMS API - With Bulk Course Creation API.
Create a complete course with its modules and resources in one request with bulkCreateCourse
Add Video, Audio, PDF, Presentation, Assessment, or Certificate resources to a module, uploading files for PDF and Presentation types
Maintain a question bank of Single_Choice, Multiple_Choice, and Fill_in_the_blanks questions with marks and correct answers
Attach questions to an Assessment resource by questionIds with randomizeQuestions and a passingScore
GET STARTED
Start an assessment attempt for a resource and submit the learner's answers for grading
Upload certificate templates and link one to a Certificate resource by certificateTemplateId
Read a student's progress through a specific course with getStudentProgress
Patterns agents use Complete LMS API - With Bulk Course Creation API for, with concrete tasks.
★ Agent-built courses through Jentic
An agent turns a syllabus into a live course by asking Jentic for the LMS Platform course-creation operation and calling bulkCreateCourse with a course object and its modules array, each module carrying ordered resources such as videos, PDFs, and assessments. One call replaces dozens of separate create requests, and the JWT bearer token stays in your self-hosted Jentic One instance.
Search Jentic for 'create a complete course with modules', then call bulkCreateCourse with course title 'Introduction to Web Development', description, category 'Programming', and a modules array containing an 'HTML Basics' module with one Video resource
Quiz authoring and assessment
Authors add questions to the bank with createQuestion, setting questionText, questionType such as Multiple_Choice, and marks, then create an Assessment resource in a module that lists those questionIds, a passingScore, and whether to randomize. Learners start an attempt with startAssessment and finish it with submitAssessment.
Call createQuestion with questionText 'What does HTML stand for?', questionType 'Single_Choice', options, correctAnswer, and marks 1, then create an Assessment resource with that question id and passingScore 70
Course completion certificates
An admin uploads a certificate design with createCertificateTemplate, passing a name and templateFile, then adds a Certificate resource to the final module that references the template through certificateTemplateId, so learners who finish the course receive the certificate.
Call createCertificateTemplate with name 'Web Dev Completion' and a templateFile, then call createResource of type 'Certificate' in the last module with the returned certificateTemplateId
Learner progress reporting
A reporting job calls getStudentProgress with a studentId and courseId to read how far each learner has moved through a course, then flags learners who have stalled so an instructor can follow up.
Call getStudentProgress for studentId 'stu_123' and courseId 'course_67890' and summarize the completion state
29 endpoints — the complete lms api builds and runs online courses on lms platform, creating a full course with its modules and resources in a single bulk call or piece by piece.
METHOD
PATH
DESCRIPTION
/courses/bulk-create
Create a course with modules and resources
/courses
List courses
/courses/{courseId}/modules
Create a module
/courses/{courseId}/modules/{moduleId}/resources
Create a resource
/questions
Create a question
/courses/{courseId}/modules/{moduleId}/resources/{resourceId}/start-assessment
Start an assessment attempt
/assessment-attempts/{attemptId}/submit
Submit assessment answers
/students/{studentId}/courses/{courseId}/progress
Get student progress
/courses/bulk-create
Create a course with modules and resources
/courses
List courses
/courses/{courseId}/modules
Create a module
/courses/{courseId}/modules/{moduleId}/resources
Create a resource
/questions
Create a question
/courses/{courseId}/modules/{moduleId}/resources/{resourceId}/start-assessment
Start an assessment attempt
/assessment-attempts/{attemptId}/submit
Submit assessment answers
/students/{studentId}/courses/{courseId}/progress
Get student progress
What agents get from Jentic-routed access to this vendor.
Setup
Wiring this LMS by hand means attaching its JWT bearer token, building nested course, module, and resource payloads, and handling multipart file uploads for PDF and presentation resources. Through Jentic you install once, import it from the API Directory, store the token once, and your agent calls it.
Permission scoping
This API puts courseId, moduleId, and resourceId in the URL path, so a rule can pin your agent to one course: it can build modules and resources under /courses/{courseId}/ for that course and nothing else. You choose the operations it may call, so destructive ones like deleteCourse or deleteQuestion are not included unless you add them.
Credential isolation
Your LMS Platform token is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'create a course with modules' or 'check student progress', and Jentic returns the matching LMS Platform operation with its input schema so the agent calls the right endpoint without browsing the reference docs.
Alternatives and complements available in the Jentic catalogue.
Specific to using Complete LMS API - With Bulk Course Creation API through Jentic.
What authentication does the Complete LMS API use?
Per its OpenAPI spec, every operation declares an HTTP bearer scheme with a JWT bearer format, sent as `Authorization: Bearer`. Through Jentic the token is stored encrypted by your own Jentic One instance and injected at call time, so it never enters the agent's prompt or logs.
Can I create a whole course in one request with the Complete LMS API?
Yes. POST /courses/bulk-create takes a course object (title, description, category, optional thumbnailUrl and isActive) and a modules array, where each module carries its own ordered resources such as Video, PDF, and Assessment items. Use the per-module and per-resource endpoints afterwards for edits.
What are the rate limits for the Complete LMS API?
The OpenAPI spec does not specify rate limits. Check the LMS Platform documentation or your account settings for current limits before running large bulk course imports.
How do I add a quiz to a module with the Complete LMS API through Jentic?
Install Jentic One with `curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh`, add the Complete LMS API from the Jentic API Directory, and have your agent search for 'create an assessment resource'. Jentic returns createResource (POST /courses/{courseId}/modules/{moduleId}/resources) with its schema, and the agent sends type 'Assessment', a title, questionIds, and passingScore. To run it on your own infrastructure, install Jentic One from its GitHub repo.
Is there a Complete LMS API MCP server?
You don't need an MCP server to give your agent the Complete LMS API. Jentic connects it directly from the API Directory: import it, store your credential once, and your agent calls it, with operations discovered on demand instead of loading extra tool definitions into its context.
Can I limit what my agent is allowed to do with the Complete LMS API?
Yes. Write a rule that allows only GET and POST under /courses/course_67890/ so the agent can read that course and add modules and resources to it, while deleteCourse, deleteModule, and every other course stay outside its reach, and every call it makes is logged.
Which resource types can a module contain in the Complete LMS API?
Six: Video, Audio, PDF, Presentation, Assessment, and Certificate. PDF and Presentation resources accept a file upload, Assessment resources take questionIds, randomizeQuestions, and passingScore, and Certificate resources require a certificateTemplateId.
Know of an official OpenAPI document? Contribute it →
For Agents
Build LMS courses in one call with modules and resources, manage a quiz question bank and certificate templates, run assessment attempts, and read a student's course progress.
Use for: I need to build a new course with three modules from this outline, Add a PDF handout to module two of my web development course, Create five multiple choice questions for the HTML quiz, Check how far a student has progressed in a course
Not supported: Does not handle course payments, learner enrolment and user accounts, or live video classes. Use for building course content, assessments, certificates, and reading student progress only.
The Complete LMS API builds and runs online courses on LMS Platform, creating a full course with its modules and resources in a single bulk call or piece by piece. Courses hold ordered modules, and each module holds resources of six types: Video, Audio, PDF, Presentation, Assessment, and Certificate, with file uploads for PDF and presentation material. A question bank of Single_Choice, Multiple_Choice, and Fill_in_the_blanks questions feeds assessments that learners start and submit as attempts, certificate templates back certificate resources, and a progress endpoint reports how far a student has moved through a course.
This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.
Base layer of spec validity and structural soundness.
Aggregated quality score from linter diagnostics, weighted by severity.
Percentage of `$ref` references that resolve successfully.
Checks whether the API description parses successfully and conforms to its declared specification (e.g., OpenAPI).
Structural correctness score based on schema issues using logarithmic dampening.
Clarity, completeness, and ingestion readiness for developers and tooling.
How richly the API is illustrated with examples.
Percentage of examples that conform to their schemas.
Percentage of operations with complete response definitions (success, client error, server error).
Health of API ingestion, bundling, and resolution within Jentic pipelines.
Semantic breadth, depth, and agent comprehension for AI systems.
Coverage of descriptions across API elements.
Coverage of RFC 9457 Problem Details for error responses.
Coverage, uniqueness, and casing consistency of operationIds for AI inference.
Coverage of summaries across operations/tags/info.
Functional utility, complexity comfort, and AI orchestration readiness.
Agent comfort level based on API operational and structural complexity.
Trust, risk posture, and security compliance.
Average quality of security schemes based on authentication method strength (weakest link for OAuth2).
Findability, semantic richness, and reasoning readiness.
Clarity and depth of descriptions across API elements.
Score it yourself
Every API in the directory is allowlisted, so you can re-score it with no key required.
npx @jentic/api-scorecard-cli score <openapi-url>