Carregando...
 

API de Integração

Introdução à API v1.0


A Wonder Sistemas disponibiliza uma API REST, com dados no formato JSON, para fins de integração com outros softwares.

Como os serviços estão disponíveis a partir do servidor de cada cliente, os seguintes dados de acesso devem ser obtidos com o administrador do sistema:

- URL do servidor (http ou https, IP e porta)
- Usuário
- Senha

Com isso, é possivel montar a url base para execução dos serviços, no formato:

https://<IP_DO_SERVIDOR>:<PORTA_DO_SERVIDOR>/probusweb/seam/resource/probusrest/<recurso>


A API suporta acesso via http ou https, conforme configuração de cada cliente. Por razões de segurança, recomendamos sempre a utilização de https.


Entre outros recursos, disponibilizamos:

  • Produtos;
  • Imagens de produtos;
  • Estoque de produtos;
  • Grupos de produtos;
  • Categorias de produtos;
  • Cidades;
  • Pedidos;

Como a API está em constante desenvolvimento, novos serviços serão adicionados ao longo do tempo.
É possível acessar a lista de serviços disponíveis, bem como as operações e formatos de dados para cada cliente, no link:


https://<IP_DO_SERVIDOR>:<PORTA_DO_SERVIDOR>/probusweb/api.seam


É necessário estar logado no servidor para ter acesso à definição de serviços. Por favor, obtenha os dados de acesso com o administrador do sistema ou utilize o nosso servidor de teste.

A página de definição dos serviços possui a lista de recursos disponíveis no cliente, bem como a definição de cada método e atributos. Também possui um exemplo de execução do serviço com o retorno, usando curl.

Definição do Serviço
Image

Exemplo
Image


Autenticação dos Serviços


A execução dos serviços requer autenticação via token. A obtenção do token se dá através do serviço de login.

  • Executar o serviço de login com usuário e senha fornecidos por seu administrador para obter o token;
  • Adicionar o token como header "Authorization" na chamada dos serviços autenticados;

Exemplo:

// Executar login para obter o token
curl -k -X POST \ 
-d '{"usuario": "integracao", "password": "integracao"}' \ 
-H "Content-Type: application/json" \ 
https://wonder.com.br:9943/probusweb/seam/resource/probusrest/api/v1/session 

{
  "codigo": "INTEGRACAO",
  "nome": "Integracao",
  "token": "fbf72edf9bc54c3a96793bd147a7645d"
}



// Utilizando o token
curl -k -X GET \-H "accept: application/json" \
-H "authorization: fbf72edf9bc54c3a96793bd147a7645d" \
"https://wonder.com.br:9943/probusweb/seam/resource/probusrest/api/grupos?empresa=200&first=0&max=2" 

[
  {
    "classificacao": "01",
    "codigo": 10,
    "descricao": "Grupo",
    "id": 283
  },
  {
    "classificacao": "01",
    "codigo": 10,
    "descricao": "Grupo",
    "id": 283
  }
]



Paginação e Total de Registros


Os serviços de listagem de dados podem retornar grandes quantidades de registros, por isso definimos os parâmetros para paginação de dados.

São eles:

first: determina o primeiro registro a ser retornado
max: determina a quantidade de registros a serem retornados


Além disso, os serviços retornam o header x-total-count, com o total de registros da consulta.

Exemplo:

curl -i -k -X GET \
-H "accept: application/json" \
-H "authorization: fbf72edf9bc54c3a96793bd147a7645d" \
"https://wonder.com.br:9943/probusweb/seam/resource/probusrest/api/produtos?empresa=201&first=0&max=2" 

HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
X-Powered-By: Servlet 2.5; JBoss-5.0/JBossWeb-2.1
Set-Cookie: JSESSIONID=951A0CED90EB4733EF3C406CBA42917A; Path=/probusweb; Secure
x-total-count: 10
Content-Type: application/json
Transfer-Encoding: chunked
Date: Tue, 19 Jun 2018 20:21:55 GMT

[
  {
    "altura": 0.0,
    "codcategoria": "2",
    "codfabricante": 2,
    "codgrupo": 2,
    "codigo": "4",
    "descricao": "Produto4",
    "descricaocategoria": "Categoria 2",
    "descricaogrupo": "Grupo2",
    "descricaolonga": "Produto4",
    "destaque": "N",
    "id": 2449,
    "idcategoria": 75,
    "idfabricante": 115,
    "idgrupo": 285,
    "largura": 0.0,
    "nomefabricante": "Fabricante 2",
    "permitirestoquenegativo": "N",
    "pesobruto": 0.0,
    "pesoliquido": 0.0,
    "preco": 0.0,
    "profundidade": 0.0,
    "qtddisponivel": 1004
  },
  {
    "altura": 0.0,
    "codcategoria": "2",
    "codfabricante": 2,
    "codgrupo": 2,
    "codigo": "5",
    "descricao": "Produto5",
    "descricaocategoria": "Categoria 2",
    "descricaogrupo": "Grupo2",
    "descricaolonga": "Produto5",
    "destaque": "N",
    "id": 2450,
    "idcategoria": 75,
    "idfabricante": 115,
    "idgrupo": 285,
    "largura": 0.0,
    "nomefabricante": "Fabricante 2",
    "permitirestoquenegativo": "N",
    "pesobruto": 0.0,
    "pesoliquido": 0.0,
    "preco": 0.0,
    "profundidade": 0.0,
    "qtddisponivel": 1005
  }
]


Filtrando recursos modificados após determinada data


Alguns dos serviços aceitam o parâmetro MODIFICADOS_APOS, o qual representa uma data no formato ISO 8601, e retornam todos os registros com data/hora de alteração posterior ao valor do parâmetro. Verifique na documentação de cada serviço se o parâmetro está disponível.



Para Testes


Disponibilizamos um servidor para testes e validação dos serviços.

http://www.wonder.com.br:9999
usuário: integracao
senha: integracao


Especificação dos serviços em teste
HTTP
http://wonder.com.br:9999/probusweb/api.seam
(external link)

HTTPS (recomendado)
https://wonder.com.br:9943/probusweb/api.seam
(external link)


Fechar
Essa URL e credenciais são para uso exclusivo no ambiente de testes.

Para acesso ao servidor de produção de cada cliente, solicite os dados de acesso ao administrador do sistema.