Chilkat Online Tools

PureBasic / EDS API / Amatpersonu saraksts.

Back to Collection Items

IncludeFile "CkJsonObject.pb"
IncludeFile "CkStringBuilder.pb"
IncludeFile "CkHttp.pb"
IncludeFile "CkHttpResponse.pb"
IncludeFile "CkJsonArray.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

    queryParams.i = CkJsonObject::ckCreate()
    If queryParams.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    CkJsonObject::ckUpdateString(queryParams,"vardsUzvards","Lorem qui in")
    CkJsonObject::ckUpdateString(queryParams,"personasKods","est i")
    CkJsonObject::ckUpdateString(queryParams,"amats","nisi cillum sed")
    CkJsonObject::ckUpdateString(queryParams,"datumsNoIntervalsNo","nisi cillum sed")
    CkJsonObject::ckUpdateString(queryParams,"datumsNoIntervalsLidz","nisi cillum sed")
    CkJsonObject::ckUpdateString(queryParams,"datumsLidzIntervalsNo","nisi cillum sed")
    CkJsonObject::ckUpdateString(queryParams,"datumsLidzIntervalsLidz","nisi cillum sed")
    CkJsonObject::ckUpdateString(queryParams,"ierednis","true")
    CkJsonObject::ckUpdateString(queryParams,"aizvieto","true")
    CkJsonObject::ckUpdateString(queryParams,"aktuals","true")
    CkJsonObject::ckUpdateInt(queryParams,"izlaistIerakstus",25210683)
    CkJsonObject::ckUpdateInt(queryParams,"atgrieztIerakstus",25210683)

    CkHttp::ckSetRequestHeader(http,"Accept","application/json")

    resp.i = CkHttp::ckQuickRequestParams(http,"GET","https://eds.vid.gov.lv/api/officials",queryParams)
    If CkHttp::ckLastMethodSuccess(http) = 0
        Debug CkHttp::ckLastErrorText(http)
        CkHttp::ckDispose(http)
        CkJsonObject::ckDispose(queryParams)
        ProcedureReturn
    EndIf

    sbResponseBody.i = CkStringBuilder::ckCreate()
    If sbResponseBody.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    CkHttpResponse::ckGetBodySb(resp,sbResponseBody)

    jarrResp.i = CkJsonArray::ckCreate()
    If jarrResp.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    CkJsonArray::ckLoadSb(jarrResp,sbResponseBody)
    CkJsonArray::setCkEmitCompact(jarrResp, 0)

    Debug "Response Body:"
    Debug CkJsonArray::ckEmit(jarrResp)

    respStatusCode.i = CkHttpResponse::ckStatusCode(resp)
    Debug "Response Status Code = " + Str(respStatusCode)
    If respStatusCode >= 400
        Debug "Response Header:"
        Debug CkHttpResponse::ckHeader(resp)
        Debug "Failed."
        CkHttpResponse::ckDispose(resp)

        CkHttp::ckDispose(http)
        CkJsonObject::ckDispose(queryParams)
        CkStringBuilder::ckDispose(sbResponseBody)
        CkJsonArray::ckDispose(jarrResp)
        ProcedureReturn
    EndIf

    CkHttpResponse::ckDispose(resp)

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

    ; [
    ;   {
    ;     "VardsUzvards": "Ut",
    ;     "PersonasKods": "consectetur ut",
    ;     "AmataKods": "sunt",
    ;     "AmataNosaukums": "commodo officia",
    ;     "DatumsNo": "2000-01-31T00:00:00",
    ;     "DatumsLidz": "2000-01-31T00:00:00",
    ;     "Ierednis": true,
    ;     "Aizvieto": true
    ;   },
    ;   {
    ;     "VardsUzvards": "ex elit proident aliquip",
    ;     "PersonasKods": "eiusmod do tempor",
    ;     "AmataKods": "sed ut qui dolore",
    ;     "AmataNosaukums": "Excepteur nostrud ut proident qui",
    ;     "DatumsNo": "2000-01-31T00:00:00",
    ;     "DatumsLidz": "2000-01-31T00:00:00",
    ;     "Ierednis": false,
    ;     "Aizvieto": false
    ;   }
    ; ]

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

    json.i
    VardsUzvards.s
    PersonasKods.s
    AmataKods.s
    AmataNosaukums.s
    DatumsNo.s
    DatumsLidz.s
    Ierednis.i
    Aizvieto.i

    i.i = 0
    count_i.i = CkJsonArray::ckSize(jarrResp)
    While i < count_i
        json = CkJsonArray::ckObjectAt(jarrResp,i)
        VardsUzvards = CkJsonObject::ckStringOf(json,"VardsUzvards")
        PersonasKods = CkJsonObject::ckStringOf(json,"PersonasKods")
        AmataKods = CkJsonObject::ckStringOf(json,"AmataKods")
        AmataNosaukums = CkJsonObject::ckStringOf(json,"AmataNosaukums")
        DatumsNo = CkJsonObject::ckStringOf(json,"DatumsNo")
        DatumsLidz = CkJsonObject::ckStringOf(json,"DatumsLidz")
        Ierednis = CkJsonObject::ckBoolOf(json,"Ierednis")
        Aizvieto = CkJsonObject::ckBoolOf(json,"Aizvieto")
        CkJsonObject::ckDispose(json)

        i = i + 1
    Wend


    CkHttp::ckDispose(http)
    CkJsonObject::ckDispose(queryParams)
    CkStringBuilder::ckDispose(sbResponseBody)
    CkJsonArray::ckDispose(jarrResp)


    ProcedureReturn
EndProcedure

Curl Command

curl -G -d "vardsUzvards=Lorem%20qui%20in"
	-d "personasKods=est%20i"
	-d "amats=nisi%20cillum%20sed"
	-d "datumsNoIntervalsNo=nisi%20cillum%20sed"
	-d "datumsNoIntervalsLidz=nisi%20cillum%20sed"
	-d "datumsLidzIntervalsNo=nisi%20cillum%20sed"
	-d "datumsLidzIntervalsLidz=nisi%20cillum%20sed"
	-d "ierednis=true"
	-d "aizvieto=true"
	-d "aktuals=true"
	-d "izlaistIerakstus=25210683"
	-d "atgrieztIerakstus=25210683"
	-H "Accept: application/json"
https://eds.vid.gov.lv/api/officials

Postman Collection Item JSON

{
  "name": "Amatpersonu saraksts.",
  "request": {
    "method": "GET",
    "header": [
      {
        "key": "Accept",
        "value": "application/json"
      }
    ],
    "url": {
      "raw": "{{baseUrl}}/api/officials?vardsUzvards=Lorem qui in&personasKods=est i&amats=nisi cillum sed&datumsNoIntervalsNo=nisi cillum sed&datumsNoIntervalsLidz=nisi cillum sed&datumsLidzIntervalsNo=nisi cillum sed&datumsLidzIntervalsLidz=nisi cillum sed&ierednis=true&aizvieto=true&aktuals=true&izlaistIerakstus=25210683&atgrieztIerakstus=25210683",
      "host": [
        "{{baseUrl}}"
      ],
      "path": [
        "api",
        "officials"
      ],
      "query": [
        {
          "key": "vardsUzvards",
          "value": "Lorem qui in",
          "description": "Vārds, Uzvārds."
        },
        {
          "key": "personasKods",
          "value": "est i",
          "description": "Personas kods."
        },
        {
          "key": "amats",
          "value": "nisi cillum sed",
          "description": "Amata nosaukums."
        },
        {
          "key": "datumsNoIntervalsNo",
          "value": "nisi cillum sed",
          "description": "Amatā stāšanās datuma intervāla sākums."
        },
        {
          "key": "datumsNoIntervalsLidz",
          "value": "nisi cillum sed",
          "description": "Amatā stāšanās datuma intervāla beigas."
        },
        {
          "key": "datumsLidzIntervalsNo",
          "value": "nisi cillum sed",
          "description": "Beidzis pildīt amata pienākumus datuma intervāla sākums."
        },
        {
          "key": "datumsLidzIntervalsLidz",
          "value": "nisi cillum sed",
          "description": "Beidzis pildīt amata pienākumus datuma intervāla beigas."
        },
        {
          "key": "ierednis",
          "value": "true",
          "description": "Vai persona ir valsts civildienesta ierēdnis."
        },
        {
          "key": "aizvieto",
          "value": "true",
          "description": "Vai amatpersonas pienākumus pilda uz laiku (aizvieto)."
        },
        {
          "key": "aktuals",
          "value": "true",
          "description": "Atgriezt tikai aktuālos ierakstus."
        },
        {
          "key": "izlaistIerakstus",
          "value": "25210683",
          "description": "No rezultāta izlaižamo ierakstu skaits."
        },
        {
          "key": "atgrieztIerakstus",
          "value": "25210683",
          "description": "Atgriežamo ierakstu skaits (max 100)."
        }
      ]
    }
  },
  "response": [
    {
      "name": "OK",
      "originalRequest": {
        "method": "GET",
        "header": [
        ],
        "url": {
          "raw": "{{baseUrl}}/api/officials?vardsUzvards=Lorem qui in&personasKods=est i&amats=nisi cillum sed&datumsNoIntervalsNo=nisi cillum sed&datumsNoIntervalsLidz=nisi cillum sed&datumsLidzIntervalsNo=nisi cillum sed&datumsLidzIntervalsLidz=nisi cillum sed&ierednis=true&aizvieto=true&aktuals=true&izlaistIerakstus=25210683&atgrieztIerakstus=25210683",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "api",
            "officials"
          ],
          "query": [
            {
              "key": "vardsUzvards",
              "value": "Lorem qui in"
            },
            {
              "key": "personasKods",
              "value": "est i"
            },
            {
              "key": "amats",
              "value": "nisi cillum sed"
            },
            {
              "key": "datumsNoIntervalsNo",
              "value": "nisi cillum sed"
            },
            {
              "key": "datumsNoIntervalsLidz",
              "value": "nisi cillum sed"
            },
            {
              "key": "datumsLidzIntervalsNo",
              "value": "nisi cillum sed"
            },
            {
              "key": "datumsLidzIntervalsLidz",
              "value": "nisi cillum sed"
            },
            {
              "key": "ierednis",
              "value": "true"
            },
            {
              "key": "aizvieto",
              "value": "true"
            },
            {
              "key": "aktuals",
              "value": "true"
            },
            {
              "key": "izlaistIerakstus",
              "value": "25210683"
            },
            {
              "key": "atgrieztIerakstus",
              "value": "25210683"
            }
          ]
        }
      },
      "status": "OK",
      "code": 200,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "[\n  {\n    \"VardsUzvards\": \"Ut\",\n    \"PersonasKods\": \"consectetur ut\",\n    \"AmataKods\": \"sunt\",\n    \"AmataNosaukums\": \"commodo officia\",\n    \"DatumsNo\": \"2000-01-31T00:00:00\",\n    \"DatumsLidz\": \"2000-01-31T00:00:00\",\n    \"Ierednis\": true,\n    \"Aizvieto\": true\n  },\n  {\n    \"VardsUzvards\": \"ex elit proident aliquip\",\n    \"PersonasKods\": \"eiusmod do tempor\",\n    \"AmataKods\": \"sed ut qui dolore\",\n    \"AmataNosaukums\": \"Excepteur nostrud ut proident qui\",\n    \"DatumsNo\": \"2000-01-31T00:00:00\",\n    \"DatumsLidz\": \"2000-01-31T00:00:00\",\n    \"Ierednis\": false,\n    \"Aizvieto\": false\n  }\n]"
    },
    {
      "name": "Lietotājs nav autentificēts.",
      "originalRequest": {
        "method": "GET",
        "header": [
        ],
        "url": {
          "raw": "{{baseUrl}}/api/officials?vardsUzvards=Lorem qui in&personasKods=est i&amats=nisi cillum sed&datumsNoIntervalsNo=nisi cillum sed&datumsNoIntervalsLidz=nisi cillum sed&datumsLidzIntervalsNo=nisi cillum sed&datumsLidzIntervalsLidz=nisi cillum sed&ierednis=true&aizvieto=true&aktuals=true&izlaistIerakstus=25210683&atgrieztIerakstus=25210683",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "api",
            "officials"
          ],
          "query": [
            {
              "key": "vardsUzvards",
              "value": "Lorem qui in"
            },
            {
              "key": "personasKods",
              "value": "est i"
            },
            {
              "key": "amats",
              "value": "nisi cillum sed"
            },
            {
              "key": "datumsNoIntervalsNo",
              "value": "nisi cillum sed"
            },
            {
              "key": "datumsNoIntervalsLidz",
              "value": "nisi cillum sed"
            },
            {
              "key": "datumsLidzIntervalsNo",
              "value": "nisi cillum sed"
            },
            {
              "key": "datumsLidzIntervalsLidz",
              "value": "nisi cillum sed"
            },
            {
              "key": "ierednis",
              "value": "true"
            },
            {
              "key": "aizvieto",
              "value": "true"
            },
            {
              "key": "aktuals",
              "value": "true"
            },
            {
              "key": "izlaistIerakstus",
              "value": "25210683"
            },
            {
              "key": "atgrieztIerakstus",
              "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/officials?vardsUzvards=Lorem qui in&personasKods=est i&amats=nisi cillum sed&datumsNoIntervalsNo=nisi cillum sed&datumsNoIntervalsLidz=nisi cillum sed&datumsLidzIntervalsNo=nisi cillum sed&datumsLidzIntervalsLidz=nisi cillum sed&ierednis=true&aizvieto=true&aktuals=true&izlaistIerakstus=25210683&atgrieztIerakstus=25210683",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "api",
            "officials"
          ],
          "query": [
            {
              "key": "vardsUzvards",
              "value": "Lorem qui in"
            },
            {
              "key": "personasKods",
              "value": "est i"
            },
            {
              "key": "amats",
              "value": "nisi cillum sed"
            },
            {
              "key": "datumsNoIntervalsNo",
              "value": "nisi cillum sed"
            },
            {
              "key": "datumsNoIntervalsLidz",
              "value": "nisi cillum sed"
            },
            {
              "key": "datumsLidzIntervalsNo",
              "value": "nisi cillum sed"
            },
            {
              "key": "datumsLidzIntervalsLidz",
              "value": "nisi cillum sed"
            },
            {
              "key": "ierednis",
              "value": "true"
            },
            {
              "key": "aizvieto",
              "value": "true"
            },
            {
              "key": "aktuals",
              "value": "true"
            },
            {
              "key": "izlaistIerakstus",
              "value": "25210683"
            },
            {
              "key": "atgrieztIerakstus",
              "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/officials?vardsUzvards=Lorem qui in&personasKods=est i&amats=nisi cillum sed&datumsNoIntervalsNo=nisi cillum sed&datumsNoIntervalsLidz=nisi cillum sed&datumsLidzIntervalsNo=nisi cillum sed&datumsLidzIntervalsLidz=nisi cillum sed&ierednis=true&aizvieto=true&aktuals=true&izlaistIerakstus=25210683&atgrieztIerakstus=25210683",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "api",
            "officials"
          ],
          "query": [
            {
              "key": "vardsUzvards",
              "value": "Lorem qui in"
            },
            {
              "key": "personasKods",
              "value": "est i"
            },
            {
              "key": "amats",
              "value": "nisi cillum sed"
            },
            {
              "key": "datumsNoIntervalsNo",
              "value": "nisi cillum sed"
            },
            {
              "key": "datumsNoIntervalsLidz",
              "value": "nisi cillum sed"
            },
            {
              "key": "datumsLidzIntervalsNo",
              "value": "nisi cillum sed"
            },
            {
              "key": "datumsLidzIntervalsLidz",
              "value": "nisi cillum sed"
            },
            {
              "key": "ierednis",
              "value": "true"
            },
            {
              "key": "aizvieto",
              "value": "true"
            },
            {
              "key": "aktuals",
              "value": "true"
            },
            {
              "key": "izlaistIerakstus",
              "value": "25210683"
            },
            {
              "key": "atgrieztIerakstus",
              "value": "25210683"
            }
          ]
        }
      },
      "status": "Too Many Requests",
      "code": 429,
      "_postman_previewlanguage": "text",
      "header": [
        {
          "key": "Content-Type",
          "value": "text/plain"
        }
      ],
      "cookie": [
      ],
      "body": ""
    }
  ]
}