Class RatingItem

RatingItem

A question item that allows the respondent to give a rating. Items can be accessed or created from a Form. When used in a quiz, these items are graded.

// Open a form by ID
const form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz');

// Get an existing rating item and access its properties.
const existingRatingItem = form.getItems(FormApp.ItemType.RATING)[0].asRatingItem();
const ratingScaleLevel = existingRatingItem.getRatingScaleLevel();
const ratingIcon = existingRatingItem.getRatingIcon();

// Create a new rating item.
const ratingItem = form.addRatingItem();

// Update the rating item's properties via chaining.
ratingItem.setRatingScaleLevel(7).setRatingIcon(FormApp.RatingIconType.HEART);

Methods

MethodReturn typeBrief description
createResponse(response)ItemResponseCreates a new ItemResponse for this rating item.
duplicate()RatingItemCreates a copy of this item and appends it to the end of the form.
getGeneralFeedback()QuizFeedbackReturns the feedback that is shown to respondents when they respond to a gradeable question.
getHelpText()StringGets the item's help text (sometimes called description text for layout items like ImageItems, PageBreakItems, and SectionHeaderItems).
getId()IntegerGets the item's unique identifier.
getIndex()IntegerGets the index of the item among all the items in the form.
getPoints()IntegerReturns the point value of a gradeable item.
getRatingIcon()RatingIconTypeGets the icon chosen for the rating.
getRatingScaleLevel()IntegerGets the rating's scale level.
getTitle()StringGets the item's title (sometimes called header text, in the case of a SectionHeaderItem).
getType()ItemTypeGets the item's type, represented as an ItemType.
isRequired()BooleanDetermines whether the respondent must answer the question.
setGeneralFeedback(feedback)RatingItemSets the feedback to be shown to respondents when they respond to a gradeable question that doesn't have a correct or incorrect answer (ie questions that require manual grading).
setHelpText(text)RatingItemSets the item's help text (sometimes called description text for layout items like ImageItems, PageBreakItems, and SectionHeaderItems).
setPoints(points)RatingItemSets the number of points a gradeable item is worth.
setRatingIcon(ratingIcon)RatingItemSets the rating's icon.
setRatingScaleLevel(ratingScaleLevel)RatingItemSets the rating's scale level.
setRequired(enabled)RatingItemSets whether the respondent must answer the question.
setTitle(title)RatingItemSets the item's title (sometimes called header text, in the case of a SectionHeaderItem).

Detailed documentation

createResponse(response)

Creates a new ItemResponse for this rating item.

Throws a scripting exception if the provided response is less than 1 or greater than the value returned bygetRatingScaleLevel().

// Open a form by ID
const form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz');

// Get an existing rating item and create a new response for it.
const item = form.getItems(FormApp.ItemType.RATING)[0].asRatingItem();
const response =item.createResponse(5);

Parameters

NameTypeDescription
responseIntegerA value answer for this rating item.

Return

ItemResponse — The item response.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

duplicate()

Creates a copy of this item and appends it to the end of the form.

Return

RatingItem — a duplicate of this RatingItem, for chaining

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getGeneralFeedback()

Returns the feedback that is shown to respondents when they respond to a gradeable question.

Return

QuizFeedback — the feedback, if any.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getHelpText()

Gets the item's help text (sometimes called description text for layout items like ImageItems, PageBreakItems, and SectionHeaderItems).

Return

String — the item's help text or description text

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getId()

Gets the item's unique identifier.

Return

Integer — the item's ID

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getIndex()

Gets the index of the item among all the items in the form.

Return

Integer — the index of the item

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getPoints()

Returns the point value of a gradeable item.

Return

Integer — the number of points a question is worth.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getRatingIcon()

Gets the icon chosen for the rating.

// Open a form by ID
const form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz');

// Get an existing rating item and get its rating icon.
const item = form.getItems(FormApp.ItemType.RATING)[0].asRatingItem();
const ratingIcon = item.getRatingIcon();

Return

RatingIconType — The rating icon type.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getRatingScaleLevel()

Gets the rating's scale level.

// Open a form by ID
const form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz');

// Get an existing rating item and get its rating scale level.
const item = form.getItems(FormApp.ItemType.RATING)[0].asRatingItem();
const ratingScaleLevel = item.getRatingScaleLevel();

Return

Integer — The rating scale level.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getTitle()

Gets the item's title (sometimes called header text, in the case of a SectionHeaderItem).

Return

String — the item's title or header text

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getType()

Gets the item's type, represented as an ItemType.

Return

ItemType — the item's type

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

isRequired()

Determines whether the respondent must answer the question.

Return

Boolean — whether the respondent must answer the question

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setGeneralFeedback(feedback)

Sets the feedback to be shown to respondents when they respond to a gradeable question that doesn't have a correct or incorrect answer (ie questions that require manual grading).

Parameters

NameTypeDescription
feedbackQuizFeedbackthe new feedback

Return

RatingItem — this RatingItem, for chaining

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setHelpText(text)

Sets the item's help text (sometimes called description text for layout items like ImageItems, PageBreakItems, and SectionHeaderItems).

Parameters

NameTypeDescription
textStringthe new help text

Return

RatingItem — this RatingItem, for chaining

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setPoints(points)

Sets the number of points a gradeable item is worth. The default for new items is 0.

Parameters

NameTypeDescription
pointsIntegerthe number of a points a question item is worth

Return

RatingItem — this RatingItem, for chaining

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setRatingIcon(ratingIcon)

Sets the rating's icon.

Throws a scripting exception if the rating icon type is invalid.

// Open a form by ID
const form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz');

// Get an existing rating item and set its rating icon.
const item = form.getItems(FormApp.ItemType.RATING)[0].asRatingItem();
item.setRatingIcon(FormApp.RatingIconType.THUMB_UP);

Parameters

NameTypeDescription
ratingIconRatingIconTypeThe rating icon type.

Return

RatingItem — This RatingItem, for chaining.

Throws

Error — if the rating icon type is invalid

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setRatingScaleLevel(ratingScaleLevel)

Sets the rating's scale level. The rating scale level must be between 3 and 10, inclusive. A new rating defaults to a rating scale level of 3.

Throws a scripting exception if the given values are outside the permitted limits.

// Open a form by ID
const form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz');

// Get an existing rating item and set its rating scale level.
const item = form.getItems(FormApp.ItemType.RATING)[0].asRatingItem();
item.setRatingScaleLevel(7);

Parameters

NameTypeDescription
ratingScaleLevelIntegerThe rating scale level.

Return

RatingItem — This RatingItem, for chaining.

Throws

Error — if the rating scale level is invalid

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setRequired(enabled)

Sets whether the respondent must answer the question.

Parameters

NameTypeDescription
enabledBooleanwhether the respondent must answer the question

Return

RatingItem — the current item (for chaining)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setTitle(title)

Sets the item's title (sometimes called header text, in the case of a SectionHeaderItem).

Parameters

NameTypeDescription
titleStringthe new title or header text

Return

RatingItem — this RatingItem, for chaining

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms