Smart Dealer Client API

Installs: 41

Dependents: 0

Suggesters: 0

Security: 0

Stars: 7

Watchers: 2

Forks: 5

Open Issues: 0

Type:php-library

dev-master 2021-01-21 16:33 UTC

This package is not auto-updated.

Last update: 2025-01-20 00:32:32 UTC


README

Use a tecnologia Smart na sua empresa ou agência

98% de precisão na detecção automática de modelos/versões e compatibilidade de listas

API e documentação de comunicação (for PHP servers) com a plataforma para revendas e concessionárias Smart Dealer.

GPL Licence PHPPackages Rank

Para mais informações, acesse o nosso site.

Direitos reservados à Smart Dealer Soluções em Software Ltda.

Caso necessite de acesso a integração antiga, veja o SD Soap-XML.

Requísitos

  • PHP 5.3 ou superior
  • Extensões do PHP "php_curl" e "php_openssl"
  • Apache 2.2+

Use via composer

composer require smartdealer/sdapi

Autenticação

  # include API class
  include_once 'src/smart/api.php';
  
  # client name OR direct instance URL (prima or prima.smartdealer.com.br)
  $env = 'prima';
  
  # login webservice Rest
  $usr = 'primafiat';    
  
  # password webservice Rest (example)
  $pwd = 'unXEmpkV7ush#';     
  
  # init API
  $api = new Smart\Api($env, $usr, $pwd, array());
  

Acesso direto (url)

https://{usuario}:{chave}@{cliente}.smartdealer.com.br/webservice/rest/connect/offers/?format={formato}&template={template}
  • {usuario} = usuário do ws
  • {chave} = chave do ws
  • {cliente} = nome da instância
  • {formato} = formato do saída em JSON ou XML (vide parâmetros de configuração)
  • {template} = estrutura de campos da saída

Uso em embiente de produção

Será necessário a criação de um login, chave de acesso e a liberação do endereço de IP (servidor onde a API será executada) pela Smart para autenticação no webservice Rest, ambiente de produção.

A solicitação poderá ser feita atravéz deste link: http://bit.ly/2bVryEC

alt tag

Exemplo de uso

  # call method
  $ret = $api->get('/parts/');
  
  # output (Array)
  array(
    0 => array(
      'codigo' => 0001
      'nome'   => 'Parachoque Dianteiro (Palio ELX)',
      'modelo' => 'MCBSA-12',
      'preco'  => 840.00,
      'qtd'    => 10,
      'fab'    => '1 - FIAT' 
    ),
    1 => array(
      'codigo' => 0002
      'nome'   => 'Parachoque Traseiro (Palio ELX/EX)',
      'modelo' => 'MCBSA-15',
      'preco'  => 532.00,
      'qtd'    => 7
      'fab'    => '1 - FIAT' 
    ),
    2 => array(
      'codigo' => 0003
      'nome'   => 'Motor Limpador de Parabrisa (UNO Vivace)',
      'modelo' => 'MCBSA-88',
      'preco'  => 120.00,
      'qtd'    => 2,
      'fab'    => '1 - FIAT' 
    )
  )
  

Dicionário de dados

Tradução dos campos retornados na consulta das ofertas selecionadas do estoque.

Tipos de métodos

GET (leitura de dados)

  
  # reading data list
  $api->get('/route/method');
  
  # reading specific data
  $api->get('/route/method/:id');

POST (envio de dados)

  
  $data = array();
  
  # send data (simple)
  $api->post('/route/method/', $data);
  
  # send data with ID param (if required)
  
  $api->post('/route/method/:id', $data);
  

DELETE (deleção de dados)

  
  $data = array();
  
  # remove data (required ID param) 
  $api->delete('/route/method/:id');
  
Retorno padrão (para uso das rotas HTTP)
{
  "status": 500,
  "errors": [
    "O limite de 1 conta(s) foi atingido. Entre em contato conosco."
  ],
  "response": false
}
Tabela de tradução

Métodos do webservice (configuração)

GET : /config/categories/

Lista as categorias de veículos do estoque (carro, moto, caminhão)

POST : /config/affiliate/

Cadastra um novo cliente/CNPJ no sistema

Filtros

Uso

https://{usuario}:{chave}@{cliente}.smartdealer.com.br/webservice/rest/connect/contracts?param=value
GET : /config/affiliates/

Lista as filiais/lojas do cliente

Métodos do webservice (estoque de peças)

GET : /parts/

Lista o estoque de peças

GET : /parts/providers/

Lista os fabricantes cadastrados

POST : /parts/order/ [array]

Registra ou atualiza a reserva de uma peça (e-commerce)

POST : /parts/notify/ [array]

Registra ou atualiza a lista de notificações, pendências no estoque (e-commerce)

DELETE : /parts/order/:id

Remove a reserva de uma peça

Métodos do webservice (integrador)

GET : /connect/channels/

Lista os canais/portais disponíveis para integração

GET : /connect/codes/

Lista de tradução dos códigos de resposta dos canais de integração.

Breve exemplo, para ver a lista completa faça uma chamada a rota Rest acima.

POST : /connect/contract/

Cria uma configuração de integração (connect)

Filtros

Uso

https://{usuario}:{chave}@{cliente}.smartdealer.com.br/webservice/rest/connect/contracts?param=value
GET : /connect/contracts/

Lista as integrações configuradas (contratos de integração)

POST : /connect/offer/

Cadastra um veículo para publicação em um pacote de ofertas (connect)

Formato das imagens (em base64)

alt tag

POST : /connect/offer/:id

Atualiza uma oferta de veículo no estoque (connect)

A flag :id deverá ser substituída pelo código da oferta, ex: "/connect/offer/1".

Parâmetros da chamada

Formato das imagens (em base64)

alt tag

Importante

O o tipo de estoque "U" para usados e "N" para novos não poderá ser alterado. Neste caso será necessário excluir a oferta e adicionar novamente no pacote (estoque).

GET : /connect/packs/

Lista os pacotes de ofertas disponíveis (connect)

Filtros

Uso

https://{usuario}:{chave}@{cliente}.smartdealer.com.br/webservice/rest/connect/contracts?param=value
GET : /connect/pack/:id

Lista as ofertas de um determinado pacote (connect)

GET : /connect/offers/

Lista todas as ofertas do cliente

DELETE : /connect/offer/:id

Remove a oferta do pacote e do portal (pós sincronização automática)

A flag :id deverá ser substituída pelo código da oferta, ex: "/connect/offer/1".

DELETE : /connect/contract/:id

Remove uma configuração de integração e seus pacotes (contrato)

A flag :id deverá ser substituída pelo código do contrato, ex: "/connect/contract/1".

Parâmetros de configuração

  # the API settings
  $settings = array(
    'handle' => 'curl',
    'timeout' => 10,
    'use_ssl' => false,
    'port' => 80,
    'debug' => false,
    'output_format' => 1,
    'output_compile' => true
  );
  
  # init API (with param settings)
  $api = new Smart\Api($env, $usr, $pwd, $settings);
  
 

handle

Escolha do método/protocolo de conexão com o servidor Restful.

  • String: "curl" (padrão), "socket" e "stream"

timeout

Tempo máximo da resposta do servidor em segundos.

  • Integer: 10 (padrão)

use_ssl

Habilitar esta opção se a conexão exigir SSL.

  • Bool: false (padrão)

port

Número da porta de conexão com servidor Restful.

  • Integer: 80 (padrão)

debug

Para desenvolvedores: se ativa, exibe erros de execução e comunicação com o servidor.

  • Bool: false (padrão)

output_format

Opção de configuração do formato de resposta do servidor ('JSON' = 1, 'XML' = 2).

  • Integer: 1 (padrão)

output_compile

Se desativada, mostra a resposta literal do servidor em XML ou JSON.

  • Bool: true (padrão)

Integração com portais

Fluxo de interação com o webservice Smart via Api na integração com portais automotivos.

alt tag

Atualização regular

@Release 1.6

Nota da versão:

Nenhuma.