Errores

Última actualización: 22 de junio de 2026

Cuando una solicitud falla, WEEGLOO devuelve un cuerpo de error con un formato coherente junto con un código de estado HTTP. La forma del cuerpo de la respuesta es la misma independientemente de en qué API (CMA, CDA, ACMA, ACDA, Upload, Auth) se haya producido el fallo. Por eso, si sabes tratar un solo formato, puedes gestionar todos los errores con la misma lógica de ramificación. Esta página reúne en un solo lugar ese formato común y los códigos de error que se encuentran con más frecuencia.

Formato de la respuesta de error

El cuerpo del error tiene la siguiente forma. A continuación se muestra la respuesta recibida al consultar un WebHosting inexistente.

{
  "requestId": "GeR3sEbvWdgvv9eW2NXeanpj2wo6qbkVXgIW7Qd3ea6",
  "sys": {
    "id": "RxcgyPTSuk4GDy6s",
    "type": "NotFound",
    "code": "WGL404001",
    "timestamp": 1781785683556
  },
  "details": {
    "space": { "sys": { "id": "HnQ32YiH", "type": "Refer", "targetType": "Space" } }
  },
  "reason": "WebHosting(...) has been deleted or does not exist.",
  "suggestion": "Please verify WebHosting and try again."
}

El significado de cada clave es el siguiente.

ClaveTipoDescripción
requestIdstringIdentificador de rastreo de esta solicitud. Si lo aportas al contactar con soporte, podrán localizar rápidamente la solicitud correspondiente.
sys.typestringClasificación del error. Indica la categoría principal: Unauthorized, Forbidden, NotFound, Unprocessable, Conflict, TooManyRequest, etc.
sys.codestringCódigo de error detallado (por ejemplo, WGL409005). Usa este valor cuando ramifiques la lógica por código.
sys.timestampintegerMomento en que se produjo el error (epoch en milisegundos).
reasonstringMotivo del fallo en lenguaje legible.
suggestionstringPista que ayuda a resolverlo.
detailsobject (opcional)Información adicional. Incluye un Refer que apunta al recurso relacionado, una lista de elementos de error de validación (errors), etc. Puede no estar presente según el tipo de error.

La ramificación se hace por la unidad que necesites: sys.type (categoría principal) o sys.code (código detallado). Aunque el sys.type sea el mismo, si el sys.code es distinto la causa es distinta; por eso, si necesitas un tratamiento preciso, básate en sys.code.

Cuando falla la validación, en details.errors se incluyen los elementos que no cumplen. A continuación se muestra una respuesta en la que la validación falló al incluir en el cuerpo una propiedad que no existe en el esquema.

{
  "requestId": "yJ8KpQ2mWtnLrZ4Xv7BcEadfh3sNuMvKbGT5Pq9wRsx",
  "sys": {
    "id": "Lm2Nq9Tr8KdW4xZc",
    "type": "BadRequest",
    "code": "WGL400006",
    "timestamp": 1781776000000
  },
  "details": {
    "errors": [
      { "path": "", "message": "property 'X' is not defined in the schema", "property": "X" }
    ]
  },
  "reason": "Some values do not satisfy validation rules.",
  "suggestion": "Please check the request body and try again."
}

Cada elemento de details.errors contiene la posición que no cumple (path), la descripción (message) y el nombre de la propiedad relacionada (property). Si hay varios elementos, se incluye uno por cada valor que no cumple.

Códigos más frecuentes

A continuación se muestran los códigos de error que se encuentran con más frecuencia.

CódigoClasificaciónSignificadoSituación habitual
WEB401001UnauthorizedEl token no es válidoEl token Bearer de Authorization ha caducado o es incorrecto.
WGL403001ForbiddenSin permisoEl rol del llamante no permite esa operación.
WGL404001NotFoundEl recurso no existe o ha sido eliminadoSe consultó con un sys.id incorrecto, o se llamó a una función aún no configurada (por ejemplo, un dominio personalizado sin conectar).
WGL400006BadRequestEl valor del cuerpo no cumple las reglas de validaciónEl cuerpo se envió con una clave de campo o un tipo incorrectos. Los elementos que no cumplen se incluyen en details.errors.
WGL409005ConflictEl recurso se ha modificado entretantoFalta la cabecera X-Weegloo-Version o difiere de la versión actual (consulta Convenciones).
WGL422007UnprocessableNo se puede archivar por estar publicadoPara archivar un Content o un Media, primero hay que anular su publicación.
WGL422009UnprocessableNo se puede eliminar por estar publicadoPara eliminar un Content o un Media publicado, primero hay que anular su publicación.
WGL429001TooManyRequestLímite del plan superadoEl número de recursos creados, como Organization o Space, ha superado el límite del plan actual. Si subes de plan, el límite aumenta.

Los códigos anteriores son solo una parte de los que se encuentran con frecuencia. Además de estos, puede haber muchos más códigos según la operación o el recurso. Sea cual sea el código que recibas, identifica la categoría principal con sys.type y comprueba la causa concreta y la dirección de la solución con reason y suggestion.