---
title: "Create an Inventory Product (BETA)"
method: POST
path: "/products/{incomingIdentifier}"
tags: ["Product Inventory"]
---

# Create an Inventory Product (BETA)

`POST /products/{incomingIdentifier}`

## Request

- Base URL: `https://resources.uk.eagleeye.com`
- URL: `https://resources.uk.eagleeye.com/products/{incomingIdentifier}`
- Auth: none declared. Required headers: `X-EES-AUTH-CLIENT-ID`, `X-EES-AUTH-HASH`

This API endpoint allows the calling unit to create a new inventory product for their child unit as specified by its `incomingIdentifier`.

## Path parameters

- `incomingIdentifier` string, string, required

## Headers

- `Accept-Encoding` '''' | ''gzip'' | ''deflate'' | ''gzip,deflate'' | ''deflate,gzip'', string
- `Connection` 'keep-alive' | 'close', string
- `Content-Type` string, string
- `X-EES-AUTH-CLIENT-ID` string, string, required
- `X-EES-AUTH-HASH` string, string, required
- `X-EES-TRANSACTION-ID` string, string

## Request body

- InventoryProductPostRequestEntity
  - `id` string, required: The unique identifier of the inventory product.
  - `groupId` string, required: The identifier of the group this product belongs to.
  - `name` string: The display name of the product.
  - `description` string: An optional description of the product.
  - `imageUrl` string, nullable: URL of the product image.
  - `supplierId` string: The identifier of the product supplier.
  - `supplierName` string: The display name of the product supplier.
  - `brand` string: The brand of the product.
  - `brandType` string: The brand type classification of the product.
  - `lastSoldDate` string, ees-date-time, nullable: The date and time the product was last sold (ISO 8601 / ATOM format).
  - `tags` string[]: A list of tags associated with the product.

## Response `201`

EES AIR has successfully processed a Request.

- InventoryProductEntity
  - `id` string: The unique identifier of the inventory product.
  - `groupId` string: The identifier of the group this product belongs to.
  - `name` string: The display name of the product.
  - `description` string: An optional description of the product.
  - `imageUrl` string, nullable: URL of the product image.
  - `supplierId` string: The identifier of the product supplier.
  - `supplierName` string: The display name of the product supplier.
  - `brand` string: The brand of the product.
  - `brandType` string: The brand type classification of the product.
  - `lastSoldDate` string, ees-date-time, nullable: The date and time the product was last sold (ISO 8601 / ATOM format).
  - `tags` string[]: A list of tags associated with the product.
  - `group` InventoryProductGroupExpandedEntity
    - `id` string: The unique identifier of the group.
    - `name` string: The display name of the group.
    - `type` string: The group type.
    - `description` string: A description of the group.
    - `parentId` string, nullable: The identifier of the parent group. Null for root groups.
    - `parent` InventoryProductGroupExpandedEntity (recursive)

## Other responses

- `400`: EES AIR Refuse to process that particular Request as there is something wrong with the Request (e.g., missing Mandatory Request parameter or Mandatory Request Payload attribute is missing, Request payload cannot be processed, etc)
- `401`: EES AIR Refuse to process that particular Request due to Authentication error. This could be caused by missing mandatory AUTH header(s), invalid Hash calculation, invalid or inactive API Key used, etc
- `403`: EES AIR Refuse to process that particular Request due to Request Authorization error(s). This indicates that used API Key has not got required permissions to perform this operation.
- `404`: EES AIR Refuse to process that particular Request as requested/referenced resource could not be found.
- `409`: EES AIR understands this request, but refuse to process it, due to present Conflict with the current state of the target resource or because performing this operation would lead to a Conflict within AIR.
- `415`: EES AIR is not able to understand that request due to not supported `Content-Type` value.
- `429`: EES AIR refuses to process that particular Request as Client's API Requests Limit was exceeded.
- `500`: EES AIR refuses to process that particular Request due to Unexpected Server Error.
- `503`: EES AIR refuses to process that particular Request due to Service(s) being Unavailable (i.e. Scheduled Maintenance)
- `504`: EES AIR refuses to process that particular Request due to Networking Issues

---

[API](https://skmtc.dev/eagleeye/apis/resource-api.md) - [All operations](https://skmtc.dev/eagleeye/apis/resource-api/llms.txt) - [OpenAPI document](https://skmtc.dev/eagleeye/apis/resource-api/revisions/10217d37fdc5?raw)
