---
source: https://docs.restoman.com.ar/developers/errores
language: es-AR
updated: 2026-11-02
---

# Errores y límites

> Qué responde Restoman cuando no puede: los errores de su API, de OAuth, del MCP y de los agentes, y sus límites.

Toda respuesta trae `X-Request-Id`, y todo error es JSON. Ese id es lo que hay que mandar a soporte si algo falla.

## La API

Un error de la API es `{ "type", "code", "requestId" }`: `type` dice la clase (`unauthorized`, `forbidden`, `not_found`, `validation`, `rate_limited`, `unavailable`…) y `code`, cuando lo hay, el motivo exacto. Un `429` trae `Retry-After` y `retryAfter` en segundos.

## OAuth

El servidor de autorización responde los errores de OAuth (RFC 6749): `{ "error", "error_description" }`, como `invalid_grant` o `invalid_request`. Su límite por dirección responde `429` con `{ "code": "RATE_LIMITED", "message", "retryAfter" }` y `Retry-After`.

## El MCP de Restoman

| Respuesta                              | Qué significa                                                                                                            |
| -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| `401` con `WWW-Authenticate`           | Sin token, o vencido o revocado: volvé a OAuth                                                                           |
| `403` con `insufficient_scope`         | Al token le falta el permiso de esa herramienta: la persona vuelve a conectar                                            |
| Un resultado con `isError` y un código | El rol de la persona o el estado del negocio no lo permiten (`MISSING_PERMISSION`, `LOCATION_NOT_ASSIGNED`, `CEILING_…`) |
| `429` con `Retry-After`                | Más de 120 llamadas por minuto o 2.000 por hora, por persona y agente                                                    |
| JSON-RPC `-32602`                      | Argumentos que no son los de la herramienta                                                                              |

Un error de una herramienta hay que decirlo como es y mandar a la persona al panel: nunca buscar otro camino.

## Los MCP y agentes públicos

- **Un `POST` de más de 16 KB** responde `413`, y un `Origin` de otro sitio, `403`.
- **JSON-RPC:** `-32700` es un JSON que no se entiende, `-32600` un mensaje que no es JSON-RPC 2.0, `-32601` un método que no existe y `-32602` argumentos equivocados.
- **Un slug o una guía que no existen** responden un resultado con `isError`, no un error del protocolo.
- **Los agentes A2A** responden los códigos de A2A: `-32001` para una tarea (no guardan ninguna), `-32003` para avisos push, `-32004` para transmitir, `-32005` para archivos, `-32007` para la tarjeta extendida y `-32009` para una versión que no hablan.
