Skip to main content

Attributes

Attributes are resources custom defined fields which can be created manually via the Propeller Backoffice or imported via the REST API. Attributes are a powerful and flexible mechanism which are usually used to define products' specification. Another use case is when Propeller's resource pre defined properties are simply not sufficient. Attribute resource values can be inherited from their parent resource. For example, if a product attribute is set on a category, that attribute will be inherited on all products under that category, unless the attribute is set on the product itself.

Attribute Lookup keys

KeyTypeDescription
idintegerPropeller attribute id, auto-generated
namestringthe name of the attribute. Attribute name can contain any alphanumeric uppercase character and _.

What are lookup keys?

Fields

NameDescriptionType
nameUser friendly attribute identifier. Name is unique per attribute class. Can contain any alphanumeric uppercase character and _. Cannot be updated after attribute is created.string
classThe type of resource for which the attribute will be used. Cannot be updated after attribute is created. Possible values are product, category , user. user is used for both users and usergroups resources.string
isPublicBoolean value. Indicates whether attribute will be publicly available or only within Propeller backoffice.boolean
Default value is true
isSearchableBoolean value. It is used only for attributes class product. Indicates whether attribute values will be indexed and available for searching.boolean
Default value is false
isSystemBoolean value. Special custom usage. System attributes are not visible in the resource Attribute tab in Propeller backoffice.boolean
Default value is false
isHiddenBoolean value. Special custom usage. Hidden attributes are not visible in the resource Attribute tab in Propeller backoffice. Default value is false.boolean
Default value is false
typeType of the value. Cannot be updated after attribute is created. Possible values are text, list, enum, enumlist, integer, decimal, date, datetime.
list is a multi value attribute with comma delimited list of values.
enum is a single value attribute. The possible values are predefined in a valueset.
enumlist is a multi-value attribute. The value is a comma delimited list of values predefined in a valueset.
string
typeParam (string)Used in combination with type enum and enumlist. The name of the valueset that holds all possible values.string
descriptionsAttribute description/ label.array[LocalizedString]
valueAttribute default value/ resource value. Possible values depend on typearray[LocalizedString] (text, list)
string (enum, enumlist)
integer
decimal
date
datetime
unitsAttribute unit. Ex. use case: If an attribute is a type of measurement like weight or height, the unit will be kg or cm, etc.array[LocalizedString]
groupAttributes are sometimes related to each other. group is used to link them.string

Attribute Errors

This section describes error codes specific for the Attribute resource.

CodeError TypeStatus CodeMessageReason
14001AttributeNotFound404Attribute does not existAttribute with such lookup key already exists
14002AttributeMultipleFound400Multuple attributes found. Please provide additional filtersMultiple attributes with such lookup key found. Provide additional filters
14003AttributeExists400Attribute already existsAttribute with such name already exists
14004AttributeInvalidClass400No attributes defined for classAttributes for resources of the provided class are not configured
14005AttributeInvalidValue400Invalid value providedThe attribute value does not correspond with the attribute type