Back to Collection Items
var
http: HCkHttp;
success: Boolean;
queryParams: HCkJsonObject;
resp: HCkHttpResponse;
sbResponseBody: HCkStringBuilder;
jResp: HCkJsonObject;
respStatusCode: Integer;
id: PWideChar;
name: PWideChar;
code: PWideChar;
net_price: PWideChar;
gross_price: PWideChar;
use_gross_price: PWideChar;
Id: PWideChar;
Value: PWideChar;
Description: PWideChar;
Notes: PWideChar;
E_invoice: PWideChar;
Ei_type: PWideChar;
Ei_description: PWideChar;
Editable: PWideChar;
Is_disabled: PWideChar;
net_cost: PWideChar;
measure: PWideChar;
description: PWideChar;
category: PWideChar;
notes: PWideChar;
in_stock: PWideChar;
stock_initial: PWideChar;
stock_current: PWideChar;
average_cost: PWideChar;
average_price: PWideChar;
created_at: PWideChar;
updated_at: PWideChar;
current_page: PWideChar;
first_page_url: PWideChar;
from: PWideChar;
last_page: PWideChar;
last_page_url: PWideChar;
next_page_url: PWideChar;
path: PWideChar;
per_page: PWideChar;
prev_page_url: PWideChar;
v_to: PWideChar;
total: PWideChar;
i: Integer;
count_i: Integer;
begin
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
http := CkHttp_Create();
queryParams := CkJsonObject_Create();
CkJsonObject_UpdateString(queryParams,'fields','<string>');
CkJsonObject_UpdateString(queryParams,'fieldset','basic');
CkJsonObject_UpdateString(queryParams,'sort','<string>');
CkJsonObject_UpdateInt(queryParams,'page',1);
CkJsonObject_UpdateInt(queryParams,'per_page',5);
CkJsonObject_UpdateString(queryParams,'q','<string>');
// Adds the "Authorization: Bearer <access_token>" header.
CkHttp_putAuthToken(http,'<access_token>');
CkHttp_SetRequestHeader(http,'Accept','application/json');
resp := CkHttp_QuickRequestParams(http,'GET','https://api-v2.fattureincloud.it/c/:company_id/products',queryParams);
if (CkHttp_getLastMethodSuccess(http) = False) then
begin
Memo1.Lines.Add(CkHttp__lastErrorText(http));
Exit;
end;
sbResponseBody := CkStringBuilder_Create();
CkHttpResponse_GetBodySb(resp,sbResponseBody);
jResp := CkJsonObject_Create();
CkJsonObject_LoadSb(jResp,sbResponseBody);
CkJsonObject_putEmitCompact(jResp,False);
Memo1.Lines.Add('Response Body:');
Memo1.Lines.Add(CkJsonObject__emit(jResp));
respStatusCode := CkHttpResponse_getStatusCode(resp);
Memo1.Lines.Add('Response Status Code = ' + IntToStr(respStatusCode));
if (respStatusCode >= 400) then
begin
Memo1.Lines.Add('Response Header:');
Memo1.Lines.Add(CkHttpResponse__header(resp));
Memo1.Lines.Add('Failed.');
CkHttpResponse_Dispose(resp);
Exit;
end;
CkHttpResponse_Dispose(resp);
// Sample JSON response:
// (Sample code for parsing the JSON response is shown below)
// {
// "current_page": "<integer>",
// "first_page_url": "<uri>",
// "from": "<integer>",
// "last_page": "<integer>",
// "last_page_url": "<uri>",
// "next_page_url": "<uri>",
// "path": "<uri>",
// "per_page": "<integer>",
// "prev_page_url": "<uri>",
// "to": "<integer>",
// "total": "<integer>",
// "data": [
// {
// "id": "<integer>",
// "name": "<string>",
// "code": "<string>",
// "net_price": "<number>",
// "gross_price": "<number>",
// "use_gross_price": "<boolean>",
// "default_vat": {
// "id": "<integer>",
// "value": "<number>",
// "description": "<string>",
// "notes": "<string>",
// "e_invoice": "<boolean>",
// "ei_type": "<string>",
// "ei_description": "<string>",
// "editable": "<boolean>",
// "is_disabled": "<boolean>"
// },
// "net_cost": "<number>",
// "measure": "<string>",
// "description": "<string>",
// "category": "<string>",
// "notes": "<string>",
// "in_stock": "<boolean>",
// "stock_initial": "<number>",
// "stock_current": "<number>",
// "average_cost": "<number>",
// "average_price": "<number>",
// "created_at": "<string>",
// "updated_at": "<string>"
// },
// {
// "id": "<integer>",
// "name": "<string>",
// "code": "<string>",
// "net_price": "<number>",
// "gross_price": "<number>",
// "use_gross_price": "<boolean>",
// "default_vat": {
// "id": "<integer>",
// "value": "<number>",
// "description": "<string>",
// "notes": "<string>",
// "e_invoice": "<boolean>",
// "ei_type": "<string>",
// "ei_description": "<string>",
// "editable": "<boolean>",
// "is_disabled": "<boolean>"
// },
// "net_cost": "<number>",
// "measure": "<string>",
// "description": "<string>",
// "category": "<string>",
// "notes": "<string>",
// "in_stock": "<boolean>",
// "stock_initial": "<number>",
// "stock_current": "<number>",
// "average_cost": "<number>",
// "average_price": "<number>",
// "created_at": "<string>",
// "updated_at": "<string>"
// }
// ]
// }
// Sample code for parsing the JSON response...
// Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code
current_page := CkJsonObject__stringOf(jResp,'current_page');
first_page_url := CkJsonObject__stringOf(jResp,'first_page_url');
from := CkJsonObject__stringOf(jResp,'from');
last_page := CkJsonObject__stringOf(jResp,'last_page');
last_page_url := CkJsonObject__stringOf(jResp,'last_page_url');
next_page_url := CkJsonObject__stringOf(jResp,'next_page_url');
path := CkJsonObject__stringOf(jResp,'path');
per_page := CkJsonObject__stringOf(jResp,'per_page');
prev_page_url := CkJsonObject__stringOf(jResp,'prev_page_url');
v_to := CkJsonObject__stringOf(jResp,'to');
total := CkJsonObject__stringOf(jResp,'total');
i := 0;
count_i := CkJsonObject_SizeOfArray(jResp,'data');
while i < count_i do
begin
CkJsonObject_putI(jResp,i);
id := CkJsonObject__stringOf(jResp,'data[i].id');
name := CkJsonObject__stringOf(jResp,'data[i].name');
code := CkJsonObject__stringOf(jResp,'data[i].code');
net_price := CkJsonObject__stringOf(jResp,'data[i].net_price');
gross_price := CkJsonObject__stringOf(jResp,'data[i].gross_price');
use_gross_price := CkJsonObject__stringOf(jResp,'data[i].use_gross_price');
Id := CkJsonObject__stringOf(jResp,'data[i].default_vat.id');
Value := CkJsonObject__stringOf(jResp,'data[i].default_vat.value');
Description := CkJsonObject__stringOf(jResp,'data[i].default_vat.description');
Notes := CkJsonObject__stringOf(jResp,'data[i].default_vat.notes');
E_invoice := CkJsonObject__stringOf(jResp,'data[i].default_vat.e_invoice');
Ei_type := CkJsonObject__stringOf(jResp,'data[i].default_vat.ei_type');
Ei_description := CkJsonObject__stringOf(jResp,'data[i].default_vat.ei_description');
Editable := CkJsonObject__stringOf(jResp,'data[i].default_vat.editable');
Is_disabled := CkJsonObject__stringOf(jResp,'data[i].default_vat.is_disabled');
net_cost := CkJsonObject__stringOf(jResp,'data[i].net_cost');
measure := CkJsonObject__stringOf(jResp,'data[i].measure');
description := CkJsonObject__stringOf(jResp,'data[i].description');
category := CkJsonObject__stringOf(jResp,'data[i].category');
notes := CkJsonObject__stringOf(jResp,'data[i].notes');
in_stock := CkJsonObject__stringOf(jResp,'data[i].in_stock');
stock_initial := CkJsonObject__stringOf(jResp,'data[i].stock_initial');
stock_current := CkJsonObject__stringOf(jResp,'data[i].stock_current');
average_cost := CkJsonObject__stringOf(jResp,'data[i].average_cost');
average_price := CkJsonObject__stringOf(jResp,'data[i].average_price');
created_at := CkJsonObject__stringOf(jResp,'data[i].created_at');
updated_at := CkJsonObject__stringOf(jResp,'data[i].updated_at');
i := i + 1;
end;
CkHttp_Dispose(http);
CkJsonObject_Dispose(queryParams);
CkStringBuilder_Dispose(sbResponseBody);
CkJsonObject_Dispose(jResp);
Curl Command
curl -G -d "fields=%3Cstring%3E"
-d "fieldset=basic"
-d "sort=%3Cstring%3E"
-d "page=1"
-d "per_page=5"
-d "q=%3Cstring%3E"
-H "Authorization: Bearer <access_token>"
-H "Accept: application/json"
https://api-v2.fattureincloud.it/c/:company_id/products
Postman Collection Item JSON
{
"name": "List Products",
"request": {
"auth": {
"type": "oauth2",
"oauth2": [
{
"key": "scope",
"value": "entity.clients:r entity.clients:a entity.suppliers:r entity.suppliers:a products:r products:a issued_documents.invoices:r issued_documents.credit_notes:r issued_documents.receipts:r issued_documents.orders:r issued_documents.quotes:r issued_documents.proformas:r issued_documents.delivery_notes:r issued_documents.work_reports:r issued_documents.supplier_orders:r issued_documents.self_invoices:r issued_documents.invoices:a issued_documents.credit_notes:a issued_documents.receipts:a issued_documents.orders:a issued_documents.quotes:a issued_documents.proformas:a issued_documents.delivery_notes:a issued_documents.work_reports:a issued_documents.supplier_orders:a issued_documents.self_invoices:a received_documents:r received_documents:a stock:r stock:a receipts:r receipts:a taxes:r taxes:a archive:r archive:a cashbook:r cashbook:a settings:r settings:a situation:r",
"type": "string"
},
{
"key": "redirect_uri",
"value": "https://api-v2.fattureincloud.it/oauth/token",
"type": "string"
},
{
"key": "accessTokenUrl",
"value": "https://api-v2.fattureincloud.it/oauth/token",
"type": "string"
},
{
"key": "authUrl",
"value": "https://api-v2.fattureincloud.it/oauth/authorize",
"type": "string"
},
{
"key": "grant_type",
"value": "authorization_code",
"type": "string"
}
]
},
"method": "GET",
"header": [
{
"key": "Accept",
"value": "application/json"
}
],
"url": {
"raw": "{{baseUrl}}/c/:company_id/products?fields=<string>&fieldset=basic&sort=<string>&page=1&per_page=5&q=<string>",
"host": [
"{{baseUrl}}"
],
"path": [
"c",
":company_id",
"products"
],
"query": [
{
"key": "fields",
"value": "<string>",
"description": "List of comma-separated fields."
},
{
"key": "fieldset",
"value": "basic",
"description": "Name of the fieldset."
},
{
"key": "sort",
"value": "<string>",
"description": "List of comma-separated fields for result sorting (minus for desc sorting)."
},
{
"key": "page",
"value": "1",
"description": "The page to retrieve."
},
{
"key": "per_page",
"value": "5",
"description": "The size of the page."
},
{
"key": "q",
"value": "<string>",
"description": "Query for filtering the results."
}
],
"variable": [
{
"key": "company_id",
"value": "<integer>"
}
]
},
"description": "Lists the products."
},
"response": [
{
"name": "Products List.",
"originalRequest": {
"method": "GET",
"header": [
{
"key": "Accept",
"value": "application/json"
},
{
"description": "Added as a part of security scheme: oauth2",
"key": "Authorization",
"value": "<token>"
}
],
"url": {
"raw": "{{baseUrl}}/c/:company_id/products?fields=<string>&fieldset=basic&sort=<string>&page=1&per_page=5&q=<string>",
"host": [
"{{baseUrl}}"
],
"path": [
"c",
":company_id",
"products"
],
"query": [
{
"key": "fields",
"value": "<string>",
"description": "List of comma-separated fields."
},
{
"key": "fieldset",
"value": "basic",
"description": "Name of the fieldset."
},
{
"key": "sort",
"value": "<string>",
"description": "List of comma-separated fields for result sorting (minus for desc sorting)."
},
{
"key": "page",
"value": "1",
"description": "The page to retrieve."
},
{
"key": "per_page",
"value": "5",
"description": "The size of the page."
},
{
"key": "q",
"value": "<string>",
"description": "Query for filtering the results."
}
],
"variable": [
{
"key": "company_id"
}
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"current_page\": \"<integer>\",\n \"first_page_url\": \"<uri>\",\n \"from\": \"<integer>\",\n \"last_page\": \"<integer>\",\n \"last_page_url\": \"<uri>\",\n \"next_page_url\": \"<uri>\",\n \"path\": \"<uri>\",\n \"per_page\": \"<integer>\",\n \"prev_page_url\": \"<uri>\",\n \"to\": \"<integer>\",\n \"total\": \"<integer>\",\n \"data\": [\n {\n \"id\": \"<integer>\",\n \"name\": \"<string>\",\n \"code\": \"<string>\",\n \"net_price\": \"<number>\",\n \"gross_price\": \"<number>\",\n \"use_gross_price\": \"<boolean>\",\n \"default_vat\": {\n \"id\": \"<integer>\",\n \"value\": \"<number>\",\n \"description\": \"<string>\",\n \"notes\": \"<string>\",\n \"e_invoice\": \"<boolean>\",\n \"ei_type\": \"<string>\",\n \"ei_description\": \"<string>\",\n \"editable\": \"<boolean>\",\n \"is_disabled\": \"<boolean>\"\n },\n \"net_cost\": \"<number>\",\n \"measure\": \"<string>\",\n \"description\": \"<string>\",\n \"category\": \"<string>\",\n \"notes\": \"<string>\",\n \"in_stock\": \"<boolean>\",\n \"stock_initial\": \"<number>\",\n \"stock_current\": \"<number>\",\n \"average_cost\": \"<number>\",\n \"average_price\": \"<number>\",\n \"created_at\": \"<string>\",\n \"updated_at\": \"<string>\"\n },\n {\n \"id\": \"<integer>\",\n \"name\": \"<string>\",\n \"code\": \"<string>\",\n \"net_price\": \"<number>\",\n \"gross_price\": \"<number>\",\n \"use_gross_price\": \"<boolean>\",\n \"default_vat\": {\n \"id\": \"<integer>\",\n \"value\": \"<number>\",\n \"description\": \"<string>\",\n \"notes\": \"<string>\",\n \"e_invoice\": \"<boolean>\",\n \"ei_type\": \"<string>\",\n \"ei_description\": \"<string>\",\n \"editable\": \"<boolean>\",\n \"is_disabled\": \"<boolean>\"\n },\n \"net_cost\": \"<number>\",\n \"measure\": \"<string>\",\n \"description\": \"<string>\",\n \"category\": \"<string>\",\n \"notes\": \"<string>\",\n \"in_stock\": \"<boolean>\",\n \"stock_initial\": \"<number>\",\n \"stock_current\": \"<number>\",\n \"average_cost\": \"<number>\",\n \"average_price\": \"<number>\",\n \"created_at\": \"<string>\",\n \"updated_at\": \"<string>\"\n }\n ]\n}"
},
{
"name": "Unauthorized",
"originalRequest": {
"method": "GET",
"header": [
{
"description": "Added as a part of security scheme: oauth2",
"key": "Authorization",
"value": "<token>"
}
],
"url": {
"raw": "{{baseUrl}}/c/:company_id/products?fields=<string>&fieldset=basic&sort=<string>&page=1&per_page=5&q=<string>",
"host": [
"{{baseUrl}}"
],
"path": [
"c",
":company_id",
"products"
],
"query": [
{
"key": "fields",
"value": "<string>",
"description": "List of comma-separated fields."
},
{
"key": "fieldset",
"value": "basic",
"description": "Name of the fieldset."
},
{
"key": "sort",
"value": "<string>",
"description": "List of comma-separated fields for result sorting (minus for desc sorting)."
},
{
"key": "page",
"value": "1",
"description": "The page to retrieve."
},
{
"key": "per_page",
"value": "5",
"description": "The size of the page."
},
{
"key": "q",
"value": "<string>",
"description": "Query for filtering the results."
}
],
"variable": [
{
"key": "company_id"
}
]
}
},
"status": "Unauthorized",
"code": 401,
"_postman_previewlanguage": "text",
"header": [
],
"cookie": [
],
"body": ""
}
]
}