# Update Cells

> Perform Update Cells through Google Sheets.

Source: [https://genhealth.ai/docs/workflows/integrations/google-sheets/google_sheets_update_cells](https://genhealth.ai/docs/workflows/integrations/google-sheets/google_sheets_update_cells)

Integration: [Google Sheets](https://genhealth.ai/docs/workflows/integrations/google-sheets.md)

- Handler: `google_sheets_update_cells`

- Connection type: `google_sheets`

## Inputs

- `google_sheets_account_id` — Google Sheets Account Id (select, dynamic options)
  Optional selected identifier or value. Retrieve allowed values from the dynamic options endpoint.
- `spreadsheet_id` — Spreadsheet Id (expression, required)
  Required literal value or workflow expression.
- `sheet_title` — Sheet Title (select, required, dynamic options)
  Required selected identifier or value. Retrieve allowed values from the dynamic options endpoint.
- `header_row` — Header Row (number)
  Optional numeric value.
  Default: `1`
- `headers` — Headers (expression)
  Optional literal value or workflow expression.
- `row_number` — Row Number (expression, required)
  Required literal value or workflow expression.
- `updates` — Updates (repeatable_group, required)
  Required list of structured items.
  - `column` — Column (expression, required)
    Required literal value or workflow expression.
  - `value` — Value (expression)
    Optional literal value or workflow expression.
- `value_input_option` — Value Input Option (select)
  Optional selected identifier or value.
  Default: `"RAW"`
  Options: Raw ("RAW"), User Entered ("USER_ENTERED")
- `write_enabled` — Write Enabled (boolean)
  Optional true-or-false value.
  Default: `false`

## Outputs

- `success` — Success
- `submitted` — Submitted
- `write_skipped` — Write Skipped
- `skip_reason` — Skip Reason
- `spreadsheet_id` — Spreadsheet Id
- `row_number` — Row Number
- `updated_cells` — Updated Cells
- `updated_rows` — Updated Rows
- `error` — Error
- `error_message` — Error Message

Output schema completeness: `best_effort_declared`

## Safety

- External effect: `write`
- Confirmation recommended: no
- Retry safe: no
- Dry run supported: no

## Schemas

These schemas are first-pass authoring guidance. Runtime validation remains authoritative.

### Input schema

```json
{
  "type": "object",
  "required": [
    "spreadsheet_id",
    "sheet_title",
    "row_number",
    "updates"
  ],
  "properties": {
    "headers": {
      "description": "Optional literal value or workflow expression.",
      "x-workflow-field-type": "expression"
    },
    "updates": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "column"
        ],
        "properties": {
          "value": {
            "description": "Optional literal value or workflow expression.",
            "x-workflow-field-type": "expression"
          },
          "column": {
            "description": "Required literal value or workflow expression.",
            "x-workflow-field-type": "expression"
          }
        },
        "additionalProperties": false
      },
      "description": "Required list of structured items.",
      "x-workflow-field-type": "repeatable_group"
    },
    "header_row": {
      "type": "number",
      "default": 1,
      "description": "Optional numeric value.",
      "x-workflow-field-type": "number"
    },
    "row_number": {
      "description": "Required literal value or workflow expression.",
      "x-workflow-field-type": "expression"
    },
    "sheet_title": {
      "type": "string",
      "description": "Required selected identifier or value. Retrieve allowed values from the dynamic options endpoint.",
      "x-dynamic-options": true,
      "x-workflow-field-type": "select"
    },
    "write_enabled": {
      "type": "boolean",
      "default": false,
      "description": "Optional true-or-false value.",
      "x-workflow-field-type": "boolean"
    },
    "spreadsheet_id": {
      "description": "Required literal value or workflow expression.",
      "x-workflow-field-type": "expression"
    },
    "value_input_option": {
      "enum": [
        "RAW",
        "USER_ENTERED"
      ],
      "type": "string",
      "default": "RAW",
      "description": "Optional selected identifier or value.",
      "x-workflow-field-type": "select"
    },
    "google_sheets_account_id": {
      "type": "string",
      "description": "Optional selected identifier or value. Retrieve allowed values from the dynamic options endpoint.",
      "x-dynamic-options": true,
      "x-workflow-field-type": "select"
    }
  },
  "additionalProperties": false
}
```

### Output schema

```json
{
  "type": "object",
  "properties": {
    "error": {},
    "success": {},
    "submitted": {},
    "row_number": {},
    "skip_reason": {},
    "updated_rows": {},
    "error_message": {},
    "updated_cells": {},
    "write_skipped": {},
    "spreadsheet_id": {}
  },
  "additionalProperties": true
}
```
