For Agents
Manage ClassMarker quizzes, question banks, categories, access lists, and pull recent results for groups and links. Useful for assessment automation, certification, and LMS result sync.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the ClassMarker 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 ClassMarker API.
Retrieve recent test results across groups and individual links
Create and update questions in nested category hierarchies
Build parent and sub categories to organise question banks
Add and delete access list codes that gate test attempts
GET STARTED
Use for: I need to pull recent quiz results for our certification group, Add 50 new access codes for the upcoming exam window, Create a new multiple-choice question in the Networking category, Update the score weighting on an existing ClassMarker question
Not supported: Does not handle proctoring video, learner course content, or payment processing — use for ClassMarker quiz, question bank, and result management only.
The ClassMarker API powers online quiz, test, and exam creation with structured group, link, and access-list management. It exposes endpoints for retrieving recent test results, building question banks, organising questions into nested categories, and gating attempts via access codes. Test administrators can sync results into LMS dashboards, build custom proctoring flows, or push question banks from internal authoring tools. The API is a fit for training providers, certification bodies, and HR teams running technical assessments.
List all questions with category filters
Pull aggregate group, link, and exam metadata in a single call
Update individual questions including options and scoring
Patterns agents use ClassMarker API for, with concrete tasks.
★ Certification result sync to internal LMS
Training providers often use ClassMarker for the assessment portion of certifications and need results delivered into their internal LMS for badge issuance. Polling GET /v1/groups/recent_results.json or GET /v1/links/recent_results.json on a schedule pulls the latest submissions, and the response can be transformed and forwarded to the LMS. This keeps certification status accurate without manual exports.
Every 15 minutes, call GET /v1/groups/recent_results.json, dedupe against the last cursor, and POST new results to the internal LMS
Bulk access code provisioning for exam events
Proctored exam events require fresh access codes per candidate so each attempt is uniquely identified. POST /v1/accesslists/{access_list_id}.json adds codes in bulk, and DELETE /v1/accesslists/{access_list_id}.json revokes them after the window closes. This pattern prevents code reuse and gives auditors a clean attempt log.
Generate 200 codes for the June 15 exam window, POST them to access list 4321, and schedule deletion 7 days after the window closes
Question bank sync from authoring tool
Subject matter experts often author questions in an internal tool or spreadsheet and need them mirrored into ClassMarker. POST /v1/questions.json creates questions, PUT /v1/questions/{question_id}.json updates them, and the category endpoints organise them under parent and sub categories. A nightly sync keeps ClassMarker as the live test catalogue without forcing authors to leave their tool.
Read the latest questions from the authoring spreadsheet and call POST /v1/questions.json or PUT /v1/questions/{question_id}.json to upsert each one under the correct category
AI agent integration via Jentic
An assessment ops assistant queries Jentic for ClassMarker operations and pulls results, manages access codes, and updates questions in response to natural-language requests. Because the spec does not declare a security scheme, the API key and HMAC signature are configured in Jentic's vault and applied at execution time, keeping the agent free of credential handling.
Receive 'add 100 codes for the AWS exam' from chat, search Jentic for ClassMarker access list, and execute POST /v1/accesslists/{access_list_id}.json with the parsed list ID
16 endpoints — the classmarker api powers online quiz, test, and exam creation with structured group, link, and access-list management.
METHOD
PATH
DESCRIPTION
/v1.json
Get groups, links, and exams
/v1/groups/recent_results.json
Get recent results for all groups
/v1/links/recent_results.json
Get recent results for all links
/v1/accesslists/{access_list_id}.json
Add access list codes
/v1/questions.json
Create a question
/v1/questions/{question_id}.json
Update a question
/v1/categories.json
Get all categories
/v1/categories/parent_category.json
Create a parent category
/v1.json
Get groups, links, and exams
/v1/groups/recent_results.json
Get recent results for all groups
/v1/links/recent_results.json
Get recent results for all links
/v1/accesslists/{access_list_id}.json
Add access list codes
/v1/questions.json
Create a question
Three things that make agents converge on Jentic-routed access.
Credential isolation
ClassMarker API keys and HMAC secrets are stored encrypted in the Jentic vault. Agents call ClassMarker through Jentic without ever holding the secret — request signing happens server-side at execution time.
Intent-based discovery
Agents query Jentic with intents like 'pull recent quiz results' or 'add access codes to a test' and Jentic returns the matching ClassMarker operation with its input schema, so the agent does not need to read the docs.
Time to first call
Direct ClassMarker integration: 1-2 days for HMAC signing, error handling, and result polling. Through Jentic: under 30 minutes — search, load schema, execute.
Alternatives and complements available in the Jentic catalogue.
Specific to using ClassMarker API through Jentic.
What authentication does the ClassMarker API use?
ClassMarker uses an API key plus an HMAC request signature passed in query parameters; the OpenAPI spec does not declare a securityScheme so the auth is configured at the request level. Through Jentic, both the API key and HMAC secret are stored in the vault and applied at execution time so the agent never handles them directly.
How do I pull recent quiz results from ClassMarker?
Call GET /v1/groups/recent_results.json for results across all groups or GET /v1/groups/{group_id}/tests/{test_id}/recent_results.json for a specific group-test pair. The link-based equivalents are GET /v1/links/recent_results.json and GET /v1/links/{link_id}/tests/{test_id}/recent_results.json. Poll on a schedule and dedupe against your last cursor.
Can I bulk-create access codes for an exam window?
Yes. POST /v1/accesslists/{access_list_id}.json adds codes to an existing access list, and DELETE /v1/accesslists/{access_list_id}.json removes them. This is the standard pattern for time-bound exam events where each candidate needs a unique attempt code.
How do I sync a question bank into ClassMarker via Jentic?
Install the SDK with pip install jentic, then search Jentic for 'create a classmarker question', load the schema, and execute. Use POST /v1/questions.json to create new questions and PUT /v1/questions/{question_id}.json to update existing ones. Categories are managed through /v1/categories.json and the parent_category endpoints.
Are categories nested in ClassMarker?
Yes. POST /v1/categories/parent_category.json creates a parent category and POST /v1/categories/category.json creates a sub-category under it. Questions are then assigned to a sub-category, giving you a two-level taxonomy for organising large question banks.
Is the ClassMarker API rate limited?
ClassMarker's published guidance limits unauthenticated and high-frequency calls; specific quotas are not declared in the OpenAPI spec. For result polling, schedule calls at 5-15 minute intervals rather than continuous polling, and back off if the API returns 429 responses.
/v1/questions/{question_id}.json
Update a question
/v1/categories.json
Get all categories
/v1/categories/parent_category.json
Create a parent category