QuestionRevision

QuestionRevisions QuestionRevision
Methods Supported:
  • GET – feed is read only

Filters supported:
  • Id – primary key

  • QuestionId – the system-wide ID for the Question

  • Language – language of the Question

  • CreatedDateTime – when the question was created

  • Author – the user name of the user creating the Question

  • ModifiedDateTime – when the base language version of the question was last modified

  • Editor – the user name of the last user to edit the base language version of the Question

Expansions supported:
  • QuestionQMLs – QML entities for each available language

The QuestionRevisions feed contains entities that describe all revisions of all Questions within the item bank. There is one entity for each revision of each question.

Example request:

https://ondemand.questionmark.com/authoringapi/123456/odata/QuestionRevisions?$filter=QuestionId eq 100000001323&$orderby=ModifiedDateTime desc&$top=1

This request uses $orderby and $top to get the most recent revision of the Question with QuestionId 100000001323. For clarity spaces are show unescaped in the URL. Example response:

{
    "@odata.context": "https://ondemand.questionmark.com/authoringapi/123456/odata/$metadata#QuestionRevisions",
    "value": [
        {
            "Id": 10320,
            "QuestionId": 100000001323,
            "Language": "-",
            "CreatedDateTime": "2014-12-23T10:41:29.06Z",
            "Author": "steve",
            "ModifiedDateTime": "2014-12-23T10:41:29.107Z",
            "Editor": "steve",
            "Status": "Normal",
            "ReviewStatus": null,
            "TopicPath": "SubjectiveQuestions",
            "IsDeleted": false
        }
    ]
}
EntityType: QuestionRevision

QuestionRevision entities contain only a subset of the attributes of a Question. The full information about a Question is obtained from the associated QuestionQML entities.

Entity Key: Id Edm.Int32 NOT NULL

The key used within the item bank. This value will change when moving Questions between banks (using QPacks) and should only be used in the context of a specific item bank. A general purpose identifier that persists across repositories can be found in QuestionId.

QuestionId Edm.Int64

A 64-bit integer ID, sometimes represented as a string or split in to two integers (MID/LID) in other contexts. When published, the same QuestionId is available in the delivery catalog as deliveryodata.Question.ID

Language Edm.String

The base language of the question. If the language has not been set the string “-” is used.

CreatedDateTime Edm.DateTimeOffset

The date and time (in UTC) when the Question was created.

Author Edm.String

The user name of the user that created the question

ModifiedDateTime Edm.String

The date and time (in UTC) when the Question was last modified. This revision time refers only to the base language. Modifications to any translations are represented in the related QuestionQMLs entities.

Editor Edm.String

The user name of the user that last modified the question. Again, this refers to the base language and not any translations.

Status Edm.String

The status of this question revision. One of the values Normal, Retired or Experimental. A change in status, e.g., from Normal to Retired results in a new revision. Therefore, to find the current status of a question you must read the value from its most recent revision.

ReviewStatus Edm.String

A free-text field for tracking customer-specific status labels.

TopicPath Edm.String

The full path of the Question within the Topic hierarchy, for example:

"RootTopic/SubTopicB/SubSubTopic1"
IsDeleted Edm.Boolean

A flag indicating whether or not the Question has been deleted from the item bank. Deleting Questions does not remove them from the item bank, it marks them as deleted and removes from the user interface only.

QuestionQMLs QuestionQML Collection

A navigation property to the related QuestionQML entities that contain detailed information about the question in each available language.