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;
// Adds the "Authorization: Bearer <access_token>" header.
http.put_AuthToken("<access_token>");
http.SetRequestHeader("Content-Type","application/json");
CkStringBuilder sbResponseBody;
success = http.QuickGetSb("https://api.freshbooks.com/accounting/account/{{accountId}}/systems/systems/{{businessId}}",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)
// {
// "response": {
// "result": {
// "system": {
// "accountid": "wkMd2g",
// "active": true,
// "auto_bill": 5,
// "billing_status": "uptodate",
// "bus_phone": "",
// "business_type": null,
// "business_uuid": null,
// "city": "",
// "code": "",
// "country": "Canada",
// "currency_code": "USD",
// "date": "2019-04-18 09:14:53",
// "discountid": null,
// "dst": true,
// "duration": 12,
// "email": "api.freshbooks@gmail.com",
// "fax": "",
// "gst_amount": {
// "amount": "0.00",
// "code": "USD"
// },
// "heard_about_us_via": null,
// "id": 4236410,
// "info_email": "api.freshbooks@gmail.com",
// "ip": "62.205.194.4",
// "landing_url": null,
// "masterlock_billing": true,
// "migrated_to_smux_at": null,
// "mob_phone": "",
// "modern_system": true,
// "name": "Postman Sandbox",
// "num_clients": null,
// "num_staff": null,
// "payment_amount": {
// "amount": "0.00",
// "code": "USD"
// },
// "payment_frequency": 1,
// "province": "",
// "referralid": "multibiz",
// "referring_url": null,
// "salutation": null,
// "size_limit": null,
// "split_token": null,
// "street": "",
// "street2": null,
// "systemid": 4236410,
// "test_system": false,
// "timezone": "UTC",
// "timezoneid": 14,
// "vat_name": null,
// "vat_number": null
// }
// }
// }
// }
// 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 *Accountid = jResp.stringOf("response.result.system.accountid");
bool Active = jResp.BoolOf("response.result.system.active");
int Auto_bill = jResp.IntOf("response.result.system.auto_bill");
const char *Billing_status = jResp.stringOf("response.result.system.billing_status");
const char *Bus_phone = jResp.stringOf("response.result.system.bus_phone");
const char *Business_type = jResp.stringOf("response.result.system.business_type");
const char *Business_uuid = jResp.stringOf("response.result.system.business_uuid");
const char *City = jResp.stringOf("response.result.system.city");
const char *Code = jResp.stringOf("response.result.system.code");
const char *Country = jResp.stringOf("response.result.system.country");
const char *Currency_code = jResp.stringOf("response.result.system.currency_code");
const char *Date = jResp.stringOf("response.result.system.date");
const char *Discountid = jResp.stringOf("response.result.system.discountid");
bool Dst = jResp.BoolOf("response.result.system.dst");
int Duration = jResp.IntOf("response.result.system.duration");
const char *v_Email = jResp.stringOf("response.result.system.email");
const char *Fax = jResp.stringOf("response.result.system.fax");
const char *Amount = jResp.stringOf("response.result.system.gst_amount.amount");
const char *Gst_amountCode = jResp.stringOf("response.result.system.gst_amount.code");
const char *Heard_about_us_via = jResp.stringOf("response.result.system.heard_about_us_via");
int Id = jResp.IntOf("response.result.system.id");
const char *Info_email = jResp.stringOf("response.result.system.info_email");
const char *Ip = jResp.stringOf("response.result.system.ip");
const char *Landing_url = jResp.stringOf("response.result.system.landing_url");
bool Masterlock_billing = jResp.BoolOf("response.result.system.masterlock_billing");
const char *Migrated_to_smux_at = jResp.stringOf("response.result.system.migrated_to_smux_at");
const char *Mob_phone = jResp.stringOf("response.result.system.mob_phone");
bool Modern_system = jResp.BoolOf("response.result.system.modern_system");
const char *Name = jResp.stringOf("response.result.system.name");
const char *Num_clients = jResp.stringOf("response.result.system.num_clients");
const char *Num_staff = jResp.stringOf("response.result.system.num_staff");
const char *Payment_amountAmount = jResp.stringOf("response.result.system.payment_amount.amount");
const char *Payment_amountCode = jResp.stringOf("response.result.system.payment_amount.code");
int Payment_frequency = jResp.IntOf("response.result.system.payment_frequency");
const char *Province = jResp.stringOf("response.result.system.province");
const char *Referralid = jResp.stringOf("response.result.system.referralid");
const char *Referring_url = jResp.stringOf("response.result.system.referring_url");
const char *Salutation = jResp.stringOf("response.result.system.salutation");
const char *Size_limit = jResp.stringOf("response.result.system.size_limit");
const char *Split_token = jResp.stringOf("response.result.system.split_token");
const char *Street = jResp.stringOf("response.result.system.street");
const char *Street2 = jResp.stringOf("response.result.system.street2");
int Systemid = jResp.IntOf("response.result.system.systemid");
bool Test_system = jResp.BoolOf("response.result.system.test_system");
const char *Timezone = jResp.stringOf("response.result.system.timezone");
int Timezoneid = jResp.IntOf("response.result.system.timezoneid");
const char *Vat_name = jResp.stringOf("response.result.system.vat_name");
const char *Vat_number = jResp.stringOf("response.result.system.vat_number");
}
Curl Command
curl -X GET
-H "Authorization: Bearer <access_token>"
-H "Content-Type: application/json"
https://api.freshbooks.com/accounting/account/{{accountId}}/systems/systems/{{businessId}}
Postman Collection Item JSON
{
"name": "Get System ",
"request": {
"method": "GET",
"header": [
{
"key": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"url": {
"raw": "https://api.freshbooks.com/accounting/account/{{accountId}}/systems/systems/{{businessId}}",
"protocol": "https",
"host": [
"api",
"freshbooks",
"com"
],
"path": [
"accounting",
"account",
"{{accountId}}",
"systems",
"systems",
"{{businessId}}"
]
},
"description": "The value of `<id>` here is only meaningful if a user has access to multiple systems. See the Identity Model for more information."
},
"response": [
{
"name": "Get System ",
"originalRequest": {
"method": "GET",
"header": [
{
"key": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"url": {
"raw": "https://api.freshbooks.com/accounting/account/{{accountId}}/systems/systems/{{businessId}}",
"protocol": "https",
"host": [
"api",
"freshbooks",
"com"
],
"path": [
"accounting",
"account",
"{{accountId}}",
"systems",
"systems",
"{{businessId}}"
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Server",
"value": "nginx"
},
{
"key": "Content-Type",
"value": "application/json"
},
{
"key": "X-NewRelic-App-Data",
"value": "PxQBWV5TCBABVlVSAwEOVlcTGhE1AwE2QgNWEVlbQFtcCxYnRA9QFg1ZWU4DFVdfRgFPCkNFR0gXSEVHBwsQWEMbSxZdVRYeA0kJTwFZC1VXAgRZXlANAgRQUVYEHRpXSBNUVlBfBwAFAQlUDw8GVwFUG01XAF8RAWs="
},
{
"key": "Access-Control-Allow-Origin",
"value": "*"
},
{
"key": "Expires",
"value": "Tue, 24 Apr 2018 18:38:32 GMT"
},
{
"key": "Cache-Control",
"value": "no-cache"
},
{
"key": "Content-Encoding",
"value": "gzip"
},
{
"key": "Via",
"value": "1.1 google"
},
{
"key": "Via",
"value": "1.1 varnish"
},
{
"key": "Accept-Ranges",
"value": "bytes"
},
{
"key": "Accept-Ranges",
"value": "bytes"
},
{
"key": "Age",
"value": "0"
},
{
"key": "Age",
"value": "0"
},
{
"key": "Transfer-Encoding",
"value": "chunked"
},
{
"key": "Date",
"value": "Wed, 24 Apr 2019 18:38:32 GMT"
},
{
"key": "Connection",
"value": "keep-alive"
},
{
"key": "X-Served-By",
"value": "cache-mdw17369-MDW"
},
{
"key": "X-Cache",
"value": "MISS"
},
{
"key": "X-Cache-Hits",
"value": "0"
},
{
"key": "Vary",
"value": "Accept-Encoding"
},
{
"key": "Country",
"value": "CA"
},
{
"key": "Strict-Transport-Security",
"value": "max-age=31536000; includeSubDomains; preload"
}
],
"cookie": [
],
"body": "{\n \"response\": {\n \"result\": {\n \"system\": {\n \"accountid\": \"wkMd2g\",\n \"active\": true,\n \"auto_bill\": 5,\n \"billing_status\": \"uptodate\",\n \"bus_phone\": \"\",\n \"business_type\": null,\n \"business_uuid\": null,\n \"city\": \"\",\n \"code\": \"\",\n \"country\": \"Canada\",\n \"currency_code\": \"USD\",\n \"date\": \"2019-04-18 09:14:53\",\n \"discountid\": null,\n \"dst\": true,\n \"duration\": 12,\n \"email\": \"api.freshbooks@gmail.com\",\n \"fax\": \"\",\n \"gst_amount\": {\n \"amount\": \"0.00\",\n \"code\": \"USD\"\n },\n \"heard_about_us_via\": null,\n \"id\": 4236410,\n \"info_email\": \"api.freshbooks@gmail.com\",\n \"ip\": \"62.205.194.4\",\n \"landing_url\": null,\n \"masterlock_billing\": true,\n \"migrated_to_smux_at\": null,\n \"mob_phone\": \"\",\n \"modern_system\": true,\n \"name\": \"Postman Sandbox\",\n \"num_clients\": null,\n \"num_staff\": null,\n \"payment_amount\": {\n \"amount\": \"0.00\",\n \"code\": \"USD\"\n },\n \"payment_frequency\": 1,\n \"province\": \"\",\n \"referralid\": \"multibiz\",\n \"referring_url\": null,\n \"salutation\": null,\n \"size_limit\": null,\n \"split_token\": null,\n \"street\": \"\",\n \"street2\": null,\n \"systemid\": 4236410,\n \"test_system\": false,\n \"timezone\": \"UTC\",\n \"timezoneid\": 14,\n \"vat_name\": null,\n \"vat_number\": null\n }\n }\n }\n}"
}
]
}