# Crear una promoción única de ofertas por catálogo

Crea una promoción de oferta exclusiva de catálogo.

Endpoint: POST /v3/project/{project_id}/admin/unique_catalog_offer
Version: 2.0.0
Security: basicAuth

## Path parameters:

  - `project_id` (integer, required)
    ID del proyecto. Encontrará este parámetro en su [Cuenta del editor](https://publisher.xsolla.com/0/projects/0/) junto al nombre del proyecto y en la barra de direcciones del navegador cuando se trabaja en un proyecto. La URL tiene el siguiente formato: `https://publisher.xsolla.com/<merchant_id>/projects/<project_id>`.

## Request fields (application/json):

  - `external_id` (string, required)
    ID único de promoción. El `external_id` solo puede contener caracteres alfanuméricos latinos en minúsculas y mayúsculas, puntos, guiones y guiones bajos.
    Example: coupon_external_id

  - `date_start` (string | null)
    Fecha de inicio de la promoción.

  - `date_end` (string | null)
    Fecha de finalización de su promoción. Puede ser `null`. Si la `date_end` es `null`, la promoción será ilimitada en el tiempo.

  - `items` (array)
    Una lista de artículos SKU que están disponibles después de utilizar la oferta única de catálogo.

  - `redeem_user_limit` (integer | null)
    Limita el número total de cupones canjeados por un mismo usuario.
    Example: 10

  - `redeem_code_limit` (integer | null)
    Número de canjes por cada código.
    Example: 10

  - `redeem_total_limit` (integer | null)
    Limita el número total de cupones.
    Example: 10

## Response 201 fields (application/json):

  - `external_id` (string)
    ID único de promoción. El `external_id` solo puede contener caracteres alfanuméricos latinos en minúsculas y mayúsculas, puntos, guiones y guiones bajos.
    Example: coupon_external_id

## Response 401 fields (application/json):

  - `statusCode` (integer)
    Example: 401

  - `errorCode` (integer)
    Example: 1020

  - `errorMessage` (string)
    Example: [0401-1020]: Error in Authentication method occurred

## Response 422 fields (application/json):

  - `statusCode` (integer)
    Example: 422

  - `errorCode` (integer)
    Example: 1102

  - `errorMessage` (string)
    Example: [0401-1102]: Unprocessable Entity. The property `external_id` is required

