---
title: "Changes to Create a new Product."
method: POST
path: "/products.json"
---

# Changes to Create a new Product.

`POST /products.json`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 4 of 12 revisions.

- **2026-10-15** `53dc9f2c1329`: 10 breaking, 7 warning, 23 info
- **2026-10-07** `42f316fe2455`: 2 info
- **2026-09-28** `6d9bc2d4601a`: 2 info
- **2026-09-03** `b6c544795149`: 1 info

## Changes

- **2026-10-15** `53dc9f2c1329`: 10 breaking, 7 warning, 23 info
  - the request property `product/categories/items/id` became required
  - the request property `product/variants/items/variant/options/items/name` became required
  - the request property `product/variants/items/variant/options/items/value` became required
  - the response property `product/categories/items/parent_id` became nullable for the status `200`
  - the response property `product/compare_at_price` became nullable for the status `200`
  - the response property `product/cost_per_item` became nullable for the status `200`
  - the response property `product/days_to_expire` became nullable for the status `200`
  - the response property `product/variants/items/compare_at_price` became nullable for the status `200`
  - the response property `product/variants/items/cost_per_item` became nullable for the status `200`
  - the response property `product/variants/items/options/items/custom` became nullable for the status `200`
  - removed the request property `product/categories/items/name`
  - removed the request property `product/categories/items/parent_id`
  - removed the request property `product/categories/items/permalink`
  - removed the request property `product/variants/items/variant/options/items/product_option_position`
  - removed the request property `product/variants/items/variant/options/items/product_value_position`
  - removed the optional property `product/categories/items/permalink` from the response with the `200` status
  - removed the optional property `product/digital_products` from the response with the `200` status
  - added the new optional request property `product/brand`
  - added the new optional request property `product/google_product_category`
  - added the new optional request property `product/reviews_enabled`
  - added the new optional request property `product/variants/items/variant/weight`
  - for the `query` request parameter `locale`, the format was generalized from `string` to no format
  - the `option_type` request property default value `option` was added
  - the `barcode` request property default value `123456` was removed
  - the `stock` request property default value `100` was removed
  - added the non-success response with the status `400`
  - added the non-success response with the status `404`
  - added the optional property `product/appointment_location_id` to the response with the `200` status
  - added the optional property `product/appointment_settings` to the response with the `200` status
  - added the optional property `product/categories/items/description` to the response with the `200` status
  - added the optional property `product/currency` to the response with the `200` status
  - added the optional property `product/fields` to the response with the `200` status
  - added the optional property `product/google_product_category` to the response with the `200` status
  - added the optional property `product/meta_description` to the response with the `200` status
  - added the optional property `product/shipping_required` to the response with the `200` status
  - added the optional property `product/variants/items/discount` to the response with the `200` status
  - added the optional property `product/variants/items/options/items/product_option_id` to the response with the `200` status
  - added the optional property `product/variants/items/options/items/product_option_value_id` to the response with the `200` status
  - added the optional property `product/variants/items/position` to the response with the `200` status
  - added the optional property `product/variants/items/weight` to the response with the `200` status
- **2026-10-07** `42f316fe2455`: 2 info
  - added the new optional request property `product/appointment_location_id`
  - added the new optional request property `product/appointment_settings`
- **2026-09-28** `6d9bc2d4601a`: 2 info
  - added the optional property `product/variants/items/created_at` to the response with the `200` status
  - added the optional property `product/variants/items/updated_at` to the response with the `200` status
- **2026-09-03** `b6c544795149`: 1 info
  - added the optional property `product/bundle_components` to the response with the `200` status

---

[Operation](https://skmtc.dev/jumpseller/apis/jumpseller-api/docs/products.json/post.md) - [API](https://skmtc.dev/jumpseller/apis/jumpseller-api.md) - [Page](https://skmtc.dev/jumpseller/apis/jumpseller-api/changes/products.json/post)
