Endpoints de la API

A continuación se detallan los endpoints disponibles para interactuar con la API de Amadeus Magister, para su integración y consulta de información general, académica, y administrativa.


GETapi/v1/academic/school_years

Listar Años Escolares

Este endpoint devuelve el año escolar actual y si lo hubiese, el próximo año escolar.

Request

GET
api/v1/academic/school_years
curl https://dominio.amadeusmagister.com/api/v1/academic/school_years \
  --header 'Authorization: Bearer <API_KEY>'

Response

200 OK
{
  "status": "success",
  "data": [
    {
      "id": 2,
      "start_enrollment": "2024-10-01",
      "start_school_year": "2025-01-01",
      "end_enrollment": null,
      "end_school_year": "2025-12-31",
      "year": "2025/2025"
    }
  ]
}

GETapi/v1/academic/specialities

Listar Especialidades Académicas

Este endpoint devuelve las especialidades académicas disponibles en un año escolar concreto.

Parámetros requeridos

  • Name
    school_year_id
    Type
    integer
    Description

    Identificador del año escolar para el cual se desean obtener las especialidades académicas.

Request

GET
api/v1/academic/specialities
curl https://dominio.amadeusmagister.com/api/v1/academic/specialities \
  --header 'Authorization: Bearer <API_KEY>' \
  --data '{
    "school_year_id": 2
  }'

Response

200 OK
{
  "status": "success",
  "data": [
    {
      "id": 5,
      "name": "Clarinete",
      "code": null,
      "school_year_id": 2
    },
    {
      "id": 14,
      "name": "Contrabajo",
      "code": null,
      "school_year_id": 2
    },
    {
      "id": 9,
      "name": "Fagot",
      "code": null,
      "school_year_id": 2
    },
  ]
}

GETapi/v1/academic/subjects

Listar Asignaturas

Este endpoint devuelve las asignaturas disponibles en un año escolar concreto.

Parámetros requeridos

  • Name
    school_year_id
    Type
    integer
    Description

    Identificador del año escolar para el que se desean obtener las asignaturas.

Request

GET
api/v1/academic/subjects
curl https://dominio.amadeusmagister.com/api/v1/academic/subjects \
  --header 'Authorization: Bearer <API_KEY>' \
  --data '{
    "school_year_id": 2
  }'

Response

200 OK
{
  "status": "success",
  "data": [
    {
      "id": 8,
      "code": null,
      "name": "Acompañante",
      "school_hours": "00:30:00",
      "price": 10,
      "student_ratio": 1,
      "ects": 0,
      "is_individual": false,
      "school_year_id": 2
    },
    ...
  ]
}

GETapi/v1/academic/syllabis

Listar Planes de Estudio

Este endpoint devuelve los planes de estudio disponibles para un año escolar concreto.

Parámetros requeridos

  • Name
    school_year_id
    Type
    integer
    Description

    Identificador del año escolar para el que se desean obtener los planes de estudio.

Request

GET
api/v1/academic/syllabis
curl https://dominio.amadeusmagister.com/api/v1/academic/syllabis \
  --header 'Authorization: Bearer <API_KEY>' \
  --data '{
    "school_year_id": 2
  }'

Response

200 OK
{
  "status": "success",
  "data": [
    {
      "id": 1,
      "name": "",
      "course": {
        "id": 2,
        "number": 1,
        "name": "Primero"
      },
      "degree": {
        "id": 1,
        "order": 1,
        "name": "Grado Iniciación"
      },
      "min_electives": 0,
      "max_electives": 0,
      "age": 3,
      "max_failed_subjects_to_pass": 0,
      "grading_system_id": 1,
      "specialities": [],
      "subjects_mandatories": [
        {
          "id": 1,
          "subject_id": 3,
          "name": "Jardín musical",
          "school_hours": "02:00",
          "classes_per_week": 2,
          "price": 35,
          "ects": 0,
          "student_ratio": 12
        }
      ],
      "subjects_optionals": [],
      "speciality_subjects": []
    },
    ...
  ]
}

GETapi/v1/academic/speciality_experience

Experiencia Previa

Este endpoint devuelve las opciones de experiencia previa soportadas por el sistema, que pueden ser seleccionadas al momento de inscribir a un alumno.

Request

GET
api/v1/academic/speciality_experience
curl https://dominio.amadeusmagister.com/api/v1/academic/speciality_experience \
  --header 'Authorization: Bearer <API_KEY>'

Response

200 OK
{
  "status": "success",
  "data": [
    {
      "key": "0",
      "value": "0-6 meses"
    },
    {
      "key": "1",
      "value": "1 año"
    },
    {
      "key": "2",
      "value": "2 años"
    },
    {
      "key": "3",
      "value": "3 años o más"
    }
  ]
}

POSTapi/v1/academic/adult_enrollment

Inscribir Alumno Mayor de Edad

Este endpoint permite registrar una nueva solicitud de inscripción para un alumno mayor de edad, sin registrar a un responsable/tutor legal. Una vez completada, el alumno recibirá un correo para configurar su cuenta.

Requisitos importantes:

  • Debe indicarse el año escolar para el cual se está realizando la matrícula (actual o próximo).
  • Se deben aceptar los términos y condiciones (terms_and_conditions = true).
  • Si se especifica una preferencia de especialidad/plan de estudios, estas deben ser válidas y estar disponibles para el año escolar indicado.
  • La información de país y región debe ser válida según las listas del sistema.
  • La fecha de nacimiento del alumno debe ser válida y estar en el formato correcto (YYYY-MM-DD), así como, ser mayor de edad (18 años o más).
  • Se debe proporcionar un número de teléfono de contacto del alumno e incluir el prefijo internacional correspondiente segun el estándar E.164 (ejemplo: +34 para España).

Parámetros requeridos

  • Name
    school_year_id
    Type
    integer
    Description

    Identificador del año escolar para el cual se está realizando la matrícula.

  • Name
    student_email
    Type
    string
    Description

    Correo electrónico del alumno (requerido y único en el sistema).

  • Name
    student_name
    Type
    string
    Description

    Nombre del alumno.

  • Name
    student_surname
    Type
    string
    Description

    Apellidos del alumno.

  • Name
    student_birth_date
    Type
    date
    Description

    Fecha de nacimiento del alumno (formato: YYYY-MM-DD). Debe ser mayor de edad.

  • Name
    student_document_type
    Type
    string
    Description

    Tipo de documento del alumno, debe estar soportado por el sistema según tipos de documento.

  • Name
    student_document
    Type
    string
    Description

    Documento de identidad del alumno (único en el sistema).

  • Name
    student_phone
    Type
    string
    Description

    Número de teléfono del alumno (sin espacios).

  • Name
    student_phone_country_code
    Type
    string
    Description

    Prefijo internacional del teléfono del alumno, según el estándar E.164 (ejemplo: +34 para España).

  • Name
    student_country
    Type
    string
    Description

    Código del país del alumno, según paises soportados por el sistema.

  • Name
    student_region
    Type
    string
    Description

    Código de la región del alumno, según regiones soportadas por el sistema.

  • Name
    student_city
    Type
    string
    Description

    Ciudad del alumno.

  • Name
    student_zip_code
    Type
    string
    Description

    Código postal del alumno.

  • Name
    student_address
    Type
    string
    Description

    Dirección completa del alumno.

  • Name
    terms_and_conditions
    Type
    boolean
    Description

    Confirmación de aceptación de términos y condiciones (true).

Parámetros opcionales

  • Name
    student_experience_speciality
    Type
    integer
    Description

    Identificador de la especialidad para la cual el alumno tiene experiencia previa, según especialidades académicas soportadas para el año escolar indicado.

  • Name
    student_experience_years
    Type
    integer
    Description

    Experiencia previa del alumno, según key del endpoint experiencia previa.

  • Name
    student_speciality_option1
    Type
    integer
    Description

    Opción 1 de especialidad deseada, según especialidades académicas soportadas para el año escolar indicado.

  • Name
    student_speciality_option2
    Type
    integer
    Description

    Opción 2 de especialidad deseada.

  • Name
    student_speciality_option3
    Type
    integer
    Description

    Opción 3 de especialidad deseada.

  • Name
    student_syllabi_option1
    Type
    integer
    Description

    Opción 1 de plan de estudios deseado, según planes de estudio soportados para el año escolar indicado.

  • Name
    student_syllabi_option2
    Type
    integer
    Description

    Opción 2 de plan de estudios deseado.

  • Name
    student_syllabi_option3
    Type
    integer
    Description

    Opción 3 de plan de estudios deseado.

  • Name
    enrollment_observations
    Type
    string
    Description

    Observaciones adicionales sobre la inscripción.

Request

POST
api/v1/academic/adult_enrollment
curl --request POST https://dominio.amadeusmagister.com/api/v1/academic/adult_enrollment \
  --header 'Authorization: Bearer <API_KEY>' \
  --header 'Content-Type: application/json' \
  --data '{
    "school_year_id": 1,
    "student_email": "alumno@example.com",
    "student_name": "Juan",
    "student_surname": "Pérez",
    "student_birth_date": "2005-03-25",
    "student_document_type": "dni",
    "student_document": "12345678A",
    "student_phone": "600123456",
    "student_phone_country_code": "+34",
    "student_country": "es",
    "student_region": "md",
    "student_city": "Madrid",
    "student_zip_code": "28001",
    "student_address": "Calle Mayor 1",
    "student_experience_speciality": 1,
    "student_experience_years": 2,
    "student_speciality_option1": 3,
    "terms_and_conditions": true,
    "enrollment_observations": "Me gustaría poder asistir en horario de tardes."
  }'

Response

201 Created
{
  "status": "success",
  "data": "Enrollment created successfully."
}

POSTapi/v1/academic/minor_enrollment

Inscribir Alumno Menor de Edad

Este endpoint permite registrar una nueva solicitud de inscripción para un alumno menor de edad, con la obligación de registrar a un responsable/tutor legal, y opcionalmente a un segundo responsable legal. Posteriormente, el responsable legal o responsables legales y el alumno, recibirán un correo para configurar su cuenta.

Requisitos importantes:

  • Debe proporcionarse información relativa al responsable legal.
  • Debe indicarse el año escolar para el cual se está realizando la matrícula (actual o próximo).
  • Se deben aceptar los términos y condiciones (terms_and_conditions = true).
  • Si se especifica una preferencia de especialidad/plan de estudios, estas deben ser válidas y estar disponibles para el año escolar indicado.
  • La información de país y región debe ser válida según las listas del sistema.
  • La fecha de nacimiento del responsable legal debe ser válida y estar en el formato correcto (YYYY-MM-DD), así como, ser mayor de edad (18 años o más).
  • Se debe proporcionar un número de teléfono de contacto del responsable legal e incluir el prefijo internacional correspondiente segun el estándar E.164 (ejemplo: +34 para España).
  • Los campos del alumno son opcionales, pero se recomienda completarlos para facilitar la gestión de la matrícula.

Parámetros requeridos

  • Name
    school_year_id
    Type
    integer
    Description

    Identificador del año escolar para el cual se está realizando la matrícula.

  • Name
    guardian_email
    Type
    string
    Description

    Correo electrónico del responsable legal (requerido, único en el sistema y diferente al del alumno).

  • Name
    guardian_name
    Type
    string
    Description

    Nombre del responsable legal.

  • Name
    guardian_surname
    Type
    string
    Description

    Apellidos del responsable legal.

  • Name
    guardian_birth_date
    Type
    date
    Description

    Fecha de nacimiento del responsable legal (formato: YYYY-MM-DD). Debe ser mayor de edad.

  • Name
    guardian_document_type
    Type
    string
    Description

    Tipo de documento del responsable legal, debe estar soportado por el sistema según tipos de documento.

  • Name
    guardian_document
    Type
    string
    Description

    Documento de identidad del responsable legal (único en el sistema).

  • Name
    guardian_phone
    Type
    string
    Description

    Número de teléfono del responsable legal (sin espacios).

  • Name
    guardian_phone_country_code
    Type
    string
    Description

    Prefijo internacional del teléfono del responsable legal, según el estándar E.164 (ejemplo: +34 para España).

  • Name
    guardian_country
    Type
    string
    Description

    Código del país del responsable legal, según paises soportados por el sistema.

  • Name
    guardian_region
    Type
    string
    Description

    Código de la región del responsable legal, según regiones soportadas por el sistema.

  • Name
    guardian_city
    Type
    string
    Description

    Ciudad del responsable legal.

  • Name
    guardian_zip_code
    Type
    string
    Description

    Código postal del responsable legal.

  • Name
    guardian_address
    Type
    string
    Description

    Dirección completa del responsable legal.

  • Name
    student_email
    Type
    string
    Description

    Correo electrónico del alumno (requerido, único en el sistema y diferente al del responsable legal).

  • Name
    student_name
    Type
    string
    Description

    Nombre del alumno.

  • Name
    student_surname
    Type
    string
    Description

    Apellidos del alumno.

  • Name
    student_birth_date
    Type
    date
    Description

    Fecha de nacimiento del alumno (formato: YYYY-MM-DD).

  • Name
    terms_and_conditions
    Type
    boolean
    Description

    Confirmación de aceptación de términos y condiciones (true).

Parámetros opcionales

  • Name
    second_guardian_email
    Type
    string
    Description

    Segundo responsable legal (único en el sistema y diferente al del alumno y al primer responsable).

  • Name
    student_document_type
    Type
    string
    Description

    Tipo de documento del alumno, debe estar soportado por el sistema según tipos de documento.

  • Name
    student_document
    Type
    string
    Description

    Documento de identidad del alumno (único en el sistema).

  • Name
    student_phone
    Type
    string
    Description

    Número de teléfono del alumno (sin espacios).

  • Name
    student_phone_country_code
    Type
    string
    Description

    Prefijo internacional del teléfono del alumno, según el estándar E.164 (ejemplo: +34 para España).

  • Name
    student_country
    Type
    string
    Description

    Código del país del alumno, según paises soportados por el sistema.

  • Name
    student_region
    Type
    string
    Description

    Código de la región del alumno, según regiones soportadas por el sistema.

  • Name
    student_city
    Type
    string
    Description

    Ciudad del alumno.

  • Name
    student_zip_code
    Type
    string
    Description

    Código postal del alumno.

  • Name
    student_address
    Type
    string
    Description

    Dirección completa del alumno.

  • Name
    student_experience_speciality
    Type
    integer
    Description

    Identificador de la especialidad para la cual el alumno tiene experiencia previa, según especialidades académicas soportadas para el año escolar indicado.

  • Name
    student_experience_years
    Type
    integer
    Description

    Experiencia previa del alumno, según key del endpoint experiencia previa.

  • Name
    student_speciality_option1
    Type
    integer
    Description

    Opción 1 de especialidad deseada, según especialidades académicas soportadas para el año escolar indicado.

  • Name
    student_speciality_option2
    Type
    integer
    Description

    Opción 2 de especialidad deseada.

  • Name
    student_speciality_option3
    Type
    integer
    Description

    Opción 3 de especialidad deseada.

  • Name
    student_syllabi_option1
    Type
    integer
    Description

    Opción 1 de plan de estudios deseado, según planes de estudio soportados para el año escolar indicado.

  • Name
    student_syllabi_option2
    Type
    integer
    Description

    Opción 2 de plan de estudios deseado.

  • Name
    student_syllabi_option3
    Type
    integer
    Description

    Opción 3 de plan de estudios deseado.

  • Name
    enrollment_observations
    Type
    string
    Description

    Observaciones adicionales sobre la inscripción.

Request

POST
api/v1/academic/minor_enrollment
curl --request POST https://dominio.amadeusmagister.com/api/v1/academic/minor_enrollment \
  --header 'Authorization: Bearer <API_KEY>' \
  --header 'Content-Type: application/json' \
  --data '{
    "school_year_id": 1,
    "guardian_email": "tutor@example.com",
    "guardian_name": "Ana",
    "guardian_surname": "García",
    "guardian_birth_date": "1980-05-15",
    "guardian_document_type": "dni",
    "guardian_document": "87654321B",
    "guardian_phone": "600987654",
    "guardian_phone_country_code": "+34",
    "guardian_country": "es",
    "guardian_region": "md",
    "guardian_city": "Madrid",
    "guardian_zip_code": "28002",
    "guardian_address": "Calle Secundaria 2",
    "student_email": "alumno@example.com",
    "student_name": "Juan",
    "student_surname": "Pérez",
    "student_birth_date": "2018-03-25",
    "student_document_type": "dni",
    "student_document": "12345678A",
    "student_experience_speciality": 1,
    "student_experience_years": 2,
    "student_syllabi_option1": 4,
    "terms_and_conditions": true,
  }'

Response

201 Created
{
  "status": "success",
  "data": "Enrollment created successfully."
}