2017 © Pedro Peláez
 

library olx-api-client

Client library for Olx API using OAuth2

image

olxbr/olx-api-client

Client library for Olx API using OAuth2

  • Wednesday, September 30, 2015
  • by olx-br
  • Repository
  • 13 Watchers
  • 35 Stars
  • 287 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 16 Forks
  • 0 Open issues
  • 4 Versions
  • 4 % Grown

The README.md

Build Status Coverage Status Latest Stable Version License, (*1)

Olx Oauth API

Este documento descreve como utilizar o protocolo oAuth 2.0 como forma de autenticação na API olx.com.br através de uma aplicação web., (*2)

OAuth 2.0 é um protocolo relativamente simples. No início, você registra sua aplicação no olx.com.br, depois a aplicação solicita uma chave de acesso ao servidor de autenticação do olx.com.br e então utiliza essa chave para receber as informações de um recurso da API olx.com.br que deseja acessar., (*3)

Primeiro passo

Quer integrar com a OLX? Envie um e-mail para integracao@olxbr.com, (*4)

Criando uma aplicação

Antes de iniciar o protocolo de autenticação com o servidor olx.com.br, o cliente deverá registrar sua aplicação, fornecendo os seguintes dados:, (*5)

  • Nome do cliente
  • Nome da aplicação
  • Descrição da aplicação
  • Website
  • Telefone
  • E-mail
  • URIs de redirecionamento (identifica um end-point do cliente que será alvo de redirecionamento no processo de autenticação; mínimo 1 e máximo 3; ver seção 2.1)

Após receber os dados, o olx.com.br entrará em contato com o cliente para fornecer sua identificação client_id e sua chave de segurança, necessários para iniciar a sequência de autorização., (*6)

Instalação via composer

$ composer require olxbr/olx-api-client

Instalação manual

Recomendamos fortemente o uso de composer para que você possa sempre ter a versão mais nova de nossa classe sempre que executar o composer update., (*7)

Baixe as duas classes que estão em src e faça a include delas em seu projeto manualmente., (*8)

Exemplo completo de uso da API

O exemplo que segue irá exibir os dados de um usuário que autorizou a autenticação via oauth e está utilizando o autoload do composer., (*9)

Crie um arquivo de configuração em sua aplicação com os dados recebidos pela olx.com.br para uso de nossa api:, (*10)

olx_oauth_secrets.json

Todas as informações que seguem devem ser específicas para o seu projeto, elas são informadas pela Olx. A redirect_uri deve ser a mesma que você cadastrou em nosso sistema, do contrário não conseguirá utilizar a API., (*11)

{
    "client_id":"4414d3003b0794ba3dfc8da29493c8497cf352e7",
    "client_secret": "ed63d0a437cd6f9db6299ffe779bca81",
    "scope":"basic_user_info autoupload",
    "redirect_uri":"http://www.suapagina.com.br/return_page.php"
}

Insira o código que segue na página onde irá exibir as consultas a api da Olx, neste exemplo utilizamos o index.php na raiz do projeto. Lembre-se de colocar o caminho correto para o arquivo json ao instanciar a classe client., (*12)

index.php

<?php
use OlxApiClient\Client;
require 'vendor/autoload.php';
session_start();

$client = new Client('olx_oauth_secrets.json');
if (isset($_SESSION['olx_access_token'])) {
    $dadosUsuario = $client->call('basic_user_info', json_encode(array(
        'access_token' => $_SESSION['olx_access_token']
    )));
    echo '

Dados do Usuario

'; var_dump(json_decode($dadosUsuario['body'])); } else { echo '<a href="'.$client->createAuthUrl().'">Autentica</a>'; }

Se o usuário conceder a permissão solicitada o servidor de autenticação gera um código de autorização e envia-o para o cliente através dos seguintes parâmetros na URI de redirecionamento:, (*13)

Parâmetro Valores Descrição
code (obrigatório) Código de autorização gerado pelo servidor de autenticação. Código de autorização utilizado para solicitar permissão de acesso a recursos de um usuário. Expira 10 minutos após ter sido gerado e não pode ser reutilizado.
state (obrigatório se esteve presente na requisição) Mesmo valor enviado pelo cliente na requisição Fornece qualquer valor que pode ser útil a aplicação ao receber a resposta de requisição.

return_page.php

<?php
use OlxApiClient\Client;
require 'vendor/autoload.php';
session_start();

$client = new Client('olx_oauth_secrets.json');

if (!isset($_GET['code'])) {
    echo '<a href = '.$client->createAuthUrl().'>Autentica</a>';
} else {
    $_SESSION['olx_access_token'] = $client->authenticate($_GET['code']);
    header('Location: http://'.$_SERVER['HTTP_HOST'].'/');
}

A return_page.php, após receber por GET a variável code, irá concluir a autenticação do usuário por oauth e retornar o token, este token você deve armazenar em sua aplicação associado ao usuário para utilizá-lo sempre que necessitar usar a nossa api., (*14)

The Versions

30/09 2015

dev-master

9999999-dev

Client library for Olx API using OAuth2

  Sources   Download

MIT

The Requires

  • ext-curl *

 

The Development Requires

api oauth olx bomnegocio

08/09 2015

v0.1.2

0.1.2.0

Client library for Olx API using OAuth2

  Sources   Download

MIT

The Requires

  • ext-curl *

 

The Development Requires

api oauth olx bomnegocio

05/09 2015

v0.1.1

0.1.1.0

Client library for Olx API using OAuth2

  Sources   Download

MIT

The Requires

  • ext-curl *

 

The Development Requires

api oauth olx bomnegocio

25/08 2015

v0.1

0.1.0.0

Client library for Olx API using OAuth2

  Sources   Download

The Requires

  • ext-curl *

 

The Development Requires