Errores

Los errores devuelven un objeto errors. Los errores generales usan detail; los errores de validación usan el nombre del campo.

API key inválida

Status: 401 Unauthorized

{
  "errors": {
    "detail": "Missing or invalid API key"
  }
}

Recurso no encontrado

Status: 404 Not Found

{
  "errors": {
    "detail": "Project not found"
  }
}

Validación de campos

Status: 422 Unprocessable Entity

{
  "errors": {
    "title": ["no puede estar vacío"]
  }
}

Límite de proyectos activos

Al crear un proyecto, Kordia respeta el límite del plan de la organización.

Status: 422 Unprocessable Entity

{
  "errors": {
    "title": ["Has alcanzado el límite de proyectos activos de tu plan (2)"]
  }
}

Límite de recursos activos

Un recurso cuenta como activo cuando tiene un contrato activo. Si creas un recurso con contrato inicial y ese contrato supera el límite del plan, Kordia no guarda el recurso a medias.

Status: 422 Unprocessable Entity

{
  "errors": {
    "contract": ["Active resource limit reached for the current plan (5)"]
  }
}

external_id duplicado

external_id es único por organización y tipo de recurso.

Status: 422 Unprocessable Entity

{
  "errors": {
    "external_id": ["ya existe un proyecto con ese identificador externo"]
  }
}