Sample code for 30+ languages & platforms
JavaScript

ETrade v1 List Accounts

See more HTTP Misc Examples

List ETrade accounts using the ETrade v1 API.
Note
This example is intended for running within a Chilkat.Js embedded JavaScript engine. All Chilkat JavaScript examples require Chilkat v11.4.0 or greater.
JavaScript
var success = false;

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

var http = new CkHttp();

http.OAuth1 = true;
http.OAuthVerifier = "";
http.OAuthConsumerKey = "ETRADE_CONSUMER_KEY";
http.OAuthConsumerSecret = "ETRADE_CONSUMER_SECRET";

// Load the access token previously obtained via the OAuth1 3-Legged Authorization examples Step1 and Step2.
var json = new CkJsonObject();
success = json.LoadFile("qa_data/tokens/etrade.json");
if (success !== true) {
    console.log("Failed to load OAuth1 token");
    return;
}

http.OAuthToken = json.StringOf("oauth_token");
http.OAuthTokenSecret = json.StringOf("oauth_token_secret");

// See the ETrade v1 API documentation HERE.

var respStr = http.QuickGetStr("https://apisb.etrade.com/v1/accounts/list");
if (http.LastMethodSuccess !== true) {
    console.log(http.LastErrorText);
    return;
}

// A 200 status code indicates success.
var statusCode = http.LastStatus;
console.log("statusCode = " + statusCode);

// Use the following online tool to generate parsing code from sample XML: 
// Generate Parsing Code from XML

// A sample XML response is shown below...

var xml = new CkXml();
xml.LoadXml(respStr);

var i;
var count_i;
var tagPath;
var accountId;
var accountIdKey;
var accountMode;
var accountDesc;
var accountName;
var accountType;
var institutionType;
var accountStatus;
var closedDate;

i = 0;
count_i = xml.NumChildrenHavingTag("Accounts|Account");
while (i < count_i) {
    xml.I = i;
    accountId = xml.GetChildIntValue("Accounts|Account[i]|accountId");
    accountIdKey = xml.GetChildContent("Accounts|Account[i]|accountIdKey");
    accountMode = xml.GetChildContent("Accounts|Account[i]|accountMode");
    accountDesc = xml.GetChildContent("Accounts|Account[i]|accountDesc");
    accountName = xml.GetChildContent("Accounts|Account[i]|accountName");
    accountType = xml.GetChildContent("Accounts|Account[i]|accountType");
    institutionType = xml.GetChildContent("Accounts|Account[i]|institutionType");
    accountStatus = xml.GetChildContent("Accounts|Account[i]|accountStatus");
    closedDate = xml.GetChildIntValue("Accounts|Account[i]|closedDate");
    i = i+1;
}

// <?xml version="1.0" encoding="UTF-8"?>
// <AccountListResponse>
//    <Accounts>
//       <Account>
//          <accountId>84010429</accountId>
//          <accountIdKey>JIdOIAcSpwR1Jva7RQBraQ</accountIdKey>
//          <accountMode>MARGIN</accountMode>
//          <accountDesc>INDIVIDUAL</accountDesc>
//          <accountName>Individual Brokerage</accountName>
//          <accountType>INDIVIDUAL</accountType>
//          <institutionType>BROKERAGE</institutionType>
//          <accountStatus>ACTIVE</accountStatus>
//          <closedDate>0</closedDate>
//       </Account>
//       <Account>
//          <accountId>84010430</accountId>
//          <accountIdKey>JAAOIAcSpwR1Jva7RQBraQ</accountIdKey>
//          <accountMode>MARGIN</accountMode>
//          <accountDesc>INDIVIDUAL</accountDesc>
//          <accountName>Individual Brokerage</accountName>
//          <accountType>INDIVIDUAL</accountType>
//          <institutionType>BROKERAGE</institutionType>
//          <accountStatus>ACTIVE</accountStatus>
//          <closedDate>0</closedDate>
//       </Account>
//    </Accounts>
// </AccountListResponse>