Node.js
Node.js
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 Node.js Downloads
NODEJS_PRELUDE
function chilkatExample() {
var success = 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.
var rest = 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.
var sbXml = new chilkat.StringBuilder();
success = rest.FullRequestNoBodySb("GET","/api.xro/2.0/Accounts",sbXml);
if (success !== true) {
console.log(rest.LastErrorText);
return;
}
// A 200 response is expected for actual success.
if (rest.ResponseStatusCode !== 200) {
console.log(sbXml.GetAsString());
return;
}
// Iterate over the accounts and get some information..
var bAutoTrim = false;
var xml = new chilkat.Xml();
xml.LoadSb(sbXml,bAutoTrim);
// How many accounts exist?
var numAccounts = xml.NumChildrenAt("Accounts");
console.log("numAccounts = " + numAccounts);
var i = 0;
while (i < numAccounts) {
xml.I = i;
console.log("AccountID: " + xml.GetChildContent("Accounts|Account[i]|AccountID"));
console.log("Name: " + xml.GetChildContent("Accounts|Account[i]|Name"));
console.log("Code: " + xml.GetChildIntValue("Accounts|Account[i]|Code"));
console.log("EnablePaymentsToAccount: " + xml.GetChildBoolValue("Accounts|Account[i]|EnablePaymentsToAccount"));
console.log("----");
i = i+1;
}
}
chilkatExample();