Chilkat Online Tools

C++ / easybill REST API / Fetch customer

Back to Collection Items

#include <CkHttp.h>
#include <CkStringBuilder.h>
#include <CkJsonObject.h>

void ChilkatSample(void)
    {
    // This example assumes the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    CkHttp http;
    bool success;

    http.SetRequestHeader("Authorization","{{apiKey}}");
    http.SetRequestHeader("Accept","application/json");

    CkStringBuilder sbResponseBody;
    success = http.QuickGetSb("https://api.easybill.de/rest/v1/customers/:id",sbResponseBody);
    if (success == false) {
        std::cout << http.lastErrorText() << "\r\n";
        return;
    }

    CkJsonObject jResp;
    jResp.LoadSb(sbResponseBody);
    jResp.put_EmitCompact(false);

    std::cout << "Response Body:" << "\r\n";
    std::cout << jResp.emit() << "\r\n";

    int respStatusCode = http.get_LastStatus();
    std::cout << "Response Status Code = " << respStatusCode << "\r\n";
    if (respStatusCode >= 400) {
        std::cout << "Response Header:" << "\r\n";
        std::cout << http.lastHeader() << "\r\n";
        std::cout << "Failed." << "\r\n";
        return;
    }

    // Sample JSON response:
    // (Sample code for parsing the JSON response is shown below)

    // {
    //   "last_name": "<string>",
    //   "company_name": "<string>",
    //   "acquire_options": 2,
    //   "additional_groups_ids": [
    //     "<integer>",
    //     "<integer>"
    //   ],
    //   "bank_account": "<string>",
    //   "bank_account_owner": "<string>",
    //   "bank_bic": "<string>",
    //   "bank_code": "<string>",
    //   "bank_iban": "<string>",
    //   "bank_name": "<string>",
    //   "birth_date": "<date>",
    //   "cash_allowance": "<float>",
    //   "cash_allowance_days": 7,
    //   "cash_discount": "<float>",
    //   "cash_discount_type": "AMOUNT",
    //   "city": "<string>",
    //   "state": "<string>",
    //   "country": "<string>",
    //   "created_at": "<date>",
    //   "updated_at": "<string>",
    //   "delivery_title": "<string>",
    //   "delivery_city": "<string>",
    //   "delivery_state": "<string>",
    //   "delivery_company_name": "<string>",
    //   "delivery_country": "<string>",
    //   "delivery_first_name": "<string>",
    //   "delivery_last_name": "<string>",
    //   "delivery_personal": "<boolean>",
    //   "delivery_salutation": 0,
    //   "delivery_street": "<string>",
    //   "delivery_suffix_1": "<string>",
    //   "delivery_suffix_2": "<string>",
    //   "delivery_zip_code": "<string>",
    //   "display_name": "<string>",
    //   "emails": [
    //     "<string>",
    //     "<string>"
    //   ],
    //   "fax": "<string>",
    //   "first_name": "<string>",
    //   "grace_period": "<integer>",
    //   "due_in_days": "<integer>",
    //   "group_id": "<integer>",
    //   "id": "<long>",
    //   "info_1": "<string>",
    //   "info_2": "<string>",
    //   "internet": "<string>",
    //   "login_id": "<long>",
    //   "mobile": "<string>",
    //   "note": "<string>",
    //   "number": "<string>",
    //   "payment_options": 5,
    //   "personal": false,
    //   "phone_1": "<string>",
    //   "phone_2": "<string>",
    //   "postbox": "<string>",
    //   "postbox_city": "<string>",
    //   "postbox_state": "<string>",
    //   "postbox_country": "<string>",
    //   "postbox_zip_code": "<string>",
    //   "sale_price_level": "SALEPRICE10",
    //   "salutation": 0,
    //   "sepa_agreement": "BASIC",
    //   "sepa_agreement_date": "<date>",
    //   "sepa_mandate_reference": "<string>",
    //   "since_date": "<date>",
    //   "street": "<string>",
    //   "suffix_1": "<string>",
    //   "suffix_2": "<string>",
    //   "tax_number": "<string>",
    //   "court": "<string>",
    //   "court_registry_number": "<string>",
    //   "tax_options": "nStbUstID",
    //   "title": "<string>",
    //   "archived": "<boolean>",
    //   "vat_identifier": "<string>",
    //   "zip_code": "<string>",
    //   "document_pdf_type": "default",
    //   "buyer_reference": "<string>",
    //   "foreign_supplier_number": "<string>"
    // }

    // Sample code for parsing the JSON response...
    // Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code

    // Chilkat functions returning "const char *" return a pointer to temporary internal memory owned and managed by Chilkat.

    const char *strVal = 0;

    const char *last_name = jResp.stringOf("last_name");
    const char *company_name = jResp.stringOf("company_name");
    int acquire_options = jResp.IntOf("acquire_options");
    const char *bank_account = jResp.stringOf("bank_account");
    const char *bank_account_owner = jResp.stringOf("bank_account_owner");
    const char *bank_bic = jResp.stringOf("bank_bic");
    const char *bank_code = jResp.stringOf("bank_code");
    const char *bank_iban = jResp.stringOf("bank_iban");
    const char *bank_name = jResp.stringOf("bank_name");
    const char *birth_date = jResp.stringOf("birth_date");
    const char *cash_allowance = jResp.stringOf("cash_allowance");
    int cash_allowance_days = jResp.IntOf("cash_allowance_days");
    const char *cash_discount = jResp.stringOf("cash_discount");
    const char *cash_discount_type = jResp.stringOf("cash_discount_type");
    const char *city = jResp.stringOf("city");
    const char *state = jResp.stringOf("state");
    const char *country = jResp.stringOf("country");
    const char *created_at = jResp.stringOf("created_at");
    const char *updated_at = jResp.stringOf("updated_at");
    const char *delivery_title = jResp.stringOf("delivery_title");
    const char *delivery_city = jResp.stringOf("delivery_city");
    const char *delivery_state = jResp.stringOf("delivery_state");
    const char *delivery_company_name = jResp.stringOf("delivery_company_name");
    const char *delivery_country = jResp.stringOf("delivery_country");
    const char *delivery_first_name = jResp.stringOf("delivery_first_name");
    const char *delivery_last_name = jResp.stringOf("delivery_last_name");
    const char *delivery_personal = jResp.stringOf("delivery_personal");
    int delivery_salutation = jResp.IntOf("delivery_salutation");
    const char *delivery_street = jResp.stringOf("delivery_street");
    const char *delivery_suffix_1 = jResp.stringOf("delivery_suffix_1");
    const char *delivery_suffix_2 = jResp.stringOf("delivery_suffix_2");
    const char *delivery_zip_code = jResp.stringOf("delivery_zip_code");
    const char *display_name = jResp.stringOf("display_name");
    const char *fax = jResp.stringOf("fax");
    const char *first_name = jResp.stringOf("first_name");
    const char *grace_period = jResp.stringOf("grace_period");
    const char *due_in_days = jResp.stringOf("due_in_days");
    const char *group_id = jResp.stringOf("group_id");
    const char *id = jResp.stringOf("id");
    const char *info_1 = jResp.stringOf("info_1");
    const char *info_2 = jResp.stringOf("info_2");
    const char *internet = jResp.stringOf("internet");
    const char *login_id = jResp.stringOf("login_id");
    const char *mobile = jResp.stringOf("mobile");
    const char *note = jResp.stringOf("note");
    const char *v_number = jResp.stringOf("number");
    int payment_options = jResp.IntOf("payment_options");
    bool personal = jResp.BoolOf("personal");
    const char *phone_1 = jResp.stringOf("phone_1");
    const char *phone_2 = jResp.stringOf("phone_2");
    const char *postbox = jResp.stringOf("postbox");
    const char *postbox_city = jResp.stringOf("postbox_city");
    const char *postbox_state = jResp.stringOf("postbox_state");
    const char *postbox_country = jResp.stringOf("postbox_country");
    const char *postbox_zip_code = jResp.stringOf("postbox_zip_code");
    const char *sale_price_level = jResp.stringOf("sale_price_level");
    int salutation = jResp.IntOf("salutation");
    const char *sepa_agreement = jResp.stringOf("sepa_agreement");
    const char *sepa_agreement_date = jResp.stringOf("sepa_agreement_date");
    const char *sepa_mandate_reference = jResp.stringOf("sepa_mandate_reference");
    const char *since_date = jResp.stringOf("since_date");
    const char *street = jResp.stringOf("street");
    const char *suffix_1 = jResp.stringOf("suffix_1");
    const char *suffix_2 = jResp.stringOf("suffix_2");
    const char *tax_number = jResp.stringOf("tax_number");
    const char *court = jResp.stringOf("court");
    const char *court_registry_number = jResp.stringOf("court_registry_number");
    const char *tax_options = jResp.stringOf("tax_options");
    const char *title = jResp.stringOf("title");
    const char *archived = jResp.stringOf("archived");
    const char *vat_identifier = jResp.stringOf("vat_identifier");
    const char *zip_code = jResp.stringOf("zip_code");
    const char *document_pdf_type = jResp.stringOf("document_pdf_type");
    const char *buyer_reference = jResp.stringOf("buyer_reference");
    const char *foreign_supplier_number = jResp.stringOf("foreign_supplier_number");
    int i = 0;
    int count_i = jResp.SizeOfArray("additional_groups_ids");
    while (i < count_i) {
        jResp.put_I(i);
        strVal = jResp.stringOf("additional_groups_ids[i]");
        i = i + 1;
    }

    i = 0;
    count_i = jResp.SizeOfArray("emails");
    while (i < count_i) {
        jResp.put_I(i);
        strVal = jResp.stringOf("emails[i]");
        i = i + 1;
    }
    }

Curl Command

curl -X GET
	-H "Authorization: {{apiKey}}"
	-H "Accept: application/json"
https://api.easybill.de/rest/v1/customers/:id

Postman Collection Item JSON

{
  "name": "Fetch customer",
  "request": {
    "method": "GET",
    "header": [
      {
        "key": "Accept",
        "value": "application/json"
      }
    ],
    "url": {
      "raw": "{{baseUrl}}/customers/:id",
      "host": [
        "{{baseUrl}}"
      ],
      "path": [
        "customers",
        ":id"
      ],
      "variable": [
        {
          "key": "id",
          "value": "<long>",
          "description": "(Required) ID of customer that needs to be fetched"
        }
      ]
    }
  },
  "response": [
    {
      "name": "Successful operation",
      "originalRequest": {
        "method": "GET",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          },
          {
            "description": "Added as a part of security scheme: apikey",
            "key": "Authorization",
            "value": "<API Key>"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/customers/:id",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "customers",
            ":id"
          ],
          "variable": [
            {
              "key": "id"
            }
          ]
        }
      },
      "status": "OK",
      "code": 200,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n  \"last_name\": \"<string>\",\n  \"company_name\": \"<string>\",\n  \"acquire_options\": 2,\n  \"additional_groups_ids\": [\n    \"<integer>\",\n    \"<integer>\"\n  ],\n  \"bank_account\": \"<string>\",\n  \"bank_account_owner\": \"<string>\",\n  \"bank_bic\": \"<string>\",\n  \"bank_code\": \"<string>\",\n  \"bank_iban\": \"<string>\",\n  \"bank_name\": \"<string>\",\n  \"birth_date\": \"<date>\",\n  \"cash_allowance\": \"<float>\",\n  \"cash_allowance_days\": 7,\n  \"cash_discount\": \"<float>\",\n  \"cash_discount_type\": \"AMOUNT\",\n  \"city\": \"<string>\",\n  \"state\": \"<string>\",\n  \"country\": \"<string>\",\n  \"created_at\": \"<date>\",\n  \"updated_at\": \"<string>\",\n  \"delivery_title\": \"<string>\",\n  \"delivery_city\": \"<string>\",\n  \"delivery_state\": \"<string>\",\n  \"delivery_company_name\": \"<string>\",\n  \"delivery_country\": \"<string>\",\n  \"delivery_first_name\": \"<string>\",\n  \"delivery_last_name\": \"<string>\",\n  \"delivery_personal\": \"<boolean>\",\n  \"delivery_salutation\": 0,\n  \"delivery_street\": \"<string>\",\n  \"delivery_suffix_1\": \"<string>\",\n  \"delivery_suffix_2\": \"<string>\",\n  \"delivery_zip_code\": \"<string>\",\n  \"display_name\": \"<string>\",\n  \"emails\": [\n    \"<string>\",\n    \"<string>\"\n  ],\n  \"fax\": \"<string>\",\n  \"first_name\": \"<string>\",\n  \"grace_period\": \"<integer>\",\n  \"due_in_days\": \"<integer>\",\n  \"group_id\": \"<integer>\",\n  \"id\": \"<long>\",\n  \"info_1\": \"<string>\",\n  \"info_2\": \"<string>\",\n  \"internet\": \"<string>\",\n  \"login_id\": \"<long>\",\n  \"mobile\": \"<string>\",\n  \"note\": \"<string>\",\n  \"number\": \"<string>\",\n  \"payment_options\": 5,\n  \"personal\": false,\n  \"phone_1\": \"<string>\",\n  \"phone_2\": \"<string>\",\n  \"postbox\": \"<string>\",\n  \"postbox_city\": \"<string>\",\n  \"postbox_state\": \"<string>\",\n  \"postbox_country\": \"<string>\",\n  \"postbox_zip_code\": \"<string>\",\n  \"sale_price_level\": \"SALEPRICE10\",\n  \"salutation\": 0,\n  \"sepa_agreement\": \"BASIC\",\n  \"sepa_agreement_date\": \"<date>\",\n  \"sepa_mandate_reference\": \"<string>\",\n  \"since_date\": \"<date>\",\n  \"street\": \"<string>\",\n  \"suffix_1\": \"<string>\",\n  \"suffix_2\": \"<string>\",\n  \"tax_number\": \"<string>\",\n  \"court\": \"<string>\",\n  \"court_registry_number\": \"<string>\",\n  \"tax_options\": \"nStbUstID\",\n  \"title\": \"<string>\",\n  \"archived\": \"<boolean>\",\n  \"vat_identifier\": \"<string>\",\n  \"zip_code\": \"<string>\",\n  \"document_pdf_type\": \"default\",\n  \"buyer_reference\": \"<string>\",\n  \"foreign_supplier_number\": \"<string>\"\n}"
    },
    {
      "name": "Not found",
      "originalRequest": {
        "method": "GET",
        "header": [
          {
            "description": "Added as a part of security scheme: apikey",
            "key": "Authorization",
            "value": "<API Key>"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/customers/:id",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "customers",
            ":id"
          ],
          "variable": [
            {
              "key": "id"
            }
          ]
        }
      },
      "status": "Not Found",
      "code": 404,
      "_postman_previewlanguage": "text",
      "header": [
      ],
      "cookie": [
      ],
      "body": ""
    },
    {
      "name": "Too Many Requests",
      "originalRequest": {
        "method": "GET",
        "header": [
          {
            "description": "Added as a part of security scheme: apikey",
            "key": "Authorization",
            "value": "<API Key>"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/customers/:id",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "customers",
            ":id"
          ],
          "variable": [
            {
              "key": "id"
            }
          ]
        }
      },
      "status": "Too Many Requests",
      "code": 429,
      "_postman_previewlanguage": "text",
      "header": [
      ],
      "cookie": [
      ],
      "body": ""
    }
  ]
}