Skip to content

Sizing

Sizes only apply to items in the clothing category. Sizes are modeled in one of the following sizing systems:

  • American (numeric)
  • British (numeric)
  • French (numeric)
  • Italian (numeric)
  • International (letter codes)

The specification of an item’s size must always include two values – the size value, and size scale. Taken together, these determine the canonical item ‘size’ and allow for conversion between scales.

SizeScales
type SizeScale = {
name: string;
displayName: string;
regions: Array<string>;
abbreviation: string;
choices: Array<SizeChoices>;
enabled: boolean;
createdAt: string;
updatedAt: string;
}
  • name : a unique-internal name, no whitespace i.e. ‘french’
  • displayName : Title-cased name for UI / Display, i.e. ‘French’
  • regions : a list of regions (in ISO-3166 format)
  • enabled : only items with enabled: true are included in API responses
  • createdAt : item creation timestamp, ISO-8601 string format
  • updatedAt : item updated timestamp, ISO-8601 string format
  • choices : an array of choices appropriate for use in UI elements (see below)
SizeChoices
type SizeChoice = {
scaleName: string;
size: string;
displayOrder: number;
}
  • scaleName : a string matching the unique name property of a supported size scale
  • size : a string representing one of the valid choices in this size scale
  • displayOrder : an integer determining the sort order of choices in UI elements
Size Scales Endpoint
$ curl /resources/sizes | jq .
[
{
"name": "american",
"displayName": "American",
"regions": [
"US"
],
"abbreviation": "USA",
"choices": [
{
"id": "g8cpwsambxvtweukpm993m83",
"scaleName": "american",
"size": "00",
"displayOrder": 0
},
{
"id": "krrjl1xbktn9vmn7lzwrf9cb",
"scaleName": "american",
"size": "0",
"displayOrder": 1
},
...
],
"enabled": true,
"createdAt": "2024-06-18 23:00:35.584322+00",
"updatedAt": "2024-06-18 23:00:35.584322+00"
},
...
]