Unicode C
Unicode C
Aruba Fatturazione Elettronica userinfo
See more Aruba Fatturazione Examples
This method lets you retrieve user information relating to the authentication token.Chilkat Unicode C Downloads
#include <C_CkHttpW.h>
#include <C_CkStringBuilderW.h>
#include <C_CkJsonObjectW.h>
void ChilkatSample(void)
{
BOOL success;
HCkHttpW http;
HCkStringBuilderW sbResponseBody;
HCkJsonObjectW jResp;
int respStatusCode;
const wchar_t *username;
const wchar_t *pec;
const wchar_t *userDescription;
const wchar_t *countryCode;
const wchar_t *vatCode;
const wchar_t *fiscalCode;
BOOL accountStatusExpired;
const wchar_t *accountStatusExpirationDate;
int usageStatusUsedSpaceKB;
int usageStatusMaxSpaceKB;
success = FALSE;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
http = CkHttpW_Create();
// Implements the following CURL command:
// curl -X GET https://auth.fatturazioneelettronica.aruba.it/auth/userInfo \
// -H "Authorization: Bearer NLOGDVXLVaF3tzmnVPkTwpkuh7dG0i09uSCcog3u+rE="
// Use the following online tool to generate HTTP code from a CURL command
// Convert a cURL Command to HTTP Source Code
// Adds the "Authorization: Bearer NLOGDVXLVaF3tzmnVPkTwpkuh7dG0i09uSCcog3u+rE=" header.
CkHttpW_putAuthToken(http,L"NLOGDVXLVaF3tzmnVPkTwpkuh7dG0i09uSCcog3u+rE=");
sbResponseBody = CkStringBuilderW_Create();
success = CkHttpW_QuickGetSb(http,L"https://auth.fatturazioneelettronica.aruba.it/auth/userInfo",sbResponseBody);
if (success == FALSE) {
wprintf(L"%s\n",CkHttpW_lastErrorText(http));
CkHttpW_Dispose(http);
CkStringBuilderW_Dispose(sbResponseBody);
return;
}
jResp = CkJsonObjectW_Create();
CkJsonObjectW_LoadSb(jResp,sbResponseBody);
CkJsonObjectW_putEmitCompact(jResp,FALSE);
wprintf(L"Response Body:\n");
wprintf(L"%s\n",CkJsonObjectW_emit(jResp));
respStatusCode = CkHttpW_getLastStatus(http);
wprintf(L"Response Status Code = %d\n",respStatusCode);
if (respStatusCode >= 400) {
wprintf(L"Response Header:\n");
wprintf(L"%s\n",CkHttpW_lastHeader(http));
wprintf(L"Failed.\n");
CkHttpW_Dispose(http);
CkStringBuilderW_Dispose(sbResponseBody);
CkJsonObjectW_Dispose(jResp);
return;
}
// Sample JSON response:
// (Sample code for parsing the JSON response is shown below)
// {
// "username": "ARUBA0000",
// "pec": "pec@pec.it",
// "userDescription": "Aruba PEC S.p.A.",
// "countryCode": "IT",
// "vatCode": "01879020517",
// "fiscalCode": "01879020517",
// "accountStatus": {
// "expired": false,
// "expirationDate": "2020-10-10"
// },
// "usageStatus": {
// "usedSpaceKB": 262144,
// "maxSpaceKB": 1048576
// }
// }
// Sample code for parsing the JSON response...
// Use the following online tool to generate parsing code from sample JSON:
// Generate Parsing Code from JSON
// Chilkat functions returning "const char *" return a pointer to temporary internal memory owned and managed by Chilkat.
// See this example explaining how this memory should be used: const char * functions.
username = CkJsonObjectW_stringOf(jResp,L"username");
pec = CkJsonObjectW_stringOf(jResp,L"pec");
userDescription = CkJsonObjectW_stringOf(jResp,L"userDescription");
countryCode = CkJsonObjectW_stringOf(jResp,L"countryCode");
vatCode = CkJsonObjectW_stringOf(jResp,L"vatCode");
fiscalCode = CkJsonObjectW_stringOf(jResp,L"fiscalCode");
accountStatusExpired = CkJsonObjectW_BoolOf(jResp,L"accountStatus.expired");
accountStatusExpirationDate = CkJsonObjectW_stringOf(jResp,L"accountStatus.expirationDate");
usageStatusUsedSpaceKB = CkJsonObjectW_IntOf(jResp,L"usageStatus.usedSpaceKB");
usageStatusMaxSpaceKB = CkJsonObjectW_IntOf(jResp,L"usageStatus.maxSpaceKB");
CkHttpW_Dispose(http);
CkStringBuilderW_Dispose(sbResponseBody);
CkJsonObjectW_Dispose(jResp);
}