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);
?>