---
title: "PUT /api/style-variants/{id}"
method: PUT
path: "/api/style-variants/{id}"
tags: ["Products/Variants"]
---

# PUT /api/style-variants/{id}

`PUT /api/style-variants/{id}`

## Path parameters

- `id` string, required

## Request body

- object
  - `forCompanyId` string
  - `name` string, required
  - `description` string, nullable
  - `codes` object[], required
    - `codeId` string, required — Identifier type for the code. Single-use (each may appear at most once): ERP_ID, PLM_ID, MAIN_SUPPLIERS_ID, PIM_ID, UPC_GTIN_12, EAN_GTIN_13, ZALANDO_ID, FASHIONCLOUD_ID. Multi-use (append a numeric suffix for additional entries, e.g. OTHER_ID1, OTHER_ID2): OTHER_ID, ALTERNATIVE_SUPPLIERS_ID.
    - `codeValue` string, required — The unique code value for this identifier, e.g. "ERP-001234".
  - `color` string, required
  - `gender` string, nullable
  - `imagesFileIds` string[], nullable
  - `brands` string[], nullable
  - `departments` string[], nullable
  - `seasons` string[], nullable
  - `collections` string[], nullable
  - `customProperties` string, nullable
  - `suppliers` string[], nullable
  - `mainSupplier` string, nullable
  - `vendors` string[], nullable
  - `claimIntentions` string[], nullable
  - `weight` object, nullable
    - `unit` 'GRAM' | 'GRAM_PER_SQUARE_METER' | 'GRAM_PER_SQUARE_FOOT' | 'GRAM_PER_SQUARE_YARD' | 'OUNCE_PER_SQUARE_YARD' | 'MILLIGRAM' | 'KILOGRAM' | 'METRIC_TON' | 'POUNDS' | 'SHORT_TON' | 'LONG_TON' | 'HUNDREDWEIGHT' | 'SHORT_HUNDREDWEIGHT' | 'LONG_HUNDREDWEIGHT' | 'OUNCE' | 'DRAM' | 'GRAIN' | 'PENNYWEIGHT' | 'SCRUPLE' | 'STONE', nullable, required
    - `value` number, nullable, required
  - `isStoryActive` boolean
  - `externalId` string, nullable — Your own identifier for this product. Unique per company across all product levels. Can be used in place of the Retraced ID on any product ID field in this API. On update it is only written when the field is present in the body — omitting it keeps the stored value, sending null clears it.

## Response `200`

Default Response

- object
  - `metadata` object, required
    - `success` boolean, required — True when the request succeeded.
  - `data` VariantSchema, required
    - `id` string, required
    - `externalId` unknown
    - `styleId` string, required
    - `forCompanyId` string, required
    - `name` string, required
    - `description` string
    - `codes` object[], required
      - `codeId` string, required — Identifier type for the code. Single-use (each may appear at most once): ERP_ID, PLM_ID, MAIN_SUPPLIERS_ID, PIM_ID, UPC_GTIN_12, EAN_GTIN_13, ZALANDO_ID, FASHIONCLOUD_ID. Multi-use (append a numeric suffix for additional entries, e.g. OTHER_ID1, OTHER_ID2): OTHER_ID, ALTERNATIVE_SUPPLIERS_ID.
      - `codeValue` string, required — The unique code value for this identifier, e.g. "ERP-001234".
    - `gender` string
    - `styleLevelId` string, required
    - `styleTypeId` string, required
    - `color` string, required
    - `imagesFileIds` string[]
    - `images` object[]
      - `id` string, required
      - `url` unknown, required
      - `previewUrl` string, required
      - `fileType` unknown, required
      - `bucketName` string, required
      - `name` string, required
      - `fileSize` unknown, required
      - `contentType` unknown, required
      - `fileHash` unknown, required
      - `createdAt` string, date-time, required
      - `updatedAt` string, date-time, required
      - `createdBy` unknown
      - `createdByCompanyId` unknown
      - `createdByImpersonateId` unknown
      - `createdByImpersonateName` unknown
      - `createdByUserId` unknown
      - `createdByApiKeyId` unknown
      - `createdByApiKeyLabel` unknown
      - `updatedByUserId` unknown
      - `updatedByUserName` unknown
      - `updatedByCompanyId` unknown
      - `updatedByCompanyName` unknown
      - `updatedByImpersonateId` unknown
      - `updatedByImpersonateName` unknown
      - `updatedByApiKeyId` unknown
      - `updatedByApiKeyLabel` unknown
    - `featuredImage` object
      - `id` string, required
      - `url` unknown, required
      - `previewUrl` unknown, required
      - `fileType` unknown, required
      - `bucketName` string, required
      - `name` string, required
      - `fileSize` unknown, required
      - `contentType` unknown, required
      - `fileHash` unknown, required
      - `createdAt` string, date-time, required
      - `updatedAt` string, date-time, required
      - `createdBy` unknown, required
      - `createdByCompanyId` unknown, required
      - `createdByImpersonateId` unknown, required
      - `createdByImpersonateName` unknown, required
      - `createdByUserId` unknown, required
      - `createdByApiKeyId` unknown, required
      - `createdByApiKeyLabel` unknown, required
      - `updatedByUserId` unknown, required
      - `updatedByUserName` unknown, required
      - `updatedByCompanyId` unknown, required
      - `updatedByCompanyName` unknown, required
      - `updatedByImpersonateId` unknown, required
      - `updatedByImpersonateName` unknown, required
      - `updatedByApiKeyId` unknown, required
      - `updatedByApiKeyLabel` unknown, required
    - `brands` string[]
    - `departments` string[]
    - `seasons` string[]
    - `collections` string[]
    - `customProperties` unknown
    - `suppliers` string[]
    - `mainSupplier` string
    - `vendors` string[]
    - `claimIntentions` string[]
    - `weight` object
      - `unit` string, required
      - `value` number, required
    - `overriddenFlag` string[]
    - `isComponent` unknown
    - `isStoryActive` unknown
    - `isArchived` boolean, required
    - `skuCount` number
    - `createdAt` string, date-time
    - `updatedAt` string, date-time
    - `createdByImpersonateId` string
    - `createdByUserId` string
    - `createdByCompanyId` string
    - `createdByApiKeyId` string
    - `createdByApiKeyLabel` string
    - `updatedByImpersonateId` string
    - `updatedByUserId` string
    - `updatedByCompanyId` string
    - `updatedByApiKeyId` string
    - `updatedByApiKeyLabel` string
    - `qrCodeUrl` unknown
    - `tracingStory` object
      - `id` string, required
      - `tracingType` string, required
      - `tracingId` string, required
      - `isActive` boolean, required
      - `createdAt` string, date-time, required
      - `updatedAt` string, date-time, required
      - `tracingName` unknown
    - `isWeightAvailable` boolean

## Changes

> 22 revisions in range; 1 not diffed.

- **2026-08-31** `97e51f27dc77` — 64 breaking, 3 warning, 61 info
  - added the new required request property `weight/unit`
  - added the new required request property `weight/value`
  - removed `subschema #1, subschema #2` from the `weight` request property `anyOf` list
  - request property `brands` list-of-types was narrowed by removing types `null` from media type `application/json`
  - …124 more

[Change history](https://skmtc.dev/retraced/apis/api-reference/changes/api/style-variants/:id/put.md)

---

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