NAV
python php

Introdução

Seja bem-vindo à documentação da API IS Collector!

Documentação atualizada em: 02/04/2024 - ver histórico de atualizações

Informações importantes:

1. Para trabalhar com esta API é necessário que sua conta possua as credenciais de acesso TOKEN e SECRET. Solicite entrando em contato com o nosso suporte através do e-mail: support@iscollector.com.

2. O uso desta API só pode ser feito por contas que possuam licenças ativas na plataforma. Caso a conta não possua nenhuma licença, irá sempre retornar o código de erro 5 (veja seção de possíveis erros).

Autenticação

Gerar Token

Exemplo de código para obter o Token de acesso:

import requests
import json

url = "https://app.iscollector.com/api/v1/authenticate"

payload = json.dumps({
  "username": "{TOKEN}",
  "password": "{SECRET}"
})
headers = {
  'Content-Type': 'application/json'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/authenticate',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "username" : "{TOKEN}",
    "password": "{SECRET}"
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Através deste serviço você fará a autenticação utilizando as credenciais de TOKEN e SECRET (que podem ser vistas no menu "Gerenciar Conta / Configurações / Integração" do nosso Gerenciador Web) e como resposta obterá o Token de acesso.

O Token de acesso gerado deverá ser enviado com Bearer Token, através do header, para validar o acesso em todos os demais endpoints desta API. Authorization: Bearer {token de acesso}

Requisição HTTP

POST https://app.iscollector.com/api/v1/authenticate

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Descrição
username Obrigatório Credencial TOKEN
password Obrigatório Credencial SECRET

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Token de acesso gerado com sucesso.",
    "access_token": "{token de acesso}",
    "expires_in": 86400
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro
access_token Token de acesso que deve ser salvo e enviado no header das requisições seguintes
expires_in Número de segundos que o token de acesso permanecerá válido (24 hrs) -- Incremente no seu horário atual e salve a informação de quando o token irá expirar -- Antes de fazer uma requisição, verifique se o seu token ainda não expirou e, caso datetime atual seja maior que datetime da expiração, faça uma nova autenticação para gerar um novo token de acesso

Coletas Avulsas

Relacionar Lista de Produtos

Utilize este serviço para relacionar a lista de produtos que servirá como base para as Coletas Avulsas. A lista será relacionada somente para a filial do token de acesso informado.

Exemplo de código para relacionar a lista de produtos das coletas avulsas:

import requests
import json

url = "https://app.iscollector.com/api/v1/single/items"

payload = json.dumps({
  "user": "moises@inlin3.com",
  "itemlistid": 1234
})
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer {token de acesso}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/single/items',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "user" : "moises@inlin3.com",
    "itemlistid": 1234
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer {token de acesso}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Requisição HTTP

POST https://app.iscollector.com/api/v1/single/items

Não esqueça de enviar o token no header da requisição: Authorization: Bearer {token}

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Valor Descrição
user Obrigatório email Email de um usuário válido da sua conta
itemlistid Obrigatório numeric ID da lista de produtos a ser relacionada -- O ID pode ser obtido através da web ou do endpoint para obter as listas de produtos cadastradas

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Lista de produtos atualizada com sucesso.",
    "total": 2687
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro
total Quantidade de produtos da lista

Download Coleta Avulsa

Utilize este endpoint para recuperar a contagem de uma coleta avulsa.

IMPORTANTE! Diferente de inventários e conferências, que podem ser criados pela API, a coleta avulsa não é criada previamente, então você não sabe o ID que deverá ser requisitado neste endpoint. O uso deste serviço deverá ser "acionado manualmente" através da opção de ENVIO PELA API que disponibilizamos em nosso gerenciador. Dessa forma, quando o usuário utilizar esta opção, nosso sistema enviará uma notificação para a sua aplicação com o ID da coleta. Na sequência, é só consumir este serviço normalmente. Saiba como receber notificações

Exemplo de código para recuperar a contagem de uma coleta avulsa:

import requests
import json

url = "https://app.iscollector.com/api/v1/single/download"

payload = json.dumps({
  "user": "moises@inlin3.com",
  "id": 6666,
  "mode": "sum"
})
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {token de acesso}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/single/download',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "user" : "moises@inlin3.com",
    "id" : 6666,
  "mode" : "sum"
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Accept: application/json',
    'Authorization: Bearer {token de acesso}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Requisição HTTP

POST https://app.iscollector.com/api/v1/single/download

Não esqueça de enviar o token no header da requisição: Authorization: Bearer {token}

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Valor Descrição
user Obrigatório email Email de um usuário válido da sua conta
id Obrigatório numeric ID da coleta avulsa
mode Obrigatório "linebyline" ou "sum" Modo de consolidação dos dados coletados ("linebyline" = Linha a linha conforme cada bipe; "sum" = Consolidado com as quantidades somadas por código;)

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Dados retornados com sucesso.",
    "name": "coleta de teste",
    "qtyItemsCounted": 2,
    "qtyTotalCounted": 70,
    "transmissiondate": "2022-06-19 17:41:12",
    "deviceId": "e0892dc3bb9c15a3",
    "deviceNickname": "Moto E7 Power",
    "datacollection": [
        {
            "CODE": "00003",
            "DESCRIPTION": null,
            "DESCINFO1": null,
            "DESCINFO2": null,
            "QTY": "30.0000",
            "EXTRAINFO": null,
            "COUNTDATE": "2022-06-19 17:31:14"
        },
        {
            "CODE": "00004",
            "DESCRIPTION": null,
            "DESCINFO1": null,
            "DESCINFO2": null,
            "QTY": "40.0000",
            "EXTRAINFO": [
                "777666",
                "testete"
            ],
            "COUNTDATE": "2022-06-19 17:36:14"
        }
    ]
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro
name Nome da coleta avulsa
qtyItemsCounted Quantidade de códigos distintos coletados
qtyTotalCounted Quantidade total contabilizada
transmissiondate Momento da transmissão da coleta em UTC+0 (YYYY-MM-DD HH:mm:ss)
deviceId ID do dispositivo transmissor
deviceNickname Apelido do dispositivo transmissor
datacollection Array com os registros da contagem -- Veja o exemplo no código de resposta ao lado

Inventários

Criar inventário

Utilize este serviço para criar um novo inventário. O inventário será criado para a filial do token de acesso informado.

Exemplo de código para criar um inventário:

import requests
import json

url = "https://app.iscollector.com/api/v1/inventory/create"

payload = json.dumps({
  "user": "moises@inlin3.com",
  "name": "teste inv API",
  "ref": "12345",
  "date": "2022-07-20",
  "beepOption": 1,
  "oneBeepOption": False,
  "editOption": True,
  "palletOption": 1,
  "employeeOption": False,
  "productivityQty": False,
  "productivityBeep": False
})
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer {token de acesso}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/inventory/create',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "user" : "moises@inlin3.com",
    "name": "teste inv API",
    "ref": "12345",
    "date": "2022-07-20",
    "beepOption": 1,
    "oneBeepOption": false,
    "editOption": true,
    "palletOption": 1,
    "employeeOption" : false,
    "productivityQty" : false,
    "productivityBeep" : false
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer {token de acesso}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Requisição HTTP

POST https://app.iscollector.com/api/v1/inventory/create

Não esqueça de enviar o token no header da requisição: Authorization: Bearer {token}

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Valor Descrição
user Obrigatório email Email de um usuário válido da sua conta
name Obrigatório string(80) Nome da conferência
ref Opcional string(20) Qualquer identificador para fazer referência com seu sistema
date Obrigatório string(10) Data do inventário no formado YYYY-MM-DD
beepOption Obrigatório 1, 2 ou 3 Permissão de coleta (1 = Permitir coletar qualquer código; 2 = Permitir coletar somente produtos carregados; 3 = Permitir coletar produtos carregados e pedir confirmação para códigos desconhecidos;)
oneBeepOption Obrigatório true/false Se deve permitir somente um bipe por código (não permitir bipe duplicado)
editOption Obrigatório true/false Se deve permitir cadastrar/editar a descrição dos códigos bipados através do app
palletOption Obrigatório 1, 2 ou 3 Coleta de pallets (1 = Não coletar pallets; 2 = Coletar pallets de modo simplificado; 3 = Coletar pallets de modo detalhado;) -- Veja vídeo explicativo em nossa Central de Ajuda)
employeeOption Obrigatório true/false Se deve obrigar identificação do operador para trabalhar no inventário
productivityQty Obrigatório true/false Acompanhar produtividade por quantidade total
productivityBeep Obrigatório true/false Acompanhar produtividade por quantidade de bipes

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Inventário criado com sucesso.",
    "id": 11524
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro
id ID do inventário na plataforma IS Collector -- Salve este ID para futuras consultas e interações

Setores e Áreas

Utilize este serviço para criar a estrutura de posições (Setores e Áreas) de um inventário.

Exemplo de código para criar as posições:

import requests
import json

url = "https://app.iscollector.com/api/v1/inventory/positions"

payload = json.dumps({
  "user": "moises@inlin3.com",
  "id": 11524,
  "sectors": [
        {
            "name": "LOJA",
            "areas": [
                {
                    "range": 1,
                    "address": "RUA1P1"
                },
                {
                    "range": 2,
                    "address": "RUA1P2"
                },
                {
                    "range": 3
                }
            ]
        },
        {
            "name": "ESTOQUE",
            "areas": [
                 {
                    "range": 101,
                    "address": "RUAX7"
                },
                {
                    "range": 102
                }
            ]
        }
    ]
})
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer {token de acesso}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/inventory/positions',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
        "user" : "moises@inlin3.com",
        "id": 11524,
    "sectors": [
        {
            "name": "LOJA",
            "areas": [
                {
                    "range": 1,
                    "address": "RUA1P1"
                },
                {
                    "range": 2,
                    "address": "RUA1P2"
                },
                {
                    "range": 3
                }
            ]
        },
        {
            "name": "ESTOQUE",
            "areas": [
                 {
                    "range": 101,
                    "address": "RUAX7"
                },
                {
                    "range": 102
                }
            ]
        }
    ]
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer {token de acesso}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Requisição HTTP

POST https://app.iscollector.com/api/v1/inventory/positions

Não esqueça de enviar o token no header da requisição: Authorization: Bearer {token}

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Valor Descrição
user Obrigatório email Email de um usuário válido da sua conta
id Obrigatório numeric ID do inventário
sectors Obrigatório array Array com a estrutura de posições (setores e áreas) a serem cadastradas -- Veja a descrição de cada propriedade na tabela abaixo

Detalhamento do Array com as posições a serem cadastradas

Propriedade Ocorrência Descrição
name Obrigatório Nome do setor -- String(30)
areas Obrigatório Áreas do setor -- Array
areas.range Obrigatório Range (número) da área -- Integer
areas.address Opcional Endereço customizado da área (não pode conter espaços) -- String(20)

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Atualizado com sucesso.",
    "totalpositions": 5
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro
totalpositions Quantidade total de áreas do inventário

Relacionar Lista de Produtos

Utilize este serviço para relacionar uma lista de produtos existente para o inventário.

Exemplo de código para relacionar a lista de produtos com o inventário:

import requests
import json

url = "https://app.iscollector.com/api/v1/inventory/items"

payload = json.dumps({
  "user": "moises@inlin3.com",
  "id": 11524,
  "itemlistid": 1234
})
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer {token de acesso}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
$curl = curl_init();


curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/inventory/items',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
        "user" : "moises@inlin3.com",
    "id": 11524,
    "itemlistid": 1234
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer {token de acesso}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Requisição HTTP

POST https://app.iscollector.com/api/v1/inventory/items

Não esqueça de enviar o token no header da requisição: Authorization: Bearer {token}

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Valor Descrição
user Obrigatório email Email de um usuário válido da sua conta
id Obrigatório numeric ID do inventário
itemlistid Obrigatório numeric ID da lista de produtos a ser relacionada -- O ID pode ser obtido através da web ou do endpoint para obter as listas de produtos cadastradas

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Lista de produtos atualizada com sucesso.",
    "total": 2687
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro
total Quantidade de produtos da lista

Criar Lista de Produtos

Utilize este serviço para cadastrar/atualizar uma lista de produtos exclusiva do inventário.

Atenção: Utilizando esta opção sua lista terá o limite de 10 mil itens. Para trabalhar com listas maiores, utilize a apção de relacionar uma lista de produtos existente ao seu inventário.

Exemplo de código para cadastrar/atualizar a lista de produtos exclusiva do inventário:

import requests
import json

url = "https://app.iscollector.com/api/v1/inventory/items"

payload = json.dumps({
  "user": "moises@inlin3.com",
  "id": 11524,
  "truncate": False,
  "items": [
        {
            "code": "7899838834054",
            "description": "descricao do item UM",
            "info1": "desc auxiliar",
            "info2": "UN",
            "rowsPerPallet": 4,
            "boxesPerRow": 6,
            "qtyPerBox": 10,
            "extrainfo": 1
        },
        {
            "code" : "9990000005109",
            "description": "descricao do item DOIS",
            "info1": null,
            "info2": null,
            "rowsPerPallet": 6,
            "boxesPerRow": 8,
            "qtyPerBox": 20,
            "extrainfo": 2
        }
    ]
})
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer {token de acesso}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/inventory/items',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "user" : "moises@inlin3.com",
    "id": 11524,
    "truncate": false,
    "items": [
        {
            "code": "7899838834054",
            "description": "descricao do item UM",
            "info1": "desc auxiliar",
            "info2": "UN",
            "rowsPerPallet": 4,
            "boxesPerRow": 6,
            "qtyPerBox": 10,
            "extrainfo": 1
        },
        {
            "code" : "9990000005109",
            "description": "descricao do item DOIS",
            "info1": null,
            "info2": null,
            "rowsPerPallet": 6,
            "boxesPerRow": 8,
            "qtyPerBox": 20,
            "extrainfo": 2
        }
    ]
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer {token de acesso}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Requisição HTTP

POST https://app.iscollector.com/api/v1/inventory/items

Não esqueça de enviar o token no header da requisição: Authorization: Bearer {token}

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Valor Descrição
user Obrigatório email Email de um usuário válido da sua conta
id Obrigatório numeric ID do inventário
truncate Obrigatório true/false Indica se a lista de produtos deve ser zerada antes de cadastrar os itens enviados nesta requisição
items Opcional array Array com os itens a serem cadastrados/atualizados -- Veja a descrição de cada propriedade na tabela abaixo

Detalhamento do Array com os itens a serem cadastrados/atualizados

Propriedade Ocorrência Descrição
code Obrigatório Código do item -- String(100)
description Obrigatório Descrição do item -- String(120)
info1 Opcional Descrição auxiliar -- String(20)
info2 Opcional Descrição auxiliar -- String(20)
rowsPerPallet Opcional Indica o número de camadas que o pallet do produto possui - Obrigatório caso utilize a opção de pallet detalhado -- Integer
boxesPerRow Opcional Indica o número de caixas que o pallet do produto possui em cada camada - Obrigatório caso utilize a opção de pallet detalhado -- Integer
qtyPerBox Opcional Indica o número de unidades do produto por caixa - Obrigatório caso utilize a opção de pallet detalhado -- Integer
qtyPerPallet Opcional Indica o número de unidades do produto por pallet - Obrigatório caso utilize a opção de pallet simplificado -- Integer
extrainfo Opcional Pode conter o número 0, 1 ou 2 -- Indica se o aplicativo deve solicitar o registro da informação extra (0 = Não solicitar; 1 = Solicitar informação extra "padrão"; 2 = Solicitar informação extra "número de série"; Veja vídeo explicativo em nossa Central de Ajuda)

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Lista de produtos atualizada com sucesso.",
    "total": 2687
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro
total Quantidade de produtos da lista

Códigos Relacionados

Utilize este serviço para cadastrar/atualizar a lista de códigos relacionados a ser utilizada em um inventário. Para utilizar este serviço é necessário que o inventário esteja trabalhando com uma lista de produtos exclusiva. Caso esteja utilizando uma lista de produtos existente relacionada ao inventário, os códigos relacionados dessa lista que serão considerados.

Exemplo de código para cadastrar/atualizar a lista de códigos relacionados em um inventário:

import requests
import json

url = "https://app.iscollector.com/api/v1/inventory/relateditems"

payload = json.dumps({
  "user": "moises@inlin3.com",
  "id": 11524,
  "truncate": false,
  "relateditems": [
    {
      "code": "0909",
      "relatedcode": "111"
    },
    {
      "code": "0909",
      "relatedcode": "222"
    },
    {
      "code": "7899838834054",
      "relatedcode": "988888"
    }
  ]
})
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer {token de acesso}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/inventory/relateditems',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "user" : "moises@inlin3.com",
    "id": 11524,
    "truncate": false,
    "relateditems": [
    {
      "code": "0909",
      "relatedcode": "111"
    },
    {
      "code": "0909",
      "relatedcode": "222"
    },
    {
      "code": "7899838834054",
      "relatedcode": "988888"
    }
  ]
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer {token de acesso}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Requisição HTTP

POST https://app.iscollector.com/api/v1/inventory/relateditems

Não esqueça de enviar o token no header da requisição: Authorization: Bearer {token}

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Valor Descrição
user Obrigatório email Email de um usuário válido da sua conta
id Obrigatório numeric ID do inventário
truncate Obrigatório true/false Indica se a lista de códigos relacionados deve ser zerada antes de cadastrar os itens enviados nesta requisição
relateditems Opcional array Array com os códigos a serem cadastrados -- Veja a descrição de cada propriedade na tabela abaixo

Detalhamento do Array com os códigos a serem cadastrados

Propriedade Ocorrência Descrição
code Obrigatório Código principal -- String(100)
relatedcode Obrigatório Código relacionado ao principal (que deve ser convertido para o principal) -- String(100)

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Lista de códigos relacionados atualizada com sucesso.",
    "total": 155
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro
total Quantidade total de códigos relacionados cadastrados

Estoque

Utilize este serviço para cadastrar o estoque em um inventário. Estas informações servem, exclusivamente, como base comparativa para alguns relatórios.

Exemplo de código para cadastrar o estoque em um inventário:

import requests
import json

url = "https://app.iscollector.com/api/v1/inventory/stock"

payload = json.dumps({
  "user": "moises@inlin3.com",
  "id": 11524,
  "truncate": false,
  "stock": [
        {
            "code": "0909",
            "qty": 10,
            "itemvalue": 5.54,
            "position": "ABC"
        },
        {
            "code": "0909",
            "qty": 15,
            "itemvalue": 5.54,
            "position": "XYZ"
        },
        {
            "code": "898989",
            "qty": 12
        }
    ]
})
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer {token de acesso}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/inventory/stock',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "user" : "moises@inlin3.com",
    "id": 11524,
    "truncate": false,
    "stock": [
        {
            "code": "0909",
            "qty": 10,
            "itemvalue": 5.54,
            "position": "ABC"
        },
        {
            "code": "0909",
            "qty": 15,
            "itemvalue": 5.54,
            "position": "XYZ"
        },
        {
            "code": "898989",
            "qty": 12
        }
    ]
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer {token de acesso}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Requisição HTTP

POST https://app.iscollector.com/api/v1/inventory/stock

Não esqueça de enviar o token no header da requisição: Authorization: Bearer {token}

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Valor Descrição
user Obrigatório email Email de um usuário válido da sua conta
id Obrigatório numeric ID do inventário
truncate Obrigatório true/false Indica se o estoque do inventário deve ser zerado antes de cadastrar os itens enviados nesta requisição
stock Opcional array Array com os itens do estoque a ser cadastrado -- Veja a descrição de cada propriedade na tabela abaixo

Detalhamento do Array com os itens a serem cadastrados no estoque

Propriedade Ocorrência Descrição
code Obrigatório Código do item -- String(100)
qty Obrigatório Quantidade a ser conferida -- Numeric
itemvalue Opcional Valor unitário do item em formato numérico com 2 casas decimais separadas por ponto (.) -- Numeric
position Opcional a posição/endereço do item no estoque -- String(20)

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Lista de estoque atualizada com sucesso.",
    "total": 3520
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro
total Quantidade total de itens (códigos distintos) no estoque do inventário

Dispositivos

Utilize este serviço para cadastrar a lista de dispositivos aptos a coletar em um inventário.

Exemplo de código para cadastrar a lista de dispositivos de um inventário:

import requests
import json

url = "https://app.iscollector.com/api/v1/inventory/devices"

payload = json.dumps({
  "user": "moises@inlin3.com",
  "id": 11524,
  "truncate": false,
  "devices": [
        {
            "deviceid": "xcd79xYzA96ed5"
        },
        {
            "deviceid": "1CXXX33-54D6-45X9-9XX5-C07XXXXX75ED"
        }
    ]
})
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer {token de acesso}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/inventory/devices',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "user" : "moises@inlin3.com",
    "id": 11524,
    "truncate": false,
    "devices": [
        {
            "deviceid": "xcd79xYzA96ed5"
        },
        {
            "deviceid": "1CXXX33-54D6-45X9-9XX5-C07XXXXX75ED"
        }
    ]
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer {token de acesso}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Requisição HTTP

POST https://app.iscollector.com/api/v1/inventory/devices

Não esqueça de enviar o token no header da requisição: Authorization: Bearer {token}

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Valor Descrição
user Obrigatório email Email de um usuário válido da sua conta
id Obrigatório numeric ID do inventário
truncate Obrigatório true/false Indica se a lista de dispositivos do inventário deve ser zerada antes de cadastrar os dispositivos enviados nesta requisição
devices Opcional array Array com os dispositivos a serem cadastrados -- Veja a descrição de cada propriedade na tabela abaixo

Detalhamento do Array com os dispositivos a serem cadastrados

Propriedade Ocorrência Descrição
deviceid Obrigatório ID do dispositivo -- String

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Lista de dispositivos atualizada com sucesso.",
    "total": 10
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro
total Quantidade total de dispositivos cadastrados para o inventário

Operadores

Utilize este serviço para cadastrar a lista de operadores aptos a coletar em um inventário.

Exemplo de código para cadastrar a lista de operadores de um inventário:

import requests
import json

url = "https://app.iscollector.com/api/v1/inventory/employees"

payload = json.dumps({
  "user": "moises@inlin3.com",
  "id": 11524,
  "truncate": false,
  "employees": [
        {
            "employeeid": "001210"
        },
        {
            "employeeid": "001211"
        }
    ]
})
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer {token de acesso}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/inventory/employees',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "user" : "moises@inlin3.com",
    "id": 11524,
    "truncate": false,
    "employees": [
        {
            "employeeid": "001210"
        },
        {
            "employeeid": "001211"
        }
    ]
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer {token de acesso}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Requisição HTTP

POST https://app.iscollector.com/api/v1/inventory/employees

Não esqueça de enviar o token no header da requisição: Authorization: Bearer {token}

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Valor Descrição
user Obrigatório email Email de um usuário válido da sua conta
id Obrigatório numeric ID do inventário
truncate Obrigatório true/false Indica se a lista de operadores do inventário deve ser zerada antes de cadastrar os operadores enviados nesta requisição
employees Opcional array Array com os operadores a serem cadastrados -- Veja a descrição de cada propriedade na tabela abaixo

Detalhamento do Array com os operadores a serem cadastrados

Propriedade Ocorrência Descrição
employeeid Obrigatório ID do operador -- String

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Lista de operadores atualizada com sucesso.",
    "total": 2
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro
total Quantidade total de operadores cadastrados para o inventário

Alterar Status

Utilize este serviço para alterar o status de um inventário.

Exemplo de código para alterar o status:

import requests
import json

url = "https://app.iscollector.com/api/v1/inventory/status"

payload = json.dumps({
  "user": "moises@inlin3.com",
  "id": 11524,
  "status": 3
})
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer {token de acesso}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/inventory/status',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
        "user" : "moises@inlin3.com",
        "id": 11524,
        "status": 3
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer {token de acesso}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Requisição HTTP

POST https://app.iscollector.com/api/v1/inventory/status

Não esqueça de enviar o token no header da requisição: Authorization: Bearer {token}

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Valor Descrição
user Obrigatório email Email de um usuário válido da sua conta
id Obrigatório numeric ID do inventário
status Obrigatório 1, 2, 3 ou 4 Status do inventário (1 = EM PLANEJAMENTO; 2 = CRIADO; 3 = EM ANDAMENTO; 4 = FINALIZADO;)

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Atualizado com sucesso."
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro

Download Inventário

Utilize este endpoint para recuperar a contagem geral do inventário.

Exemplo de código para recuperar a contagem de um inventário:

import requests
import json

url = "https://app.iscollector.com/api/v1/inventory/download"

payload = json.dumps({
  "user": "moises@inlin3.com",
  "id": 9999,
  "mode": "sum",
  "fields" : "essential",
  "datatype" : "txt"
})
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {token de acesso}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/inventory/download',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "user" : "moises@inlin3.com",
    "id" : 9999,
    "mode" : "sum",
    "fields" : "essential",
    "datatype" : "txt"
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Accept: application/json',
    'Authorization: Bearer {token de acesso}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Requisição HTTP

POST https://app.iscollector.com/api/v1/inventory/download

Não esqueça de enviar o token no header da requisição: Authorization: Bearer {token}

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Valor Descrição
user Obrigatório email Email de um usuário válido da sua conta
id Obrigatório numeric ID do inventário
mode Obrigatório "linebyline", "sum" ou "area" Modo de consolidação dos dados coletados ("linebyline" = Linha a linha conforme cada bipe; "sum" = Consolidado com as quantidades somadas por código; "area" = Consolidado com as quantidades somadas por área/código;)
fields Obrigatório "all" ou "essential" Indica quais campos devem conter no arquivo a ser gerado com a contagem do inventário ("all" = Todos; "essential" = Todos com exceção da descrição dos itens;)
datatype Obrigatório "txt", "csv" ou "json" Formato do arquivo a ser gerado com a contagem do inventário

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Dados retornados com sucesso.",
    "ref": "12345",
    "name": "NOME DO INVENTARIO",
    "date": "2021-10-04 00:00:00",
    "qtyItemsCounted": 350,
    "qtyTotalCounted": "2170",
    "lastTransmission": "2021-12-31 19:10:46",
    "inventoryStatus": 3,
    "dataCollectionUrl": "https://app.iscollector.com/api/v1/download/nome-do-arquivo.txt",
    "devices": [
        {
            "IDDEVICE": "e0xxxdc3bABc5a3",
            "NICKNAME": "Moto E7 Power"
        },
        {
            "IDDEVICE": "ADA62714-XXXX-43F2-XXWW-6967WWWWBE58",
            "NICKNAME": "iPhone Testes"
        }
    ],
    "employees": [
        {
            "REGISTRATIONID": "001210",
            "EMPLOYEENAME": "Rafael"
        },
        {
            "REGISTRATIONID": "001211",
            "EMPLOYEENAME": "Lavínia"
        }
    ]
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro
ref Referência informada no momento da criação do inventário
name Nome do inventário
date Data do inventário (informada no cadastro)
qtyItemsCounted Quantidade de códigos distintos coletados
qtyTotalCounted Quantidade total contabilizada
lastTransmission Momento da última transmissão de coleta de área em UTC+0 (YYYY-MM-DD HH:mm:ss)
inventorystatus Status do inventário (1 = EM PLANEJAMENTO; 2 = CRIADO; 3 = EM ANDAMENTO; 4 = FINALIZADO;)
dataCollectionUrl Url do arquivo gerado com a contagem do inventário -- Veja os campos retornados na tabela abaixo
devices Array com os dispositivos que participaram do inventário -- Veja o exemplo no código de resposta ao lado
employees Array com os operadores que participaram do inventário -- Veja o exemplo no código de resposta ao lado

Descrição de todos os campos possíveis de serem exportados no arquivo gerado dataCollectionUrl

Campo Tipo Descrição
RANGEAREA Integer Número da área
AREA String(20) Número da área ou Endereço (se cadastrado)
CODE String(100) Código do item
DESCRIPTION String(120) Descrição do item
DESCINFO1 String(20) Descrição auxiliar do item
DESCINFO2 String(20) Descrição auxiliar do item
QTY Decimal(15,4) Quantidade unitária
QTYPALLET Integer Quantidade de pallets -- presente somente quando utilizada a opção de coleta de pallets
QTYROW Integer Quantidade de camadas -- presente somente quando utilizada a opção de coleta de pallets
QTYCELL Integer Quantidade de caixas -- presente somente quando utilizada a opção de coleta de pallets
QTYTOTAL Decimal(15,4) Quantidade total -- presente somente quando utilizada a opção de coleta de pallets
EXTRAINFO String(50) Informação extra registrada na coleta
COUNTDATE Datetime Data e hora do "bipe/registro" na coleta em UTC+0 (YYYY-MM-DD HH:mm:ss)

Conferências

Criar Conferência

Com este endpoint você pode criar uma conferência diretamente do seu sistema. A conferência é criada para a filial do token de acesso informado.

Exemplo de código para criar uma conferência:

import requests
import json

url = "https://app.iscollector.com/api/v1/check/create"

payload = json.dumps({
  "user": "moises@inlin3.com",
  "beepOption": 1,
  "oneBeepOption": false,
  "editOption": true,
  "finishOnSend": 1,
  "name": "CONF PEDIDO 123",
  "ref": "12345",
  "items": [
    {
      "code": "7899837765050",
      "description": "descricao do item UM",
      "info1": "desc auxiliar 1",
      "info2": "desc auxiliar 2",
      "qty": 10,
      "extrainfo": 0
    },
    {
      "code" : "000005109",
      "description": "descricao do item DOIS",
      "info1": null,
      "info2": null,
      "qty": 15,
      "extrainfo": 0
    }
  ]
})
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer {token de acesso}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/check/create',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "user" : "moises@inlin3.com",
    "beepOption": 1,
    "oneBeepOption": false,
    "editOption": true,
    "finishOnSend" : 1,
    "name": "CONF PEDIDO 123",
    "ref": "12345",
    "items": [
    {
      "code": "7899837765050",
      "description": "descricao do item UM",
      "info1": "desc auxiliar 1",
      "info2": "desc auxiliar 2",
      "qty": 10,
      "extrainfo": 0
    },
    {
      "code" : "000005109",
      "description": "descricao do item DOIS",
      "info1": null,
      "info2": null,
      "qty": 15,
      "extrainfo": 0
    }
  ]
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer {token de acesso}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Requisição HTTP

POST https://app.iscollector.com/api/v1/check/create

Não esqueça de enviar o token no header da requisição: Authorization: Bearer {token}

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Valor Descrição
user Obrigatório email Email de um usuário válido da sua conta
beepOption Obrigatório 1, 2 ou 3 Permissão de coleta (1 = Permitir coletar qualquer código; 2 = Permitir coletar somente produtos carregados; 3 = Permitir coletar produtos carregados e pedir confirmação para códigos desconhecidos;)
oneBeepOption Obrigatório true/false Se deve permitir somente um bipe por código (não permitir bipe duplicado)
editOption Obrigatório true/false Se deve permitir cadastrar/editar a descrição dos códigos bipados através do app
finishOnSend Obrigatório 0, 1 ou 2 Modo de finalização da conferência (0 = manualmente pelo gerenciador; 1 = automaticamente na transmissão da primeira coleta; 2 = automaticamente quando tiver acurácia de Cód/Qtd 100%;)
name Obrigatório string(80) Nome da conferência
ref Opcional string(20) Qualquer identificador para fazer referência com seu sistema
items Obrigatório array Array com os itens a serem conferidos -- Veja a descrição de cada propriedade na tabela abaixo

Detalhamento do Array com os itens a serem conferidos

Propriedade Ocorrência Descrição
code Obrigatório Código do item -- String(100)
description Obrigatório Descrição do item -- String(120)
info1 Opcional Descrição auxiliar -- String(20)
info2 Opcional Descrição auxiliar -- String(20)
qty Obrigatório Quantidade a ser conferida -- Numeric
extrainfo Opcional Pode conter o número 0, 1 ou 2 -- Indica se o aplicativo deve solicitar o registro da informação extra (0 = Não solicitar; 1 = Solicitar informação extra "padrão"; 2 = Solicitar informação extra "número de série"; Veja vídeo explicativo em nossa Central de Ajuda)

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Conferência criada com sucesso.",
    "id": 9999
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro
id ID da conferência na plataforma IS Collector -- Salve este ID para futuras consultas e download

Códigos Relacionados

Utilize este serviço para cadastrar a lista de códigos relacionados a ser utilizada na conferência.

Exemplo de código para cadastrar a lista de códigos relacionados em uma conferência:

import requests
import json

url = "https://app.iscollector.com/api/v1/check/relateditems"

payload = json.dumps({
  "user": "moises@inlin3.com",
  "id": 9999,
  "truncate": false,
  "relateditems": [
    {
      "code": "0909",
      "relatedcode": "111"
    },
    {
      "code": "0909",
      "relatedcode": "222"
    },
    {
      "code": "7899838834054",
      "relatedcode": "988888"
    }
  ]
})
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer {token de acesso}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/check/relateditems',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "user" : "moises@inlin3.com",
    "id": 9999,
    "truncate": false,
    "relateditems": [
    {
      "code": "0909",
      "relatedcode": "111"
    },
    {
      "code": "0909",
      "relatedcode": "222"
    },
    {
      "code": "7899838834054",
      "relatedcode": "988888"
    }
  ]
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer {token de acesso}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Requisição HTTP

POST https://app.iscollector.com/api/v1/check/relateditems

Não esqueça de enviar o token no header da requisição: Authorization: Bearer {token}

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Valor Descrição
user Obrigatório email Email de um usuário válido da sua conta
id Obrigatório numeric ID da conferência
truncate Obrigatório true/false Indica se a lista de códigos relacionados deve ser zerada antes de cadastrar os itens enviados nesta requisição
relateditems Opcional array Array com os códigos a serem cadastrados -- Veja a descrição de cada propriedade na tabela abaixo

Detalhamento do Array com os códigos a serem cadastrados

Propriedade Ocorrência Descrição
code Obrigatório Código principal -- String(100)
relatedcode Obrigatório Código relacionado ao principal (que deve ser convertido para o principal) -- String(100)

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Lista de códigos relacionados atualizada com sucesso.",
    "total": 4
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro
total Quantidade total de códigos relacionados cadastrados

Dispositivos

Utilize este serviço para cadastrar a lista de dispositivos aptos a coletar em uma conferência.

Exemplo de código para cadastrar a lista de dispositivos de uma conferência:

import requests
import json

url = "https://app.iscollector.com/api/v1/check/devices"

payload = json.dumps({
  "user": "moises@inlin3.com",
  "id": 9999,
  "truncate": false,
  "devices": [
        {
            "deviceid": "xcd79xYzA96ed5"
        },
        {
            "deviceid": "1CXXX33-54D6-45X9-9XX5-C07XXXXX75ED"
        }
    ]
})
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer {token de acesso}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/check/devices',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "user" : "moises@inlin3.com",
    "id": 9999,
    "truncate": false,
    "devices": [
        {
            "deviceid": "xcd79xYzA96ed5"
        },
        {
            "deviceid": "1CXXX33-54D6-45X9-9XX5-C07XXXXX75ED"
        }
    ]
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer {token de acesso}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Requisição HTTP

POST https://app.iscollector.com/api/v1/check/devices

Não esqueça de enviar o token no header da requisição: Authorization: Bearer {token}

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Valor Descrição
user Obrigatório email Email de um usuário válido da sua conta
id Obrigatório numeric ID da conferência
truncate Obrigatório true/false Indica se a lista de dispositivos da conferência deve ser zerada antes de cadastrar os dispositivos enviados nesta requisição
devices Opcional array Array com os dispositivos a serem cadastrados -- Veja a descrição de cada propriedade na tabela abaixo

Detalhamento do Array com os dispositivos a serem cadastrados

Propriedade Ocorrência Descrição
deviceid Obrigatório ID do dispositivo -- String

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Lista de dispositivos atualizada com sucesso.",
    "total": 10
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro
total Quantidade total de dispositivos cadastrados para a conferência

Download Conferência

Utilize este endpoint para recuperar a contagem geral da conferência.

Exemplo de código para recuperar a contagem de uma conferência:

import requests
import json

url = "https://app.iscollector.com/api/v1/check/download"

payload = json.dumps({
  "user": "moises@inlin3.com",
  "id": 9999,
  "mode": "sum"
})
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {token de acesso}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/check/download',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "user" : "moises@inlin3.com",
    "id" : 9999,
    "mode" : "sum"
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Accept: application/json',
    'Authorization: Bearer {token de acesso}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Requisição HTTP

POST https://app.iscollector.com/api/v1/check/download

Não esqueça de enviar o token no header da requisição: Authorization: Bearer {token}

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Valor Descrição
user Obrigatório email Email de um usuário válido da sua conta
id Obrigatório numeric ID da conferência
mode Obrigatório "linebyline" ou "sum" Modo de consolidação dos dados coletados ("linebyline" = Linha a linha conforme cada bipe; "sum" = Consolidado com as quantidades somadas por código;)

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Dados retornados com sucesso.",
    "ref": "12345",
    "name": "CONF PEDIDO 123",
    "qtyItemsToCheck": 3,
    "qtyTotalToCheck": 25.0000,
    "qtyItemsCounted": 6,
    "qtyTotalCounted": 250.0000,
    "transmissions": 1,
    "registrationdate": "2022-05-30 18:41:37",
    "completiondate": null,
    "datacollection": [
        {
            "CODE": "00001",
            "DESCRIPTION": "Descrição do item",
            "DESCINFO1": null,
            "DESCINFO2": null,
            "QTY": 10.0000,
            "EXTRAINFO": "L123",
            "COUNTDATE": "2022-05-30 19:10:51"
        },
        {
            "CODE": "00002",
            "DESCRIPTION": null,
            "DESCINFO1": null,
            "DESCINFO2": null,
            "QTY": 20.0000,
            "EXTRAINFO": null,
            "COUNTDATE": "2022-05-30 19:15:51"
        }
    ],
    "devices": [
        {
            "IDDEVICE": "e0xxxdc3bABc5a3",
            "NICKNAME": "Moto E7 Power"
        }
    ]
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro
ref Referência informada no momento da criação da conferência
name Nome de conferência
qtyItemsToCheck Quantidade de itens a conferir (qtd códigos distintos)
qtyTotalToCheck Quantidade total a conferir
qtyItemsCounted Quantidade de códigos distintos coletados
qtyTotalCounted Quantidade total contabilizada
transmissions Número de coletas transmitidas na conferência
registrationdate Momento de criação da conferência em UTC+0 (YYYY-MM-DD HH:mm:ss)
completiondate Momento da finalização da conferência em UTC+0 (YYYY-MM-DD HH:mm:ss) -- Se esta propriedade estiver com valor NULL, significa que a conferência ainda não foi finalizada
datacollection Array com os registros da contagem -- Veja o exemplo no código de resposta ao lado
devices Array com os dispositivos que participaram da conferência -- Veja o exemplo no código de resposta ao lado

Listas de Produtos

Criar Lista de Produtos

Cadastre suas listas de produtos através do nosso gerenciador web. Depois de cadastrar, você poderá obter o ID da lista e importar/atualizar seus itens e itens relacionados através desta API. Somente a ação de criar a lista que, obrigatoriamente, deve ser feita pela interface web.

Obter Listas de Produtos

Utilize este endpoint para obter as listas de produtos cadastradas no gerenciador web. Serão retornadas as listas da filial do token de acesso.

Exemplo de código para obter as listas de produtos:

import requests
import json

url = "https://app.iscollector.com/api/v1/productlists"

payload = json.dumps({
  "user": "moises@inlin3.com"
})
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {token de acesso}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/productlists',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
        "user" : "moises@inlin3.com"
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Accept: application/json',
    'Authorization: Bearer {token de acesso}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);

echo $response;

Requisição HTTP

POST https://app.iscollector.com/api/v1/productlists

Não esqueça de enviar o token no header da requisição: Authorization: Bearer {token}

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Valor Descrição
user Obrigatório email Email de um usuário válido da sua conta

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Dados retornados com sucesso.",
    "productlists": [
        {
            "LISTID": 22,
            "LISTNAME": "Lista A",
            "QTYITEMS": 9,
            "QTYITEMSRELATED": 9,
            "UPDATEDATE": "2024-02-16 20:28:55"
        },
        {
            "LISTID": 19,
            "LISTNAME": "Lista B",
            "QTYITEMS": 6,
            "QTYITEMSRELATED": 0,
            "UPDATEDATE": "2024-02-15 02:48:59"
        },
        {
            "LISTID": 26,
            "LISTNAME": "Lista D",
            "QTYITEMS": 8,
            "QTYITEMSRELATED": 4,
            "UPDATEDATE": "2024-02-28 01:33:31"
        }
    ]
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro
productlists Array com as listas de produtos -- Veja o exemplo no código de resposta ao lado

Cadastrar/Atualizar Produtos

Utilize este serviço para cadastrar/atualizar os itens de uma lista de produtos.

Exemplo de código para cadastrar/atualizar itens para uma lista de produtos:

import requests
import json

url = "https://app.iscollector.com/api/v1/productlists/items"

payload = json.dumps({
  "user": "moises@inlin3.com",
  "itemlistid": 1234,
  "palletOption": 1,
  "truncate": False,
  "items": [
        {
            "code": "7899838834054",
            "description": "descricao do item UM",
            "info1": "desc auxiliar",
            "info2": "UN",
            "rowsPerPallet": 4,
            "boxesPerRow": 6,
            "qtyPerBox": 10,
            "extrainfo": 0
        },
        {
            "code" : "9990000005109",
            "description": "descricao do item DOIS",
            "info1": null,
            "info2": null,
            "rowsPerPallet": 6,
            "boxesPerRow": 8,
            "qtyPerBox": 20,
            "extrainfo": 0
        }
    ]
})
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer {token de acesso}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/productlists/items',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "user" : "moises@inlin3.com",
    "itemlistid": 1234,
    "palletOption": 1,
    "truncate": false,
    "items": [
        {
            "code": "7899838834054",
            "description": "descricao do item UM",
            "info1": "desc auxiliar",
            "info2": "UN",
            "rowsPerPallet": 4,
            "boxesPerRow": 6,
            "qtyPerBox": 10,
            "extrainfo": 0
        },
        {
            "code" : "9990000005109",
            "description": "descricao do item DOIS",
            "info1": null,
            "info2": null,
            "rowsPerPallet": 6,
            "boxesPerRow": 8,
            "qtyPerBox": 20,
            "extrainfo": 0
        }
    ]
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer {token de acesso}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Requisição HTTP

POST https://app.iscollector.com/api/v1/productlists/items

Não esqueça de enviar o token no header da requisição: Authorization: Bearer {token}

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Valor Descrição
user Obrigatório email Email de um usuário válido da sua conta
itemlistid Obrigatório numeric ID da lista de produtos a ser atualizada -- O ID pode ser obtido através da web ou do endpoint para obter as listas de produtos cadastradas
palletOption Obrigatório 1, 2 ou 3 Indica se os produtos devem ser cadastrados com as informações relativas à Coleta de pallets (1 = Não coletar pallets; 2 = Coletar pallets de modo simplificado; 3 = Coletar pallets de modo detalhado;) -- Veja vídeo explicativo em nossa Central de Ajuda). Esta opção afeta os parâmetros obrigatórios no array que será enviado com os produtos. Leia mais abaixo no detalhamento de cada propriedade do array.
truncate Obrigatório true/false Indica se a lista de produtos deve ser zerada antes de cadastrar os itens enviados nesta requisição
items Opcional array Array com os itens a serem cadastrados/atualizados -- Veja a descrição de cada propriedade na tabela abaixo

Detalhamento do Array com os itens a serem cadastrados/atualizados

Propriedade Ocorrência Descrição
code Obrigatório Código do item -- String(100)
description Obrigatório Descrição do item -- String(120)
info1 Opcional Descrição auxiliar -- String(20)
info2 Opcional Descrição auxiliar -- String(20)
rowsPerPallet Opcional Indica o número de camadas que o pallet do produto possui - Obrigatório caso utilize a opção de pallet detalhado -- Integer
boxesPerRow Opcional Indica o número de caixas que o pallet do produto possui em cada camada - Obrigatório caso utilize a opção de pallet detalhado -- Integer
qtyPerBox Opcional Indica o número de unidades do produto por caixa - Obrigatório caso utilize a opção de pallet detalhado -- Integer
qtyPerPallet Opcional Indica o número de unidades do produto por pallet - Obrigatório caso utilize a opção de pallet simplificado -- Integer
extrainfo Opcional Pode conter o número 0, 1 ou 2 -- Indica se o aplicativo deve solicitar o registro da informação extra (0 = Não solicitar; 1 = Solicitar informação extra "padrão"; 2 = Solicitar informação extra "número de série"; Veja vídeo explicativo em nossa Central de Ajuda)

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Lista de produtos atualizada com sucesso.",
    "total": 2687
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro
total Quantidade de produtos da lista

Códigos Relacionados

Utilize este serviço para cadastrar/atualizar a lista de códigos relacionados para suas listas de produtos.

Exemplo de código para cadastrar/atualizar a lista de códigos relacionados para uma lista de produtos:

import requests
import json

url = "https://app.iscollector.com/api/v1/productlists/relateditems"

payload = json.dumps({
  "user": "moises@inlin3.com",
  "itemlistid": 1234,
  "truncate": false,
  "relateditems": [
    {
      "code": "0909",
      "relatedcode": "111"
    },
    {
      "code": "0909",
      "relatedcode": "222"
    },
    {
      "code": "7899838834054",
      "relatedcode": "988888"
    }
  ]
})
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer {token de acesso}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://app.iscollector.com/api/v1/productlists/relateditems',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "user" : "moises@inlin3.com",
    "itemlistid": 1234,
    "truncate": false,
    "relateditems": [
    {
      "code": "0909",
      "relatedcode": "111"
    },
    {
      "code": "0909",
      "relatedcode": "222"
    },
    {
      "code": "7899838834054",
      "relatedcode": "988888"
    }
  ]
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer {token de acesso}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Requisição HTTP

POST https://app.iscollector.com/api/v1/productlists/relateditems

Não esqueça de enviar o token no header da requisição: Authorization: Bearer {token}

Parâmetros a serem enviados

Os parâmetros devem ser enviados em JSON no Body da requisição.

Parâmetro Ocorrência Valor Descrição
user Obrigatório email Email de um usuário válido da sua conta
itemlistid Obrigatório numeric ID da lista de produtos a ser atualizada -- O ID pode ser obtido através da web ou do endpoint para obter as listas de produtos cadastradas
truncate Obrigatório true/false Indica se a lista de códigos relacionados deve ser zerada antes de cadastrar os itens enviados nesta requisição
relateditems Opcional array Array com os códigos a serem cadastrados -- Veja a descrição de cada propriedade na tabela abaixo

Detalhamento do Array com os códigos a serem cadastrados

Propriedade Ocorrência Descrição
code Obrigatório Código principal -- String(100)
relatedcode Obrigatório Código relacionado ao principal (que deve ser convertido para o principal) -- String(100)

Resposta

Se a requisição tiver sucesso, retornará um JSON conforme exemplo abaixo:

{
    "status": "OK",
    "message": "Lista de códigos relacionados atualizada com sucesso.",
    "total": 155
}
Propriedade Descrição
status Resultado da requisição -- "OK" quando sucesso (veja seção de possíveis erros)
message Informação de sucesso ou detalhes do erro
total Quantidade total de códigos relacionados cadastrados

Receber notificações

Esta integração faz com que o usuário consiga enviar a contagem de coletas avulsas, inventários e conferências através da opção ENVIAR PELA API, disponível em nosso gerenciador web.

Através do nosso gerenciador web também é possível configurar para as notificações serem enviadas automaticamente quando uma coleta avulsa por transmitida pelo aplicativo ou quando uma conferência ou inventário tiverem seu status alterado para "finalizado".

Quando utilizada esta opção, nossa API envia os parâmetros descritos abaixo para o endpoint de recebimento de notificações, que deverá ser previamente cadastrado em nosso gerenciador web.

Parâmetros

Os parâmetros serão enviados em JSON no Body da requisição, utilizando o método POST.

Parâmetro Valor Descrição
branchToken String Credencial TOKEN da filial que está fazendo o envio
type "single", "inventory" ou "check" Tipo da notificação ("single" = Coleta Avulsa; "inventory" = Inventário; "check" = Conferência;)
id numeric ID da coleta avulsa ou do inventário ou da conferência, de acordo com o parâmetro type

Endpoint para recebimento

Para cadastrar a URL que irá receber as notificações, acesse o menu Gerenciar conta e depois a área de Integração em nosso gerenciador web.

Token de verificação

Opcionalmente, você pode cadastrar um token para que a nossa API envie com Bearer Token no Header da requisição para o seu endpoint. O cadastro do token de verificação também pode ser feito através do menu Gerenciar conta / Integração em nosso gerenciador web.

O que esperamos de retorno

Para que a nossa API entenda que o envio foi recebido com sucesso, esperamos o retorno com HTTP CODE 200 e com conteúdo text/plain contendo apenas OK.

Com este retorno, será sinalizado para o usuário que está fazendo o envio que a comunicação foi bem sucedida. Caso contrário, será exibido um alerta com o retorno obtido.

Erros

Se alguma requisição apresentar problema, retornará um JSON parecido com o exemplo abaixo:

{
    "status": "ERROR",
    "error_code": 6,
    "message": "Autenticação não realizada. Verifique suas credenciais."
}
Http Code Status Error Code Descrição
401 ERROR 1 Bearer Token não submetido.
401 ERROR 2 Token inválido - expirado ou incorreto.
401 ERROR 3 Usuário não submetido.
401 ERROR 4 Acesso negado para o usuário informado.
401 ERROR 5 Conta sem licença ativa.
401 ERROR 6 Autenticação não realizada. Verifique suas credenciais.
422 ERROR 7 Dados inválidos na solicitação -- valide os parâmetros e tente novamente. (Obs: adiciona parâmetro "errors" no retorno indicando os erros encontrados.)
422 ERROR 8 Solicitação não processada. (Obs: parâmetro de retorno "message" informa o problema encontrado.)
422 ERROR 9 Ocorreu um erro desconhecido ao processar a solicitação. Por favor, tente novamente ou contate nosso suporte.
503 UNDER_MAINTENANCE O sistema está passando por manutenção. Tente novamente dentro de alguns instantes.
400 Requisição incorreta -- Valide os parâmetros e tente novamente.
404 Não encontrado -- O endpoint solicitado não foi encontrado.
500 Erro interno do servidor -- tente novamente ou contate nosso suporte.

Histórico de atualizações

Data Evento
02/04/2024 Adicionado serviço para cadastrar/atualizar itens e códigos relacionados nas listas de produtos. Link
01/03/2024 Mudanças relacionadas às listas de produtos. Verifique os serviços de listas de produtos das coletas avulsas e inventários.
17/01/2024 Incluída a opção para envio automático de notificações (configurado através do gerenciador web) Link
13/02/2023 Incluído serviço de códigos relacionados para conferências. Link
01/08/2022 Lançamento V1 API IS Collector