---
title: "Creates an inventory item"
method: POST
path: "/inventory/new"
tags: ["Inventory"]
---

# Creates an inventory item

`POST /inventory/new`

## Request

- Base URL: `https://api.alto.zoopladev.co.uk`
- URL: `https://api.alto.zoopladev.co.uk/inventory/new`
- Auth: `appAuth` (a scheme the document does not define)

Creates an inventory item

## Headers

- `AgencyRef` string, required

## Request body

- AltoInventoryApiModelsRequestsAddInventory
  - `market` 'Unspecified' | 'Sale' | 'Rent'
  - `address` AltoServicesSDKModelsAddress
    - `subDwelling` string, nullable
    - `nameNumber` string, nullable
    - `street` string, nullable
    - `locality` string, nullable
    - `town` string, nullable
    - `county` string, nullable
    - `postcode` string, nullable
    - `countryCode` string, nullable
    - `uprn` string, nullable
  - `owners` AltoInventoryApiModelsOwner[], nullable: [Required] The owner(s) of the property.
    - `contactId` integer
  - `negotiatorId` integer: [Required] The unique identifier of the negotiator with whom the new property will be associated.
  - `branchId` integer: [Required] The unique identifier of the branch where the negotiator works.
  - `lease` AltoInventoryApiModelsRequestsLease
    - `tenure` 'Unspecified' | 'Freehold' | 'Leasehold' | 'LeaseholdWithShareOfFreehold' | 'FlyingFreehold' | 'Commonhold' | 'ShareOfFreehold'
    - `remainingTerm` integer, nullable: The remaining term in years of the long lease. You must supply either this or and end date.
    - `endDate` string, date-time, nullable: The end date of the long lease. You must supply either this or a remaining term.

## Response `201`

Returns the inventory item created

- AltoInventoryApiModelsResponsesInventoryItem
  - `id` string, nullable
  - `address` AltoInventoryApiModelsResponsesAddress
    - `subDwelling` string, nullable
    - `nameNo` string, nullable
    - `street` string, nullable
    - `locality` string, nullable
    - `town` string, nullable
    - `county` string, nullable
    - `postcode` string, nullable
    - `countryCode` string, nullable

## Other responses

- `400`: When the request does not contain the expected information
- `401`: When access has not been granted

---

[API](https://skmtc.dev/alto/apis/alto-api.md) - [All operations](https://skmtc.dev/alto/apis/alto-api/llms.txt) - [OpenAPI document](https://skmtc.dev/alto/apis/alto-api/revisions/1b729d9b15a8?raw)
