Filtros
Algunos APIs soportan filtros personalizados. Se puede especificar qué campos deben compararse con qué valores. La documentación de cada método de API especifica si soporta o no el uso de filtros.
Para utilizar los filtros deben agregarse estos campos como parámetro de la petición:
-
filter_by
: Indica el campo del objeto al que se quiere aplicar el filtro. -
filter_values
: Indica el valor que se debe comparar con cada elemento del resultado. -
filter_comp
: Indica la comparación que se utilizará entre el valor (filter_values
) y el valor del campo (filter_by
) en cada elemento del resultado.
Comparadores para Filtros
Cada campo soporta diferentes comparadores dependiendo de su tipo.
Texto
Nombre | Descripción |
---|---|
equal * |
exactamente igual al valor |
contains |
contiene el valor |
Numérico
Nombre | Descripción |
---|---|
equal * |
igual al valor |
not-equal |
no es igual al valor |
Fecha
Nombre | Descripción |
---|---|
equal * |
igual al valor |
before |
antes de la fecha |
after |
despues de de la fecha |
Lista
Nombre | Descripción |
---|---|
contains * |
esta en la lista |
empty |
las lista esta vacía |
not_empty |
la lista no esta vacía |
* Los comparadores marcados con * se utilizan de forma predeterminada si no se especifica un comparador.
Múltiples filtros simultáneos
Para utilizar varios filtros simultáneamente, se deben incluír en los mismos parámetros separados con |
.
Filtros combinados
Para filtrar por múltiples campos, de los cuales por lo menos uno contenga el valor indicado, se deben separar con ,
Ejemplos
Ejemplo 1
Para consultar todos los objetos en donde el campo de tipo texto, name
, contenga la palabra "casa".
filter_by = name
filter_values = casa
No es necesario incluír el parámetro filter_comp
porque se quiere usar la comparación predeterminada para el tipo texto.
Ejemplo 2
Para consultar todos los objetos en donde el campo de tipo numérico, group_id
, sea igual a 132 y el campo de tipo fecha, creation_date
, sea mayor al 10 de Mayo del 2017
filter_by = group_id|creation_date
filter_values = 132|2017-05-10
filter_comp = |after
Ejemplo 3
Para consultar todos los objetos en donde el campo de tipo texto, name
, o el campo de tipo numérico, id
, contengan "2004"
filter_by = name,id
filter_values = 2004