apigateway.tomasbarak.com
En esta página

Referencia

Códigos de error

Los ocho códigos del contrato, incluido el 202 fetch_pending, y cuál consume cuota.

La tabla completa

CódigocodeQué significa¿Consume cuota?
400invalid_requestParámetros mal formados, o la clave vino por query string, o credenciales de más de un canal.No
401missing_api_keyFalta la clave, está mal formada o fue revocada.No
403plan_requiredTu plan no incluye esta API. No es «te quedaste sin unidades».No
429rate_limitedVas demasiado rápido. Retry-After en segundos.No
429quota_exceededTe quedaste sin unidades del período.No
202fetch_pendingFamilia scrapeada: no había dato cacheado y disparamos el fetch. El body trae retry_handle y retry_after., 1 unidad. El reintento con el handle no vuelve a cobrar.
502upstream_errorLa fuente falló o pasó su presupuesto de tiempo.No
503upstream_unavailableEstamos sirviendo degradado. Es la rama que ve el plan Básico, que tiene 0 fetches upstream.No

El 202 y su reintento

Un 202 no es un error: es una respuesta válida del contrato y no cuenta como falla para el SLA. Cobra 1 unidad —el costo de HIT— y no las del MISS, porque cobrarte el MISS completo cuando todavía no recibiste el dato sería cobrarte nuestra latencia.

{ "code": "fetch_pending",
  "message": "Estamos trayendo este dato. Reintentá con el mismo handle.",
  "retry_handle": "fp_01K8Q7YQ3M4T2V9BXR6ZC1H5FD",
  "retry_after": 6 }

El handle vive 120 segundos. Si el fetch terminó, el reintento devuelve el dato con X-Cache: miss y cero unidades adicionales. Si venció, es un 404 handle_expired y volvés a empezar pagando 1 unidad.

Qué 400 se cobra

Un 400 rechazado por el validador del gateway no se cobra: nunca se abrió un socket. Un 400 devuelto por la API después de bajar y parsear tu archivo : consumió cómputo real. La regla está congelada en los Términos.