Linguagem de programação#

Esta API, por ser inteiramente disponibilizada via HTTP, é independente de linguagens de programação. Logo, pode-se usar a biblioteca HTTP/REST preferida de acordo com sua linguagem de programação para fazer as chamadas à API. Listamos a seguir algumas recomendações de bibliotecas para algumas linguagens de programação populares.

Python#

A biblioteca HTTP Requests é recomendada. É simples, elegante e ainda assim muito poderosa. Para instalá-la você simplesmente executaria o comando abaixo:

pip install requests
  • Você também pode precisar de uma classe MultiDict para representar solicitações HTTP com vários valores por chave. Recomendamos o MultiDict do WebOb, mas Werkzeug/Flask também oferece esta classe.

Recomendamos também a biblioteca Potion-client.

Ruby#

Para o uso do Ruby recomendamos o rest-client que é uma das bibliotecas REST HTTP mais lindas. Está disponível com o uso do gem, então para instalá-la basta executar o comando:

gem install rest-client

Java#

Confira o uso do cliente jersey REST client, se for utilizar Java. Esses 3 .jar são tudo que você precisa instalar para começar a usar a API:

  • jersey-client.jar (version = 1.17 - 1.18.1)

  • jersey-core.jar (version = 1.17 - 1.18.1)

  • jersey-multipart.jar (version = 1.17 - 1.18.1)

C##

Para desenvolvedores C#, basta usar o RestSharp. O .NET padrão facilita a realização de solicitações HTTP.

No entanto, se você estiver usando mono, provavelmente precisará permitir que ele realize solicitações HTTP para sites externos primeiro. A maneira mais fácil de fazer isso seria, provavelmente, instalando certificados Mozilla, assim:

mozroots --import --sync

PHP#

Instalação da biblioteca Guzzle para HTTP:

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

# Add Guzzle as a dependency
php composer.phar require guzzle/guzzle:~3.7

Exemplo script cliente que realiza uma busca em Diários Oficiais:

<?php

require 'vendor/autoload.php';
use Guzzle\Http\Client;

// Create a client and provide a base URL
$client = new Client('https://op.digesto.com.br');

// Create a tweet using POST
$request = $client->post('/api/admin/user_company', array('content-type' => 'application/json'),
    '{
        "name": "Nova empresa"
    }'
);

$request->setAuth('<seu Token>', '');
echo $request->getUrl();
echo $request;

// You must send a request in order for the transfer to occur
$response = $request->send();

// echo $response->getBody();

$data = $response->json();
var_dump($data);

?>