Sample code for 30+ languages & platforms
Ruby Requires Chilkat v11.0.0+

Xero Get Full Set of Tenants

See more Xero Examples

Check the full set of tenants you've been authorized to access

Chilkat Ruby Downloads

Ruby
require 'chilkat'

success = false

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

http = Chilkat::CkHttp.new()

jsonToken = Chilkat::CkJsonObject.new()
success = jsonToken.LoadFile("qa_data/tokens/xero-access-token.json")
if (success == false)
    print jsonToken.lastErrorText() + "\n";
    exit
end

http.put_AuthToken(jsonToken.stringOf("access_token"))

http.put_Accept("application/json")

resp = Chilkat::CkHttpResponse.new()
success = http.HttpNoBody("GET","https://api.xero.com/connections",resp)
if (success == false)
    print http.lastErrorText() + "\n";
    exit
end

print "Response Status Code: " + resp.get_StatusCode().to_s() + "\n";

jarr = Chilkat::CkJsonArray.new()
jarr.Load(resp.bodyStr())
jarr.put_EmitCompact(false)
print jarr.emit() + "\n";

if (resp.get_StatusCode() != 200)
    print "Failed." + "\n";
    exit
end

#  Sample response
#  Use this online tool to generate parsing code from sample JSON: 
#  Generate Parsing Code from JSON

#  [
#      {
#          "id": "c869f3b7-6435-4c7e-8cb2-122721b04a69",
#          "tenantId": "45e4708e-d862-4111-ab3a-dd8cd03913e1",
#          "tenantType": "ORGANISATION",
#          "createdDateUtc": "2020-02-02T19:17:58.1117990",
#          "updatedDateUtc": "2020-02-02T19:17:58.1117990"
#      },
#      {
#          "id": "74305bf3-12e0-45e2-8dc8-e3ec73e3b1f9",
#          "tenantId": "c3d5e782-2153-4cda-bdb4-cec791ceb90d",
#          "tenantType": "ORGANISATION",
#          "createdDateUtc": "2020-01-30T01:33:36.2717380",
#          "updatedDateUtc": "2020-02-02T19:21:08.5739590"
#      }
#  ]

i = 0
count_i = jarr.get_Size()
while i < count_i
    # json is a CkJsonObject
    json = jarr.ObjectAt(i)
    id = json.stringOf("id")
    tenantId = json.stringOf("tenantId")
    tenantType = json.stringOf("tenantType")
    createdDateUtc = json.stringOf("createdDateUtc")
    updatedDateUtc = json.stringOf("updatedDateUtc")

    i = i + 1
end