PureBasic / EDS API / Dokuments "Akcīzes nodokļa aprēķins (likmju maiņas gadījumā)".
Back to Collection Items
IncludeFile "CkJsonObject.pb"
IncludeFile "CkStringBuilder.pb"
IncludeFile "CkHttp.pb"
Procedure ChilkatExample()
; This example assumes the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
http.i = CkHttp::ckCreate()
If http.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success.i
CkHttp::ckSetRequestHeader(http,"Accept","application/json")
sbResponseBody.i = CkStringBuilder::ckCreate()
If sbResponseBody.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success = CkHttp::ckQuickGetSb(http,"https://eds.vid.gov.lv/api/doc/aniav3/:id",sbResponseBody)
If success = 0
Debug CkHttp::ckLastErrorText(http)
CkHttp::ckDispose(http)
CkStringBuilder::ckDispose(sbResponseBody)
ProcedureReturn
EndIf
jResp.i = CkJsonObject::ckCreate()
If jResp.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkJsonObject::ckLoadSb(jResp,sbResponseBody)
CkJsonObject::setCkEmitCompact(jResp, 0)
Debug "Response Body:"
Debug CkJsonObject::ckEmit(jResp)
respStatusCode.i = CkHttp::ckLastStatus(http)
Debug "Response Status Code = " + Str(respStatusCode)
If respStatusCode >= 400
Debug "Response Header:"
Debug CkHttp::ckLastHeader(http)
Debug "Failed."
CkHttp::ckDispose(http)
CkStringBuilder::ckDispose(sbResponseBody)
CkJsonObject::ckDispose(jResp)
ProcedureReturn
EndIf
; Sample JSON response:
; (Sample code for parsing the JSON response is shown below)
; {
; "Talrunis": "velit f",
; "Epasts": "voluptate in",
; "NmVeids": "enim ipsum et",
; "Sagatavotajs": "incididunt pariatur",
; "LikmesDatums": "2000-01-31T00:00:00",
; "PrecuGrupas": "mollit cillum sunt velit eiusmod",
; "InvDatums": "2000-01-31T00:00:00",
; "MaksTermins": "2000-01-31T00:00:00",
; "NmAkcNumuri": "consequat cupidatat magna fugiat",
; "Tabula": [
; {
; "LikmeId": -70310886,
; "Kods": "sunt exercitation esse irure",
; "K3": 9325482.159040317,
; "K4": 46466485.181491464
; },
; {
; "LikmeId": 61440397,
; "Kods": "officia sit dolore",
; "K3": 34522730.61346921,
; "K4": 51331912.60301468
; }
; ],
; "Pielikumi": [
; {
; "Dokuments": "in consequat incididunt",
; "Fails": {
; "value": "<Error: Too many levels of nesting to fake this schema>"
; },
; "Komentars": "quis in ad"
; },
; {
; "Dokuments": "conse",
; "Fails": {
; "value": "<Error: Too many levels of nesting to fake this schema>"
; },
; "Komentars": "Ut dolore magna do"
; }
; ],
; "Id": 8468076,
; "UID": "enim eiusmod",
; "NmrKods": "in ",
; "Precizejums": false,
; "PrecizejamaisDokuments": -23123385,
; "PrecizejumaPamatojums": "nisi magna deserunt reprehenderit"
; }
; Sample code for parsing the JSON response...
; Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code
LikmeId.i
Kods.s
K3.s
K4.s
Dokuments.s
Value.s
Komentars.s
Talrunis.s = CkJsonObject::ckStringOf(jResp,"Talrunis")
Epasts.s = CkJsonObject::ckStringOf(jResp,"Epasts")
NmVeids.s = CkJsonObject::ckStringOf(jResp,"NmVeids")
Sagatavotajs.s = CkJsonObject::ckStringOf(jResp,"Sagatavotajs")
LikmesDatums.s = CkJsonObject::ckStringOf(jResp,"LikmesDatums")
PrecuGrupas.s = CkJsonObject::ckStringOf(jResp,"PrecuGrupas")
InvDatums.s = CkJsonObject::ckStringOf(jResp,"InvDatums")
MaksTermins.s = CkJsonObject::ckStringOf(jResp,"MaksTermins")
NmAkcNumuri.s = CkJsonObject::ckStringOf(jResp,"NmAkcNumuri")
Id.i = CkJsonObject::ckIntOf(jResp,"Id")
UID.s = CkJsonObject::ckStringOf(jResp,"UID")
NmrKods.s = CkJsonObject::ckStringOf(jResp,"NmrKods")
Precizejums.i = CkJsonObject::ckBoolOf(jResp,"Precizejums")
PrecizejamaisDokuments.i = CkJsonObject::ckIntOf(jResp,"PrecizejamaisDokuments")
PrecizejumaPamatojums.s = CkJsonObject::ckStringOf(jResp,"PrecizejumaPamatojums")
i.i = 0
count_i.i = CkJsonObject::ckSizeOfArray(jResp,"Tabula")
While i < count_i
CkJsonObject::setCkI(jResp, i)
LikmeId = CkJsonObject::ckIntOf(jResp,"Tabula[i].LikmeId")
Kods = CkJsonObject::ckStringOf(jResp,"Tabula[i].Kods")
K3 = CkJsonObject::ckStringOf(jResp,"Tabula[i].K3")
K4 = CkJsonObject::ckStringOf(jResp,"Tabula[i].K4")
i = i + 1
Wend
i = 0
count_i = CkJsonObject::ckSizeOfArray(jResp,"Pielikumi")
While i < count_i
CkJsonObject::setCkI(jResp, i)
Dokuments = CkJsonObject::ckStringOf(jResp,"Pielikumi[i].Dokuments")
Value = CkJsonObject::ckStringOf(jResp,"Pielikumi[i].Fails.value")
Komentars = CkJsonObject::ckStringOf(jResp,"Pielikumi[i].Komentars")
i = i + 1
Wend
CkHttp::ckDispose(http)
CkStringBuilder::ckDispose(sbResponseBody)
CkJsonObject::ckDispose(jResp)
ProcedureReturn
EndProcedure
Curl Command
curl -X GET
-H "Accept: application/json"
https://eds.vid.gov.lv/api/doc/aniav3/:id
Postman Collection Item JSON
{
"name": "Dokuments \"Akcīzes nodokļa aprēķins (likmju maiņas gadījumā)\".",
"request": {
"method": "GET",
"header": [
{
"key": "Accept",
"value": "application/json"
}
],
"url": {
"raw": "{{baseUrl}}/api/doc/aniav3/:id",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"doc",
"aniav3",
":id"
],
"variable": [
{
"key": "id",
"value": "25210683",
"description": "(Required) Dokumenta id."
}
]
}
},
"response": [
{
"name": "OK",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/api/doc/aniav3/:id",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"doc",
"aniav3",
":id"
],
"variable": [
{
"key": "id",
"value": "25210683",
"description": "(Required) Dokumenta id."
}
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"Talrunis\": \"velit f\",\n \"Epasts\": \"voluptate in\",\n \"NmVeids\": \"enim ipsum et\",\n \"Sagatavotajs\": \"incididunt pariatur\",\n \"LikmesDatums\": \"2000-01-31T00:00:00\",\n \"PrecuGrupas\": \"mollit cillum sunt velit eiusmod\",\n \"InvDatums\": \"2000-01-31T00:00:00\",\n \"MaksTermins\": \"2000-01-31T00:00:00\",\n \"NmAkcNumuri\": \"consequat cupidatat magna fugiat\",\n \"Tabula\": [\n {\n \"LikmeId\": -70310886,\n \"Kods\": \"sunt exercitation esse irure\",\n \"K3\": 9325482.159040317,\n \"K4\": 46466485.181491464\n },\n {\n \"LikmeId\": 61440397,\n \"Kods\": \"officia sit dolore\",\n \"K3\": 34522730.61346921,\n \"K4\": 51331912.60301468\n }\n ],\n \"Pielikumi\": [\n {\n \"Dokuments\": \"in consequat incididunt\",\n \"Fails\": {\n \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n },\n \"Komentars\": \"quis in ad\"\n },\n {\n \"Dokuments\": \"conse\",\n \"Fails\": {\n \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n },\n \"Komentars\": \"Ut dolore magna do\"\n }\n ],\n \"Id\": 8468076,\n \"UID\": \"enim eiusmod\",\n \"NmrKods\": \"in \",\n \"Precizejums\": false,\n \"PrecizejamaisDokuments\": -23123385,\n \"PrecizejumaPamatojums\": \"nisi magna deserunt reprehenderit\"\n}"
},
{
"name": "Lietotājs nav autentificēts.",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/api/doc/aniav3/:id",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"doc",
"aniav3",
":id"
],
"variable": [
{
"key": "id",
"value": "25210683",
"description": "(Required) Dokumenta id."
}
]
}
},
"status": "Unauthorized",
"code": 401,
"_postman_previewlanguage": "text",
"header": [
{
"key": "Content-Type",
"value": "text/plain"
}
],
"cookie": [
],
"body": ""
},
{
"name": "Dokuments neeksistē vai lietotājam nav tiesību.",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/api/doc/aniav3/:id",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"doc",
"aniav3",
":id"
],
"variable": [
{
"key": "id",
"value": "25210683",
"description": "(Required) Dokumenta id."
}
]
}
},
"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/doc/aniav3/:id",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"doc",
"aniav3",
":id"
],
"variable": [
{
"key": "id",
"value": "25210683",
"description": "(Required) Dokumenta id."
}
]
}
},
"status": "Too Many Requests",
"code": 429,
"_postman_previewlanguage": "text",
"header": [
{
"key": "Content-Type",
"value": "text/plain"
}
],
"cookie": [
],
"body": ""
}
]
}