Endpoints Agrupados - API

Última atualização: 2 dias atrás Tempo de leitura: 7 minutos

O que é?

São apenas consultas. Na prática, foi criado um endpoint genérico que retorna informações diretamente do banco de dados. Assim, com base no nome da tabela, o sistema recupera os dados correspondentes.

Como Funciona no Uniplus?

Endpoints sobre Saldo estoque:

1. Endpoint Saldo em estoque (v1)

Seta o saldo em estoque de produtos. Atenção: versão descontinuada. Verifique a versão mais nova do endpoint

  • URL: “/public-api/v1/saldo-estoque

  • Verbos suportados: POST, GET

Status HTTP

200 = OK,
422 = A requisição falhou ao ser processada. Veja a mensagem retornada para mais detalhes

JSON Exemplo

{“saldoEstoque”: {“produto”: “97”, “quantidade”:200}}

Exemplos

curl –verbose –header “Authorization: Bearer ${token_de_acesso}” –header “Content-Type: application/json” –data “${json}” –request “POST” “${endereco_do_servidor}/public-api/v1/saldo-estoque”

curl –header “Authorization: Bearer ${token_de_acesso}” –header “Content-Type: application/json” –request “GET” “${endereco_do_servidor}/public-api/v1/saldo-estoque?produto=${97}&filial=${1}”

Lista dos campos do JSON

Identificador

Descrição

Obrigatório

Tipo

Tamanho

Decimais

Observações

custo

Custo

Decimal

15

6

custoMedio

Custo médio

Decimal

15

6

filial

Filial

Caractere

4

Código da filial

produto

Produto

Sim

Caractere

14

Código do produto

quantidade

Quantidade

Sim

Decimal

12

6

variacao

Variação

Caractere

12

localEstoque

Local de Estoque

Caractere

5

Código do Local de Estoque

2. Endpoint Saldo em estoque (v2)

Seta o saldo em estoque de produtos

  • URL: “/public-api/v2/saldo-estoque

  • Verbos suportados: POST, GET

Status HTTP

200 = OK

422 = A requisição falhou ao ser processada. Veja a mensagem retornada para mais detalhes

JSON Exemplo

{“saldoEstoque”: {“produto”: “97”, “quantidade”:200}}

Exemplos

Atualizando o saldo:

curl –verbose –header “Authorization: Bearer ${token_de_acesso}” –header “Content-Type: application/json” –data “${json}” –request “POST” “${endereco_do_servidor}/public-api/v2/saldo-estoque”

Buscando saldo por produto e filial:

curl –header “Authorization: Bearer ${token_de_acesso}” –header “Content-Type: application/json” –request “GET” “${endereco_do_servidor}/public-api/v2/saldo-estoque?produto=${97}&filial=${1}”

Buscando saldo por alteração maior ou igual ao current time millis:

curl –header “Authorization: Bearer ${token_de_acesso}” –header “Content-Type: application/json” –request “GET” “${endereco_do_servidor}/public-api/v2/saldo-estoque?currenttimemillis=${1620308836208}”

 Lista dos campos do JSON

Identificador

Descrição

Obrigatório

Tipo

Tamanho

Decimais

Observações

custo

Custo

Decimal

15

6

custoMedio

Custo médio

Decimal

15

6

filial

Filial

Caractere

4

Código da filial

produto

Produto

Sim

Caractere

14

Código do produto

quantidade

Quantidade

Sim

Decimal

12

6

variacao

Variação

Caractere

12

localEstoque

Local de estoque

Caractere

5

Código do local de estoque

3. Endpoint Saldo em estoque por variação (v2)

Devolve uma lista de saldo em estoque do produto por variação

  • URL: “/public-api/v2/saldo-estoque/variacao

  • Verbos suportados: GET

Status HTTP

200 = OK, 422 = A requisição falhou ao ser processada. Veja a mensagem retornada para mais detalhes

JSON Exemplo

[{“variacao”: “AMARELO/P”, “saldo”:200}]

Exemplos

Consultando o saldo por variação

curl –header “Authorization: Bearer ${token_de_acesso}” –header “Content-Type: application/json” –request “GET” “${endereco_do_servidor}/public-api/v2/saldo-estoque/variacao?produto=${97}&filial=${1}”

Lista dos campos do JSON

Identificador

Descrição

Obrigatório

Tipo

Tamanho

Decimais

Observações

codigo

Código da variação

Inteiro

saldo

Saldo em estoque

Decimal

12

6

variacao

Variação

Caractere

Endpoints sobre Produtos:

4. Endpoint para atualizar dados de produtos e preços dos produtos (v1)

Criado o endpoint para atualizar o preço de vários produtos: /public-api/v1/produtos/preços.

  • Código : Código do produto, Caractere, 20;

  • Preço: Preço do produto, decimal, 15,6;

  • Preços: Lista de Produto preço, para filiais;

  • No “precos” foi adicionado a estrutura “PautasPreco” que recebe uma estrutura do tipo pautaPreco.

Estrutura “pautaPreco”:

  • “codigoPauta”: Código da pauta de preço, Caracter, 20;

  • “Preco”: Preço do produto, decimal, 15,6;

  • Quando a base não possuir filiais a estrutura “pautasPreco” não precisa ficar dentro de “Precos”;

  • Quando possuir múltiplas filiais, o endpoint funcionará conforme a configuração para replicar preço ou não;

  • Quanto a preferência estiver para replicar preço, não precisa informar a final no campo “Preco[]”, caso contrário, quando não estiver para replicar o preço a filial é obrigatória.

[

{

"codigo": Caracter,

"preco": Numérico,

"precos": [

{

"filial": caracter,

"preco": numérico,

"pautasPreco": [

{

"codigoPauta": caracter,

"preco": numérico

},

{

"codigoPauta": caracter,

"preco": Numérico

},

{

"codigoPauta": caracter,

"preco": Numérico

},

{

"codigoPauta": Numérico,

"preco": Numérico

}

]

}

]

}

]

Estrutura quando não possuir filiais:

[

{

"codigo": Caracter,

"preco": Numérico,

"pautasPreco": [

{

"codigoPauta": caracter,

"preco": numérico

},

{

"codigoPauta": caracter,

"preco": Numérico

},

{

"codigoPauta": caracter,

"preco": Numérico

},

{

"codigoPauta": Numérico,

"preco": Numérico

}

]

}

]

Criado endpoint que recebe uma lista de produtos: /public-api/v1/produtos/lista.

Exemplo de JSON:

[

{

"codigo": "",

"referencia": "",

"ean": "",

"inativo": 0,

"nome": "Produto teste filial 01 - caso 38421 - jar 1857",

"tipoRegistro": "P",

"codigoFornecedor": "",

"unidadeMedida": "UN",

"lucroBruto": "0.00",

"peso": "0.000",

"numeroSerie": 0,

"tributacaoICMS": "T",

"aliquotaIPI": "0.000000",

"situacaoTributaria": "00",

"custo": "22.000000",

"iat": "T",

"ippt": "T",

"origem": 0,

"nomeGrupoProduto": "Produtos diversos",

"nomeFornecedor": "Fornecedor SP",

"caminhoImagem": "",

"aliquotaICMS": "17.00",

"tributacaoEspecial": "",

"casasDecimais": 2,

"codigoGrupoProduto": " 1",

"pesavel": 0,

"tipoProduto": "00",

"observacao": "",

"ncm": "01012100",

"situacaoTributariaSN": "101",

"cstPisCofins": "99",

"aliquotaPis": "0.0000",

"aliquotaCofins": "0.0000",

"cstPisCofinsEntrada": "99",

"aliquotaPisEntrada": "0.0000",

"aliquotaCofinsEntrada": "0.0000",

"informarDimensoes": 0,

"codigoCfopEntrada": "",

"codigoCfopSaida": "",

"codigoCfopEntradaExterna": "",

"codigoCfopSaidaExterna": "",

"codigoCfopEntradaDevolucaoInterna": "",

"codigoCfopSaidaDevolucaoInterna": "",

"codigoCfopEntradaDevolucaoExterna": "",

"codigoCfopSaidaDevolucaoExterna": "",

"codigoCfopEntradaTransfInterna": "",

"codigoCfopSaidaTransfInterna": "",

"codigoCfopEntradaTransfExterna": "",

"codigoCfopSaidaTransfExterna": "",

"codigoCfopSaidaExternaNaoContribuinte": "",

"extra1": "",

"extra2": "",

"extra3": "",

"extra4": "",

"extra5": "",

"extra6": "",

"cest": "0100100",

"informacaoAdicional": "",

"tributacaoSN": "300",

"custoMedioInicial": "0.000000",

"codigoLeiComplementar": "01012100",

"exigibilidadeIss": 0,

"codigoReceitaSemContribuicao": "",

"tributacaoEspecialNfceSat": "00",

"enviaECommerce": 0,

"nomeEcf": "Produto normal",

"descricaoShop": "",

"infoShop": "",

"codigoFabricante": "",

"pesoShop": "0.000",

"alturaShop": "0.0",

"larguraShop": "0.0",

"comprimentoShop": "0.0",

"tipoEmbalagemShop": 0,

"extraBalanca1": "",

"extraBalanca2": "",

"extraBalanca3": "",

"extraBalanca4": "",

"extraBalanca5": "",

"extraBalanca6": "",

"extraBalanca7": "",

"extraBalanca8": "",

"extraBalanca9": "",

"extraBalanca10": "",

"extraBalanca11": "",

"currentTimeMillis": 1665173609113,

//"preco": 102.00,

"precos": [

{

"filial": 1,

"preco": 111.00,

"pautasPreco": [

{

"codigoPauta": 1,

"preco": 191.00

},

{

"codigoPauta": 2,

"preco": 192.00

}

]

},

{

"filial": 2,

"preco": 212.00,

"pautasPreco": [

{

"codigoPauta": 1,

"preco": 211.00

},

{

"codigoPauta": 2,

"preco": 212.00

]

}

],

"atributos": [],

"tags": [],

"imagens": [],

"tipoVolume": 0,

"quantidadeVolume": 0,

"possuiVariacao": 0,

"enviarOutrosECommerce": 0,

"possuiLote": 0,

"kit": 0

}

]

No “Produto (V1)”, foi adicionado a estrutura “pautasPreco” no campo “precos[]”.

5. Endpoint Produtos (v1)

Manipulação de produtos e serviços

  • URL: “/public-api/v1/produtos

  • Verbos suportados: POST, PUT, GET e DELETE

Status HTTP

200 = OK
422 = A requisição falhou ao ser processada. Veja a mensagem retornada para mais detalhes

JSON Exemplo

{“produto”: {“codigo”: “999000”, “nome”:”PRODUTO TESTE”, “preco”: 10.23}}

Exemplos

curl –header “Authorization: Bearer ${token_de_acesso}” –header “Content-Type: application/json” –data “${json}” –request “POST” “${endereco_do_servidor}/public-api/v1/produtos”

curl –header “Authorization: Bearer ${token_de_acesso}” –header “Content-Type: application/json” –data “${json}” –request “PUT” “${endereco_do_servidor}/public-api/v1/produtos”

curl –header “Authorization: Bearer ${token_de_acesso}” –header “Content-Type: application/json” –request “GET” “${endereco_do_servidor}/public-api/v1/produtos/${codigo}”

Observação: Caso trabalhe com preço por filial, pode ser passado a filial como parâmetro, após o código, no método acima.
Ex: “${codigo}?filial=2

curl –header “Authorization: Bearer ${token_de_acesso}” –header “Content-Type: application/json” –request “GET” “${endereco_do_servidor}/public-api/v1/produtos”

curl –header “Authorization: Bearer ${token_de_acesso}” –header “Content-Type: application/json” –request “DELETE” “${endereco_do_servidor}/public-api/v1/produtos/${codigo}”

Observação: Caso queira consultar os produtos incluídos e/ou alterados após uma data e hora, é possível usar um filtro especial pelo currentTimeMillis, conforme este exemplo:

curl –header “Authorization: Bearer ${token_de_acesso}” –header “Content-Type: application/json” –request “GET” “${endereco_do_servidor}/public-api/v1/produtos?currentTimeMillis.ge=1616786400000”

Para mais informações sobre como converter data e hora para currentTimeMillis, acesse esse link.

Lista dos campos do JSON

Identificador

Descrição

Obrigatório

Tipo

Tamanho

Decimais

Observações

aliquotaCofins

Alíquota Cofins saída

Decimal

5

2

aliquotaCofinsEntrada

Alíquota Cofins Entrada

Decimal

5

4

aliquotaICMS

Aliquota ICMS

Decimal

5

2

Caso for serviço informar a alíquota do ISS

aliquotaIPI

Aliquota IPI

Decimal

5

2

aliquotaPis

Alíquota Pis saída

Decimal

5

2

aliquotaPisEntrada

Alíquota Pis Entrada

Decimal

5

4

alturaShop

Altura shop

Decimal

12

1

caminhoImagem

Caminho da imagem

Caracter

200

Ex: c:exportaarquivo.jpg

casasDecimais

Casas decimais

Inteiro

Número de casas decimais da unidade de medida

cest

Código do CEST

Caracter

10

codigo

Código

Sim

Caracter

20

Se deixar em branco o sistema gera um sequencial

codigoCfopEntrada

CFOP interna de entrada

Caracter

6

codigoCfopEntradaDevolucaoExterna

CFOP externa de entrada devolução

Caracter

6

codigoCfopEntradaDevolucaoInterna

CFOP interna de entrada devolucao

Caracter

6

codigoCfopEntradaExterna

CFOP externa de entrada

Caracter

6

codigoCfopEntradaTransfExterna

CFOP externa de entrada transferência

Caracter

6

codigoCfopEntradaTransfInterna

CFOP interna de entrada transferência

Caracter

6

codigoCfopSaida

CFOP interna de saida

Caracter

6

codigoCfopSaidaDevolucaoExterna

CFOP externa de saida devolução

Caracter

6

codigoCfopSaidaDevolucaoInterna

CFOP interna de saida devolucao

Caracter

6

codigoCfopSaidaExterna

CFOP externa de saida

Caracter

6


codigoCfopSaidaExternaNaoContribuinte

CFOP Externa de saída para não contribuinte

Caracter

6

codigoCfopSaidaTransfExterna

CFOP externa de saida transferência

Caracter

6

codigoCfopSaidaTransfInterna

CFOP interna de saida transferência

Caracter

6

codigoFabricante

Código do fabricante

Caracter

10

codigoFornecedor

Código do fornecedor

Caracter

10

codigoGrupoProduto

Codigo do grupo de produto

Caracter

30

codigoLeiComplementar

Código da Lei complementar

Caracter

10

codigoReceitaSemContribuicao

Código da Receita sem contribuição

Caracter

10

comprimentoShop

Comprimento shop

Decimal

12

1

cstPisCofins

CST Pis/Cofins saída

Caracter

2

cstPisCofinsEntrada

CST Pis/Cofins Entrada

Caracter

2

currentTimeMillis

Controle de registro

Inteiro

custo

Custo

Decimal

12

6

custoMedioInicial

Custo médio inicial

Decimal

15

6

descricaoShop

Descrição Uniplus Shop

Caracter

4096

ean

Código EAN

Caracter

20

enviaECommerce

Enviar produto ao E-Commerce

1=Sim 0=Não

exigibilidadeIss

Indicador da exigibilidade do ISS

Inteiro

1

extra1

extra1

Caracter

50

extra2

extra2

Caracter

50

extra3

extra3

Caracter

50

extra4

extra4

Caracter

50

extra5

extra5

Caracter

50

extra6

extra6

Caracter

50

iat

IAT

Caracter

1

A=Arredondamento T=Truncamento

imagens

Imagens do produto

Retorno das imagens cadastradas no produto

inativo

Inativo

Inteiro

1=inativo 0=ativo

infoShop

Informações no Uniplus Shop

Caracter

4096

informacaoAdicional

Informação Adicional

Caracter

500

informarDimensoes

Informar dimensões

Inteiro

1

1=Sim 0=Não

ippt

IPPT

Caracter

1

P=fabricação própria T=fabricação por terceiros

larguraShop

Largura shop

Decimal

12

1

lucroBruto

% Lucro

Decimal

5

2

ncm

NCM

Caracter

10

nome

Nome

Sim

Caracter

120

nomeEcf

Nome ECF

Caracter

120

nomeFornecedor

Nome do fornecedor

Caracter

50

nomeGrupoProduto

Nome do grupo do produto

Caracter

40

Nome do grupo. Caso não informado será usado GERAL

numeroSerie

Número de série

Inteiro

Controlar o produto por número de série 1=Sim 0=Não

observacao

Observação

Caracter

4096

origem

Origem

Inteiro

0=Nacional 1=Importado

pesavel

Pesável

Inteiro

1=produto pesável 0=produto não pesável

peso

Peso

Decimal

12

3

pesoShop

Peso shop

Decimal

12

3

preco

Preço

Sim

Decimal

15

6

Preço (Venda)

precoPauta1

Pauta preço 1

Decimal

15

6

Preço na pauta 1

precoPauta2

Pauta preço 2

Decimal

15

6

Preço na pauta 2

precoPauta3

Pauta preço 3

Decimal

15

6

Preço na pauta 3

precoPauta4

Pauta preço 4

Decimal

15

6

Preço na pauta 4

precos

Preços por filiais

Lista de Produto preço, para filiais(Verificar documentação de Produto preço)

referencia

Referência

Caracter

20

situacaoTributaria

Codigo da situação tributária

Caracter

3

situacaoTributariaSN

Situação tributária Simples Nacional NF-e

Caracter

3

tipoProduto

Tipo produto

Caracter

2

00=Mercadoria p/ revenda 01=Mat.Prim 02=Embalagem 03=Prod. Em Processo 04=Prod. Acabado 05=SubProduto 06=Prod.Intermediario 07=Mat.Uso Consumo 08=Ativo Imobilizado 09=Serviços 10=Outros insumos 99=Outros

tipoRegistro

Tipo do registro

Caracter

1

P=Produto S=Serviço

tributacaoEspecial

Tributacao especial

Caracter

10

tributacaoEspecialNfceSat

Situação tributária especial para NFC-e/SAT

Caracter

3

tributacaoICMS

Tributacao ICMS

Caracter

7

Para produto: T=Tributado N=Não tributado I=Isento F=Substituição tributária.Para servico: S=Tributado, NS=Não tributado, IS=Isento, FS=substituição tributária

tributacaoSN

Situação tributária Simples Nacional NFC-e e SAT

Caracter

3

unidadeMedida

Unidade de medida

Sim

Caracter

3

Ex: UN,PC,CX

tipoVolume

Tipo de volume

Inteiro

1

1=Volumes 2=Embalagem

quantidadeVolume

Quantidade do volume

Inteiro

2

possuiVariacao

Identifica se o produto possui variação

Inteiro

1

1=Sim 0=Não

enviarOutrosECommerce

Identifica se o produto será enviado para ecommerce integrado

Inteiro

1

1=Sim 0=Não

possuiLote

Identifica se o produto possui lote

Inteiro

1

1=Sim 0=Não

kit

Identifica se o produto é um kit

Inteiro

1

1=Sim 0=Não

codigoEmpresa

Informação de código das empresas, para quando o sistema estiver trabalhando com “Produto por empresa”

Inteiro

10

codigoBeneficioFiscalPDV

Código do Benefício Fiscal do PDV

Caractere

10

descricaoBeneficioFiscalPDV

Descrição do beneficio fiscal do PDV

Caractere

512

motivoDesoneracaoIcmsPDV

Código do motivo da desoneração

Numérico

1 – Táxi;
3 – Uso na agropecuária/Produtor Agropecuário;
4 – Frotista/Locadora;
5 – Diplomático/Consular;
6 – Utilitários e Motocicletas da Amazônia Ocidental e Áreas de Livre Comércio (Resolução 714/88 e 790/94 – CONTRAN e suas alterações);
7 – SUFRAMA;
8 – Venda a Órgão Público;
9 – Outros,;
10 – Deficiente Condutor (Convênio ICMS 38/12);
11 – Deficiente Não Condutor (Convênio ICMS 38/12);
12 – Órgão de fomento e desenvolvimento agropecuário;
90 – Solicitado pelo fisco.

codigoBeneficioFiscalNF

Código do benefício fiscal da NF-e

Caractere

10

descricaoBeneficioFiscalNF

Descrição do benefício fiscal da NF-e

Caractere

512

motivoDesoneracaoNf

Código do motivo da desoneração

Numérico

1 – Táxi;
3 – Uso na agropecuária/Produtor Agropecuário;
4 – Frotista/Locadora;
5 – Diplomático/Consular;
6 – Utilitários e Motocicletas da Amazônia Ocidental e Áreas de Livre Comércio (Resolução 714/88 e 790/94 – CONTRAN e suas alterações);
7 – SUFRAMA;
8 – Venda a Órgão Público;
9 – Outros;
10 – Deficiente Condutor (Convênio ICMS 38/12);
11 – Deficiente Não Condutor (Convênio ICMS 38/12);
12 – Órgão de fomento e desenvolvimento agropecuário;
90 – Solicitado pelo fisco.

Lista de Objetos opcionais

 Estrutura de Opcionais do Uniplus Gourmet

Identificador

Descrição

Obrigatório

Tipo

Tamanho

Decimais

Observações

codigo

Código do produto opcional

Caractere

20

descricao

Descrição do produto opcional

Caractere

120

preco

Preço adicional

Numérico

12

3

6. Endpoint Produto preço (v1)

Manipulação de preço quando trabalhar com preços diferente por filial.

JSON Exemplo

"precos": [

{

"filial": 1,

"preco": 111.00,

"pautasPreco": [

{

"codigoPauta": 1,

"preco": 191.00

},

{

"codigoPauta": 2,

"preco": 192.00

}

]

},

Observações:

  • A linha “pautasPreço“: não será necessário em todas as requisições, apenas quando ser trabalhado com múltiplas pautas.

  • Este objeto tem que ser enviado junto ao produto para cadastrar ou alterar o preço de um produto para uma determinada filiais e pautas de preço.

Lista dos campos do JSON

Identificador

Descrição

Obrigatório

Tipo

Tamanho

Decimais

Observações

filial

Filial

Sim

Caracter

4

Código da filial que vai receber a atualização do preço

preco

Preço

Sim

Decimal

15

6

Preço (Venda)

codigoPauta

Código da Pauta

Caracter

20

preco*

Preço do produto na pauta

Decimal

15

6

  • *este campo deve ser chamado após abrir o chamado da pauta de preço no JSON.