Il token può essere rinnovato attraverso una richiesta di refresh che richiede i seguenti parametri in formato application/x-www-form-urlencoded con encoding UTF-8.
curl -X POST https://auth.fatturazioneelettronica.aruba.it/auth/signin \
-H 'Content-Type: application/x-www-form-urlencoded;charset=UTF-8' \
-d 'grant_type=refresh_token' \
-d 'refresh_token=262ac1f88ad1e9e5'
import com.chilkatsoft.*;
public class ChilkatExample {
static {
try {
System.loadLibrary("chilkat");
} catch (UnsatisfiedLinkError e) {
System.err.println("Native code library failed to load.\n" + e);
System.exit(1);
}
}
public static void main(String argv[])
{
CkRest rest = new CkRest();
boolean success;
// URL: https://auth.fatturazioneelettronica.aruba.it/auth/signin
boolean bTls = true;
int port = 443;
boolean bAutoReconnect = true;
success = rest.Connect("auth.fatturazioneelettronica.aruba.it",port,bTls,bAutoReconnect);
if (success != true) {
System.out.println("ConnectFailReason: " + rest.get_ConnectFailReason());
System.out.println(rest.lastErrorText());
return;
}
rest.AddQueryParam("grant_type","refresh_token");
rest.AddQueryParam("refresh_token","262ac1f88ad1e9e5");
String strResponseBody = rest.fullRequestFormUrlEncoded("POST","/auth/signin");
if (rest.get_LastMethodSuccess() != true) {
System.out.println(rest.lastErrorText());
return;
}
int respStatusCode = rest.get_ResponseStatusCode();
if (respStatusCode >= 400) {
System.out.println("Response Status Code = " + respStatusCode);
System.out.println("Response Header:");
System.out.println(rest.responseHeader());
System.out.println("Response Body:");
System.out.println(strResponseBody);
return;
}
CkJsonObject jsonResponse = new CkJsonObject();
jsonResponse.Load(strResponseBody);
// See the Online Tool for Generating JSON Parse Code
String access_token;
String token_type;
int expires_in;
String refresh_token;
String client_id;
String userName;
String Issued;
String Expires;
access_token = jsonResponse.stringOf("access_token");
token_type = jsonResponse.stringOf("token_type");
expires_in = jsonResponse.IntOf("expires_in");
refresh_token = jsonResponse.stringOf("refresh_token");
client_id = jsonResponse.stringOf("client_id");
userName = jsonResponse.stringOf("userName");
Issued = jsonResponse.stringOf("\".issued\"");
Expires = jsonResponse.stringOf("\".expires\"");
}
}
{
"access_token": "571a08cd6275e81e",
"token_type": "bearer",
"expires_in": 1800,
"refresh_token": "111ac1f88ad1efff",
"client_id": "123456",
"userName": "Utente",
".issued": "Mon, 21 Jan 2019 16:36:17 GMT",
".expires": "Mon, 21 Jan 2019 17:06:17 GMT"
}