Saltar al contenido principal

getDiscountByMarker

Obtener un solo descuento por su marcador.

Descripción​

Obtiene un descuento por su marcador y se resuelve en un IDiscountsEntity.

.getDiscountByMarker(

,

);

Esquema de parámetros​

Esquema

marker(required): string
Marcador del descuento.
ejemplo: "discount_storage"

langCode: string
Código de idioma. Predeterminado: el langCode pasado a defineOneEntry ("en_US" si no se pasó ninguno).
ejemplo: "en_US"

Ejemplos​

Ejemplo mínimo​

const response = await Discounts.getDiscountByMarker('example_discount');

Ejemplo con parámetros opcionales​

const response = await Discounts.getDiscountByMarker('example_discount', 'en_US');

Ejemplo de respuesta​

{
"id": 1,
"type": "DISCOUNT",
"attributeSetId": 31,
"conditionLogic": "AND",
"discountValue": {
"value": 10,
"maxAmount": 5,
"discountType": "FIXED_AMOUNT",
"applicability": "TO_PRODUCT"
},
"exclusions": null,
"gifts": null,
"giftsReplaceCartItems": false,
"userGroups": null,
"userExclusions": null,
"localizeInfos": {
"title": "Example discount"
},
"version": 0,
"total": "1",
"identifier": "example_discount",
"startDate": "2026-03-14T14:55:19.928Z",
"endDate": "2026-07-31T13:55:24.647Z",
"attributeValues": {
"example_discount": {
"type": "string",
"value": "test value",
"isIcon": false,
"position": 0,
"additionalFields": {},
"isProductPreview": false
}
},
"conditions": [],
"bonusEvent": null,
"position": 1
}

Esquema de respuesta​

Esquema: IDiscountsEntity

id: number
ID del descuento.

attributeSetId: number | null
ID del conjunto de atributos vinculado al descuento, o null si no hay ninguno.

localizeInfos: ILocalizeInfo
Nombre localizado del descuento.

version: number
Número de versión del descuento.

identifier: string
Marcador del descuento.

type: IDiscountType
El tipo del descuento.

startDate: string
La fecha de inicio del descuento.

endDate: string
Fecha de finalización del descuento.

discountValue: IDiscountValue
Valor del descuento con su tipo y límites de importe.

discountValue.applicability: 'TO_PRODUCT' | 'TO_ORDER'
A qué se aplica el descuento.
ejemplo: "TO_PRODUCT"

discountValue.discountType: 'FIXED_AMOUNT' | 'PERCENT'
Cómo se aplica el valor del descuento.
ejemplo: "FIXED_AMOUNT"

discountValue.value: number
Importe del descuento (unidades de moneda para FIXED_AMOUNT, puntos porcentuales para PERCENT).
ejemplo: 10

discountValue.maxAmount: number | null
Límite del descuento absoluto aplicado, o null si no tiene límite.
ejemplo: 5

conditionLogic: string
Cómo se combinan las condiciones: AND u OR.

conditions: IDiscountCondition[]
Condiciones del descuento.

conditions.type: string
El tipo de condición del descuento.

conditions.value: string
El valor asociado a la condición del descuento.

exclusions: Record<string, unknown> | null
Exclusiones del descuento.

gifts: Record<string, unknown> | null
Regalos del descuento.

giftsReplaceCartItems: boolean
Indica si los regalos sustituyen a los elementos del carrito.

userGroups: Record<string, unknown> | null
Grupos de usuarios a los que se aplica el descuento.

userExclusions: Record<string, unknown> | null
Usuarios excluidos del descuento.

attributeValues: IAttributeValues
Valores de atributos del descuento.

attributeSetIdentifier: string
Marcador del conjunto de atributos.

bonusEvent: Record<string, unknown>
Configuración del evento de bonificación.

position: number
Posición usada para ordenar.
ejemplo: 1

total: number | string
Recuento interno de filas que la API devuelve por error ("1" en un único descuento). No te bases en él.
ejemplo: "1"

distance: number
Distancia coseno a la consulta. El endpoint de búsqueda semántica (vectorial) la devuelve en cada elemento.
ejemplo: 0.12