Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/JuanSebax85/backend-prueba-fullstack/llms.txt

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

The Backend Prueba Fullstack API is a REST API running on Spring Boot 3. It exposes three resources — students, subjects, and grades — over plain HTTP with no authentication required. All request and response bodies use JSON.

Base URL

http://localhost:8080
All endpoints are relative to this base URL. The server must be running locally (via Docker Compose or directly with Maven) before making requests.

Authentication

No authentication is required. All endpoints are open. You do not need API keys, tokens, or credentials.

Content type

Set Content-Type: application/json on all POST and PUT requests. GET and DELETE requests do not require a body.

Resources

The API exposes three top-level resources:

Alumnos

Student records. Create, read, update, and delete students by ID. Each student has a name, surname, email, and date of birth.

Materias

Academic subjects. Each subject has a name, a unique code, and a credit value.

Notas

Grades that link one student to one subject. Responses use a DTO that includes the alumno and materia details inline.

HTTP methods

MethodPurpose
GETRead a resource or list all resources
POSTCreate a new resource
PUTUpdate an existing resource by ID
DELETERemove a resource by ID

Response shapes

Alumno

{
  "id": 1,
  "nombre": "Juan",
  "apellido": "García",
  "email": "juan@example.com",
  "fechaNacimiento": "2000-05-15"
}

Materia

{
  "id": 1,
  "nombre": "Matemáticas",
  "codigo": "MAT101",
  "creditos": 4
}

Nota (NotaDTO)

Nota responses use a DTO that flattens the related alumno and materia into the same object rather than nesting them. You do not need to make separate requests to resolve the student or subject name.
{
  "id": 1,
  "valor": 8.5,
  "alumnoId": 1,
  "alumnoNombre": "Juan",
  "alumnoApellido": "García",
  "materiaId": 1,
  "materiaNombre": "Matemáticas"
}

Pagination

This API does not implement pagination. All list endpoints return the complete collection in a single array. Plan accordingly if the dataset is large.

Rate limiting

There is no rate limiting on any endpoint.

CORS

The API allows cross-origin requests from http://localhost:3000. The following methods and headers are permitted:
  • Methods: GET, POST, PUT, DELETE, OPTIONS
  • Headers: all headers allowed (*)
If your frontend runs on a different origin, you will need to update the CORS configuration in the source code before making cross-origin requests.

Making a request

The example below fetches all students:
curl http://localhost:8080/alumnos
To create a new student:
curl -X POST http://localhost:8080/alumnos \
  -H "Content-Type: application/json" \
  -d '{
    "nombre": "Juan",
    "apellido": "García",
    "email": "juan@example.com",
    "fechaNacimiento": "2000-05-15"
  }'
You do not need to provide an id field in POST requests. The API ignores any id value you send and assigns one automatically.

Error handling

The API returns standard HTTP status codes. Some error conditions — particularly on the /notas resource — result in 500 Internal Server Error rather than a structured 4xx response.

Error reference

Full list of status codes, when each one occurs, and how to handle them.

Build docs developers (and LLMs) love