API

Limitación de Velocidad

Nota: La limitación de velocidad no está actualmente implementada a nivel de API en Gigantics. Los endpoints de API no aplican límites de velocidad de solicitud o cuotas.

Comportamiento Actual

  • Los endpoints de API aceptan solicitudes ilimitadas
  • No se retornan cabeceras de límite de velocidad
  • No existe aplicación de throttling o cuotas
  • Todas las solicitudes autenticadas se procesan

Consideraciones Futuras

Aunque la limitación de velocidad no está actualmente implementada, puedes querer implementar limitación de velocidad del lado del cliente para:

  1. Prevenir sobrecarga accidental - Los límites autoimpuestos previenen inundar accidentalmente los endpoints
  2. Respetar recursos del servidor - Ser un buen ciudadano de API
  3. Evitar timeouts - Las solicitudes más lentas y controladas son más confiables

Prácticas Recomendadas del Lado del Cliente

Implementar Throttling de Solicitudes

Incluso sin límites del lado del servidor, considera hacer throttling a tus solicitudes:

// Ejemplo simple de throttling
let lastRequest = 0;
const minDelay = 100; // 100ms entre solicitudes
 
async function throttledRequest(url) {
  const now = Date.now();
  const timeSinceLastRequest = now - lastRequest;
  if (timeSinceLastRequest < minDelay) {
    await sleep(minDelay - timeSinceLastRequest);
  }
  lastRequest = Date.now();
  return fetch(url);
}

Agrupar Solicitudes

Cuando sea posible, agrupa múltiples operaciones:

  • Descarga múltiples entidades en una solicitud si es soportado
  • Evita solicitudes rápidas consecutivas para los mismos datos
  • Cachea respuestas cuando sea apropiado

Monitorear Uso

Rastrea tus propios patrones de solicitud:

  • Registra conteos de solicitudes por endpoint
  • Monitorea tiempos de respuesta
  • Alerta sobre patrones inusuales

Monitoreo de Uso de Endpoints

Puedes monitorear el uso de API a través de la UI:

  1. Navega a Proyecto → Claves API
  2. Expande cualquier fila de clave API
  3. Ve el conteo # llamadas para cada endpoint
  4. Verifica la marca de tiempo "Última llamada"

Esto te ayuda a entender:

  • Qué endpoints se están usando más
  • Cuándo se accedió a los endpoints por última vez
  • Patrones de uso a lo largo del tiempo

Documentación Relacionada

Tabla de Contenidos