# Transition product lifecycle Transitions a product to a different lifecycle state. Valid transitions depend on current status. Endpoint: PATCH /v1/products/{productUuid}/actions/lifecycle Version: 1.0.0 Security: Bearer ## Path parameters: - `productUuid` (string, required) Unique identifier of the product. ## Request fields (application/json): - `transition` (string, required) Lifecycle transition to apply. Valid transitions depend on current status. Enum: "publish", "unpublish", "archive", "unarchive", "remove", "restore" ## Response 200 fields (application/json): - `uuid` (string, required) Unique identifier for this product. - `familyUuid` (string,null) Identifier of the family defining structure and requirements for this product. - `skuUuid` (string,null) Identifier of the SKU providing inventory and dimensional data. - `parentUuid` (string,null) Identifier of the parent product for variant relationships. - `brandUuid` (string,null) Identifier of the brand associated with this product. - `createdAt` (string, required) Timestamp when this product was created. Example: "2025-11-23T14:15:22.123456Z" - `updatedAt` (string, required) Timestamp when this product was last modified. Example: "2025-11-23T14:15:22.123456Z" - `removedAt` (string,null) Timestamp when this product was removed. Null if not removed. Example: "2025-11-23T14:15:22.123456Z" - `archivedAt` (string,null) Timestamp when this product was archived. Null if not archived. Example: "2025-11-23T14:15:22.123456Z" - `status` (string, required) Current lifecycle status of this product. Enum: "draft", "published", "unpublished", "archived", "removed" - `type` (string, required) Product type defining variant behavior. Enum: "simple", "variantParent", "variant" - `code` (string, required) Unique code identifier for this product. ## Response 401 fields (application/problem+json): - `type` (string,null) - `title` (string,null) - `status` (integer,null) - `detail` (string,null) - `instance` (string,null) ## Response 403 fields (application/problem+json): - `type` (string,null) - `title` (string,null) - `status` (integer,null) - `detail` (string,null) - `instance` (string,null) - `correlationId` (string,null) ## Response 404 fields (application/problem+json): - `type` (string,null) - `title` (string,null) - `status` (integer,null) - `detail` (string,null) - `instance` (string,null) - `correlationId` (string,null) ## Response 422 fields (application/problem+json): - `errors` (array) - `errors.code` (string, required) - `errors.message` (string, required) - `type` (string,null) - `title` (string,null) - `status` (integer,null) - `detail` (string,null) - `instance` (string,null) - `correlationId` (string,null) ## Response 500 fields (application/problem+json): - `type` (string,null) - `title` (string,null) - `status` (integer,null) - `detail` (string,null) - `instance` (string,null) - `correlationId` (string,null)