Передача значений характеристики
Во всех сценариях ориентируйтесь на данные из ответа метода получения характеристик POST v2/category/{categoryId}/parameters:
values[].id— идентификаторы для передачи вvalueId;multivalue— можно ли передать несколько значений;allowCustomValues— можно ли передавать собственные значения (valueбезvalueId);unit.defaultUnitId,unit.units[]— единицы измерения и их идентификаторы (unitId);constraints— ограничения на значения (границы чисел, максимальная длина текста).
Передача значений выполняется в параметре parameterValues в двух методах (правила одинаковые):
- POST v2/businesses/{businessId}/offer-mappings/update
- POST v2/businesses/{businessId}/offer-cards/update
Характеристика со списком допустимых значений (тип ENUM), нужно указать одно значение
- Когда применять: характеристика типа
ENUM, в ответе метода характеристик полеmultivalue = false. - Что передавать: один объект с
parameterIdиvalueId(идентификатор берите изvalues[].id). Полеvalueможно не указывать. - Ограничение: если
allowCustomValues = false, передача толькоvalueбезvalueIdприведет к ошибке валидации.
Пример — одно значение из списка
{
"parameterValues": [
{ "parameterId": 111111, "valueId": 999999, "value": "10" }
]
}
Характеристика допускает собственные значения, нужно указать одно собственное значение
- Когда применять: характеристика типа
ENUM, в ответе метода характеристик полеallowCustomValues = true,multivalue = false. - Что передавать: один объект с
parameterIdи строкой вvalue. ПолеvalueIdне указывайте.
Пример — одно собственное значение
{
"parameterValues": [
{ "parameterId": 111111, "value": "Собственное значение" }
]
}
Характеристика допускает несколько значений
- Когда применять: в ответе метода характеристик поле
multivalue = true. - Что передавать: несколько объектов с одинаковым
parameterId— по одному на каждое значение.- Если значение из перечня Маркета — укажите
valueId. - Если разрешены собственные значения (
allowCustomValues = true) — укажитеvalueбезvalueId.
- Если значение из перечня Маркета — укажите
Пример — несколько собственных значений
{
"parameterValues": [
{ "parameterId": 111111, "value": "Собственное значение 1" },
{ "parameterId": 111111, "value": "Собственное значение 2" }
]
}
Характеристика с единицами измерения
- Когда применять: для характеристики в ответе указаны единицы (
unit.defaultUnitId,unit.units[]). - Что передавать: при необходимости указывайте
unitIdв каждом объекте значения; еслиunitIdне указан, используется единица по умолчанию.
Пример — значение с единицей измерения
{
"parameterValues": [
{ "parameterId": 111111, "value": "10", "unitId": 3 }
]
}
Удаление ранее переданного значения
- Что передавать: объект с тем же
parameterIdи пустымvalue(""). Это удалит значение характеристики.
Пример — удаление значения характеристики
{
"parameterValues": [
{ "parameterId": 111111, "value": "" }
]
}