ForHosting KIT · Utilidades de desarrollo

Analice cabeceras de límite y calcule el reinicio

Las cabeceras de límite parecen sencillas hasta que cada servicio expresa el reinicio de forma distinta.

● BetaGratis · en su navegador
Úselo desde WebAPIEmailTelegramApp pronto

Este analizador recibe el límite, la cantidad restante, el valor de reinicio y una hora actual explícita; después devuelve valores numéricos normalizados y los segundos completos que faltan para recuperar las solicitudes. Admite marcas Unix en segundos o milisegundos, fechas ISO 8601 UTC estrictas y desplazamientos numéricos breves. Como usted proporciona la hora actual, una misma entrada siempre genera el mismo resultado.

Normalice las cabeceras antes de programar reintentos

Las API suelen publicar un máximo de solicitudes, una cantidad restante y un valor de reinicio, pero el cliente aún debe convertir esas cadenas en una decisión segura. Envíe esos valores como limit, remaining y reset, e indique en current_time el instante en que recibió la respuesta. El analizador verifica que limit y remaining sean enteros no negativos y rechaza una cantidad restante superior al límite. Conserva el texto original de reset, informa si lo interpretó como marca temporal absoluta o desplazamiento en segundos y genera una hora Unix normalizada. El campo seconds_until_reset se redondea hacia arriba para impedir que usted reintente durante la última fracción del intervalo. Si el reinicio ya pasó, devuelve cero y nunca un número negativo. El resultado sirve para registros, middleware de reintentos, demoras de colas y pruebas sin repetir las mismas reglas en cada integración.

Comprenda cómo se distinguen las marcas y los desplazamientos

Los valores numéricos de reset siguen convenciones habituales. Un valor de al menos mil millones se interpreta como segundos Unix; a partir de cien mil millones se considera milisegundos Unix y se convierte a segundos. Los números menores no negativos se suman a current_time como desplazamientos. Así, 30 o 900 funcionan como demoras, mientras las marcas de época actuales siguen siendo absolutas. También puede usar una fecha UTC ISO 8601 estricta, como 2026-07-25T12:01:00Z, con milisegundos opcionales. El sufijo UTC evita supuestos de zona horaria. current_time admite los mismos formatos absolutos, pero nunca se trata como desplazamiento. La validación detecta fechas imposibles, horas inválidas, valores ausentes, números negativos y texto ajeno. Un reset ilegible genera un error de entrada, en vez de convertirse silenciosamente en cero y provocar reintentos inmediatos.

Use resultados deterministas en clientes y pruebas

Una política de reintentos debe separar el análisis de las decisiones. Use esta capacidad para establecer los datos de cuota y permita que su aplicación decida si espera, encola, reduce la concurrencia o muestra un aviso. current_time es explícito por una razón: ningún reloj del sistema, solicitud de red, configuración regional ni valor aleatorio puede alterar la respuesta. Esto permite que el cálculo del navegador coincida con el de la API y que las pruebas sigan estables meses después. Por ejemplo, un desplazamiento de 60 con una hora actual exactamente al mediodía siempre produce una marca un minuto posterior y sesenta segundos restantes. Las marcas anteriores a la hora indicada producen cero, algo útil con webhooks demorados o registros históricos. Esta herramienta no infiere cabeceras de proveedores ni elige el retroceso exponencial. Procesa los valores ya extraídos. El navegador es gratuito y cada llamada automatizada cuesta $0.002 por elemento.

Programe un reintento seguro

Convierta cadenas de cabeceras en una demora de segundos completos antes de devolver el trabajo a una cola.

Diagnostique la limitación del proveedor

Normalice cabeceras capturadas y compare el reinicio con el instante exacto de la respuesta.

Cree pruebas de reintento deterministas

Proporcione una hora fija y verifique cálculos estables sin simular el reloj del sistema.

¿Cuánto cuesta una llamada a la API?

Cada elemento usa el precio base indicado como $0.002; la herramienta del navegador ejecuta localmente el mismo cálculo.

¿Qué formatos de reinicio se aceptan?

Use desplazamientos no negativos en segundos, marcas Unix en segundos o milisegundos, o fechas UTC ISO 8601 estrictas terminadas en Z.

¿Por qué debo proporcionar current_time?

Una hora explícita mantiene deterministas los cálculos y permite reproducirlos en clientes y pruebas.

¿Qué ocurre si el reinicio ya pasó?

seconds_until_reset queda limitado a cero, mientras reset_at_unix conserva el instante absoluto analizado.

¿La herramienta realiza una solicitud o espera?

No. Solo valida y normaliza sus valores; su aplicación sigue siendo responsable del reintento y el retroceso.

Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.

POSThttps://api.kit.forhosting.com/security/rate-limit-header-parse

¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.

curl -X POST https://api.kit.forhosting.com/security/rate-limit-header-parse \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"100","remaining":"42","reset":"60","current_time":"2026-07-25T12:00:00Z"}'
{
  "limit": "100",
  "remaining": "42",
  "reset": "60",
  "current_time": "2026-07-25T12:00:00Z"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "security.rate_limit_header_parse",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.

Por solicitud$0.002

Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.

HTTPCódigoSignificado
401unauthorizedAPI key ausente o inválida.
402insufficient_balanceEl saldo no cubre el precio de la tarea.
404unknown_typeEl tipo de tarea no existe.
429rate_limitedDemasiadas peticiones. Use el webhook en vez de sondear.

Ver la documentación completa del KIT →