---
title: "Creates products"
url: "https://developer.retailexpress.com.au/apis/retail-express-api-21-v2/versions/d3750347-3c58-45e9-b3b1-b23a00e713ed/operations/post-products"
---

> Full API specification: https://developer.retailexpress.com.au/apis/retail-express-api-21-v2/versions/d3750347-3c58-45e9-b3b1-b23a00e713ed.md

# Creates products

`POST` `/products`

Operation ID: `post-products`

Sample request: POST /products [ { "carton_quantity":1, "cogs_ex":11.1, "cubic":20.2, "direct_costs_ex":1.1, "prevent_disabling":false, "promotional_price_inc":1.1, "promotional_price_expiry":"2021-12-12T00:00:00", "freight_inc":1.1, "rrp_inc":1.1, "sell_price_inc":1.1, "web_price_inc":1.1, "breadth":1.1, "core_product":false, "custom_properties": [ { "Name": "Custom1", "Value": "Value1" }, { "Name": "Custom2", "Value": "Value2" } ], "depth":1.1, "disabled":false, "lead_time":12, "length":1.1, "loyalty_ratio":1.1, "manufacturer_sku":"UniqueManufacturerSku", "product_type":{ "id":3 }, "requires_assembly":false, "shipping_cubic":1.1, "short_description":"ShortDescription", "supplier":{ "supplier_code":"00" }, "supplier_buy_ex":1.1, "supplier_sku":"SupplierSKU1", "supplier_sku2":"SupplierSKU2", "weight":1.1, "buy_price_ex" : 0.0000, "attributes":[ { "value":{ "id":1 }, "id":3 } ], "long_description": "sample text", "voucher_product" : false, "max_discount_rule":{ "id": 1 }, "replenishment_method": { "id": 1 }, "sales_channels":[ { "id": 1, "source_group": { "id": 1 }, "enabled": true }], "export_to_web": false } ]

## Header parameters

- `x-api-key` (string, required) - Api subscription key
- `Cache-Control` (string, optional)
- `Authorization` (string, required) - Bearer token for authorization (e.g., Bearer <token>)

## Request body

Content types: `application/json`

## Responses

- `204` - Products created
- `400` - Bad request, max batch size limit of 100 is exceeded
- `401` - Unauthorized
- `403` - Forbidden

## OpenAPI definition

```yaml
openapi: 3.0.1
info:
  title: Retail Express API
  version: V2
servers:
  - url: https://api.retailexpress.com.au/v2
paths:
  /products:
    post:
      tags:
        - products
      summary: Creates products
      description: "Sample request:\r

        \r

        \     POST /products\r

        \     [\r

        \       {\r

        \        \"carton_quantity\":1,\r

        \        \"cogs_ex\":11.1,\r

        \        \"cubic\":20.2,\r

        \        \"direct_costs_ex\":1.1,\r

        \        \"prevent_disabling\":false,\r

        \        \"promotional_price_inc\":1.1,\r

        \        \"promotional_price_expiry\":\"2021-12-12T00:00:00\",\r

        \        \"freight_inc\":1.1,\r

        \        \"rrp_inc\":1.1,\r

        \        \"sell_price_inc\":1.1,\r

        \        \"web_price_inc\":1.1,\r

        \        \"breadth\":1.1,\r

        \        \"core_product\":false,\r

        \        \"custom_properties\": [\r

        \             {\r

        \                 \"Name\": \"Custom1\",\r

        \                 \"Value\": \"Value1\"\r

        \             },\r

        \             {\r

        \                 \"Name\": \"Custom2\",\r

        \                 \"Value\": \"Value2\"\r

        \             }\r

        \        ],\r

        \        \"depth\":1.1,\r

        \        \"disabled\":false,\r

        \        \"lead_time\":12,\r

        \        \"length\":1.1,\r

        \        \"loyalty_ratio\":1.1,\r

        \        \"manufacturer_sku\":\"UniqueManufacturerSku\",\r

        \        \"product_type\":{\r

        \           \"id\":3\r

        \        },\r

        \        \"requires_assembly\":false,\r

        \        \"shipping_cubic\":1.1,\r

        \        \"short_description\":\"ShortDescription\",\r

        \        \"supplier\":{\r

        \            \"supplier_code\":\"00\"\r

        \        },\r

        \        \"supplier_buy_ex\":1.1,\r

        \        \"supplier_sku\":\"SupplierSKU1\",\r

        \        \"supplier_sku2\":\"SupplierSKU2\",\r

        \        \"weight\":1.1,\r

        \        \"buy_price_ex\" : 0.0000,\r

        \        \"attributes\":[\r

        \           {\r

        \              \"value\":{\r

        \                 \"id\":1\r

        \              },\r

        \              \"id\":3\r

        \           }\r

        \        ],\r

        \        \"long_description\": \"sample text\",\r

        \        \"voucher_product\" : false,\r

        \        \"max_discount_rule\":{\r

        \             \"id\": 1\r

        \        },\r

        \        \"replenishment_method\": {\r

        \              \"id\": 1\r

        \        },\r

        \        \"sales_channels\":[\r

        \             {\r

        \                 \"id\": 1,\r

        \                 \"source_group\": \r

        \                 {\r

        \                     \"id\": 1\r

        \                 },\r

        \                 \"enabled\": true\r

        \             }],\r

        \       \"export_to_web\": false  \r

        \       }\r

        \     ]"
      operationId: post-products
      parameters:
        - name: x-api-key
          in: header
          description: Api subscription key
          required: true
          schema:
            type: string
        - name: Cache-Control
          in: header
          required: false
          schema:
            type: string
            default: no-cache
        - name: Authorization
          in: header
          required: true
          description: Bearer token for authorization (e.g., Bearer <token>)
          schema:
            type: string
      requestBody:
        description: Products to be created
        content:
          application/json:
            schema:
              title: EmptyExample
              type: object
              additionalProperties: false
      responses:
        "204":
          description: Products created
        "400":
          description: Bad request, max batch size limit of 100 is exceeded
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ProblemDetails"
              example:
                type: string
                title: string
                status: 0
                detail: string
                instance: string
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ProblemDetails"
              example:
                type: string
                title: string
                status: 0
                detail: string
                instance: string
        "403":
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ProblemDetails"
              example:
                type: string
                title: string
                status: 0
                detail: string
                instance: string
security: []
components:
  schemas:
    ProblemDetails:
      title: ""
      type: object
      properties:
        type:
          type: string
          nullable: true
        title:
          type: string
          nullable: true
        status:
          type: integer
          format: int32
          nullable: true
        detail:
          type: string
          nullable: true
        instance:
          type: string
          nullable: true
      additionalProperties: {}
```
