Создание группы промокодов
Группа промокодов создается за один шаг — вместе с переданным набором кодов.
Процесс состоит из трех шагов:
- Создание группы.
- Добавление кодов.
- Сохранение группы как активной.
Если на последнем шаге код конфликтует с кодом другой активной группы (в пересекающемся периоде действия), операция отменяется с ошибкой
409 Conflict.
В группе должен быть хотя бы один код.
Request
POST
https://api.kit.yandex.net/v1/promocode_groups
Body
application/json
{
"title": "Скидка для новых клиентов",
"discount_value": {
"value": "10.00",
"type": "PERCENT"
},
"minimum_order_amount": "1000.00",
"max_usage": 1000,
"max_discount_amount": "500.00",
"one_time_use": true,
"first_order_only": false,
"valid_from": "2024-01-01T00:00:00Z",
"valid_until": "2024-12-31T23:59:59Z",
"binding_mode": "ALL_VARIANTS",
"type": "ORDER",
"group_type": "SINGLE",
"show_in_pdp": false,
"codes": [
"WELCOME10"
]
}
|
Name |
Description |
|
binding_mode |
Type: PromocodeGroupBindingMode Режим применения скидки к товарам. Учитывается только для промокодов типа
Enum: |
|
codes |
Type: string[] Список кодов промокодов. Должен содержать хотя бы один код.
Каждый код — уникальная строка длиной от 3 до 20 символов (заглавные латинские буквы, цифры и спецсимволы Min items: Example
|
|
discount_value |
Type: DiscountValue Информация о значении скидки и о типе скидки. Example
|
|
first_order_only |
Type: boolean Промокод применяется только к первому заказу покупателя. Default: |
|
group_type |
Type: PromocodeGroupType Тип группы промокодов:
Enum: |
|
one_time_use |
Type: boolean Ограничение одноразового использования — каждый код может быть использован не более одного раза. Default: |
|
show_in_pdp |
Type: boolean Показывать ли промокоды группы на странице товара. Применимо только для промокодов типа Default: |
|
title |
Type: string Название группы промокодов. Max length: Example: |
|
type |
Type: PromocodeGroupPromocodeType Тип промокода — к чему применяется скидка:
Enum: |
|
valid_from |
Type: string<date-time> Дата и время начала действия промокодов группы (RFC 3339). Example: |
|
max_discount_amount |
Type: string<decimal> Максимальная сумма скидки за одно применение. Не передавайте поле, чтобы не ограничивать. Example: |
|
max_usage |
Type: integer Максимальное суммарное количество использований кодов группы. Не передавайте поле, чтобы не ограничивать. Min value: |
|
minimum_order_amount |
Type: string<decimal> Минимальная сумма заказа для применения промокода. Не передавайте поле, чтобы не устанавливать ограничение. Example: |
|
valid_until |
Type: string<date-time> Дата и время окончания действия промокодов группы (RFC 3339). Не передавайте поле для бессрочного действия. Example: |
DiscountValue
Информация о значении скидки и о типе скидки.
|
Name |
Description |
|
type |
Type: string Тип скидки:
Enum: |
|
value |
Type: string<decimal>
Example: |
Example
{
"value": "10.00",
"type": "PERCENT"
}
PromocodeGroupBindingMode
Режим применения скидки к товарам. Учитывается только для промокодов типа PRODUCTS:
ALL_VARIANTS— скидка применяется ко всем товарам магазина.SELECTED_VARIANTS— скидка применяется к выбранным товарам.SELECTED_CATEGORIES_COLLECTIONS— скидка применяется к товарам из выбранных категорий и коллекций.
Type: string
Enum: ALL_VARIANTS, SELECTED_VARIANTS, SELECTED_CATEGORIES_COLLECTIONS
PromocodeGroupPromocodeType
Тип промокода — к чему применяется скидка:
ORDER— скидка на всю сумму заказа.PRODUCTS— скидка на конкретные товары (или все товары, в зависимости отbinding_mode).
Type: string
Enum: ORDER, PRODUCTS
PromocodeGroupType
Тип группы промокодов:
SINGLE— группа с одним кодом (традиционный промокод), один код на всех покупателей.MULTIPLE— группа с набором кодов (каждый код предназначен для одного использования — купоны).
Type: string
Enum: SINGLE, MULTIPLE
Responses
201 Created
Группа промокодов успешно создана.
Body
application/json
{
"id": "019b21d9-c5d9-777d-80bd-d67c664bc6d9",
"title": "Скидка для новых клиентов",
"discount_value": {
"value": "10.00",
"type": "PERCENT"
},
"minimum_order_amount": "1000.00",
"max_usage": 1000,
"max_discount_amount": "500.00",
"one_time_use": true,
"first_order_only": false,
"valid_from": "2024-01-01T00:00:00Z",
"valid_until": "2024-12-31T23:59:59Z",
"binding_mode": "ALL_VARIANTS",
"type": "ORDER",
"group_type": "SINGLE",
"show_in_pdp": false,
"status": "ACTIVE",
"usage_count": 42,
"code_count": 100,
"created_at": "2024-01-01T00:00:00Z",
"updated_at": "2024-06-01T12:00:00Z"
}
|
Name |
Description |
|
binding_mode |
Type: PromocodeGroupBindingMode Режим применения скидки к товарам. Учитывается только для промокодов типа
Enum: |
|
code_count |
Type: integer Количество кодов в группе. |
|
created_at |
Type: string<date-time> Дата и время создания группы (RFC 3339). Example: |
|
discount_value |
Type: DiscountValue Информация о значении скидки и о типе скидки. Example
|
|
first_order_only |
Type: boolean Промокод применяется только к первому заказу покупателя. |
|
group_type |
Type: PromocodeGroupType Тип группы промокодов:
Enum: |
|
id |
Type: PromocodeGroupID Уникальный идентификатор группы промокодов. Example: |
|
one_time_use |
Type: boolean Ограничение одноразового использования — каждый код может быть использован не более одного раза. |
|
show_in_pdp |
Type: boolean Показывать ли промокоды группы на странице товара. Применимо только для промокодов типа |
|
status |
Type: PromocodeGroupStatus Статус группы промокодов:
Enum: |
|
title |
Type: string Название группы промокодов. Max length: Example: |
|
type |
Type: PromocodeGroupPromocodeType Тип промокода — к чему применяется скидка:
Enum: |
|
updated_at |
Type: string<date-time> Дата и время последнего обновления группы (RFC 3339). Example: |
|
usage_count |
Type: integer Суммарное количество использований всех кодов группы. |
|
valid_from |
Type: string<date-time> Дата и время начала действия промокодов группы (RFC 3339). Example: |
|
max_discount_amount |
Type: string<decimal> Максимальная сумма скидки за одно применение промокода. Если не указана — ограничений нет. Example: |
|
max_usage |
Type: integer Максимальное суммарное количество использований кодов группы. Если не указано — ограничений нет. Min value: |
|
minimum_order_amount |
Type: string<decimal> Минимальная сумма заказа для применения промокода. Если не указана — ограничений нет. Example: |
|
valid_until |
Type: string<date-time> Дата и время окончания действия промокодов группы (RFC 3339). Если не указана — промокоды действуют бессрочно. Example: |
PromocodeGroupID
Уникальный идентификатор группы промокодов.
Type: string<uuid>
Example: 019b21d9-c5d9-777d-80bd-d67c664bc6d9
PromocodeGroupStatus
Статус группы промокодов:
ACTIVE— группа активна, коды применяются при оформлении заказа.INACTIVE— группа неактивна, коды не применяются.
Type: string
Enum: ACTIVE, INACTIVE
400 Bad Request
Некорректный запрос.
Body
application/json
{
"code": "VALIDATION_ERROR",
"message": "Invalid input",
"trace_id": "00000000000000000000000000000000"
}
|
Name |
Description |
|
code |
Type: string Example: |
|
message |
Type: string Example: |
|
trace_id |
Type: string Уникальный идентификатор запроса для отладки. Example: |
401 Unauthorized
Не авторизован.
Body
application/json
{
"code": "VALIDATION_ERROR",
"message": "Invalid input",
"trace_id": "00000000000000000000000000000000"
}
|
Name |
Description |
|
code |
Type: string Example: |
|
message |
Type: string Example: |
|
trace_id |
Type: string Уникальный идентификатор запроса для отладки. Example: |
409 Conflict
Конфликт — один или несколько кодов уже используются в другой активной группе с пересекающимся периодом действия.
Body
application/json
{
"code": "VALIDATION_ERROR",
"message": "Invalid input",
"trace_id": "00000000000000000000000000000000"
}
|
Name |
Description |
|
code |
Type: string Example: |
|
message |
Type: string Example: |
|
trace_id |
Type: string Уникальный идентификатор запроса для отладки. Example: |
500 Internal Server Error
Внутренняя ошибка сервера.
Body
application/json
{
"code": "VALIDATION_ERROR",
"message": "Invalid input",
"trace_id": "00000000000000000000000000000000"
}
|
Name |
Description |
|
code |
Type: string Example: |
|
message |
Type: string Example: |
|
trace_id |
Type: string Уникальный идентификатор запроса для отладки. Example: |