Saltar a contenido

Crear Curso Escolar

POST /api/v2/school-courses

Auth: Bearer JWT (rol: admin)

Descripción: Crea automáticamente el siguiente curso escolar. El nuevo curso pasa a ser el curso actual y el anterior deja de serlo. El nombre se genera automáticamente basado en el último curso existente (ej: si existe "Curso 2025/2026", creará "Curso 2026/2027").

Body

No requiere body - Todo es automático.

cURL

curl -X POST http://localhost:7001/api/v2/school-courses \
  -H "Authorization: Bearer <TOKEN>"

Response (201)

{
  "ok": true,
  "data": {
    "id": 5,
    "name": "Curso 2026/2027",
    "isCurrent": true
  }
}

Errores

Código Descripción Ejemplo
401 Token inválido o expirado { "message": "Unauthorized" }
403 Usuario sin permisos de admin { "message": "Forbidden" }
409 Nombre de curso ya existe { "message": "School course with name 'Curso 2026/2027' already exists" }

Notas

  • Completamente automático: No requiere parámetros, el sistema genera todo automáticamente
  • Curso actual automático: El nuevo curso siempre pasa a ser el curso actual (isCurrent: true)
  • Curso anterior: Automáticamente deja de ser el actual (isCurrent: false)
  • Ejemplo de generación: Si el último curso es "Curso 2025/2026", el siguiente será "Curso 2026/2027"
  • Si no hay cursos previos, crea "Curso YYYY/YYYY+1" basado en el año actual

Relacionado

  • GET /api/school-courses/all - Listar todos los cursos (v1)