Pular para o conteúdo

Tintométrico (fábrica de tintas)

Cores, fórmulas por base e dosagem de corantes com baixa de estoque. Disponível apenas no segmento Fábrica de tintas.

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

Buscar base ou corante (produto/variante)

Query params

Campo Tipo Obrigatório Descrição
q string não Mínimo 2 caracteres
Janela do terminal
curl -X GET "https://api.nivesistemas.com.br/paint/variants" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Listar cores

Query params

Campo Tipo Obrigatório Descrição
q string não Código ou nome
active string não 1 | 0
page integer não Página
Janela do terminal
curl -X GET "https://api.nivesistemas.com.br/paint/colors" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Criar cor

Corpo (JSON)

Campo Tipo Obrigatório Descrição
code string sim Código único
name string sim Nome
hex string não #RRGGBB
Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/paint/colors" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo" \
-H "Content-Type: application/json" \
-d '{"code":"","name":"Exemplo","hex":""}'

Editar ou inativar cor

Parâmetros de rota: id

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

Excluir cor (409 se já houve dosagem)

Parâmetros de rota: id

Janela do terminal
curl -X DELETE "https://api.nivesistemas.com.br/paint/colors/{id}" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Fórmulas da cor

Parâmetros de rota: id

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

Criar fórmula para uma base

Parâmetros de rota: id

Corpo (JSON)

Campo Tipo Obrigatório Descrição
baseVariantId uuid sim Base
referenceLiters number sim Litros de base a que a fórmula se refere
items array sim [{ colorantVariantId, quantity }]
Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/paint/colors/{id}/formulas" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo" \
-H "Content-Type: application/json" \
-d '{"baseVariantId":"00000000-0000-0000-0000-000000000000","referenceLiters":0,"items":[]}'

Editar fórmula (items substituem os atuais)

Parâmetros de rota: id

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

Excluir fórmula

Parâmetros de rota: id

Janela do terminal
curl -X DELETE "https://api.nivesistemas.com.br/paint/formulas/{id}" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Copiar fórmula para outra base

Parâmetros de rota: id

Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/paint/formulas/{id}/duplicate" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Corantes escalados para a litragem, saldo e custo

Parâmetros de rota: id

Query params

Campo Tipo Obrigatório Descrição
liters number sim Litros
Janela do terminal
curl -X GET "https://api.nivesistemas.com.br/paint/formulas/{id}/preview" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"

Dosar: baixa os corantes e registra a dosagem

Corpo (JSON)

Campo Tipo Obrigatório Descrição
colorId uuid sim Cor
baseVariantId uuid sim Base
liters number sim Litros
saleId uuid não Venda relacionada
allowNegativeStock boolean não Permitir estoque negativo
consumeBaseQty number não Baixar também a base

Resposta: 201 Created

Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/paint/jobs" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo" \
-H "Content-Type: application/json" \
-d '{"colorId":"00000000-0000-0000-0000-000000000000","baseVariantId":"00000000-0000-0000-0000-000000000000","liters":0,"saleId":"00000000-0000-0000-0000-000000000000","allowNegativeStock":true,"consumeBaseQty":0}'

Histórico de dosagens

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

Detalhe da dosagem

Parâmetros de rota: id

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

Dados da etiqueta da lata

Parâmetros de rota: id

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

Importar cores e fórmulas (CSV)

Corpo (JSON)

Campo Tipo Obrigatório Descrição
csv string sim codigo;nome;hex;base_gtin;litros_ref;corante_gtin;quantidade
Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/paint/import" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo" \
-H "Content-Type: application/json" \
-d '{"csv":""}'

Comparar a mesma cor entre as bases: corante por litro de base e diferença percentual entre bases

Parâmetros de rota: id

Resposta: { color: { id, code, name, hex }, … } com uma linha por fórmula/base. 404 se a cor não existe.

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

Histórico de versões da fórmula (mais nova primeiro, até 200), com os corantes de cada versão

Parâmetros de rota: id

Resposta: { formulaId, currentVersion, versions: [{ version, reason, createdById, createdAt, referenceLiters, items: [{ colorantVariantId, quantity, description, label, unit }] }] }

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

Prévia da dosagem para cor + base (sem precisar do id da fórmula): corantes escalados, saldo e custo

Query params

Campo Tipo Obrigatório Descrição
colorId uuid sim Cor (informar junto com baseVariantId)
baseVariantId uuid sim Base (informar junto com colorId)
liters number não Litros (informe liters ou packages)
packages string não Embalagens “tamanho x quantidade” separadas por vírgula, ex.: 3.6x2,18x1

Resposta: 400 se faltar colorId/baseVariantId juntos ou a litragem/embalagens. Usa o ajuste de doses por mL da loja, quando configurado.

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

Cancelar dosagem: devolve corantes (e a base, se a dosagem a baixou) ao estoque, nos mesmos lotes consumidos

Parâmetros de rota: id

Corpo (JSON)

Campo Tipo Obrigatório Descrição
reason string sim Motivo (3 a 300 caracteres)

Resposta: A dosagem cancelada. Idempotente: repetir devolve o cancelamento original (com idempotent: true), sem novo movimento de estoque. 409 se a dosagem está ligada a uma venda (cancele ou estorne a venda).

Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/paint/jobs/{id}/cancel" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo" \
-H "Content-Type: application/json" \
-d '{"reason":""}'

Reimprimir a etiqueta da lata: devolve os dados da etiqueta e conta a reimpressão

Parâmetros de rota: id

Resposta: Dados da etiqueta, com labelPrintCount (nº da impressão). 409 se a dosagem foi cancelada; 404 se não existe.

Janela do terminal
curl -X POST "https://api.nivesistemas.com.br/paint/jobs/{id}/label/reprint" \
-H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \
-H "X-Store-Slug: loja-demo"