This sample uses the PHP builtin cURL library to perform REST calls and authenticates using OAuth 2.0.
#!/usr/bin/php
<?php
$serverURL = "https://api.autorouter.aero/v1.0";
$token = auth();
if ($token === null)
exit;
$cl = curl_init();
curl_setopt($cl, CURLOPT_RETURNTRANSFER, true);
/* uncomment the next line in case you don't have the required SSL certificates */
// curl_setopt($cl, CURLOPT_SSL_VERIFYPEER, false);
/* show the token and add it to our future requests*/
var_dump($token);
curl_setopt($cl, CURLOPT_HTTPHEADER, array("Authorization: Bearer " . $token['access_token']));
/*
* Get the API version
*/
curl_setopt($cl, CURLOPT_URL, "$serverURL/system/version");
$response = curl_exec($cl);
print_r($response);
echo PHP_EOL;
/*
* Get list of aircraft templates
*/
curl_setopt($cl, CURLOPT_URL, "$serverURL/aircraft/templates");
$response = curl_exec($cl);
print_r($response);
curl_close($cl);
/**
* Get an authentication token
*/
function auth()
{
global $serverURL;
$cl = curl_init();
curl_setopt($cl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($cl, CURLOPT_URL, "$serverURL/oauth2/token");
curl_setopt($cl, CURLOPT_POST, true);
/* uncomment this line if you don't have the required SSL certificates */
// curl_setopt($cl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($cl, CURLOPT_POSTFIELDS, array(
"grant_type" => "client_credentials",
"client_id" => "my@email.address",
"client_secret" => "my password"
));
$auth_response = curl_exec($cl);
if ($auth_response === false)
{
echo "Failed to authenticate\n";
var_dump(curl_getinfo($cl));
curl_close($cl);
return NULL;
}
curl_close($cl);
return json_decode($auth_response, true);
}
