Lua
Lua
Isabel Connect List Accounts
See more Ibanity Examples
Get a list of accounts.Chilkat Lua Downloads
local chilkat = require("chilkat")
-- This example assumes the Chilkat API to have been previously unlocked.
-- See Global Unlock Sample for sample code.
local http = chilkat.Http.new()
-- Implements the following CURL command:
-- curl -X GET https://api.ibanity.com/isabel-connect/accounts \
-- --cert certificate.pem:qwertyuiop1 \
-- --key private_key.pem \
-- -H "Authorization: Bearer access_token_1603365407" \
-- -H "Accept: application/vnd.api+json"
-- Ibanity provides the certificate + private key in PFX format. This example will use the .pfx instead of the pair of PEM files.
-- (It is also possible to implement using Chilkat with the PEM files, but PFX is easier.)
local success = http:set_ssl_client_cert_pfx("qa_data/pfx/my_ibanity_certificate.pfx", "my_pfx_password")
if not success then
print(http.last_error_text)
return
end
-- Load the previously obtained access token.
local jsonToken = chilkat.JsonObject.new()
success = jsonToken:load_file("qa_data/tokens/isabel_access_token.json")
if not success then
print("No existing access token.")
return
end
-- This causes the "Authorization: Bearer ***" header to be added to the HTTP request.
http.auth_token = jsonToken:string_of("access_token")
http.accept = "application/vnd.api+json"
local jsonStr = http:quick_get_str("https://api.ibanity.com/isabel-connect/accounts")
if not http.last_method_success then
print(http.last_error_text)
return
end
local jResp = chilkat.JsonObject.new()
jResp:load(jsonStr)
jResp.emit_compact = false
print("Response Body:")
print(jResp:emit())
local respStatusCode = http.last_status
print("Response Status Code = " .. respStatusCode)
if respStatusCode >= 400 then
print("Response Header:")
print(http.last_response_header)
print("Failed.")
return
end
-- Sample JSON response:
-- (Sample code for parsing the JSON response is shown below)
-- {
-- "data": [
-- {
-- "id": "93ecb1fdbfb7848e7b7896c0f2d207aed3d8b4c1",
-- "type": "account"
-- }
-- ],
-- "meta": {
-- "paging": {
-- "offset": 0,
-- "total": 1
-- }
-- }
-- }
-- Sample code for parsing the JSON response...
-- Use the following online tool to generate parsing code from sample JSON:
-- Generate Parsing Code from JSON
local id = ""
local v_type = ""
local metaPagingOffset = jResp:int_of("meta.paging.offset")
local metaPagingTotal = jResp:int_of("meta.paging.total")
local i = 0
local count_i = jResp:size_of_array("data")
while i < count_i do
jResp.i = i
id = jResp:string_of("data[i].id")
v_type = jResp:string_of("data[i].type")
i = i + 1
end