com.scayle.adminapi.model.Promotion Maven / Gradle / Ivy
package com.scayle.adminapi.model;
import java.util.List;
import java.util.Map;
import com.google.gson.annotations.SerializedName;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class Promotion implements ApiObjectInterface {
/**
* Promotion id
*/
@SerializedName("id")
String id;
/**
* Promotion version
*/
@SerializedName("version")
String version;
/**
* Name of the promotion
*/
@SerializedName("name")
String name;
/**
* Display name localisation
*/
@SerializedName("displayName")
Map displayName;
/**
* The status of the promotion
*/
@SerializedName("status")
String status;
/**
* Promotion activation type
*/
@SerializedName("activationType")
String activationType;
/**
* Promotion application level
*/
@SerializedName("level")
String level;
/**
* Time range when the promotion is active
*/
@SerializedName("schedule")
PromotionSchedule schedule;
/**
* The list of company ids where the promotion takes place
*/
@SerializedName("companyIds")
List companyIds;
/**
* The list of shop country ids where the promotion takes place
*/
@SerializedName("shopCountryIds")
PromotionShopCountryId shopCountryIds;
/**
* Sibling promotions allow/block other promotions from being used together with this one
*/
@SerializedName("siblingPromotions")
PromotionSiblingPromotion siblingPromotions;
/**
* Audiences allow/block list. Use it to restrict promotions to specific customer groups
*/
@SerializedName("audiences")
PromotionAudience audiences;
/**
* The effect that will be applied if all conditions are satisfied
*/
@SerializedName("effect")
PromotionEffect effect;
/**
* The list of conditions ('payload.*') that determines whether the promotion is applicable or not
*/
@SerializedName("conditions")
List conditions;
/**
* Priority of the promotion
*/
@SerializedName("priority")
Integer priority;
/**
* Additional data of the promotion. Can be legal text or some other info, that will be shown to customer
*/
@SerializedName("customData")
Object customData;
/**
* The list of promotion tiers. Tiers must be sent in ascending order
*/
@SerializedName("tiers")
List tiers;
/**
*
*/
@SerializedName("usageLimit")
PromotionUsageLimit usageLimit;
}