Visão geralComo funcionam os filtros da API#
Os endpoints da API podem aceitar parâmetros de consulta para restringir resultados, navegar entre páginas e montar buscas mais específicas.Importante:
nem todos os endpoints aceitam os mesmos filtros. Os campos e operadores disponíveis podem variar de acordo com a rota.
A API pode trabalhar com padrões como RQL e LHS Brackets, além dos parâmetros de paginação tradicionais.O que você pode fazer com os filtros#
Combinando paginação e filtros por campo, sua integração retorna apenas os dados que realmente importam.01
Paginar resultados#
Controle o volume retornado usando page e page_size.02
Filtrar por campo#
Restrinja por status, datas, identificadores e outros campos suportados.03
Aplicar operadores#
Use igualdade, comparação e busca textual conforme a disponibilidade do endpoint.04
Combinar filtros#
Monte consultas mais refinadas combinando paginação e múltiplos parâmetros. PaginaçãoNavegue por listas grandes com mais controle#
A paginação permite consultar grandes volumes de dados em partes menores, melhorando a navegação e reduzindo o volume retornado por requisição.page#
Define a página atual. Quando não informado, o padrão utilizado é 1.page_size#
Controla a quantidade de itens por página. O padrão é 30.Limite#
O valor máximo aceito para page_size é 100.Exemplo: GET /api/v2/events?page=1&page_size=50
Padrões de filtroRQL e LHS Brackets#
A API pode utilizar formatos diferentes de filtro. Abaixo estão os dois padrões mais comuns, de forma resumida e direta.RQL
O operador aparece diretamente na expressão do filtro.Exemplo
start_date >= 2024-01-01
GET /api/v2/events?filter=start_date>=2024-01-01
LHS Brackets
O operador é enviado entre colchetes no nome do parâmetro.Exemplo
start_date[gte]=2024-01-01
GET /api/v2/events?start_date[gte]=2024-01-01
OperadoresOperadores suportados#
A disponibilidade dos operadores pode variar conforme o endpoint e os campos permitidos. A tabela abaixo relaciona a sintaxe equivalente entre RQL e LHS Brackets.| RQL | LHS Brackets | Descrição | Equivalência interna |
|---|
| = | [eq] | Igual a | coluna = valor |
| != | [ne] | Diferente de | coluna != valor |
| > | [gt] | Maior que | coluna > valor |
| >= | [gte] | Maior ou igual a | coluna >= valor |
| < | [lt] | Menor que | coluna < valor |
| <= | [lte] | Menor ou igual a | coluna <= valor |
| ~= | [like] | Busca textual com LIKE | coluna LIKE valor |
| !~= | [nlike] | Negação da busca textual | coluna NOT LIKE valor |
| _= | [contains] | Variação de busca textual | coluna LIKE valor |
| |= | [starts] | Outra variação de busca textual | coluna LIKE valor |
Observação: internamente, esses operadores podem ser convertidos em expressões parametrizadas para manter segurança e consistência no processamento. Os nomes em LHS Brackets podem variar conforme a implementação do endpoint.
Boas práticas ao usar filtros#
Valide sempre quais parâmetros são aceitos pelo endpoint utilizado e evite enviar operadores ou campos que não estejam documentados para aquela rota.Sempre que possível, combine filtros com paginação para melhorar a performance das consultas e reduzir o volume de dados retornados.