> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerian.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Lista de errores de Flowker

> Las API de Flowker devuelven detalles de problema RFC 9457 con un código de error estable, para que puedas diagnosticar problemas y enrutarlos al equipo correcto.

### Formato del error

La API de administración `/v1` devuelve los errores como un detalle de problema [RFC 9457](https://www.rfc-editor.org/rfc/rfc9457), servido con el tipo de contenido `application/problem+json`. Las rutas de webhook responden en el formato configurado de su disparador. Consulta [Errores en las rutas de webhook](#errors-on-webhook-routes).

<CodeGroup>
  ```json theme={null}
  {
    "type": "https://errors.lerian.studio/v1/FLK-0110",
    "title": "Bad Request",
    "status": 400,
    "detail": "name is a required field",
    "instance": "/v1/workflows",
    "code": "FLK-0110"
  }
  ```
</CodeGroup>

### Definiciones de los campos

* **`code`** – El código de error estable de Flowker. Ramifica tu integración sobre este campo.
* **`type`** – Un URI que identifica el error. Siempre es `https://errors.lerian.studio/v1/` más el `code`.
* **`title`** – La frase de motivo HTTP estándar para `status`, como `Not Found` o `Conflict`. No cambia según el código de error.
* **`status`** – El código de estado HTTP, repetido en el cuerpo.
* **`detail`** – Una explicación legible para personas de esta ocurrencia. Las respuestas con un estado de 500 o superior llevan en cambio un mensaje genérico fijo, así que usa `code` para diferenciarlas.
* **`instance`** – Un URI que identifica esta ocurrencia específica, cuando el endpoint proporciona uno.
* **`errors`** – Un arreglo opcional de entradas por campo. Consulta [Detalles de error por campo](#field-level-error-details).

<h3 id="field-level-error-details">
  Detalles de error por campo
</h3>

Cuando una solicitud falla la validación en campos específicos, el detalle de problema lleva un arreglo `errors`. Cada entrada nombra la entrada problemática.

<CodeGroup>
  ```json Example 1 theme={null}
  {
    "type": "https://errors.lerian.studio/v1/FLK-0301",
    "title": "Unprocessable Entity",
    "status": 422,
    "detail": "validation failed",
    "code": "FLK-0301",
    "errors": [
      {
        "location": "body.name",
        "message": "expected required property name to be present"
      }
    ]
  }
  ```

  ```json Example 2 theme={null}
  {
    "type": "https://errors.lerian.studio/v1/FLK-0001",
    "title": "Bad Request",
    "status": 400,
    "detail": "request body is invalid or malformed",
    "code": "FLK-0001",
    "errors": [
      {
        "location": "body.nodes",
        "message": "expected array length >= 1",
        "value": []
      }
    ]
  }
  ```
</CodeGroup>

Cada entrada lleva un `location` (dónde está el problema, como `body.nodes` o `path.id`), un `message`, y el `value` problemático cuando es seguro repetirlo.

<h3 id="errors-on-webhook-routes">
  Errores en las rutas de webhook
</h3>

Una ruta de webhook responde en el formato configurado de su disparador.

Una ruta de webhook JSON devuelve un objeto de error compacto con el tipo de contenido `application/json`:

<CodeGroup>
  ```json theme={null}
  {
    "code": "FLK-0361",
    "title": "Not Found",
    "message": "no webhook registered for this path and method"
  }
  ```
</CodeGroup>

* **`code`** – El código de error estable de Flowker, tomado de las tablas siguientes. Ramifica tu integración sobre este campo.
* **`title`** – La frase de motivo HTTP para el estado de la respuesta, como `Not Found` o `Payload Too Large`.
* **`message`** – Una explicación legible para personas de esta ocurrencia.

Una ruta de webhook XML devuelve en cambio un documento `<error>`, porque toda la ruta funciona en XML.

<CodeGroup>
  ```xml theme={null}
  <error>
    <code>XML_VALIDATION_FAILED</code>
    <message>element 'valor' is not a valid decimal</message>
    <details>line 12, column 5</details>
    <requestId>018f3e2a-1c4d-7b9e-a1b2-c3d4e5f6a7b8</requestId>
  </error>
  ```
</CodeGroup>

El elemento `code` lleva un código de Flowker de las tablas siguientes, o uno de dos códigos específicos de XML:

| Code                    | What it means                                                                                                                                            |
| ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `XML_MALFORMED`         | El cuerpo de la solicitud no es XML bien formado. Se devuelve con HTTP 400.                                                                              |
| `XML_VALIDATION_FAILED` | El cuerpo es XML bien formado, pero no cumple con el XSD de la ruta. Se devuelve con HTTP 422, y `details` lleva la línea y columna del primer hallazgo. |

## Errores generales

***

Estos errores se aplican a todos los endpoints de la API de Flowker.

| Code     | What it means                                                                                             |
| -------- | --------------------------------------------------------------------------------------------------------- |
| FLK-0001 | El cuerpo de la solicitud es inválido o está malformado. Verifica el formato JSON y vuelve a intentarlo.  |
| FLK-0002 | El ID proporcionado no es un UUID válido. Verifica el ID y vuelve a intentarlo.                           |
| FLK-0003 | Se requiere autenticación para acceder a este recurso. Envía un token bearer válido.                      |
| FLK-0004 | No tienes permiso para hacer esta acción. Revisa los permisos otorgados a tu token.                       |
| FLK-9999 | Ocurrió un error inesperado. Vuelve a intentarlo más tarde, o contacta a soporte si el problema persiste. |

## Errores de validación de la solicitud

***

La API devuelve estos errores cuando la solicitud no cumple con los requisitos de validación.

| Code     | What it means                                                                                                                                |
| -------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| FLK-0300 | La solicitud contiene campos inesperados. Elimina los campos adicionales y vuelve a intentarlo.                                              |
| FLK-0301 | Falta uno o más campos obligatorios. Proporciona todos los campos obligatorios y vuelve a intentarlo.                                        |
| FLK-0302 | La solicitud es inválida. Verifica el formato de la solicitud y vuelve a intentarlo.                                                         |
| FLK-0303 | Un campo usado en un cálculo tiene un tipo inválido. Verifica los tipos de campo y vuelve a intentarlo.                                      |
| FLK-0304 | Uno o más parámetros de consulta son inválidos. Verifica los parámetros y vuelve a intentarlo.                                               |
| FLK-0305 | La fecha debe estar en formato RFC 3339 con zona horaria, como `2026-01-28T10:30:00Z`. Los valores de solo fecha se rechazan.                |
| FLK-0306 | La fecha de fin debe ser posterior a la fecha de inicio. Proporciona un rango de fechas válido.                                              |
| FLK-0307 | El rango de fechas solicitado supera el período máximo permitido. Reduce el rango de fechas.                                                 |
| FLK-0308 | El rango de fechas es inválido. Verifica las fechas de inicio y fin.                                                                         |
| FLK-0309 | El parámetro `limit` supera el valor máximo permitido. Reduce el límite y vuelve a intentarlo.                                               |
| FLK-0310 | El orden de clasificación debe ser `ASC` o `DESC`. Proporciona un valor válido.                                                              |
| FLK-0311 | El parámetro de ruta proporcionado es inválido. Verifica el valor del parámetro y vuelve a intentarlo.                                       |
| FLK-0312 | La clave de metadatos supera la longitud máxima permitida de 64 caracteres. Reduce el tamaño de la clave.                                    |
| FLK-0313 | El valor de metadatos supera la longitud máxima permitida. Reduce el tamaño del valor.                                                       |
| FLK-0314 | Los valores de metadatos no pueden ser objetos anidados. Proporciona pares clave-valor planos.                                               |
| FLK-0315 | Los metadatos superan el número máximo de entradas. Reduce el número de entradas de metadatos.                                               |
| FLK-0321 | El cursor de paginación está malformado o no se pudo decodificar. Solicita la primera página de nuevo y sigue el cursor que devuelve la API. |

## Errores de entidad

***

| Code     | What it means                                                                                          |
| -------- | ------------------------------------------------------------------------------------------------------ |
| FLK-0400 | La entidad solicitada no existe. Verifica el ID y vuelve a intentarlo.                                 |
| FLK-0401 | Esta acción no está permitida en el estado actual. Revisa el estado del recurso y vuelve a intentarlo. |
| FLK-0402 | La entidad padre referenciada no existe. Verifica el ID del padre y vuelve a intentarlo.               |

## Errores de workflow

***

| Code     | What it means                                                                                                                                                                                                                                         |
| -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| FLK-0100 | El workflow solicitado no existe. Verifica el ID del workflow y vuelve a intentarlo.                                                                                                                                                                  |
| FLK-0101 | Ya existe un workflow con este nombre. Elige un nombre diferente y vuelve a intentarlo.                                                                                                                                                               |
| FLK-0102 | La transición de estado solicitada no está permitida. Revisa el estado actual del workflow y las transiciones válidas.                                                                                                                                |
| FLK-0103 | Los workflows que no están en borrador no se pueden modificar. Crea una versión nueva, o revierte el workflow a borrador.                                                                                                                             |
| FLK-0104 | Un nodo referencia un ejecutor del catálogo que no existe. Verifica el `executorId` del nodo.                                                                                                                                                         |
| FLK-0105 | La expresión condicional es inválida o no se pudo evaluar. Verifica la sintaxis de la expresión.                                                                                                                                                      |
| FLK-0110 | El campo `name` es obligatorio. Proporciona un nombre para el workflow y vuelve a intentarlo.                                                                                                                                                         |
| FLK-0111 | El nombre del workflow supera la longitud máxima permitida. Reduce el tamaño del nombre.                                                                                                                                                              |
| FLK-0112 | Un workflow debe tener al menos un nodo. Agrega nodos al workflow y vuelve a intentarlo.                                                                                                                                                              |
| FLK-0113 | El workflow supera el número máximo de nodos permitido. Reduce el número de nodos.                                                                                                                                                                    |
| FLK-0114 | El workflow supera el número máximo de aristas permitido. Reduce el número de aristas.                                                                                                                                                                |
| FLK-0115 | Una arista referencia un nodo que no existe en el workflow. Verifica todos los valores de origen y destino de las aristas.                                                                                                                            |
| FLK-0116 | El workflow debe tener al menos un nodo disparador. Agrega un disparador y vuelve a intentarlo.                                                                                                                                                       |
| FLK-0117 | El disparador de programación lleva una expresión cron inválida. Usa un cron estándar de 5 campos. Las programaciones de menos de un minuto no son compatibles.                                                                                       |
| FLK-0118 | El workflow no tiene disparador de programación, así que no tiene próximas ocurrencias para listar o administrar.                                                                                                                                     |
| FLK-0120 | Cada nodo debe tener un ID. Proporciona un ID para todos los nodos.                                                                                                                                                                                   |
| FLK-0121 | Cada nodo debe tener un tipo. Proporciona un tipo para todos los nodos.                                                                                                                                                                               |
| FLK-0122 | El override `responseStatusCode` de `set_output` de un nodo de acción debe ser un entero entre 200 y 599. Corrige el valor y vuelve a intentarlo.                                                                                                     |
| FLK-0130 | Cada arista debe tener un ID. Proporciona un ID para todas las aristas.                                                                                                                                                                               |
| FLK-0131 | Cada arista debe especificar un nodo de origen. Proporciona el ID del nodo de origen.                                                                                                                                                                 |
| FLK-0132 | Cada arista debe especificar un nodo de destino. Proporciona el ID del nodo de destino.                                                                                                                                                               |
| FLK-0140 | La configuración de mapeo de entrada es inválida. Verifica la sintaxis del mapeo y las referencias de campo.                                                                                                                                          |
| FLK-0141 | La configuración de mapeo de salida es inválida. Verifica la sintaxis del mapeo y las referencias de campo.                                                                                                                                           |
| FLK-0142 | La configuración de transformación es inválida. Verifica las expresiones de transformación.                                                                                                                                                           |
| FLK-0143 | La plantilla `data.body` de un nodo no se pudo resolver contra el contexto del workflow, porque una referencia `${...}` está malformada o no resuelve. El nodo falla sin llamar al servicio externo.                                                  |
| FLK-0150 | Falta el `providerConfigId` del nodo, no es un UUID válido, o nombra una configuración de proveedor que no existe o no está activa. Verifica el `providerConfigId` en cada nodo ejecutor, y la existencia y el estado de la configuración que nombra. |
| FLK-0151 | Un nodo combina una configuración de proveedor de un proveedor con un ejecutor de otro. Verifica que el `providerId` de la configuración y el `executorId` del nodo nombren el mismo proveedor del catálogo.                                          |

## Errores de condición de workflow

***

La API devuelve estos errores cuando el objeto `condition` estructurado de un nodo falla la validación durante la creación o actualización del workflow.

| Code     | What it means                                                                                                               |
| -------- | --------------------------------------------------------------------------------------------------------------------------- |
| FLK-0160 | Falta el campo `version` de la condición, o no es `2`.                                                                      |
| FLK-0161 | El objeto de condición está malformado estructuralmente, como un valor `cases` que no es un arreglo.                        |
| FLK-0162 | La condición no tiene casos. Agrega al menos un caso.                                                                       |
| FLK-0163 | Dos casos, o un caso y la rama predeterminada, comparten el mismo ID de handle de salida. Dale a cada rama un handle único. |
| FLK-0164 | Un caso tiene un ID de handle de salida vacío. Proporciona un handle para cada caso.                                        |
| FLK-0165 | El `mode` de la condición debe ser `rules` o `value`.                                                                       |
| FLK-0166 | Una condición en modo `value` necesita un operando de sujeto. Proporciona el sujeto.                                        |
| FLK-0167 | El `combinator` de un grupo debe ser `and` u `or`.                                                                          |
| FLK-0168 | Un grupo no lleva reglas ni grupos anidados. Agrega al menos una regla, o elimina el grupo.                                 |
| FLK-0169 | El operador de la regla no se reconoce. Usa un operador de la taxonomía admitida.                                           |
| FLK-0170 | El `valueType` de la regla no se reconoce. Usa un tipo de valor de la taxonomía admitida.                                   |
| FLK-0171 | El operador no está permitido para el `valueType` seleccionado. Cambia el operador o el tipo de valor.                      |
| FLK-0172 | Un operando tiene una ruta `source` vacía. Proporciona la ruta a leer.                                                      |
| FLK-0173 | Una transformación tiene una operación inválida, o parámetros inválidos para su operación.                                  |
| FLK-0174 | El `kind` de un operando derecho debe ser `literal` o `source`, y un operando derecho `source` necesita una ruta de origen. |
| FLK-0175 | La rama predeterminada tiene un ID de handle de salida vacío. Proporciona un handle.                                        |
| FLK-0176 | La condición supera el número máximo de casos. Reduce el número de casos.                                                   |
| FLK-0177 | Un grupo supera el número máximo de reglas. Divide las reglas entre grupos anidados.                                        |
| FLK-0178 | El pipeline de transformación de un operando supera el número máximo de transformaciones. Reduce el pipeline.               |
| FLK-0179 | Una regla `matchesRegex` o `notMatchesRegex` lleva una expresión regular que supera la longitud máxima.                     |
| FLK-0180 | Una regla `isIn` o `notIn` lleva una lista que supera el número máximo de elementos.                                        |
| FLK-0181 | La condición es estructuralmente válida, pero no se pudo compilar. Revisa los operandos y literales del nodo reportado.     |
| FLK-0182 | El árbol de la condición es demasiado grande considerando todos sus casos. Reduce el número de grupos y reglas.             |

## Errores de catálogo, ejecutor y disparador

***

| Code     | What it means                                                                                                       |
| -------- | ------------------------------------------------------------------------------------------------------------------- |
| FLK-0200 | El ejecutor solicitado no existe en el catálogo. Verifica el ID del ejecutor y vuelve a intentarlo.                 |
| FLK-0201 | La configuración de un nodo no coincide con el JSON Schema del ejecutor del catálogo. Verifícala contra ese schema. |
| FLK-0210 | El disparador solicitado no existe en el catálogo. Verifica el ID del disparador y vuelve a intentarlo.             |
| FLK-0211 | La configuración del disparador es inválida. Verifica el formato de la configuración.                               |
| FLK-0220 | El runner solicitado no existe. Verifica el ID del runner y vuelve a intentarlo.                                    |
| FLK-0230 | El proveedor solicitado no existe en el catálogo. Verifica el ID del proveedor y vuelve a intentarlo.               |
| FLK-0231 | Ya existe un proveedor con este identificador. Usa el proveedor existente, o elige un ID diferente.                 |
| FLK-0232 | La configuración del proveedor es inválida. Verifica el formato de la configuración.                                |
| FLK-0240 | La plantilla solicitada no existe en el catálogo. Verifica el ID de la plantilla y vuelve a intentarlo.             |
| FLK-0242 | Uno o más parámetros de la plantilla son inválidos. Verifica los parámetros contra el schema de la plantilla.       |

## Errores de configuración de ejecutor

***

| Code     | What it means                                                                                                                              |
| -------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| FLK-0250 | La configuración de ejecutor solicitada no existe. Verifica el ID y vuelve a intentarlo.                                                   |
| FLK-0251 | Ya existe una configuración de ejecutor con este nombre. Elige un nombre diferente y vuelve a intentarlo.                                  |
| FLK-0252 | La configuración de ejecutor no se puede modificar en su estado actual. Revisa el estado y vuelve a intentarlo.                            |
| FLK-0260 | El campo `name` es obligatorio. Proporciona un nombre para la configuración de ejecutor.                                                   |
| FLK-0261 | El nombre de la configuración de ejecutor supera la longitud máxima permitida. Reduce el tamaño del nombre.                                |
| FLK-0262 | El campo `baseUrl` es obligatorio. Proporciona una URL base para la configuración de ejecutor.                                             |
| FLK-0263 | La URL base proporcionada no es una URL válida. Verifica el formato de la URL.                                                             |
| FLK-0264 | La URL base supera la longitud máxima permitida. Reduce el tamaño de la URL.                                                               |
| FLK-0265 | Se debe configurar al menos un endpoint. Proporciona definiciones de endpoint.                                                             |
| FLK-0266 | Se requiere configuración de autenticación. Proporciona los ajustes de autenticación.                                                      |
| FLK-0267 | La descripción supera la longitud máxima permitida. Reduce el tamaño de la descripción.                                                    |
| FLK-0268 | El campo de tipo de autenticación es obligatorio. Proporciona un tipo de autenticación.                                                    |
| FLK-0269 | El tipo de autenticación no se reconoce. Proporciona un tipo de autenticación válido.                                                      |
| FLK-0270 | Cada endpoint debe tener un nombre. Proporciona nombres para todos los endpoints.                                                          |
| FLK-0271 | Cada endpoint debe tener una ruta. Proporciona rutas para todos los endpoints.                                                             |
| FLK-0272 | Cada endpoint debe especificar un método HTTP. Proporciona métodos para todos los endpoints.                                               |
| FLK-0273 | El método HTTP de un endpoint no se reconoce. Verifica el método en cada endpoint y vuelve a intentarlo.                                   |
| FLK-0284 | La URL base resuelve a una dirección que Flowker se niega a llamar, como un host loopback o link-local. Usa un host externo enrutable.     |
| FLK-0285 | El host de la URL base no está permitido por la lista de hosts permitidos de la configuración. Agrega el host a la lista, o cambia la URL. |

## Errores de configuración de proveedor

***

| Code     | What it means                                                                                                                                                                                                                                                                                                                                                                              |
| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| FLK-0290 | La configuración de proveedor solicitada no existe. Verifica el ID y vuelve a intentarlo.                                                                                                                                                                                                                                                                                                  |
| FLK-0291 | Ya existe una configuración de proveedor con este nombre. Elige un nombre diferente y vuelve a intentarlo.                                                                                                                                                                                                                                                                                 |
| FLK-0292 | La configuración de proveedor no se puede modificar en su estado actual. Revisa el estado y vuelve a intentarlo.                                                                                                                                                                                                                                                                           |
| FLK-0293 | El objeto `config` no coincide con el schema requerido del proveedor, o una entrada de `schemaBindings` está malformada — un `type` desconocido, un `schemaId` que está vacío, no es un UUID, o es todo ceros, `operations` en un binding que no es `openapi`, o una operación cuya ruta o método HTTP falta o es inválido. Verifica los campos de configuración y cada binding de schema. |
| FLK-0294 | El proveedor referenciado no existe en el catálogo. Verifica el ID del proveedor.                                                                                                                                                                                                                                                                                                          |
| FLK-0295 | El campo `name` es obligatorio. Proporciona un nombre para la configuración de proveedor.                                                                                                                                                                                                                                                                                                  |
| FLK-0296 | El nombre de la configuración de proveedor supera la longitud máxima permitida. Reduce el tamaño del nombre.                                                                                                                                                                                                                                                                               |
| FLK-0297 | El campo `providerId` es obligatorio para una configuración de proveedor de tipo `catalog`. Proporciona un ID de proveedor.                                                                                                                                                                                                                                                                |
| FLK-0298 | El campo `config` es obligatorio. Proporciona el objeto de configuración de proveedor.                                                                                                                                                                                                                                                                                                     |
| FLK-0299 | La descripción supera la longitud máxima permitida. Reduce el tamaño de la descripción.                                                                                                                                                                                                                                                                                                    |
| FLK-0316 | El ID de configuración de proveedor es obligatorio para esta operación. Proporciona el ID.                                                                                                                                                                                                                                                                                                 |
| FLK-0317 | Una entrada en la lista de hosts permitidos no es un host válido. Verifica cada entrada.                                                                                                                                                                                                                                                                                                   |
| FLK-0320 | Una URL base en la configuración apunta a un host que su propia lista de hosts permitidos rechaza. Alinea la URL y la lista.                                                                                                                                                                                                                                                               |
| FLK-0323 | Una configuración para el proveedor HTTP genérico debe declarar una lista de hosts permitidos. Una lista vacía permitiría llamadas a cualquier dirección, así que se rechaza.                                                                                                                                                                                                              |
| FLK-0952 | La actualización cambió el tipo de autenticación sin proporcionar una credencial que el tipo nuevo requiere y el anterior no requería. Envía ese valor junto con el cambio de tipo.                                                                                                                                                                                                        |
| FLK-0953 | La solicitud envió un marcador de posición de credencial enmascarada. Omite el campo para conservar la credencial almacenada, o envía su valor real para reemplazarla.                                                                                                                                                                                                                     |

## Errores de configuración de proveedor de OpenAPI externo

***

Estos errores se aplican a las configuraciones de proveedor de tipo `external_openapi`, que llaman a una operación declarada por un schema de OpenAPI almacenado.

| Code     | What it means                                                                                                                                      |
| -------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| FLK-0946 | La configuración omite la referencia obligatoria `config.openapi_schema_id`. Proporciona el ID del schema.                                         |
| FLK-0947 | El schema de OpenAPI referenciado no existe en tu tenant. Verifica el ID del schema.                                                               |
| FLK-0948 | El bloque `config.auth` está malformado — un tipo desconocido, falta un campo obligatorio, o tiene una forma incorrecta.                           |
| FLK-0949 | Ni `config.base_url` ni una entrada `servers` utilizable en el schema referenciado resuelven una URL base. El nodo falla sin llamar al servicio.   |
| FLK-0950 | La operación vinculada está ausente del schema referenciado, o el schema almacenado ya no se puede analizar. El nodo falla sin llamar al servicio. |
| FLK-0951 | El esquema de firma de solicitud HMAC no pudo resolver su secreto. La solicitud nunca se envía sin firmar.                                         |

## Errores de binding de schema del proveedor

***

| Code     | What it means                                                                                                                                                                            |
| -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| FLK-0942 | Un binding de schema referencia un ID de schema XSD u OpenAPI que no existe en tu tenant. Verifica el ID del schema.                                                                     |
| FLK-0943 | Un binding de schema de OpenAPI se restringe a una operación que el documento referenciado no declara. Verifica la ruta y el método.                                                     |
| FLK-0944 | La configuración lista el mismo binding dos veces. Elimina el duplicado.                                                                                                                 |
| FLK-0945 | El schema no se puede eliminar porque al menos una configuración de proveedor activa lo vincula. La respuesta lista las configuraciones de proveedor y los workflows que lo referencian. |

## Errores de ejecución de workflow

***

| Code     | What it means                                                                                                                                                 |
| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| FLK-0500 | La ejecución solicitada no existe. Verifica el ID de ejecución y vuelve a intentarlo.                                                                         |
| FLK-0501 | El workflow no está en estado activo y no se puede ejecutar. Activa el workflow y vuelve a intentarlo.                                                        |
| FLK-0502 | Una ejecución anterior de este workflow todavía está en curso. Espera a que se complete.                                                                      |
| FLK-0503 | La ejecución del workflow agotó el tiempo de espera antes de completarse. Revisa la lógica del workflow y los tiempos de respuesta de los servicios externos. |
| FLK-0504 | Un nodo dentro del workflow falló durante la ejecución. Revisa los detalles de la ejecución para ver el error específico del nodo.                            |
| FLK-0505 | Ya existe una ejecución con esta clave de idempotencia. Usa una clave nueva para ejecuciones distintas.                                                       |
| FLK-0506 | El cuerpo de la solicitud no debe superar 1 MB. Reduce el tamaño del payload de entrada.                                                                      |
| FLK-0507 | El circuit breaker de esta configuración de proveedor está abierto tras fallas repetidas. Espera antes de reintentar.                                         |
| FLK-0508 | Se detectó un ciclo en el grafo del workflow. Revisa las aristas y elimina las referencias circulares.                                                        |
| FLK-0509 | El header `Idempotency-Key` es obligatorio para las solicitudes de ejecución. Incluye una clave única en el header.                                           |

## Errores de solicitud saliente

***

Estos errores ocurren mientras un nodo llama a un servicio externo. Aparecen como fallas de nodo en los detalles de la ejecución.

| Code     | What it means                                                                                                                                                                      |
| -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| FLK-0322 | El cuerpo de respuesta del proveedor supera el límite de tamaño configurado. Reintentar no ayuda — la respuesta no se va a reducir.                                                |
| FLK-0324 | El cuerpo de solicitud que Flowker enviaría supera el límite de tamaño configurado. La solicitud se rechaza antes de cualquier llamada de red.                                     |
| FLK-0937 | Un nodo HTTP declara `request_format` de tipo `xml_converted` sin un `root_element` válido. Proporciona un nombre de elemento XML sintácticamente válido.                          |
| FLK-0938 | Un nodo `xml_passthrough` no tiene ningún payload de disparador XML para reenviar. El passthrough reenvía los bytes originales del disparador, así que necesita un disparador XML. |
| FLK-0939 | El payload de disparador retenido de un nodo `xml_passthrough` no es apto para un reenvío exacto en bytes, como un payload que no es UTF-8 válido.                                 |
| FLK-0940 | El cuerpo mapeado de un nodo `xml_converted` no es un objeto estructurado. El XML convertido necesita un objeto para serializar bajo `root_element`.                               |
| FLK-0941 | El cuerpo mapeado no se pudo codificar como XML. Revisa la estructura que producen los mapeos.                                                                                     |
| FLK-0958 | El `content_digest` de un nodo está malformado o no resuelve a un digest no vacío. Proporciona un valor SHA-256 hexadecimal de 64 caracteres.                                      |
| FLK-0959 | El cuerpo de solicitud ensamblado no coincide con `content_digest`, o no se ensambló ningún cuerpo. Flowker rechaza la solicitud antes de cualquier llamada de red.                |

## Errores de concurrencia

***

| Code     | What it means                                                                             |
| -------- | ----------------------------------------------------------------------------------------- |
| FLK-0350 | El estado del recurso cambió de forma concurrente. Reintenta con la versión más reciente. |

## Errores de webhook

***

| Code     | What it means                                                                                                                    |
| -------- | -------------------------------------------------------------------------------------------------------------------------------- |
| FLK-0360 | La ruta del webhook ya está registrada por otro workflow activo. Elige una ruta diferente, o desactiva el workflow en conflicto. |
| FLK-0361 | No hay ningún webhook registrado para esta ruta y método. Verifica la ruta y el método del webhook, y vuelve a intentarlo.       |
| FLK-0363 | El cuerpo de la solicitud del webhook no debe superar 1 MB. Reduce el tamaño del payload.                                        |

## Errores de contrato de disparador de webhook

***

La API devuelve estos errores cuando guardas el `input_contract` de un disparador de webhook o activas el workflow. También los devuelve durante la validación de un payload entrante contra el contrato.

| Code     | What it means                                                                                                                                                                                                                                                                                                                                                                                                                         |
| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| FLK-0930 | El `input_contract` del disparador es `xsd`, pero su `xsd_schema_id` no resuelve a un schema XSD almacenado.                                                                                                                                                                                                                                                                                                                          |
| FLK-0931 | El `input_contract` del disparador es `openapi`, pero su `openapi_schema_id` no resuelve a un schema de OpenAPI almacenado.                                                                                                                                                                                                                                                                                                           |
| FLK-0932 | El schema de OpenAPI referenciado no declara ninguna operación que coincida con el `operation_path` y el `operation_method` del disparador.                                                                                                                                                                                                                                                                                           |
| FLK-0933 | La operación de OpenAPI que coincide no declara ningún cuerpo de solicitud JSON, así que no puede validar un payload entrante.                                                                                                                                                                                                                                                                                                        |
| FLK-0934 | La configuración del disparador de webhook no coincide con el schema del disparador. El schema es cerrado, así que el disparador falla cuando omite `path` o `method`, le falta un campo que requiere su modo `input_contract` seleccionado, nombra el ID de schema o el campo de operación de otro modo, o lleva una clave o un valor que el schema no acepta. Revisa este error primero cuando configures un disparador de webhook. |
| FLK-0935 | El payload entrante es JSON bien formado, pero no cumple con el schema del cuerpo de solicitud de la operación.                                                                                                                                                                                                                                                                                                                       |
| FLK-0936 | El schema de OpenAPI no se puede eliminar porque uno o más workflows activos lo referencian desde un disparador de webhook. Las referencias de workflows en borrador o inactivos no bloquean la eliminación.                                                                                                                                                                                                                          |
| FLK-0957 | La declaración opcional `accepted_headers` del disparador es inválida. Usa una lista de nombres de header válidos, no vacíos y sin duplicados; los nombres que llevan credenciales se rechazan.                                                                                                                                                                                                                                       |

## Errores de solicitud y configuración de OpenAPI externo

***

| Code     | What it means                                                                                                                                                                                                         |
| -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| FLK-0954 | Un parámetro `header` o `query` obligatorio para una operación de OpenAPI externo no encontró ningún valor. El nodo falla antes de que Flowker envíe una solicitud.                                                   |
| FLK-0955 | Una configuración de proveedor `external_openapi` tiene un bloque `config.headers` malformado. Usa nombres de header válidos, no vacíos y únicos sin distinguir mayúsculas de minúsculas, con valores de tipo string. |

## Errores de schema XSD

***

| Code     | What it means                                                                                                                                                                      |
| -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| FLK-0700 | El schema XSD solicitado no existe. Verifica el ID del schema y vuelve a intentarlo.                                                                                               |
| FLK-0701 | Ya existe un schema XSD con este nombre y versión. Elige un nombre o una versión diferente.                                                                                        |
| FLK-0702 | El contenido subido falló la validación XSD. Verifica el documento del schema.                                                                                                     |
| FLK-0703 | El archivo del schema XSD supera el límite de 1 MiB. Reduce el tamaño del archivo.                                                                                                 |
| FLK-0704 | El schema XSD no se puede eliminar porque uno o más nodos de workflow lo referencian.                                                                                              |
| FLK-0710 | El campo `name` es obligatorio. Proporciona un nombre para el schema XSD.                                                                                                          |
| FLK-0711 | El campo `version` es obligatorio. Proporciona una versión para el schema XSD.                                                                                                     |
| FLK-0712 | El contenido del schema es obligatorio. Sube el documento XSD.                                                                                                                     |
| FLK-0720 | El servicio de validación de XML no está disponible o devolvió una falla, así que el payload no se pudo validar. Flowker rechaza la solicitud en lugar de aceptar XML sin validar. |

## Errores de schema de OpenAPI externo

***

Estos errores se aplican a los schemas de OpenAPI que almacenas por tenant y referencias desde disparadores, configuraciones de proveedor y nodos.

| Code     | What it means                                                                                                                     |
| -------- | --------------------------------------------------------------------------------------------------------------------------------- |
| FLK-0807 | El campo `name` es obligatorio. Proporciona un nombre para el schema de OpenAPI.                                                  |
| FLK-0808 | El campo `version` es obligatorio. Proporciona una versión para el schema de OpenAPI.                                             |
| FLK-0809 | El nombre del schema de OpenAPI supera la longitud máxima permitida. Reduce el tamaño del nombre.                                 |
| FLK-0810 | La versión del schema de OpenAPI supera la longitud máxima permitida. Reduce el tamaño de la versión.                             |
| FLK-0811 | El schema de OpenAPI solicitado no existe. Verifica el ID del schema y vuelve a intentarlo.                                       |
| FLK-0812 | Ya existe un schema de OpenAPI con este nombre y versión. Elige un nombre o una versión diferente.                                |
| FLK-0813 | El contenido del schema es obligatorio. Sube el documento de OpenAPI.                                                             |
| FLK-0900 | Los bytes subidos no se pueden analizar como un documento de OpenAPI 3.x válido, o el documento no declara ninguna operación.     |
| FLK-0901 | El schema de OpenAPI subido supera el límite de 8 MiB. Reduce el tamaño del archivo.                                              |
| FLK-0902 | El schema almacenado no declara ninguna operación que coincida con la ruta y el método solicitados. Verifica la ruta y el método. |

## Errores del registro de especificaciones de OpenAPI

***

Estos errores se aplican al registro compartido de especificaciones de OpenAPI, que fija la versión de la especificación que Flowker usa para enriquecer los schemas de salida de un servicio.

| Code     | What it means                                                                                                                                       |
| -------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| FLK-0801 | A la solicitud de fijación de versión le falta el servicio o la versión. Proporciona ambos.                                                         |
| FLK-0802 | Los bytes subidos no se pueden analizar como un documento de OpenAPI 3.x válido. Verifica la especificación.                                        |
| FLK-0803 | Ya hay una especificación almacenada para este servicio y versión. Las versiones son inmutables — sube una versión nueva.                           |
| FLK-0804 | El registro de schemas no tiene almacenamiento configurado, así que la subida no se puede aceptar.                                                  |
| FLK-0805 | La especificación subida supera el límite de tamaño del registro. Reduce el tamaño del archivo.                                                     |
| FLK-0806 | El identificador de ruta del servicio o la versión está malformado. Elimina valores vacíos, barras, `..`, caracteres de control y puntos iniciales. |

## Errores de ocurrencia programada

***

| Code     | What it means                                                                                         |
| -------- | ----------------------------------------------------------------------------------------------------- |
| FLK-0755 | La ocurrencia no está en un estado que se pueda ejecutar o descartar. Revisa su estado actual.        |
| FLK-0760 | La ocurrencia programada solicitada no existe. Verifica el ID de la ocurrencia y vuelve a intentarlo. |
