Cadastro de produto por link (API)
Como deixar outro sistema — uma loja virtual, um ERP, uma automação ou o Postman — cadastrar produtos no ExlogWMS: gerar o link, enviar o produto em JSON e conferir o resultado. Com modelos prontos para copiar.
Como funciona
O caminho do produto
- A empresa gera um link para um seller. Todo produto enviado por esse link entra nesse seller, na unidade dele.
- O outro sistema envia um produto por chamada, com os dados em JSON.
- O ExlogWMS confere os dados e responde na mesma hora: cadastrou, ou recusou dizendo o motivo.
- O produto entra com estoque zero. A entrada de estoque continua sendo feita pelo recebimento.
O que o link faz e o que não faz
- Faz: cadastra produto novo, simples ou com variações.
- Não faz: não altera, não consulta e não apaga produto. Se o SKU ou o código já existir no seller, a chamada é recusada e nada muda.
Gerar o link
Abrir a seção Links de cadastro
No menu lateral, abra Configurações e clique em Empresa. Na lista de seções à esquerda, clique em Links de cadastro (fica depois de Integrações).
A seção lista os links já gerados, com o nome, o começo do código, o seller, a validade, o limite por dia, as chamadas de hoje, o último uso e a situação.
assets/img/api-cadastro-produto/secao-links.pngPreencher e gerar
- Clique em Gerar link.
- Em Nome do link, escreva algo que ajude a reconhecer depois (ex.: Loja virtual).
- Em Seller que recebe os produtos, escolha o seller. Seller que aparece como (sem unidade) não pode receber link: edite o seller e informe a unidade primeiro.
- Validade em dias é opcional. Em branco, o link não vence.
- Limite de chamadas por dia já vem com 500. Contam as chamadas aceitas e as recusadas.
- Clique em Gerar link.
assets/img/api-cadastro-produto/janela-gerar-link.pngCopiar o link na hora
Abre a janela Link gerado. Clique em Copiar link e guarde em local seguro antes de fechar.
assets/img/api-cadastro-produto/janela-link-gerado.pngEnviar o produto
A chamada
| Item | Valor |
|---|---|
| Método | POST |
| Endereço | O link completo, exatamente como foi copiado, com o ?link=... no fim. |
| Autenticação | Nenhuma. Não envie usuário, senha nem chave. |
| Cabeçalho | Content-Type: application/json |
| Corpo | Um produto, em JSON (modelos no passo 4). |
O link tem este formato (o código abaixo é só um exemplo):
https://n8n.srv1206270.hstgr.cloud/webhook/exlog-produto?link=0000000000000000000000000000000000000000000000000000000000000000
Campos do produto
| Campo | Tipo | Regra |
|---|---|---|
nome obrigatório | texto | Nome do produto, até 255 caracteres. |
sku obrigatório | texto | Até 255 caracteres. Não pode repetir no seller. |
codigo | número | Código do produto, até 18 dígitos. Sem ele, o sistema usa o EAN quando o EAN é só números. |
ean | texto | Código de barras, até 20 caracteres. |
descricao | texto | Até 2000 caracteres. |
fabricante | texto | Até 255 caracteres. |
ncm, cfop | texto | Até 10 caracteres cada. |
id_categoria | número | Número de uma categoria que já existe na empresa. |
volume | número | Com ponto decimal (ex.: 0.5). |
estoque_minimo | número inteiro | Estoque de segurança. |
preco_venda, preco_custo | número | Com ponto decimal e até 2 casas (ex.: 49.90). |
imagem_url | texto | Endereço da imagem. Precisa começar com https://; até 500 caracteres. |
usa_caixa | S ou N | S = o produto usa caixa (LPN) na separação. Sem o campo, vale N. |
variacoes | lista | Variações do produto (passo 3c). Sem a lista, o produto é simples. |
Campo que não está nesta tabela é ignorado.
Campos de cada variação
Use variacoes quando o mesmo produto tem versões (tamanho, cor, voltagem). O produto e as variações entram juntos: se uma variação for recusada, nada é gravado. São aceitas até 100 variações por produto.
| Campo | Tipo | Regra |
|---|---|---|
descricao obrigatório | texto | Nome da variação (ex.: P, Azul), até 100 caracteres. |
sku obrigatório | texto | Até 100 caracteres. Não repete na lista nem em outra variação do seller. |
ean | texto | Só números, até 18 dígitos. |
preco_venda | número | Com ponto decimal e até 2 casas. |
imagem_url | texto | Precisa começar com https://; até 100 caracteres. |
detalhe, observacao | texto | Até 100 caracteres cada. |
O estoque e o preço principal ficam no produto. Cada variação guarda a própria descrição, o SKU, o código de barras e, se informado, o preço.
Modelos de JSON
Copie o modelo mais próximo do seu caso e troque os valores. Em todos, os números vão com ponto e sem aspas.
Produto simples — só o obrigatório
Produto simples — todos os campos
Produto com variações
A terceira variação mostra os campos opcionais; as duas primeiras, só o necessário.
O que volta quando dá certo
Guarde o id_produto: é o número do produto no ExlogWMS.
O que volta quando é recusado
Toda recusa traz sucesso: false e uma mensagem. Quando o problema está nos dados, a lista erros diz o campo e o motivo. Em variação, o campo vem como variacoes[2].sku — o número é a posição na lista, começando em 1.
Respostas
O código HTTP diz o resultado. Só o 201 grava alguma coisa.
| Código | O que significa | O que fazer |
|---|---|---|
| 201 | Produto cadastrado. | Guarde o id_produto. |
| 400 | O corpo não é um JSON de produto, ou é grande demais. | Confira o JSON e envie um produto por chamada. |
| 401 | Link inválido. | Confira se o link foi copiado inteiro, com o ?link=. |
| 403 | Link desligado ou vencido, ou o seller do link foi inativado. | Peça um link novo à empresa. |
| 409 | Já existe produto com esse SKU ou código (ou variação com esse SKU). | Nada a fazer: o produto já está cadastrado. O link não altera produto. |
| 422 | Algum campo foi recusado. | Corrija os campos apontados em erros e envie de novo. |
| 429 | O link atingiu o limite de chamadas do dia. | Envie o restante no dia seguinte ou peça à empresa um limite maior. |
| 500, 502 | Falha inesperada. Nada foi gravado. | Repita a chamada. Se continuar, fale com o suporte. |
| 503 | O cadastro por link está desligado no ExlogWMS. | Fale com o suporte. |
Testar no Postman
Importar a requisição pronta
- Baixe o arquivo de descrição da API pelo botão abaixo.
- No Postman, clique em Import e escolha o arquivo baixado. O Postman cria a coleção com a requisição Cadastra um produto novo.
- Abra a requisição e, na aba Params, troque o valor de
linkpelo código do seu link (os 64 caracteres depois de?link=). - Na aba Body, ajuste os dados do produto e clique em Send.
Montar na mão
- Crie uma requisição e escolha o método POST.
- Cole o link completo no campo do endereço.
- Na aba Authorization, deixe em No Auth.
- Na aba Body, escolha raw e, na lista ao lado, JSON.
- Cole um dos modelos do passo 4 e clique em Send.
Referência interativa
A mesma descrição, em formato Swagger. Para testar daqui: clique em POST /exlog-produto, depois em Try it out, cole o código do seu link em link, escolha um exemplo e clique em Execute.
Carregando a referência interativa…
Acompanhar e desligar
Ver as chamadas de um link
Na seção Links de cadastro, clique em Chamadas na linha do link. A janela mostra as 50 chamadas mais recentes, com a data, o resultado (Cadastrado ou Recusado com o código), o SKU e a mensagem devolvida.
assets/img/api-cadastro-produto/janela-chamadas.pngDesligar ou ligar um link
Clique em Desligar na linha do link e confirme. A partir daí, quem usa esse link recebe a recusa 403 e não cadastra mais nada. Para voltar atrás, clique em Ligar.
Desligue sempre que o link tiver sido exposto, quando a integração for encerrada ou quando a pessoa que recebeu o link sair do projeto.
Situações do link
| Situação | O que significa |
|---|---|
| Ativo | Recebe chamadas normalmente. |
| Desligado | Foi desligado pela empresa. Não recebe chamadas até ser ligado de novo. |
| Vencido | Passou da validade. Gere um link novo. |
Dúvidas frequentes
Perdi o link. Dá para ver de novo?
Não. O ExlogWMS não guarda o link completo. Desligue o link perdido e gere outro; quem integra precisa trocar o endereço pelo novo.
Posso mandar vários produtos de uma vez?
Não. É um produto por chamada. Para cadastrar muitos, o outro sistema faz uma chamada para cada produto. Um produto pode levar até 100 variações na mesma chamada.
Como altero um produto que já foi cadastrado?
Pelo link não é possível: ele só cadastra produto novo. A alteração é feita na tela de cadastro de produto do ExlogWMS.
Recebi 409, mas quero cadastrar assim mesmo.
O 409 significa que já existe um produto com o mesmo SKU ou o mesmo código nesse seller (ou uma variação com o mesmo SKU). Confira o cadastro no ExlogWMS; se for outro produto, use um SKU diferente.
Mandei as variações e veio 201, mas o produto ficou sem variação.
Confira o nome do campo: precisa ser exatamente variacoes, sem acento e no plural, e o valor precisa ser uma lista entre colchetes. Campo com outro nome é ignorado. Quando as variações entram, a resposta 201 traz a lista variacoes com o número de cada uma.
Dá para cadastrar um kit pelo link?
Ainda não. O link cadastra produto simples e produto com variações. O kit e a composição dele são cadastrados na tela de cadastro de produto do ExlogWMS. Campos de kit enviados no JSON são ignorados e o produto entra como simples.
O preço foi recusado.
Use ponto como separador decimal e no máximo 2 casas: 49.90. Vírgula, símbolo de moeda e separador de milhar são recusados.
Preciso de um link para cada seller?
Sim. Cada link pertence a um seller, e é para ele que os produtos vão. Um mesmo seller pode ter mais de um link (por exemplo, um para cada sistema que integra).
O botão Gerar link está apagado.
O cadastro por link está desligado no ExlogWMS no momento, e a seção mostra um aviso. Fale com o suporte.