Product
Jentic OSThe workplace. An in-house AI platform for every employeeJentic OneSafe access. Agents reach your systems without holding keysJentic AIRThe foundation. Gets your existing platforms ready for AI
Pricing
Developers

GET STARTED

API DirectoryBrowse 10,000+ APIs Ready For AI Agent IntegrationDocumentationGuides and API reference

TOOLS

API ScoringCheck your AI Readiness using our scorecardArazzo UIVisualize Arazzo Workflows As Interactive DocumentationArazzo EditorBuild And Edit Multi-Step API Workflows Visually

COMMUNITY

GitHubOpen source projects and examplesOpen StandardsBuilt on open specs. Never locked in.
Resources
Company
About UsOur mission and teamCareersJoin our teamContactGet in touch
Try it now
Jentic OSJentic OneJentic AIR
Pricing
API DirectoryDocumentationAPI ScoringArazzo UIArazzo EditorGitHubOpen Standards
Resources
About UsCareersContact
Try it now
JenticJentic
Products
  • Jentic OS
  • Jentic One
  • Jentic AIR
For Developers
  • API Directory
  • Documentation
  • GitHub
Company
  • About Jentic
  • Careers
  • Contact Us
  • Trust Centre
ISO/IEC 27001:2022 certification badge issued by Prescient SecurityISO/IEC 27001:2022 certification badge issued by Prescient Security

Information Security Management System

Certified to ISO/IEC 27001:2022 by Prescient Security

Terms & Conditions•Privacy Policy•
© 2026 Jentic Technology Ltd. All rights reserved.
Switch to light modeSwitch to dark mode
APIs / Education / ClassMarker API
ClassMarker API logo

ClassMarker API

Official vendor OpenAPI document · agent-readyEducationAssessmentapiKey16 EndpointsREST

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.

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.

Jentic One on GithubView OpenAPI Document

Install Jentic One Beta

Connect the ClassMarker API to your agent

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.

1

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%2Fclassmarker.com%2Fclassmarker" | sh
2

Step 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%2Fclassmarker.com%2Fclassmarker" | sh
jentic register       # connects your agent to your Jentic One instance

Jentic 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.

Capabilities

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

List all questions with category filters

Pull aggregate group, link, and exam metadata in a single call

Update individual questions including options and scoring

Use Cases

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

Key Endpoints

16 endpoints — the classmarker api powers online quiz, test, and exam creation with structured group, link, and access-list management.

METHOD

PATH

DESCRIPTION

GET

/v1.json

Get groups, links, and exams

GET

/v1/groups/recent_results.json

Get recent results for all groups

GET

/v1/links/recent_results.json

Get recent results for all links

POST

/v1/accesslists/{access_list_id}.json

Add access list codes

POST

/v1/questions.json

Create a question

PUT

/v1/questions/{question_id}.json

Update a question

GET

/v1/categories.json

Get all categories

POST

/v1/categories/parent_category.json

Create a parent category

GET

/v1.json

Get groups, links, and exams

GET

/v1/groups/recent_results.json

Get recent results for all groups

GET

/v1/links/recent_results.json

Get recent results for all links

POST

/v1/accesslists/{access_list_id}.json

Add access list codes

POST

/v1/questions.json

Create a question

PUT

/v1/questions/{question_id}.json

Update a question

GET

/v1/categories.json

Get all categories

POST

/v1/categories/parent_category.json

Create a parent category

Why Jentic?

What agents get from Jentic-routed access to this vendor.

Setup

Setup

Wiring ClassMarker by hand means managing its API key on every request to api.classmarker.com and matching calls to the right .json operation yourself. Through Jentic you install once, import ClassMarker from the API Directory, store the key once, and your agent calls it.

Permission scoping

Permission scoping

ClassMarker puts ids like the access list id and question id in the URL path (/v1/accesslists/{access_list_id}.json), so a rule can pin your agent to one of those resources. You choose the operations it may call, so updating a question is not included unless you add it.

Credential management

Credential isolation

Your ClassMarker API key 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

Intent-based discovery

Agents search Jentic by intent such as 'get recent quiz results' or 'create a question in ClassMarker', and Jentic returns the matching operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

Related APIs

Alternatives and complements available in the Jentic catalogue.

Alternative

Typeform API

→

Form and quiz platform with results retrieval

Choose Typeform when survey-style flows matter; choose ClassMarker for graded testing with question banks and access codes

Complementary

Moodle API

→

Open-source LMS for course delivery and grading

Pair Moodle with ClassMarker when course content lives in Moodle but graded assessments are run in ClassMarker

Complementary

Schoology API

→

K-12 and higher-ed LMS

Use Schoology for course management and ClassMarker for the testing layer with detailed result reporting

FAQs

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.

Can I limit what my agent is allowed to do with the ClassMarker API?

Yes. Jentic One is self-hosted, so your own rules decide which ClassMarker operations and credentials the agent can use. Because ClassMarker puts identifiers like the access list id and question id in the URL path (for example /v1/accesslists/{access_list_id}.json), you can pin the agent to a single resource, and you choose the operations it may call, so updating a question with PUT /v1/questions/{question_id}.json is not available unless you add it. Read-only work such as GET /v1/groups/recent_results.json can be permitted while write operations stay off.

GET STARTED

Start building with ClassMarker API

Explore with Jentic One
View OpenAPI Document