Update Question

This API is used to update the existing question on the Sunbird-inQuiry Platform.

This API is used to update the existing question on the Sunbird-inQuiry Platform.

PATCH /question/v2/update/{question_id}

ā€¢ /update endpoint executes the "Update Question" request based on parameters provided as metadata in the request body. Users can provide updated attributes and their values in a request. ā€¢ It points to inquiry-api-service (assessment service) - /question/v5/update ā€¢ You need to provide a valid Question Id value in {question_id} field of the API URL. ā€¢ It is mandatory to provide values for parameters marked with *. ā€¢ Mandatory fields cannot be null or empty. ā€¢ The API supports QuML 1.1 version onwards. For Detailed Question schema, Please check here

Path Parameters

NameTypeDescription

question_id*

String

Append a valid Question ID To the Request URL

Headers

NameTypeDescription

Content-Type*

String

The Content-Type entity is the media type of the resource. It should be Application/json

Authorization*

String

To make use of the API, you require authorization. Raise a request to the administrator, for the use of the API. You will receive the authorization key. Specify the key received, here.

Set Bearer {{api_key}}

x-channel-id

String

Unique identification number associated with a root organization.

Request Body

NameTypeDescription

request*

Object

It contains metadata about the question to be updated.

{
  "id": "api.question.update",
  "ver": "5.0",
  "ts": "2023-06-29T04:01:05ZZ",
  "params": {
    "resmsgid": "9d9d4824-cc40-4ac7-a3d6-6da61c0240e9",
    "msgid": null,
    "err": null,
    "status": "successful",
    "errmsg": null
  },
  "responseCode": "OK",
  "result": {
    "identifier": "do_113207924037746688110",
    "versionKey": "1612295707004"
  }
}

Sample Request

{
   "request": {
      "question":{
        "name": "Updated value",
        "versionKey": "{{versionKey}}"
      }
    }
}

Request Schema

AttributeTypeDescriptionRequired

versionKey

string

Represents the transaction update version key of the Question

Yes

Success Result Schema

AttributeTypeDescription

identifier

String

Unique Question identifier

versionKey

String

Unique version key for question

cURL

curl --location -g --request PATCH '{{host}}/question/v2/update/{{question_id}}' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{api_key}}' \
--data-raw '{
   "request": {
      "question":{
        "name": "Updated value",
        "versionKey": "{{versionKey}}"
      }
    }
}'

Full Request Example

Following is the complete request example of updating an existing Question. This is a Multiple Choice Questions (MCQ) type of question.

{
  "question": {
    "copyright": "NIT123",
    "subject": [
      "Math"
    ],
    "responseDeclaration": {
      "response1": {
        "cardinality": "single",
        "type": "integer",
        "correctResponse": {
          "value": 0
        },
        "mapping": [
          {
            "value": 0,
            "score": 1
          }
        ]
      }
    },
    "language": [
      "English"
    ],
    "medium": [
      "English"
    ],
    "showHints": false,
    "media": [],
    "body": "<div class='question-body' tabindex='-1'><div class='mcq-title' tabindex='0'><p>2+2=?</p></div><div data-choice-interaction='response1' class='mcq-vertical'></div></div>",
    "editorState": {
      "options": [
        {
          "answer": true,
          "value": {
            "body": "<p>4</p>",
            "value": 0
          }
        },
        {
          "answer": false,
          "value": {
            "body": "<p>8</p>",
            "value": 1
          }
        }
      ],
      "question": "<p>2+2=?</p>"
    },
    "templateId": "mcq-vertical",
    "interactions": {
      "response1": {
        "type": "choice",
        "options": [
          {
            "label": "<p>4</p>",
            "value": 0
          },
          {
            "label": "<p>8</p>",
            "value": 1
          }
        ],
        "validation": {
          "required": "Yes"
        }
      }
    },
    "gradeLevel": [
      "Class 1"
    ],
    "contentDisposition": "inline",
    "contentEncoding": "gzip",
    "showSolutions": false,
    "allowAnonymousAccess": "Yes",
    "audience": [
      "Student"
    ],
    "showTimer": false,
    "author": "Creator1",
    "outcomeDeclaration": {
      "maxScore": {
        "cardinality": "single",
        "type": "integer",
        "defaultValue": 1
      }
    },
    "qType": "MCQ",
    "maxScore": 1,
    "languageCode": [
      "en"
    ],
    "versionKey": "1688010307002",
    "showFeedback": false,
    "license": "CC BY 4.0",
    "complexityLevel": [
      "evaluate"
    ],
    "interactionTypes": [
      "choice"
    ],
    "framework": "inquiry_k-12",
    "answer": "<div class='anwser-container'><div class='anwser-body'><p>4</p></div></div>",
    "createdBy": "5a587cc1-e018-4859-a0a8-e842650b9d64",
    "name": "MCQ-1",
    "board": "CBSE"
  }
}

Last updated