Para desenvolvedores

Documentação da API

A mesma base de dados usada na busca do site está disponível como API JSON, gratuita, para você consultar produtos por código de barras ou nome direto do seu sistema, ERP ou aplicativo.

Exemplos de código em:

URL base

https://global.si5.com.br/api

Autenticação (obrigatória)

Toda chamada à API precisa de um token pessoal - é assim que garantimos um limite de uso estável pra quem está integrando de verdade (seu ERP, PDV ou e-commerce). Crie uma conta gratuita com o Google e gere um token na sua página de conta — o limite é de 100 requisições por hora por token, suficiente pra uma consulta manual de produtos (bipar código, ver os dados, próximo). Envie o token no cabeçalho Authorization em toda requisição:

Authorization: Bearer SEU_TOKEN_AQUI

Buscar produtos

GET /api/produtos

Parâmetros de query:

Parâmetro Descrição
q Código de barras (prefixo) ou termo de busca no nome do produto.
per_page Itens por página (padrão 20, máximo 100).
page Número da página (padrão 1).

Exemplo de código:

<?php

$query = http_build_query([
    'q' => 'sabonete ype',
    'per_page' => 5,
]);

$ch = curl_init("https://global.si5.com.br/api/produtos?{$query}");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Authorization: Bearer SEU_TOKEN_AQUI',
]);

$resposta = curl_exec($ch);
$codigo = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

$dados = json_decode($resposta, true);

foreach ($dados['data'] as $produto) {
    echo $produto['produto'] . ' - ' . $produto['marca'] . PHP_EOL;
}

Exemplo de resposta:

{
  "data": [
    {
      "codbar": "7896098900475",
      "produto": "Sabonete Em Barra Flor De Ypê Laranjeira E Damasco Ypê 90g",
      "marca": "YPÊ",
      "categoria": "Higiene E Beleza",
      "ncm": "34011190",
      "cest_codigo": "2001700",
      "peso": "90.00",
      "embalagem": null,
      "quantidade_embalagem": 1,
      "preco_medio": null,
      "imagem_url": "https://global.si5.com.br/img/webp/7896098900475.webp",
      "codigo_barras_url": null
    }
  ],
  "meta": { "current_page": 1, "last_page": 214, "total": 26 }
}

Consultar um produto pelo código de barras

GET /api/produtos/{'{codbar}'}

Exemplo de código:

<?php

$codbar = '7891000100103';

$ch = curl_init("https://global.si5.com.br/api/produtos/{$codbar}");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Authorization: Bearer SEU_TOKEN_AQUI',
]);

$resposta = curl_exec($ch);
$codigo = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

if ($codigo === 404) {
    echo "Produto nao encontrado";
} else {
    $produto = json_decode($resposta, true);
    echo $produto['produto'] . ' - NCM ' . $produto['ncm'];
}

Campos adicionais nesta resposta:

ncm_descricaoDescrição oficial do NCM.
cest_segmentoSegmento oficial do CEST.
ingredientesLista de ingredientes, quando disponível.
alergenosAlérgenos declarados, quando disponível.
pode_conterAlerta de contaminação cruzada, quando disponível.
nutrientesTabela nutricional em JSON, quando disponível.

Erros

A API responde em JSON também nos erros, seguindo o padrão HTTP:

401Token ausente, inválido ou revogado.
404Código de barras não encontrado no catálogo.
422Parâmetros inválidos.
429Limite de requisições excedido (100/hora por token).

Precisa de mais volume ou de um endpoint que ainda não existe? Fale com a gente pelos canais oficiais da SI5 Sistema - o SI5 Global está em desenvolvimento contínuo.