Product metadata

This section describes various metadata that may be available for products.

Metadata availability and contents may vary depending on the product type. At the moment several types of metadata may be available:

Generic objects:

metadata.apparel — shoes, clothing and other apparel products

Apparel products metadata may contain following fields:

NameDescriptionCount
apparel.sizes The apparel_sizes field is an array containing one or more Measurement objects. Each object specifies a size using one of the following units:
  • size_label — for standard clothing size labels (XXS, XS, S, M, L, XL, XXL, XXXL, XXXXL, one_size)
  • eu_shoe_size — for European shoe sizes
  • us_shoe_size — for US shoe sizes
A garment with size XS:
[{
    "equals": {"value": "XS", "unit": "size_label"}
}]
A pair of shoes with US and EU sizes:
[{
    "equals": {"value": "8", "unit": "us_shoe_size"}
}, {
    "equals": {"value": "41", "unit": "eu_shoe_size"}
}]
320 760 (10% of apparel products)

metadata.electric — electric products

Electric products metadata may contain these fields:

NameDescriptionCount
electric.voltage Product voltage (in volts), a Measurement object.
{
    "equals": {
        "value": 1.5,
        "unit": "volts"
    }
}
28 232 (0% of products)

metadata.externalIds — product ids in external sources

External ids metadata may contain these fields:

NameDescriptionCount
externalIds.amazonAsin Amazon Standard Identification Number, string. 1 268 122 (2% of products)

An example of external ids metadata:

{
    // ...
    "product": {
        "metadata": {
            "externalIds": {
                "amazonAsin": "AMAZONASIN"
            }
        }
    }
}

metadata.generic — generic metadata

Generic metadata may contain these fields:

NameDescriptionCount
generic.ageGroups A list of strings, representing the age groups that the product is targeted for. Possible values: infant (0-1 years), toddler (1-3), child (3-12), teen (12-18), adult (18-60), senior (60+).
{
    "ageGroups": ["child", "teen"]
}
3 261 (0% of products)
generic.colors Product color, an array of objects. See Product colors for the list of supported values and an example. 9 433 000 (14% of products)
generic.contributors Product contributors (book authors, music performers, etc.), a list of objects. Each contributor object has following attributes:
  • names — "lang" → "contributor name / title" mapping
  • type — contributor type, string, one of the following:
    • author — book author
    • narrator — audio book narrator
    • translator — book translator
    • artist — artist (for music recordings: composer / musician etc.)
    • music_group — music group / band
    • choir — choir / chorus / large vocal ensemble
    • orchestra — large instrumental ensemble
10 820 167 (16% of products)
generic.dimensions Product and packaging dimensions information, an object:
{
    // Product dimensions, if available
    "product": {
        // Can contain "width", "height", "depth" and / or "length" attributes
        // Each attribute is a Measurement object
        "width": {
            "equals": {
                "value": 9.5, // Dimension value
                "unit": "cm"  // Supported values: ["cm"]
            }
        },
        // ...
        "depth": {
            "equals": {
                "value": 19.5,
                "unit": "cm"
            }
        }
    },
    // Packaging dimensions, if available
    "packaging": {
        // ... same structure as for product dimensions
    }
}
9 032 223 (13% of products)
generic.genderFit Gender fit of a product, string. Can be one of the following values: male, female, unisex. 1 610 280 (2% of products)
generic.ingredients Product ingredients or materials. See Product ingredients for detailed information. 5 960 989 (9% of products)
generic.manufacturerCode Manufacturer product code, string. 10 192 217 (15% of products)
generic.numberOfItems Number of individual items that are included in the product as sold, a Measurement object. 760 623 (1% of products)
generic.power Product power (in watts), a Measurement object.
{
    "equals": {
        "value": 750,
        "unit": "watts"
    }
}
5 635 (0% of products)
generic.volume Product volume information, a Measurement object.
{
    "equals": {
        "value": 100,  // Volume value, float
        "unit": "ml"   // Supported values: ["ml"]
    }
}
781 960 (1% of products)
generic.weight Product weight information, a mapping of net (for net weight), gross (for gross weight) or unknown (when we lack information whether it's net or gross weight) to a Measurement object:
{
    "net": {
        "equals": {
            "value": 150.0,  // Weight value, float
            "unit": "grams"  // Supported values: ["grams"]
        }
    },
    "gross": {
        "equals": {
            "value": 200.0,
            "unit": "grams"
        }
    }
}
4 140 457 (6% of products)

An example of generic metadata:

{
    // ...
    "product": {
        "metadata": {
            "generic": {
                "manufacturerCode": "PRODUCT-CODE-123",
                "colors": ["white"],
                "contributors": [
                    {
                        "names": {
                            "en": "John Smith"
                        },
                        "type": "author"
                    }
                ]
            }
        }
    }
}

metadata.food — food items and beverages

Food metadata may contain these fields:

NameDescriptionCount
food.nutrimentsPer100Grams Food nutriments information. See Food nutriments for detailed information. 1 335 042 (56% of food products)
food.nutriScore Product Nutri-Score, an object:
{
    "score": 1,   // Nutri-Score, an integer
    "grade": "B"  // Nutri-Score letter grade (from "A" to "E")
}
802 819 (34% of food products)

An example of food metadata:

{
    // ...
    "product": {
        "metadata": {
            "food": {
                "nutrimentsPer100Grams": {
                    "fat": {
                        "equals": {
                            "value": 1.0,
                            "unit": "grams"
                        }
                    },
                    "proteins": {
                        "equals": {
                            "value": 12.0,
                            "unit": "grams"
                        }
                    },
                    "energy": {
                        "equals": {
                            "value": 654,
                            "unit": "kcal"
                        }
                    },
                },
                "nutriScore": {
                    "score": 1,
                    "grade": "B"
                }
            }
        }
    }
}

metadata.printBook — print books

Print book metadata may contain these fields:

NameDescriptionCount
printBook.numPages Number of pages in print book, integer. 7 301 919 (72% of print books)
printBook.bisacCodes BISAC codes of a print book, list of strings. 1 240 743 (12% of print books)
printBook.bindingType Book binding type, one of strings: hardcover, paperback. 8 269 209 (81% of print books)

An example of print book metadata:

{
    // ...
    "product": {
        "metadata": {
            "printBook": {
                "numPages": 123,
                "bisacCodes": ["FIC027110"],
                "bindingType": "paperback"
            }
        }
    }
}

metadata.media — books, music and other media products

Media products metadata, relevant for digital or physical books, newspapers, magazines, music and sound recordings. May contain following fields:

NameDescriptionCount
media.publicationYear Media product publication or release year, integer. In case of re-issues that use the same barcode, this is the year of the first publication. For on-demand publications, this is the year of the original publication. 11 879 002 (80% of media products)

An example of media metadata:

{
    // ...
    "product": {
        "metadata": {
            "media": {
                "publicationYear": 1990
            }
        }
    }
}

Measurement object

Measurement represents various measurements (weights, sizes, amounts, dimensions) for metadata properties values.

It is a mapping of one or several measures (currently supported: equals, lessThan, greaterThan) to value objects. Each value object consists of value field that holds a numeric or a string measurement and unit field, containing the unit in which this measurement is represented.

// Precise measurement example
{
    "equals": {
        "value": 12.5,
        "unit": "ml"
    }
}

// Measurement range example
{
    "greaterThan": {
        "value": 10,
        "unit": "mg"
    },
    "lessThan": {
        "value": 20,
        "unit": "mg"
    }
}


// String measurement value example
{
    "equals": {
        "value": "XS",
        "unit": "size_label"
    }
}