![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(C++) Datev - Get a List of ClientsSee more Datev ExamplesDemonstrates how to get a list of clients in the accounting:clients Datev API.Note: This example requires Chilkat v10.1.3 or greater. For more information, see https://developer.datev.de/en/product-detail/accounting-clients/2.0/reference/reference-api-overview/accountingclients/clients-get
#include <CkHttp.h> #include <CkJsonObject.h> #include <CkHttpResponse.h> #include <CkJsonArray.h> void ChilkatSample(void) { CkHttp http; bool success; // Implements the following CURL command: // curl --request GET \ // --url "https://accounting-clients.api.datev.de/platform/v2/clients?filter=REPLACE_THIS_VALUE&skip=REPLACE_THIS_VALUE&top=REPLACE_THIS_VALUE" \ // --header "Authorization: Bearer REPLACE_BEARER_TOKEN" \ // --header "X-Datev-Client-ID: clientId" \ // --header "accept: application/json;charset=utf-8" // Use the following online tool to generate HTTP code from a CURL command // Convert a cURL Command to HTTP Source Code CkJsonObject queryParams; // ignore = queryParams.UpdateString("filter","REPLACE_THIS_VALUE"); // ignore = queryParams.UpdateString("skip","REPLACE_THIS_VALUE"); // ignore = queryParams.UpdateString("top","REPLACE_THIS_VALUE"); // Adds the "Authorization: Bearer REPLACE_BEARER_TOKEN" header. http.put_AuthToken("REPLACE_BEARER_TOKEN"); http.SetRequestHeader("accept","application/json;charset=utf-8"); http.SetRequestHeader("X-Datev-Client-ID","DATEV_CLIENT_ID"); CkHttpResponse *resp = http.QuickRequestParams("GET","https://accounting-clients.api.datev.de/platform-sandbox/v2/clients",queryParams); if (http.get_LastMethodSuccess() == false) { std::cout << http.lastErrorText() << "\r\n"; return; } std::cout << resp->get_StatusCode() << "\r\n"; std::cout << resp->bodyStr() << "\r\n"; CkJsonArray jarr; // Insert code here to load the above JSON array into the jarr object. jarr.Load(resp->bodyStr()); delete resp; CkJsonObject *json = 0; int client_number; int consultant_number; const char *id = 0; const char *name = 0; int j; int count_j; int k; int count_k; const char *strVal = 0; int i = 0; int count_i = jarr.get_Size(); while (i < count_i) { json = jarr.ObjectAt(i); client_number = json->IntOf("client_number"); consultant_number = json->IntOf("consultant_number"); id = json->stringOf("id"); name = json->stringOf("name"); j = 0; count_j = json->SizeOfArray("services"); while (j < count_j) { json->put_J(j); name = json->stringOf("services[j].name"); k = 0; count_k = json->SizeOfArray("services[j].scopes"); while (k < count_k) { json->put_K(k); strVal = json->stringOf("services[j].scopes[k]"); k = k + 1; } j = j + 1; } delete json; i = i + 1; } } |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.