2017 © Pedro Peláez
 

library egestor-sdk

Sdk para acesso da API do eGestor

image

zipline/egestor-sdk

Sdk para acesso da API do eGestor

  • Friday, August 18, 2017
  • by FelipeFlores
  • Repository
  • 0 Watchers
  • 2 Stars
  • 23 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 2 Versions
  • 21 % Grown

The README.md

eGestor SDK para PHP

SDK para simplificar o acesso da API do eGestor, (*1)

Instalação

Utilize o Composer para instalar:, (*2)

# Instalando o Composer
curl -sS https://getcomposer.org/installer | php

# Instalando o zipline/egestor-sdk como uma dependência do projeto
php composer.phar require zipline/egestor-sdk

Quando o SDK estiver instalado, será necessário carregar o autoloader gerado pelo Composer (arquivo responsável por carregar todos os namespaces )., (*3)

Adicione no seu arquivo:, (*4)

require 'vendor/autoload.php';

Autenticando seu aplicativo

Existem duas formas principais para realizar a autenticação:, (*5)

Código de Acesso

O usuário será redirecionado para a url da sua aplicação com o parâmetro code que deverá ser utilizado para iniciar a autenticação com a API., (*6)

$code = $_GET['code'];

$api = new Zipline\eGestor\API([
  'clientId' => 'id_da_aplicacao',
  'clientSecret' => 'segredo',
  'redirectUri' => 'uri_cadastrada'
]);

$tokens = $api->authByCode($code);

Como resposta a API irá enviar três tokens access_token, refresh_token e personal_token., (*7)

Para os próximos acessos acesso utilize o personal_token para solicitar o conjunto de access_token e refresh_token., (*8)

O SDK possui um método para retornar o link de solicitação de acesso para sua aplicação:, (*9)


$api = new Zipline\eGestor\API([ 'clientId' => 'id_da_aplicacao', 'clientSecret' => 'segredo', 'redirectUri' => 'uri_cadastrada' ]); $url = $api->getAuthUri();

Sempre que o usuário acessar sua aplicação pelo link de redirecionamento, o sistema irá gerar um novo code;, (*10)

Personal Token

Depois de realizada a primeira autenticação é possível utilizar o personalToken recebido para solicitar um novo access_token., (*11)

O personalToken identifica sua aplicação com o usuário do eGestor., (*12)


$api = new Zipline\eGestor\API(['personalToken' => PERSONAL_TOKEN]);

Acessando a API

Depois de feita a autenticação será possível acessar a API. Os métodos acesitos são get, post, put e delete. Sempre que possível o retorno será em formato Array., (*13)

require 'vendor/autoload.php';

$api = new Zipline\eGestor\API(['personalToken' => PERSONAL_TOKEN]);

$contatos = $api->get('contatos');
var_dump($contatos);
// Resposta:
// array(10) {
//   ["total"] => int(1)
//   ["per_page"]=> int(50)
//   ["current_page"]=>  int(1)
//   ["last_page"]=>  int(1)
//   ["next_page_url"]=>  NULL
//   ["prev_page_url"]=>  NULL
//   ["from"]=>   int(1)
//   ["to"]=>  int(50)
//   ["data"]=> array(1) {
//     [0]=> array(8) {
//       ["codigo"] =>  int(1)
//       ["nome"]   =>  string(5) "Paulo"
//       ["tipo"]   =>  array(1) {
//           [0]=>  string(7) "cliente"
//       }
//       ["emails"] =>  array(1) {
//         [0]=> string(17) "paulo@example.com"
//       }
//       ["fones"]  =>  array(0) {}
//       ["cidade"] =>  string(0) ""
//       ["uf"]     =>  string(0) ""
//       ["tags"]   =>  array(1) {
//         [0]=> string(11) "cliente-vip"
//       }
//     }
//   }
//   ["next_page"]=> NULL
// }

O objeto da API permite acessar dados da última requisição:, (*14)


$remaining = $api->getRemaining();//número que requests até atingir o limite $body = $api->getBody();//corpo da resposta sem o parser

Exemplos:, (*15)

require 'vendor/autoload.php';

$api = new Zipline\eGestor\API(['personalToken' => PERSONAL_TOKEN]);

//Novo contato
$contato = $api->post("contatos", [
    'nome' => 'Zipline',
    'tipo' => ['fornecedor']
]);
$codContato = $contato['codigo'];

//Editando
$response = $api->put("contatos/$codContato", [
    'nome' => 'eGestor',
]);

//Removendo
$response = $api->delete("contatos/$codContato");

//Pesquisando
$response = $api->get("contatos", [
    'filtro' => 'eGestor',
]);
require 'vendor/autoload.php';
try {
  $api = new Zipline\eGestor\API(['personalToken' => PERSONAL_TOKEN]);

  $contatos = $api->get("contatos");

  foreach($contato as $contatos['data']) {
    echo $contato['codigo'] . ' - ' . $contato['nome'] . "\n";
  }

} catch(Zipline\Exception\InvalidTokenException $e) {
  echo "Não foi possível autenticar! Motivo:" . $e->getMessage() . "\n";
} catch(Exception $e) {
  echo "Requisição não poder realizada! Motivo:" . $e->getMessage() . "\n";
}


require 'vendor/autoload.php';
try {
  $api = new Zipline\eGestor\API([
  'app_id' => MEU_APP_ID,
  'app_secret' => MEU_APP_SECRET
  'personalToken' => PERSONAL_TOKEN)
  ]);

  $contatos = $api->get("contatos");

  foreach($contato as $contatos['data']) {
    echo $contato['codigo'] . ' - ' . $contato['nome'] . "\n";
  }

} catch(Zipline\Exception\InvalidTokenException $e) {
  echo "Não foi possível autenticar! Motivo:" . $e->getMessage() . "\n";
} catch(Exception $e) {
  echo "Requisição não poder realizada! Motivo:" . $e->getMessage() . "\n";
}


Exceptions

  • Zipline\Exception\InvalidTokenException: credenciais inválidas;

The Versions

18/08 2017

dev-master

9999999-dev

Sdk para acesso da API do eGestor

  Sources   Download

MIT

The Requires

 

The Development Requires

by Avatar Zipline

25/07 2017

1.0.1

1.0.1.0

Sdk para acesso da API do eGestor

  Sources   Download

MIT

The Requires

 

The Development Requires

by Avatar Zipline