# 概要 プロモーション使用制限により、指定したユーザーがプロモーションを使用できる回数を制限できます。また、制限を定期的にリセットするスケジュールを設定することも可能です。 制限はエクソーラ側で保存され、[パブリッシャーアカウント](https://publisher.xsolla.com/0/projects/0/storefront/promotions)のプロモーション設定または次のAPIコールの`limits`オブジェクトを介して設定されます: * [アイテムの割引プロモーションを作成する](/ja/api/liveops/promotions-discounts/create-item-promotion/)または[割引プロモーションを更新する](/ja/api/liveops/promotions-discounts/update-item-promotion) * [ボーナスプロモーションを作成する](/ja/api/liveops/promotions-bonuses/create-bonus-promotion/)または[ボーナスプロモーションを更新する](/ja/api/liveops/promotions-bonuses/update-bonus-promotion) 制限情報は、アイテムカタログを取得するための次のAPIコールで`items.promotions.limits`オブジェクトに返されます: * [仮想アイテムリストを取得する](/ja/api/catalog/virtual-items-currency-catalog/get-virtual-items/) * [仮想通貨リストを取得する](/ja/api/catalog/virtual-items-currency-catalog/get-virtual-currency/) * [仮想通貨パッケージリストを取得する](/ja/api/catalog/virtual-items-currency-catalog/get-virtual-currency-package/) * [バンドルリストを取得する](/ja/api/catalog/bundles-catalog/get-bundle-list/) * [ゲームリストを取得する](/ja/api/catalog/game-keys-catalog/get-games-list/) **制限**グループの**管理**サブセクションに属するAPIコールにより、制限の現在状態の取得、および指定したユーザーに対する制限値の更新が可能となります(例:クエスト完了時におけるカウンターのリセット、残存数量の手動調整など)。
[limits.per_user](/ja/api/liveops/promotions-discounts/create-item-promotion#promotions-discounts/create-item-promotion/t=request&path=limits) — 単一のユーザーがプロモーションを使用できる回数の制限を設定できます。 未認証のユーザーには、常にプロモーションの最大利用回数が表示されます。 有効な制限が適用されたユーザーの「残りのプロモーション利用回数」を表示するには、アイテムカタログをリクエストする際にユーザーの認証データを渡してください。 スケジュールされたリセット期間を設定するには — 毎日、毎週、または毎月 — プロモーションを[作成](/ja/api/liveops/promotions-discounts/create-item-promotion#promotions-discounts/create-item-promotion/t=request&path=limits/recurrent_schedule)または[更新](/ja/api/liveops/promotions-discounts/update-item-promotion#promotions-discounts/update-item-promotion/t=request&path=limits/recurrent_schedule)する際に`limits.recurrent_schedule`オブジェクトを渡します。 **制限設定および適用シナリオ** 1. [アイテムの割引プロモーションを作成する](/ja/api/liveops/promotions-discounts/create-item-promotion/)または[ボーナスプロモーションを作成する](/ja/api/liveops/promotions-bonuses/create-bonus-promotion/)APIコールを使用してプロモーションを作成し、`limits`オブジェクトを渡します。 2. 未認証のユーザーに対してカタログをリクエストします。応答の`items.promotions.limits`オブジェクトに、プロモーションの最大利用回数が返されます。 3. ユーザーがログインします。 4. ユーザーの認証トークンを含めてカタログをリクエストします。応答には、アクティブな制限が適用された状態の「残り利用回数」が返されます。 5. ユーザーがプロモーション対象のアイテムを選択し、購入手続きを行います。 6. 決済が正常に完了すると、エクソーラは`items.promotions.limits.per_user`の値を更新します。この値が 0 に達すると、以降のカタログAPIコールのレスポンスにおいて、該当アイテムは割引やボーナスがない状態で返されるようになります。 7. **管理**サブセクションのAPIコールを使用して制限を更新できます: * [指定したユーザーのプロモーション制限をすべて更新する](/ja/api/liveops/user-limits-admin/reset-all-user-promotions-limit/)または[指定したプロモーションの制限を更新する](/ja/api/liveops/user-limits-admin/reset-user-promotion-limit/) * [指定した制限値を設定する](/ja/api/liveops/user-limits-admin/set-user-promotion-limit/) * [利用可能な回数を増やす](/ja/api/liveops/user-limits-admin/add-user-promotion-limit/)または[利用可能な回数を減らす](/ja/api/liveops/user-limits-admin/remove-user-promotion-limit/) 8. 次回、ユーザーの認証トークンを使用してカタログをリクエストした際に、`items.promotions.limits`から更新された制限値を取得し、ユーザーに表示します。 