curl --request GET \
--url https://qti.alpha-1edtech.ai/api/assessment-items \
--header 'Authorization: Bearer <token>'import requests
url = "https://qti.alpha-1edtech.ai/api/assessment-items"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://qti.alpha-1edtech.ai/api/assessment-items', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://qti.alpha-1edtech.ai/api/assessment-items",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://qti.alpha-1edtech.ai/api/assessment-items"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://qti.alpha-1edtech.ai/api/assessment-items")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://qti.alpha-1edtech.ai/api/assessment-items")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"items": [
{
"identifier": "<string>",
"title": "<string>",
"type": "choice",
"qtiVersion": "3.0",
"timeDependent": false,
"adaptive": false,
"rawXml": "<string>",
"content": {
"qti-assessment-item": {
"_attributes": {
"xmlns": "<string>",
"xmlns:xsi": "<string>",
"xsi:schemaLocation": "<string>",
"identifier": "<string>",
"title": "<string>",
"adaptive": "<string>",
"time-dependent": "<string>"
},
"qti-response-declaration": [
{
"_attributes": {
"identifier": "<string>",
"cardinality": "<string>",
"baseType": "<string>"
},
"qti-correct-response": {
"qti-value": [
"<string>"
]
}
}
],
"qti-outcome-declaration": [
{
"_attributes": {
"identifier": "<string>",
"cardinality": "<string>",
"baseType": "<string>"
}
}
],
"qti-assessment-stimulus-ref": [
{
"_attributes": {
"identifier": "<string>",
"href": "<string>",
"title": "<string>"
}
}
],
"qti-item-body": "<unknown>",
"qti-response-processing": "<unknown>"
}
},
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"isValidQTI": true,
"warnings": [
"<string>"
],
"customInteractionTypeIdentifier": "<string>",
"responseDeclarations": [
{
"identifier": "<string>",
"cardinality": "single",
"baseType": "identifier",
"correctResponse": {
"value": [
"<string>"
]
}
}
],
"outcomeDeclarations": [
{
"identifier": "<string>",
"cardinality": "single",
"baseType": "identifier"
}
],
"responseProcessing": {
"templateType": "match_correct",
"responseDeclarationIdentifier": "<string>",
"outcomeIdentifier": "<string>",
"correctResponseIdentifier": "<string>",
"incorrectResponseIdentifier": "<string>",
"inlineFeedback": {
"outcomeIdentifier": "<string>",
"variableIdentifier": "<string>"
}
},
"metadata": {
"subject": "Math",
"grade": "10",
"difficulty": "easy",
"learningObjectiveSet": [
{
"source": "CASE",
"learningObjectiveIds": [
"id-123",
"id-456",
"id-789"
]
}
]
},
"modalFeedback": [
{
"outcomeIdentifier": "<string>",
"identifier": "<string>",
"showHide": "show",
"content": "<string>",
"title": "<string>"
}
],
"feedbackInline": [
{
"outcomeIdentifier": "<string>",
"identifier": "<string>",
"showHide": "show",
"content": "<string>",
"class": [
"<string>"
]
}
],
"feedbackBlock": [
{
"outcomeIdentifier": "<string>",
"identifier": "<string>",
"showHide": "show",
"content": "<string>",
"class": [
"<string>"
]
}
],
"__v": 123
}
],
"total": 123,
"page": 1,
"pages": 123,
"limit": 10,
"sort": "<string>",
"order": "asc"
}{
"error": "<string>",
"code": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"details": "<string>",
"errors": [
{
"detail": "<string>",
"pointer": "<string>"
}
],
"traceId": "<string>"
}{
"error": "<string>",
"code": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"details": "<string>",
"errors": [
{
"detail": "<string>",
"pointer": "<string>"
}
],
"traceId": "<string>"
}{
"error": "<string>",
"code": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"details": "<string>",
"errors": [
{
"detail": "<string>",
"pointer": "<string>"
}
],
"traceId": "<string>"
}{
"error": "<string>",
"code": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"details": "<string>",
"errors": [
{
"detail": "<string>",
"pointer": "<string>"
}
],
"traceId": "<string>"
}{
"error": "<string>",
"code": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"details": "<string>",
"errors": [
{
"detail": "<string>",
"pointer": "<string>"
}
],
"traceId": "<string>"
}{
"error": "<string>",
"code": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"details": "<string>",
"errors": [
{
"detail": "<string>",
"pointer": "<string>"
}
],
"traceId": "<string>"
}Search and filter assessment items
Search and retrieve assessment items (questions) with advanced filtering capabilities. Supports text search across titles and identifiers, filtering by type, sorting, and pagination. Assessment items are the core content units that contain questions, answer choices, and scoring logic.
curl --request GET \
--url https://qti.alpha-1edtech.ai/api/assessment-items \
--header 'Authorization: Bearer <token>'import requests
url = "https://qti.alpha-1edtech.ai/api/assessment-items"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://qti.alpha-1edtech.ai/api/assessment-items', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://qti.alpha-1edtech.ai/api/assessment-items",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://qti.alpha-1edtech.ai/api/assessment-items"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://qti.alpha-1edtech.ai/api/assessment-items")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://qti.alpha-1edtech.ai/api/assessment-items")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"items": [
{
"identifier": "<string>",
"title": "<string>",
"type": "choice",
"qtiVersion": "3.0",
"timeDependent": false,
"adaptive": false,
"rawXml": "<string>",
"content": {
"qti-assessment-item": {
"_attributes": {
"xmlns": "<string>",
"xmlns:xsi": "<string>",
"xsi:schemaLocation": "<string>",
"identifier": "<string>",
"title": "<string>",
"adaptive": "<string>",
"time-dependent": "<string>"
},
"qti-response-declaration": [
{
"_attributes": {
"identifier": "<string>",
"cardinality": "<string>",
"baseType": "<string>"
},
"qti-correct-response": {
"qti-value": [
"<string>"
]
}
}
],
"qti-outcome-declaration": [
{
"_attributes": {
"identifier": "<string>",
"cardinality": "<string>",
"baseType": "<string>"
}
}
],
"qti-assessment-stimulus-ref": [
{
"_attributes": {
"identifier": "<string>",
"href": "<string>",
"title": "<string>"
}
}
],
"qti-item-body": "<unknown>",
"qti-response-processing": "<unknown>"
}
},
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"isValidQTI": true,
"warnings": [
"<string>"
],
"customInteractionTypeIdentifier": "<string>",
"responseDeclarations": [
{
"identifier": "<string>",
"cardinality": "single",
"baseType": "identifier",
"correctResponse": {
"value": [
"<string>"
]
}
}
],
"outcomeDeclarations": [
{
"identifier": "<string>",
"cardinality": "single",
"baseType": "identifier"
}
],
"responseProcessing": {
"templateType": "match_correct",
"responseDeclarationIdentifier": "<string>",
"outcomeIdentifier": "<string>",
"correctResponseIdentifier": "<string>",
"incorrectResponseIdentifier": "<string>",
"inlineFeedback": {
"outcomeIdentifier": "<string>",
"variableIdentifier": "<string>"
}
},
"metadata": {
"subject": "Math",
"grade": "10",
"difficulty": "easy",
"learningObjectiveSet": [
{
"source": "CASE",
"learningObjectiveIds": [
"id-123",
"id-456",
"id-789"
]
}
]
},
"modalFeedback": [
{
"outcomeIdentifier": "<string>",
"identifier": "<string>",
"showHide": "show",
"content": "<string>",
"title": "<string>"
}
],
"feedbackInline": [
{
"outcomeIdentifier": "<string>",
"identifier": "<string>",
"showHide": "show",
"content": "<string>",
"class": [
"<string>"
]
}
],
"feedbackBlock": [
{
"outcomeIdentifier": "<string>",
"identifier": "<string>",
"showHide": "show",
"content": "<string>",
"class": [
"<string>"
]
}
],
"__v": 123
}
],
"total": 123,
"page": 1,
"pages": 123,
"limit": 10,
"sort": "<string>",
"order": "asc"
}{
"error": "<string>",
"code": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"details": "<string>",
"errors": [
{
"detail": "<string>",
"pointer": "<string>"
}
],
"traceId": "<string>"
}{
"error": "<string>",
"code": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"details": "<string>",
"errors": [
{
"detail": "<string>",
"pointer": "<string>"
}
],
"traceId": "<string>"
}{
"error": "<string>",
"code": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"details": "<string>",
"errors": [
{
"detail": "<string>",
"pointer": "<string>"
}
],
"traceId": "<string>"
}{
"error": "<string>",
"code": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"details": "<string>",
"errors": [
{
"detail": "<string>",
"pointer": "<string>"
}
],
"traceId": "<string>"
}{
"error": "<string>",
"code": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"details": "<string>",
"errors": [
{
"detail": "<string>",
"pointer": "<string>"
}
],
"traceId": "<string>"
}{
"error": "<string>",
"code": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"details": "<string>",
"errors": [
{
"detail": "<string>",
"pointer": "<string>"
}
],
"traceId": "<string>"
}Authorizations
The access token received from the authorization server in the OAuth 2.0 flow.
Query Parameters
Search title and identifier fields using a search term. This is a fuzzy search.
Page number for pagination
x >= 11
Number of items per page
1 <= x <= 100010
Field to sort by
title, identifier, type, createdAt, updatedAt "createdAt"
Sort order
asc, desc "desc"
Advanced filter expression using =, !=, >, >=, <, <=, ~ and logical AND/OR. Example: type='choice'
"type='choice'"
Only items that an assessment test with this subject references
"Math"
Only items that an assessment test with this grade references
"5"
Filter by question type - native field with simple index
"choice"
Case-insensitive substring search on qti-prompt-text
"pythagorean"
Response
List of assessment items with pagination metadata
Paginated response containing all assessment items available on the service provider with navigation metadata
Array of assessment items that match the search criteria
Show child attributes
Show child attributes
The total number of entities that match the search criteria.
The page number of the entities that match the search criteria.
The total number of pages of entities that match the search criteria.
The number of entities per page.
The field to sort the entities by.
The order to sort the entities by. Either 'asc' or 'desc'.
asc, desc