# Crear promoción de descuento para un artículo Crea una promoción de descuento para un artículo. Las promociones proporcionan un descuento (%) en los artículos. El descuento se aplicará a todos los precios de los artículos especificados. Endpoint: POST /v3/project/{project_id}/admin/promotion/item Version: 2.0.0 Security: basicAuth ## Path parameters: - `project_id` (integer, required) ID del proyecto. Encontrará este parámetro en su Cuenta del editor junto al nombre del proyecto. Example: 44056 ## Request fields (application/json): - `attribute_conditions` (array) Condiciones para validar los atributos de usuario. Determina la disponibilidad de la promoción en función de si los atributos de usuario cumplen todas las condiciones especificadas. - `discount` (object, required) - `discount.percent` (string, required) Porcentaje de descuento. El precio del artículo se reducirá utilizando un valor calculado usando este porcentaje y luego se redondeará al segundo decimal. Example: 10 - `excluded_promotions` (array) Lista de ID de promociones a excluir al aplicar esta promoción. Example: [12, 789]. Example: [12,789] - `is_enabled` (boolean) Si la promoción está habilitada o no. Example: true - `items` (array, required) - `items.sku` (string, required) SKU del artículo. - `limits` (object) Límites de la promoción. - `limits.per_user` (integer,null) Limitaciones de la promoción para un usuario independiente. - `limits.recurrent_schedule` (object,null) Periodo de actualización del límite. - `limits.recurrent_schedule.per_user` (object) Periodo de actualización del límite del usuario. - `limits.recurrent_schedule.per_user.day_of_month` (integer,null) Día del mes en que se actualizan los límites. Si no hay ningún día del mes seleccionado porque el mes es más corto, la actualización se producirá el último día del mes. No null solamente para el tipo de periodo de actualización del límite monthly. - `limits.recurrent_schedule.per_user.day_of_week` (integer,null) Día de la semana en que se actualizan los límites. En el cual 1 es lunes y 7 es domingo. No null solo para el tipo de periodo de actualización del límite weekly. - `limits.recurrent_schedule.per_user.displayable_reset_next_date` (string) Fecha y hora en que deben restablecerse los límites (ISO 8601). Example: "2023-02-28T11:00:00+08:00" - `limits.recurrent_schedule.per_user.displayable_reset_start_date` (string) Fecha y hora de la primera actualización del límite (ISO 8601). Example: "2023-02-28T11:00:00+08:00" - `limits.recurrent_schedule.per_user.interval_type` (string) Tipo de periodo de actualización recurrente. Enum: "daily", "weekly", "monthly" - `limits.recurrent_schedule.per_user.reset_next_date` (integer) Fecha y hora de actualización de los límites (Marca de tiempo Unix). Example: 1677553200 - `limits.recurrent_schedule.per_user.time` (string) Hora de actualización del límite en la zona horaria deseada (redondeo a horas). Example: "11:00:00+03:00" - `name` (object, required) Nombre de la promoción. Debe contener pares clave/valor, en los cuales la clave es la configuración regional con el formato "^[a-z]{2}-[A-Z]{2}$", el valor es una cadena (string). Example: {"en-US":"Promotion","ru-RU":"Акция"} - `price_conditions` (array,null) Matriz de objetos con condiciones que establecen el rango de precios para aplicar la promoción. La promoción solo se aplica a los artículos cuyo precio cumple todas las condiciones de la matriz. Si transmite esta matriz, establezca el valor del objeto [items](/es/api/shop-builder/operation/create-item-promotion/#!path=items&t=request) en null. - `price_conditions.operator` (string, required) Operador de comparación para establecer el rango de precios para aplicar la promoción. Enum: "ge", "gt", "le", "lt", "eq", "ne" - `price_conditions.value` (string, required) Valor para determinar el rango de precios para aplicar la promoción. - `promotion_periods` (array) Periodos de validez de la promoción. Si se especifican varios periodos, es necesario tanto date_from como date_until. - `promotion_periods.date_from` (string, required) Fecha de inicio de la promoción especificada. Example: "2020-08-11T10:00:00+03:00" - `promotion_periods.date_until` (string,null) Fecha de finalización de la promoción especificada. Si se establece como null, la promoción es indefinida. Puede ser null solamente si se especifica un único periodo de validez. Example: "2020-08-11T20:00:00+03:00" ## Response 201 fields (application/json): - `promotion_id` (integer) ID de promoción. Identificador único de la promoción en el proyecto. ## Response 401 fields (application/json): - `errorCode` (integer) Example: 1020 - `errorMessage` (string) Example: "[0401-1020]: Error in Authentication method occurred" - `statusCode` (integer) Example: 401 ## Response 422 fields (application/json): - `errorCode` (integer) Example: 1102 - `errorMessage` (string) Example: "[0401-1102]: Unprocessable Entity. The property `items` is required" - `statusCode` (integer) Example: 422 - `transactionId` (string) Example: "x-x-x-x-transactionId-mock-x-x-x"