281 lines
6.8 KiB
YAML
281 lines
6.8 KiB
YAML
|
openapi: 3.0.1
|
||
|
info:
|
||
|
title: taoTestPreview API
|
||
|
description: Stands for TAO test Previewer API.
|
||
|
version: 1.0.0
|
||
|
servers:
|
||
|
- url: '{server}'
|
||
|
variables:
|
||
|
server:
|
||
|
default: https://community.docker.localhost/
|
||
|
security:
|
||
|
- cookieAuth: []
|
||
|
paths:
|
||
|
/taoQtiTestPreviewer/TestPreviewer/init:
|
||
|
get:
|
||
|
parameters:
|
||
|
- in: query
|
||
|
name: testUri
|
||
|
schema:
|
||
|
type: string
|
||
|
required: true
|
||
|
example: 'https%3A%2F%2Fcommunity.docker.localhost%2Fontologies%2Ftao.rdf%23i5efb42fced1ce7064796c08b38ee176'
|
||
|
description: Url encoded test identifier
|
||
|
|
||
|
summary: Returns a test map
|
||
|
responses:
|
||
|
'200':
|
||
|
$ref: '#/components/responses/InitResponse'
|
||
|
'400':
|
||
|
$ref: '#/components/responses/BadResponse'
|
||
|
|
||
|
/taoQtiTestPreviewer/TestPreviewer/configuration:
|
||
|
get:
|
||
|
responses:
|
||
|
'200':
|
||
|
$ref: '#/components/responses/ConfigurationResponse'
|
||
|
summary: Returns current active configuration for testRunner
|
||
|
|
||
|
|
||
|
components:
|
||
|
securitySchemes:
|
||
|
cookieAuth:
|
||
|
type: apiKey
|
||
|
in: cookie
|
||
|
name: tao_community
|
||
|
|
||
|
responses:
|
||
|
InitResponse:
|
||
|
description: Good response
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: '#/components/schemas/TestInit'
|
||
|
|
||
|
ConfigurationResponse:
|
||
|
description: Response with a prepared configuration of testRunner
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: '#/components/schemas/Configuration'
|
||
|
|
||
|
BadResponse:
|
||
|
description: If something went wrong
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: '#/components/schemas/ErrorResponse'
|
||
|
schemas:
|
||
|
TestInit:
|
||
|
properties:
|
||
|
success:
|
||
|
type: boolean
|
||
|
example: true
|
||
|
data:
|
||
|
type: object
|
||
|
properties:
|
||
|
success:
|
||
|
type: boolean
|
||
|
example: true
|
||
|
testData:
|
||
|
$ref: '#/components/schemas/TestData'
|
||
|
testContext:
|
||
|
$ref: '#/components/schemas/TestContext'
|
||
|
testMap:
|
||
|
$ref: '#/components/schemas/TestMap'
|
||
|
toolStates:
|
||
|
description: the current tools states
|
||
|
type: array
|
||
|
items:
|
||
|
type: integer
|
||
|
lastStoreId:
|
||
|
description: Checks the storeId request parameter and returns the last store id if set, false otherwise
|
||
|
type: string
|
||
|
messages:
|
||
|
type: array
|
||
|
items:
|
||
|
type: integer
|
||
|
|
||
|
TestData:
|
||
|
description: test definition data
|
||
|
deprecated: true
|
||
|
type: object
|
||
|
properties:
|
||
|
title:
|
||
|
type: string
|
||
|
identifier:
|
||
|
type: string
|
||
|
className:
|
||
|
type: string
|
||
|
toolName:
|
||
|
type: string
|
||
|
exclusivelyLinear:
|
||
|
type: boolean
|
||
|
hasTimeLimits:
|
||
|
type: boolean
|
||
|
states:
|
||
|
type: object
|
||
|
itemStates:
|
||
|
type: object
|
||
|
config:
|
||
|
type: object
|
||
|
|
||
|
TestContext:
|
||
|
description: test context object
|
||
|
type: object
|
||
|
|
||
|
TestMap:
|
||
|
description: the map of the test items
|
||
|
properties:
|
||
|
scope:
|
||
|
type: string
|
||
|
example: test
|
||
|
parts:
|
||
|
type: object
|
||
|
additionalProperties:
|
||
|
$ref: '#/components/schemas/TestPartElement'
|
||
|
title:
|
||
|
type: string
|
||
|
example: My awsame MathTest
|
||
|
identifier:
|
||
|
type: string
|
||
|
className:
|
||
|
type: string
|
||
|
toolName:
|
||
|
type: string
|
||
|
example: tao
|
||
|
exclusivelyLinear:
|
||
|
type: boolean
|
||
|
example: false
|
||
|
hasTimeLimits:
|
||
|
type: boolean
|
||
|
stats:
|
||
|
$ref: '#/components/schemas/StatsBlock'
|
||
|
|
||
|
ItemElement:
|
||
|
allOf:
|
||
|
- $ref: '#/components/schemas/EntryBaseElement'
|
||
|
- type: object
|
||
|
properties:
|
||
|
occurrence:
|
||
|
type: integer
|
||
|
example: 0
|
||
|
remainingAttempts:
|
||
|
type: integer
|
||
|
example: -1
|
||
|
answered:
|
||
|
type: boolean
|
||
|
example: false
|
||
|
flagged:
|
||
|
type: boolean
|
||
|
example: false
|
||
|
viewed:
|
||
|
type: boolean
|
||
|
example: false
|
||
|
categories:
|
||
|
type: array
|
||
|
items:
|
||
|
type: string
|
||
|
example:
|
||
|
- x-tao-option-reviewScreen
|
||
|
- x-tao-option-markReview
|
||
|
uri:
|
||
|
type: string
|
||
|
example: 'https:\/\/community.docker.localhost\/ontologies\/tao.rdf#i5efb4307b48d370fb46778476db6eb9'
|
||
|
informational:
|
||
|
type: boolean
|
||
|
example: false
|
||
|
|
||
|
SectionElement:
|
||
|
allOf:
|
||
|
- $ref: '#/components/schemas/EntryBaseElement'
|
||
|
- type: object
|
||
|
properties:
|
||
|
isCatAdaptive:
|
||
|
type: boolean
|
||
|
example: false
|
||
|
timeConstraint:
|
||
|
example: null
|
||
|
items:
|
||
|
type: object
|
||
|
additionalProperties:
|
||
|
$ref: '#/components/schemas/ItemElement'
|
||
|
stats:
|
||
|
$ref: '#/components/schemas/StatsBlock'
|
||
|
|
||
|
TestPartElement:
|
||
|
allOf:
|
||
|
- $ref: '#/components/schemas/EntryBaseElement'
|
||
|
- type: object
|
||
|
properties:
|
||
|
isLinear:
|
||
|
type: boolean
|
||
|
timeConstraint:
|
||
|
example: null
|
||
|
sections:
|
||
|
type: object
|
||
|
additionalProperties:
|
||
|
$ref: '#/components/schemas/SectionElement'
|
||
|
|
||
|
EntryBaseElement:
|
||
|
properties:
|
||
|
id:
|
||
|
type: string
|
||
|
example: i-4
|
||
|
label:
|
||
|
type: string
|
||
|
example: Showcase label
|
||
|
position:
|
||
|
type: integer
|
||
|
example: 20
|
||
|
|
||
|
ErrorResponse:
|
||
|
properties:
|
||
|
success:
|
||
|
type: boolean
|
||
|
example: false
|
||
|
code:
|
||
|
type: integer
|
||
|
example: 400
|
||
|
message:
|
||
|
type: string
|
||
|
example: Internal error occured
|
||
|
|
||
|
StatsBlock:
|
||
|
properties:
|
||
|
questions:
|
||
|
type: integer
|
||
|
example: 11
|
||
|
answered:
|
||
|
type: integer
|
||
|
example: 0
|
||
|
flagged:
|
||
|
type: integer
|
||
|
example: 3
|
||
|
viewed:
|
||
|
type: integer
|
||
|
example: 5
|
||
|
total:
|
||
|
type: integer
|
||
|
example: 99
|
||
|
questionsViewed:
|
||
|
type: integer
|
||
|
example: 19
|
||
|
|
||
|
Configuration:
|
||
|
properties:
|
||
|
success:
|
||
|
type: boolean
|
||
|
example: true
|
||
|
data:
|
||
|
type: object
|
||
|
properties:
|
||
|
providers:
|
||
|
type: array
|
||
|
items:
|
||
|
type: object
|
||
|
options:
|
||
|
type: array
|
||
|
items:
|
||
|
type: object
|