Catálogo de errores
Cuando algo falla, la API responde {"ok": false, "error": "<código>"}. El código es estable y pensado para que tu cliente ramifique por él (no
por el texto). Abajo, qué significa cada uno. Volver a la
referencia interactiva.
| Código | HTTP | Cuándo pasa |
|---|---|---|
unauthenticated | 401 | Falta o es inválido el token o la sesión. |
forbidden | 403 | Autenticado pero sin permiso para este recurso (rol, o el token no alcanza este endpoint). |
insufficient_scope | 403 | El token no tiene el scope necesario para esta operación. El scope requerido viene en el campo requiredScope. |
invalid_guest_token | 403 | El token de acceso del invitado es inválido o no corresponde. |
invalid_session_id | 400 | El identificador de sesión del wizard es inválido. |
rate_limited | 429 | Superaste el límite de peticiones. Reintenta tras los segundos del header Retry-After. |
too_many_tokens | 429 | Llegaste al máximo de tokens de acceso activos. Revoca uno para crear otro. |
too_many_webhooks | 429 | Llegaste al máximo de webhooks activos. Elimina uno para crear otro. |
idempotency_in_progress | 409 | Otra petición con esta Idempotency-Key sigue en curso; reintenta en unos segundos. |
idempotency_key_reused | 422 | Reusaste una Idempotency-Key con un cuerpo distinto al original. |
bad_json | 400 | El cuerpo no es JSON válido. |
invalid_input | 400 | El cuerpo no pasó la validación; revisa el campo issues. |
invalid_body | 400 | El cuerpo de la petición es inválido o está incompleto. |
bad_request | 400 | La petición está mal formada. |
malformed_request | 400 | La petición está mal formada. |
invalid_timezone | 400 | La zona horaria no es una zona IANA válida. |
invalid_template | 400 | La plantilla indicada no existe. |
invalid_draft | 400 | El borrador de la invitación no es válido. |
not_found | 404 | El recurso no existe o no es tuyo. |
event_not_found | 404 | El evento no existe o no es tuyo. |
webhook_not_found | 404 | El webhook no existe o no es tuyo. |
invalid_webhook_url | 400 | La URL del webhook debe ser https y apuntar a un host público (no privado/interno). |
guest_not_found | 404 | El invitado no existe en este evento. |
event_required | 400 | Falta indicar el evento. |
use_publish_endpoint | 400 | Esta acción se hace en el endpoint de publicación del evento. |
missing_file | 400 | No se adjuntó ningún archivo. |
file_too_large | 413 | El archivo supera el tamaño máximo permitido. |
file_too_small | 400 | El archivo es demasiado pequeño. |
unsupported_format | 415 | El formato del archivo no está soportado. |
invalid_mime | 415 | El tipo de contenido del archivo no está permitido. |
payment_required | 402 | Esta acción requiere un pago o un plan superior. |
no_subscription | 402 | No tienes una suscripción activa para esta acción. |
no_active_subscription | 402 | No tienes una suscripción activa. |
addon_not_entitled | 402 | Tu plan no incluye este complemento. |
tier_not_entitled | 402 | Tu plan no incluye este nivel de experiencia. |
quota_exceeded | 429 | Superaste el cupo de esta funcionalidad. |
free_quota_exceeded | 402 | Agotaste el cupo del plan gratuito; mejora tu plan para continuar. |
draft_quota_exceeded | 402 | Llegaste al máximo de eventos para tu plan. |
guest_quota_exceeded | 402 | Llegaste al máximo de invitados para tu plan. |
per_guest_limit_reached | 429 | Este invitado llegó a su límite de acciones. |
photo_count_limit_reached | 429 | Se alcanzó el límite de fotos. |
session_image_cap_reached | 429 | Se alcanzó el límite de imágenes generadas en esta sesión. |
already_claimed | 409 | Esta invitación ya fue reclamada por otra cuenta. |
already_invited | 409 | Esta persona ya está invitada. |
internal_error | 500 | Error interno inesperado; reintenta. |
server_error | 500 | Error del servidor; reintenta. |
not_implemented | 501 | Esta funcionalidad todavía no está disponible. |
provider_quota | 503 | Un proveedor externo alcanzó su cuota; reintenta más tarde. |
safety_blocked | 422 | El contenido fue bloqueado por los filtros de seguridad de la IA. |