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

# Get quiz details

> Retrieve a specific quiz by ID, including all rounds, questions, and answers. Only accessible if the user is an admin or delegated admin of the quiz.



## OpenAPI

````yaml /openapi.json get /v1/quizzes/{quizId}
openapi: 3.0.3
info:
  title: Doozy Public API
  version: 1.0.0
  description: >-
    The Doozy Public API allows you to programmatically access your
    organization's data.


    ## Authentication


    All API requests require an API key passed in the `x-api-key` header.


    ```

    x-api-key: dzy_xxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

    ```


    API keys can be generated and managed through the Doozy dashboard. Each key
    is associated with a user account and inherits that user's permissions.


    ## Rate Limiting


    API requests are rate limited. Rate limiting is handled by Cloudflare. If
    you exceed the rate limit, you'll receive a 429 Too Many Requests response.


    ## Pagination


    List endpoints support cursor-based pagination using `limit` and
    `starting_after` query parameters.
  contact:
    name: Doozy Support
    email: support@doozy.live
    url: https://help.doozy.live/api
servers:
  - url: https://api.doozy.live
    description: Production
security:
  - apiKey: []
tags:
  - name: Quizzes
    description: Quiz analytics and reporting endpoints
  - name: Tracks
    description: Track management and analytics endpoints
  - name: Surveys
    description: Survey and poll analytics endpoints
  - name: Introductions
    description: Doozy Roulette and Matchmaking introduction endpoints
paths:
  /v1/quizzes/{quizId}:
    get:
      tags:
        - Quizzes
      summary: Get quiz details
      description: >-
        Retrieve a specific quiz by ID, including all rounds, questions, and
        answers. Only accessible if the user is an admin or delegated admin of
        the quiz.
      parameters:
        - schema:
            type: string
            minLength: 1
            description: The unique identifier of the quiz
            example: quiz_abc123
          required: true
          description: The unique identifier of the quiz
          name: quizId
          in: path
      responses:
        '200':
          description: Quiz details with rounds and questions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuizDetail'
        '401':
          description: Authentication required - missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Invalid API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Quiz not found or user does not have access
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
        - apiKey: []
components:
  schemas:
    QuizDetail:
      allOf:
        - $ref: '#/components/schemas/QuizSummary'
        - type: object
          properties:
            question_count:
              type: integer
              description: Total number of questions across all rounds
              example: 15
            rounds:
              type: array
              items:
                $ref: '#/components/schemas/Round'
              description: Rounds containing questions
          required:
            - rounds
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - api_error
                - authentication_error
                - invalid_request_error
                - rate_limit_error
              description: The type of error returned
              example: invalid_request_error
            code:
              type: string
              nullable: true
              description: Machine-readable error code for specific error conditions
              example: resource_not_found
            message:
              type: string
              description: Human-readable error message
              example: 'No such quiz: quiz_abc123'
            param:
              type: string
              nullable: true
              description: The parameter related to the error, if applicable
              example: id
            doc_url:
              type: string
              format: uri
              description: URL to documentation about this error
              example: https://docs.doozy.live/api/errors#resource_not_found
          required:
            - type
            - code
            - message
      required:
        - error
    QuizSummary:
      type: object
      properties:
        object:
          type: string
          enum:
            - quiz
          description: Object type identifier
          example: quiz
        id:
          type: string
          description: Unique quiz identifier
          example: quiz_abc123
        title:
          type: string
          description: Quiz title
          example: Product Knowledge Assessment
        description:
          type: string
          nullable: true
          description: Quiz description
          example: Test your knowledge of our product lineup
        visibility:
          type: string
          enum:
            - public
            - public_unlisted
            - account
            - private
          description: Quiz visibility setting
          example: private
        round_count:
          type: integer
          description: Number of rounds in the quiz
          example: 3
        question_count:
          type: integer
          nullable: true
          description: Total number of questions in the quiz
          example: 15
        created_at:
          type: string
          nullable: true
          description: When the quiz was created (ISO 8601 format)
          example: '2026-01-15T10:30:00.000Z'
        updated_at:
          type: string
          nullable: true
          description: When the quiz was last updated (ISO 8601 format)
          example: '2026-01-20T14:00:00.000Z'
      required:
        - object
        - id
        - title
        - description
        - visibility
        - round_count
        - question_count
        - created_at
        - updated_at
    Round:
      type: object
      properties:
        object:
          type: string
          enum:
            - round
          description: Object type identifier
          example: round
        id:
          type: string
          description: Unique round identifier
          example: round_xyz789
        name:
          type: string
          description: Round name/title
          example: Geography
        question_count:
          type: integer
          description: Number of questions in this round
          example: 5
        questions:
          type: array
          items:
            $ref: '#/components/schemas/Question'
          description: Questions in this round
      required:
        - object
        - id
        - name
        - question_count
        - questions
    Question:
      type: object
      properties:
        object:
          type: string
          enum:
            - question
          description: Object type identifier
          example: question
        id:
          type: string
          description: Unique question identifier
          example: q_abc123
        type:
          type: string
          enum:
            - multipleChoice
            - freeText
          description: Type of question
          example: multipleChoice
        question:
          type: string
          description: The question text
          example: What is the capital of France?
        available_answers:
          type: array
          items:
            $ref: '#/components/schemas/AnswerOption'
          description: Available answer options (for multiple choice questions)
        correct_answers:
          type: array
          items:
            $ref: '#/components/schemas/AnswerOption'
          description: The correct answer(s) with id and answer text
        explanation:
          type: string
          nullable: true
          description: Explanation shown after answering
          example: Paris has been the capital of France since the 10th century.
      required:
        - object
        - id
        - type
        - question
        - available_answers
        - correct_answers
        - explanation
    AnswerOption:
      type: object
      properties:
        id:
          type: string
          description: Unique answer identifier
          example: ans_a1b2c3
        answer:
          type: string
          description: The answer text
          example: Paris
      required:
        - id
        - answer
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-api-key
      description: API key for authentication. Generate keys in the Doozy dashboard.

````