# Inputs / Promotions

# Promotions

**Object**
## PromotionCriteriaInput

This input is quite complicated, we would suggest using our user interface first to see how promotions are setup and refer to https://support.onshopfront.com/hc/en-us/articles/360000140212-Advanced-Promotions for additional assistance.

| Fields | Type | Description | Validation |
| --- | --- | --- | --- |
| buyAmount | *Float!* | The amount of `buyAmountType` to be purchasing to activate this criteria | Minimum: 0Maximum: 1,000,000 |
| buyAmountMax | *Float* | The maximum amount of `buyAmountType` to be purchasing to activate this criteria | Minimum: 0Maximum: 10,000 |
| buyAmountType | [PromotionBuyAmountTypeEnum!](/documentation/Enums/Promotion-Buy-Amount-Type-Enum#PromotionBuyAmountTypeEnum) | How the buy amount is calculated for this criteria |  |
| discountAmount | *Float!* | The discount amount to apply to the items (affected by `type`) | Minimum: -1,000,000Maximum: 1,000,000 |
| discountEverydayPromotions | *Boolean* | Whether prices higher than the base price (typically 1) should be discounted |  |
| excludeCountQuantity | *Boolean* | Whether the excluded items should count towards the `buyAmount` |  |
| excludePricePoints | *Boolean* | Whether exact price points should be excluded (only mixed price points allowed) |  |
| items | [[PromotionCriteriaItemInput]](/documentation/Inputs/Promotions#PromotionCriteriaItemInput) | The items within the criteria |  |
| minQuantity | *Float* | The minimum continuous sell quantity to apply to the criteria | Minimum: 1Maximum: 1,000,000 |
| mixedOnly | *Boolean* | Whether only mixed items can activate this criteria |  |
| optional | *Boolean* | Whether this criteria is optional |  |
| quantityType | [PromotionQuantityTypeEnum!](/documentation/Enums/Promotion-Quantity-Type-Enum#PromotionQuantityTypeEnum) | Whether this criteria applies to the exact buy amount or more than the buy amount |  |
| type | [PromotionTypeEnum!](/documentation/Enums/Promotion-Type-Enum#PromotionTypeEnum) | The type of price modification this criteria will apply |  |



**Object**
## PromotionCriteriaItemInput

| Fields | Type | Description | Validation |
| --- | --- | --- | --- |
| id | [ID](/documentation/Types/UUID#UUID) | The ID of the item in the criteria |  |
| type | [PromotionItemTypeEnum](/documentation/Enums/Promotion-Item-Type-Enum#PromotionItemTypeEnum) | The type of item this is |  |
| exclude | *Boolean* | Whether this item is excluded |  |
| rebate | *Float* | The rebate to apply to this item (only when `exclude` is set to false) | Minimum: 0Maximum: 10,000 |



**Object**
## PromotionScheduleInput

| Fields | Type | Description |
| --- | --- | --- |
| anchor | [DateTime!](/documentation/Types/Date-Time#DateTime) | The anchor date for resolving the schedule |
| period | [TimePeriod!](/documentation/Types/Time-Period#TimePeriod) | How often the schedule repeats from the anchor timestamp |
| offset | [TimePeriod](/documentation/Types/Time-Period#TimePeriod) | How long after the resolved period before the promotion becomes active |
| duration | [TimePeriod!](/documentation/Types/Time-Period#TimePeriod) | How long the promotion should be active for |