General

The Product Information Management integration service allows a brand to upload their products, price lists and stock levels to the FashionTrade platform so the products can be ordered by retailers.

The PIM integration service currently supports three resources:

  • Product resource

  • Price list resource

  • Stock level resource

Product resource

Within the FashionTrade platform we distinquish products and variants. A product is e.q. a shirt and a variant is a specific size - color/pattern of that product. So a variant of the product shirt can be size large and color blue. A product contains one or more variants.

Product types (deprecated)

The product can be categorized in one of the four main categories listed bellow. Only one value is allowed:

  • CLOTHING

  • FURNITURE

  • FOOTWEAR

  • TOYS

Beware that product type is deprecated in favor for the CATEGORY tag, which has among others the following values: clothing, furniture, footwear and toys.

Category tree (product version 2)

  • clothing

    • accessory

      • bag

        • clutch

        • handbag

        • laptop-bag

        • rucksack

      • belt

      • gloves

      • headwear

        • beanie

        • cap

        • earmuffs

        • hat

      • jewellery

        • bracelet

        • earrings

        • necklace

        • ring

      • scarf

      • shawl

      • sunglasses

      • suspenders

      • tie

        • bow-tie

      • umbrella

      • watch

      • wallet

    • basics

    • body

    • bottom

    • blazer_waistcoat

      • blazer

      • waistcoat

    • dress

      • cocktail

      • gown

      • maxi-dress

      • midi-dress

      • mini-dress

    • jacket

      • biker

      • bodywarmer

      • bomber

      • parka

      • puffed

      • poncho

      • raincoat

      • trench-coat

    • jeans

      • jogjeans

    • jumper_cardigan

      • cardigan

      • jumper

      • hoodie

      • sweater

    • jumpsuit_playsuit

      • jumpsuit

      • playsuit

      • overall

    • nightwear

      • nighties

      • pyjamas

      • robe

    • pants

      • bermuda

      • cargo

      • capri

      • chino

      • culottes

      • jegging

      • hot-pants

      • legging

      • shorts

      • sweatpants

      • smart-pants

      • casual-pants

    • set

    • skirt

      • maxi-skirt

      • midi-skirt

      • mini-skirt

      • pencil

    • shirt_blouse

    • socks_tights

      • socks

      • tights

    • sportswear

      • ski_snowboard

        • snowsuit

    • suit

    • swimwear

      • swimsuit

      • bikini

        • bikini-top

        • bikini-bottom

    • top_t-shirt

      • polo

      • t-shirt

      • top

      • long-sleeves

      • tank-top

    • underwear

      • bra

        • balconette

        • push-up

        • strapless-bra

        • padded

        • underwired

        • non-wired

        • sports-bra

      • underpants

        • boxer-shorts

        • briefs

        • thongs

        • tanga

  • footwear

    • boots

      • winter-boots

    • brogues

    • espadrilles

    • flip-flops

    • loafers

    • pumps

    • sandals

    • trainers

  • furniture

    • textiles

      • towel

      • blanket

    • crockery

    • cushion

    • cutlery

  • toys

  • pos_materials

Category tree (product version 1)

  • clothing

    • accessory

      • bag

        • clutch

        • handbag

        • laptop-bag

        • rucksack

      • belt

      • gloves

      • handkerchief

        • cap

        • earmuffs

        • hat

      • jewellery

        • bracelet

        • earrings

        • necklace

      • scarf

      • shawl

      • sunglasses

      • suspenders

      • tie

        • bow-tie

      • umbrella

      • watch

      • wallet

    • basics

    • bodies

    • bottom

    • blazer_waistcoat

      • blazer

      • vest

      • waistcoat

    • dress

      • gown

      • midi-dress

      • mini-dress

    • jacket_coat

      • bodywarmer

      • parka

    • jeans

      • jogjeans

    • jumper_cardigan

      • cardigan

      • jumper

      • hoodie

      • sweater

    • jumpsuit_playsuit

      • jumpsuit

      • playsuit

      • overall

    • nightwear

    • pants

      • chino

      • shorts

      • sweatpants

      • smart-pants

      • casual-pants

    • set

    • skirt

    • shirt_blouse

    • socks_tights

      • socks

      • tights

    • sportswear

    • suit

    • swimwear

      • swimsuit

      • bikini

    • trousers

    • top_t-shirt

      • polo

      • t-shirt

      • top

      • long-sleeves

      • tank-top

    • underwear

      • bra

        • balconette

      • underpants

  • footwear

    • boots

    • brogues

    • espadrilles

    • flip-flops

    • loafers

    • pumps

    • sandals

    • trainers

  • furniture

    • textiles

      • towel

    • crockery

    • cushion

    • cutlery

  • toys

Tags

Using tags is a way to categorize the products besides the product type. The FashionTrade platform currently supports the following tags:

Allowed tags (product version 2)

GENDER

A product can contain zero or more GENDER values.

  • female

  • male

  • unisex

AGE

A product can contain zero or more AGE values.

  • adult

  • baby

  • kids

  • pre-school

  • teens

COLLECTION

A product can contain zero or more COLLECTION values.

  • autumn15

  • autumn16

  • autumn17

  • autumn18

  • autumn19

  • autumn20

  • autumn21

  • autumn22

  • aw15

  • aw16

  • aw17

  • aw18

  • aw19

  • aw20

  • aw21

  • aw22

  • capsule

  • nos

  • nos_autumn

  • nos_spring

  • nos_summer

  • nos_winter

  • spring15

  • spring16

  • spring17

  • spring18

  • spring19

  • spring20

  • spring21

  • spring22

  • ss15

  • ss16

  • ss17

  • ss18

  • ss19

  • ss20

  • ss21

  • ss22

  • summer15

  • summer16

  • summer17

  • summer18

  • summer19

  • summer20

  • summer21

  • summer22

  • winter15

  • winter16

  • winter17

  • winter18

  • winter19

  • winter20

  • winter21

  • winter22

FABRIC

A product can contain zero or more FABRIC values.

  • acrylic

  • corduroy

  • denim

  • denim-stretch

  • down_insulated

  • flannel

  • fleece

  • glitter

  • jersey

  • jogging

  • knit

  • lace

  • linen

  • neoprene

  • oilskin

  • satin

  • softshell

  • spandex

  • suede

  • sweat

  • tencel

  • tweed

  • twill

  • velour

  • velvet

  • water_repellent

  • water_resistant

  • wind_resistant

  • woven

HEEL_HEIGHT

A product can contain zero or more HEEL_HEIGHT values.

  • flat

  • high_heel

  • medium_heel

MATERIAL

A product can contain zero or more MATERIAL values.

  • angora-wool

  • bamboo

  • cashmere

  • cotton

  • duck_down

  • elastane

  • fur

  • goose_down

  • lamb-wool

  • leather

  • merino-wool

  • metal

  • organic_cotton

  • polyamide

  • polyester

  • polyurethane

  • silk

  • viscose

  • wood

  • wool

SLEEVE_TYPE

A product can contain zero or more SLEEVE_TYPE values.

  • 3_4_length

  • extra_long

  • extra_short

  • long

  • off_the_shoulder

  • short

  • sleeveless

  • strapless

PRINT

A product can contain zero or more PRINT values.

  • animal

  • artwork

  • cartoon

  • check

  • dots

  • floral

  • multi-color

  • no

  • stripes

  • text

  • uni

  • yes

FIT

A product can contain zero or more FIT values.

  • baggy

  • bootcut

  • boyfriend

  • carrot

  • comfort

  • cropped

  • extra_slim

  • flared

  • high_rise

  • loose_fit

  • mid_rise

  • modern

  • mom

  • skinny

  • slim_fit

  • straight

  • stretch

  • tailored

  • tapered

STYLE

A product can contain zero or more STYLE values.

  • basic

  • boho

  • business

  • casual

  • classic

  • clean

  • cowboy

  • festival

  • glamorous

  • grunge

  • lounge

  • minimalistic

  • smart

  • sportive

  • statement

  • street

OCCASION

A product can contain zero or more OCCASION values.

  • business

  • evening

  • festive

  • wedding

ACTIVITY

A product can contain zero or more ACTIVITY values.

  • beach_swim

  • outdoor

  • sleep

  • sport

  • travel

  • work

SPORT

A product can contain zero or more SPORT values.

  • alpine_skiing

  • american_football

  • badminton

  • ballet

  • baseball_softball

  • basketball

  • bike

  • billiard_snooker

  • bowling_skittles

  • cricket

  • dancing

  • diving

  • figure_skating

  • fishing

  • fitness_workout

  • floorball_field_hockey

  • funwheel_sports

  • golf

  • handball

  • horseback_riding

  • hunting

  • ice_hockey

  • kayak_canoeing

  • leisure_fashion_summer_a_y

  • leisure_fashion_winter

  • martial_arts

  • mountaineering_hiking

  • multisport

  • nordic_skiing_xc

  • nordic_walking

  • orienteering

  • paragliding

  • pr_promotion_activity

  • rowing

  • rugby

  • running

  • sailing

  • skitouring_telemark

  • sledging_rodelling

  • snowboarding

  • soccer

  • speed_skating

  • squash

  • surfing

  • swimming_beach

  • table_tennis

  • tennis

  • track_and_field_sports

  • triathlon

  • volleyball

  • walking

  • water_skiing_wake_boarding

  • wrestling

  • yoga

TREATMENT

A product can contain zero or more TREATMENT values.

  • bleached

  • coated

  • distressed_destroyed_ripped

  • enzyme_washed

  • garment_dyed

  • stonewashed

PROMOTION

A product can contain zero or more PROMOTION values.

  • black_friday_2017

COLLAR

A product can contain zero or more COLLAR values.

  • aida_kent

  • band

  • business_kent

  • button_down

  • carmen_party

  • covered_button_down

  • cut_away

  • fold

  • george_party

  • kent

  • modern_kent

  • spread_kent

CUFF

A product can contain zero or more CUFF values.

  • adjustable

  • double

CATEGORY

A product can contain zero or more CATEGORY values.

  • accessory

  • bag

  • balconette

  • basics

  • beanie

  • belt

  • bermuda

  • biker

  • bikini

  • bikini-bottom

  • bikini-top

  • blanket

  • blazer

  • blazer_waistcoat

  • body

  • bodywarmer

  • bomber

  • boots

  • bottom

  • bow-tie

  • boxer-shorts

  • bra

  • bracelet

  • briefs

  • brogues

  • cap

  • capri

  • cardigan

  • cargo

  • casual-pants

  • chino

  • clothing

  • clutch

  • cocktail

  • crockery

  • culottes

  • cushion

  • cutlery

  • dress

  • earmuffs

  • earrings

  • espadrilles

  • flip-flops

  • footwear

  • furniture

  • gloves

  • gown

  • handbag

  • hat

  • headwear

  • hoodie

  • hot-pants

  • jacket

  • jeans

  • jegging

  • jewellery

  • jogjeans

  • jumper

  • jumper_cardigan

  • jumpsuit

  • jumpsuit_playsuit

  • laptop-bag

  • legging

  • loafers

  • long-sleeves

  • maxi-dress

  • maxi-skirt

  • midi-dress

  • midi-skirt

  • mini-dress

  • mini-skirt

  • necklace

  • nighties

  • nightwear

  • non-wired

  • overall

  • padded

  • pants

  • parka

  • pencil

  • playsuit

  • polo

  • poncho

  • pos_materials

  • puffed

  • pumps

  • push-up

  • pyjamas

  • raincoat

  • ring

  • robe

  • rucksack

  • sandals

  • scarf

  • set

  • shawl

  • shirt_blouse

  • shorts

  • ski_snowboard

  • skirt

  • smart-pants

  • snowsuit

  • socks

  • socks_tights

  • sports-bra

  • sportswear

  • strapless-bra

  • suit

  • sunglasses

  • suspenders

  • sweater

  • sweatpants

  • swimsuit

  • swimwear

  • t-shirt

  • tanga

  • tank-top

  • textiles

  • thongs

  • tie

  • tights

  • top

  • top_t-shirt

  • towel

  • toys

  • trainers

  • trench-coat

  • umbrella

  • underpants

  • underwear

  • underwired

  • waistcoat

  • wallet

  • watch

  • winter-boots

Allowed tags (product version 1)

GENDER

A product can contain zero or more GENDER values.

  • female

  • male

  • unisex

AGE

A product can contain zero or more AGE values.

  • adult

  • baby

  • kids

  • pre-school

  • teens

COLLECTION

A product can contain zero or more COLLECTION values.

  • NOS

  • NOS_AUTUMN

  • NOS_SPRING

  • NOS_SUMMER

  • NOS_WINTER

  • autumn15

  • autumn16

  • autumn17

  • autumn18

  • autumn19

  • autumn20

  • autumn21

  • aw15

  • aw16

  • aw17

  • aw18

  • aw19

  • aw20

  • aw21

  • spring15

  • spring16

  • spring17

  • spring18

  • spring19

  • spring20

  • spring21

  • ss15

  • ss16

  • ss17

  • ss18

  • ss19

  • ss20

  • ss21

  • summer15

  • summer16

  • summer17

  • summer18

  • summer19

  • summer20

  • summer21

  • winter15

  • winter16

  • winter17

  • winter18

  • winter19

  • winter20

  • winter21

SEASON

A product can contain zero or more SEASON values.

  • all

  • autumn

  • spring

  • summer

  • winter

FABRIC

A product can contain zero or more FABRIC values.

  • acrylic

  • corduroy

  • denim

  • denim-stretch

  • down_insulated

  • flannel

  • fleece

  • glitter

  • jersey

  • jogging

  • knit

  • lace

  • linen

  • neoprene

  • oilskin

  • satin

  • softshell

  • spandex

  • suede

  • sweat

  • tencel

  • tweed

  • twill

  • velour

  • velvet

  • water_repellent

  • water_resistant

  • wind_resistant

  • woven

MATERIAL

A product can contain zero or more MATERIAL values.

  • angora-wool

  • bamboo

  • cashmere

  • cotton

  • duck_down

  • elastane

  • fur

  • goose_down

  • lamb-wool

  • leather

  • merino-wool

  • metal

  • organic_cotton

  • polyamide

  • polyester

  • silk

  • viscose

  • wool

SLEEVE_TYPE

A product can contain zero or more SLEEVE_TYPE values.

  • 3_4_length

  • long

  • off_the_shoulder

  • short

  • sleeveless

  • strappless

PRINT

A product can contain zero or more PRINT values.

  • animal

  • artwork

  • cartoon

  • check

  • dots

  • floral

  • multi-color

  • no

  • stripes

  • text

  • uni

  • yes

FIT

A product can contain zero or more FIT values.

  • baggy

  • bootcut

  • boyfriend

  • carrot

  • comfort

  • cropped

  • extra_slim

  • flared

  • high_rise

  • loose_fit

  • mid_rise

  • modern

  • mom

  • skinny

  • slim_fit

  • straight

  • stretch

  • tailored

  • tapered

SKIRT_DRESS_TYPE

A product can contain zero or more SKIRT_DRESS_TYPE values.

  • knee

  • lont

  • maxi

  • midi

  • mini

  • pencil

  • short

PANTS_TYPE

A product can contain zero or more PANTS_TYPE values.

  • cargo

  • chino

  • culottes

  • legging

  • shorts

STYLE

A product can contain zero or more STYLE values.

  • basic

  • boho

  • business

  • casual

  • classic

  • clean

  • cowboy

  • festival

  • glamorous

  • grunge

  • lounge

  • minimalistic

  • smart

  • sportive

  • statement

  • street

OCCASION

A product can contain zero or more OCCASION values.

  • business

  • evening

  • festive

  • wedding

ACTIVITY

A product can contain zero or more ACTIVITY values.

  • beach_swim

  • outdoor

  • sleep

  • sport

  • travel

  • work

SPORT

A product can contain zero or more SPORT values.

  • alpine_skiing

  • american_football

  • badminton

  • ballet

  • baseball_softball

  • basketball

  • bike

  • billiard_snooker

  • bowling_skittles

  • cricket

  • dancing

  • diving

  • figure_skating

  • fishing

  • fitness_workout

  • floorball_field_hockey

  • funwheel_sports

  • golf

  • handball

  • horseback_riding

  • hunting

  • ice_hockey

  • kayak_canoeing

  • leisure_fashion_summer_a_y

  • leisure_fashion_winter

  • martial_arts

  • mountaineering_hiking

  • multisport

  • nordic_skiing_xc

  • nordic_walking

  • orienteering

  • paragliding

  • pr_promotion_activity

  • rowing

  • rugby

  • running

  • sailing

  • skitouring_telemark

  • sledging_rodelling

  • snowboarding

  • soccer

  • speed_skating

  • squash

  • surfing

  • swimming_beach

  • table_tennis

  • tennis

  • track_and_field_sports

  • triathlon

  • volleyball

  • walking

  • walking_nordic_walking

  • water_skiing_wake_boarding

  • wrestling

  • yoga

TREATMENT

A product can contain zero or more TREATMENT values.

  • bleached

  • coated

  • distressed_destroyed_ripped

  • enzyme_washed

  • garment_dyed

  • stonewashed

PROMOTION

A product can contain zero or more PROMOTION values.

  • black_friday_2017

CATEGORY

A product can contain zero or more CATEGORY values.

  • accessory

  • bag

  • balconette

  • basics

  • belt

  • bikini

  • blazer

  • blazer_waistcoat

  • bodies

  • bodywarmer

  • boots

  • bottom

  • bow-tie

  • bra

  • bracelet

  • brogues

  • cap

  • cardigan

  • casual-pants

  • chino

  • clothing

  • clutch

  • crockery

  • cushion

  • cutlery

  • dress

  • earmuffs

  • earrings

  • espadrilles

  • flip-flops

  • footwear

  • furniture

  • gloves

  • gown

  • handbag

  • handkerchief

  • hat

  • hoodie

  • jacket_coat

  • jeans

  • jewellery

  • jogjeans

  • jumper

  • jumper_cardigan

  • jumpsuit

  • jumpsuit_playsuit

  • laptop-bag

  • loafers

  • long-sleeves

  • midi-dress

  • mini-dress

  • necklace

  • nightwear

  • overall

  • pants

  • parka

  • playsuit

  • polo

  • pumps

  • rucksack

  • sandals

  • scarf

  • set

  • shawl

  • shirt_blouse

  • shorts

  • skirt

  • smart-pants

  • socks

  • socks_tights

  • sportswear

  • suit

  • sunglasses

  • suspenders

  • sweater

  • sweatpants

  • swimsuit

  • swimwear

  • t-shirt

  • tank-top

  • textiles

  • tie

  • tights

  • top

  • top_t-shirt

  • towel

  • toys

  • trainers

  • trousers

  • umbrella

  • underpants

  • underwear

  • vest

  • waistcoat

  • wallet

  • watch

Sizes and colors

Sizes and colors are specified at the variant level and makes a variant unique. At the moment the FashionTrade platform supports seven pre-defined size types and a generic size type for the size types that are currently not supported.

CategoricalSize

CategoricalSize size types supports values like small m extra extra large etc…​

ChildrenSize

The children size types can be used the store European children sizes. It supports single values like 116 but also ranges like 122-128.

ChildrenAgeSize

The children age size type is used for age based sizes, either in months ('M') or years ('Y'). It supports single values such as 6M as well as ranges like 3Y-4Y. For ranges, the unit ('M' or 'Y') must be consistent.

EuMenSize

Men’s size according to the EU system.

EuShoeSize

Shoe size according to the EU system.

EuWomenSize

Women’s size according to the EU system.

JeansSize

The specific properties for a JeansSize size type are waist and length.

OneSize

To indicate that the style has no size.

OtherSize

In case none of the above types are suitable the OtherSize size type can be used. It contains the size name and the actual size.

UkWomenSize

Women’s size according to the UK system.

Additional properties

A product and/or a variant can contain additional properties. It is not required to add additional properties. The additional properties is a dynamic map and can be used for e.g. product or variant specific properties. In the future these properties can be displayed as part of the product information or even be used to create new search filters.

Price list resource

A price list specifies prices for one or more products and/or variants. Currently the prices can defer per country or several countries. This is accomplished by what the FashionTrade platform called a selector.

Stock level resource

Stock specifies the quantity available for a product variant, specific in an order window and delivery window, optionally specific to a country or list of countries. This is accomplished by what the FashionTrade platform called a selector.

Stock is supplied in stock batches, which contain all stock updates for all variants of a single product, specific for that order window, delivery window and selector.

Overview

Usage

Product information

The integration API provides three methods to get, create or modify a product’s information. A sample CURL request to create a product looks like this:

curl -i -XPOST \
-H "Authorization: Bearer <token>" \
-H "Accept:application/vnd.fashiontrade.product+json; version=2" \
-H "Content-Type:application/vnd.fashiontrade.product+json; version=2" \
--data '
{
  "id": "brand-id-1",
  "active": true,
  "product_type": "CLOTHING",
  "tags": [
    {
      "type": "COLLECTION",
      "value": "NOS_SUMMER"
    },
    {
      "type": "FABRIC",
      "value": "corduroy"
    }
  ],
  "display_name": "Red dress",
  "description": "Description of a pink dress",
  "variants": [
    {
      "barcode": "111-111-1",
      "color_or_pattern_name": "Maraschino",
      "color_hex_codes": [
        "ff0000"
      ],
      "colors": [
        "RED"
      ],
      "pattern_image": {
        "url": "http://assets.yourdomain.com/static/assets/3-1.jpg",
        "orientation": "FRONT",
        "composition": "ON_MODEL",
        "production_setting": "STUDIO_PHOTOGRAPHY"
      },
      "images": [
        {
          "url": "http://assets.yourdomain.com/static/assets/3-1.jpg",
          "orientation": "FRONT",
          "composition": "ON_MODEL",
          "production_setting": "STUDIO_PHOTOGRAPHY"
        }
      ],
      "additional_properties": {},
      "size": {
        "size": "M",
        "type": "CategoricalSize"
      }
    },
    {
      "barcode": "111-111-2",
      "color_or_pattern_name": "Maraschino",
      "color_hex_codes": [
        "ff0000"
      ],
      "colors": [
        "RED"
      ],
      "pattern_image": {
        "url": "http://assets.yourdomain.com/static/assets/3-1.jpg",
        "orientation": "FRONT",
        "composition": "ON_MODEL",
        "production_setting": "STUDIO_PHOTOGRAPHY"
      },
      "images": [
        {
          "url": "http://assets.yourdomain.com/static/assets/3-1.jpg",
          "orientation": "FRONT",
          "composition": "ON_MODEL",
          "production_setting": "STUDIO_PHOTOGRAPHY"
        }
      ],
      "additional_properties": {},
      "size": {
        "size": "L",
        "type": "CategoricalSize"
      }
    }
  ],
  "additional_properties": {}
}' api.fashiontrade.com/pim/products

If the request is successful, it should return a payload that is identical as the request payload.

Colors

There are two different fields used for variant colors inside product information. "colors" and "color_or_pattern_name". "colors" field should contain a combination of colors from a predefined set. This set is as follows:

BLACK, BLUE, RED, GREEN, PINK, WHITE, BEIGE, PURPLE, GREY, ORANGE, YELLOW, BROWN, GOLD, SILVER, METALLIC, OFF_WHITE, TURQUOISE

"color_or_pattern_name" can have any value. This field can contain a custom color or pattern name that is not among the list of colors above.

A shirt variant with red and white stripes can have color information like:

...
            "color_or_pattern_name":"stripes",
            "colors":[
               "RED", "WHITE"
            ],
...

or a dress variant with a custom color "Maroon" can be:

...
            "color_or_pattern_name":"maroon",
            "colors":[
               "RED"
            ],
...

Sizes

There are many types of sizes you can specify. "CategoricalSize", "ChildrenSize", "ChildrenAgeSize", "EuMenSize", "EuShoeSize", "EuWomenSize", "JeansSize", "OneSize", "OtherSize" and "UkWomenSize".

CategoricalSize

A certain size category maps to multiple possible values like below:

EXTRA EXTRA SMALL: "xxs", "extra_extra_small", "extra extra small"
EXTRA SMALL: "xs", "extra_small", "extra small", "x-small"
EXTRA_SMALL_TO_SMALL: "extra_small-small", "xs-s", "x_small-small"
SMALL: "s", "small"
SMALL_TO_MEDIUM: "small-medium", "s-m"
MEDIUM: "m", "medium"
MEDIUM_TO_LARGE: "medium-large", "m-l"
LARGE: "l", "large"
LARGE_TO_EXTRA_LARGE: "large-extra_large", "l-xl"
EXTRA LARGE: "xl", "extra_large", "extra large", "x-large"
EXTRA_LARGE_TO_EXTRA_EXTRA_LARGE: "extra_large-extra_extra_large", "xl-xxl", "xl-2xl"
EXTRA EXTRA LARGE: "xxl", "2xl", "extra_extra_large", "extra extra large"
EXTRA_EXTRA_LARGE_TO_THREE_EXTRA_LARGE: "extra_extra_large-3xl", "xxl-3xl", "2xl-3xl"
THREE EXTRA LARGE: "xxxl", "3xl", "extra_extra_extra_large", "extra extra extra large"
FOUR EXTRA LARGE: "4xl"
FIVE EXTRA LARGE: "5xl"

If you specify a size with either "s" or "small" for instance, it would map to the size SMALL in both cases.

...
         "size":{
            "type":"CategoricalSize",
            "size":"s"
         },
...

or

...
         "size":{
            "type":"CategoricalSize",
            "size":"small"
         },
...
ChildrenSize

A children size needs to follow one of two patterns and can be expressed as either:

...
         "size":{
            "type":"ChildrenSize",
            "size":"122"
         },
...

or

...
         "size":{
            "type":"ChildrenSize",
            "size":"122-128"
         },
...
ChildrenAgeSize

A children age size needs to follow one of two patterns and can be expressed as either:

...
         "size":{
            "type":"ChildrenAgeSize",
            "size":"6M"
         },
...

or

...
         "size":{
            "type":"ChildrenAgeSize",
            "size":"2Y-4Y"
         },
...
EuMenSize

This type should be used for men’s sizes in EU standard.

...
         "size":{
            "type":"EuMenSize",
            "size":"50"
         },
...
EuShoeSize

The shoe size must be according to EU shoe size system:

...
         "size":{
            "type":"EuShoeSize",
            "size":"44"
         },
...
EuWomenSize

Similar to EuMenSize, this type should be used for women’s sizes in EU standard.

...
         "size":{
            "type":"EuWomenSize",
            "size":"32"
         },
...
JeansSize

Jeans size consists of a waist and a leg length size. It needs to follow one of two patterns. Jeans size "W36L36" can be expressed as either:

...
         "size":{
            "type":"JeansSize",
            "size":"W36L36"
         },
...

or

...
         "size":{
            "type":"JeansSize",
            "size":"36x36"
         },
...

It is also possible to pass just a waist size (e.g., "W36" or just "36"). In this case the size will be one dimensional:

...
         "size":{
            "type":"JeansSize",
            "size":"W36"
         },
...
OneSize

If you have a style or product that has no size, you can use the "OneSize" type.

...
         "size":{
            "type":"OneSize"
         },
...
OtherSize

If you have a size type that can’t be mapped to any of the other types, you can use the "OtherSize" type.

...
         "size":{
            "type":"OtherSize",
            "size_name":"Bed size",
            "size":"toddler"
         },
...
UkWomenSize

Similar to EuMenSize, this type should be used for women’s sizes in UK standard.

...
         "size":{
            "type":"UkWomenSize",
            "size":"22"
         },
...

Price list

A price list will contain prices with products or product variants as price targets. It will also contain a list of regions the price list will be applicable in called a "Price list selector". A request to create a price list may look like this:

curl -i -XPOST \
-H "Authorization: Bearer <token>" \
-H "Accept:application/vnd.fashiontrade.price_list+json; version=1" \
-H "Content-Type:application/vnd.fashiontrade.price_list+json; version=1" \
--data '
{
  "id": "brand-pricelist-id-1",
  "selector": {
    "countries": [
      "NL",
      "BE"
    ]
  },
  "prices": [
    {
      "selector": {
        "product_id": "product-id-1"
      },
      "recommended_retail_price": 100,
      "wholesale_price": 90
    },
    {
      "selector": {
        "product_id": "product-id-1",
        "variant_barcode": "111-111-2"
      },
      "recommended_retail_price": 110,
      "wholesale_price": 100,
      "wholesale_discounted_price": 80
    }
  ],
  "currency": "EUR",
  "validity_window": {
    "start_date": "1989-02-17T00:00:00Z",
    "type": "OpenEndedDateRange"
  }
}' api.fashiontrade.com/pim/price-lists

If the request is successful, it should return a payload that is identical as the request payload.

Price target selector

A price target selector will associate a price with a product or a product variant. If the association is between a product and a price, it will also be valid for the variants of that product, unless there is an explicit price association with a certain variant.

In the sample request provided, the "prices" attribute contains two "PriceTargetSelector" objects:

> "prices": [
>   {
>     "selector":{
>       "product_id": "brand-product-id-1"
>     },
>     "recommended_retail_price": 100,
>     "wholesale_price": 90
>   },
>   {
>     "selector":{
>       "product_id": "brand-product-id-1",
>       "variant_barcode": "111-111-2"
>     },
>     "recommended_retail_price": 110,
>     "wholesale_price": 100
>   }
> ],

The first object includes only a "product_id" in its "selector" attribute. The second object refers to the same product id, but it also includes a "variant_barcode". This combination of prices means that the variant of this product with the barcode "111-111-2" should have the price in the second object, whereas all the other variants of the product should have the pricing of the first object.

Price list selector

A price list selector will contain a list of countries. The price objects inside the price list will be only applicable for the countries listed in this object.

> "selector": {
>   "countries": ["NL"]
> },

A price object needs to be unique for every country/list of countries, product and variant combination.

Stock & stock batches (version 1)

A stock batch will contain all stock for all varians of a specific product for a specific order and delivery window and a specific selector. A request to create or replace all stock batches of a product may look like this:

curl -i -XPUT \
-H "Authorization: Bearer <token>" \
-H "Accept:application/vnd.fashiontrade.product_stock+json; version=1" \
-H "Content-Type:application/vnd.fashiontrade.product_stock+json; version=1" \
--data '
{
  "nl-spring": {
    "display_name": "Spring 2017 NL",
    "selector": {
      "countries": [
        "NL",
        "BE"
      ]
    },
    "order_window": {
      "type": "OpenEndedDateRange",
      "start_date": "2016-12-28T00:00:00Z"
    },
    "delivery_window": {
      "type": "OpenEndedDateRange",
      "start_date": "2017-01-28T00:00:00Z"
    },
    "variants": {
      "variant-barcode-1": {
        "type": "ExactQuantity",
        "value": 42
      },
      "variant-barcode-2": {
        "type": "ExactQuantity",
        "value": 43
      }
    }
  }
}' api.fashiontrade.com/pim/product-stock/product-id-1

If the request is successful, it should return a payload that is identical as the request payload.

Updating or creating a single stock batch (version 1)

Instead of creating or replacing all stock batches, you can also create/update a single stock batch. A request may look like this:

curl -i -XPATCH \
-H "Authorization: Bearer <token>" \
-H "Accept:application/vnd.fashiontrade.product_stock+json; version=1" \
-H "Content-Type:application/vnd.fashiontrade.product_stock+json; version=1" \
--data '
{
  "display_name": "Summer 2017 NL",
  "selector": {
    "countries": [
      "NL"
    ]
  },
  "order_window": {
    "type": "OpenEndedDateRange",
    "start_date": "2017-03-28T00:00:00Z"
  },
  "delivery_window": {
    "type": "OpenEndedDateRange",
    "start_date": "2017-04-28T00:00:00Z"
  },
  "variants": {
    "variant-barcode-1": {
      "type": "ExactQuantity",
      "value": 42
    }
  }
}' api.fashiontrade.com/pim/product-stock/product-id-1/nl-summer

If the request is successful, it will respond with a payload like below:

{
  "nl-spring": {
    "display_name": "Spring 2017 NL",
    "selector": {
      "countries": [
        "NL"
      ]
    },
    "order_window": {
      "start_date": "2016-12-28T00:00:00Z",
      "type": "OpenEndedDateRange"
    },
    "delivery_window": {
      "start_date": "2017-01-28T00:00:00Z",
      "type": "OpenEndedDateRange"
    },
    "variants": {
      "variant-barcode-1": {
        "value": 42,
        "type": "ExactQuantity"
      },
      "variant-barcode-2": {
        "value": 43,
        "type": "ExactQuantity"
      }
    }
  },
  "nl-summer": {
    "display_name": "Summer 2017 NL",
    "selector": {
      "countries": [
        "NL"
      ]
    },
    "order_window": {
      "start_date": "2017-03-28T00:00:00Z",
      "type": "OpenEndedDateRange"
    },
    "delivery_window": {
      "start_date": "2017-04-28T00:00:00Z",
      "type": "OpenEndedDateRange"
    },
    "variants": {
      "variant-barcode-1": {
        "value": 42,
        "type": "ExactQuantity"
      }
    }
  }
}

Stock & stock batches (version 2 and up)

A stock batch will contain all stock for all varians of a specific product for a specific order and delivery window and a specific selector. A request to create or replace all stock batches of a product may look like this:

curl -i -XPUT \
-H "Authorization: Bearer <token>" \
-H "Accept:application/vnd.fashiontrade.product_stock+json; version=2" \
-H "Content-Type:application/vnd.fashiontrade.product_stock+json; version=2" \
--data '
[
  {
    "id": "nl-spring",
    "display_name": "Spring 2017 NL",
    "selector": {
      "countries": [
        "NL",
        "BE"
      ]
    },
    "order_window": {
      "type": "OpenEndedDateRange",
      "start_date": "2016-12-28T00:00:00Z"
    },
    "delivery_window": {
      "type": "OpenEndedDateRange",
      "start_date": "2017-01-28T00:00:00Z"
    },
    "variants": [
      {
        "barcode": "variant-barcode-1",
        "type": "ExactQuantity",
        "value": 42
      },
      {
        "barcode": "variant-barcode-2",
        "type": "ExactQuantity",
        "value": 43
      }
    ]
  }
]' api.fashiontrade.com/pim/product-stock/product-id-1

If the request is successful, it should return the new stock batches for this product.

Updating or creating a single stock batch (version 2 and up)

Instead of creating or replacing all stock batches, you can also create/update a single stock batch. A request may look like this:

curl -i -XPATCH \
-H "Authorization: Bearer <token>" \
-H "Accept:application/vnd.fashiontrade.product_stock+json; version=2" \
-H "Content-Type:application/vnd.fashiontrade.product_stock+json; version=2" \
--data '
{
  "id": "nl-summer",
  "display_name": "Summer 2017 NL",
  "selector": {
    "countries": [
      "NL"
    ]
  },
  "order_window": {
    "type": "OpenEndedDateRange",
    "start_date": "2017-03-28T00:00:00Z"
  },
  "delivery_window": {
    "type": "OpenEndedDateRange",
    "start_date": "2017-04-28T00:00:00Z"
  },
  "variants": [
    {
      "barcode": "variant-barcode-1",
      "type": "ExactQuantity",
      "value": 42
    }
  ]
}' api.fashiontrade.com/pim/product-stock/product-id-1/nl-summer

If the request is successful, it will respond with a payload like below:

{
  "items": [
    {
      "id": "nl-spring",
      "display_name": "Spring 2017 NL",
      "selector": {
        "countries": [
          "NL"
        ]
      },
      "order_window": {
        "start_date": "2016-12-28T00:00:00Z",
        "type": "OpenEndedDateRange"
      },
      "delivery_window": {
        "start_date": "2017-01-28T00:00:00Z",
        "type": "OpenEndedDateRange"
      },
      "variants": [
        {
          "barcode": "variant-barcode-1",
          "value": 42,
          "type": "ExactQuantity"
        },
        {
          "barcode": "variant-barcode-2",
          "value": 43,
          "type": "ExactQuantity"
        }
      ]
    },
    {
      "id": "nl-summer",
      "display_name": "Summer 2017 NL",
      "selector": {
        "countries": [
          "NL"
        ]
      },
      "order_window": {
        "start_date": "2017-03-28T00:00:00Z",
        "type": "OpenEndedDateRange"
      },
      "delivery_window": {
        "start_date": "2017-04-28T00:00:00Z",
        "type": "OpenEndedDateRange"
      },
      "variants": [
        {
          "barcode": "variant-barcode-1",
          "value": 42,
          "type": "ExactQuantity"
        }
      ]

    }
  ]
}

Versioning

The resources within the PIM integration service are versioned independently. The resource should be specified as part of the Media Type wihin HTTP requests. This gets communicated via the Accept and Content-Type headers. The version is a parameter added to the Media Type. An example of a versioned Media Type is:

application/vnd.fashiontrade.product+json; version=1

The resources within PIM integraton service are:

  • vnd.fashiontrade.product

  • vnd.fashiontrade.product_stock

  • vnd.fashiontrade.price_list

  • vnd.fashiontrade.prepack

  • vnd.fashiontrade.prepack_stock

  • vnd.fashiontrade.prepack_price_list

When creating or updating a resource, this information should be supplied within the Content-Type header. When retrieving a resource, the Accept header should be used to specify the desired resource and version.

If no resources is specified in the Media Type, it will be deduced based on the URL path. (E.g. A request to /products/ will assume the vnd.fashiontrade.product resource).

If no version is specified, then a default version of 'latest' will be used.

If an unknown resource or version is specified, a response of 406 NOT ACCEPTABLE will be returned.

All versions are whole numbers and will be incremented with each change. The current supported versions are:

  • product: 1, 2

  • product_stock: 1, 2

  • price_list: 1

  • prepack: 1

  • prepack_stock: 1

  • prepack_price_list: 1

Migration

Resource migration is supported (forward only). A resource can be retrieved for any version between the version at which it was created, and the latest version. For example, if a price_list is stored as version 2, and we have since moved on to version 4. It is possible to request that price_list as version 2, 3, or 4.

Backwards migration is not supported. If a version is requested which is older than that at which the resource was created, a response of 400 BAD Request will be returned.

Pagination

The following endpoints have a paginated response for the GET all requests:

  • /prepack-price-lists

  • /prepacks

  • /price-lists

  • /products

You can specify a limit and next parameters to request a specific results page of a specific page size.

If next is not passed in request parameters, then the response will contain the first page results. The value for this parameter is taken as is from the previous request. No URL encoding is required.

If limit is not passed in parameters, then it will be set to default page size value which is 25. Note: at the moment due to backwards API compatibility the default page size is unlimited. This will be changed in the future.

GET /products?limit=25
{
  "items": [ ... ],
  "next": "QHd7hNQ"
}

GET /products?limit=25&next=QHd7hNQ
{
  "items": [ ... ],
  "next": null
}

For the endpoints without pagination:

GET /product-stock/12345
{
  "items": []
}

You must check whether next is present in response and use it if it is present. If it is null then there is no next page. If you send the next=null (not empty) you’ll get error 400 Bad Request.

Note: There is a total property in response always set to 0. You should ignore this property.

This service provides endpoints for brands to manage their product information within Fashiontrade platform.

URI scheme

Host : api.fashiontrade.com
BasePath : /pim
Schemes : HTTPS

Tags

  • fashiontradeid

  • prepack-price-lists

  • prepack-stock

  • prepacks

  • price-lists

  • product-stock

  • products

Definitions

CategoricalSize

A categorical size. The size string for this type needs to be one of the following:

  • extra_extra_small

  • xxs

  • extra extra small

  • xs

  • extra small

  • extra_small

  • x-small

  • extra_small-small

  • xs-s

  • x_small-small

  • s

  • small

  • small-medium

  • s-m

  • medium

  • med

  • m

  • medium-large

  • m-l

  • l

  • large

  • large-extra_large

  • l-xl

  • extra_large

  • xl

  • extra large

  • extra_large-extra_extra_large

  • xl-xxl

  • xl-2xl

  • extra_extra_large

  • extra extra large

  • 2xl

  • xxl

  • extra_extra_large-3xl

  • xxl-3xl

  • 2xl-3xl

  • extra_extra_extra_large

  • extra extra extra large

  • xxxl

  • 3xl

  • 4xl

  • 5xl

The readonly field category is only included in responses and returns the server’s interpretation of the provided size after parsing.

To use this size type, use CategoricalSize as the discriminator value.

Polymorphism : Inheritance
Discriminator : type

Name Description Schema

size
required

The string representation of the size. The value depends on the type of the size.

string

type
required

The type discriminator for the size.

string

ChildrenAgeSize

Age based sizes for children. Specified in months ('M') or years ('Y'). Either a single value or a range is allowed. The upper bounds of which are 24 and 18 respectively.

An example of valid single value is 3Y. Example of a valid ranges are 6M-9M and 2Y / 3Y.

The value is validated by the server using the following regular expression: ^\s*(\d{1,2})([MY])(?:\s*[-/]?\s*(\d{1,2})([MY]))?\s*$.

To use this size type, use ChildrenAgeSize as the discriminator value.

Polymorphism : Inheritance
Discriminator : type

Name Description Schema

size
required

The string representation of the size. The value depends on the type of the size.

string

type
required

The type discriminator for the size.

string

ChildrenSize

A European children size which is measured by the height of the child in centimeters.Either a single value or a range is allowed. The lower bound of this size type is 50 and the upper bound is 188.

An example of valid single value is 128. Example of a valid ranges are 128-132 and 128 / 132.

The value is validated by the server using the following regular expression: ^\s*(\d{1,3})(?:\s*[-/]?\s*(\d{1,3}))?\s*$.

To use this size type, use ChildrenSize as the discriminator value.

Polymorphism : Inheritance
Discriminator : type

Name Description Schema

size
required

The string representation of the size. The value depends on the type of the size.

string

type
required

The type discriminator for the size.

string

ClosedDateRange

A date range with an ending date.

Polymorphism : Inheritance
Discriminator : type

Name Description Schema

end_date
required

The ISO 8601 representation of ending point of the date range, excepted values can either be: Zulu time, e.g. 1989-02-17T00:00:00Z or Time zone offset, e.g. 1989-02-17T00:00:00+01:00.

string

start_date
required

The ISO 8601 representation of starting point of the date range, excepted values can either be: Zulu time, e.g. 1989-02-17T00:00:00Z or Time zone offset, e.g. 1989-02-17T00:00:00+01:00.

string

type
required

The type discriminator for the quantity.

string

DateRange

This type is used to create date range objects. type field should either be OpenEndedDateRange or ClosedDateRange. Based on this field, the API wil lcrate an object of a specific derived type and return it in its response.

Name Description Schema

type
required

The type discriminator for the quantity.

string

Error

Name Schema

message
optional

string

EuMenSize

EU men size for clothing. Valid values are: 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66

Polymorphism : Inheritance
Discriminator : type

Name Description Schema

size
required

The string representation of the size. The value depends on the type of the size.

string

type
required

The type discriminator for the size.

string

EuShirtSize

A one or two dimensional shirt size, consisting of a collar size ranging between 34 and 54 and an optional sleeve size of either 5 or 7. The allowed format is '34' or '34-5', validated using this regular expression: ^([0-9]{2})\s?(?:-\s?([0-9]))?$.

Polymorphism : Inheritance
Discriminator : type

Name Description Schema

size
required

The string representation of the size. The value depends on the type of the size.

string

sleeve_length
required
read-only

integer (int32)

type
required

The type discriminator for the size.

string

EuShoeSize

Shoes sizes based on the EU system. Valid input is a number between 16.0-60.0, increments are in halves (ex. 16, 16.5, 17, 17.5, etc…), the input may include a single letter for width but current implementation ignores it. Ranges are also supported: for example, 43-44. The following regex is used to extract the shoe size from the input: ^[A-Z]?\s*(\d{2}(?:\.\d)?)\s*[A-Z]?(?:-[A-Z]?\s*(\d{2}(?:\.\d)?)\s*[A-Z]?)?$

To use this size type, use EuShoeSize as the discriminator value.

Polymorphism : Inheritance
Discriminator : type

Name Description Schema

lower_bound
required
read-only

The lower bound of a shoe size range. According to the EU system. Only used for responses, input should be done using the size field

number (float)

size
required

The string representation of the size. The value depends on the type of the size.

string

type
required

The type discriminator for the size.

string

upper_bound
required
read-only

The upper bound of a shoe size range. According to the EU system. Only used for responses, input should be done using the size field

number (float)

EuWomenSize

EU women size for clothing. Valid values are: 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60

Polymorphism : Inheritance
Discriminator : type

Name Description Schema

size
required

The string representation of the size. The value depends on the type of the size.

string

type
required

The type discriminator for the size.

string

ExactQuantity

This quantity should be used to give an exact number of stock.

Polymorphism : Inheritance
Discriminator : type

Name Description Schema

type
required

The type discriminator for the quantity.

string

value
required

The exact amount of stock.

integer (int64)

ExactVariantQuantity

This quantity should be used to give an exact number of stock.

Polymorphism : Inheritance
Discriminator : type

Name Description Schema

barcode
required

The barcode for which the quantity applies.

string

type
required

The type discriminator for the quantity.

string

value
required

The exact amount of stock.

integer (int64)

FashionTradeIdPrepackWrapper

A wrapper which includes a prepack and the ID used internally by FashionTrade for that prepack.

Name Description Schema

fashion_trade_id
optional
read-only

The prepack ID used internally by FashionTrade

string

FashionTradeIdProductWrapper

A wrapper which includes a product and the ID used internally by FashionTrade for that product.

Name Description Schema

fashion_trade_id
optional
read-only

The product ID used internally by FashionTrade

string

product
optional
read-only

The product as saved by the PIM service

InfiniteQuantity

This quantity should be used for infinite stock.

Polymorphism : Inheritance
Discriminator : type

Name Description Schema

type
required

The type discriminator for the quantity.

string

InfiniteVariantQuantity

This quantity should be used for infinite stock.

Polymorphism : Inheritance
Discriminator : type

Name Description Schema

barcode
required

The barcode for which the quantity applies.

string

type
required

The type discriminator for the quantity.

string

JeansSize

A one or two dimensional jeans size, consisting of waist and an optional length. There are three forms the size string take for this type. Jeans with a waist size of 32 and a leg length of 34 can be encoded as either "W32L34" or "32x34".It is also possible to pass just a waist size as "W32" or just "32", in this case the size will be one dimensional.

The input format is verified using this regular expression: ^\s*[Ww]?(\d{2})\s*[Xx\-]?\s*(?:[Ll]?(\d{2})\s*)?$. No other validation is performed on the input (i.e. no bounds are enforced on the waist and length).

To use this size type, use JeansSize as the discriminator value.

Polymorphism : Inheritance
Discriminator : type

Name Description Schema

size
required

The string representation of the size. The value depends on the type of the size.

string

type
required

The type discriminator for the size.

string

OneSize

To indicate that a style/product has no size or only one size. To use this size type, use OneSize as the discriminator value.

Polymorphism : Inheritance
Discriminator : type

Name Description Schema

size
required

The string representation of the size. The value depends on the type of the size.

string

type
required

The type discriminator for the size.

string

OpenEndedDateRange

A date range with no ending date.

Polymorphism : Inheritance
Discriminator : type

Name Description Schema

start_date
required

The ISO 8601 representation of starting point of the date range, excepted values can either be: Zulu time, e.g. 1989-02-17T00:00:00Z or Time zone offset, e.g. 1989-02-17T00:00:00+01:00.

string

type
required

The type discriminator for the quantity.

string

OtherSize

A size indication that’s not covered by any of the built in size types. The size value can be a arbitrary string, which is not validated in any way. Use this type with care, as we might not always be able to properly use or represent these sizes in search and filtering.

To use this size type, use OtherSize as the discriminator value and provide a size_name value.

Polymorphism : Inheritance
Discriminator : type

Name Description Schema

size
required

The string representation of the size. The value depends on the type of the size.

string

size_name
required

The name commonly used for this type of size. E.g. kimono size. All values are allowed; the size name is not validated against any lookup.

string

type
required

The type discriminator for the size.

string

Prepack

A prepack with its products and variants.

Name Description Schema

barcode
required

The barcode or EAN of this prepack.

string

display_name
required

Description of the prepack.

string

variants
required

The size and color/pattern combinations of this prepack.

< PrepackVariant > array

PrepackArrayWrapper

Name Schema

items
required

< Prepack > array

next
optional

string

total
required

integer (int32)

PrepackPrice

The recommended retail price and wholesale price for a prepack. All prices on the FashionTrade platform are given in cents in the applicable currency. Currencies are not stored as part of a price, but are set at the price list.

Name Description Schema

recommended_retail_price
required

Recommended retail price in cents.

integer (int64)

selector
required

Specifies which prepack this price applies to.

wholesale_discounted_price
optional

Wholesale discounted price in cents.
Minimum value : 1

integer (int64)

wholesale_price
required

Wholesale price in cents.
Minimum value : 1

integer (int64)

PrepackPriceList

A price list contains the prices for prepacks for one or more countries.

Name Description Schema

currency
required

ISO 4217 3-character currency code (see here for a list of valid codes).

string

id
required

The brand internal ID for this price list.

string

prices
required

The product and variant prepack prices on this list.

< PrepackPrice > array

selector
required

Specifies which retailers the prices on this list apply to. Currently, only selection by country is supported.

validity_window
optional

The window in which this price list is valid.

PrepackPriceListArrayWrapper

Name Schema

items
required

< PrepackPriceList > array

next
optional

string

total
required

integer (int32)

PrepackPriceTargetSelector

A selector to assign a price to a prepack.

Name Description Schema

barcode
required

The barcode of the prepack that this price applies to.

string

PrepackStock

Stock information for a single prepack with a specific selector and order and delivery window.

Name Description Schema

delivery_window
required

The window in which this stock batch can be delivered.

display_name
optional

Optional display name for the stock batch.

string

id
required

The brand internal ID for this stock batch.

string

order_window
required

The window in which this stock batch can be ordered.

quantity
required

The stock quantity of this prepack.

selector
required

The selector for which this stock batch applies.

PrepackStockBatchArrayWrapper

Name Schema

items
required

< PrepackStock > array

PrepackVariant

A prepack variant is a specific combination of color/pattern and size of a product in a prepack.

Name Description Schema

barcode
required

The barcode or EAN of this variant.

string

product_id
required

The brand internal ID for this product.

string

quantity
required

The quantity of this variant.

integer (int32)

Price

The recommended retail price and wholesale price for a product or a specific variant. All prices on the FashionTrade platform are given in cents in the applicable currency. Currencies are not stored as part of a price, but are set at the price list.

Name Description Schema

recommended_retail_price
required

Recommended retail price in cents.
Minimum value : 1

integer (int64)

selector
required

Specifies which product and optionally specific variant this price applies to.

wholesale_discounted_price
optional

Wholesale discounted price in cents.
Minimum value : 0

integer (int64)

wholesale_price
required

Wholesale price in cents.
Minimum value : 0

integer (int64)

PriceList

A price list contains the prices for products and/or variants for one or more countries.

Name Description Schema

currency
required

ISO 4217 3-character currency code (see here for a list of valid codes).

string

id
required

The brand internal ID for this price list.

string

prices
required

The product and variant prices on this list.

< Price > array

selector
required

Specifies which retailers the prices on this list apply to. Currently, only selection by country is supported.

validity_window
optional

The window in which this price list is valid.

PriceListArrayWrapper

Name Schema

items
required

< PriceList > array

next
optional

string

total
required

integer (int32)

PriceListSelector

A selector to assign price lists to specific retailers.

Name Description Schema

countries
optional

The countries for which the price list applies. This field is optional. If it is not supplied, then all countries are selected; if an empty list is supplied, then _no countries_ are selected. Countries are represented as ISO-3166-1 Alpha-2 codes (https://en.wikipedia.org/wiki/ISO_3166-1#Officially_assigned_code_elements)

< string > array

retailer_groups
optional

The retailer groups (also known as price groups) for which the price list applies. This field is optional.When this field is supplied scope of this price list will be limited to retailers within these groups.

< string > array

PriceTargetSelector

A selector to assign a price to a product or to a specific variant of a product.

Name Description Schema

product_id
required

The ID of the product that this price applies to.

string

variant_barcode
optional

The variant barcode of a specific variant that this price applies to. If not present, the price will apply to all variants of the product.

string

Product

A product with its variants.

Name Description Schema

active
optional

The active flag allows you do disable a product, defaults to true if not specified.

boolean

additional_properties
optional

Additional properties for this product. More information about additional properties can be found here.

< string, string > map

brand_line
optional

An optional brand line.

string

description
optional

Description of the product.

string

display_name
required

Name of the product.

string

id
required

The brand internal ID for this product.

string

product_type
optional

Deprecated: use the CATEGORY tag instead.

enum (CLOTHING, FOOTWEAR, FURNITURE, TOYS)

tags
required

Tags from . Supported tags can be found in the list of tags.

< Tag > array

variants
required

The size and color/pattern combinations of this product.

< Variant > array

ProductArrayWrapper

Name Schema

items
required

< Product > array

next
optional

string

total
required

integer (int32)

ProductImage

Name Schema

composition
optional

enum (ON_MODEL, FREE_STANDING, LIFESTYLE, PRODUCT_DETAIL, GHOST_MANNEQUIN, ON_HANGER, FLAT, FABRIC_CLOSEUP)

orientation
optional

enum (FRONT, SIDE, LEFT, RIGHT, BACK, TOP, BOTTOM)

production_setting
optional

enum (STUDIO_PHOTOGRAPHY, CASUAL_PHOTOGRAPHY, SKETCH, RENDER)

url
required

string (uri)

Quantity

This type is used to create Quantity objects. type field should be either ExactQuantity or InfiniteQuantity. Based on this field, the API will create an object of a specific derived type and return it in its response.

Name Description Schema

type
required

The type discriminator for the quantity.

string

Size

This is the base type for size information. The type field’s value must be one of JeansSize, CategoricalSize, ChildrenSize, ChildrenAgeSize, EuShoeSize, EuMenSize, EuWomenSize, OneSize, OtherSize or UkWomenSize. Based on the type of the size, additional fields are required and the size string is interpreted differently e.g. a jeans size might be W34L36 whereas a children size might be 128.

Name Description Schema

size
required

The string representation of the size. The value depends on the type of the size.

string

type
required

The type discriminator for the size.

string

StockBatch

A collection of stock information for variants of one product with a specific selector and order and delivery window.

Name Description Schema

delivery_window
required

The window in which this stock batch can be delivered.

display_name
optional

Optional display name for the stock batch.

string

id
required

The brand internal ID for this stock batch.

string

order_window
required

The window in which this stock batch can be ordered.

selector
required

The selector for which this stock batch applies.

variants
required

The list of product variants with their quantities for this stock batch.

< VariantQuantity > array

StockBatchArrayWrapper

Name Schema

items
required

< StockBatch > array

StockBatchV1

A collection of stock information for variants of one product with a specific selector and order and delivery window.

Name Description Schema

delivery_window
required

The window in which this stock batch can be delivered.

display_name
optional

Optional display name for the stock batch.

string

order_window
required

The window in which this stock batch can be ordered.

selector
required

The selector for which this stock batch applies.

variants
required

The map of product variants with their quantities for this stock batch.

< string, Quantity > map

StockSelector

A selector to assign stock to specific retailers. Currently, only selection by country is supported.

Name Description Schema

countries
optional

The countries for which the stock applies. This field is optional. If it is not supplied, then all countries are selected; if an empty list is supplied, then _no countries_ are selected. Countries are represented as ISO-3166-1 Alpha-2 codes (https://en.wikipedia.org/wiki/ISO_3166-1#Officially_assigned_code_elements)

< string > array

Tag

A tag is a way to categorize products.

Name Description Schema

type
required

The tag type

string

value
required

The tag value

string

UkWomenSize

UK women size for clothing. Valid values are: 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30

Polymorphism : Inheritance
Discriminator : type

Name Description Schema

size
required

The string representation of the size. The value depends on the type of the size.

string

type
required

The type discriminator for the size.

string

Variant

A variant is a specific combination of color/pattern and size of a product.

Name Description Schema

additional_properties
optional

Specific variant properties.

< string, string > map

barcode
required

The barcode or EAN of this variant.

string

color_hex_codes
optional

The hex code colors for the item.

< string > array

color_or_pattern_name
required

The color or pattern name. Color and the size makes it a unique variant.

string

colors
required

The colors the variant contains.

< enum (BLACK, BLUE, RED, GREEN, PINK, WHITE, BEIGE, PURPLE, GREY, ORANGE, YELLOW, BROWN, GOLD, SILVER, METALLIC, OFF_WHITE, TURQUOISE, MULTI) > array

images
optional

A list of images of the variant.

< ProductImage > array

pattern_image
optional

The image of the pattern.

size
required

The size of this variant. The size together with the color/pattern makes it a unique variant. See also this paragraph about sizes

themes
optional

A list of themes of the variant.

< string > array

VariantQuantity

This type is used to create Quantity objects. type field should be either ExactQuantity or InfiniteQuantity. Based on this field, the API will create an object of a specific derived type and return it in its response.

Name Description Schema

barcode
required

The barcode for which the quantity applies.

string

type
required

The type discriminator for the quantity.

string

Resources

Fashiontradeid

Prepack-price-lists

Create a new prepack price list

POST /prepack-price-lists
Parameters
Type Name Schema

Query

dry_run
optional

boolean

Body

body
optional

Responses
HTTP Code Description Schema

200

successful operation

201

The prepack price list was created.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

409

The provided prepack price list information is not valid or a price list with the same ID already exists.

Consumes
  • application/vnd.fashiontrade.prepack_price_list+json

  • application/json

Produces
  • application/vnd.fashiontrade.prepack_price_list+json

  • application/json

Get all prepack price lists

GET /prepack-price-lists
Parameters
Type Name Schema

Query

limit
optional

integer (int32)

Query

next
optional

string

Responses
HTTP Code Description Schema

200

Success.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.prepack_price_list+json

  • application/json

Produces
  • application/vnd.fashiontrade.prepack_price_list+json

  • application/json

Delete all existing prepack price lists of a brand

DELETE /prepack-price-lists
Description

This endpoint requires you to provide today’s date as a query parameter to prevent accidental execution of this endpoint

Parameters
Type Name Description Schema

Query

current_date
required

Today’s date in YYYY-MM-DD format

string

Responses
HTTP Code Description Schema

204

The price lists were successfully deleted

No Content

400

The request doesn’t contain valid data

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

Consumes
  • application/vnd.fashiontrade.prepack_price_list+json

  • application/json

Produces
  • application/vnd.fashiontrade.prepack_price_list+json

  • application/json

Get a prepack price list by ID

GET /prepack-price-lists/{id}
Parameters
Type Name Schema

Path

id
required

string

Responses
HTTP Code Description Schema

200

Success.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

404

No prepack price list found for the requested ID.

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.prepack_price_list+json

  • application/json

Produces
  • application/vnd.fashiontrade.prepack_price_list+json

  • application/json

Update an existing or create a new prepack price list

PUT /prepack-price-lists/{id}
Parameters
Type Name Schema

Path

id
required

string

Query

dry_run
optional

boolean

Body

body
optional

Responses
HTTP Code Description Schema

200

The prepack price list was updated.

201

The prepack price list was created.

400

The ID field in the entity does not match the path parameter or the entity is not valid.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.prepack_price_list+json

  • application/json

Produces
  • application/vnd.fashiontrade.prepack_price_list+json

  • application/json

Delete an existing prepack price list

DELETE /prepack-price-lists/{id}
Parameters
Type Name Schema

Path

id
required

string

Responses
HTTP Code Description Schema

204

The prepack price list was successfully deleted.

No Content

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

404

No prepack price list found for the requested ID.

Consumes
  • application/vnd.fashiontrade.prepack_price_list+json

  • application/json

Produces
  • application/vnd.fashiontrade.prepack_price_list+json

  • application/json

Prepack-stock

Delete all existing stock batches of a brand

DELETE /prepack-stock
Description

This endpoint requires you to provide today’s date as a query parameter to prevent accidental execution of this endpoint

Parameters
Type Name Description Schema

Query

current_date
required

Today’s date in YYYY-MM-DD format

string

Responses
HTTP Code Description Schema

204

The stock batches were successfully deleted

No Content

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

Consumes
  • application/vnd.fashiontrade.prepack_stock+json

  • application/json

Produces
  • application/vnd.fashiontrade.prepack_stock+json

  • application/json

Get all stock batches for a prepack, if any.

GET /prepack-stock/{prepackBarcode}
Parameters
Type Name Schema

Path

prepackBarcode
required

string

Responses
HTTP Code Description Schema

200

Success.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.prepack_stock+json

  • application/json

Produces
  • application/vnd.fashiontrade.prepack_stock+json

  • application/json

Create or replace all stock batches for a prepack.

PUT /prepack-stock/{prepackBarcode}
Parameters
Type Name Schema

Path

prepackBarcode
required

string

Query

dry_run
optional

boolean

Body

body
required

Responses
HTTP Code Description Schema

200

Success.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.prepack_stock+json

  • application/json

Produces
  • application/vnd.fashiontrade.prepack_stock+json

  • application/json

Delete one stock batch for a prepack.

DELETE /prepack-stock/{prepackBarcode}/{prepackStockBatchId}
Parameters
Type Name Schema

Path

prepackBarcode
required

string

Path

prepackStockBatchId
required

string

Responses
HTTP Code Description Schema

200

Success.

< string, PrepackStock > map

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

404

Request is not authorized for the authenticated user.

Consumes
  • application/vnd.fashiontrade.prepack_stock+json

  • application/json

Produces
  • application/vnd.fashiontrade.prepack_stock+json

  • application/json

Create or update one stock batch for a prepack.

PATCH /prepack-stock/{prepackBarcode}/{prepackStockBatchId}
Parameters
Type Name Schema

Path

prepackBarcode
required

string

Path

prepackStockBatchId
required

string

Query

dry_run
optional

boolean

Body

body
required

Responses
HTTP Code Description Schema

200

Success.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.prepack_stock+json

  • application/json

Produces
  • application/vnd.fashiontrade.prepack_stock+json

  • application/json

Prepacks

Create a new prepack

POST /prepacks
Parameters
Type Name Schema

Query

dry_run
optional

boolean

Body

body
optional

Responses
HTTP Code Description Schema

200

successful operation

201

The prepack was created.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

409

The provided prepack information is not valid or a prepack with the same barcode already exists.

Consumes
  • application/vnd.fashiontrade.prepack+json

  • application/json

Produces
  • application/vnd.fashiontrade.prepack+json

  • application/json

Get all prepacks

GET /prepacks
Parameters
Type Name Schema

Query

limit
optional

integer (int32)

Query

next
optional

string

Responses
HTTP Code Description Schema

200

Success.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.prepack+json

  • application/json

Produces
  • application/vnd.fashiontrade.prepack+json

  • application/json

Delete all existing prepacks of a brand

DELETE /prepacks
Description

This endpoint requires you to provide today’s date as a query parameter to prevent accidental execution of this endpoint

Parameters
Type Name Description Schema

Query

current_date
required

Today’s date in YYYY-MM-DD format

string

Responses
HTTP Code Description Schema

204

The prepacks were successfully deleted

No Content

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

Consumes
  • application/vnd.fashiontrade.prepack+json

  • application/json

Produces
  • application/vnd.fashiontrade.prepack+json

  • application/json

Get a prepack by barcode

GET /prepacks/{barcode}
Parameters
Type Name Schema

Path

barcode
required

string

Responses
HTTP Code Description Schema

200

Success.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

404

No prepack found for the requested barcode.

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.prepack+json

  • application/json

Produces
  • application/vnd.fashiontrade.prepack+json

  • application/json

Update an existing or create a new prepack

PUT /prepacks/{barcode}
Parameters
Type Name Schema

Path

barcode
required

string

Query

dry_run
optional

boolean

Body

body
optional

Responses
HTTP Code Description Schema

200

The prepack was created.

400

The barcode field in the entity does not match the path parameter or the entity is not valid.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.prepack+json

  • application/json

Produces
  • application/vnd.fashiontrade.prepack+json

  • application/json

Delete an existing prepack

DELETE /prepacks/{barcode}
Parameters
Type Name Schema

Path

barcode
required

string

Responses
HTTP Code Description Schema

204

The prepack was successfully deleted.

No Content

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

404

No prepack found for the requested barcode.

Consumes
  • application/vnd.fashiontrade.prepack+json

  • application/json

Produces
  • application/vnd.fashiontrade.prepack+json

  • application/json

Price-lists

Create a new price list

POST /price-lists
Parameters
Type Name Schema

Query

dry_run
optional

boolean

Body

body
optional

Responses
HTTP Code Description Schema

200

successful operation

201

The price list was created.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

409

The provided price list information is not valid or a price list with the same ID already exists.

Consumes
  • application/vnd.fashiontrade.price_list+json

  • application/json

Produces
  • application/vnd.fashiontrade.price_list+json

  • application/json

Get all price lists

GET /price-lists
Parameters
Type Name Schema

Query

limit
optional

integer (int32)

Query

next
optional

string

Responses
HTTP Code Description Schema

200

Success.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.price_list+json

  • application/json

Produces
  • application/vnd.fashiontrade.price_list+json

  • application/json

Delete all existing price lists of a brand

DELETE /price-lists
Description

This endpoint requires you to provide today’s date as a query parameter to prevent accidental execution of this endpoint

Parameters
Type Name Description Schema

Query

current_date
required

Today’s date in YYYY-MM-DD format

string

Responses
HTTP Code Description Schema

204

The price lists were successfully deleted

No Content

400

The request doesn’t contain valid data

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

Consumes
  • application/vnd.fashiontrade.price_list+json

  • application/json

Produces
  • application/vnd.fashiontrade.price_list+json

  • application/json

Get a price list by ID

GET /price-lists/{id}
Parameters
Type Name Schema

Path

id
required

string

Responses
HTTP Code Description Schema

200

Success.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

404

No price list found for the requested ID.

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.price_list+json

  • application/json

Produces
  • application/vnd.fashiontrade.price_list+json

  • application/json

Update an existing or create a new price list

PUT /price-lists/{id}
Parameters
Type Name Schema

Path

id
required

string

Query

dry_run
optional

boolean

Body

body
optional

Responses
HTTP Code Description Schema

200

The price list was updated.

201

The price list was created.

400

The ID field in the entity does not match the path parameter or the entity is not valid.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.price_list+json

  • application/json

Produces
  • application/vnd.fashiontrade.price_list+json

  • application/json

Delete an existing price list

DELETE /price-lists/{id}
Parameters
Type Name Schema

Path

id
required

string

Responses
HTTP Code Description Schema

204

The price list was successfully deleted.

No Content

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

404

No price list found for the requested ID.

Consumes
  • application/vnd.fashiontrade.price_list+json

  • application/json

Produces
  • application/vnd.fashiontrade.price_list+json

  • application/json

Product-stock

Delete all existing stock batches of a brand

DELETE /product-stock
Description

This endpoint requires you to provide today’s date as a query parameter to prevent accidental execution of this endpoint

Parameters
Type Name Description Schema

Query

current_date
required

Today’s date in YYYY-MM-DD format

string

Responses
HTTP Code Description Schema

204

The stock batches were successfully deleted

No Content

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

Consumes
  • application/vnd.fashiontrade.product_stock+json

  • application/json

Produces
  • application/vnd.fashiontrade.product_stock+json

  • application/json

Get all stock batches for a product, if any. (Stock API version 2 and up)

GET /product-stock/{productId}
Parameters
Type Name Schema

Path

productId
required

string

Responses
HTTP Code Description Schema

200

Success.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.product_stock+json

  • application/json

Produces
  • application/vnd.fashiontrade.product_stock+json

  • application/json

Create or replace all stock batches for a product. (Stock API version 2 and up)

PUT /product-stock/{productId}
Parameters
Type Name Schema

Path

productId
required

string

Query

dry_run
optional

boolean

Body

body
required

< StockBatch > array

Responses
HTTP Code Description Schema

200

Success.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.product_stock+json

  • application/json

Produces
  • application/vnd.fashiontrade.product_stock+json

  • application/json

Delete all stock batches for a product.

DELETE /product-stock/{productId}
Parameters
Type Name Schema

Path

productId
required

string

Responses
HTTP Code Description Schema

204

N/A

No Content

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

404

No stock batches found for product.

Consumes
  • application/vnd.fashiontrade.product_stock+json

  • application/json

Produces
  • application/vnd.fashiontrade.product_stock+json

  • application/json

Delete one stock batch for a product.

DELETE /product-stock/{productId}/{stockBatchId}
Parameters
Type Name Schema

Path

productId
required

string

Path

stockBatchId
required

string

Responses
HTTP Code Description Schema

200

Success.

< string, StockBatchV1 > map

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

404

No stock batch found.

Consumes
  • application/vnd.fashiontrade.product_stock+json

  • application/json

Produces
  • application/vnd.fashiontrade.product_stock+json

  • application/json

Create or update one stock batch for a product. (Stock API version 2 and up)

PATCH /product-stock/{productId}/{stockBatchId}
Parameters
Type Name Schema

Path

productId
required

string

Path

stockBatchId
required

string

Query

dry_run
optional

boolean

Body

body
required

Responses
HTTP Code Description Schema

200

Success.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.product_stock+json

  • application/json

Produces
  • application/vnd.fashiontrade.product_stock+json

  • application/json

Gets all stock batches for a product, if any. (Stock API version 1)

GET /product-stock/{theProductId}
Parameters
Type Name Schema

Path

theProductId
required

string

Responses
HTTP Code Description Schema

200

Success.

< string, StockBatchV1 > map

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.product_stock+json

  • application/json

Produces
  • application/vnd.fashiontrade.product_stock.v1+json

  • */*;q=0

Create or replace all stock batches for a product. (Stock API version 1)

PUT /product-stock/{theProductId}
Parameters
Type Name Schema

Path

theProductId
required

string

Query

dry_run
optional

boolean

Body

body
required

< string, StockBatchV1 > map

Responses
HTTP Code Description Schema

200

Success.

< string, StockBatchV1 > map

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.product_stock.v1+json

Produces
  • application/vnd.fashiontrade.product_stock+json

  • application/json

Create or update one stock batch for a product. (Stock API version 1)

PATCH /product-stock/{theProductId}/{stockBatchId}
Parameters
Type Name Schema

Path

stockBatchId
required

string

Path

theProductId
required

string

Query

dry_run
optional

boolean

Body

body
required

Responses
HTTP Code Description Schema

200

Success.

< string, StockBatchV1 > map

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.product_stock.v1+json

Produces
  • application/vnd.fashiontrade.product_stock+json

  • application/json

Products

Create a new product

POST /products
Parameters
Type Name Schema

Query

dry_run
optional

boolean

Body

body
optional

Responses
HTTP Code Description Schema

200

successful operation

201

The product was created.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

409

The provided product information is not valid or a product with the same ID already exists.

Consumes
  • application/vnd.fashiontrade.product+json

  • application/json

Produces
  • application/vnd.fashiontrade.product+json

  • application/json

Get all products

GET /products
Parameters
Type Name Schema

Query

limit
optional

integer (int32)

Query

next
optional

string

Responses
HTTP Code Description Schema

200

Success.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.product+json

  • application/json

Produces
  • application/vnd.fashiontrade.product+json

  • application/json

Delete all existing products of a brand

DELETE /products
Description

This endpoint requires you to provide today’s date as a query parameter to prevent accidental execution of this endpoint

Parameters
Type Name Description Schema

Query

current_date
required

Today’s date in YYYY-MM-DD format

string

Responses
HTTP Code Description Schema

204

The products were successfully deleted

No Content

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

Consumes
  • application/vnd.fashiontrade.product+json

  • application/json

Produces
  • application/vnd.fashiontrade.product+json

  • application/json

Get a product by ID

GET /products/{id}
Parameters
Type Name Schema

Path

id
required

string

Responses
HTTP Code Description Schema

200

Success.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

404

No product found for the requested ID.

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.product+json

  • application/json

Produces
  • application/vnd.fashiontrade.product+json

  • application/json

Update an existing or create a new product

PUT /products/{id}
Parameters
Type Name Schema

Path

id
required

string

Query

dry_run
optional

boolean

Body

body
optional

Responses
HTTP Code Description Schema

200

The product was created.

400

The ID field in the entity does not match the path parameter or the entity is not valid.

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

406

Not acceptable.

string

Consumes
  • application/vnd.fashiontrade.product+json

  • application/json

Produces
  • application/vnd.fashiontrade.product+json

  • application/json

Delete an existing product

DELETE /products/{id}
Parameters
Type Name Schema

Path

id
required

string

Responses
HTTP Code Description Schema

204

The product was successfully deleted

No Content

401

Request lacks valid authentication.

string

403

Request is not authorized for the authenticated user.

string

404

No product found for the requested ID.

Consumes
  • application/vnd.fashiontrade.product+json

  • application/json

Produces
  • application/vnd.fashiontrade.product+json

  • application/json

Security

Authentication

In order to have access to Fashiontrade platform you need to supply a token with each API request you make. Fashiontrade will provide you with this token. This token should be sent in the "Authorization" header of each HTTP request. The content of the header will look like the following:

Authorization: Bearer <token>

api_key

An API key is provided to you by FashionTrade.com. In order to use it, supply the key as a bearer token using the Authorization header in a request. E.g. 'Authorization: Bearer <YOUR_API_KEY>'.

Type : apiKey
Name : Authorization
In : HEADER