Sample code for 30+ languages & platforms
VB.NET

Xero Get a Filtered Set of Resources (Get all SALES Accounts)

Demonstrates how to add the "where" parameter to get a filtered set of resources. See Get Filtered Resources.

This example gets the accounts where the Type = "SALES".

Note: Requires Chilkat v9.5.0.64 or greater.

Chilkat VB.NET Downloads

VB.NET
Dim success As Boolean = False

' Note: Requires Chilkat v9.5.0.64 or greater.

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

Dim rest As New Chilkat.Rest



' Before sending REST API calls, the REST object needs to be
' initialized for OAuth1.
' See Xero 2-Legged OAuth1 Setup for sample code.

' Assuming the REST object's OAuth1 authenticator is setup, and the initial
' connection was made, we may now send REST HTTP requests..

' ------------------------------------------------------------
' Add the "where" parameter.
rest.AddQueryParam("where","Type==""SALES""")

' Get the full list of accounts.
Dim sbXml As New Chilkat.StringBuilder
success = rest.FullRequestNoBodySb("GET","/api.xro/2.0/Accounts",sbXml)
If (success <> True) Then
    Debug.WriteLine(rest.LastErrorText)
    Exit Sub
End If


' A 200 response is expected for actual success.
If (rest.ResponseStatusCode <> 200) Then
    Debug.WriteLine(sbXml.GetAsString())
    Exit Sub
End If


' Iterate over the accounts and get some information..

Dim bAutoTrim As Boolean = False
Dim xml As New Chilkat.Xml
xml.LoadSb(sbXml,bAutoTrim)

' How many accounts exist?
Dim numAccounts As Integer = xml.NumChildrenAt("Accounts")
Debug.WriteLine("numAccounts = " & numAccounts)

Dim i As Integer = 0
While i < numAccounts
    xml.I = i
    Debug.WriteLine("AccountID: " & xml.GetChildContent("Accounts|Account[i]|AccountID"))
    Debug.WriteLine("Name: " & xml.GetChildContent("Accounts|Account[i]|Name"))
    Debug.WriteLine("Code: " & xml.GetChildIntValue("Accounts|Account[i]|Code"))
    Debug.WriteLine("EnablePaymentsToAccount: " & xml.GetChildBoolValue("Accounts|Account[i]|EnablePaymentsToAccount"))
    Debug.WriteLine("----")
    i = i + 1
End While