# Overview Promotion usage limits allow you to restrict the number of times a specific user can use a promotion. You can also configure scheduled limit resets. Limits are stored on the Xsolla side and are configured in the promotion settings in [Publisher Account](https://publisher.xsolla.com/0/projects/0/storefront/promotions) or via the `limits` object in the following API calls: * [Create discount promotion for item](/ko/api/liveops/promotions-discounts/create-item-promotion/) or [Update discount promotion](/ko/api/liveops/promotions-discounts/update-item-promotion) * [Create bonus promotion](/ko/api/liveops/promotions-bonuses/create-bonus-promotion/) or [Update bonus promotion](/ko/api/liveops/promotions-bonuses/update-bonus-promotion) Limit information is returned in the `items.promotions.limits` object in the following API calls for retrieving the items catalog: * [Get virtual items list](/ko/api/catalog/virtual-items-currency-catalog/get-virtual-items/) * [Get virtual currency list](/ko/api/catalog/virtual-items-currency-catalog/get-virtual-currency/) * [Get virtual currency packages list](/ko/api/catalog/virtual-items-currency-catalog/get-virtual-currency-package/) * [Get bundles list](/ko/api/catalog/bundles-catalog/get-bundle-list/) * [Get games list](/ko/api/catalog/game-keys-catalog/get-games-list/) The API calls in the **Management** subsection of the **Limits** group allow you to retrieve the current state of limits and update them for a specific user — for example, reset the counter after a quest is completed or manually adjust the remaining quantity.
Note

For detailed information on configuring limits in the catalog, refer to the Promotion usage limits section.
You can configure [limits.per_user](/ko/api/liveops/promotions-discounts/create-item-promotion#promotions-discounts/create-item-promotion/t=request&path=limits) — a limit on the number of times a promotion can be used by a single user. Unauthenticated users always see the maximum number of promotion uses. To show the user's remaining promotion uses with the active limit applied, pass user authorization data when requesting the items catalog. To configure a scheduled reset period — daily, weekly, or monthly — pass the `limits.recurrent_schedule` object when [creating](/ko/api/liveops/promotions-discounts/create-item-promotion#promotions-discounts/create-item-promotion/t=request&path=limits/recurrent_schedule) or [updating](/ko/api/liveops/promotions-discounts/update-item-promotion#promotions-discounts/update-item-promotion/t=request&path=limits/recurrent_schedule) a promotion. **Limit configuration and enforcement scenario** 1. You create a promotion using the [Create discount promotion for item](/ko/api/liveops/promotions-discounts/create-item-promotion/) or [Create bonus promotion](/ko/api/liveops/promotions-bonuses/create-bonus-promotion/) API call and pass the `limits` object. 2. You request the catalog for an unauthenticated user — the response returns the maximum number of promotion uses in the `items.promotions.limits` object. 3. The user logs in. 4. You request the catalog with the user's authorization token — the response returns the remaining number of uses with the active limit applied. 5. The user selects a promotional item and makes a purchase. 6. After successful payment, Xsolla updates the `items.promotions.limits.per_user` value. When it reaches `0`, the item is returned in the catalog API calls without a discount or bonus. 7. You can update the limit using the API calls from the **Management** subsection: * [refresh all promotion limits for specified user](/ko/api/liveops/user-limits-admin/reset-all-user-promotions-limit/) or [refresh limits for a specific promotion](/ko/api/liveops/user-limits-admin/reset-user-promotion-limit/) * [set a specific limit value](/ko/api/liveops/user-limits-admin/set-user-promotion-limit/) * [increase](/ko/api/liveops/user-limits-admin/add-user-promotion-limit/) or [decrease the available number of uses](/ko/api/liveops/user-limits-admin/remove-user-promotion-limit/) 8. You retrieve the updated limit value in `items.promotions.limits` on the next catalog request made with the user's authorization token and display it to the user. ![Promotion limits](https://cdn.xsolla.net/developers/current/images/api_docs/promotion-limit.svg)