Páginas filhas
  • Utilizando Filtros Complexos - Exemplos do guia de API - ODATA

Sumário



Objetivo



As APIs expostas no RM.Host, suportam filtros no padrão ODATA. A seguir, serão mostrados alguns exemplos de utilização.

1 - Exemplos de filtro no padrão ODATA


Veja a seguir exemplos de filtros no padrão odata.


OperadorDescriçãoExemplo
Logical Operators
eqEqual/Suppliers?$filter=Address/City eq 'Redmond'
neNot equal/Suppliers?$filter=Address/City ne 'London'
gtGreater than/Products?$filter=Price gt 20
geGreater than or equal/Products?$filter=Price ge 10
ltLess than/Products?$filter=Price lt 20
leLess than or equal/Products?$filter=Price le 100
andLogical and/Products?$filter=Price le 200 and Price gt 3.5
orLogical or/Products?$filter=Price le 3.5 or Price gt 200
notLogical negation/Products?$filter=not endswith(Description,'milk')
Grouping Operators
( )grouping/Products?$filter=(Price lt 5)


Ao utilizar campos do tipo data é importante saber:

  • Datas devem ser informadas com Time Zone. Exemplo: 2014-07-07T18:32:15Z ou 2014-07-07T15:32:15-03:00
  • Datas enviadas na requisição entre aspas, por exemplo: "2014-07-07T15:32:15-03:00", serão tratadas internamente como string. Recomenda-se usar o Time Zone.


1.2 - Aplicação


Para contextualizar o uso dos filtros, utilizamos a API de usuários como exemplo.

Para filtrar todos os usuários que tem a data de criação igual a  "2014-07-07T18:32:15Z", a seguinte requisição será feita:

http://localhost:8051/api/framework/v1/users?$filter=(meta.created eq 2014-07-07T18:32:15Z)