---
title: "Update an employee's state taxes"
method: PUT
path: "/v1/employees/{employee_uuid}/state_taxes"
tags: ["Employee Tax Setup"]
---

# Update an employee's state taxes

`PUT /v1/employees/{employee_uuid}/state_taxes`

Update attributes relevant for an employee's state taxes.

As described for the GET endpoint, the answers must be supplied in the effective-dated format, but currently only a single answer will be accepted. The `valid_from` and `valid_up_to` fields are optional and currently ignored.

scope: `employee_state_taxes:write`

## Path parameters

- `employee_uuid` string, required

## Headers

- `X-Gusto-API-Version` '2026-06-15'

## Request body

- EmployeeStateTaxesRequest
  - `states` object[], required
    - `state` string, required
    - `questions` object[]
      - `key` string, required
      - `answers` object[]
        - `value` union, required
          - string
          - number
          - boolean
        - `valid_from` string, required
        - `valid_up_to` string, nullable

## Response `200`

successful

- object[]
  - `uuid` string — The uuid of the employee state field.
  - `employee_uuid` string — The employee's uuid
  - `state` string — Two letter US state abbreviation
  - `file_new_hire_report` boolean, nullable
  - `is_work_state` boolean
  - `questions` EmployeeStateTaxQuestion[]
    - `label` string, required — A short title for the question
    - `description` string, nullable, required — An explaination of the question - this may contain inline html formatted links.
    - `key` string, required — A unique identifier of the question (for the given state) - used for updating the answer.
    - `is_question_for_admin_only` boolean, required
    - `input_question_format` EmployeeStateTaxInputQuestionFormat, required
      - `type` string, required — Describes the type of question - Text, Number, Select, Currency, Date
      - `options` object[] — For "Select" type questions, the allowed values and display labels.
        - `value` union — An allowed value to answer the question
          - string
          - boolean
          - number
        - `label` string, required — A display label that corresponds to the answer value
    - `answers` EmployeeStateTaxAnswer[], required
      - `value` union — The answer to the corresponding question - this may be a string, number, boolean, or null.
        - string
        - number
        - boolean
      - `valid_from` string — The effective date of the answer - currently always “2010-01-01”.
      - `valid_up_to` string, nullable — The effective end date of the answer - currently always null.

## Other responses

- `404` — Not Found
- `422` — Unprocessable Entity This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details.

---

[API](https://skmtc.net/gusto/apis/gusto-api.md) · [All operations](https://skmtc.net/gusto/apis/gusto-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/gusto/gusto-api/revisions/826dfa57fb3b/schema)
