Skip to content

tys.garments.updateDraft()

Method@tryyoursize/node

Replaces a draft’s content (published versions never change: 409).

updateDraft(id: string, garment: GarmentInput, options?: RequestOptions): Promise<GarmentVersion>
idstringRequired

The draft's ID.

garmentGarmentInputRequired
Properties
categoryGarmentCategoryRequired

The garment type; it sets which POMs are needed.

fit_intentFitIntentRequired

The designer's intended silhouette; sets the ease targets the fit judgement compares against.

sizesstring[]Required

Size labels, smallest to largest.

pomsPOMTableRequired

Garment measurements per size: size label → POM code → millimetres. Widths are flat half-measurements. See GET /v1/studio/garment_dictionary for codes and plausible ranges.

gradingGradingRuleOptional

How the POM table was derived: the base size's values plus, per POM, the increment (mm) between each pair of consecutive sizes (len = number of sizes - 1). The table stays the source of truth.

fabricFabricRequired

What the tech pack / mill sheet says.

import_idstringOptional

Pattern import linked to this version (omit to unlink).

seasonstringOptional

Season tag, e.g. "SS27".

tolerances_mmTolerancesMMOptional

Spec-sheet tolerance per POM code, ± mm (e.g. {"chest_width": 10}). Optional; the flat preview uses ±5 mm when a POM has none.

spec_sourceSpecSourceOptional

Where the POM table came from, kept for audit. Set by Studio's paste/import.

optionsRequestOptionsOptional

Promise<GarmentVersion>: The updated draft. Published versions never change (409 conflict).

await tys.garments.updateDraft(draft.id, { ...garment, season: "SS27" }); // replaces the draft

Was this page helpful?