Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Unicode C) Aruba Fatturazione Elettronica Find Invoice by UsernameFinds a list of invoices. Returns invoices without content in base64 (lazy loading) For more information, see https://fatturazioneelettronica.aruba.it/apidoc/docs_EN.html#_findbyusername_2
#include <C_CkHttpW.h> #include <C_CkStringBuilderW.h> #include <C_CkJsonObjectW.h> void ChilkatSample(void) { HCkHttpW http; BOOL success; HCkStringBuilderW sbResponseBody; HCkJsonObjectW jResp; int respStatusCode; const wchar_t *id; const wchar_t *senderDescription; const wchar_t *senderCountryCode; const wchar_t *senderVatCode; const wchar_t *senderFiscalCode; const wchar_t *receiverDescription; const wchar_t *receiverCountryCode; const wchar_t *receiverVatCode; const wchar_t *receiverFiscalCode; const wchar_t *invoiceType; const wchar_t *docType; const wchar_t *file; const wchar_t *filename; const wchar_t *username; const wchar_t *lastUpdate; const wchar_t *creationDate; const wchar_t *idSdi; BOOL pddAvailable; int j; int count_j; const wchar_t *invoiceDate; const wchar_t *number_str; const wchar_t *status; const wchar_t *statusDescription; const wchar_t *errorCode; const wchar_t *errorDescription; BOOL last; int totalElements; int totalPages; int size; int number; BOOL first; int numberOfElements; int i; int count_i; // 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://ws.fatturazioneelettronica.aruba.it/services/invoice/in/findByUsername?username=Username \ // -H "Accept: application/json" \ // -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="); CkHttpW_SetRequestHeader(http,L"Accept",L"application/json"); sbResponseBody = CkStringBuilderW_Create(); success = CkHttpW_QuickGetSb(http,L"https://ws.fatturazioneelettronica.aruba.it/services/invoice/in/findByUsername?username=Username",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) // { // "errorCode": "0000", // "errorDescription": null, // "content": [ // { // "errorCode": null, // "errorDescription": null, // "id": "1", // "sender": { // "description": "Aruba SPA", // "countryCode": "IT", // "vatCode": "22222222", // "fiscalCode": "11111111111" // }, // "receiver": { // "description": "Aruba SPA", // "countryCode": "IT", // "vatCode": "4444444", // "fiscalCode": "333333333" // }, // "invoiceType": "FPR12", // "docType": "in", // "file": null, // "filename": "IT01879020517_jtlk0.xml.p7m", // "invoices": [ // { // "invoiceDate": "2020-07-10T09:19:56.948+02:00", // "number": "2020/0001", // "status": "Inviata", // "statusDescription": "" // } // ], // "username": "Utente", // "lastUpdate": "2020-07-10T07:19:56.948+0000", // "creationDate": "2020-07-10T07:19:56.948+0000", // "idSdi": "11110", // "pddAvailable": true // }, // { // "errorCode": null, // "errorDescription": null, // "id": "2", // "sender": { // "description": "Aruba SPA", // "countryCode": "IT", // "vatCode": "22222222", // "fiscalCode": "11111111111" // }, // "receiver": { // "description": "Aruba SPA", // "countryCode": "IT", // "vatCode": "4444444", // "fiscalCode": "333333333" // }, // "invoiceType": "FPR12", // "docType": "in", // "file": null, // "filename": "IT01879020517_jtlk1.xml.p7m", // "invoices": [ // { // "invoiceDate": "2020-07-10T09:19:56.948+02:00", // "number": "2020/0002", // "status": "Inviata", // "statusDescription": "" // } // ], // "username": "Utente", // "lastUpdate": "2020-07-10T07:19:56.948+0000", // "creationDate": "2020-07-10T07:19:56.948+0000", // "idSdi": "11111", // "pddAvailable": true // }, // { // "errorCode": null, // "errorDescription": null, // "id": "3", // "sender": { // "description": "Aruba SPA", // "countryCode": "IT", // "vatCode": "22222222", // "fiscalCode": "11111111111" // }, // "receiver": { // "description": "Aruba SPA", // "countryCode": "IT", // "vatCode": "4444444", // "fiscalCode": "333333333" // }, // "invoiceType": "FPR12", // "docType": "in", // "file": null, // "filename": "IT01879020517_jtlk2.xml.p7m", // "invoices": [ // { // "invoiceDate": "2020-07-10T09:19:56.948+02:00", // "number": "2020/0003", // "status": "Inviata", // "statusDescription": "" // } // ], // "username": "Utente", // "lastUpdate": "2020-07-10T07:19:56.948+0000", // "creationDate": "2020-07-10T07:19:56.948+0000", // "idSdi": "11112", // "pddAvailable": true // }, // { // "errorCode": null, // "errorDescription": null, // "id": "4", // "sender": { // "description": "Aruba SPA", // "countryCode": "IT", // "vatCode": "22222222", // "fiscalCode": "11111111111" // }, // "receiver": { // "description": "Aruba SPA", // "countryCode": "IT", // "vatCode": "4444444", // "fiscalCode": "333333333" // }, // "invoiceType": "FPR12", // "docType": "in", // "file": null, // "filename": "IT01879020517_jtlk3.xml.p7m", // "invoices": [ // { // "invoiceDate": "2020-07-10T09:19:56.948+02:00", // "number": "2020/0004", // "status": "Inviata", // "statusDescription": "" // } // ], // "username": "Utente", // "lastUpdate": "2020-07-10T07:19:56.948+0000", // "creationDate": "2020-07-10T07:19:56.948+0000", // "idSdi": "11113", // "pddAvailable": true // } // ], // "last": true, // "totalElements": 4, // "totalPages": 1, // "size": 10, // "number": 1, // "first": true, // "numberOfElements": 4 // } // 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. errorCode = CkJsonObjectW_stringOf(jResp,L"errorCode"); errorDescription = CkJsonObjectW_stringOf(jResp,L"errorDescription"); last = CkJsonObjectW_BoolOf(jResp,L"last"); totalElements = CkJsonObjectW_IntOf(jResp,L"totalElements"); totalPages = CkJsonObjectW_IntOf(jResp,L"totalPages"); size = CkJsonObjectW_IntOf(jResp,L"size"); number = CkJsonObjectW_IntOf(jResp,L"number"); first = CkJsonObjectW_BoolOf(jResp,L"first"); numberOfElements = CkJsonObjectW_IntOf(jResp,L"numberOfElements"); i = 0; count_i = CkJsonObjectW_SizeOfArray(jResp,L"content"); while (i < count_i) { CkJsonObjectW_putI(jResp,i); errorCode = CkJsonObjectW_stringOf(jResp,L"content[i].errorCode"); errorDescription = CkJsonObjectW_stringOf(jResp,L"content[i].errorDescription"); id = CkJsonObjectW_stringOf(jResp,L"content[i].id"); senderDescription = CkJsonObjectW_stringOf(jResp,L"content[i].sender.description"); senderCountryCode = CkJsonObjectW_stringOf(jResp,L"content[i].sender.countryCode"); senderVatCode = CkJsonObjectW_stringOf(jResp,L"content[i].sender.vatCode"); senderFiscalCode = CkJsonObjectW_stringOf(jResp,L"content[i].sender.fiscalCode"); receiverDescription = CkJsonObjectW_stringOf(jResp,L"content[i].receiver.description"); receiverCountryCode = CkJsonObjectW_stringOf(jResp,L"content[i].receiver.countryCode"); receiverVatCode = CkJsonObjectW_stringOf(jResp,L"content[i].receiver.vatCode"); receiverFiscalCode = CkJsonObjectW_stringOf(jResp,L"content[i].receiver.fiscalCode"); invoiceType = CkJsonObjectW_stringOf(jResp,L"content[i].invoiceType"); docType = CkJsonObjectW_stringOf(jResp,L"content[i].docType"); file = CkJsonObjectW_stringOf(jResp,L"content[i].file"); filename = CkJsonObjectW_stringOf(jResp,L"content[i].filename"); username = CkJsonObjectW_stringOf(jResp,L"content[i].username"); lastUpdate = CkJsonObjectW_stringOf(jResp,L"content[i].lastUpdate"); creationDate = CkJsonObjectW_stringOf(jResp,L"content[i].creationDate"); idSdi = CkJsonObjectW_stringOf(jResp,L"content[i].idSdi"); pddAvailable = CkJsonObjectW_BoolOf(jResp,L"content[i].pddAvailable"); j = 0; count_j = CkJsonObjectW_SizeOfArray(jResp,L"content[i].invoices"); while (j < count_j) { CkJsonObjectW_putJ(jResp,j); invoiceDate = CkJsonObjectW_stringOf(jResp,L"content[i].invoices[j].invoiceDate"); number_str = CkJsonObjectW_stringOf(jResp,L"content[i].invoices[j].number"); status = CkJsonObjectW_stringOf(jResp,L"content[i].invoices[j].status"); statusDescription = CkJsonObjectW_stringOf(jResp,L"content[i].invoices[j].statusDescription"); j = j + 1; } i = i + 1; } CkHttpW_Dispose(http); CkStringBuilderW_Dispose(sbResponseBody); CkJsonObjectW_Dispose(jResp); } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.