---
title: "View product v1"
method: GET
path: "/api/v1/products/{id}"
tags: ["Product"]
deprecated: true
---

# View product v1

`GET /api/v1/products/{id}`

> **Deprecated.**

Returns details of a single product

## Path parameters

- `id` string, required — Resource identifier.

## Response `200`

Operation completed successfully.

- object
  - `data` object
    - `id` string — Resource identifier.
    - `uuid` string — UUID identifier of the resource.
    - `project` object — An object with id and name
      - `id` string, required — Resource identifier.
      - `name` string, required
    - `category` object, nullable — An optional object with id and name
      - `id` string, required — Resource identifier.
      - `name` string, required
    - `standardSupplier` object, nullable — Reference to a standard supplier for this product
      - `id` string, nullable, required — Nullable resource identifier
    - `name` string — Name of the product.
    - `description` string, nullable
    - `ean` string, nullable — EAN of the product.
    - `stockCount` number
    - `number` string — Number / SKU of the product.
    - `thumbnailUrl` string, nullable — URL of the product's thumbnail.
    - `thumbnailId` string, nullable — ID of the product's thumbnail.
    - `customsTariffNumber` string, nullable — Customs tariff number of the product.
    - `countryOfOrigin` string, nullable — Two-digit ISO country code for country of origin of the product.
    - `tags` object[]
      - `id` string
      - `key` string
      - `name` string
      - `color` string — Hexadecimal color value in 6-digit format without the leading # character.
    - `shortDescription` string, nullable — Short description of the product.
    - `internalComment` string — Text only for internal information.
    - `minimumOrderQuantity` number — Numerical minimum order quantity of the product.
    - `minimumStorageQuantity` number — Numerical minimum storage quantity of the product.
    - `isMatrixProduct` boolean — Shows if the product is a matrix product.
    - `hasBatches` boolean — Shows if the product has batches.
    - `serialNumbersMode` string — Shows one of the 4 different modes if the product has serial numbers or not and how they are handled. For more information about the different modes have a look into our handbook.
    - `hasBestBeforeDate` boolean — Shows if the product has a best before date.
    - `allowPurchaseFromAllSuppliers` boolean — Shows if the product can be purchased from all suppliers.
    - `isStockTakingDisabled` boolean — Shows if the product is used for stock taking.
    - `ageRating` string, nullable — Shows if the product has an age rating. Currently only used for the shipping service provider DHL.
    - `hasBillOfMaterials` boolean — Shows if the product has a bill of materials.
    - `isAssembledJustInTime` boolean — Shows if the product is assembled just in time.
    - `hideJustInTimeItemsOnDocuments` boolean — Shows if the just in time items of the parts list are visible on documents.
    - `isProductionProduct` boolean — Shows if the product is made in production.
    - `isExternallyProduced` boolean — Shows if the product is externally produced.
    - `isCustomProduct` boolean — Shows if the product is a custom product.
    - `hidePriceOnDocuments` boolean — Shows if the price is hidden on documents.
    - `isDisabled` boolean — Shows if the product is locked.
    - `disabledReason` string, nullable — Shows the reason why the product is locked when clicking into the product.
    - `markAsSoldOut` boolean — Shows if the product is sold out.
    - `markAsInactive` boolean — Shows if the product is inactive.
    - `isDeleted` boolean — Shows if the product is deleted.
    - `unit` object — Shows the name of the product unit.
      - `name` string
    - `textsAndDescriptions` object — Contains all texts and descriptions of the product.
      - `primaryLanguage` object
        - `name` string, nullable — name
        - `shortDescription` string, nullable — shortDescription
        - `description` string, nullable — description
        - `shopDescription` string, nullable — shopDescription
        - `metaTitle` string, nullable — metaTitle
        - `metaDescription` string, nullable — metaDescription
        - `metaKeywords` string, nullable — metaKeywords
        - `catalogName` string, nullable — catalogName
        - `catalogText` string, nullable — catalogText
      - `english` object
        - `name` string, nullable — name
        - `shortDescription` string, nullable — shortDescription
        - `description` string, nullable — description
        - `shopDescription` string, nullable — shopDescription
        - `metaTitle` string, nullable — metaTitle
        - `metaDescription` string, nullable — metaDescription
        - `metaKeywords` string, nullable — metaKeywords
        - `catalogName` string, nullable — catalogName
        - `catalogText` string, nullable — catalogText
      - `inCatalog` boolean
    - `measurements` object
      - `width` object
        - `value` number, float, required
        - `unit` 'cm', required — Currently only cm as unit allowed.
      - `height` object
        - `value` number, float, required
        - `unit` 'cm', required — Currently only cm as unit allowed.
      - `length` object
        - `value` number, float, required
        - `unit` 'cm', required — Currently only cm as unit allowed.
      - `weight` object
        - `value` number, float, required
        - `unit` 'kg', required — Currently only kg as unit allowed.
      - `netWeight` object
        - `value` number, float, required
        - `unit` 'kg', required — Currently only kg as unit allowed.
    - `manufacturer` object
      - `name` string, nullable — Name of the manufacturer.
      - `number` string, nullable — Product number at the manufacturer.
      - `url` string, nullable — URI of the manufacturer.
    - `isStockItem` boolean — Shows if the product is a stock item.
    - `salesTax` 'standard' | 'reduced' | 'free' — Shows the sales tax of the product.
    - `shopPriceDisplay` string, float, nullable — Only used by some online shops. For more information have a look into our handbook.
    - `isRemainingQuantity` boolean — Shows if only the remaining quantity of the product is left.
    - `regionOfOrigin` string — Region where the product originates from.
    - `isShippingCostsProduct` boolean — Determines if a product is used as a shipping costs product. For more information have a look into our handbook.
    - `stockStats` object
      - `purchasedCount` string, float, nullable
      - `totalCount` string, float, nullable
      - `availableCount` string, float, nullable
      - `inProductionCount` string, float, nullable
    - `purchasePriceNet` object, nullable — Optional Money object with amount and currency
      - `amount` string, float
      - `currency` 'EUR' | 'USD' | 'JPY' | 'BGN' | 'CZK' | 'DKK' | 'GBP' | 'HUF' | 'PLN' | 'RON' | 'SEK' | 'CHF' | 'ISK' | 'NOK' | 'HRK' | 'RUB' | 'TRY' | 'AUD' | 'BRL' | 'CAD' | 'CNY' | 'HKD' | 'IDR' | 'ILS' | 'INR' | 'KRW' | 'MXN' | 'MYR' | 'NZD' | 'PHP' | 'SGD' | 'THB' | 'ZAR' | 'ARS' | 'CLP' | 'SAR' | 'AED' | 'QAR' — Currency matches one of currency values as specified in ISO-4217.
    - `purchasePriceGross` object, nullable — Optional Money object with amount and currency
      - `amount` string, float
      - `currency` 'EUR' | 'USD' | 'JPY' | 'BGN' | 'CZK' | 'DKK' | 'GBP' | 'HUF' | 'PLN' | 'RON' | 'SEK' | 'CHF' | 'ISK' | 'NOK' | 'HRK' | 'RUB' | 'TRY' | 'AUD' | 'BRL' | 'CAD' | 'CNY' | 'HKD' | 'IDR' | 'ILS' | 'INR' | 'KRW' | 'MXN' | 'MYR' | 'NZD' | 'PHP' | 'SGD' | 'THB' | 'ZAR' | 'ARS' | 'CLP' | 'SAR' | 'AED' | 'QAR' — Currency matches one of currency values as specified in ISO-4217.
    - `salesPriceNet` object, nullable — Optional Money object with amount and currency
      - `amount` string, float
      - `currency` 'EUR' | 'USD' | 'JPY' | 'BGN' | 'CZK' | 'DKK' | 'GBP' | 'HUF' | 'PLN' | 'RON' | 'SEK' | 'CHF' | 'ISK' | 'NOK' | 'HRK' | 'RUB' | 'TRY' | 'AUD' | 'BRL' | 'CAD' | 'CNY' | 'HKD' | 'IDR' | 'ILS' | 'INR' | 'KRW' | 'MXN' | 'MYR' | 'NZD' | 'PHP' | 'SGD' | 'THB' | 'ZAR' | 'ARS' | 'CLP' | 'SAR' | 'AED' | 'QAR' — Currency matches one of currency values as specified in ISO-4217.
    - `salesPriceGross` object, nullable — Optional Money object with amount and currency
      - `amount` string, float
      - `currency` 'EUR' | 'USD' | 'JPY' | 'BGN' | 'CZK' | 'DKK' | 'GBP' | 'HUF' | 'PLN' | 'RON' | 'SEK' | 'CHF' | 'ISK' | 'NOK' | 'HRK' | 'RUB' | 'TRY' | 'AUD' | 'BRL' | 'CAD' | 'CNY' | 'HKD' | 'IDR' | 'ILS' | 'INR' | 'KRW' | 'MXN' | 'MYR' | 'NZD' | 'PHP' | 'SGD' | 'THB' | 'ZAR' | 'ARS' | 'CLP' | 'SAR' | 'AED' | 'QAR' — Currency matches one of currency values as specified in ISO-4217.
    - `manufacturerName` string, nullable — Name of the manufacturer.
    - `manufacturerNumber` string, nullable — Product number at the manufacturer.
    - `discount` object
      - `isDiscountProduct` boolean — Determines if a product is used as a discount. For more information have a look into our handbook.
      - `discountPercentage` number, float — Shows the discount value if the product is a discount. For more information have a look into our handbook.
    - `stockTaking` object — Contains settings for stock taking.
      - `hasStockTakingValue` boolean — Shows if the stock taking value should be used instead of the purchase price for stock taking.
      - `stockTakingValue` number, float — Shows the stock taking value for stock taking.
    - `calculatedPurchasePrice` object — Contains settings for the calculated purchase price.
      - `hasCalculatedPurchasePrice` boolean — Shows if the calculatedPurchasePrice should be used.
      - `price` object — Money object with amount and currency. If no currency is set, EUR is returned.
        - `amount` string, float — A string representing the amount
        - `currency` 'EUR' | 'USD' | 'JPY' | 'BGN' | 'CZK' | 'DKK' | 'GBP' | 'HUF' | 'PLN' | 'RON' | 'SEK' | 'CHF' | 'ISK' | 'NOK' | 'HRK' | 'RUB' | 'TRY' | 'AUD' | 'BRL' | 'CAD' | 'CNY' | 'HKD' | 'IDR' | 'ILS' | 'INR' | 'KRW' | 'MXN' | 'MYR' | 'NZD' | 'PHP' | 'SGD' | 'THB' | 'ZAR' | 'ARS' | 'CLP' | 'SAR' | 'AED' | 'QAR' — Currency matches one of currency values as specified in ISO-4217.
    - `options` object[]
      - `id` string — Resource identifier.
      - `name` string
      - `values` object[]
        - `id` string — Resource identifier.
        - `name` string
        - `sort` integer
    - `selectedOptions` object[]
      - `id` string — Resource identifier.
      - `name` string
      - `values` object[]
        - `id` string — Resource identifier.
        - `name` string
        - `sort` integer
    - `variants` object[]
      - `id` string — Resource identifier.
      - `options` object[]
        - `id` string — Resource identifier.
    - `mainVariant` object, nullable — Reference to a main variant of this product
      - `id` string, required — Resource identifier.
    - `freeFields` object[]
      - `id` string, required — Resource identifier.
      - `name` string, nullable, required
      - `value` string, required
    - `isVariant` boolean, nullable — Shows if the product is a variant from another product.
    - `variantOf` object, nullable — Reference to a parent product
      - `id` string, required — Resource identifier.
    - `defaultStorageLocation` object, nullable — Default storage location of the product.
      - `id` string — Resource identifier.
      - `designation` string — Name of the storage location
      - `warehouse` object — Warehouse of the storage location
        - `id` string — Resource identifier.
        - `designation` string
    - `updatedAt` string, date-time — Timestamp of when the product was updated.

## Other responses

- `400` — IETF RFC 9457 Problem API compliant response
- `401` — Unable to authenticate the client
- `403` — Unable to authorize the client
- `404` — Resource was not found or not enough access privileges
- `429` — Too many API calls made.

---

[API](https://skmtc.dev/xentral/apis/xentral-api.md) · [All operations](https://skmtc.dev/xentral/apis/xentral-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/xentral/xentral-api/revisions/8a27ba392442/schema)
