Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/andrespaul123/micole-flutter/llms.txt

Use this file to discover all available pages before exploring further.

Attendance tracking in Mi Cole allows teachers to record the daily presence of every student enrolled in a class. Each attendance session is tied to a specific date and class assignment, and every student in the roster receives an individual status entry with an optional observation note. Teachers can submit a fresh attendance record or pull up an existing one for editing.

Data Models

Asistencia

Represents one attendance session for a class on a given date.
FieldTypeDescription
idint?Unique identifier assigned by the server
fechaString?ISO-8601 date of the session (YYYY-MM-DD)
detallesList<AsistenciaDetalle>Per-student attendance entries

AsistenciaDetalle

Represents one student’s status within an attendance session.
FieldTypeDescription
estudianteIdint?Student ID
estudianteString?Student full name (resolved from nested JSON)
estadoStringAttendance status — e.g. presente, ausente, tardanza
observacionString?Optional free-text observation from the teacher
When serialised with toJson(), AsistenciaDetalle produces:
{
  "estudiante_id": 42,
  "estado": "presente",
  "observacion": null
}

API Reference — AsistenciaRepository

Register attendance

Future<void> registrarAsistencia({
  required int periodoId,
  required int asignacionId,
  required String fecha,
  required List<AsistenciaDetalle> asistencias,
})
POST /periodos/:periodoId/asignaciones/:asignacionId/asistencia Creates a new attendance record for the given date. The full request body shape:
{
  "fecha": "2025-03-10",
  "asistencias": [
    { "estudiante_id": 1, "estado": "presente", "observacion": null },
    { "estudiante_id": 2, "estado": "ausente",  "observacion": "Aviso previo" },
    { "estudiante_id": 3, "estado": "tardanza",  "observacion": "Llegó 10 min tarde" }
  ]
}

Get attendance for a specific date

Future<Asistencia> obtenerAsistencia({
  required int periodoId,
  required int asignacionId,
  required String fecha,
})
GET /periodos/:periodoId/asignaciones/:asignacionId/asistencia/:fecha Returns the Asistencia record for a particular date. If no record exists for that date, the server returns a 404.
Before submitting a new attendance record, call obtenerAsistencia for today’s date. If a record already exists, use actualizarAsistencia with its id rather than creating a duplicate entry.

List all attendance records for a class

Future<List<Asistencia>> listarAsistencias({
  required int periodoId,
  required int asignacionId,
})
GET /periodos/:periodoId/asignaciones/:asignacionId/asistencia Returns every Asistencia record for the class, useful for building historical views or summary reports.

Update an existing attendance record

Future<void> actualizarAsistencia({
  required int asistenciaId,
  required List<AsistenciaDetalle> asistencias,
})
PUT /asistencia/:asistenciaId Replaces the detail entries of an existing attendance session. The request body contains only the asistencias array:
{
  "asistencias": [
    { "estudiante_id": 1, "estado": "ausente", "observacion": "Se fue antes del recreo" },
    { "estudiante_id": 2, "estado": "presente", "observacion": null }
  ]
}

Route

RouteDescription
/mis-clases/:periodoId/:cursoId/:paraleloId/:asignacionId/asistenciaOpen the attendance screen for the class

Build docs developers (and LLMs) love