Install
openclaw skills install adaptivetest-skillAdaptive testing engine with IRT/CAT, AI question generation, and personalized learning recommendations
openclaw skills install adaptivetest-skillProduction-grade adaptive testing API. Uses Item Response Theory (IRT 2PL/3PL) with Computerized Adaptive Testing (CAT) to deliver precise ability estimates in fewer questions. Includes AI-powered question generation and personalized learning recommendations.
Use AdaptiveTest when the user needs to:
All requests require the X-API-Key header:
X-API-Key: ${ADAPTIVETEST_API_KEY}
Base URL: https://adaptivetest-platform-production.up.railway.app/api
POST /tests -- Create a test (set cat_enabled: true)
POST /tests/{id}/items -- Add items to the test
POST /tests/{id}/sessions -- Start an adaptive session for a student
GET /sessions/{id}/next-item -- Get the next CAT-selected item
POST /sessions/{id}/responses -- Submit student response
GET /sessions/{id}/results -- Get ability estimate and results
The CAT engine selects items using maximum Fisher information. Ability is estimated after each response using IRT 2PL or 3PL models. Sessions terminate when the standard error drops below threshold or max items are reached.
POST /gen-q -- Generate questions by topic, difficulty, and standard
Request body:
{
"topic": "Quadratic equations",
"difficulty": "medium",
"count": 5,
"standard": "CCSS.MATH.CONTENT.HSA.REI.B.4",
"format": "multiple_choice"
}
Returns QTI 3.0-compatible items with stems, distractors, and rationales. Generation takes ~7 seconds.
POST /recs -- Get personalized learning recommendations for a student
Request body:
{
"student_id": "student-uuid",
"subject": "Mathematics",
"include_resources": true
}
Returns a personalized learning plan based on the student's ability profile and assessment history. Generation takes ~25 seconds.
POST /tests/{id}/calibrate -- Run IRT calibration on collected response data
Requires sufficient response data (minimum 30 responses per item recommended). Returns IRT parameters: difficulty (b), discrimination (a), and guessing (c) for 3PL.
POST /students -- Create a student
GET /students -- List students
POST /classes -- Create a class
POST /classes/{id}/enroll -- Enroll students in a class
OneRoster 1.2 compatible for SIS integration.
GET /sessions/{id}/results -- Detailed session results with ability estimate
GET /students/{id}/history -- Assessment history for a student
GET /tests/{id}/analytics -- Item-level analytics for a test
Rate limits depend on your API key tier. Check X-RateLimit-Remaining header on each response.
All errors return JSON with a detail field:
{"detail": "Human-readable error message"}
Common status codes: 400 (validation), 401 (auth), 403 (limit exceeded), 404 (not found), 429 (rate limited).
For detailed endpoint specifications, request/response shapes, and IRT/CAT concepts, see the references/ directory:
references/api-endpoints.md -- Full endpoint referencereferences/adaptive-testing.md -- IRT and CAT conceptsreferences/calibration.md -- Item calibration guide