Establecer cuota de uso por suscripción
SE APLICA A: todos los niveles de API Management
La directiva quota
aplica un volumen de llamadas o una cuota de ancho de banda renovables o permanentes por suscripción. Cuando se supera la cuota, el autor de la llamada recibe un código de estado de respuesta 403 Forbidden
y la respuesta incluye un encabezado Retry-After
cuyo valor es el intervalo de reintento recomendado en segundos.
Para comprender la diferencia entre las cuotas y los límites de frecuencia, consulte Límites y cuotas de frecuencia.
Nota
Cuando los recursos de proceso subyacentes se reinician en la plataforma de servicio, API Management pueden seguir administrando las solicitudes durante un breve período después de alcanzar una cuota.
Nota
Establezca los elementos de la directiva y los elementos secundarios en el orden proporcionado en la instrucción de directiva. Obtenga más información sobre el establecimiento o modificación de directivas de API Management.
Instrucción de la directiva
<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>
Atributos
Atributo | Descripción | Necesario | Valor predeterminado |
---|---|---|---|
bandwidth | Número total máximo de kilobytes permitidos durante el intervalo de tiempo especificado en renewal-period . No se permiten expresiones de directiva. |
Debe especificarse calls , bandwidth o ambos. |
N/D |
calls | Número total máximo de llamadas permitidas durante el intervalo de tiempo especificado en renewal-period . No se permiten expresiones de directiva. |
Debe especificarse calls , bandwidth o ambos. |
N/D |
renewal-period | Longitud en segundos de la ventana fija después de la cual se restablece la cuota. El inicio de cada período se calcula en relación con la hora de inicio de la suscripción. Cuando renewal-period se establece en 0 , el periodo se establece en infinito. No se permiten expresiones de directiva. |
Sí | N/D |
Elementos
Elemento | Descripción | Obligatorio |
---|---|---|
api | Agregue uno o varios de estos elementos para imponer una cuota de llamadas a las API del producto. Las cuotas de llamada de API y de producto se aplican de forma independiente. Se puede hacer referencia a la API a través de name o id . Si se proporcionan ambos atributos, id se usará y name se omitirá. |
No |
operation | Agregue uno o varios de estos elementos para imponer una cuota de llamadas a las operaciones de una API. Las cuotas de llamadas de API, operación y producto se aplican de forma independiente. Se puede hacer referencia a la operación a través de name o id . Si se proporcionan ambos atributos, id se usará y name se omitirá. |
No |
Atributos api
Atributo | Descripción | Necesario | Valor predeterminado |
---|---|---|---|
name | Nombre de la API a la que se va a aplicar un límite de cuota de llamadas. | Se debe especificar name o id . |
N/D |
id | Identificador de la API a la que se va a aplicar al límite de cuota de llamadas. | Se debe especificar name o id . |
N/D |
bandwidth | Número total máximo de kilobytes permitidos durante el intervalo de tiempo especificado en renewal-period . No se permiten expresiones de directiva. |
Debe especificarse calls , bandwidth o ambos. |
N/D |
calls | Número total máximo de llamadas permitidas durante el intervalo de tiempo especificado en renewal-period . No se permiten expresiones de directiva. |
Debe especificarse calls , bandwidth o ambos. |
N/D |
renewal-period | Longitud en segundos de la ventana fija después de la cual se restablece la cuota. El inicio de cada período se calcula en relación con la hora de inicio de la suscripción. Cuando renewal-period se establece en 0 , el periodo se establece en infinito. No se permiten expresiones de directiva. |
Sí | N/D |
Atributos operation
Atributo | Descripción | Necesario | Valor predeterminado |
---|---|---|---|
name | Nombre de la operación a la que se va a aplicar un límite de cuota de llamadas. | Se debe especificar name o id . |
N/D |
id | Id. de la operación a la que se va a aplicar un límite de cuota de llamadas. | Se debe especificar name o id . |
N/D |
bandwidth | Número total máximo de kilobytes permitidos durante el intervalo de tiempo especificado en renewal-period . No se permiten expresiones de directiva. |
Debe especificarse calls , bandwidth o ambos. |
N/D |
calls | Número total máximo de llamadas permitidas durante el intervalo de tiempo especificado en renewal-period . No se permiten expresiones de directiva. |
Debe especificarse calls , bandwidth o ambos. |
N/D |
renewal-period | Longitud en segundos de la ventana fija después de la cual se restablece la cuota. El inicio de cada período se calcula en relación con la hora de inicio de la suscripción. Cuando renewal-period se establece en 0 , el periodo se establece en infinito. No se permiten expresiones de directiva. |
Sí | N/D |
Uso
- Secciones de la directiva: inbound (entrada)
- Ámbitos de la directiva: producto
- Puertas de enlace: clásica, v2, consumo, autohospedada y área de trabajo
Notas de uso
- Esta directiva se puede usar una sola vez por definición de directiva.
- Esta directiva solo se aplica cuando se accede a una API mediante una clave de suscripción.
Ejemplo
<policies>
<inbound>
<base />
<quota calls="10000" bandwidth="40000" renewal-period="3600" />
</inbound>
<outbound>
<base />
</outbound>
</policies>
Directivas relacionadas
Contenido relacionado
Para más información sobre el trabajo con directivas, vea:
- Tutorial: Transformación y protección de una API
- Referencia de directivas para una lista completa de instrucciones de directivas y su configuración
- Expresiones de directiva
- Establecimiento o edición de directivas
- Reutilización de configuraciones de directivas
- Repositorio de fragmentos de código de directiva
- Kit de herramientas de directivas de Azure API Management
- Creación de directivas mediante Microsoft Copilot en Azure