
## Promotions
---

### PromotionResponse
**Declared In:**  
Headers/SNRPromotionResponse.h  
  
**Related To:**  
[PromotionResponseMetadata](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotionresponsemetadata)  
[Promotion](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotion)  
  
**Inherits From:**  
[BaseModel](/developers/mobile-sdk/class-reference/ios/miscellaneous#basemodel)  
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-469">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-469-0" data-tab-group="tabgrp-469" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-469-1" data-tab-group="tabgrp-469">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-469-0" data-tab-group="tabgrp-469" data-tab-active="true">

```Swift
class PromotionResponse: BaseModel
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-469-1" data-tab-group="tabgrp-469">

```Objective-C
@interface SNRPromotionResponse : SNRBaseModel
```

</div>
</div>

  
**Properties:**  
| Property | Type | Optional | Description |
| --- | --- | --- | --- |
| **metadata** | [PromotionResponseMetadata](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotionresponsemetadata) | yes | Metadata of the promotion response |
| **items** | [[Promotion]](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers/#promotion) | no | List of promotion items |
  

<div class="admonition admonition-important"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

All properties are read-only.

</div></div></div>


---
---

### PromotionResponseMetadata
**Declared In:**  
Headers/SNRPromotionResponseMetadata.h  
  
**Related To:**  
[PromotionResponse](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotionresponse)  
  
**Inherits From:**  
[BaseModel](/developers/mobile-sdk/class-reference/ios/miscellaneous#basemodel)
  
**Declaration:**

<div class="content-tabs code-tabs" data-tab-group="tabgrp-470">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-470-0" data-tab-group="tabgrp-470" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-470-1" data-tab-group="tabgrp-470">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-470-0" data-tab-group="tabgrp-470" data-tab-active="true">

```Swift
class PromotionResponseMetadata: BaseModel
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-470-1" data-tab-group="tabgrp-470">

```Objective-C
@interface SNRPromotionResponseMetadata : SNRBaseModel
```

</div>
</div>

  
**Properties:**
| Property | Type | Optional | Description |
| --- | --- | --- | --- |
| **totalCount** | Int | no | Total count of promotions |
| **totalPages** | Int | no | Total count of pages |
| **page** | Int | no | Current page |
| **limit** | Int | no | Limit of promotions per page |
| **code** | Int | no | HTTP code of the response |
  

<div class="admonition admonition-important"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

All properties are read-only.

</div></div></div>


---
---

### Promotion
**Declared In:**  
Headers/SNRPromotion.h  
  
**Related To:**  
[PromotionResponse](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotionresponse)  
[PromotionStatus](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotionstatus)  
[PromotionType](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotiontype)  
[PromotionDetails](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotiondetails)  
[PromotionItemScope](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotionitemscope) 
[PromotionDiscountType](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotiondiscounttype)  
[PromotionDiscountMode](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotiondiscountmode)  
[PromotionDiscountModeDetails](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotiondiscountmodedetails)  
[PromotionImage](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotionimage)  
  
**Inherits From:**  
[BaseModel](/developers/mobile-sdk/class-reference/ios/miscellaneous#basemodel)  
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-471">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-471-0" data-tab-group="tabgrp-471" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-471-1" data-tab-group="tabgrp-471">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-471-0" data-tab-group="tabgrp-471" data-tab-active="true">

```Swift
class Promotion: BaseModel
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-471-1" data-tab-group="tabgrp-471">

```Objective-C
@interface SNRPromotion : SNRBaseModel
```

</div>
</div>

  
**Properties:**
| Property | Type | Optional | Description |
| --- | --- | --- | --- |
| **uuid** | String | no | Promotion's UUID |
| **code** | String | no | Promotion's code |
| **status** | [PromotionStatus](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotionstatus) | no | Promotion's status |
| **type** | [PromotionType](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotiontype) | no | Promotion's type |
| **details** | [PromotionDetails](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotiondetails) | yes | Promotion's details |
| **redeemLimitPerClient** | NSNumber | yes | Redemption limit per customer |
| **redeemQuantityPerActivation** | NSNumber | yes | Redemption quantity per activation |
| **currentRedeemedQuantity** | NSNumber | no | Current redemption quantity |
| **currentRedeemLimit** | NSNumber | no | Current redemption limit |
| **activationCounter** | NSNumber | no | Promotion's activation counter |
| **possibleRedeems** | NSNumber | no | Maximum number of promotion redemptions |
| **requireRedeemedPoints** | NSNumber | yes | Required redeemed points |
| **discountType** | [PromotionDiscountType](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotiondiscounttype) | no |  Discount type |
| **discountValue** | NSNumber | no | Discount value |
| **discountMode** | [PromotionDiscountMode](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotiondiscountmode) | no | Discount mode |
| **discountModeDetails** | [PromotionDiscountModeDetails](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotiondiscountmodedetails) | yes | Discount mode details |
| **priority** | NSNumber | no | Promotion's priority |
| **price** | NSNumber | no | Item price |
| **itemScope** | [PromotionItemScope](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotionitemscope) | no | Promotion's item scope |
| **minBasketValue** | NSNumber | yes | Minimum basket value |
| **maxBasketValue** | NSNumber | yes | Maximum basket value  |
| **name** | String | no | Promotion's name |
| **headline** | String | yes | Promotion's headline |
| **descriptionText** | String | yes | Promotion's description |
| **images** | [[PromotionImage](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotionimage)] | yes | List of promotion images |
| **startAt** | Date | yes | Start time of a promotion |
| **expireAt** | Date | yes | Expiration time of the promotion |
| **lastingAt** | Date | yes | Date when the promotion expires for the current profile |
| **lastingTime** | NSNumber | yes | Duration of the promotion in seconds |
| **displayFrom** | String | yes | Date as a string when the promotion starts being displayed |
| **displayTo** | String | yes | Date as a string when the promotions ends being displayed |
| **catalogIndexItems** | [String] | yes | List of item indexes |
| **params** | [AnyHashable: Any] | yes | Promotion's custom parameters |
| **tags** | [AnyObject] | yes | Promotion's custom tags |
  

<div class="admonition admonition-important"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

All properties are read-only.

</div></div></div>


---
---

### PromotionStatus
**Declared In:**  
Headers/SNRPromotionStatus.h  
  
**Related To:**  
[Promotion](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotion)  
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-472">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-472-0" data-tab-group="tabgrp-472" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-472-1" data-tab-group="tabgrp-472">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-472-0" data-tab-group="tabgrp-472" data-tab-active="true">

```Swift
enum PromotionStatus: Int {
    none,
    active,
    assigned,
    redeemed
}
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-472-1" data-tab-group="tabgrp-472">

```Objective-C
typedef NS_ENUM(NSUInteger, SNRPromotionStatus) {
    SNRPromotionStatusNone = 0,
    SNRPromotionStatusActive,
    SNRPromotionStatusAssigned,
    SNRPromotionStatusRedeemed
}
```

</div>
</div>

  
**Functions:**
Converts from **PromotionStatus** to **String**.

<div class="content-tabs code-tabs" data-tab-group="tabgrp-473">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-473-0" data-tab-group="tabgrp-473" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-473-1" data-tab-group="tabgrp-473">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-473-0" data-tab-group="tabgrp-473" data-tab-active="true">

```Swift
func SNR_PromotionStatusToString(_: PromotionStatus) -> String
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-473-1" data-tab-group="tabgrp-473">

```Objective-C
NSString * SNR_PromotionStatusToString(SNRPromotionStatus type)
```

</div>
</div>


---

Converts from **String** to **PromotionStatus**.

<div class="content-tabs code-tabs" data-tab-group="tabgrp-474">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-474-0" data-tab-group="tabgrp-474" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-474-1" data-tab-group="tabgrp-474">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-474-0" data-tab-group="tabgrp-474" data-tab-active="true">

```Swift
func SNR_StringToPromotionStatus(_: String) -> PromotionStatus
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-474-1" data-tab-group="tabgrp-474">

```Objective-C
SNRPromotionStatus SNR_StringToPromotionStatus(NSString * _Nullable string)
```

</div>
</div>


**Note:**  
The following string constants can be used in [PromotionsApiQuery](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotionsapiquery) object:
- SNR_PROMOTION_STATUS_NONE
- SNR_PROMOTION_STATUS_ACTIVE
- SNR_PROMOTION_STATUS_ASSIGNED
- SNR_PROMOTION_STATUS_REDEEMED

---
---

### PromotionType 
**Declared In:**  
Headers/SNRPromotionType.h  
  
**Related To:**  
[Promotion](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotion)  
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-475">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-475-0" data-tab-group="tabgrp-475" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-475-1" data-tab-group="tabgrp-475">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-475-0" data-tab-group="tabgrp-475" data-tab-active="true">

```Swift
enum PromotionType: Int {
    unknown,
    membersOnly,
    custom,
    general,
    handbill
}
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-475-1" data-tab-group="tabgrp-475">

```Objective-C
typedef NS_ENUM(NSUInteger, SNRPromotionType) {
    SNRPromotionTypeUnknown = 0,
    SNRPromotionTypeMembersOnly,
    SNRPromotionTypeCustom,
    SNRPromotionTypeGeneral,
    SNRPromotionTypeHandbill
}
```

</div>
</div>

  
**Functions:**
Converts from **PromotionType** to **String**.

<div class="content-tabs code-tabs" data-tab-group="tabgrp-476">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-476-0" data-tab-group="tabgrp-476" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-476-1" data-tab-group="tabgrp-476">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-476-0" data-tab-group="tabgrp-476" data-tab-active="true">

```Swift
func SNR_PromotionTypeToString(_: PromotionType) -> String
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-476-1" data-tab-group="tabgrp-476">

```Objective-C
NSString * SNR_PromotionTypeToString(SNRPromotionType type)
```

</div>
</div>


---

Converts from **String** to **PromotionType**.

<div class="content-tabs code-tabs" data-tab-group="tabgrp-477">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-477-0" data-tab-group="tabgrp-477" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-477-1" data-tab-group="tabgrp-477">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-477-0" data-tab-group="tabgrp-477" data-tab-active="true">

```Swift
func SNR_StringToPromotionType(_: String) -> PromotionType
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-477-1" data-tab-group="tabgrp-477">

```Objective-C
SNRPromotionType SNR_StringToPromotionType(NSString * _Nullable string)
```

</div>
</div>


**Note:**  
The following string constants can be used in [PromotionsApiQuery](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotionsapiquery) object:
- SNR_PROMOTION_TYPE_UNKNOWN
- SNR_PROMOTION_TYPE_MEMBERS_ONLY
- SNR_PROMOTION_TYPE_CUSTOM
- SNR_PROMOTION_TYPE_GENERAL

---
---

### PromotionItemScope
**Declared In:**  
Headers/SNRPromotionItemScope.h  
  
**Related To:**  
[Promotion](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotion)  
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-478">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-478-0" data-tab-group="tabgrp-478" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-478-1" data-tab-group="tabgrp-478">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-478-0" data-tab-group="tabgrp-478" data-tab-active="true">

```Swift
enum PromotionItemScope: Int {
    lineItem,
    basket
}
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-478-1" data-tab-group="tabgrp-478">

```Objective-C
typedef NS_ENUM(NSUInteger, SNRPromotionItemScope) {
    SNRPromotionItemScopeLineItem = 0,
    SNRPromotionItemScopeBasket
}
```

</div>
</div>

  
**Functions:**
Converts from **PromotionItemScope** to **String**.

<div class="content-tabs code-tabs" data-tab-group="tabgrp-479">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-479-0" data-tab-group="tabgrp-479" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-479-1" data-tab-group="tabgrp-479">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-479-0" data-tab-group="tabgrp-479" data-tab-active="true">

```Swift
func SNR_PromotionItemScopeToString(_: PromotionItemScope) -> String
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-479-1" data-tab-group="tabgrp-479">

```Objective-C
NSString * SNR_PromotionItemScopeToString(SNRPromotionItemScope scope)
```

</div>
</div>


---

Converts from **String** to **PromotionItemScope**.

<div class="content-tabs code-tabs" data-tab-group="tabgrp-480">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-480-0" data-tab-group="tabgrp-480" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-480-1" data-tab-group="tabgrp-480">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-480-0" data-tab-group="tabgrp-480" data-tab-active="true">

```Swift
func SNR_StringToPromotionItemScope(_: String) -> PromotionItemScope
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-480-1" data-tab-group="tabgrp-480">

```Objective-C
SNRPromotionItemScope SNR_StringToPromotionItemScope(NSString * _Nullable string)
```

</div>
</div>


---
---

### PromotionDetails
**Declared In:**  
Headers/SNRPromotionDetails.h  
  
**Related To:**  
[Promotion](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotion)  
[PromotionDiscountTypeDetails](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotiondiscounttypedetails)  
  
**Inherits From:**  
[BaseModel](/developers/mobile-sdk/class-reference/ios/miscellaneous#basemodel)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-481">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-481-0" data-tab-group="tabgrp-481" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-481-1" data-tab-group="tabgrp-481">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-481-0" data-tab-group="tabgrp-481" data-tab-active="true">

```Swift
class PromotionDetails: BaseModel
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-481-1" data-tab-group="tabgrp-481">

```Objective-C
@interface SNRPromotionDetails : SNRBaseModel
```

</div>
</div>

  
**Properties:**  
| Property | Type | Optional | Description |
| --- | --- | --- | --- |
| **discountType** | [PromotionDiscountTypeDetails](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotiondiscounttypedetails) | no | Discount details |
  

<div class="admonition admonition-important"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

All properties are read-only.

</div></div></div>


---
---

### PromotionDiscountTypeDetails
**Declared In:**  
Headers/SNRPromotionDiscountTypeDetails.h  
  
**Related To:**  
[PromotionDetails](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotiondetails)  
  
**Inherits From:**  
[BaseModel](/developers/mobile-sdk/class-reference/ios/miscellaneous#basemodel)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-482">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-482-0" data-tab-group="tabgrp-482" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-482-1" data-tab-group="tabgrp-482">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-482-0" data-tab-group="tabgrp-482" data-tab-active="true">

```Swift
class PromotionDiscountTypeDetails: BaseModel
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-482-1" data-tab-group="tabgrp-482">

```Objective-C
@interface SNRPromotionDiscountTypeDetails : SNRBaseModel
```

</div>
</div>

  
**Properties:**
| Property | Type | Optional | Description |
| --- | --- | --- | --- |
| **name** | String | no | Discount's name |
| **outerScope** | Bool | no | When `true`, the items required to trigger the promotion are different than the items included in that promotion. |
| **requiredItemsCount** | Int | no | Number of items required to qualify for the discount |
| **discountedItemsCount** | Int | no | Number of discounted items |
  

<div class="admonition admonition-important"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

All properties are read-only.

</div></div></div>


---
---

### PromotionDiscountMode
**Declared In:**  
Headers/SNRPromotionDiscountType.h  
  
**Related To:**  
[Promotion](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotion)  
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-483">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-483-0" data-tab-group="tabgrp-483" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-483-1" data-tab-group="tabgrp-483">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-483-0" data-tab-group="tabgrp-483" data-tab-active="true">

```Swift
enum PromotionDiscountMode: Int {
    static,
    step
}
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-483-1" data-tab-group="tabgrp-483">

```Objective-C
typedef NS_ENUM(NSUInteger, SNRPromotionDiscountMode) {
    SNRPromotionDiscountModeStatic = 0,
    SNRPromotionDiscountModeStep
}
```

</div>
</div>

  
**Functions:**
Converts from **PromotionDiscountMode** to **String**.

<div class="content-tabs code-tabs" data-tab-group="tabgrp-484">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-484-0" data-tab-group="tabgrp-484" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-484-1" data-tab-group="tabgrp-484">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-484-0" data-tab-group="tabgrp-484" data-tab-active="true">

```Swift
func SNR_PromotionDiscountModeToString(_: PromotionDiscountMode) -> String
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-484-1" data-tab-group="tabgrp-484">

```Objective-C
NSString * SNR_PromotionDiscountModeToString(SNRPromotionDiscountMode mode)
```

</div>
</div>


---

Converts from **String** to **PromotionDiscountMode**.

<div class="content-tabs code-tabs" data-tab-group="tabgrp-485">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-485-0" data-tab-group="tabgrp-485" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-485-1" data-tab-group="tabgrp-485">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-485-0" data-tab-group="tabgrp-485" data-tab-active="true">

```Swift
func SNR_StringToPromotionDiscountMode(_: String) -> PromotionDiscountMode
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-485-1" data-tab-group="tabgrp-485">

```Objective-C
SNRPromotionDiscountMode SNR_StringToPromotionDiscountMode(NSString * _Nullable string)
```

</div>
</div>


---
---

### PromotionDiscountModeDetails
**Declared In:**  
Headers/SNRPromotionDiscountModeDetails.h  
  
**Related To:**  
[Promotion](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotion)  
[PromotionDiscountStep](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotiondiscountstep)  
  
**Inherits From:**  
[BaseModel](/developers/mobile-sdk/class-reference/ios/miscellaneous#basemodel)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-486">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-486-0" data-tab-group="tabgrp-486" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-486-1" data-tab-group="tabgrp-486">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-486-0" data-tab-group="tabgrp-486" data-tab-active="true">

```Swift
class PromotionDiscountModeDetails: BaseModel
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-486-1" data-tab-group="tabgrp-486">

```Objective-C
@interface SNRPromotionDiscountModeDetails : SNRBaseModel
```

</div>
</div>

  
**Properties:**  
| Property | Type | Optional | Description |
| --- | --- | --- | --- |
| **discountSteps** | [[SNRPromotionDiscountStep]](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers/#promotion) | no | List of discount steps |
| **discountUsageTrigger** | [PromotionDiscountUsageTrigger](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotiondiscountusagetrigger) | no | Usage trigger for the discount |
  

<div class="admonition admonition-important"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

All properties are read-only.

</div></div></div>


---
---

### PromotionDiscountStep
**Declared In:**  
Headers/SNRPromotionDiscountStep.h   
  
**Related To:**  
[PromotionDiscountModeDetails](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotiondiscountmodedetails)  
  
**Inherits From:**  
[BaseModel](/developers/mobile-sdk/class-reference/ios/miscellaneous#basemodel)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-487">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-487-0" data-tab-group="tabgrp-487" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-487-1" data-tab-group="tabgrp-487">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-487-0" data-tab-group="tabgrp-487" data-tab-active="true">

```Swift
class PromotionDiscountStep: BaseModel
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-487-1" data-tab-group="tabgrp-487">

```Objective-C
@interface SNRPromotionDiscountStep : SNRBaseModel
```

</div>
</div>

  
**Properties:**  
| Property | Type | Optional | Description |
| --- | --- | --- | --- |
| **discountValue** | NSNumber | no | Value of the discount |
| **usageThreshold** | NSNumber | no | Usage threshold |
  

<div class="admonition admonition-important"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

All properties are read-only.

</div></div></div>


---
---

### PromotionDiscountUsageTrigger
**Declared In:**  
Headers/SNRPromotionDiscountUsageTrigger.h  
  
**Related To:**  
[PromotionDiscountModeDetails](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotiondiscountmodedetails)  
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-488">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-488-0" data-tab-group="tabgrp-488" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-488-1" data-tab-group="tabgrp-488">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-488-0" data-tab-group="tabgrp-488" data-tab-active="true">

```Swift
enum PromotionDiscountUsageTrigger: Int {
    transaction,
    redeem
}
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-488-1" data-tab-group="tabgrp-488">

```Objective-C
typedef NS_ENUM(NSUInteger, SNRPromotionDiscountUsageTrigger) {
SNRPromotionDiscountUsageTriggerTransaction = 0,
SNRPromotionDiscountUsageTriggerRedeem
}
```

</div>
</div>

  
**Functions:**
Converts from **PromotionDiscountUsageTrigger** to **String**.

<div class="content-tabs code-tabs" data-tab-group="tabgrp-489">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-489-0" data-tab-group="tabgrp-489" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-489-1" data-tab-group="tabgrp-489">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-489-0" data-tab-group="tabgrp-489" data-tab-active="true">

```Swift
func SNR_PromotionDiscountUsageTriggerToString(_: PromotionDiscountUsageTrigger) -> String
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-489-1" data-tab-group="tabgrp-489">

```Objective-C
NSString * SNR_PromotionDiscountUsageTriggerToString(SNRPromotionDiscountUsageTrigger trigger)
```

</div>
</div>


---

Converts from **String** to **PromotionDiscountUsageTrigger**.

<div class="content-tabs code-tabs" data-tab-group="tabgrp-490">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-490-0" data-tab-group="tabgrp-490" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-490-1" data-tab-group="tabgrp-490">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-490-0" data-tab-group="tabgrp-490" data-tab-active="true">

```Swift
func SNR_StringToPromotionDiscountUsageTrigger(_: String) -> PromotionDiscountUsageTrigger
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-490-1" data-tab-group="tabgrp-490">

```Objective-C
SNRPromotionDiscountUsageTrigger SNR_StringToPromotionDiscountUsageTrigger(NSString * _Nullable string)
```

</div>
</div>


---
---

### PromotionImage 
**Declared In:**  
Headers/SNRPromotion.h  
  
**Related To:**  
[Promotion](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotion)  
[PromotionImageType](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotionimagetype)  
  
**Inherits From:**  
[BaseModel](/developers/mobile-sdk/class-reference/ios/miscellaneous#basemodel)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-491">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-491-0" data-tab-group="tabgrp-491" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-491-1" data-tab-group="tabgrp-491">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-491-0" data-tab-group="tabgrp-491" data-tab-active="true">

```Swift
class PromotionImage: BaseModel
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-491-1" data-tab-group="tabgrp-491">

```Objective-C
@interface SNRPromotionImage : SNRBaseModel
```

</div>
</div>

  
**Properties:**  
| Property | Type | Optional | Description |
| --- | --- | --- | --- |
| **url** | String | no | Image's URL |
| **type** | [PromotionImageType](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotionimagetype) | no | Image type |
  

<div class="admonition admonition-important"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

All properties are read-only.

</div></div></div>


---
---

### PromotionImageType
**Declared In:**  
Headers/SNRPromotionImageType.h
  
**Related To:**  
[Promotion](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotion)  
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-492">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-492-0" data-tab-group="tabgrp-492" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-492-1" data-tab-group="tabgrp-492">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-492-0" data-tab-group="tabgrp-492" data-tab-active="true">

```Swift
enum PromotionImageType: Int {
    image,
    thumbnail
}
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-492-1" data-tab-group="tabgrp-492">

```Objective-C
typedef NS_ENUM(NSUInteger, SNRPromotionImageType) {
    SNRPromotionImageTypeImage = 0,
    SNRPromotionImageTypeThumbnail
}
```

</div>
</div>

  
**Functions:**
Converts from **PromotionImageType** to **String**.

<div class="content-tabs code-tabs" data-tab-group="tabgrp-493">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-493-0" data-tab-group="tabgrp-493" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-493-1" data-tab-group="tabgrp-493">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-493-0" data-tab-group="tabgrp-493" data-tab-active="true">

```Swift
func SNR_PromotionImageTypeToString(_: PromotionImageType) -> String
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-493-1" data-tab-group="tabgrp-493">

```Objective-C
NSString * SNR_PromotionImageTypeToString(SNRPromotionImageType type)
```

</div>
</div>


---

Converts from **String** to **PromotionImageType**.

<div class="content-tabs code-tabs" data-tab-group="tabgrp-494">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-494-0" data-tab-group="tabgrp-494" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-494-1" data-tab-group="tabgrp-494">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-494-0" data-tab-group="tabgrp-494" data-tab-active="true">

```Swift
func SNR_StringToPromotionImageType(_: String) -> PromotionImageType
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-494-1" data-tab-group="tabgrp-494">

```Objective-C
SNRPromotionImageType SNR_StringToPromotionImageType(NSString * _Nullable string)
```

</div>
</div>


---
---

### PromotionDiscountType
**Declared In:**  
Headers/SNRPromotionDiscountType.h  
  
**Related To:**  
[Promotion](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotion)  
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-495">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-495-0" data-tab-group="tabgrp-495" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-495-1" data-tab-group="tabgrp-495">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-495-0" data-tab-group="tabgrp-495" data-tab-active="true">

```Swift
enum PromotionDiscountType: Int {
    none,
    percent,
    amount,
    2For1,
    points,
    multibuy,
    exactPrice
}
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-495-1" data-tab-group="tabgrp-495">

```Objective-C
typedef NS_ENUM(NSUInteger, SNRPromotionDiscountType) {
    SNRPromotionDiscountTypeNone = 0,
    SNRPromotionDiscountTypePercent,
    SNRPromotionDiscountTypeAmount,
    SNRPromotionDiscountType2For1,
    SNRPromotionDiscountTypePoints,
    SNRPromotionDiscountTypeMultibuy,
    SNRPromotionDiscountTypeExactPrice
}
```

</div>
</div>

  
**Functions:**
Converts from **PromotionDiscountType** to **String**.

<div class="content-tabs code-tabs" data-tab-group="tabgrp-496">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-496-0" data-tab-group="tabgrp-496" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-496-1" data-tab-group="tabgrp-496">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-496-0" data-tab-group="tabgrp-496" data-tab-active="true">

```Swift
func SNR_PromotionDiscountTypeToString(_: PromotionDiscountType) -> String
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-496-1" data-tab-group="tabgrp-496">

```Objective-C
NSString * SNR_PromotionDiscountTypeToString(SNRPromotionDiscountType type)
```

</div>
</div>


---

Converts from **String** to **PromotionDiscountType**.

<div class="content-tabs code-tabs" data-tab-group="tabgrp-497">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-497-0" data-tab-group="tabgrp-497" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-497-1" data-tab-group="tabgrp-497">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-497-0" data-tab-group="tabgrp-497" data-tab-active="true">

```Swift
func SNR_StringToPromotionDiscountType(_: String) -> PromotionDiscountType
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-497-1" data-tab-group="tabgrp-497">

```Objective-C
SNRPromotionDiscountType SNR_StringToPromotionDiscountType(NSString * _Nullable string)
```

</div>
</div>


---
---

### PromotionIdentifier
**Declared In:**  
Headers/SNRPromotionIdentifier.h  
  
**Inherits From:**  
[BaseModel](/developers/mobile-sdk/class-reference/ios/miscellaneous#basemodel)  
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-498">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-498-0" data-tab-group="tabgrp-498" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-498-1" data-tab-group="tabgrp-498">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-498-0" data-tab-group="tabgrp-498" data-tab-active="true">

```Swift
class PromotionIdentifier: BaseModel
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-498-1" data-tab-group="tabgrp-498">

```Objective-C
@interface SNRPromotionIdentifier : SNRBaseModel
```

</div>
</div>

  
**Initializers:**

<div class="content-tabs code-tabs" data-tab-group="tabgrp-499">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-499-0" data-tab-group="tabgrp-499" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-499-1" data-tab-group="tabgrp-499">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-499-0" data-tab-group="tabgrp-499" data-tab-active="true">

```Swift
init(uuid: String)
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-499-1" data-tab-group="tabgrp-499">

```Objective-C
- (instancetype)initWithUUID:(NSString *)UUID
```

</div>
</div>


---


<div class="content-tabs code-tabs" data-tab-group="tabgrp-500">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-500-0" data-tab-group="tabgrp-500" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-500-1" data-tab-group="tabgrp-500">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-500-0" data-tab-group="tabgrp-500" data-tab-active="true">

```Swift
init(code: String)
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-500-1" data-tab-group="tabgrp-500">

```Objective-C
- (instancetype)initWithCode:(NSString *)code
```

</div>
</div>


---
---

### PromotionsApiQuery
Object for setting parameters to facilitate fetching promotions from the API.
  
**Declared In:**  
Headers/SNRPromotionsApiQuery.h
  
**Related To:**  
[PromotionResponse](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotionresponse)  
[Promotion](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#promotion)  
[ApiQuerySortingOrderString](/developers/mobile-sdk/class-reference/ios/miscellaneous#apiquerysortingorder)
  
**Inherits From:**  
[NSObject](https://developer.apple.com/documentation/objectivec/nsobject)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-501">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-501-0" data-tab-group="tabgrp-501" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-501-1" data-tab-group="tabgrp-501">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-501-0" data-tab-group="tabgrp-501" data-tab-active="true">

```Swift
class PromotionsApiQuery: NSObject
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-501-1" data-tab-group="tabgrp-501">

```Objective-C
@interface SNRPromotionsApiQuery : NSObject
```

</div>
</div>

  
**Properties:**
| Property | Type | Optional | Default | Description |
| --- | --- | --- | --- | --- |
| **statuses** | [[SNRPromotionStatusString]](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers/#promotionstatus) | no  | [] | List of promotion statuses for query |
| **types** | [[SNRPromotionTypeString]](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers/#promotiontype) | no  | [] | List of promotion types for query |
| **sorting** | [[SNRPromotionSortingKey: SNRApiQuerySortingOrderString]] | yes | [] | Specifies sorting rules for items in the response |
| **limit** | Int | no | 100 | Limit of items per page in the response |
| **page** | Int | no | 1 | Page number |
| **includeMeta** | Bool | no | false | Specifies if meta data should be included in the response |
  

<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

- Check the list of promotion sorting keys available in [Loyalty - Promotion sorting options](/developers/mobile-sdk/loyalty#promotion-sorting-options) section.
- See [ApiQuerySortingOrderString](/developers/mobile-sdk/class-reference/ios/miscellaneous#apiquerysortingorder) to check ordering options.

</div></div></div>


**Initializers:**

<div class="content-tabs code-tabs" data-tab-group="tabgrp-502">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-502-0" data-tab-group="tabgrp-502" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-502-1" data-tab-group="tabgrp-502">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-502-0" data-tab-group="tabgrp-502" data-tab-active="true">

```Swift
init()
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-502-1" data-tab-group="tabgrp-502">

```Objective-C
- (instancetype)init
```

</div>
</div>


---
---

## Vouchers
---

### AssignVoucherResponse
**Declared In:**  
Headers/SNRAssignVoucherResponse.h
  
**Related To:**  
[AssignVoucherData](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#assignvoucherdata)  
  
**Inherits From:**  
[BaseModel](/developers/mobile-sdk/class-reference/ios/miscellaneous#basemodel)  
  
**Declaration:**

<div class="content-tabs code-tabs" data-tab-group="tabgrp-503">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-503-0" data-tab-group="tabgrp-503" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-503-1" data-tab-group="tabgrp-503">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-503-0" data-tab-group="tabgrp-503" data-tab-active="true">

```Swift
class AssignVoucherResponse: BaseModel
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-503-1" data-tab-group="tabgrp-503">

```Objective-C
@interface SNRAssignVoucherResponse : SNRBaseModel
```

</div>
</div>

  
**Properties:**
| Property | Type | Optional | Description |
| --- | --- | --- | --- |
| **message** | String | no | Message from the Voucher assignment response |
| **assignVoucherData** | [AssignVoucherData](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#assignvoucherdata) | yes | List of vouchers in a pool |
  

<div class="admonition admonition-important"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

All properties are read-only.

</div></div></div>


---
---

### VoucherCodesResponse
**Declared In:**  
Headers/SNRVoucherCodesResponse.h  
  
**Related To:**  
[SNRVoucherCodesData](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#vouchercodesdata)  
  
**Inherits From:**  
[BaseModel](/developers/mobile-sdk/class-reference/ios/miscellaneous#basemodel)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-504">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-504-0" data-tab-group="tabgrp-504" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-504-1" data-tab-group="tabgrp-504">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-504-0" data-tab-group="tabgrp-504" data-tab-active="true">

```Swift
class VoucherCodesResponse: BaseModel
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-504-1" data-tab-group="tabgrp-504">

```Objective-C
@interface SNRVoucherCodesResponse : SNRBaseModel
```

</div>
</div>

  
**Properties:**
| Property | Type | Optional | Description |
| --- | --- | --- | --- |
| **items** | [[VoucherCodesData]](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers/#vouchercodesdata) | no | List of voucher items |
  

<div class="admonition admonition-important"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

All properties are read-only.

</div></div></div>


---
---

### AssignVoucherData
**Declared In:**  
Headers/SNRAssignVoucherData.h  
  
**Related To:**  
[AssignVoucherResponse](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#assignvoucherresponse)  
  
**Inherits From:**  
[BaseModel](/developers/mobile-sdk/class-reference/ios/miscellaneous#basemodel)
  
**Declaration:**

<div class="content-tabs code-tabs" data-tab-group="tabgrp-505">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-505-0" data-tab-group="tabgrp-505" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-505-1" data-tab-group="tabgrp-505">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-505-0" data-tab-group="tabgrp-505" data-tab-active="true">

```Swift
class AssignVoucherData: BaseModel
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-505-1" data-tab-group="tabgrp-505">

```Objective-C
@interface SNRAssignVoucherData : SNRBaseModel
```

</div>
</div>

  
**Properties:**  
| Property | Type | Optional | Description |
| --- | --- | --- | --- |
| **code** | String | no | Voucher's code |
| **expireIn** | Date | yes | Voucher's expiration date |
| **redeemAt** | Date | yes | Voucher's redemption date |
| **assignedAt** | Date | yes | Voucher's assignment date |
| **createdAt** | Date | no | Voucher's creation date |
| **updatedAt** | Date | no | Voucher's update date |
  

<div class="admonition admonition-important"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

All properties are read-only.

</div></div></div>


---
---

### VoucherCodesData
**Declared In:**  
Headers/SNRVoucherCodesData.h  
  
**Inherits From:**  
[BaseModel](/developers/mobile-sdk/class-reference/ios/miscellaneous#basemodel)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-506">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-506-0" data-tab-group="tabgrp-506" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-506-1" data-tab-group="tabgrp-506">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-506-0" data-tab-group="tabgrp-506" data-tab-active="true">

```Swift
class VoucherCodesData: BaseModel
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-506-1" data-tab-group="tabgrp-506">

```Objective-C
@interface SNRVoucherCodesData : SNRBaseModel
```

</div>
</div>

  
**Properties:**  
| Property | Type | Optional | Description |
| --- | --- | --- | --- |
| **code** | String | no | Voucher's code |
| **status** | [VoucherStatus](/developers/mobile-sdk/class-reference/ios/promotions-and-vouchers#voucherstatus) | no | Voucher's status |
| **clientId** | String | no | ID of the customer to whom the voucher is assigned |
| **clientUuid** | String | no | UUID of the customer to whom the voucher is assigned |
| **poolUuid** | String | no | Voucher's pool ID |
| **expireIn** | Date | no | Voucher's expiration date  |
| **redeemAt** | Date | no | Voucher's redemption date |
| **assignedAt** | Date | no | Voucher's assignment date |
| **createdAt** | Date | no | Voucher's creation date |
| **updatedAt** | Date | no | Voucher's update date|
  

<div class="admonition admonition-important"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

All properties are read-only.

</div></div></div>


---
---

### VoucherStatus
**Declared In:**  
Headers/SNRVoucherStatus.h  
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-507">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-507-0" data-tab-group="tabgrp-507" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-507-1" data-tab-group="tabgrp-507">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-507-0" data-tab-group="tabgrp-507" data-tab-active="true">

```Swift
enum VoucherStatus: Int {
    unassigned,
    assigned,
    redeemed,
    canceled
}
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-507-1" data-tab-group="tabgrp-507">

```Objective-C
typedef NS_ENUM(NSUInteger, SNRVoucherStatus) {
    SNRVoucherStatusUnassigned = 0,
    SNRVoucherStatusAssigned,
    SNRVoucherStatusRedeemed,
    SNRVoucherStatusCanceled
}
```

</div>
</div>

  
**Functions:**  
Converts from **VoucherStatus** to **String**.

<div class="content-tabs code-tabs" data-tab-group="tabgrp-508">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-508-0" data-tab-group="tabgrp-508" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-508-1" data-tab-group="tabgrp-508">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-508-0" data-tab-group="tabgrp-508" data-tab-active="true">

```Swift
func SNR_VoucherStatusToString(_: VoucherStatus) -> String
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-508-1" data-tab-group="tabgrp-508">

```Objective-C
NSString * SNR_VoucherStatusToString(SNRVoucherStatus type)
```

</div>
</div>


---

Converts from **String** to **VoucherStatus**.

<div class="content-tabs code-tabs" data-tab-group="tabgrp-509">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-509-0" data-tab-group="tabgrp-509" data-tab-active="true">Swift</button><button class="tab-button" data-tab-id="tabgrp-509-1" data-tab-group="tabgrp-509">Objective-C</button></div>

<div class="tab-panel" data-tab-id="tabgrp-509-0" data-tab-group="tabgrp-509" data-tab-active="true">

```Swift
func SNR_StringToVoucherStatus(_: String) -> VoucherStatus
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-509-1" data-tab-group="tabgrp-509">

```Objective-C
SNRVoucherStatus SNR_StringToVoucherStatus(NSString * _Nullable string)
```

</div>
</div>

