<< REST API
Leer tutores Leer tutor Crear tutor Eliminar tutor
En el modelo, tutor está relacionado 1 a 1 con supervisor, por tanto se le pasan los datos de ambos para crear los registros en las 2 tablas.
Leer tutores
Operación
GET /tutor
Petición
No se pasa ningún valor.
Ejemplo de petición:
GET /tutor
Respuesta
Se devuelve un array de tutores.
Ejemplo de respuesta:
[
    {
        "supervisor": {
            "id": 17,
            "name": "yo",
            "surname": "mismo",
            "postalAddress": null,
            "contactEmail": "yeah@ujaen.es",
            "contactPhone": null,
            "preferedLanguage": "ES"
        },
        "id": 424
    },
    {
         ...
    }
]Leer tutor
Operación
GET /tutor/<tutor-ID>
Petición
Se pasa el ID del tutor al final de la petición.
Ejemplo de petición:
GET /tutor/424
Respuesta
Se devuelve el tutor.
Ejemplo de respuesta:
{
    "supervisor": {
        "id": 17,
        "name": "yo",
        "surname": "mismo",
        "postalAddress": null,
        "contactEmail": "yeah@ujaen.es",
        "contactPhone": null,
        "preferedLanguage": "ES"
    },
    "id": 424
}Crear tutor
Los atributos se van a enviar en la petición HTTP codificados como JSON. Se responde con un objeto JSON que representa el nuevo recurso creado y código HTTP 200. Si se produce un error de validación, se enviará un código de estado 401 junto a la respuesta JSON con los atributos requeridos.
Operación
POST /tutor
Petición
Se le pasa un objeto JSON con los siguientes campos:
- 
name(string): Nombre del profesor/supervisor
- 
surname(string): Apellidos del profesor/supervisor
- 
contactEmail(string): Email del profesor/supervisor
- 
postalAddress(string): Dirección del profesor/supervisor (opcional)
- 
contactPhone(string): Teléfono del profesor/supervisor (opcional)
- 
preferedLanguage(string): Idioma preferido (Ejemplo: ES)
Ejemplo de petición:
POST /tutor
{
        "name": "John", 
        "surname": "Doe", 
        "contactEmail": "johndoe@nothing.com", 
        "preferedLanguage": "ES"
}Respuesta
Se devuelve el objeto creado en tutor y también en supervisor.
Ejemplo de respuesta:
{
    "tutor": {
        "supervisor": 18,
        "id": 425
    }
}Eliminar tutor
Se le pasa el id del recurso a eliminar y devuelve el recurso eliminado con código de estado 200 o bien el código 404 si no existe con ese id.
Operación
DELETE /tutor/<supervisor-ID>
Petición
Se pasa el ID del supervisor al final de la petición.
Ejemplo de petición:
DELETE /tutor/18
Respuesta
Se devuelve el objeto tutor y supervisor eliminado.
Ejemplo de respuesta:
{
    "tutor": [
        {
            "id": 425,
            "supervisor": 18
        }
    ],
    "supervisor": [
        {
            "id": 18,
            "name": "John",
            "surname": "Doe",
            "postal_address": null,
            "contact_email": "johndoe@nothing.com",
            "contact_phone": null,
            "prefered_language": "ES"
        }
    ]
}