Chilkat Online Tools

VB6 / EDS API / Nodokļu maksātājam iesniegto algas nodokļu grāmatiņu dati.

Back to Collection Items

' This example assumes the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.

Dim http As New ChilkatHttp
Dim success As Long

Dim queryParams As New ChilkatJsonObject
success = queryParams.UpdateString("tikaiIzmainas","true")
success = queryParams.UpdateString("periodsNo","nisi cillum sed")
success = queryParams.UpdateString("periodsLidz","nisi cillum sed")
success = queryParams.UpdateString("iesniedzejs","est i")
success = queryParams.UpdateInt("pmnmIzmainas",25210683)
success = queryParams.UpdateInt("neattelotAtvieglojumus",25210683)

http.SetRequestHeader "Accept","application/json"

Dim resp As ChilkatHttpResponse
Set resp = http.QuickRequestParams("GET","https://eds.vid.gov.lv/api/reports/taxbooks",queryParams)
If (http.LastMethodSuccess = 0) Then
    Debug.Print http.LastErrorText
    Exit Sub
End If

Dim sbResponseBody As New ChilkatStringBuilder
success = resp.GetBodySb(sbResponseBody)

Dim jResp As New ChilkatJsonObject
success = jResp.LoadSb(sbResponseBody)
jResp.EmitCompact = 0

Debug.Print "Response Body:"
Debug.Print jResp.Emit()

Dim respStatusCode As Long
respStatusCode = resp.StatusCode
Debug.Print "Response Status Code = " & respStatusCode
If (respStatusCode >= 400) Then
    Debug.Print "Response Header:"
    Debug.Print resp.Header
    Debug.Print "Failed."

    Exit Sub
End If

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

' {
'   "Gramatinas": [
'     {
'       "PersonasKods": "incididunt aute laborum sed",
'       "VardsUzvards": "reprehenderi",
'       "Numurs": "eiusmod sed ut tempor nulla",
'       "IzdosanasDatums": "2000-01-31T00:00:00",
'       "DatumsNo": "2000-01-31T00:00:00",
'       "IzmainuDatums": "2000-01-31T00:00:00",
'       "DatumsLidz": "2000-01-31T00:00:00",
'       "Apgadajamie": [
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         },
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         }
'       ],
'       "Pensijas": [
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         },
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         }
'       ],
'       "PapilduAtvieglojumi": [
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         },
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         }
'       ],
'       "IinLikmes": [
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         },
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         }
'       ],
'       "PrognozetaisMinimums": [
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         },
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         }
'       ]
'     },
'     {
'       "PersonasKods": "qui cillum fugiat",
'       "VardsUzvards": "reprehenderit minim consectetur consequat ea",
'       "Numurs": "ut labore mollit",
'       "IzdosanasDatums": "2000-01-31T00:00:00",
'       "DatumsNo": "2000-01-31T00:00:00",
'       "IzmainuDatums": "2000-01-31T00:00:00",
'       "DatumsLidz": "2000-01-31T00:00:00",
'       "Apgadajamie": [
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         },
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         }
'       ],
'       "Pensijas": [
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         },
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         }
'       ],
'       "PapilduAtvieglojumi": [
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         },
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         }
'       ],
'       "IinLikmes": [
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         },
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         }
'       ],
'       "PrognozetaisMinimums": [
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         },
'         {
'           "value": "<Error: Too many levels of nesting to fake this schema>"
'         }
'       ]
'     }
'   ]
' }

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

Dim PersonasKods As String
Dim VardsUzvards As String
Dim Numurs As String
Dim IzdosanasDatums As String
Dim DatumsNo As String
Dim IzmainuDatums As String
Dim DatumsLidz As String
Dim j As Long
Dim count_j As Long
Dim value As String

Dim i As Long
i = 0
Dim count_i As Long
count_i = jResp.SizeOfArray("Gramatinas")
Do While i < count_i
    jResp.I = i
    PersonasKods = jResp.StringOf("Gramatinas[i].PersonasKods")
    VardsUzvards = jResp.StringOf("Gramatinas[i].VardsUzvards")
    Numurs = jResp.StringOf("Gramatinas[i].Numurs")
    IzdosanasDatums = jResp.StringOf("Gramatinas[i].IzdosanasDatums")
    DatumsNo = jResp.StringOf("Gramatinas[i].DatumsNo")
    IzmainuDatums = jResp.StringOf("Gramatinas[i].IzmainuDatums")
    DatumsLidz = jResp.StringOf("Gramatinas[i].DatumsLidz")
    j = 0
    count_j = jResp.SizeOfArray("Gramatinas[i].Apgadajamie")
    Do While j < count_j
        jResp.J = j
        value = jResp.StringOf("Gramatinas[i].Apgadajamie[j].value")
        j = j + 1
    Loop
    j = 0
    count_j = jResp.SizeOfArray("Gramatinas[i].Pensijas")
    Do While j < count_j
        jResp.J = j
        value = jResp.StringOf("Gramatinas[i].Pensijas[j].value")
        j = j + 1
    Loop
    j = 0
    count_j = jResp.SizeOfArray("Gramatinas[i].PapilduAtvieglojumi")
    Do While j < count_j
        jResp.J = j
        value = jResp.StringOf("Gramatinas[i].PapilduAtvieglojumi[j].value")
        j = j + 1
    Loop
    j = 0
    count_j = jResp.SizeOfArray("Gramatinas[i].IinLikmes")
    Do While j < count_j
        jResp.J = j
        value = jResp.StringOf("Gramatinas[i].IinLikmes[j].value")
        j = j + 1
    Loop
    j = 0
    count_j = jResp.SizeOfArray("Gramatinas[i].PrognozetaisMinimums")
    Do While j < count_j
        jResp.J = j
        value = jResp.StringOf("Gramatinas[i].PrognozetaisMinimums[j].value")
        j = j + 1
    Loop
    i = i + 1
Loop

Curl Command

curl -G -d "tikaiIzmainas=true"
	-d "periodsNo=nisi%20cillum%20sed"
	-d "periodsLidz=nisi%20cillum%20sed"
	-d "iesniedzejs=est%20i"
	-d "pmnmIzmainas=25210683"
	-d "neattelotAtvieglojumus=25210683"
	-H "Accept: application/json"
https://eds.vid.gov.lv/api/reports/taxbooks

Postman Collection Item JSON

{
  "name": "Nodokļu maksātājam iesniegto algas nodokļu grāmatiņu dati.",
  "request": {
    "method": "GET",
    "header": [
      {
        "key": "Accept",
        "value": "application/json"
      }
    ],
    "url": {
      "raw": "{{baseUrl}}/api/reports/taxbooks?tikaiIzmainas=true&periodsNo=nisi cillum sed&periodsLidz=nisi cillum sed&iesniedzejs=est i&pmnmIzmainas=25210683&neattelotAtvieglojumus=25210683",
      "host": [
        "{{baseUrl}}"
      ],
      "path": [
        "api",
        "reports",
        "taxbooks"
      ],
      "query": [
        {
          "key": "tikaiIzmainas",
          "value": "true",
          "description": "Atlasīt tikai tās grāmatiņas kurās veiktas izmaiņas."
        },
        {
          "key": "periodsNo",
          "value": "nisi cillum sed",
          "description": "(Required) Pārskata perioda sākuma datums."
        },
        {
          "key": "periodsLidz",
          "value": "nisi cillum sed",
          "description": "ārskata perioda beigu datums."
        },
        {
          "key": "iesniedzejs",
          "value": "est i",
          "description": "Grāmatiņas iesniedzēja personas kods."
        },
        {
          "key": "pmnmIzmainas",
          "value": "25210683",
          "description": "Iekļaut nodokļu maksātājus, kuriem:\r\n0 - mainījušies algas nodokļa grāmatiņas dati, izņemot prognozēto mēneša neapliekamo minimumu;\r\n1 - mainījušies algas nodokļa grāmatiņas dati, tai skaitā arī prognozētais mēneša neapliekamais minimums;\r\n2 - mainījies tikai prognozētais mēneša neapliekamais minimums."
        },
        {
          "key": "neattelotAtvieglojumus",
          "value": "25210683",
          "description": "Neattēlot nodokļa atvieglojumus, kuri bija spēkā pirms pārskatā norādītā perioda."
        }
      ]
    }
  },
  "response": [
    {
      "name": "OK",
      "originalRequest": {
        "method": "GET",
        "header": [
        ],
        "url": {
          "raw": "{{baseUrl}}/api/reports/taxbooks?tikaiIzmainas=true&periodsNo=nisi cillum sed&periodsLidz=nisi cillum sed&iesniedzejs=est i&pmnmIzmainas=25210683&neattelotAtvieglojumus=25210683",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "api",
            "reports",
            "taxbooks"
          ],
          "query": [
            {
              "key": "tikaiIzmainas",
              "value": "true"
            },
            {
              "key": "periodsNo",
              "value": "nisi cillum sed"
            },
            {
              "key": "periodsLidz",
              "value": "nisi cillum sed"
            },
            {
              "key": "iesniedzejs",
              "value": "est i"
            },
            {
              "key": "pmnmIzmainas",
              "value": "25210683"
            },
            {
              "key": "neattelotAtvieglojumus",
              "value": "25210683"
            }
          ]
        }
      },
      "status": "OK",
      "code": 200,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n  \"Gramatinas\": [\n    {\n      \"PersonasKods\": \"incididunt aute laborum sed\",\n      \"VardsUzvards\": \"reprehenderi\",\n      \"Numurs\": \"eiusmod sed ut tempor nulla\",\n      \"IzdosanasDatums\": \"2000-01-31T00:00:00\",\n      \"DatumsNo\": \"2000-01-31T00:00:00\",\n      \"IzmainuDatums\": \"2000-01-31T00:00:00\",\n      \"DatumsLidz\": \"2000-01-31T00:00:00\",\n      \"Apgadajamie\": [\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        }\n      ],\n      \"Pensijas\": [\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        }\n      ],\n      \"PapilduAtvieglojumi\": [\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        }\n      ],\n      \"IinLikmes\": [\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        }\n      ],\n      \"PrognozetaisMinimums\": [\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        }\n      ]\n    },\n    {\n      \"PersonasKods\": \"qui cillum fugiat\",\n      \"VardsUzvards\": \"reprehenderit minim consectetur consequat ea\",\n      \"Numurs\": \"ut labore mollit\",\n      \"IzdosanasDatums\": \"2000-01-31T00:00:00\",\n      \"DatumsNo\": \"2000-01-31T00:00:00\",\n      \"IzmainuDatums\": \"2000-01-31T00:00:00\",\n      \"DatumsLidz\": \"2000-01-31T00:00:00\",\n      \"Apgadajamie\": [\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        }\n      ],\n      \"Pensijas\": [\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        }\n      ],\n      \"PapilduAtvieglojumi\": [\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        }\n      ],\n      \"IinLikmes\": [\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        }\n      ],\n      \"PrognozetaisMinimums\": [\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        }\n      ]\n    }\n  ]\n}"
    },
    {
      "name": "Lietotājs nav autentificēts.",
      "originalRequest": {
        "method": "GET",
        "header": [
        ],
        "url": {
          "raw": "{{baseUrl}}/api/reports/taxbooks?tikaiIzmainas=true&periodsNo=nisi cillum sed&periodsLidz=nisi cillum sed&iesniedzejs=est i&pmnmIzmainas=25210683&neattelotAtvieglojumus=25210683",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "api",
            "reports",
            "taxbooks"
          ],
          "query": [
            {
              "key": "tikaiIzmainas",
              "value": "true"
            },
            {
              "key": "periodsNo",
              "value": "nisi cillum sed"
            },
            {
              "key": "periodsLidz",
              "value": "nisi cillum sed"
            },
            {
              "key": "iesniedzejs",
              "value": "est i"
            },
            {
              "key": "pmnmIzmainas",
              "value": "25210683"
            },
            {
              "key": "neattelotAtvieglojumus",
              "value": "25210683"
            }
          ]
        }
      },
      "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/reports/taxbooks?tikaiIzmainas=true&periodsNo=nisi cillum sed&periodsLidz=nisi cillum sed&iesniedzejs=est i&pmnmIzmainas=25210683&neattelotAtvieglojumus=25210683",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "api",
            "reports",
            "taxbooks"
          ],
          "query": [
            {
              "key": "tikaiIzmainas",
              "value": "true"
            },
            {
              "key": "periodsNo",
              "value": "nisi cillum sed"
            },
            {
              "key": "periodsLidz",
              "value": "nisi cillum sed"
            },
            {
              "key": "iesniedzejs",
              "value": "est i"
            },
            {
              "key": "pmnmIzmainas",
              "value": "25210683"
            },
            {
              "key": "neattelotAtvieglojumus",
              "value": "25210683"
            }
          ]
        }
      },
      "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/reports/taxbooks?tikaiIzmainas=true&periodsNo=nisi cillum sed&periodsLidz=nisi cillum sed&iesniedzejs=est i&pmnmIzmainas=25210683&neattelotAtvieglojumus=25210683",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "api",
            "reports",
            "taxbooks"
          ],
          "query": [
            {
              "key": "tikaiIzmainas",
              "value": "true"
            },
            {
              "key": "periodsNo",
              "value": "nisi cillum sed"
            },
            {
              "key": "periodsLidz",
              "value": "nisi cillum sed"
            },
            {
              "key": "iesniedzejs",
              "value": "est i"
            },
            {
              "key": "pmnmIzmainas",
              "value": "25210683"
            },
            {
              "key": "neattelotAtvieglojumus",
              "value": "25210683"
            }
          ]
        }
      },
      "status": "Too Many Requests",
      "code": 429,
      "_postman_previewlanguage": "text",
      "header": [
        {
          "key": "Content-Type",
          "value": "text/plain"
        }
      ],
      "cookie": [
      ],
      "body": ""
    }
  ]
}