Questions API

Create, manage, and organize coding questions for your assessments

Overview

The Questions API allows you to create and manage 4 different types of questions that can be used in tests. Our platform supports coding questions, multiple choice questions (MCQ), multiple choice with multiple answers (MCA), and descriptive questions with multiple programming languages, test cases, and difficulty levels.

Coding

Programming challenges with executable test cases

1

MCQ

Multiple choice - single correct answer

MCA

Multiple choice - multiple correct answers

✏️

Descriptive

Open-ended text-based answers

Create Questions

Create coding, MCQ, and descriptive questions with custom test cases

Search & Filter

Find questions by difficulty, category, language, and more

Advanced Filtering

Filter by marks, time limits, topics, and submission statistics

Question Types

Coding Questions

Programming challenges with executable test cases in multiple languages.

Features:

  • • Support for 50+ programming languages
  • • Custom boilerplate code for each language
  • • Multiple test cases (visible and hidden)
  • • Time and memory limits
  • • Automatic code execution and grading

MCQ (Multiple Choice)

Single-answer multiple choice questions for theoretical knowledge.

Features:

  • • Up to 6 answer options
  • • Single correct answer
  • • Automatic scoring
  • • Rich text support

MCA (Multiple Choice - Multiple Answers)

Questions that allow multiple correct answers.

Features:

  • • Multiple correct answers
  • • Partial scoring available
  • • Checkbox-style selection
  • • Flexible answer validation

Descriptive Questions

Open-ended questions requiring manual evaluation. Perfect for system design, architecture discussions, and theoretical concepts.

Features:

  • • Free-form text answers
  • • Manual grading required
  • • Rich text editor support
  • • Ideal for system design questions
  • • No character limits
  • • Support for technical explanations

Question Type Examples

CCoding Question

Title: Two Sum
Type: coding
Languages: JavaScript, Python, Java, C++
Test Cases: 5 visible + 3 hidden

MMCQ Question

Title: JavaScript Concepts
Type: mcq
Options: 4 choices, 1 correct
Auto-graded: Yes

AMCA Question

Title: Web Technologies
Type: mca
Options: 6 choices, 3 correct
Partial Scoring: Available

DDescriptive Question

Title: System Design
Type: descriptive
Format: Free-form text
Grading: Manual evaluation

API Endpoints

POST

Create Question

/api/v1/questions

Auth Required

Create a new coding question. Supports coding challenges, multiple choice, and descriptive questions.

GET

List Questions

/api/v1/questions

Auth Required

Get all your questions with optional filtering.

GET

Get Question

/api/v1/questions/{questionId}

Auth Required

Retrieve a specific question by its ID.

PUT

Update Question

/api/v1/questions/{questionId}

Auth Required

Update an existing question.

DELETE

Delete Question

/api/v1/questions/{questionId}

Auth Required

Delete a question from your library.

Best Practices

Question Design

  • • Write clear, unambiguous problem statements
  • • Include examples in the description
  • • Set appropriate time and memory limits
  • • Test your questions before using them

Test Cases

  • • Include both visible and hidden test cases
  • • Cover edge cases and boundary conditions
  • • Use diverse input sizes
  • • Validate expected outputs carefully

Organization

  • • Use consistent naming conventions
  • • Categorize questions by topic/skill
  • • Tag questions with appropriate difficulty
  • • Maintain a question bank library

Performance

  • • Use pagination for large question lists
  • • Filter questions to reduce response size
  • • Cache frequently used questions
  • • Optimize database queries with filters