> ## Documentation Index
> Fetch the complete documentation index at: https://docs.timeback.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Search and filter assessment tests

> Search and retrieve assessment tests with advanced filtering capabilities. Supports text search across titles and identifiers, filtering by navigation/submission modes, and pagination. Assessment tests are the top-level containers that define complete testing experiences through their test parts and sections.



## OpenAPI

````yaml /openapi/beyond-ai/qti-api.yaml get /assessment-tests
openapi: 3.1.0
info:
  title: QTI API
  version: 1.0.0
  description: >-
    A robust assessment engine implementing the QTI 3.0 specification, designed
    for creating, managing, and delivering educational assessments.
servers:
  - url: https://qti.alpha-1edtech.ai/api
    description: Main Server
security:
  - OAuth2: []
  - MCP: []
tags:
  - name: Validation
    description: >-
      Validate XML strings against QTI compliant XSD files. XSD version
      supported is 3.0.0 (3p0)
  - name: Feedback
    description: Feedback for questions and lessons
  - name: Assessment Test Management
    description: >-
      Enables the management of Assessment Tests. Assessment Tests are the main
      entities that contain Assessment Test Parts, Sections, and Assessment
      Items.
  - name: Test Part Management
    description: >-
      Enables the management of Test Parts. Assessment Test Parts are used to
      group sections inside of an Assessment Test.
  - name: Section Management
    description: >-
      Enables the management of Sections. Assessment Sections are used to group
      Assessment Items.
  - name: Assessment Item Management
    description: >-
      Enables the management of Assessment ITems. Assessment Items are made up
      of QTI Interactions (e.g. questions, multiple choice, etc.).
  - name: Stimulus Management
    description: >-
      Enables the management of Stimuli. Stimuli are shared content pieces
      (text, images, audio, video) that provide context for assessment items and
      can be referenced by multiple questions.
paths:
  /assessment-tests:
    get:
      tags:
        - Assessment Test Management
      summary: Search and filter assessment tests
      description: >-
        Search and retrieve assessment tests with advanced filtering
        capabilities. Supports text search across titles and identifiers,
        filtering by navigation/submission modes, and pagination. Assessment
        tests are the top-level containers that define complete testing
        experiences through their test parts and sections.
      operationId: searchAssessmentTests
      parameters:
        - in: query
          name: query
          description: >-
            Search title and identifier fields using a search term. This is a
            fuzzy search.
          schema:
            type: string
            description: >-
              Search title and identifier fields using a search term. This is a
              fuzzy search.
        - in: query
          name: page
          description: Page number for pagination
          schema:
            type: string
            default: '1'
            description: Page number for pagination
            example: 1
        - in: query
          name: limit
          description: Number of items per page
          schema:
            type: string
            default: '10'
            description: Number of items per page
            example: 10
        - in: query
          name: sort
          description: Field to sort by
          schema:
            type: string
            enum:
              - title
              - identifier
              - createdAt
              - updatedAt
            description: Field to sort by
            example: createdAt
        - in: query
          name: order
          description: Sort order
          schema:
            type: string
            enum:
              - asc
              - desc
            default: desc
            description: Sort order
            example: desc
        - in: query
          name: navigationMode
          description: >-
            Filter by navigation mode (linear: sequential navigation, nonlinear:
            free navigation)
          schema:
            type: string
            enum:
              - linear
              - nonlinear
            description: >-
              Filter by navigation mode (linear: sequential navigation,
              nonlinear: free navigation)
            example: linear
        - in: query
          name: submissionMode
          description: >-
            Filter by submission mode (individual: submit per item,
            simultaneous: submit all at once)
          schema:
            type: string
            enum:
              - individual
              - simultaneous
            description: >-
              Filter by submission mode (individual: submit per item,
              simultaneous: submit all at once)
            example: individual
        - in: query
          name: subject
          description: >-
            Filter by subject (e.g. Math, Reading) using the optimized
            consolidated field
          schema:
            type: string
            description: >-
              Filter by subject (e.g. Math, Reading) using the optimized
              consolidated field
            example: Math
        - in: query
          name: grade
          description: Filter by grade level using the optimized consolidated field
          schema:
            type: string
            description: Filter by grade level using the optimized consolidated field
            example: '5'
        - in: query
          name: hasQuestions
          description: >-
            Filter tests based on whether they have questions (true) or not
            (false)
          schema:
            type: string
            enum:
              - 'true'
              - 'false'
            description: >-
              Filter tests based on whether they have questions (true) or not
              (false)
            example: 'true'
        - in: query
          name: filter
          description: >-
            Advanced filter expression using =, !=, >, >=, <, <=, ~ and logical
            AND/OR. Example: type='practice' AND createdAt>'2024-01-01'
          schema:
            type: string
            description: >-
              Advanced filter expression using =, !=, >, >=, <, <=, ~ and
              logical AND/OR. Example: type='practice' AND
              createdAt>'2024-01-01'
      responses:
        '200':
          description: Assessment tests retrieved successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  items:
                    type: array
                    items:
                      type: object
                      properties:
                        identifier:
                          type: string
                          description: >-
                            Unique identifier for the entity on the service
                            provider.
                        title:
                          type: string
                          description: >-
                            Human-readable title of the entity on the service
                            provider.
                        qtiVersion:
                          type: string
                          default: '3.0'
                          description: >-
                            Version of the specification used for this
                            assessment test
                        qti-test-part:
                          type: array
                          items:
                            type: object
                            properties:
                              identifier:
                                type: string
                                description: >-
                                  Unique identifier for the entity on the
                                  service provider.
                              navigationMode:
                                type: string
                                enum:
                                  - linear
                                  - nonlinear
                                description: >-
                                  Controls how learners navigate through the
                                  test part. 'linear' requires items to be
                                  responded to in sequence without jumping
                                  around, while 'nonlinear' allows candidates to
                                  respond to items in any order they choose.
                              submissionMode:
                                type: string
                                enum:
                                  - individual
                                  - simultaneous
                                description: >-
                                  Determines how learner responses are submitted
                                  for response processing. 'individual' allows
                                  responses to be submitted as each item is
                                  completed, while 'simultaneous' means
                                  responses for all items are sent when the
                                  whole part is completed.
                              qti-assessment-section:
                                type: array
                                items:
                                  type: object
                                  properties:
                                    identifier:
                                      type: string
                                      description: >-
                                        Unique identifier for the entity on the
                                        service provider.
                                    title:
                                      type: string
                                      description: >-
                                        Human-readable title of the entity on
                                        the service provider.
                                    visible:
                                      type: boolean
                                      default: true
                                      description: >-
                                        Determines whether the assessment
                                        section is visible to candidates during
                                        test delivery. Sections are visible by
                                        default unless explicitly hidden for
                                        specific assessment conditions.
                                    required:
                                      type: boolean
                                      default: true
                                      description: >-
                                        If a child element is required it must
                                        appear (at least once) in the selection.
                                    fixed:
                                      type: boolean
                                      default: false
                                      description: >-
                                        If a child element is fixed it must
                                        never be shuffled. When used in
                                        combination with a selection rule fixed
                                        elements do not have their position
                                        fixed until after selection has taken
                                        place.
                                    sequence:
                                      type: integer
                                      exclusiveMinimum: 0
                                      description: >-
                                        Defines the sequential order of this
                                        item within its parent section. Must be
                                        a positive integer that determines
                                        presentation order to candidates.
                                    qti-assessment-item-ref:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          identifier:
                                            type: string
                                            description: >-
                                              Unique identifier for the entity on the
                                              service provider.
                                          href:
                                            type: string
                                            description: >-
                                              URI reference to the assessment item
                                              resource location on the service
                                              provider
                                        required:
                                          - identifier
                                        description: >-
                                          Assessment item reference schema for
                                          linking assessment items to sections
                                      description: >-
                                        Collection of assessment items that are
                                        referenced within this section.
                                    qti-pre-condition:
                                      type: array
                                      items:
                                        type: object
                                        additionalProperties: {}
                                      description: >-
                                        Array of QTI 3.0 pre-conditions. Each
                                        pre-condition contains a logical
                                        expression that is evaluated before the
                                        element is presented. If any
                                        pre-condition evaluates to false, the
                                        element is skipped.
                                    qti-branch-rule:
                                      type: array
                                      items:
                                        type: object
                                        additionalProperties: {}
                                      description: >-
                                        Array of QTI 3.0 branch rules. Each
                                        branch rule contains a logical
                                        expression that, when evaluated to true
                                        after the element is presented, causes
                                        the test to jump to the target
                                        identified by the rule.
                                  required:
                                    - identifier
                                    - title
                                    - visible
                                  description: >-
                                    Complete assessment section data with all
                                    referenced items. Represents a section
                                    containing learning content within a test
                                    part.
                              qti-pre-condition:
                                type: array
                                items:
                                  type: object
                                  additionalProperties: {}
                                description: >-
                                  Array of QTI 3.0 pre-conditions. Each
                                  pre-condition contains a logical expression
                                  that is evaluated before the element is
                                  presented. If any pre-condition evaluates to
                                  false, the element is skipped.
                              qti-branch-rule:
                                type: array
                                items:
                                  type: object
                                  additionalProperties: {}
                                description: >-
                                  Array of QTI 3.0 branch rules. Each branch
                                  rule contains a logical expression that, when
                                  evaluated to true after the element is
                                  presented, causes the test to jump to the
                                  target identified by the rule.
                            required:
                              - identifier
                              - navigationMode
                              - submissionMode
                              - qti-assessment-section
                            description: >-
                              Complete test part data returned from the service
                              provider. Contains all sections and their
                              configuration.
                        qti-outcome-declaration:
                          type: array
                          items:
                            type: object
                            properties:
                              identifier:
                                type: string
                                description: >-
                                  Unique identifier for the entity on the
                                  service provider.
                              cardinality:
                                type: string
                                enum:
                                  - single
                                  - multiple
                                  - ordered
                                  - record
                                default: single
                                description: >-
                                  Defines how scoring information is structured
                                  and stored. 'single' for one overall score,
                                  'multiple' for separate scores or points,
                                  'ordered' for scores maintaining a specific
                                  sequence, 'record' for complex scoring with
                                  multiple named components.
                              baseType:
                                type: string
                                enum:
                                  - identifier
                                  - boolean
                                  - integer
                                  - float
                                  - string
                                  - point
                                  - pair
                                  - directedPair
                                  - duration
                                  - file
                                  - uri
                                description: >-
                                  Data type of the outcome variable, determining
                                  how values are stored and processed
                              normalMaximum:
                                type: number
                                description: >-
                                  Expected maximum value for this outcome
                                  variable in normal circumstances
                              normalMinimum:
                                type: number
                                description: >-
                                  Expected minimum value for this outcome
                                  variable in normal circumstances
                              defaultValue:
                                type: object
                                properties:
                                  value:
                                    description: >-
                                      The default value to assign to the outcome
                                      variable
                                description: >-
                                  Optional default value configuration for
                                  outcome variables
                            required:
                              - identifier
                              - cardinality
                              - baseType
                          description: >-
                            Array of outcome variable declarations for storing
                            assessment results and computed values
                        timeLimit:
                          type: number
                          description: >-
                            Time limit for the entire assessment test in
                            seconds. When not specified, there is no time limit
                        maxAttempts:
                          type: number
                          description: >-
                            Maximum number of attempts allowed for the
                            assessment test. When not specified, unlimited
                            attempts are allowed
                        toolsEnabled:
                          type: object
                          additionalProperties:
                            type: boolean
                          description: >-
                            Configuration of assessment tools available to
                            candidates. Each tool is represented as a key-value
                            pair where the key is the tool name and the value
                            indicates if it's enabled
                        metadata:
                          type: object
                          additionalProperties: {}
                          description: >-
                            Additional custom metadata for extending entity
                            properties beyond standard specification for QTI
                            entities.
                        rawXml:
                          type: string
                          description: >-
                            Raw XML representation of the entity, automatically
                            generated from the JSON or XML sent when creating
                            entities on the service provider. The rawxml field
                            will contain all content sent when creating the
                            entity on the service provider. This field is stable
                            and should be used when working within this QTI API.
                        content:
                          type: object
                          properties:
                            qti-assessment-test:
                              type: object
                              properties:
                                _attributes:
                                  type: object
                                  properties:
                                    xmlns:
                                      type: string
                                    xmlns:xsi:
                                      type: string
                                    xsi:schemaLocation:
                                      type: string
                                    identifier:
                                      type: string
                                    title:
                                      type: string
                                    tool-name:
                                      type: string
                                    tool-version:
                                      type: string
                                  required:
                                    - xmlns
                                    - xmlns:xsi
                                    - xsi:schemaLocation
                                    - identifier
                                    - title
                                    - tool-name
                                    - tool-version
                                qti-outcome-declaration:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      _attributes:
                                        type: object
                                        properties:
                                          identifier:
                                            type: string
                                          cardinality:
                                            type: string
                                          base-type:
                                            type: string
                                        required:
                                          - identifier
                                          - cardinality
                                          - base-type
                                      qti-default-value:
                                        type: object
                                        properties:
                                          qti-value: {}
                                      normal-maximum:
                                        type: number
                                      normal-minimum:
                                        type: number
                                    required:
                                      - _attributes
                                qti-test-part:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      _attributes:
                                        type: object
                                        properties:
                                          identifier:
                                            type: string
                                          navigation-mode:
                                            type: string
                                          submission-mode:
                                            type: string
                                        required:
                                          - identifier
                                          - navigation-mode
                                          - submission-mode
                                      qti-assessment-section:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            _attributes:
                                              type: object
                                              properties:
                                                identifier:
                                                  type: string
                                                title:
                                                  type: string
                                                visible:
                                                  type: string
                                              required:
                                                - identifier
                                                - title
                                                - visible
                                            qti-assessment-item-ref:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  _attributes:
                                                    type: object
                                                    properties:
                                                      identifier:
                                                        type: string
                                                      href:
                                                        type: string
                                                    required:
                                                      - identifier
                                                      - href
                                                required:
                                                  - _attributes
                                          required:
                                            - _attributes
                                    required:
                                      - _attributes
                                      - qti-assessment-section
                              required:
                                - _attributes
                                - qti-outcome-declaration
                                - qti-test-part
                          required:
                            - qti-assessment-test
                          description: >-
                            Parsed XML content structure for the assessment
                            test. For production use, rawXml is recommended over
                            this parsed structure.
                        createdAt:
                          type: string
                          format: date-time
                          description: ISO 8601 timestamp when the entity was created
                        updatedAt:
                          type: string
                          format: date-time
                          description: ISO 8601 timestamp when the entity was last updated
                        __v:
                          type: number
                          description: >-
                            MongoDB version key for optimistic concurrency
                            control
                      required:
                        - identifier
                        - title
                        - qtiVersion
                        - qti-test-part
                        - qti-outcome-declaration
                        - rawXml
                        - content
                        - createdAt
                        - updatedAt
                      description: >-
                        Complete assessment test data including all test parts,
                        sections, items, and configuration settings
                    description: >-
                      Array of assessment tests that match the search criteria
                      on the service provider
                  total:
                    type: number
                    description: >-
                      The total number of entities that match the search
                      criteria.
                  page:
                    type: number
                    description: >-
                      The page number of the entities that match the search
                      criteria.
                    default: 1
                  pages:
                    type: number
                    description: >-
                      The total number of pages of entities that match the
                      search criteria.
                  limit:
                    type: number
                    description: The number of entities per page.
                    default: 10
                  sort:
                    type: string
                    description: The field to sort the entities by.
                  order:
                    type: string
                    enum:
                      - asc
                      - desc
                    description: The order to sort the entities by. Either 'asc' or 'desc'.
                required:
                  - items
                  - total
                  - page
                  - pages
                  - limit
                  - sort
                  - order
                description: >-
                  Paginated response containing all assessment tests available
                  on the service provider with navigation metadata
        '400':
          description: Invalid request parameters
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  details:
                    type: string
                required:
                  - error
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: Error type identifier
                  message:
                    type: string
                    description: Human-readable error message
                  eventId:
                    type: string
                    description: Sentry event ID for error tracking
                  details:
                    type: string
                    description: Stack trace or additional error details
                required:
                  - error
                  - message
                  - details
                description: Internal server error response
components:
  securitySchemes:
    OAuth2:
      type: oauth2
      flows:
        clientCredentials:
          scopes:
            https://purl.imsglobal.org/spec/qti/v3/scope/readonly: Read access to QTI
            https://purl.imsglobal.org/spec/qti/v3/scope/createput: Create and update access to QTI
            https://purl.imsglobal.org/spec/qti/v3/scope/delete: Delete access to QTI
          tokenUrl: >-
            https://prod-beyond-timeback-api-2-idp.auth.us-east-1.amazoncognito.com/oauth2/token
    MCP:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: >-
            https://prod-beyond-timeback-api-2-idp.auth.us-east-1.amazoncognito.com/oauth2/authorize
          tokenUrl: >-
            https://prod-beyond-timeback-api-2-idp.auth.us-east-1.amazoncognito.com/oauth2/token
          scopes:
            https://purl.imsglobal.org/spec/qti/v3/scope/readonly: Read access to QTI

````