使用量のクォータをサブスクリプション別に設定する

適用対象: すべての API Management レベル

quota ポリシーは、更新可能な呼び出しまたは有効期間中の呼び出しのボリュームと帯域幅クォータの両方またはそのどちらかをサブスクリプションに基づいて適用します。 クォータを超えると、呼び出し元は応答状態コード 403 Forbidden を受け取ります。応答には、推奨される再試行間隔 (秒単位) の値を示す、Retry-After ヘッダーが含まれます。

レート上限とクォータの違いについては、レート上限とクォータに関するページを参照してください。

注意

基になるコンピューティング リソースがサービス プラットフォームで再起動されると、クォータに達した後も API Management がしばらくの間要求を処理し続ける可能性があります。

Note

ポリシーの要素と子要素を、ポリシー ステートメントで指定された順序で設定します。 API Management ポリシーを設定または編集する方法について説明します。

ポリシー ステートメント

<quota calls="number" bandwidth="kilobytes" renewal-period="seconds">
    <api name="API name" id="API id" calls="number">
        <operation name="operation name" id="operation id" calls="number" />
    </api>
</quota>

属性

属性 説明 必要 Default
bandwidth renewal-period で指定した期間中に許可する最大合計キロバイト数。 ポリシー式は使用できません。 callsbandwidth のいずれかまたは両方と同時に指定する必要があります。 該当なし
calls renewal-period で指定した期間中に許容する最大呼び出し総数。 ポリシー式は使用できません。 callsbandwidth のいずれかまたは両方と同時に指定する必要があります。 該当なし
renewal-period クォータがリセットされた後の固定ウィンドウの長さ (秒単位)。 各期間の開始は、サブスクリプションの開始時刻を基準にして計算されます。 renewal-period0 に設定すると、この期間は無限に設定されます。 ポリシー式は使用できません。 はい 該当なし

要素

要素 説明 必須
api 製品内の API に対して呼び出しクォータをかけるには、これらの要素を 1 つまたは複数追加します。 製品と API の呼び出しクォータは別々に適用されます。 API は name または id のいずれかによって参照できます。 両方の属性が提供された場合、id が使用されて name は無視されます。 いいえ
操作 API 内の操作に対して呼び出しクォータをかけるには、これらの要素を 1 つまたは複数追加します。 製品、API、および操作の呼び出しクォータは別々に適用されます。 操作は name または id のいずれかによって参照できます。 両方の属性が提供された場合、id が使用されて name は無視されます。 いいえ

api の属性

属性 説明 必要 Default
name 呼び出しクォータ制限の適用対象になる API の名前。 nameid のいずれかを指定する必要があります。 該当なし
id 呼び出しクォータ制限の適用対象になる API の ID。 nameid のいずれかを指定する必要があります。 該当なし
bandwidth renewal-period で指定した期間中に許可する最大合計キロバイト数。 ポリシー式は使用できません。 callsbandwidth のいずれかまたは両方と同時に指定する必要があります。 該当なし
calls renewal-period で指定した期間中に許容する最大呼び出し総数。 ポリシー式は使用できません。 callsbandwidth のいずれかまたは両方と同時に指定する必要があります。 該当なし
renewal-period クォータがリセットされた後の固定ウィンドウの長さ (秒単位)。 各期間の開始は、サブスクリプションの開始時刻を基準にして計算されます。 renewal-period0 に設定すると、この期間は無限に設定されます。 ポリシー式は使用できません。 はい 該当なし

operation の属性

属性 説明 必要 Default
name 呼び出しクォータ制限の適用対象になる操作の名前。 nameid のいずれかを指定する必要があります。 該当なし
id 呼び出しクォータ制限の適用対象になる操作の ID。 nameid のいずれかを指定する必要があります。 該当なし
bandwidth renewal-period で指定した期間中に許可する最大合計キロバイト数。 ポリシー式は使用できません。 callsbandwidth のいずれかまたは両方と同時に指定する必要があります。 該当なし
calls renewal-period で指定した期間中に許容する最大呼び出し総数。 ポリシー式は使用できません。 callsbandwidth のいずれかまたは両方と同時に指定する必要があります。 該当なし
renewal-period クォータがリセットされた後の固定ウィンドウの長さ (秒単位)。 各期間の開始は、サブスクリプションの開始時刻を基準にして計算されます。 renewal-period0 に設定すると、この期間は無限に設定されます。 ポリシー式は使用できません。 はい 該当なし

使用法

使用上の注意

  • このポリシーは、ポリシー定義ごとに 1 回のみ使用できます。
  • このポリシーは、サブスクリプション キーを使用して API にアクセスする場合にのみ適用されます。

<policies>
    <inbound>
        <base />
        <quota calls="10000" bandwidth="40000" renewal-period="3600" />
    </inbound>
    <outbound>
        <base />
    </outbound>
</policies>

ポリシーに対する処理の詳細については、次のトピックを参照してください。