Busqueda Global
Búsqueda global​
Este parámetro de consulta es útil cuando necesitas buscar registros en base a palabras clave. Consiste en agregar el parámetro global_search
a la URL (Ej: /api/students?global_search="<key words>"
) y pasarle el término de búsqueda que deseas encontrar.
Sintaxis​
# Busca estudiantes cuyo nombre y correo electrónico coincidan.
GET /api/students?global_search="James @example.edu"
# Busca estudiantes cuyo curso coincida.
GET /api/students?global_search="Segundo de básica"
# Busca estudiantes cuyo curso y paralelo coincidan.
GET /api/students?global_search="Segundo de básica 2B-A"
Disponibilidad​
Este parámetro de consulta está disponible en los siguientes endpoints:
-
Estudiantes (
/api/students
)- Búsqueda por nombres
- Búsqueda por curso
- Búsqueda por paralelo
- Búsqueda por correo electrónico
- Búsqueda por número de identificación
-
Padres (
/api/parents
)- Búsqueda por nombres
- Búsqueda por apellidos
- Búsqueda por correo electrónico
- Búsqueda por número de identificación
-
Personal (
/api/staff
)- Búsqueda por nombres
- Búsqueda por apellidos
- Búsqueda por correo electrónico
- Búsqueda por número de identificación
Se recomienda el uso de paginación para obtener resultados rápidos y eficientes.
Ejemplos comunes​
- Estudiantes
- Padres
- Personal
La API devolverá los estudiantes cuyo nombre y curso coincidan con el término de búsqueda.
GET /api/students?global_search="James Primero de basica"
--------------------------------------------
{
"response": [
{
"_id": "60bc56500000000000000000",
"user": {
"_id": "61bc56500000000000000000",
"id_card": "555445678",
"name": "James",
"surname": "Doe",
"email": "james.doe@example.com"
...
},
"relational_data": {
"all": "james, doe james.doe@example.com 555445678"
}
...
},
{
"_id": "60bc565000000000000000001",
"user": {
"_id": "61bc56500000000000000001",
"name": "James",
"id_card": "111445678",
"surname": "Smith",
"email": "james.smith@example.com"
...
},
"relational_data": {
"all": "james, smith james.smith@example.com 111445678"
}
...
}
],
"errors": []
}
La API devolverá los padres cuyo nombre y terminación de correo electrónico coincidan con el término de búsqueda.
GET /api/parents?global_search="John @example.edu"
--------------------------------------------
{
"response": [
{
"_id": "60bc56500000000000000000",
"user": {
"_id": "61bc56500000000000000000",
"id_card": "333445678",
"name": "John",
"surname": "Doe",
"email": "john.doe@example.edu"
...
},
"relational_data": {
"all": "john, doe john.doe@example.edu 333445678"
}
...
},
{
"_id": "60bc565000000000000000001",
"user": {
"_id": "61bc56500000000000000001",
"id_card": "444445678",
"name": "John",
"surname": "Erickson",
"email": "john.erickson@example.edu"
...
},
"relational_data": {
"all": "john, erickson john.erickson@example.edu 444445678"
}
...
}
],
"errors": []
}
La API devolverá el personal cuyo nombre y los primeros numeros del número de identificación coincidan con el término de búsqueda.
GET /api/staff?global_search="Robert 2322222"
--------------------------------------------
{
"response": [
{
"_id": "60bc56500000000000000000",
"user": {
"_id": "61bc56500000000000000000",
"id_card": "222445678",
"name": "Robert",
"surname": "Doe",
"email": "robert.doe@example.edu"
},
"relational_data": {
"all": "robert, doe robert.doe@example.edu 2322222-8"
}
},
{
"_id": "60bc56500000000000000000",
"user": {
"_id": "61bc56500000000000000000",
"id_card": "2224987654",
"name": "Robert",
"surname": "Parker",
"email": "robert.parker@example.edu"
},
"relational_data": {
"all": "robert, parker robert.parker@example.edu 2322222-5"
}
}
],
"errors": []
}