Proposal на добавление общего параметра (уровень B, модерация, идемпотентный)
POST /v1/attributes/proposal/add
POST
/v1/attributes/proposal/addПродавец предлагает новый параметр для включения в шаблон категории. После одобрения модератором - становится общим для всех продавцов в этой категории, индексируется в фильтрах.
Жизненный цикл proposal:
pending- подан, ждёт модерацииapproved- одобрен, атрибут добавлен в шаблон категории (созданattribute_id)rejected- отклонён (дубликат / слишком специфичен - оставьте как custom)
Пока proposal pending - продавец может использовать атрибут как custom (уровень A),
товар не блокируется модерацией.
Тело запроса
request_key
[
"string",
"null"
]
Уникальный ключ идемпотентности (опционально).
Формат рекомендуется: {seller_id}_{timestamp}_{attr_code}
Если не передан - идемпотентность не гарантируется.
category_id
string
required ID категории, в шаблон которой предлагается атрибут
attribute
object
required Описание предлагаемого атрибута
Показать свойстваСкрыть свойства
code
string
required Универсальный код (напр. fabric_density)
name
string
required description
[
"string",
"null"
]
role
string
required Роль атрибута в карточке:
specification- потребительский (таблица спецификаций на витрине); описывает параметр SPU (одинаковый для всех SKU)property- технический (внутренний, не показывается покупателю); описывает параметр SPUvariation- потребительский + описывает параметр SKU (отличает варианты внутри SPU): показывается в таблице спецификаций и кнопками выбора варианта; каждая комбинация значений variation-осей = отдельный SKU со своей ценой/штрихкодом/остаткомproperty_variation- технический + описывает параметр SKU (отличает варианты внутри SPU): не показывается покупателю, но используется для различения SKU
Допустимые значения
specificationpropertyvariationproperty_variation
type
string
required Тип данных значения:
string- произвольная строкаint- целое числоfloat- дробное числоenum- одно значение из справочникаmulti- несколько значений из справочникаbool- да/нетfile- файл (изображение/документ)ref- ссылка на сущность (бренд, категория, продавец)color- цвет (UI: показывать свотчи, значения — enum с RGB)size- размер (UI: показывать размерную сетку)brand- бренд (UI: показывать выбор бренда)
Допустимые значения
stringintfloatenummultiboolfilerefcolorsizebrand
unit
max_count
[
"integer",
"null"
]
max_length
[
"integer",
"null"
]
min_value
[
"number",
"null"
]
max_value
[
"number",
"null"
]
values
[
"array",
"null"
]
Предлагаемые значения (если type=enum/multi; опц.)
Показать свойстваСкрыть свойства
Свойства не описаны
justification
string
required Обоснование для модератора (почему атрибут важен)
Успешный ответ
200Результат создания proposal application/json
object
request_key
[
"string",
"null"
]
Ключ идемпотентности (эхо из запроса; пусто, если не передан)
proposal_id
string
required status
string
required Статус proposal:
pending- подан, ждёт модерацииapproved- одобрен, атрибут добавлен в шаблон (создан attribute_id)rejected- отклонён (дубликат / слишком специфичен)
Допустимые значения
pendingapprovedrejected
created_at
string
required idempotent
[
"boolean",
"null"
]
POST/v1/attributes/proposal/add
1curl https://api.omninet.ru/v1/attributes/proposal/add \2 --request POST \3 --header 'Content-Type: application/json' \4 --data '{5 "request_key": "seller_67890_20260719_170000_fabric_density",6 "category_id": "cat_fabric",7 "attribute": {8 "code": "fabric_density",9 "name": "Плотность ткани",10 "description": "Плотность ткани в г/м²",11 "role": "specification",12 "type": "float",13 "unit": {14 "code": "g_m2",15 "name": "грамм на квадратный метр",16 "symbol": "г/м²",17 "quantity": "area_density",18 "base_unit": "g_m2",19 "factor": 1,20 "locales": [21 {22 "lang": "ru",23 "name": "грамм на квадратный метр",24 "symbol": "г/м²"25 },26 {27 "lang": "zh",28 "name": "每平方米克",29 "symbol": "克/平方米"30 },31 {32 "lang": "en",33 "name": "gram per square meter",34 "symbol": "g/m²"35 }36 ]37 },38 "max_count": 1,39 "min_value": 0,40 "max_value": 1000,41 "values": []42 },43 "justification": "Покупатели часто спрашивают плотность ткани - это важно для штор и постельного белья"44}'{
"request_key": "seller_67890_20260719_170000_fabric_density",
"proposal_id": "prop_001",
"status": "pending",
"created_at": "2026-07-19T17:00:00Z"
}Результат создания proposal