# TaxSessionsPublicController_UpdateManualFields

Updates specified manual entry fields for the specified tax session.

`PUT /api/v1/TaxSessions/UpdateManualFields`

**API:** Excise Platform API
**Tag:** Tax Sessions
**API Version:** v1
**Base URL:** https://excise.avalara.com
**Content-Type:** `application/json`
**Accepts:** `application/json`
**Authentication:** Basic (username + license key)

Source: https://developer.avalara.com/products/excise/api/methods/Tax%20Sessions/TaxSessionsPublicController_UpdateManualFields/

## Description

Updates manual entry field values for the highest sequence of the specified tax session.
The tax session must not be filed or locked. The session ownership must match the current
user's back-end indicator. Use GetManualFieldDefinitions to discover valid field names.

## Parameters

| Name | Type | In | Required | Description |
|---|---|---|---|---|
| `x-company-id` | integer | header | Yes | Company ID that owns the data. |
| `X-Avalara-Client` | string | header | No | Identifies the software you are using to call this API. For more information on the client header, see Client Headers. |
| `headerId` | integer | query | Yes | The header id of the specified tax session. |
| `validateOnly` | boolean | query | No | If true, validates the fields without persisting changes (Default: false). |

## Request Body

**Schema:** `Avalara.Excise.Common.Contracts.Services.RestTaxSessionUpdateManualFieldsRequest`

Request body for PUT /api/v1/TaxSessions/UpdateManualFields.

| Property | Type | Required | Description |
|---|---|---|---|
| `ManualFields` | object | No | Dictionary of manual field names to their values.
Field names and types are defined by the GetManualFieldDefinitions API. |

## Responses

| Status | Description | Schema |
|---|---|---|
| 200 | Returns the update results including any warnings. | `Avalara.Excise.Common.Contracts.Services.RestTaxSessionUpdateManualFieldsResponse` |
| 400 | The request is invalid, the session is filed/locked, ownership mismatch, or field validation failed. |  |
| 401 | Authentication credentials are incorrect. |  |

### 200 Response: `Avalara.Excise.Common.Contracts.Services.RestTaxSessionUpdateManualFieldsResponse`

Response returned by the Tax Sessions UpdateManualFields endpoint.

| Property | Type | Required | Description |
|---|---|---|---|
| `HeaderId` | integer | No | The unique header identifier. Example: `12345`. |
| `Sequence` | integer | No | The sequence number that was used for the update. Example: `0`. |
| `UpdatedFields` | string[] | No | The list of field names that were updated. Empty when validateOnly is true. |
| `Errors` | string[] | No | Validation errors encountered during the update. |

## Example Request

```bash
curl -X PUT "https://excise.avalara.com/api/v1/TaxSessions/UpdateManualFields" \
  -H "Authorization: Basic <credentials>" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
  "ManualFields": {
    "DATE": "2026-01-06T18:15:45.82Z",
    "CONTACT_ID": 123,
    "PREPARER_ID": 456,
    "FILING_PENALTY_AMOUNT": "0.00",
    "ADDRESS_CHANGED": true
  }
}'
```