Em uma API RESTful, a capacidade de filtrar dados e resultados é essencial para facilitar a interação eficiente e eficaz entre clientes e servidores, os filtros permitem que os usuários solicitem apenas os dados relevantes para suas necessidades específicas, reduzindo a carga no servidor e melhorando a experiência do usuário.
Para filtros, utilizamos o prefixo q
.
Tipos de filtros suportados pela API Grafeno:
Filtro | Descrição | Tipo |
---|---|---|
Eq | Igual a | Date; String; Int |
Gt | Maior que | Date |
Lt | Meno que | Date |
Gteq | Maior ou igual que | Date |
Lteq | Menor ou igual que | Date |
Para filtrar a sua consulta de acordo com um dado específico, você deverpa utilizar o parâmetro que será filtrado juntamente com o filtro, exemplos:
- Para filtrar cobranças por um status específico, você deve utilizar o filtro:
q[statusEq]=STATUS
. - Para filtrar uma movimentação de conta ocorrida em uma data maior ou igual, você deve utilizar o filtro:
q[entryAtGteq]=YYYY-MM-DD
. - Para filtrar apenas uma conta no recurso de listagem de contas, você deve utilizar o filtro:
q[accountNumberEq]=081XXXXX-X
.
Query Params
Os filtros da API Grafeno devem ser passados no formato de query params.
Exemplos de uso:
curl --location --globoff 'https://pagamentos.grafeno.be/api/v2/charges?q[statusEq]=paid' \
--header 'Content-Type: application/json' \
--header 'Authorization: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' \
--header 'Account-Number: 081XXXXX-X'
curl --location --globoff 'https://pagamentos.grafeno.be/api/v2/charges?q[createdAtGt]=2024-02-22&q[createdAtLt]=2024-03-27&=null' \
--header 'Content-Type: application/json' \
--header 'Authorization: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' \
--header 'Account-Number: 081XXXXX-X'