Skip to content

Fashion Tagging

This page describes API for generic fashion tagging service. The API follows the general rules of Ximilar API as described in Section First steps. This service API has only one endpoint running at this URL:

https://api.ximilar.com/tagging/fashion/v2/tags

Please, see page API Calls and Credits for exact prices for individual API calls. The Fashion Tagging uses a chain of recognition models to tag each image, that's why the cost is higher than a simple image classification.

Contact us before using this service

In order to get access to the Fashion Photo Tagging service, please register at https://app.ximilar.com and then contact us at tech@ximilar.com to make the service accessible for your Ximilar account.

Tagging endpoint: /v2/tags

Given a list of image records, this method returns tags as predicted by the Fashion Tagging services, together with probabilities (the level of certainty) for each of these tags.

What is category and tags?

The workflow for identifying tags work in this way:

  1. First we detect the main fashion type of the product on the image (category field).
  2. Based on this knowledge we decide which taggers we use for generating appropriate tags. If you already know to which category given image belongs then you should specify it in the record.

Taxonomy of Fashion Tagging

Features of Clothing/Upper Tags
Cut buttons, fastening, shorted, shoulder straps, spaghetti, strapless, zipper
Filter filter
Gender children, men, women
Hood hoods
Neckline boatneck, bow, collar, cowl, crew, low cut, round, turtlenecks, vneck, wrap
Pattern and Material camouflage, chevron, denim, floral, knitted, lace, leather, logo, patterned, picture, plaid, plain, polka dot, shiny, stripe, text
Sleeves sleeveless, sleeves 3/4, sleeves long, sleeves short
Subcategory blouses, bodysuit, polo-shirts, pyjama upper, shirts, sweaters, sweatshirts, t-shirts, tankini, tops, tunics, undershirts, vests
Features of Clothing/Dresses Tags
Cut buttons, fastening, shorted, shoulder straps, spaghetti, strapless, zipper
Filter filter
Length maxi dresses, midi dresses, mini dresses
Neckline boatneck, bow, collar, cowl, crew, low cut, round, turtlenecks, vneck, wrap
Pattern and Material camouflage, chevron, denim, floral, knitted, lace, leather, logo, patterned, picture, plaid, plain, polka dot, shiny, stripe, text
Sleeves sleeveless, sleeves 3/4, sleeves long, sleeves short
Style casual, elegant, sport, wedding dresses
Tags blouse dresses, cocktail dresses, evening dresses, nightdresses, sheath dresses, sundresses
Features of Clothing/Pants Tags
Filter filter
Gender children, men, women
Length 3/4 pants, 7/8 pants, long pants, shorts
Style casual, elegant, special/other, sport
Subcategory beach pants, jeans, leggings, pyjama pants, suit trousers, sweat pants, swim shorts, winter pants
Features of Clothing/Jackets and Coats Tags
Filter filter
Gender children, men, women
Hood hoods
Length long, short
Material fur coats, jean jackets, leather jackets, softshell, wool coats
Style casual, elegant, sport
Subcategory blazers, outdoor jackets, pelerine, raincoats and ponchos, suit jackets and tuxedos, trench coats, windstoppers, winter jackets
Features of Clothing/Skirts Tags
Design a-line skirts, balloon skirts, beach skirts, pencil and crash skirts
Filter filter
Length maxi skirts, midi skirts, miniskirts
Pattern and Material camouflage, chevron, denim, floral, knitted, lace, leather, logo, patterned, picture, plaid, plain, polka dot, shiny, stripe, text
Style casual, elegant, sport
Features of Clothing/Overalls Tags
Cut buttons, fastening, shorted, shoulder straps, spaghetti, strapless, zipper
Filter filter
Hood hoods
Length 3/4 pants, 7/8 pants, long pants, shorts
Neckline boatneck, bow, collar, cowl, crew, low cut, round, turtlenecks, vneck, wrap
Pattern and Material camouflage, chevron, denim, floral, knitted, lace, leather, logo, patterned, picture, plaid, plain, polka dot, shiny, stripe, text
Sleeves sleeveless, sleeves 3/4, sleeves long, sleeves short
Style PJ set, elegant, sleeping, summer, winter
Features of Watch Tags
Filter (watch) filter
Tags watch dark dial, watch digital, watch gem, watch golden, watch leather strap, watch light dial, watch nylon strap, watch rubber strap, watch satin strap, watch silver, watch smart, watch sport, watch with hands, watch wooden
Features of Footwear Tags
Boots/Specials ladies high boots, rubber boots, ski boots, snow boots, snowboard boots
Filter filter
Gender children, men, women
Heels high heels, low heels, middle heels, platform shoes, wedge heels
Height high boots, low boots, low shoes, middle boots, open feet shoes
Material leather shoes
Style casual, elegant, special, sport
Subcategory ballerinas, crocs, flip-flops, hiking footwear, loafers, moccasins, mules, pumps, sandals, slip-ons, slippers, sneakers, trainers
View back_view, bottom_view, good_view, top_view
Features of Bags/Handbags Tags
Bags/Gender children, men, women
Subcategory baguette bags, beauty cases, shoulder bags and shoppers, top handles
Features of Other/Person Tags
Person/Gender children, men, women

Parameters:

  • records: list of photos to predict the tags for
    • must contain either of _url or _base64 field - see section image data for details
    • each record can contain category field which defines name of the main fashion object on the photo

$ curl https://api.ximilar.com/tagging/fashion/v2/tags -H "Content-Type: application/json" -H "Authorization: Token __API_TOKEN__" -d '{
    "records": [
        { "_url": "https://bit.ly/2IymQJv" },
        {"_base64": "/9j/4AAQSkZJR...", "_id": "image_id"}
    ]
}'

Returns:

  • HTTP error code 2XX, if the method was OK and other HTTP error code, if the method failed.
  • Body of the response is a JSON object (map) with the following fields:
    • status - a JSON map with a status of the method processing. It contains these subfields:
      • code - a numeric code of the operation status; it follows the concept of HTTP status codes (2XX, 4XX). Specific codes are described for each type of answer (or operation) (see below).
      • text - a text describing the status code
      • error_description - in case of the processing ended with error (codes 4XX), this field contains a detailed description of the error; this might include Java stack traces.
    • Example of statuses that can be returned:
      "status": {"code": 200, "text": "OK"}
      "status": {"code": 402, "text": "aborted by error", error_description="..."}
      "status": {"code": 500, "text": "unknown error", "error_description": "..."}
    • statistics - a map of various statistics about the processing. The only statistic included every time is
      • processing time - time of actual processing of the query [in seconds]
    • records - JSON array with the input records, each record enriched by field "_tags" and "category"

CLICK TO SHOW JSON RESULT

{
  "records": [
    {
      "_url": "https://vize.ai/fashion_examples/good_tshirt.jpg",
      "tags": {
        "subcategory": [
          {
            "name": "T-Shirts",
            "id": "ae200c1f-3136-4a40-aa77-00d550e34d3a",
            "prob": 0.93054
          }
        ],
        "pattern": [
          {
            "id": "6fe8dc59-13eb-47d2-9ec7-060eaece6828",
            "name": "Picture",
            "prob": 0.85827
          },
          {
            "id": "6fe8dc59-13eb-47d2-9ec7-060eaece6828",
            "name": "Text",
            "prob": 0.10259
          }
        ],
        "gender": [
          {
            "name": "Women",
            "id": "c70b8326-d418-4225-a9d2-81d676810c35",
            "prob": 0.74251
          }
        ],
        "sleeves": [
          {
            "id": "8e492b69-fd13-4d94-9cda-94d911256c34",
            "prob": 0.99987,
            "name": "Sleeves short"
          }
        ]
      },
      "simple_tags": ["T-Shirts", "Picture", "Women", "Sleeves short"],
      "category": "Clothing/Upper"
    }
  ],
  "statistics": {
    "processing time": 1.01,
    "proc_id": "5a23e945-058b-426c-892a-07f29b016765",
  },
  "status": {
    "code": 200,
    "text": "OK"
  }

Things to note

  • Please, note that the "_base64" data is not returned. Use "_id" or any other field to identify your image.
  • Each of the tag contains probability of tag present on the image. All the tags are based on the main product type which is present in "category" field.

Service status check: /v2/ping

Description: returns a basic information about the service
No parameters
Example:

$ curl https://api.ximilar.com/tagging/fashion/v2/ping

CLICK TO SHOW JSON RESULT

{
   "info" : "Ximilar fashion-tagging service",
   "status" : {
      "text" : "OK",
      "code" : 200
   }
}