Pular para o conteúdo

E-commerce (Loja Integrada, Nuvemshop e Mercado Livre)

Configuração e sincronização das lojas virtuais integradas: produtos, preços, estoque e pedidos. Exige a permissão de e-commerce e plano com acesso à API. Troque :provider por loja-integrada ou nuvemshop; o Mercado Livre tem rotas próprias (conexão por OAuth, feita pela tela do ERP).

Base: https://api.nivesistemas.com.br · 28 endpoints

Listar integrações e situação de cada uma

Janela do terminal
curl -X GET "https://api.nivesistemas.com.br/ecommerce" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Configuração da integração (credenciais nunca retornam, só hasAccessToken/hasApiKey)

Parâmetros de rota: provider

Janela do terminal
curl -X GET "https://api.nivesistemas.com.br/ecommerce/{provider}" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Salvar configuração

Parâmetros de rota: provider

Corpo (JSON)

Campo Tipo Obrigatório Descrição
accessToken string não Token de acesso da plataforma
apiKey string não Chave de API (Loja Integrada)
appKey string não Chave de aplicação (Loja Integrada)
storeId string não ID da loja (Nuvemshop)
syncProducts boolean não Enviar produtos
syncPrices boolean não Enviar preços
syncStock boolean não Enviar estoque
syncOrders boolean não Importar pedidos
priceListId uuid não Tabela de preço usada no canal
stockLocationId uuid não Filial do estoque publicado e dos pedidos (null = rede toda)
Janela do terminal
curl -X PUT "https://api.nivesistemas.com.br/ecommerce/{provider}" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo" \
-H "Content-Type: application/json" \
-d '{"accessToken":"","apiKey":"","appKey":"","storeId":"","syncProducts":true,"syncPrices":true,"syncStock":true,"syncOrders":true,"priceListId":"00000000-0000-0000-0000-000000000000","stockLocationId":"00000000-0000-0000-0000-000000000000"}'

Testar a conexão

Parâmetros de rota: provider

Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/ecommerce/{provider}/test" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Desconectar e apagar credenciais

Parâmetros de rota: provider

Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/ecommerce/{provider}/disconnect" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Enfileirar sincronização completa

Parâmetros de rota: provider

Resposta: 202 Accepted

Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/ecommerce/{provider}/sync" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Vincular produtos locais aos da loja virtual (por SKU)

Parâmetros de rota: provider

Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/ecommerce/{provider}/map-products" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Vínculos produto/pedido (últimos 100)

Parâmetros de rota: provider

Query params

Campo Tipo Obrigatório Descrição
errors boolean não Somente vínculos com erro (true)
Janela do terminal
curl -X GET "https://api.nivesistemas.com.br/ecommerce/{provider}/maps" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Fila de sincronização (últimos 50 jobs)

Parâmetros de rota: provider

Janela do terminal
curl -X GET "https://api.nivesistemas.com.br/ecommerce/{provider}/jobs" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Configuração e conta conectada do Mercado Livre

Janela do terminal
curl -X GET "https://api.nivesistemas.com.br/ecommerce/mercado-livre" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Salvar opções de sincronização

Corpo (JSON)

Campo Tipo Obrigatório Descrição
syncProducts boolean não Enviar produtos
syncPrices boolean não Enviar preços
syncStock boolean não Enviar estoque
syncOrders boolean não Importar pedidos
priceListId uuid não Tabela de preço do canal
stockLocationId uuid não Filial do estoque (null = rede toda)
Janela do terminal
curl -X PUT "https://api.nivesistemas.com.br/ecommerce/mercado-livre" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo" \
-H "Content-Type: application/json" \
-d '{"syncProducts":true,"syncPrices":true,"syncStock":true,"syncOrders":true,"priceListId":"00000000-0000-0000-0000-000000000000","stockLocationId":"00000000-0000-0000-0000-000000000000"}'

Gerar URL de autorização OAuth — retorna { url }

Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/ecommerce/mercado-livre/oauth/start" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Testar a conexão

Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/ecommerce/mercado-livre/test" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Desconectar a conta

Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/ecommerce/mercado-livre/disconnect" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Enfileirar sincronização completa

Resposta: 202 Accepted

Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/ecommerce/mercado-livre/sync" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Vincular anúncios da conta aos produtos locais (por SKU)

Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/ecommerce/mercado-livre/map-products" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Listar anúncios

Janela do terminal
curl -X GET "https://api.nivesistemas.com.br/ecommerce/mercado-livre/listings" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Criar anúncio (rascunho)

Corpo (JSON)

Campo Tipo Obrigatório Descrição
productId uuid sim Produto
variantId uuid não Variante
title string não Título do anúncio
categoryId string não Categoria ML (ex.: MLB1234)
listingTypeId string não gold_special ou gold_pro
condition string não new (padrão) ou used
attributesJson string não Atributos da categoria em JSON
Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/ecommerce/mercado-livre/listings" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo" \
-H "Content-Type: application/json" \
-d '{"productId":"00000000-0000-0000-0000-000000000000","variantId":"00000000-0000-0000-0000-000000000000","title":"","categoryId":"","listingTypeId":"","condition":"","attributesJson":""}'

Editar anúncio (título, categoria, tipo, condição, atributos)

Parâmetros de rota: id

Janela do terminal
curl -X PATCH "https://api.nivesistemas.com.br/ecommerce/mercado-livre/listings/{id}" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

POST /ecommerce/mercado-livre/listings/map-existing

Seção intitulada “POST /ecommerce/mercado-livre/listings/map-existing”

Vincular um anúncio já publicado a um produto

Corpo (JSON)

Campo Tipo Obrigatório Descrição
productId uuid sim Produto
variantId uuid não Variante
externalId string sim ID do anúncio (MLB…)
Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/ecommerce/mercado-livre/listings/map-existing" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo" \
-H "Content-Type: application/json" \
-d '{"productId":"00000000-0000-0000-0000-000000000000","variantId":"00000000-0000-0000-0000-000000000000","externalId":""}'

POST /ecommerce/mercado-livre/listings/:id/publish

Seção intitulada “POST /ecommerce/mercado-livre/listings/:id/publish”

Publicar anúncio

Parâmetros de rota: id

Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/ecommerce/mercado-livre/listings/{id}/publish" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

POST /ecommerce/mercado-livre/listings/publish-batch

Seção intitulada “POST /ecommerce/mercado-livre/listings/publish-batch”

Publicar vários anúncios

Corpo (JSON)

Campo Tipo Obrigatório Descrição
listingIds uuid[] sim Até 50 anúncios
confirm boolean sim Deve ser true
Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/ecommerce/mercado-livre/listings/publish-batch" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo" \
-H "Content-Type: application/json" \
-d '{"listingIds":null,"confirm":true}'

Pausar anúncio

Parâmetros de rota: id

Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/ecommerce/mercado-livre/listings/{id}/pause" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

POST /ecommerce/mercado-livre/listings/:id/activate

Seção intitulada “POST /ecommerce/mercado-livre/listings/:id/activate”

Reativar anúncio

Parâmetros de rota: id

Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/ecommerce/mercado-livre/listings/{id}/activate" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Sugerir categoria a partir do título

Corpo (JSON)

Campo Tipo Obrigatório Descrição
title string sim Título (3–120)
Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/ecommerce/mercado-livre/suggest-category" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo" \
-H "Content-Type: application/json" \
-d '{"title":""}'

GET /ecommerce/mercado-livre/categories/:categoryId/attributes

Seção intitulada “GET /ecommerce/mercado-livre/categories/:categoryId/attributes”

Atributos exigidos pela categoria

Parâmetros de rota: categoryId

Janela do terminal
curl -X GET "https://api.nivesistemas.com.br/ecommerce/mercado-livre/categories/{categoryId}/attributes" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Vínculos produto/pedido

Query params

Campo Tipo Obrigatório Descrição
errors boolean não Somente com erro (true)
Janela do terminal
curl -X GET "https://api.nivesistemas.com.br/ecommerce/mercado-livre/maps" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Fila de sincronização

Janela do terminal
curl -X GET "https://api.nivesistemas.com.br/ecommerce/mercado-livre/jobs" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"