Skip to main content

Custom product properties

There are several services related to creating and filling (custom) product properties. Where the Product properties docs offer you a general insight into product properties, these docs will dive straight into using the service and give you some examples.

While you can create custom product properties (and categories) via their dedicated services, you can also use the ImportProducts service directly to create and fill custom product properties.

Creating product properties

To create a custom product property, use CreateProductPropertyType:

Simple sample creating a CPP
{
"TypeID": "eu_ecolabel",
"CategoryID": "default",
"DataType": 3
}

Except for TypeID and CategoryID, this service works the exact same as our CustomField services.

Indexing

Whether it's when creating a custom product property directly, or via ImportProducts, there are a few more fields which are important. Without specifying its IndexType for example, you won't be able to use the property in your filter/search.

For more information on these fields, read about Product properties here.

Additional services

The following services are related to the creation and management of product properties.

Product property categories

Categories are a way to divide your properties. In practice however, these have no important use case.

In other words: feel free to choose Default whenever creating a CPP.

You can however use the following services if you want to divide your properties into categories.

CPP category services

Defining values in ImportProducts

While values of a default product property are added directly in the Content object, values for the custom product property go through the Content > CustomContent object in ImportProducts:

Filling a CPP via ImportProducts
{
"SystemID": "PimCore",
"Products": [
{
"ID": "121",
"Name": "NewBorn T-Shirt",
"TaxCode": "High",
"Content": [
{
"CustomContent": {
"eu_ecolabel": true
}
}
]
}
]
}

Since our custom product property was just a boolean, our case is pretty simple.

Creating product properties via ImportProducts

If you don't have the custom product property preconfigured via the services above, you can also just provide it in the ImportProducts request.

In that case such properties must be defined on root level first, via the CustomPropertyTypes object, before being able to fill them with values in the (Custom)Content object.

Creating CPP via ImportProducts
{
"SystemID": "PimCore",
"CustomPropertyTypes": [
{
"ProductPropertyTypeID": "eu_ecolabel",
"CategoryID": "default",
"DataType": 3
}
],
"Products": [
{
"ID": "121",
"Name": "NewBorn T-Shirt",
"TaxCode": "High",
"Content": [
{
"CustomContent": {
"eu_ecolabel": true
}
}
]
}
]
}

After this request, the product property will be known in EVA and the correct value will already be set on the product.

Multiple (custom) product properties

You can fill existing product properties and custom product properties in one go.

Below is an example of an ImportProducts call that sets values on:

  • Default EVA product properties Long Description, Short Description and Name - as defined in the Content object
  • Several custom product properties - as defined in the CustomContent object within the Content object.

Advanced sample configuring several (custom) product properties
{
"SystemID": "Mulesoft",
"Products": [
{
"ID": "HOODIE-576579",
"Name": "New Black Hoodie",
"CustomID": "20399280",
"TaxCode": "Clothing",
"Content": [
{
"long_description": "Introducing our latest essential wardrobe staple: the sleek and sophisticated Black Hoodie. Crafted with meticulous attention to detail, this hoodie effortlessly combines comfort and style, making it a versatile must-have for any modern wardrobe. Crafted from premium quality black cotton fabric, this hoodie offers unparalleled softness and durability, ensuring long-lasting wear and maximum comfort. The deep black hue exudes an air of timeless elegance, making it suitable for any occasion, whether you're lounging at home or hitting the streets. Designed with a classic silhouette, this hoodie features a relaxed fit that offers freedom of movement without compromising on style. The adjustable drawstring hood adds a practical touch, allowing you to customize your fit and stay cozy on cooler days.",
"name": "New Black Essential Hoodie Black",
"short_description": "Sleek and sophisticated Black Hoodie. Crafted with meticulous attention to detail, this hoodie effortlessly combines comfort and style.",
"CustomContent": {
"age": "Adult",
"brand": "New Black",
"collection": "SS23",
"descriptionbullets": "Unisex' Hoodie;Single Colour;Relaxed fit;Long-sleeved",
"gender": "Unisex",
"plm_special_instructions1": "Wash - Delicate machine wash",
"plm_special_instructions2": "Wash - Wash with similar colours",
"plm_special_instructions3": "Wash - Wash inside out",
"plm_special_instructions4": "Iron - Do not iron on print/badge",
"plm_transactional_certificate": "USB-OCS-299643",
"plm_wash_care_method": "Wash - 30 Degrees Delicate",
"composition_fabric": "100% Cotton - Organic"
}
}
]
}
]
}

Multi-language content

Since product properties live in the Content object, they can have different values for different languages.

This allows you to upload content in multiple languages for the same product.

You can for example use EVA to display Spanish descriptions in Spanish stores and English in your UK stores while still referring to the same product in your database.

General information about translations

For more conceptual information about languages and cultures, please see: Translations.

To upload content in multiple languages:

  • Create objects with the field LanguageID added;
  • Define the languages directly (two letter ISO 639);
  • Add all your (custom) content below it.

Below you can find an example of a hoodie with content uploaded in three different languages.

Note that you can also mix and match as you like. Some content might be identical across all languages (certain product categorization) whereas other variables are actually shown to employees and consumers, warranting a translation (for example the local translation of a description).

Advanced sample with multiple languages
{
"SystemID": "Mulesoft",
"DownloadImagesInBackground": true,
"Products": [
{
"ID": "HOODIE-576579",
"Name": "New Black Hoodie",
"CustomID": "20399280",
"TaxCode": "Clothing",
"Brand": "New Black",
"Content": [
{
"LanguageID": "en",
"longdescription": "Introducing our latest essential wardrobe staple: the sleek and sophisticated Black Hoodie. Crafted with meticulous attention to detail, this hoodie effortlessly combines comfort and style, making it a versatile must-have for any modern wardrobe. Crafted from premium quality black cotton fabric, this hoodie offers unparalleled softness and durability, ensuring long-lasting wear and maximum comfort. The deep black hue exudes an air of timeless elegance, making it suitable for any occasion, whether you're lounging at home or hitting the streets. Designed with a classic silhouette, this hoodie features a relaxed fit that offers freedom of movement without compromising on style. The adjustable drawstring hood adds a practical touch, allowing you to customize your fit and stay cozy on cooler days.",
"name": "New Black Essential Hoodie Black",
"shortdescription": "Sleek and sophisticated Black Hoodie. Crafted with meticulous attention to detail, this hoodie effortlessly combines comfort and style.",
"CustomContent": {
"age": "Adult",
"brand": "New Black",
"collection": "SS23",
"descriptionbullets": "Unisex' Hoodie;Single Colour;Relaxed fit;Long-sleeved",
"gender": "Unisex",
"plm_special_instructions1": "Wash - Delicate machine wash",
"plm_special_instructions2": "Wash - Wash with similar colours",
"plm_special_instructions3": "Wash - Wash inside out",
"plm_special_instructions4": "Iron - Do not iron on print/badge",
"plm_transactional_certificate": "USB-OCS-299643",
"plm_wash_care_method": "Wash - 30 Degrees Delicate",
"composition_fabric": "100% Cotton - Organic"
}
},
{
"LanguageID": "de",
"longdescription": "Wir präsentieren unser neuestes unverzichtbares Kleidungsstück: das elegante und raffinierte Schwarze Hoodie. Hergestellt mit akribischer Aufmerksamkeit für Details, vereint dieses Hoodie mühelos Komfort und Stil und wird damit zu einem vielseitigen Must-have für jeden modernen Kleiderschrank. Hergestellt aus hochwertigem schwarzen Baumwollstoff bietet dieses Hoodie eine unvergleichliche Weichheit und Langlebigkeit, was langanhaltenden Tragekomfort garantiert. Die tief schwarze Farbe strahlt eine zeitlose Eleganz aus und macht es für jeden Anlass geeignet, egal ob Sie zu Hause entspannen oder durch die Straßen schlendern. Mit einer klassischen Silhouette entworfen, verfügt dieses Hoodie über eine lockere Passform, die Bewegungsfreiheit bietet, ohne dabei auf Stil zu verzichten. Die verstellbare Kapuze mit Kordelzug verleiht einen praktischen Touch und ermöglicht es Ihnen, Ihre Passform anzupassen und an kühleren Tagen gemütlich zu bleiben.",
"name": "Neues Schwarzes Essential-Hoodie Schwarz",
"shortdescription": "Elegantes und raffiniertes Schwarzes Hoodie. Hergestellt mit akribischer Aufmerksamkeit für Details, vereint dieses Hoodie mühelos Komfort und Stil.",
"CustomContent": {
"age": "Erwachsene",
"brand": "Neues Schwarz",
"collection": "SS23",
"descriptionbullets": "Unisex-Hoodie;Einheitsfarbe;Lockere Passform;Langärmlig",
"gender": "Unisex",
"plm_special_instructions1": "Waschen - Schonwaschgang",
"plm_special_instructions2": "Waschen - Mit ähnlichen Farben waschen",
"plm_special_instructions3": "Waschen - Auf links waschen",
"plm_special_instructions4": "Bügeln - Nicht auf den Druck/Aufnäher bügeln",
"plm_wash_care_method": "Waschen - 30 Grad Schonwaschgang",
"composition_fabric": "100% Baumwolle - Bio"
}
},
{
"LanguageID": "ja",
"longdescription": "私たちの最新の基本的なワードローブの必需品、洗練されたブラックフーディーをご紹介します。細部にまでこだわり抜いて作られたこのフーディーは、快適さとスタイルを絶妙に融合させ、どんなモダンなワードローブにも馴染む多目的なアイテムです。プレミアムな品質のブラックコットン生地から作られたこのフーディーは、非常に柔らかく耐久性があり、長く着用しても快適さが持続します。深いブラックの色合いは、時代を超えたエレガンスを漂わせ、自宅でリラックスしているときでも街を歩いているときでも適しています。クラシックなシルエットでデザインされたこのフーディーは、スタイルを損なうことなく、動きやすいゆったりとしたフィット感を提供します。調整可能なドローストリングフードが実用的なタッチを加え、フィット感をカスタマイズして涼しい日に快適に過ごすことができます。",
"name": "新しいブラックエッセンシャルフーディー ブラック",
"shortdescription": "洗練されたブラックフーディー。細部にまでこだわり抜いて作られたこのフーディーは、快適さとスタイルを絶妙に融合させています。",
"CustomContent": {
"age": "大人",
"brand": "新しいブラック",
"collection": "SS23",
"descriptionbullets": "ユニセックスフーディー;単色;ゆったりしたフィット感;長袖",
"gender": "ユニセックス",
"plm_special_instructions1": "洗濯 - 弱い洗濯機で洗濯する",
"plm_special_instructions2": "洗濯 - 類似の色と一緒に洗濯する",
"plm_special_instructions3": "洗濯 - 裏返して洗濯する",
"plm_special_instructions4": "アイロン - プリント/バッジにはアイロンをかけない",
"plm_wash_care_method": "洗濯 - 30度のデリケート洗濯",
"composition_fabric": "100%コットン - オーガニック"
}
}
],
"Variations": {
"Property": "color",
"LogicalLevel": "color",
"Products": [
{
"ID": "HOODIE-576579-BLK",
"Name": "New Black Hoodie - Black",
"CustomID": "3000342794",
"TaxCode": "Clothing",
"Brand": "New Black",
"Content": [
{
"CustomContent": {
"color": "Black"
},
"Images": [
{
"ImageUrl": "https://newblack.io/er/3000342794-BCK",
"Name": "BCK",
"Sequence": 1,
"MimeType": "image/png",
"IsPrimaryImage": true
}
]
}
],
"VariationValues": [
{
"Value": "Black"
}
],
"IsDeleted": false,
"Variations": {
"Property": "size",
"LogicalLevel": "size",
"Products": [
{
"ID": "HOODIE-576579-BLK-XL",
"Name": "New Black Hoodie - Black XL",
"CustomID": "400002393747",
"TaxCode": "Clothing",
"Brand": "New Black",
"Barcodes": [
"2300009489492"
],
"Type": {
"Stock": true
},
"Content": [
{
"CustomContent": {
"color": "Black",
"size": "XL"
}
}
],
"VariationValues": [
{
"Value": "XL"
}
],
"IsDeleted": false
},
{
"ID": "HOODIE-576579-BLK-L",
"Name": "New Black Hoodie - Black L",
"CustomID": "400002393747",
"TaxCode": "Clothing",
"Brand": "New Black",
"Barcodes": [
"2300009476492"
],
"Type": {
"Stock": true
},
"Content": [
{
"CustomContent": {
"color": "Black",
"size": "L"
}
}
],
"VariationValues": [
{
"Value": "L"
}
],
"IsDeleted": false
}
]
}
}
]
},
"IsDeleted": false
}
]
}

Localized languages: same language, different countries

In some cases the same base language has different ways of describing something, depending on a region or country.

American and British speaking people all speak English, but between them they might have a different way of saying things.

To take this into account, you can use content cultures. Besides including a LanguageID as per the instructions above, add a CountryID (ISO 3166-2) as well to make the split.

""

"Content": [
{
"LanguageID": "en",
"CountryID": "GB",
"long_description": " Alright, mate, check out our latest gear, the wicked Black Hoodie. Crafted with mad attention to detail, this hoodie is bang on for merging comfort and style, making it a proper essential for any modern wardrobe. Made from top-notch black cotton, this hoodie is pure lushness, proper durable, so you can rock it for time and still feel cozy as anything. The deep black color gives off that timeless vibe, perfect whether you're chilling at yard or hitting the streets."
},
{
"LanguageID": "en",
"CountryID": "US",
"long_description": "The Black Hoodie, straight outta the concrete jungle. Crafted with attention to detail, this hoodie is the ultimate blend of cozy and fly, a total must-have for any modern wardrobe. Made from premium black cotton, it's soft and durable, so you can rock it day in, day out without missing a beat."
},
],