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

> ## Agent Instructions
> Automate.ax automations are TypeScript programs.
> Use Bun for installation and command examples.
> Use Automate.ax for the product name and automate.ax for the package, CLI, and domain.
> Treat documented public APIs as current; do not invent transitional or deprecated names.

# Update question

> Replace one Google Forms question while preserving its generated IDs.

`updateQuestion` replaces a question item's title, description, question
configuration, and optional grading without changing its item or question ID.

## Example

```ts theme={null}
import { automation, onHttpRequest } from "automate.ax"
import { updateQuestion } from "automate.ax/google-forms"

export default automation("Require a form question", () => {
  onHttpRequest({ scope: "automation" })

  updateQuestion({
    form: "form-id",
    itemReference: "item-id",
    title: "How satisfied are you?",
    question: { type: "scale", low: 1, high: 5, required: true },
  })
})
```

## Inputs

`form`, `itemReference` (item ID or one-based position), `title`, and `question`
are required. `description`, `grading`, and `requiredRevisionId` are optional;
question and grading types match [Add question](/reference/integrations/google-forms/actions/add-question#inputs).

`account` optionally selects the Google account binding.

## Output

Returns the complete updated `Form`. The action fails if the selected item is
not a standalone question item; use `updateItem` for grids and other item kinds.
