---
title: "Update property"
method: PUT
path: "/api/files/sales/{saleGuid}/property"
tags: ["Sale Properties"]
---

# Update property

`PUT /api/files/sales/{saleGuid}/property`

Updates sale property details for the specified sale. streetNumber, streetAddress, city, state, and zip are required. Returns 422 for invalid property values (including managed-field requirements such as year built), duplicate property/checklist combinations, or invalid commercial-lease values when applicable.

### Validation & Requirements
#### Required Parameters
- `saleGuid` (path, string, format=guid)
- `form` (body, object)

#### Required JSON Body Fields
- `streetNumber` (minLength=1)
- `streetAddress` (minLength=1)
- `city` (minLength=1)
- `state` (minLength=1)
- `zip` (minLength=1)
- `yearBuilt` (format=int32)

#### Validations
- Invalid GUID values in `*Guid`/`*Guids` fields return `422 Unprocessable Entity`.
- Invalid date values in `*date*` fields return `422 Unprocessable Entity`.
- Missing required request body returns `422 Unprocessable Entity` with `Missing request body.`.
- Additional business-rule validation may return `422` with details in the `errors` array.

#### Integration Requirement
- Retrieve the corresponding `...Form` endpoint immediately before write operations to get current dynamic required fields and allowed values.

## Path parameters

- `saleGuid` string, guid, required

## Request body

- UpdateSalePropertyForm
  - `streetNumber` string, required
  - `streetAddress` string, required
  - `unit` string, nullable
  - `direction` string, nullable
  - `city` string, required
  - `county` string, nullable
  - `state` string, required
  - `zip` string, required
  - `yearBuilt` integer, required
  - `realPropertyTypeId` integer, nullable
  - `realPropertySubtypeId` integer, nullable

## Response `200`

- LinkedResponseOfUpdateSalePropertyResponse
  - `value` UpdateSalePropertyResponse
  - `warnings` string[], nullable
  - `links` Link[], nullable
    - `href` string, nullable
    - `rel` string, nullable
    - `method` string, nullable

## Other responses

- `404`
- `422`

---

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