Documento entrada
Quantidade máxima de items retornados.
20Quantidade de items para ignorar antes de retornar resultado.
0O filtro é permitido apenas pelos atributos do objeto principal.
Esta seção descreve e fornece exemplos de filtragem em consultas em tabelas e exibições habilitadas para REST.
A filtragem é o processo de limitar um recurso de coleção usando uma definição de filtro dinâmico por solicitação em vários recursos de página, em que cada página contém um subconjunto de itens encontrados na coleção completa. A filtragem permite a passagem eficiente de grandes coleções.
Para filtrar em uma consulta, inclua o parâmetro q=FilterObject, onde FilterObject é um objeto JSON que representa a seleção e classificação customizadas a serem aplicadas ao recurso. Por exemplo, suponha o seguinte recurso:
https://api.systextil.com
A consulta a seguir inclui um filtro que restringe a coluna NOME_CLIENTE a "SYSTEXTIL":
https://api.systextil.com/comercial/v1/clientes?q={"nome_cliente":"JOHN"}
Gramática FilterObject
FilterObject { orderby , asof, wmembers }
orderby
"$orderby": {orderByMembers}
orderByMembers
orderByProperty
orderByProperty , orderByMembers
orderByProperty
columnName : sortingValue
sortingValue
"ASC"
"DESC"
"-1"
"1"
-1
1
asof
"$asof": date
"$asof": "datechars"
"$asof": scn
"$asof": +int
wmembers
wpair
wpair , wmembers
wpair
columnProperty
complexOperatorProperty
columnProperty
columnName : string
columnName : number
columnName : date
columnName : simpleOperatorObject
columnName : complexOperatorObject
columnName : [complexValues]
columnName
"\p{Alpha}[[\p{Alpha}]]([[\p{Alnum}]#$_])*$"
complexOperatorProperty
complexKey : [complexValues]
complexKey : simpleOperatorObject
complexKey
"$and"
"$or"
complexValues
complexValue , complexValues
complexValue
simpleOperatorObject
complexOperatorObject
columnObject
columnObject
{columnProperty}
simpleOperatorObject
{simpleOperatorProperty}
complexOperatorObject
{complexOperatorProperty}
simpleOperatorProperty
"$eq" : string | number | date
"$ne" : string | number | date
"$lt" : number | date
"$lte" : number | date
"$gt" : number | date
"$gte" : number | date
"$instr" : string
"$ninstr" : string
"$like" : string
"$null" : null
"$notnull" : null
"$between" : betweenValue
betweenValue
[null , betweenNotNull]
[betweenNotNull , null]
[betweenRegular , betweenRegular]
betweenNotNull
number
date
betweenRegular
string
number
date
Definições de tipo de dados incluem o seguinte:
string
JSONString
number
JSONNumber
date
{"$date":"datechars"}
scn
{"$scn": +int}
where
Datechars é um formato de data RFC3339 em UTC (Z)
JSONString
""
" chars "
chars
char
char chars
char
any-Unicode-character except-"-or-\-or-control-character
\"
\\
\/
\b
\f
\n
\r
\t
\u four-hex-digits
JSONNumber
int
int frac
int exp
int frac exp
int
digit
digit1-9 digits
- digit
- digit1-9 digits
frac
. digits
exp
e digits
digits
digit
digit digits
e
e
e+
e-
E
E+
E-
O FilterObject deve ser codificado de acordo com a Seção 2.1 do RFC3986
Exemplos
A seguir estão exemplos de operadores em especificações de FilterObject.
ORDER BY property ($orderby)
Order by with literals
{
"$orderby": {"SALARY": "ASC","ENAME":"DESC"}
}
Order by with numbers
```json
{ "$orderby": {"SALARY": -1,"ENAME": 1} }
y ($asof)
### With SCN (Implicit)
```json
{
"$asof": 1273919
}
With SCN (Explicit)
{
"$asof": {"$scn": "1273919"}
}
With Date (Implicit)
{
"$asof": "2014-06-30T00:00:00Z"
}
With Date (Explicit)
{
"$asof": {"$date": "2014-06-30T00:00:00Z"}
}
EQUALS operator ($eq)
(Implicit and explicit equality supported._
Implicit (Support String and Dates too)
{
"SALARY": 1000
}
Explicit
{
"SALARY": {"$eq": 1000}
}
Strings
{
"ENAME": {"$eq":"SMITH"}
}
Dates
{
"HIREDATE": {"$date": "1981-11-17T08:00:00Z"}
}
NOT EQUALS operator ($ne)
Number
{
"SALARY": {"$ne": 1000}
}
String
```json
{ "ENAME": {"$ne":"SMITH"} }
#### Dates
```json
{
"HIREDATE": {"$ne": {"$date":"1981-11-17T08:00:00Z"}}
}
LESS THAN operator ($lt)
(Supports dates and numbers only)
Numbers
```json
{ "SALARY": {"$lt": 10000} }
#### Dates
```json
{
"SALARY": {"$lt": {"$date":"1999-12-17T08:00:00Z"}}
}
LESS THAN OR EQUALS operator ($lte)
(Supports dates and numbers only)
Numbers
```json
{ "SALARY": {"$lte": 10000} }
#### Dates
```json
{
"HIREDATE": {"$lte": {"$date":"1999-12-17T08:00:00Z"}}
}
GREATER THAN operator ($gt)
(Supports dates and numbers only)
Numbers
```json
{ "SALARY": {"$gt": 10000} }
#### Dates
```json
{
"SALARY": {"$gt": {"$date":"1999-12-17T08:00:00Z"}}
}
GREATER THAN OR EQUALS operator ($gte)
(Supports dates and numbers only)
Numbers
{
"SALARY": {"$gte": 10000}
}
Dates
{
"HIREDATE": {"$gte": {"$date":"1999-12-17T08:00:00Z"}}
}
In string operator ($instr)
(Supports strings only) ```json { "ENAME": {"$instr":"MC"} }
#### Not in string operator ($ninstr)
(Supports strings only)
```json
{
"ENAME": {"$ninstr":"MC"}
}
####LIKE operator ($like) (Supports strings. Eescape character not supported to try to match expressions with _ or % characters.) ```json { "ENAME": {"$like":"AX%"} }
#### BETWEEN operator ($between)
(Supports string, dates, and numbers)
#### Numbers
```json
{
"SALARY": {"$between": [1000,2000]}
}
Dates
```json
{ "SALARY": {"$between": [{"$date":"1989-12-17T08:00:00Z"},{"$date":"1999-12-17T08:00:00Z"}]} }
#### Strings
```json
{
"ENAME": {"$between": ["A","C"]}
}
Null Ranges ($lte equivalent)
(Supported by numbers and dates only)
{
"SALARY": {"$between": [null,2000]}
}
Null Ranges ($gte equivalent)
(Supported by numbers and dates only)
{
"SALARY": {"$between": [1000,null]}
}
NULL operator ($null)
{
"ENAME": {"$null": null}
}
NOT NULL operator ($notnull)
{
"ENAME": {"$notnull": null}
}
AND operator ($and)
(Supports all operators, including $and and $or)
Column context delegation
(Operators inside $and will use the closest context defined in the JSON tree.)
{
"SALARY": {"$and": [{"$gt": 1000},{"$lt":4000}]}
}
Column context override
(Example: salary greater than 1000 and name like S%)
{
"SALARY": {"$and": [{"$gt": 1000},{"ENAME": {"$like":"S%"}} ] }
}
Implicit and in columns
{
"SALARY": [{"$gt": 1000},{"$lt":4000}]
}
High order AND
(All first columns and or high order operators -- $and and $ors -- defined at the first level of the JSON will be joined and an implicit AND) (Example: Salary greater than 1000 and name starts with S or T)
{
"SALARY": {"$gt": 1000},
"ENAME": {"$or": [{"$like":"S%"}, {"$like":"T%"}]}
}
Invalid expression (operators $lt and $gt lack column context)
{
"$and": [{"$lt": 5000},{"$gt": 1000}]
}
Valid alternatives for the previous invalid expression
{
"$and": [{"SALARY": {"$lt": 5000}}, {"SALARY": {"$gt": 1000}}]
}
{
"SALARY": [{"$lt": 5000},{"$gt": 1000}]
}
{
"SALARY": {"$and": [{"$lt": 5000},{"$gt": 1000}]}
}
OR operator ($or)
(Supports all operators including $and and $or)
Column context delegation
(Operators inside $or will use the closest context defined in the JSON tree)
{
"ENAME": {"$or": [{"$eq":"SMITH"},{"$eq":"KING"}]}
}
Column context override
(Example: name starts with S or salary greater than 1000)
{
"SALARY": {"$or": [{"$gt": 1000},{"ENAME": {"$like":"S%"}} ] }
}
Sucesso.
Empresa da nota fiscal
0Numero da Nota fiscal
0Série da nota fiscal
Número da chave de acesso da NFE
Espécie da nota fiscal
Código da natureza da operação
0Estado da natureza da operação
CFOP principal da nota fiscal
Descrição da natureza da operação
Os 9 dígitos principais do CNPJ ou CPF
0Os 4 dígitos secundários do CNPJ ou 0000 quando for CPF
0Os 2 dígitos verificadores do CNPJ ou CPF
0Nome/Razão Social do fornecedor
Os 9 dígitos principais do CNPJ ou CPF
0Os 4 dígitos secundários do CNPJ ou 0000 quando for CPF
0Os 2 dígitos verificadores do CNPJ ou CPF
0Nome/Razão Social do Responsável
Código da transação de saída, entrada ou devolução
0Data de lançamento da nota fiscal
^\d{4}-[01]\d-[0123]\dT[012]\d:[0-5]\d:[0-5]\d(.\d+)?(Z|([-+][012]\d:[0-5]\d))$Data de emissão da nota fiscal
^\d{4}-[01]\d-[0123]\dT[012]\d:[0-5]\d:[0-5]\d(.\d+)?(Z|([-+][012]\d:[0-5]\d))$1 - Terrestre 2 - Aéreo 3 - Marítimo 4 - Ferroviário 5 - Fluvial
0Código da condição de pagamento
0Número do despacho de exportação fornecido pelo SISCOMEX
0Valor total da nota fiscal
0Valor total do IPI
0Valor do frete
0Valor de seguro incidente sobre a nota emitida (Quando houver)
0Valor de despesas que incidirem sobre a nota emitida (Quando houver)
0Valor do desconto
0Base ICMS Substituição Tributária
0Valor ICMS Substituição Tributária
0Base de calculo do ICMS
0Valor do ICMS
0Valor da base diferença
0Valor total dos produtos
0Peso liquido da nota
0Peso bruto da nota
0Valor IRRF
0Valor do ISS
0Valor INSS retido
0Valor Pis retido
0Valor Cofins Retido
0Valor CSL retido
0Código do histórico contábil
0Descrição do histórico contábil
0Divisão de qualificação: (1),(2),(4),(7),(9)- Divisões de Produto ou (0) para não considerar no processo de qualificação de fornecedores.
Numero do lançamento contábil da nota fiscal
0Situação entrada: (4- Nota de Fornecedor ou 5- Nota incompleta)
0Valor do FCP destinatário
0Valro do ICMS destinatário
0Valor do ICMS remetente
0Tipo de conhecimento: (0) Se estiver digitando uma Nota Fiscal de Entrada; (1) Se estiver digitando um Conhecimento de Frete originado de uma Nota Fiscal de Entrada; (3) Se estiver digitando uma Nota Fiscal que representa um conjunto de Conhecimentos de Fretes, originados de uma ou mais Notas Fiscais de Saída.
01 - Frete pago -Ao ser utilizado esta opção, na impressão do Danfe no campo tipo frete sairá da seguinte forma: ""0"" Emitente, conforme a legislação determina. 2 - Frete a pagar: Ao ser utilizado esta opção, na impressão do Danfe no campo tipo frete sairá da seguinte forma: ""1"" Dest/Rem , conforme a legislação determina. 3 - Terceiros: Ao ser utilizado esta opção o sistema irá colocar direto para a opção ""2"", ou seja, frete por conta de terceiros. 4 - Frete cortesia: Ao ser utilizado esta opção o sistema irá colocar direto para o tipo ""1"" frete por conta do emitente. 6 - Transporte Próprio por conta do Remetente. 7 - Transporte Próprio por conta do Destinatário. 9 - Sem frete: Esta opção será utilizada quando não houver frete.
0Os 9 dígitos principais do CNPJ ou CPF
0Os 4 dígitos secundários do CNPJ ou 0000 quando for CPF
0Os 2 dígitos verificadores do CNPJ ou CPF
0Nome/Razão Social do fornecedor
Valor da tarifa de frete
0Informe: 0 para desconto rateado (como já funciona) ou 1 para desconto a nível de item
0Data limite da quarentena do produto
^\d{4}-[01]\d-[0123]\dT[012]\d:[0-5]\d:[0-5]\d(.\d+)?(Z|([-+][012]\d:[0-5]\d))$Dúplicata Única gerada para os conhecimento processados via EDI
Observação 1 da nota fiscal
Observação 2 da nota fiscal
Código do tipo de fornecedor
0Descrição do tipo de fornecedor
Data de digitação da nota fiscal
^\d{4}-[01]\d-[0123]\dT[012]\d:[0-5]\d:[0-5]\d(.\d+)?(Z|([-+][012]\d:[0-5]\d))$Usuário que digitou a nota fiscal
Data de atualização da API.
2022-03-07T03:00:00ZPattern: ^\d{4}-[01]\d-[0123]\dT[012]\d:[0-5]\d:[0-5]\d(.\d+)?(Z|([-+][012]\d:[0-5]\d))$Não autorizado.
Erro de formatação/json/erro do lado do servidor.
Informa se a integração é assíncrona (false) ou síncrona (true).
Sucesso na inclusão.
2023-08-31T10:20:11.981250Pattern: ^\d{4}-[01]\d-[0123]\dT[012]\d:[0-5]\d:[0-5]\d(.\d+)?(Z|([-+][012]\d:[0-5]\d))$0438e762aae55aa7e06364010a0a3117Não autorizado.
Requisição não aceita, mais de um item em request.
Requisição não aceita, envio já cadastrado.
Erro de formatação/json/erro do lado do servidor.
Erro em validação de negócio.
Atualizado
Isto foi útil?
