unicodeC / EDS API / Struktūrvienību saraksts.
Back to Collection Items
#include <C_CkHttpW.h>
#include <C_CkStringBuilderW.h>
#include <C_CkJsonArrayW.h>
#include <C_CkJsonObjectW.h>
void ChilkatSample(void)
{
HCkHttpW http;
BOOL success;
HCkStringBuilderW sbResponseBody;
HCkJsonArrayW jarrResp;
int respStatusCode;
HCkJsonObjectW json;
const wchar_t *Nosaukums;
const wchar_t *RegNr;
int Veids;
const wchar_t *Datums;
const wchar_t *VeidsTeksts;
const wchar_t *Adrese;
int AdresesSaistiba;
const wchar_t *AdresesSaistibaTeksts;
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();
CkHttpW_SetRequestHeader(http,L"Accept",L"application/json");
sbResponseBody = CkStringBuilderW_Create();
success = CkHttpW_QuickGetSb(http,L"https://eds.vid.gov.lv/api/departments",sbResponseBody);
if (success == FALSE) {
wprintf(L"%s\n",CkHttpW_lastErrorText(http));
CkHttpW_Dispose(http);
CkStringBuilderW_Dispose(sbResponseBody);
return;
}
jarrResp = CkJsonArrayW_Create();
CkJsonArrayW_LoadSb(jarrResp,sbResponseBody);
CkJsonArrayW_putEmitCompact(jarrResp,FALSE);
wprintf(L"Response Body:\n");
wprintf(L"%s\n",CkJsonArrayW_emit(jarrResp));
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);
CkJsonArrayW_Dispose(jarrResp);
return;
}
// Sample JSON response:
// (Sample code for parsing the JSON response is shown below)
// [
// {
// "Nosaukums": "laboris Excepteur",
// "RegNr": "fugiat mollit qui nostrud ",
// "Veids": -38769346,
// "Datums": "2000-01-31T00:00:00",
// "VeidsTeksts": "ad aliquip",
// "Adrese": "labore id veniam",
// "AdresesSaistiba": 90754423,
// "AdresesSaistibaTeksts": "et incididunt proident v"
// },
// {
// "Nosaukums": "est dolor",
// "RegNr": "consequat laborum",
// "Veids": 13422983,
// "Datums": "2000-01-31T00:00:00",
// "VeidsTeksts": "eiusmod laboris dolor qui pariatur",
// "Adrese": "nulla officia",
// "AdresesSaistiba": 39912793,
// "AdresesSaistibaTeksts": "in veniam"
// }
// ]
// 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.
i = 0;
count_i = CkJsonArrayW_getSize(jarrResp);
while (i < count_i) {
json = CkJsonArrayW_ObjectAt(jarrResp,i);
Nosaukums = CkJsonObjectW_stringOf(json,L"Nosaukums");
RegNr = CkJsonObjectW_stringOf(json,L"RegNr");
Veids = CkJsonObjectW_IntOf(json,L"Veids");
Datums = CkJsonObjectW_stringOf(json,L"Datums");
VeidsTeksts = CkJsonObjectW_stringOf(json,L"VeidsTeksts");
Adrese = CkJsonObjectW_stringOf(json,L"Adrese");
AdresesSaistiba = CkJsonObjectW_IntOf(json,L"AdresesSaistiba");
AdresesSaistibaTeksts = CkJsonObjectW_stringOf(json,L"AdresesSaistibaTeksts");
CkJsonObjectW_Dispose(json);
i = i + 1;
}
CkHttpW_Dispose(http);
CkStringBuilderW_Dispose(sbResponseBody);
CkJsonArrayW_Dispose(jarrResp);
}
Curl Command
curl -X GET
-H "Accept: application/json"
https://eds.vid.gov.lv/api/departments
Postman Collection Item JSON
{
"name": "Struktūrvienību saraksts.",
"request": {
"method": "GET",
"header": [
{
"key": "Accept",
"value": "application/json"
}
],
"url": {
"raw": "{{baseUrl}}/api/departments",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"departments"
]
}
},
"response": [
{
"name": "OK",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/api/departments",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"departments"
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "[\n {\n \"Nosaukums\": \"laboris Excepteur\",\n \"RegNr\": \"fugiat mollit qui nostrud \",\n \"Veids\": -38769346,\n \"Datums\": \"2000-01-31T00:00:00\",\n \"VeidsTeksts\": \"ad aliquip\",\n \"Adrese\": \"labore id veniam\",\n \"AdresesSaistiba\": 90754423,\n \"AdresesSaistibaTeksts\": \"et incididunt proident v\"\n },\n {\n \"Nosaukums\": \"est dolor\",\n \"RegNr\": \"consequat laborum\",\n \"Veids\": 13422983,\n \"Datums\": \"2000-01-31T00:00:00\",\n \"VeidsTeksts\": \"eiusmod laboris dolor qui pariatur\",\n \"Adrese\": \"nulla officia\",\n \"AdresesSaistiba\": 39912793,\n \"AdresesSaistibaTeksts\": \"in veniam\"\n }\n]"
},
{
"name": "Lietotājs nav autentificēts.",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/api/departments",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"departments"
]
}
},
"status": "Unauthorized",
"code": 401,
"_postman_previewlanguage": "text",
"header": [
{
"key": "Content-Type",
"value": "text/plain"
}
],
"cookie": [
],
"body": ""
},
{
"name": "Lietotājam nav tiesību veikt šo darbību.",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/api/departments",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"departments"
]
}
},
"status": "Forbidden",
"code": 403,
"_postman_previewlanguage": "text",
"header": [
{
"key": "Content-Type",
"value": "text/plain"
}
],
"cookie": [
],
"body": ""
},
{
"name": "Pārsniegts izsaukumu skaita ierobežojums.",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/api/departments",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"departments"
]
}
},
"status": "Too Many Requests",
"code": 429,
"_postman_previewlanguage": "text",
"header": [
{
"key": "Content-Type",
"value": "text/plain"
}
],
"cookie": [
],
"body": ""
}
]
}