O Integrações é um módulo desenvolvido para receber requisições de um serviço web para coleta de informações do banco de dados do Shop Control 9, permitindo assim a atualização de sites e/ou sistemas de vendas online. Ele também é responsável por receber os dados de vendas feitas na plataforma online e gerar as sequências de saídas no sistema, bem como a emissão de nota fiscal.
Através deste manual técnico, iremos informar as linhas de comando necessárias para o webservice tratar as requisições entre ele e o módulo Integrações.
A ativação em uma base real, adiciona valor à renovação de licença do cliente que fará uso. O Módulo Integrações está disponível apenas para clientes com o Shop Control 9 Plus. Consulte o departamento comercial, sobre os valores, antes de iniciar o processo de homologação.
E-mail: comercial@idealsoft.com.br
Fone: (41) 3013-1161
Segue abaixo a lista de informações que estão no Shop Control 9 e que o módulo Integrações disponibilizará para o webservice:
Cadastros
Movimento
Para a parte de movimentação do sistema, teremos a função de receber as vendas feitas no site, para a criação das sequências no Shop Control 9.
A arquitetura da API do módulo Integrações é separada pela requisição de autenticação e as demais requisições. A requisição de autenticação trará o token a ser utilizado em todas as outras requisições. O token deverá ser gerado a cada $HORAS horas para que as validações de data e hora com o servidor e licenciamento do módulo ocorram.
Todas as requisições devem passar uma série de parâmetros no header da requisição:
“Signature”: Para garantir que as informações enviadas na requisição para o módulo estejam concisas e não tenham sofrido modificações durante a requisição até o servidor, é necessário que no header da requisição seja enviado o campo “signature”, que deve ser calculado da seguinte forma:
1 – Concatenar os seguintes campos:
Método HTTP* + Timestamp + Conteúdo BODY* (se houver)
* O método HTTP precisa ser em minúsculo, por exemplo, get, post, put, delete
* O conteúdo do body precisa ser sem espaços no começo e no fim e estar em Base64
2- Encriptar os dados concatenados com o algoritmo HMAC SHA256, utilizando a senha informada nas configurações do módulo.
3- Passar os dados encriptados para Base64.
“CodFilial”: passar o código da filial do Shop Control 9 para que o token foi gerado.
“Authorization”: deve ser passado o token gerado pela requisição Autenticação, no seguinte modelo:
Token [tokenGerado]
“Timestamp”: passar o timestamp utilizado para gerar o campo Signature, para questões de conferência.
Todas as requisições que foram processadas e respondidas pelo servidor retornarão o status HTTP 200 OK, independente do sucesso da resposta. Todas as respostas serão retornadas no padrão JSON e terão o seguinte formato:
{
“sucesso”: [bool],
“mensagem”: [string],
“tipo”: [string],
“complementoTipo”: [string],
“statusCode”: [int],
“dados”: [json]
}
Descrição dos campos:
“sucesso”: Esse campo boolean diz que a resposta pode ser considerada como válida para processamento pelo consumidor do serviço. Caso seja falso, o campo “dados” virá sem valor e os campos “mensagem” e “tipo” serão preenchidos com mais informações a respeito do problema.
“mensagem”: Campo string com informações do erro da requisição, caso o campo “sucesso” seja falso. Pode ser uma mensagem simples de validação das regras de negócio do serviço ou uma mensagem de erro retornada pelo servidor (algumas vezes em inglês). Utilizar em conjunto com os campos “tipo”, “complementoTipo” e “statusCode” para fazer o tratamento de erros e sistema de logs.
“tipo”: Campo string com uma informação técnica do tipo do erro para auxiliar o consumidor do serviço a depurar e tratar os problemas. Atualmente os tipos possíveis são:
“complementoTipo”: Campo string, só virá preenchido caso o campo “tipo” seja ambíguo ou complexo a ponto de precisar de um complemento.
“statusCode”: Campo integer, trará o código 200 OK nos casos de sucesso no processamento da requisição. Nos casos de erro, trará um código HTTP relativo ao problema apresentado para que o consumidor do serviço possa apurar seu tratamento de erros (como por exemplo: 401 Não autorizado, para o caso de o token informado seja inválido, etc.).
“dados”: Campo JSON, será o campo onde as informações requisitadas serão apresentadas. Poderá ser um objeto simples ou uma lista, dependendo do tipo da requisição. Para mais informações acerca do tipo de retorno para cada uma das requisições consulte a seção Serviços.
A IdealSoft disponibiliza uma área de homologação com uma base de testes para clientes em processo de integração realizarem os testes das requisições antes de utilizar o módulo Integrações em produção. Ao requisitar o módulo com o setor comercial, você deverá receber o código da filial de homologação para autenticar o serviço.
Caso deseje seguir o roteiro de homologação, leia a seção Roteiro de Testes.
Fará a validação do licenciamento para o número de série e filial informados. Retorna o token para utilização nas demais requisições.
Parâmetros
serie: Número de série licenciado para uso codfilial: Código da filial do Shop Control 9 licenciado para uso.
Parâmetros BODY |
<JSON/>
token: [string] expireAt: [data/hora UTC]
token: Token para utilização nas demais requisições. Tem validade de $HORAS horas. Após expirar, deve ser feita outra requisição de token. expireAt: Data/hora em UTC (YYYY-MM-DDTHH:MM:SS.0000000+00:00) do momento em que o token retornado irá expirar. Pode ser utilizado para que o consumidor do serviço faça um controle da requisição de novos tokens. |
Traz a lista de Filiais cadastradas.
Parâmetros datade (opcional): A data mínima de alteração para que sejam filtrados os resultados. dataate (opcional): A data máxima de alteração para que sejam filtrados os resultados. ativo (opcional): booleano.
|
<JSON/>
codigo: [string] nome: [string] razaoSocial: [string] cNPJ: [string] bairro: [string] cidade: [string] estado: [string] CEP: [string] |
Traz detalhes do cadastro da filial.
Parâmetros codigoFilial: O campo código da filial.
|
<JSON/>
codigo: [string] nome: [string] razaoSocial: [string] cNPJ: [string] bairro: [string] cidade: [string] estado: [string] CEP: [string] |
Traz a lista de funcionários cadastrados.
Parâmetros datadefunc: A data mínima de alteração para que sejam filtrados os resultados. dataatefunc: A data máxima de alteração para que sejam filtrados os resultados. ativo: booleano. tecnico: booleano. vendedor: booleano.
|
<JSON/>
codigo: [string] nome: [string] apelido: [string] sexo: [string](M ou F) admissao: [string] demissao: [string] endereço: [string] bairro: [string] cidade: [string] estado: [string] telefone: [string] inativo: [bool] vendedor: [bool] tecnico: [bool] cargo: [string] cpf: [string] email: [string] |
Traz os detalhes do cadastro do funcionario.
Parâmetros codigoFuncionario: O campo código do Funcionário.
|
<JSON/>
codigo: [string] nome: [string] apelido: [string] sexo: [string](M ou F) admissao: [string] demissao: [string] endereço: [string] bairro: [string] cidade: [string] estado: [string] telefone: [string] inativo: [bool] vendedor: [bool] tecnico: [bool] cargo: [string] cpf: [string] email: [string] |
Traz a lista de cadastros auxiliares do tipo escolhido para complementar o cadastro de produtos.
Parâmetros
tipo: Tipo do cadastro auxiliar, deve ser substituído por um dos seguintes valores:
datade (opcional): A data mínima de alteração |
<JSON/>
codigo: [string] nome: [string] codigo: Código do cadastro. nome: Nome do cadastro. |
As requisições para o cadastro de clientes permitem trazer todos os clientes cadastrados na base de forma paginada – podendo filtrar pela data de alteração dos registros – e também trazer os contatos cadastrados dos clientes.
Existe também a possibilidade de cadastrar clientes e seus contatos através de requisições POST.
Consultar Clientes
Parâmetros
pagina: A requisição trará sempre no máximo 20 registros do cadastro de clientes e fornecedores por página. Para pegar o cadastro completo deve ser feito o loop passando por todas as páginas (começando pela página 1) até que a requisição retorne o tipo “FIM_DE_PAGINA”.
datade (opcional): A data mínima de alteração para que sejam filtrados os resultados. Recomendado para que sejam atualizados os resultados após a primeira sincronização.
dataate (opcional): A data máxima de alteração para que sejam filtrados os resultados. Recomendado para que sejam atualizados os resultados após a primeira sincronização.
Parâmetros BODY |
<JSON/>
codigo: [long] IndicadorIE: 1, 2 ou 9 (Contribuinte, Isento ou Não contribuinte) LGPD_Receber_Campanhas_Marketing: [bool] LGPD_Receber_Contato_Situacao_Pedido: [bool] LGPD_Telefone_Contato_Formatado: [string] (II) IIIII-IIII entregaCep: [string] indicadorIE: [int] vendedor1: { ordem:[int] codigo:[string] nome:[string] } vendedor2: { ordem:[int] codigo:[string] nome:[string] } tabelaPrecosPadrao: [string] codigoClasse: [string] codigoFilial: [string] filialExclusiva: [bool] urlContatos: [string] utiliza_Fidelidade: [bool] |
Parâmetros
codigo: O código do cliente específico para trazer o cadastro. Retorna StatusCode 404 caso seja passado um código que não existe.
Parâmetros BODY |
<JSON/>
codigo: [long] fax: [string] LGPD_Receber_Campanhas_Marketing: [bool] LGPD_Receber_Contato_Situacao_Pedido: [bool] LGPD_Telefone_Contato_Formatado: [string] (II) IIIII-IIII entregaCep: [string] indicadorIE: [int] vendedor1: { ordem:[int] codigo:[string] nome:[string] } vendedor2: { ordem:[int] codigo:[string] nome:[string] } tabelaPrecosPadrao: [string] codigoClasse: [string] codigoFilial: [string] filialExclusiva: [bool] utiliza_Fidelidade: [bool] urlContatos: [string] |
Consultar Contatos
Parâmetros
datade (opcional): A data mínima de alteração para que sejam filtrados os resultados.
dataate (opcional): A data máxima de alteração para que sejam filtrados os resultados. Recomendado para que sejam atualizados os resultados após a primeira sincronização.
Parâmetros BODY |
<JSON/>
codigoCliente: [long] ordem: [int]
|
Cadastrar Cliente
Parâmetros Nenhum.
Parâmetros BODY Content-Type: application/json
Único JSON: nome: [string] LGPD_Receber_Campanhas_Marketing: [bool] LGPD_Receber_Contato_Situacao_Pedido: [bool] LGPD_Telefone_Contato_Formatado: [string] (II) IIIII-IIII telefone2: [string] IndicadorIE: 1, 2 ou 9 (Contribuinte, Isento ou Não contribuinte) UrlContatos: [string] Utiliza_Fidelidade: [bool] * País: deixar em branco coloca o país como 1058 Brasil |
<JSON/>
codigoGerado: [long] |
Atualizar Cliente
Parâmetros Nenhum.
Parâmetros BODY Content-Type: application/json
Único JSON: nome: [string] LGPD_Receber_Campanhas_Marketing: [bool] LGPD_Receber_Contato_Situacao_Pedido: [bool] LGPD_Telefone_Contato_Formatado: [string] (II) IIIII-IIII telefone2: [string] * País: deixar em branco coloca o país como 1058 Brasil |
<JSON/>
codigoGerado: [long] |
Cadastrar Contato
Parâmetros codigo: Substituir pelo código do cliente para vincular a lista de contatos.
Parâmetros BODY
Lista JSON: nome: [string] ordem: [int] |
<JSON/>
|
Atualizar Contato
Parâmetros codigo: Substituir pelo código do cliente para vincular a lista de contatos.
Parâmetros BODY
Único JSON: nome: [string] ordem: [int] |
<JSON/> |
Para o cadastro de produtos é possível trazer os campos básicos de um cadastro, o estoque atual nas filiais liberadas, as fotos cadastradas e os preços das tabelas de preço cadastradas.
Parâmetros pagina: A requisição trará sempre no máximo 20 registros por página do cadastro de produtos. Para pegar o cadastro completo deve ser feito o loop passando por todas as páginas (começando pela página 1) até que a requisição retorne o tipo “FIM_DE_PAGINA”.
datade (opcional): A data mínima de alteração para que sejam filtrados os resultados. Recomendado para que sejam atualizados os resultados após a primeira sincronização.
dataate (opcional): A data máxima de alteração para que sejam filtrados os resultados. Recomendado para que sejam atualizados os resultados após a primeira sincronização.
Parâmetros BODY |
<JSON/>
codigo: [int] altura: [decimal] largura: [decimal] comprimento: [decimal] estoqueAtual: [decimal] [codigoBarras]: [string] |
Fotos
As requisições de fotos estão separadas em duas etapas. Primeiro você deve requisitar a lista de fotos disponíveis para o produto. Com base nessa lista deve requisitar a foto da posição desejada.
Parâmetros codigoProduto: O campo código do produto requisitado em Produtos.
Parâmetros BODY |
<JSON/>
codigo: [string] |
Parâmetros codigoProduto: O campo código do produto requisitado em Produtos.
posicao: O campo posição da requisição acima.
Parâmetros BODY |
<JSON/>
image/jpeg (Imagem em Base64) |
Preços
Os preços podem ser consultados tanto pela data de última alteração quanto apenas de um produto específico.
Parâmetros
dataate: A data máxima de alteração para que sejam filtrados os resultados
Parâmetros BODY |
<JSON/>
codigo: [string] |
Parâmetros
Parâmetros BODY |
<JSON/>
codigo: [string] preco_Promocional: [decimal] dataFim: [data/hora UTC] |
Estes serviços trarão apenas as promoções ativas.
Parâmetros pagina: A requisição trará sempre no máximo 20 registros de promoções por página. Para pegar todas as promoções ativas deve ser feito o loop passando por todas as páginas (começando pela página 1) até que a requisição retorne o tipo “FIM_DE_PAGINA”.
datade (opcional): A data mínima de alteração para que sejam filtrados os resultados. Recomendado para que sejam atualizados os resultados após a primeira sincronização.
dataate (opcional): A data máxima de alteração para que sejam filtrados os resultados. Recomendado para que sejam atualizados os resultados após a primeira sincronização.
Parâmetros BODY |
<JSON/>
codigoProduto: [string] |
Parâmetros
Parâmetros BODY |
<JSON/>
codigoProduto: [string] |
Os serviços para o estoque podem ser requisitados tanto por produto quanto por grade (quando o tipo do produto for “grade” no cadastro de produtos do Shop Control 9. Caso seja feito uma consulta do produto grade pela requisição de produtos normais, o estoque virá com a soma de todas as grades. O estoque será retornado apenas se a filial estiver configurada corretamente nas configurações do módulo Integrações.
Parâmetros
Parâmetros BODY |
<JSON/>
codigo: [string] |
Todas as Grades
Parâmetros
Parâmetros BODY |
<JSON/>
codigo: [string] |
Grade da Cor
Parâmetros
Parâmetros BODY |
<JSON/>
codigo: [string] |
Grade do Tamanho
Parâmetros
Parâmetros BODY |
<JSON/>
codigo: [string] |
Grade Específica
Parâmetros codigoProduto: O campo código do produto requisitado em Produtos.
Parâmetros BODY |
<JSON/>
codigo: [string] |
Parâmetros
Parâmetros BODY |
<JSON/>
codigo: [string] |
Lote
Parâmetros codigoProduto: O campo código do produto requisitado em Produtos.
Parâmetros BODY |
<JSON/>
codigo: [string] |
Série
Parâmetros codigoProduto: O campo código do produto requisitado em Produtos.
Parâmetros BODY |
<JSON/>
codigo: [string] |
Edição
Parâmetros codigoProduto: O campo código do produto requisitado em Produtos.
Parâmetros BODY |
<JSON/>
codigo: [string] |
Todas as Grades
Parâmetros
Parâmetros BODY |
<JSON/>
codigo: [string] |
Grade da Cor
Parâmetros
Parâmetros BODY |
<JSON/>
codigo: [string] lista: [Lista JSON] |
Grade do Tamanho
Parâmetros
Parâmetros BODY |
<JSON/>
codigo: [string] |
Grade Específica
Parâmetros codigoProduto: O campo código do produto requisitado em Produtos.
Parâmetros BODY |
<JSON/>
codigo: [string] |
Estoque Paginado
Parâmetros pagina: A requisição trará sempre no máximo 10 registros de estoque por página. Para pegar todas os registros deve ser feito o loop passando por todas as páginas (começando pela página 1) até que a requisição retorne o tipo “FIM_DE_PAGINA”.
datade (opcional): A data mínima de alteração para que sejam filtrados os resultados. Recomendado para que sejam atualizados os resultados após a primeira sincronização.
dataate (opcional): A data máxima de alteração para que sejam filtrados os resultados. Recomendado para que sejam atualizados os resultados após a primeira sincronização.
Parâmetros BODY |
<JSON/>
codigo: [string] tipoEstoque: [N,G,S,E e L] (Normal, Grade, Serie, Edição e Lote) |
Parâmetros Parâmetros BODY Único JSON: CodigoCliente: [long] CodigoFilialEstoque: [long] cpfCnpj: [string] codigoOperacao: [int] codigoCaixa: [int] Desconto_Total_Geral: [decimal] Custo_Adicional_Ecommerce: [decimal] CodigoVendedor_1: [int] CodigoVendedor_2: [int] CodigoIndicadorPresencial: [int] – 0, 1, 2, 3, 4, 5 e 9 (Verificar descrição logo abaixo) produtos: [Lista JSON] recebimentos: [Lista JSON] valorParcelas: [decimal] valor: [decimal] codigoContaBancaria: [int] vencimento: [data] codigoAdministradora: [int] nsu: [string] quantidadeParcelas: [int] numeroCartao: [string] dadosEntrega: [Lista JSON] valor: [decimal]
Código Indicador Presencial |
<JSON/>recibo: [GUID] |
Parâmetros
Parâmetros BODY |
<JSON/>
recibo: [GUID] |
Parâmetros
Parâmetros BODY |
<JSON/>
ordem: [int]
|
Consultar Várias Sequências Paginada
Parâmetros
Parâmetros BODY |
<JSON/>
|
Consulta por Período
Parâmetros
Parâmetros BODY |
<JSON/>ordem: [int]
|
Parâmetros
Parâmetros BODY |
<JSON/>
ordem: [int]
|
Consultar Várias Devoluções Paginada
Parâmetros
Parâmetros BODY |
<JSON/>
|
Consulta por Período
Parâmetros
Parâmetros BODY |
<JSON/>ordem: [int] documento_Fiscais: [Lista JSON]
|
A IdealSoft disponibiliza uma base de dados com uma simulação dos dados de uma empresa de testes para que o desenvolvedor possa testar as chamadas para o serviço sem que altere os dados em produção. Antes de adquirir o módulo Integrações, iremos disponibilizar um número de série, um código de filial de testes e uma senha para montar as requisições no serviço web desenvolvido. Dessa forma, iremos certificar que o serviço web desenvolvido para a empresa estará em conformidade com esse manual técnico, e que irá realizar corretamente a comunicação com o módulo Integrações.
Para solicitar esse número de série e código de filial, envie um e-mail para suporte@idealsoft.com.br.
A URL a ser utilizada é a seguinte:
http://idealsoftexportaweb.eastus.cloudapp.azure.com:60500/
Aqui listaremos como deverá ser feita a requisição e o que a requisição deverá retornar para a base de testes da IdealSoft.
Primeiramente deverá requisitar um token. O token será utilizado para todas as outras requisições. Vamos levar em consideração que:
A série recebida da IdealSoft é: HIAABB-100000-ABCD
O código da filial recebida da IdealSoft é: 1
Requisição
GET /auth/?serie=HIAABB-100000-ABCD&codfilial=1 HTTP/1.1 Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 Signature: -1 cache-control: no-cache |
Resposta
Transfer-Encoding:”chunked” Content-Type:”application/json; charset=utf-8″ Server:”Microsoft-HTTPAPI/2.0″ Date:”Mon, 18 Mar 2019 19:32:38 GMT” |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": {
"token": "SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4NTM0MzU4
NTk0OTQ0NA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:xlJVl3KCiiVmm5VaJVw7i57nf3AzgAoXAeR1027iWZ4=",
"expireAt": "2019-03-19T07:32:38.5949444+00:00"
}
}
Agora com o token retornado, podemos fazer requisição em qualquer um dos serviços disponibilizados no módulo.
Vamos começar fazendo uma requisição nos cadastros auxiliares, pegando todas as cores cadastradas:
Requisição
GET /aux/cores AuthKey:”1″ Authorization:”Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4NTM0MzU4NTk0OTQ0NA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:xlJVl3KCiiVmm5VaJVw7i57nf3AzgAoXAeR1027iWZ4=” Signature:”dUi3cbBAodIQu6x9QrYKWGlp6QHONwfWAptPXz0tNxU=” Timestamp:”1552937756″ cache-control:”no-cache” Accept:”*/*” Host:”idealsoftexportaweb.eastus.cloudapp.azure.com:60500″ accept-encoding:”gzip, deflate” |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Mon, 18 Mar 2019 19:35:56 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": [
{
"codigo": "999",
"nome": "SEM COR"
},
{
"codigo": "1",
"nome": "AZUL"
},
{
"codigo": "2",
"nome": "PRETO"
},
{
"codigo": "3",
"nome": "VERMELHO"
}
]
}
Foram retornadas as cores 999, 1, 2 e 3. Existem vários outros tipos de cadastros auxiliares para a requisição. Para saber quais são eles, consultar a seção Auxiliares.
Consultando clientes e fornecedores de forma paginada
Agora vamos consultar os clientes e fornecedores cadastrados. Para isso é necessário paginar a consulta. Um exemplo da primeira página da requisição de clientes cadastrados:
Requisição
GET /clientes/1 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4NTM0MzU4NTk0OTQ0NA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:xlJVl3KCiiVmm5VaJVw7i57nf3AzgAoXAeR1027iWZ4= Signature: NzH0v3JYuH8SeChtW/z7odowwjmFKekVx5xN25YeC0c= Timestamp: 1552938274 cache-control: no-cache Postman-Token: 5a3923d4-10ea-4b4e-b99e-befe20025d12 User-Agent: PostmanRuntime/7.6.1 Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Mon, 18 Mar 2019 19:44:36 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": [
{
"codigo": 16,
"nome": "Bernardo Amaral Gomes",
"fantasia": "",
"tipo": "C",
"fisicaJuridica": "F",
"cpfCnpj": "010.184.670-33",
"rg": "418757896",
"ie": "",
"cep": "01007040",
"endereco": "Parque Anhangabaú",
"numero": "",
"complemento": "",
"bairro": "Centro",
"cidade": "São Paulo",
"uf": "SP",
"pais": "",
"telefone1": "1114999495",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "01007040",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/16",
"contatos": [
{
"nome": "Bernardo",
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": ""
}
]
},
{
"codigo": 2,
"nome": "Bernardo Miguel Fernando da Silva",
"fantasia": "",
"tipo": "C",
"fisicaJuridica": "F",
"cpfCnpj": "794.895.670-00",
"rg": "16.459.737-2",
"ie": "",
"cep": "78705800",
"endereco": "Rua Goiás",
"numero": "497",
"complemento": "",
"bairro": "Vila Adriana",
"cidade": "Rondonópolis",
"uf": "MT",
"pais": "",
"telefone1": "(66) 2693-3906",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "78705800",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/2",
"contatos": [
{
"nome": "Email",
"sexo": "M",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": "bernardomiguelfernandodasilva_@metododerose.org"
}
]
},
{
"codigo": 1,
"nome": "Cliente Balcão",
"fantasia": "",
"tipo": "C",
"fisicaJuridica": "F",
"cpfCnpj": "",
"rg": "",
"ie": "",
"cep": "",
"endereco": "",
"numero": "",
"complemento": "",
"bairro": "",
"cidade": "",
"uf": "",
"pais": "",
"telefone1": "",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/1",
"contatos": []
},
{
"codigo": 4,
"nome": "Cristiane e Débora Mudanças ME",
"fantasia": "Cristiane e Débora Mudanças ME",
"tipo": "F",
"fisicaJuridica": "J",
"cpfCnpj": "32.396.420/0001-25",
"rg": "",
"ie": "",
"cep": "85853115",
"endereco": "Rua Natal Graciotin",
"numero": "636",
"complemento": "",
"bairro": "Vila Shalon",
"cidade": "Foz do Iguaçu",
"uf": "PR",
"pais": "",
"telefone1": "(45) 3570-3111",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "85853115",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/4",
"contatos": []
},
{
"codigo": 11,
"nome": "Daniel Santos",
"fantasia": "",
"tipo": "C",
"fisicaJuridica": "F",
"cpfCnpj": "903.366.985-42",
"rg": "",
"ie": "",
"cep": "83203570",
"endereco": "Travessa Rotary ",
"numero": "553",
"complemento": "",
"bairro": "",
"cidade": "",
"uf": "",
"pais": "",
"telefone1": "",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "83203570",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/11",
"contatos": [
{
"nome": "Daniel",
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": ""
}
]
},
{
"codigo": 8,
"nome": "Eduarda Pinto",
"fantasia": "Eduarda Pinto",
"tipo": "C",
"fisicaJuridica": "F",
"cpfCnpj": "277.447.362-49",
"rg": "",
"ie": "",
"cep": "33146070",
"endereco": "Rua Oito ",
"numero": "1392",
"complemento": "",
"bairro": "",
"cidade": "Santa Luzia",
"uf": "MG",
"pais": "",
"telefone1": "(31) 7475-8094",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "33146070",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/8",
"contatos": [
{
"nome": "Eduarda",
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": "eduardagoncalvespinto@einrot.com"
}
]
},
{
"codigo": 19,
"nome": "Eduarda Santos",
"fantasia": "",
"tipo": "C",
"fisicaJuridica": "F",
"cpfCnpj": "835.935.994-65",
"rg": "",
"ie": "",
"cep": "",
"endereco": "",
"numero": "",
"complemento": "",
"bairro": "",
"cidade": "",
"uf": "",
"pais": "",
"telefone1": "",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/19",
"contatos": [
{
"nome": "Eduarda",
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": ""
}
]
},
{
"codigo": 25,
"nome": "Enzo Barbosa Goncalves",
"fantasia": "",
"tipo": "C",
"fisicaJuridica": "F",
"cpfCnpj": "759.527.510-59",
"rg": "",
"ie": "",
"cep": "06656010",
"endereco": "Rua Sete de Setembro",
"numero": "1559",
"complemento": "",
"bairro": "Jardim Bela Vista",
"cidade": "Itapevi",
"uf": "SP",
"pais": "",
"telefone1": "",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "06656010",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/25",
"contatos": [
{
"nome": "Enzo",
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": ""
}
]
},
{
"codigo": 24,
"nome": "Erick Ribeiro Santos",
"fantasia": "",
"tipo": "C",
"fisicaJuridica": "F",
"cpfCnpj": "423.543.609-08",
"rg": "",
"ie": "",
"cep": "70350500",
"endereco": "CRS 505",
"numero": "427",
"complemento": "",
"bairro": "Asa Sul",
"cidade": "Brasília",
"uf": "DF",
"pais": "",
"telefone1": "",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "70350500",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/24",
"contatos": [
{
"nome": "Erick",
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": "ErickRibeiroSantos@dayrep.com"
}
]
},
{
"codigo": 22,
"nome": "Estevan Castro",
"fantasia": "",
"tipo": "C",
"fisicaJuridica": "F",
"cpfCnpj": "556.860.598-02",
"rg": "",
"ie": "",
"cep": "88704400",
"endereco": "Rua Roberto Zumblick",
"numero": "",
"complemento": "",
"bairro": "Humaitá",
"cidade": "Tubarão",
"uf": "SC",
"pais": "",
"telefone1": "(48) 6903-6227",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "88704400",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/22",
"contatos": [
{
"nome": "Estevan",
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": ""
}
]
},
{
"codigo": 12,
"nome": "Estevan Lima Rocha",
"fantasia": "",
"tipo": "C",
"fisicaJuridica": "F",
"cpfCnpj": "834.444.522-17",
"rg": "",
"ie": "",
"cep": "15043520",
"endereco": "Rua Nabor César Siqueira ",
"numero": "298",
"complemento": "",
"bairro": "",
"cidade": "São José do Rio Preto",
"uf": "SP",
"pais": "",
"telefone1": "(17) 6778-9176",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "15043520",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/12",
"contatos": [
{
"nome": "Estevan",
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": "eduardomartinsrocha@fleckens.hu"
}
]
},
{
"codigo": 26,
"nome": "Fornecedor de Administradora de Cartão",
"fantasia": "",
"tipo": "F",
"fisicaJuridica": "F",
"cpfCnpj": "",
"rg": "",
"ie": "",
"cep": "",
"endereco": "",
"numero": "",
"complemento": "",
"bairro": "",
"cidade": "",
"uf": "",
"pais": "",
"telefone1": "",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/26",
"contatos": [
{
"nome": "Fornecedor",
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": ""
}
]
},
{
"codigo": 13,
"nome": "Guilherme Amaral Teixeira",
"fantasia": "",
"tipo": "C",
"fisicaJuridica": "F",
"cpfCnpj": "240.431.659-19",
"rg": "2.977.269",
"ie": "",
"cep": "70342500",
"endereco": "Quadra CLS 103",
"numero": "396",
"complemento": "",
"bairro": "Asa Sul",
"cidade": "Brasília",
"uf": "DF",
"pais": "",
"telefone1": "",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "70342500",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/13",
"contatos": [
{
"nome": "Guilherme",
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": ""
}
]
},
{
"codigo": 9,
"nome": "Gustavo Goncalves",
"fantasia": "",
"tipo": "C",
"fisicaJuridica": "F",
"cpfCnpj": "285.238.652-68",
"rg": "",
"ie": "",
"cep": "09910320",
"endereco": "Rua Araruama ",
"numero": "59",
"complemento": "",
"bairro": "",
"cidade": "Diadema",
"uf": "SP",
"pais": "",
"telefone1": "(11) 8832-7526",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "09910320",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/9",
"contatos": [
{
"nome": "Gustavo",
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": ""
},
{
"nome": "gustavoferreiragoncalves@super",
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": "gustavoferreiragoncalves@superrito.com"
}
]
},
{
"codigo": 21,
"nome": "Kauã Martins",
"fantasia": "",
"tipo": "C",
"fisicaJuridica": "F",
"cpfCnpj": "",
"rg": "",
"ie": "",
"cep": "",
"endereco": "",
"numero": "",
"complemento": "",
"bairro": "",
"cidade": "",
"uf": "",
"pais": "",
"telefone1": "",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/21",
"contatos": [
{
"nome": "Kauã",
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": ""
}
]
},
{
"codigo": 5,
"nome": "Kesia Lemos",
"fantasia": "",
"tipo": "C",
"fisicaJuridica": "F",
"cpfCnpj": "736.401.230-34",
"rg": "",
"ie": "",
"cep": "",
"endereco": "",
"numero": "",
"complemento": "",
"bairro": "",
"cidade": "",
"uf": "",
"pais": "",
"telefone1": "",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/5",
"contatos": [
{
"nome": "Kesia",
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": ""
}
]
},
{
"codigo": 10,
"nome": "Kevin Watts",
"fantasia": "",
"tipo": "C",
"fisicaJuridica": "F",
"cpfCnpj": "884.334.947-32",
"rg": "",
"ie": "",
"cep": "",
"endereco": "",
"numero": "",
"complemento": "",
"bairro": "",
"cidade": "",
"uf": "",
"pais": "",
"telefone1": "(11) 5578-2520",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/10",
"contatos": [
{
"nome": "Kevin",
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": ""
}
]
},
{
"codigo": 17,
"nome": "Leonor Melo",
"fantasia": "",
"tipo": "C",
"fisicaJuridica": "F",
"cpfCnpj": "675.325.380-79",
"rg": "",
"ie": "",
"cep": "29041325",
"endereco": "Escadaria Ana Maria Pinto",
"numero": "359",
"complemento": "",
"bairro": "Romão",
"cidade": "Vitória",
"uf": "ES",
"pais": "",
"telefone1": "(27) 3211-6505",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "29041325",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/17",
"contatos": [
{
"nome": "Leonor",
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": "leonorsousamelo@superrito.com"
}
]
},
{
"codigo": 14,
"nome": "Matheus Gomes Teixeira",
"fantasia": "",
"tipo": "C",
"fisicaJuridica": "F",
"cpfCnpj": "567.982.358-67",
"rg": "418757896",
"ie": "",
"cep": "31210440",
"endereco": "Rua Anfibólios",
"numero": "323",
"complemento": "",
"bairro": "Bonfim",
"cidade": "Belo Horizonte",
"uf": "MG",
"pais": "",
"telefone1": "3128557267",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "31210440",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/14",
"contatos": [
{
"nome": "Matheus",
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": ""
}
]
},
{
"codigo": 15,
"nome": "Mauro Machado Ducati",
"fantasia": "",
"tipo": "C",
"fisicaJuridica": "F",
"cpfCnpj": "920.228.149-16",
"rg": "911225341",
"ie": "",
"cep": "01007040",
"endereco": "Parque Anhangabaú",
"numero": "487",
"complemento": "",
"bairro": "Centro",
"cidade": "São Paulo",
"uf": "SP",
"pais": "",
"telefone1": "1133861352",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "01007040",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/15",
"contatos": [
{
"nome": "Mauro",
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": ""
}
]
}
]
}
Foram retornados 20 registros de clientes, cada um com a sua lista de contatos cadastrados. Caso seja feita uma requisição para uma página que não há clientes, o serviço retornará uma resposta onde o campo sucesso será falso, com o tipo do erro FIM_DE_PAGINA:
Requisição
GET /clientes/99 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4NTkzMjc4NjY3MDMzNA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:C1wFGwHL75djY+Z9ZlmlHxsewqxzYFz1axOUKlRSMdo= Signature: /BBAkSX/T5W6jN+/RZ3kRoLOdg884GM9Ymki1F5tyiY= Timestamp: 1552996499 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Tue, 19 Mar 2019 11:55:02 GMT |
{
"sucesso": false,
"mensagem": "Não há registros disponíveis na página requisitada.",
"tipo": "FIM_DE_PAGINA",
"complementoTipo": "",
"statusCode": 417,
"dados": null
}
Cadastros filtrados por data de alteração
Após pegar o cadastro de clientes e fornecedores completo, é importante manter os cadastros atualizados. O serviço também suporta fazer o filtro da data de alteração dos cadastros. Vamos supor que a última vez que sincronizei os cadastros foi dia 20/02/2019 e que quero os cadastros que foram alterados em uma semana:
Requisição
GET /clientes/1?dataate=2019-02-27&datade=2019-02-20 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4NTkzMjc4NjY3MDMzNA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:C1wFGwHL75djY+Z9ZlmlHxsewqxzYFz1axOUKlRSMdo= Signature: iQvq6MnFr0aJD704ELEBBK28Zj7lbOdsnhYCpmr7Uzs= Timestamp: 1552997193 cache-control: no-cache Postman-Token: cb69e1e4-d2ec-48ed-9ec7-35a4580462b3 User-Agent: PostmanRuntime/7.6.1 Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Tue, 19 Mar 2019 12:06:33 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": [
{
"codigo": 26,
"nome": "Fornecedor de Administradora de Cartão",
"fantasia": "",
"tipo": "F",
"fisicaJuridica": "F",
"cpfCnpj": "",
"rg": "",
"ie": "",
"cep": "",
"endereco": "",
"numero": "",
"complemento": "",
"bairro": "",
"cidade": "",
"uf": "",
"pais": "",
"telefone1": "",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/26",
"contatos": [
{
"nome": "Fornecedor",
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": ""
}
]
}
]
}
Apenas o fornecedor “26 – Fornecedor de Administradora de Cartão” foi cadastrado ou alterado.
Detalhes de um único cadastro
Também há a possibilidade de pegar os dados de apenas um cadastro específico, passando o código do cliente / fornecedor para o serviço /clientes/detalhes. Vamos supor que o cliente de código “2” fez uma compra na sua loja virtual e você quer garantir que o endereço de entrega é o mesmo que foi cadastrado no Shop Control 9:
Requisição
GET /clientes/detalhes/2 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4NTkzMjc4NjY3MDMzNA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:C1wFGwHL75djY+Z9ZlmlHxsewqxzYFz1axOUKlRSMdo= Signature: 6lVVlNt4eQa5ZA+bqGl1cSl1iPhP5j6KYDPQ/HwDsi0= Timestamp: 1552997521 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Tue, 19 Mar 2019 12:12:04 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": {
"codigo": 2,
"nome": "Bernardo Miguel Fernando da Silva",
"fantasia": "",
"tipo": "C",
"fisicaJuridica": "F",
"cpfCnpj": "794.895.670-00",
"rg": "16.459.737-2",
"ie": "",
"cep": "78705800",
"endereco": "Rua Goiás",
"numero": "497",
"complemento": "",
"bairro": "Vila Adriana",
"cidade": "Rondonópolis",
"uf": "MT",
"pais": "BRASIL",
"telefone1": "(66) 2693-3906",
"telefone2": "",
"fax": "",
"entregaCep": "",
"entregaEndereco": "",
"entregaNumero": "",
"entregaComplemento": "",
"entregaBairro": "",
"entregaCidade": "",
"entregaUf": "",
"entregaPais": "",
"entregaPontoRef1": "",
"entregaPontoRef2": "",
"faturamentoCep": "78705800",
"faturamentoEndereco": "",
"faturamentoNumero": "",
"faturamentoComplemento": "",
"faturamentoBairro": "",
"faturamentoCidade": "",
"faturamentoUf": "",
"faturamentoPais": "",
"faturamentoPontoRef1": "",
"faturamentoPontoRef2": "",
"urlContatos": "/contatos/2",
"contatos": [
{
"nome": "Email",
"sexo": "M",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": "bernardomiguelfernandodasilva_@metododerose.org"
}
]
}
}
Caso seja informado um cliente inexistente o serviço responderá com o campo sucesso como falso e o statusCode 404:
Requisição
GET /clientes/detalhes/2232 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4NTkzMjc4NjY3MDMzNA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:C1wFGwHL75djY+Z9ZlmlHxsewqxzYFz1axOUKlRSMdo= Signature: a8QaGHhdu/D6unvLNQrbnDY6G+IcpNLhueLw35ETnK0= Timestamp: 1552999560 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Tue, 19 Mar 2019 12:46:03 GMT |
{
"sucesso": false,
"mensagem": "Cliente não encontrado",
"tipo": "REGISTRO_NAO_ENCONTRADO",
"complementoTipo": "",
"statusCode": 404,
"dados": null
}
Contatos de um cliente
No Shop Control 9, um cadastro de cliente pode ter várias pessoas de contato cadastradas, cada uma delas com um e-mail, telefone e dados cadastrais diferentes. É importante manter estes dados atualizados para ferramentas que utilizem esse tipo de informação, como por exemplo o envio de e-mails e SMS automatizados. É possível trazer os contatos de um cliente específico, passando o código:
Requisição
GET /clientes/contatos/3 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4NTkzMjc4NjY3MDMzNA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:C1wFGwHL75djY+Z9ZlmlHxsewqxzYFz1axOUKlRSMdo= Signature: 7dLVdcSkieClroQNmke/DBlzJ35Tb0dbW0x5UeypHEY= Timestamp: 1552999953 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Tue, 19 Mar 2019 12:52:33 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": [
{
"nome": "Nelson Kauê Dias",
"sexo": "M",
"cargo": "",
"diaAniversario": 6,
"mesAniversario": "JUN",
"anoAniversario": 1987,
"telefone": "(68) 98671-9847",
"ramal": "",
"tipoEmail": "P",
"email": "nelsonkauedias_@icloud.com"
}
]
}
Contatos alterados em um período
Também é possível trazer todos os contatos atualizados em um período:
Requisição
GET /clientes/contatos/?dataate=2019-02-27&datade=2019-01-25 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4NTkzMjc4NjY3MDMzNA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:C1wFGwHL75djY+Z9ZlmlHxsewqxzYFz1axOUKlRSMdo= Signature: V7qW6eCTFXie4E/K7X9q7pgaXXCiu1k+XDNAtq/B1hM= Timestamp: 1553000193 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Tue, 19 Mar 2019 12:56:33 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": [
{
"codigoCliente": 26,
"contatos": [
{
"sexo": "",
"cargo": "",
"diaAniversario": 0,
"mesAniversario": "",
"anoAniversario": 0,
"telefone": "",
"ramal": "",
"tipoEmail": "E",
"email": "",
"ordem": 24,
"codigo": 26,
"nome": "Fornecedor"
}
]
}
]
}
Cadastrando um cliente
O serviço também permite o cadastro de novos clientes. Ao fazer a requisição com os dados preenchidos com sucesso é retornado o código cadastrado no Shop Control 9. O código utilizado é sempre o próximo código disponível.
Requisição
POST /clientes/ CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4ODUxODI0Mzc4NjM3NA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:EGnJhri+zyEy2UMymgYZ6VZ0I+3slqze+A8mSNMwr78= Signature: 4ogNs3XU6vKeEw+ul9tiHDiAS5sFC0+lxzorSOjosIA= Timestamp: 1553255127 Content-Type: application/json cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate content-length: 1010 |
{
"Nome": "Postman Cliente #2",
"Fantasia": "Exporta Web #2",
"Tipo": "C",
"FisicaJuridica": "F",
"CpfCnpj": "16025717087",
"Rg": "179810467",
"Ie": "ISENTO",
"Cep": 82515000,
"Endereco": "Av. Pref. Erasto Gaertner",
"Numero": 2500,
"Complemento": "Bl 131",
"Bairro": "Bacacheri",
"Cidade": "Curitiba",
"Uf": "PR",
"Pais": "",
"Telefone1": "41992279389",
"Telefone2": null,
"Fax": null,
"EntregaCep": null,
"EntregaEndereco": null,
"EntregaNumero": null,
"EntregaComplemento": null,
"EntregaBairro": null,
"EntregaCidade": null,
"EntregaUf": null,
"EntregaPais": null,
"EntregaPontoRef1": null,
"EntregaPontoRef2": null,
"FaturamentoCep": null,
"FaturamentoEndereco": null,
"FaturamentoNumero": null,
"FaturamentoComplemento": null,
"FaturamentoBairro": null,
"FaturamentoCidade": null,
"FaturamentoUf": null,
"FaturamentoPais": null,
"FaturamentoPontoRef1": null,
"FaturamentoPontoRef2": null
}
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Fri, 22 Mar 2019 11:45:31 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": {
"codigoGerado": 28
}
}
Cadastrando contatos para um cliente
Também há a possibilidade de cadastrar contatos para um cliente. Vamos pegar o cliente que cadastramos agora e cadastrar dois contatos, passando o código como parâmetro na URL:
Requisição
POST /clientes/contatos/28 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4ODY3MzAwOTEyNTE1OA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:8YUzqB78ff6TmhgYBabl44/RfDKelZxyTELlbtyD3wg= Signature: gvOMzbWHMNl0VIrQcO+KxDetbLQIATLlQf1UuyL4gu0= Timestamp: 1553270559 Content-Type: application/json; charset=UTF-8 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate content-length: 639 |
[
{
"Nome": "João da Silva",
"Sexo": null,
"Cargo": null,
"DiaAniversario": 20,
"MesAniversario": "JAN",
"AnoAniversario": 1977,
"Telefone": null,
"Ramal": null,
"TipoEmail": null,
"Email": "joaosilva@terra.com.br"
},
{
"Nome": "Pedro Nascimento",
"Sexo": null,
"Cargo": null,
"DiaAniversario": 11,
"MesAniversario": "MAI",
"AnoAniversario": 1901,
"Telefone": null,
"Ramal": null,
"TipoEmail": null,
"Email": "pedro@gtstintas.com.br"
}
]
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: text/html Server: Microsoft-HTTPAPI/2.0 Date: Fri, 22 Mar 2019 16:02:41 GMT |
Nesse caso a resposta 200 já nos diz que os cadastros foram inseridos com sucesso.
Caso seja enviado um código inexistente para o serviço, é retornado erro:
Requisição
POST /clientes/contatos/2832323 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4ODY3MzAwOTEyNTE1OA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:8YUzqB78ff6TmhgYBabl44/RfDKelZxyTELlbtyD3wg= Signature: S5kCS/qviAdcFiCrWbnwRMg5TlVTAvWHgo9E6rBkYEU= Timestamp: 1553270803 Content-Type: application/json; charset=UTF-8 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate content-length: 639 |
[
{
"Nome": "João da Silva",
"Sexo": null,
"Cargo": null,
"DiaAniversario": 20,
"MesAniversario": "JAN",
"AnoAniversario": 1977,
"Telefone": null,
"Ramal": null,
"TipoEmail": null,
"Email": "joaosilva@terra.com.br"
},
{
"Nome": "Pedro Nascimento",
"Sexo": null,
"Cargo": null,
"DiaAniversario": 11,
"MesAniversario": "MAI",
"AnoAniversario": 1901,
"Telefone": null,
"Ramal": null,
"TipoEmail": null,
"Email": "pedro@gtstintas.com.br"
}
]
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Fri, 22 Mar 2019 16:06:43 GMT |
{
"sucesso": false,
"mensagem": "Cliente não encontrado",
"tipo": "REGISTRO_NAO_ENCONTRADO",
"complementoTipo": "",
"statusCode": 404,
"dados": null
}
Consultando produtos de forma paginada
Assim como a consulta de clientes e fornecedores, a consulta de produtos também é paginada.
Requisição
GET /produtos/1 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4ODY3MzAwOTEyNTE1OA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:8YUzqB78ff6TmhgYBabl44/RfDKelZxyTELlbtyD3wg= Signature: v9PTJ0FtozWggLVsUolS3j8TvPzjNguYWBXCTOwuEes= Timestamp: 1553274406 cache-control: no-cache Postman-Token: 70d0fb6a-5b26-4319-8330-e738c28b0452 User-Agent: PostmanRuntime/7.6.1 Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Fri, 22 Mar 2019 17:06:48 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": [
{
"ordem": 3,
"codigo": "3",
"nome": "Base Mary Kay",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 2,
"codigoSubclasse": 3,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 100,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/3",
"urlTabelaPreco": "/precos/3",
"urlPromocoes": "/promocoes/produto/3",
"urlFotos": "/fotos/3",
"precos": [
{
"tabela": "TABELA 1",
"preco": 20,
"promocional": true
},
{
"tabela": "TABELA 2",
"preco": 0,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 0,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 11.97,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 11.97,
"promocional": false
}
]
},
{
"ordem": 21,
"codigo": "21",
"nome": "Batom em bala",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 2,
"codigoSubclasse": 7,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 100,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/21",
"urlTabelaPreco": "/precos/21",
"urlPromocoes": "/promocoes/produto/21",
"urlFotos": "/fotos/21",
"precos": [
{
"tabela": "TABELA 1",
"preco": 4,
"promocional": false
},
{
"tabela": "TABELA 2",
"preco": 0,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 0,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 2,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 2,
"promocional": false
}
]
},
{
"ordem": 20,
"codigo": "20",
"nome": "Batom Líquido Vult cor 14",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 2,
"codigoSubclasse": 7,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 101,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/20",
"urlTabelaPreco": "/precos/20",
"urlPromocoes": "/promocoes/produto/20",
"urlFotos": "/fotos/20",
"precos": [
{
"tabela": "TABELA 1",
"preco": 6,
"promocional": false
},
{
"tabela": "TABELA 2",
"preco": 0,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 0,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 3,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 3,
"promocional": false
}
]
},
{
"ordem": 24,
"codigo": "1000",
"nome": "Camiseta Feminina Liga da Justiça",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 1,
"codigoClasse": 5,
"codigoSubclasse": 8,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 60,
"codigoFabricante": 0,
"urlDetalhe": "/produtos/grades/1000",
"urlEstoqueDetalhe": "/estoque/grade/1000",
"urlTabelaPreco": "/precos/1000",
"urlPromocoes": "/promocoes/produto/1000",
"urlFotos": "/fotos/1000",
"precos": [
{
"tabela": "TABELA 1",
"preco": 50,
"promocional": true
},
{
"tabela": "TABELA 2",
"preco": 0,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 0,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 14,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 14,
"promocional": false
}
]
},
{
"ordem": 15,
"codigo": "15",
"nome": "Corretivo Mary Kay Yellow, Bronze 1",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 2,
"codigoSubclasse": 9999,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 9,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/15",
"urlTabelaPreco": "/precos/15",
"urlPromocoes": "/promocoes/produto/15",
"urlFotos": "/fotos/15",
"precos": [
{
"tabela": "TABELA 1",
"preco": 2,
"promocional": false
},
{
"tabela": "TABELA 2",
"preco": 0,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 0,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 1,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 1,
"promocional": false
}
]
},
{
"ordem": 16,
"codigo": "16",
"nome": "Corretivo Mary Kay Yellow, Bronze 3",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 2,
"codigoSubclasse": 9999,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 7,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/16",
"urlTabelaPreco": "/precos/16",
"urlPromocoes": "/promocoes/produto/16",
"urlFotos": "/fotos/16",
"precos": [
{
"tabela": "TABELA 1",
"preco": 10,
"promocional": false
},
{
"tabela": "TABELA 2",
"preco": 0,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 0,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 5,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 5,
"promocional": false
}
]
},
{
"ordem": 18,
"codigo": "18",
"nome": "Cotonete",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 3,
"codigoSubclasse": 9999,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 0,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/18",
"urlTabelaPreco": "/precos/18",
"urlPromocoes": "/promocoes/produto/18",
"urlFotos": "/fotos/18",
"precos": [
{
"tabela": "TABELA 1",
"preco": 1.6,
"promocional": false
},
{
"tabela": "TABELA 2",
"preco": 0,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 0,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 0.8,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 0.8,
"promocional": false
}
]
},
{
"ordem": 19,
"codigo": "19",
"nome": "Curvex Galenco",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 9999,
"codigoSubclasse": 9999,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 200,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/19",
"urlTabelaPreco": "/precos/19",
"urlPromocoes": "/promocoes/produto/19",
"urlFotos": "/fotos/19",
"precos": [
{
"tabela": "TABELA 1",
"preco": 8,
"promocional": false
},
{
"tabela": "TABELA 2",
"preco": 0,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 0,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 4,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 4,
"promocional": false
}
]
},
{
"ordem": 14,
"codigo": "14",
"nome": "Esponja pra pó Maryllou",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 2,
"codigoSubclasse": 9999,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 90,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/14",
"urlTabelaPreco": "/precos/14",
"urlPromocoes": "/promocoes/produto/14",
"urlFotos": "/fotos/14",
"precos": [
{
"tabela": "TABELA 1",
"preco": 6,
"promocional": false
},
{
"tabela": "TABELA 2",
"preco": 0,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 0,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 0.3,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 0.3,
"promocional": false
}
]
},
{
"ordem": 2,
"codigo": "2",
"nome": "Kit Chaves 18pc.",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 1,
"codigoSubclasse": 2,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 45,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/2",
"urlTabelaPreco": "/precos/2",
"urlPromocoes": "/promocoes/produto/2",
"urlFotos": "/fotos/2",
"precos": [
{
"tabela": "TABELA 1",
"preco": 138,
"promocional": false
},
{
"tabela": "TABELA 2",
"preco": 130,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 120,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 69,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 69,
"promocional": false
}
]
},
{
"ordem": 7,
"codigo": "7",
"nome": "Lápis para olhos preto Alice Salazar",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 2,
"codigoSubclasse": 5,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 90,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/7",
"urlTabelaPreco": "/precos/7",
"urlPromocoes": "/promocoes/produto/7",
"urlFotos": "/fotos/7",
"precos": [
{
"tabela": "TABELA 1",
"preco": 2,
"promocional": false
},
{
"tabela": "TABELA 2",
"preco": 0,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 0,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 1,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 1,
"promocional": false
}
]
},
{
"ordem": 22,
"codigo": "22",
"nome": "Lichia Granel",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 4,
"codigoSubclasse": 9999,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 2,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 17.842,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/22",
"urlTabelaPreco": "/precos/22",
"urlPromocoes": "/promocoes/produto/22",
"urlFotos": "/fotos/22",
"precos": [
{
"tabela": "TABELA 1",
"preco": 7.998,
"promocional": false
},
{
"tabela": "TABELA 2",
"preco": 0,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 0,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 2.17,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 2.17,
"promocional": false
}
]
},
{
"ordem": 23,
"codigo": "A01",
"nome": "Molde para Maquiagem - vários desenhos",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 9999,
"codigoSubclasse": 9999,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 0,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/A01",
"urlTabelaPreco": "/precos/A01",
"urlPromocoes": "/promocoes/produto/A01",
"urlFotos": "/fotos/A01",
"precos": [
{
"tabela": "TABELA 1",
"preco": 40,
"promocional": false
},
{
"tabela": "TABELA 2",
"preco": 0,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 0,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 8.77,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 0,
"promocional": false
}
]
},
{
"ordem": 8,
"codigo": "8",
"nome": "Paleta de sombra colorida Jasmyne",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 2,
"codigoSubclasse": 2,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 9,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/8",
"urlTabelaPreco": "/precos/8",
"urlPromocoes": "/promocoes/produto/8",
"urlFotos": "/fotos/8",
"precos": [
{
"tabela": "TABELA 1",
"preco": 6,
"promocional": false
},
{
"tabela": "TABELA 2",
"preco": 0,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 0,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 3,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 3,
"promocional": false
}
]
},
{
"ordem": 1,
"codigo": "1",
"nome": "Parafusadeira Bisuph",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 1,
"codigoSubclasse": 1,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 25,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/1",
"urlTabelaPreco": "/precos/1",
"urlPromocoes": "/promocoes/produto/1",
"urlFotos": "/fotos/1",
"precos": [
{
"tabela": "TABELA 1",
"preco": 576.34,
"promocional": false
},
{
"tabela": "TABELA 2",
"preco": 539,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 500,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 288.17,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 288.17,
"promocional": false
}
]
},
{
"ordem": 10,
"codigo": "10",
"nome": "Pinceis de esponjinha",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 2,
"codigoSubclasse": 2,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 0,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/10",
"urlTabelaPreco": "/precos/10",
"urlPromocoes": "/promocoes/produto/10",
"urlFotos": "/fotos/10",
"precos": [
{
"tabela": "TABELA 1",
"preco": 2,
"promocional": false
},
{
"tabela": "TABELA 2",
"preco": 0,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 0,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 1,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 1,
"promocional": false
}
]
},
{
"ordem": 11,
"codigo": "11",
"nome": "Pincel Kabuk Macrilan",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 2,
"codigoSubclasse": 2,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 15,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/11",
"urlTabelaPreco": "/precos/11",
"urlPromocoes": "/promocoes/produto/11",
"urlFotos": "/fotos/11",
"precos": [
{
"tabela": "TABELA 1",
"preco": 4,
"promocional": false
},
{
"tabela": "TABELA 2",
"preco": 0,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 0,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 2,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 2,
"promocional": false
}
]
},
{
"ordem": 13,
"codigo": "13",
"nome": "Pincel para cantinho Macrilan",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 2,
"codigoSubclasse": 2,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 1,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/13",
"urlTabelaPreco": "/precos/13",
"urlPromocoes": "/promocoes/produto/13",
"urlFotos": "/fotos/13",
"precos": [
{
"tabela": "TABELA 1",
"preco": 3.4,
"promocional": false
},
{
"tabela": "TABELA 2",
"preco": 0,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 0,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 1.7,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 1.7,
"promocional": false
}
]
},
{
"ordem": 12,
"codigo": "12",
"nome": "Pincel tipo lápis Macrilan",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 2,
"codigoSubclasse": 2,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 0,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/12",
"urlTabelaPreco": "/precos/12",
"urlPromocoes": "/promocoes/produto/12",
"urlFotos": "/fotos/12",
"precos": [
{
"tabela": "TABELA 1",
"preco": 2,
"promocional": false
},
{
"tabela": "TABELA 2",
"preco": 0,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 0,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 1,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 1,
"promocional": false
}
]
},
{
"ordem": 17,
"codigo": "17",
"nome": "Pó bronzeador Vult cor 3",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 2,
"codigoSubclasse": 9999,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 9,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/17",
"urlTabelaPreco": "/precos/17",
"urlPromocoes": "/promocoes/produto/17",
"urlFotos": "/fotos/17",
"precos": [
{
"tabela": "TABELA 1",
"preco": 8,
"promocional": false
},
{
"tabela": "TABELA 2",
"preco": 0,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 0,
"promocional": false
},
{
"tabela": "CUSTO",
"preco": 4,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 4,
"promocional": false
}
]
}
]
}
Foram retornados 20 registros de produtos, cada um com a sua lista de preços por tabela de preço cadastrada no Shop 9. Caso seja feita uma requisição para uma página que não há produtos, o serviço retornará uma resposta onde o campo sucesso será falso, com o tipo do erro FIM_DE_PAGINA:
Requisição
GET /produtos/9999 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4ODY3MzAwOTEyNTE1OA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:8YUzqB78ff6TmhgYBabl44/RfDKelZxyTELlbtyD3wg= Signature: UewdViwVPdylHv55EAC6FLTpdzfwoPeJTzgVUHtb9l0= Timestamp: 1553274624 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
{
"sucesso": false,
"mensagem": "Não há registros disponíveis na página requisitada.",
"tipo": "FIM_DE_PAGINA",
"complementoTipo": "",
"statusCode": 417,
"dados": null
}
Consultando detalhes de um produto específico
Para pegar detalhes de um produto específico é só passar o código do produto retornado na consulta de produtos:
Requisição
GET /produtos/detalhes/1 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4ODY3MzAwOTEyNTE1OA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:8YUzqB78ff6TmhgYBabl44/RfDKelZxyTELlbtyD3wg= Signature: F3UDxP4q8ELZdY3lcJl54BSmWxgAzw6BsV8xYTNvDb0= Timestamp: 1553277154 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Fri, 22 Mar 2019 17:52:35 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": {
"ordem": 1,
"codigo": "1",
"nome": "Parafusadeira Bisuph",
"observacao1": "",
"observacao2": "",
"observacao3": "",
"tipo": 0,
"codigoClasse": 1,
"codigoSubclasse": 1,
"codigoCor": null,
"codigoTamanho": null,
"codigoGrupo": 0,
"codigoMoeda": 1,
"codigoFamilia": 0,
"codigoUnidadeVenda": 1,
"codigoPesquisa1": 0,
"codigoPesquisa2": 0,
"codigoPesquisa3": 0,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": null,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/1",
"urlTabelaPreco": "/precos/1",
"urlPromocoes": "/promocoes/produto/1",
"urlFotos": "/fotos/1",
"precos": null
}
}
Consultando um produto do tipo grade
Requisição
GET /produtos/grades/1000 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg5MTEwNzc1NzQ3MTgwNA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:uZUkE9AJYS2/t8ZsspRcLgcWRN+ffwDPA0Rm+nF70Xo= Signature: xgyRYzwhc1LycF2/bt69mLlqLmmtw+R8C4fU++G+KME= Timestamp: 1553517734 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Mon, 25 Mar 2019 12:42:15 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": {
"codigoProduto": "1000",
"lista": [
{
"codigoCompleto": "1000001002",
"nomeCompleto": "Camiseta Feminina Liga da Justiça P PRETO",
"codigoTamanho": "1",
"nomeTamanho": "P",
"codigoCor": "2",
"nomeCor": "PRETO",
"codigoAdicional1": "",
"codigoAdicional2": "",
"codigoAdicional3": "",
"codigoAdicional4": "",
"codigoAdicional5": "",
"codigoAdicional6": "",
"bloqueadoVenda": false
},
{
"codigoCompleto": "1000001001",
"nomeCompleto": "Camiseta Feminina Liga da Justiça P AZUL",
"codigoTamanho": "1",
"nomeTamanho": "P",
"codigoCor": "1",
"nomeCor": "AZUL",
"codigoAdicional1": "",
"codigoAdicional2": "",
"codigoAdicional3": "",
"codigoAdicional4": "",
"codigoAdicional5": "",
"codigoAdicional6": "",
"bloqueadoVenda": false
},
{
"codigoCompleto": "1000001003",
"nomeCompleto": "Camiseta Feminina Liga da Justiça P VERMELHO",
"codigoTamanho": "1",
"nomeTamanho": "P",
"codigoCor": "3",
"nomeCor": "VERMELHO",
"codigoAdicional1": "",
"codigoAdicional2": "",
"codigoAdicional3": "",
"codigoAdicional4": "",
"codigoAdicional5": "",
"codigoAdicional6": "",
"bloqueadoVenda": false
},
{
"codigoCompleto": "1000002001",
"nomeCompleto": "Camiseta Feminina Liga da Justiça M AZUL",
"codigoTamanho": "2",
"nomeTamanho": "M",
"codigoCor": "1",
"nomeCor": "AZUL",
"codigoAdicional1": "",
"codigoAdicional2": "",
"codigoAdicional3": "",
"codigoAdicional4": "",
"codigoAdicional5": "",
"codigoAdicional6": "",
"bloqueadoVenda": false
},
{
"codigoCompleto": "1000002002",
"nomeCompleto": "Camiseta Feminina Liga da Justiça M PRETO",
"codigoTamanho": "2",
"nomeTamanho": "M",
"codigoCor": "2",
"nomeCor": "PRETO",
"codigoAdicional1": "",
"codigoAdicional2": "",
"codigoAdicional3": "",
"codigoAdicional4": "",
"codigoAdicional5": "",
"codigoAdicional6": "",
"bloqueadoVenda": false
},
{
"codigoCompleto": "1000002003",
"nomeCompleto": "Camiseta Feminina Liga da Justiça M VERMELHO",
"codigoTamanho": "2",
"nomeTamanho": "M",
"codigoCor": "3",
"nomeCor": "VERMELHO",
"codigoAdicional1": "",
"codigoAdicional2": "",
"codigoAdicional3": "",
"codigoAdicional4": "",
"codigoAdicional5": "",
"codigoAdicional6": "",
"bloqueadoVenda": false
},
{
"codigoCompleto": "1000003001",
"nomeCompleto": "Camiseta Feminina Liga da Justiça G AZUL",
"codigoTamanho": "3",
"nomeTamanho": "G",
"codigoCor": "1",
"nomeCor": "AZUL",
"codigoAdicional1": "",
"codigoAdicional2": "",
"codigoAdicional3": "",
"codigoAdicional4": "",
"codigoAdicional5": "",
"codigoAdicional6": "",
"bloqueadoVenda": false
},
{
"codigoCompleto": "1000003002",
"nomeCompleto": "Camiseta Feminina Liga da Justiça G PRETO",
"codigoTamanho": "3",
"nomeTamanho": "G",
"codigoCor": "2",
"nomeCor": "PRETO",
"codigoAdicional1": "",
"codigoAdicional2": "",
"codigoAdicional3": "",
"codigoAdicional4": "",
"codigoAdicional5": "",
"codigoAdicional6": "",
"bloqueadoVenda": false
},
{
"codigoCompleto": "1000003003",
"nomeCompleto": "Camiseta Feminina Liga da Justiça G VERMELHO",
"codigoTamanho": "3",
"nomeTamanho": "G",
"codigoCor": "3",
"nomeCor": "VERMELHO",
"codigoAdicional1": "",
"codigoAdicional2": "",
"codigoAdicional3": "",
"codigoAdicional4": "",
"codigoAdicional5": "",
"codigoAdicional6": "",
"bloqueadoVenda": false
},
{
"codigoCompleto": "1000004001",
"nomeCompleto": "Camiseta Feminina Liga da Justiça GG AZUL",
"codigoTamanho": "4",
"nomeTamanho": "GG",
"codigoCor": "1",
"nomeCor": "AZUL",
"codigoAdicional1": "",
"codigoAdicional2": "",
"codigoAdicional3": "",
"codigoAdicional4": "",
"codigoAdicional5": "",
"codigoAdicional6": "",
"bloqueadoVenda": false
},
{
"codigoCompleto": "1000004002",
"nomeCompleto": "Camiseta Feminina Liga da Justiça GG PRETO",
"codigoTamanho": "4",
"nomeTamanho": "GG",
"codigoCor": "2",
"nomeCor": "PRETO",
"codigoAdicional1": "",
"codigoAdicional2": "",
"codigoAdicional3": "",
"codigoAdicional4": "",
"codigoAdicional5": "",
"codigoAdicional6": "",
"bloqueadoVenda": false
},
{
"codigoCompleto": "1000004003",
"nomeCompleto": "Camiseta Feminina Liga da Justiça GG VERMELHO",
"codigoTamanho": "4",
"nomeTamanho": "GG",
"codigoCor": "3",
"nomeCor": "VERMELHO",
"codigoAdicional1": "",
"codigoAdicional2": "",
"codigoAdicional3": "",
"codigoAdicional4": "",
"codigoAdicional5": "",
"codigoAdicional6": "",
"bloqueadoVenda": false
}
]
}
}
Listando as fotos de um produto
Requisição
GET /fotos/1 AuthKey: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4ODY3MzAwOTEyNTE1OA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:8YUzqB78ff6TmhgYBabl44/RfDKelZxyTELlbtyD3wg= Signature: igxXPLxyKLX51pS1ztoFdw1zANWjkErhfKcel94laVI= Timestamp: 1553283636 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Fri, 22 Mar 2019 19:40:36 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": {
"codigo": "1",
"fotos": [
{
"posicao": 0,
"principal": false
}
]
}
}
Requisição
GET /fotos/1/0 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4ODY3MzAwOTEyNTE1OA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:8YUzqB78ff6TmhgYBabl44/RfDKelZxyTELlbtyD3wg= Signature: RycIS3L5oC5U6RVpLUKmhu6oZp2Yh8M0j2ptq7wnZz8= Timestamp: 1553283762 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: image/jpeg Server: Microsoft-HTTPAPI/2.0 Date: Fri, 22 Mar 2019 19:42:42 GMT |
Verificando o preço de um produto
Requisição
GET /precos/1 AuthKey: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4ODY3MzAwOTEyNTE1OA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:8YUzqB78ff6TmhgYBabl44/RfDKelZxyTELlbtyD3wg= Signature: iIn9AnvR4RnhjGo+GmZH6wPXd+ke+OJSS8bd4LitYaM= Timestamp: 1553283958 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Fri, 22 Mar 2019 19:45:58 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": {
"codigo": "1",
"precos": [
{
"tabela": "CUSTO",
"preco": 288.17,
"promocional": false
},
{
"tabela": "CUSTO MÉDIO",
"preco": 288.17,
"promocional": false
},
{
"tabela": "TABELA 1",
"preco": 576.34,
"promocional": false
},
{
"tabela": "TABELA 2",
"preco": 539,
"promocional": false
},
{
"tabela": "TABELA 3",
"preco": 500,
"promocional": false
}
]
}
}
Verificando preços alterados em um período
Requisição
GET /precos/?datade=2019-03-24&dataate=2019-03-26 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg5MTEwNzc1NzQ3MTgwNA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:uZUkE9AJYS2/t8ZsspRcLgcWRN+ffwDPA0Rm+nF70Xo= Signature: zervdHQ+lsdGYxRoJF7n/MnU48zBiuIZOPKrpu1KBVM= Timestamp: 1553517628 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Mon, 25 Mar 2019 12:40:30 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": [
{
"codigo": "15",
"precos": [
{
"tabela": "CUSTO",
"preco": 1.2,
"promocional": false
},
{
"tabela": "TABELA 1",
"preco": 2.35,
"promocional": false
}
]
},
{
"codigo": "19",
"precos": [
{
"tabela": "CUSTO",
"preco": 4.4,
"promocional": false
},
{
"tabela": "TABELA 1",
"preco": 9,
"promocional": false
}
]
}
]
}
Listando as promoções ativas
Requisição
GET /promocoes/1 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg5MTEwNzc1NzQ3MTgwNA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:uZUkE9AJYS2/t8ZsspRcLgcWRN+ffwDPA0Rm+nF70Xo= Signature: tdzl/nR/t7vYzZ67y3Kz1vxT8eXzHiTQQdotjCpW/tY= Timestamp: 1553515818 cache-control: no-cache Postman-Token: 467e3e90-1775-4a2d-957a-938af3a4dc43 User-Agent: PostmanRuntime/7.6.1 Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Mon, 25 Mar 2019 12:10:18 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": [
{
"codigoProduto": "3",
"tabelaPreco": "TABELA 1",
"dataInicio": "2019-02-20T00:00:00.0000000-03:00",
"dataFim": "2021-11-15T00:00:00.0000000-02:00",
"preco": 20
},
{
"codigoProduto": "1000",
"tabelaPreco": "TABELA 1",
"dataInicio": "2019-02-20T00:00:00.0000000-03:00",
"dataFim": "2020-02-20T00:00:00.0000000-03:00",
"preco": 50
}
]
}
Listando as promoções ativas em um período
Requisição
GET /promocoes/1?dataAte=2019-10-28&dataDe=2018-10-01 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg5MTEwNzc1NzQ3MTgwNA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:uZUkE9AJYS2/t8ZsspRcLgcWRN+ffwDPA0Rm+nF70Xo= Signature: qv0BB6DkcPWRyINufidBi5CFWm7QvCeOLMBBZLHRRqo= Timestamp: 1553516132 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Mon, 25 Mar 2019 12:15:32 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": [
{
"codigoProduto": "3",
"tabelaPreco": "TABELA 1",
"dataInicio": "2019-02-20T00:00:00.0000000-03:00",
"dataFim": "2021-11-15T00:00:00.0000000-02:00",
"preco": 20
},
{
"codigoProduto": "1000",
"tabelaPreco": "TABELA 1",
"dataInicio": "2019-02-20T00:00:00.0000000-03:00",
"dataFim": "2020-02-20T00:00:00.0000000-03:00",
"preco": 50
}
]
}
Listando as promoções de um produto específico
Requisição
GET /promocoes/1?dataAte=2019-10-28&dataDe=2018-10-01 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg5MTEwNzc1NzQ3MTgwNA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:uZUkE9AJYS2/t8ZsspRcLgcWRN+ffwDPA0Rm+nF70Xo= Signature: Yly9vGNM5qLINQ0a4+DfGyYtojvohIRcZozx1vkq160= Timestamp: 1553516282 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Mon, 25 Mar 2019 12:18:02 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": [
{
"codigoProduto": "3",
"tabelaPreco": "TABELA 1",
"dataInicio": "2019-02-20T00:00:00.0000000-03:00",
"dataFim": "2021-11-15T00:00:00.0000000-02:00",
"preco": 20
},
{
"codigoProduto": "1000",
"tabelaPreco": "TABELA 1",
"dataInicio": "2019-02-20T00:00:00.0000000-03:00",
"dataFim": "2020-02-20T00:00:00.0000000-03:00",
"preco": 50
}
]
}
Utilizando as Url de retorno para buscar informações detalhadas
Para cada registro de produto, existem campos auxiliares com parte da URL para agilizar o acesso aos demais serviços que dependem do produto. Um exemplo é o campo “urlEstoqueDetalhe” que retorna a URL para verificar o estoque do produto em questão:
[...]
"codigoPesquisa1": null,
"codigoPesquisa2": null,
"codigoPesquisa3": null,
"pesoLiquido": 0,
"pesoBruto": 0,
"estoqueAtual": 100,
"codigoFabricante": 0,
"urlDetalhe": "",
"urlEstoqueDetalhe": "/estoque/3",
"urlTabelaPreco": "/precos/3",
"urlPromocoes": "/promocoes/produto/3",
"urlFotos": "/fotos/3",
[...]
Verificando o estoque do produto 1
Requisição
GET /estoque/1 AuthKey: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4ODY3MzAwOTEyNTE1OA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:8YUzqB78ff6TmhgYBabl44/RfDKelZxyTELlbtyD3wg= Signature: sWX13yH54zAn0BGW7HNLne9fKA1yINB/FygYSTzMmHQ= Timestamp: 1553282051 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Fri, 22 Mar 2019 19:14:11 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": {
"codigo": "1",
"urlDetalhe": "",
"tipoEstoque": "N",
"estoqueFiliais": [
{
"codigoFilial": 1,
"estoqueAtual": 25
},
{
"codigoFilial": 6,
"estoqueAtual": 1000
}
]
}
}
Verificando o estoque do produto 1000 (grade)
Requisição
GET /estoque/1000/grade/ AuthKey: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg4ODY3MzAwOTEyNTE1OA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:8YUzqB78ff6TmhgYBabl44/RfDKelZxyTELlbtyD3wg= Signature: Gh8CUcmjWKm6jtV/UyT8Da7zW7uP09MSxiPJW4Y+YWw= Timestamp: 1553282420 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Fri, 22 Mar 2019 19:20:20 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": {
"codigo": "1000",
"lista": [
{
"codigoCompleto": "001001",
"codigoCor": "1",
"codigoTamanho": "1",
"estoqueAtual": 5,
"codigoFilial": 1
},
{
"codigoCompleto": "001002",
"codigoCor": "2",
"codigoTamanho": "1",
"estoqueAtual": 5,
"codigoFilial": 1
},
{
"codigoCompleto": "001003",
"codigoCor": "3",
"codigoTamanho": "1",
"estoqueAtual": 5,
"codigoFilial": 1
},
{
"codigoCompleto": "002001",
"codigoCor": "1",
"codigoTamanho": "2",
"estoqueAtual": 5,
"codigoFilial": 1
},
{
"codigoCompleto": "002002",
"codigoCor": "2",
"codigoTamanho": "2",
"estoqueAtual": 5,
"codigoFilial": 1
},
{
"codigoCompleto": "002003",
"codigoCor": "3",
"codigoTamanho": "2",
"estoqueAtual": 5,
"codigoFilial": 1
},
{
"codigoCompleto": "003001",
"codigoCor": "1",
"codigoTamanho": "3",
"estoqueAtual": 5,
"codigoFilial": 1
},
{
"codigoCompleto": "003002",
"codigoCor": "2",
"codigoTamanho": "3",
"estoqueAtual": 5,
"codigoFilial": 1
},
{
"codigoCompleto": "003003",
"codigoCor": "3",
"codigoTamanho": "3",
"estoqueAtual": 5,
"codigoFilial": 1
},
{
"codigoCompleto": "004001",
"codigoCor": "1",
"codigoTamanho": "4",
"estoqueAtual": 5,
"codigoFilial": 1
},
{
"codigoCompleto": "004002",
"codigoCor": "2",
"codigoTamanho": "4",
"estoqueAtual": 5,
"codigoFilial": 1
},
{
"codigoCompleto": "004003",
"codigoCor": "3",
"codigoTamanho": "4",
"estoqueAtual": 5,
"codigoFilial": 1
},
{
"codigoCompleto": "001001",
"codigoCor": "1",
"codigoTamanho": "1",
"estoqueAtual": 1000,
"codigoFilial": 6
},
{
"codigoCompleto": "001003",
"codigoCor": "3",
"codigoTamanho": "1",
"estoqueAtual": 1000,
"codigoFilial": 6
},
{
"codigoCompleto": "002001",
"codigoCor": "1",
"codigoTamanho": "2",
"estoqueAtual": 1000,
"codigoFilial": 6
},
{
"codigoCompleto": "002002",
"codigoCor": "2",
"codigoTamanho": "2",
"estoqueAtual": 1000,
"codigoFilial": 6
},
{
"codigoCompleto": "002003",
"codigoCor": "3",
"codigoTamanho": "2",
"estoqueAtual": 1000,
"codigoFilial": 6
},
{
"codigoCompleto": "003001",
"codigoCor": "1",
"codigoTamanho": "3",
"estoqueAtual": 2000,
"codigoFilial": 6
},
{
"codigoCompleto": "003002",
"codigoCor": "2",
"codigoTamanho": "3",
"estoqueAtual": 1000,
"codigoFilial": 6
},
{
"codigoCompleto": "003003",
"codigoCor": "3",
"codigoTamanho": "3",
"estoqueAtual": 1000,
"codigoFilial": 6
},
{
"codigoCompleto": "004001",
"codigoCor": "1",
"codigoTamanho": "4",
"estoqueAtual": 1000,
"codigoFilial": 6
},
{
"codigoCompleto": "004002",
"codigoCor": "2",
"codigoTamanho": "4",
"estoqueAtual": 1000,
"codigoFilial": 6
},
{
"codigoCompleto": "004003",
"codigoCor": "3",
"codigoTamanho": "4",
"estoqueAtual": 1000,
"codigoFilial": 6
}
]
}
}
Preparando os dados para uma venda
Enviando uma venda incorreta
Requisição
POST /vendas/ Content-Type: application/json CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg5MTEwNzc1NzQ3MTgwNA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:uZUkE9AJYS2/t8ZsspRcLgcWRN+ffwDPA0Rm+nF70Xo= Signature: hXGvqy4sXpO0zeQGftERQsmEj9WszKBcTK6YXDLPap8= Timestamp: 1553514109 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate content-length: 1024 |
{
"CpfCnpj": "16025717087",
"CodigoOperacao": "500",
"CodigoCaixa": "1",
"Data": "2019-02-19T00:00:00-03:00",
"Produtos": [
{
"Codigo": "1",
"CodigoCor": null,
"CodigoTamanho": null,
"Quantidade": 1.0000,
"PrecoUnitario": 576.34,
"DescontoUnitario": 100.00
}
],
"Recebimentos": [
{
"ValorParcelas": 476.34,
"CodigoAdministradora": 1,
"Vencimento": null,
"Nsu": "995544",
"QuantidadeParcelas": 1,
"NumeroCartao": "2344",
"Tipo": "C"
}
],
"DadosEntrega": {
"Valor": 10.00,
"OpcoesFretePagoPor": "O",
"PesoBruto": 0.0,
"PesoLiquido": 0.0,
"Volume": 0.0,
"DataEntrega": null,
"CnpjTransportadora": "24165926000103",
"NaoSomarFreteTotalNota": true,
"OutroEndereco": {
"Cep": "82600380",
"Endereco": "RUa nunia",
"Numero": "dfjs 11",
"Complemento": null,
"Bairro": "Teste",
"Cidade": "Curitiba",
"Uf": "PR"
}
}
}
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Mon, 25 Mar 2019 11:41:50 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": {
"recibo": "49baf82b-8985-4be0-84e8-03a8d9130211",
"dataGeracao": "2019-03-25T08:41:50.3680548-03:00"
}
}
Consultando o recibo da venda incorreta
Requisição
GET /vendas/49baf82b-8985-4be0-84e8-03a8d9130211 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg5MTEwNzc1NzQ3MTgwNA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:uZUkE9AJYS2/t8ZsspRcLgcWRN+ffwDPA0Rm+nF70Xo= Signature: HBQZb9YFpggBkXgbcH7VYREMfaO+8kg7JRdBJ/yYLSA= Timestamp: 1553515058 cache-control: no-cache Postman-Token: 4ef5458f-18ea-4600-adfb-ce8eb3c17eeb User-Agent: PostmanRuntime/7.6.1 Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Mon, 25 Mar 2019 11:57:38 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": {
"recibo": "49baf82b-8985-4be0-84e8-03a8d9130211",
"pedidoProcessado": false,
"erros": "A transportadora com o CPF/CNPJ 24165926000103 não está cadastrada no Shop Control 9.",
"notaFiscal": null
}
}
Enviando uma venda correta
Requisição
POST /vendas/ Content-Type: application/json CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg5MTEwNzc1NzQ3MTgwNA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:uZUkE9AJYS2/t8ZsspRcLgcWRN+ffwDPA0Rm+nF70Xo= Signature: JD4ONSAx/bwwGR0TBtZHHHcz46gHVz8dcVKTjeUOr7U= Timestamp: 1553515586 cache-control: no-cache Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate content-length: 1019 |
{
"CpfCnpj": "16025717087",
"CodigoOperacao": "500",
"Data": "2019-02-19T00:00:00-03:00",
"Produtos": [
{
"Codigo": "1",
"CodigoCor": null,
"CodigoTamanho": null,
"Quantidade": 1.0000,
"PrecoUnitario": 576.34,
"DescontoUnitario": 100.00
}
],
"Recebimentos": [
{
"ValorParcelas": 476.34,
"CodigoAdministradora": 1,
"Vencimento": null,
"Nsu": "995544",
"QuantidadeParcelas": 1,
"NumeroCartao": "2344",
"Tipo": "C"
}
],
"DadosEntrega": {
"Valor": 10.00,
"OpcoesFretePagoPor": "O",
"PesoBruto": 0.0,
"PesoLiquido": 0.0,
"Volume": 0.0,
"DataEntrega": null,
"CnpjTransportadora": "32163565000186",
"NaoSomarFreteTotalNota": true,
"OutroEndereco": {
"Cep": "82600380",
"Endereco": "Rua Nunia",
"Numero": "11",
"Complemento": null,
"Bairro": "Teste",
"Cidade": "Curitiba",
"Uf": "PR"
}
}
}
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Mon, 25 Mar 2019 12:06:27 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": {
"recibo": "9d2e2138-9a9c-40ee-8dcb-390c4843d5a2",
"dataGeracao": "2019-03-25T09:06:26.9699921-03:00"
}
}
Consultando o recibo de uma venda correta
Requisição
GET /vendas/9d2e2138-9a9c-40ee-8dcb-390c4843d5a2 CodFilial: 1 Authorization: Token SElFQVBBLTYwMDc1OS1ST0NUMDAwMQ0KYWRtaW4NCjYzNjg5MTEwNzc1NzQ3MTgwNA0KUG9zdG1hblJ1bnRpbWUvNy42LjE=:uZUkE9AJYS2/t8ZsspRcLgcWRN+ffwDPA0Rm+nF70Xo= Signature: zkosSwd9JAaTotUIKJ9W/NIM541csGwG/odBuRgOrcA= Timestamp: 1553515594 cache-control: no-cache Postman-Token: ae856a65-df43-49db-b70f-a47e80e281ef User-Agent: PostmanRuntime/7.6.1 Accept: */* Host: idealsoftexportaweb.eastus.cloudapp.azure.com:60500 accept-encoding: gzip, deflate |
Resposta
HTTP/1.1 200 status: 200 Transfer-Encoding: chunked Content-Type: application/json; charset=utf-8 Server: Microsoft-HTTPAPI/2.0 Date: Mon, 25 Mar 2019 12:06:34 GMT |
{
"sucesso": true,
"mensagem": null,
"tipo": null,
"complementoTipo": null,
"statusCode": 200,
"dados": {
"recibo": "9d2e2138-9a9c-40ee-8dcb-390c4843d5a2",
"pedidoProcessado": true,
"erros": null,
"notaFiscal": null
}
}