Sample code for 30+ languages & platforms
Classic ASP

ETrade Get Account Balances

See more ETrade Examples

Retrieves the current account balance and related details for a specified account.

Chilkat Classic ASP Downloads

Classic ASP
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<%
success = 0

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

set http = Server.CreateObject("Chilkat.Http")

http.OAuth1 = 1
http.OAuthVerifier = ""
http.OAuthConsumerKey = "ETRADE_CONSUMER_KEY"
http.OAuthConsumerSecret = "ETRADE_CONSUMER_SECRET"

' Load the access token previously obtained via the OAuth1 Authorization
set jsonToken = Server.CreateObject("Chilkat.JsonObject")
success = jsonToken.LoadFile("qa_data/tokens/etrade.json")
If (success <> 1) Then
    Response.Write "<pre>" & Server.HTMLEncode( "Failed to load OAuth1 token") & "</pre>"
    Response.End
End If

http.OAuthToken = jsonToken.StringOf("oauth_token")
http.OAuthTokenSecret = jsonToken.StringOf("oauth_token_secret")

sandboxUrl = "https://apisb.etrade.com/v1/accounts/{$accountIdKey}/balance?instType={$instType}&realTimeNAV=true"
liveUrl = "https://api.etrade.com/v1/accounts/{$accountIdKey}/balance?instType={$instType}&realTimeNAV=true"

success = http.SetUrlVar("accountIdKey","6_Dpy0rmuQ9cu9IbTfvF2A")
success = http.SetUrlVar("instType","BROKERAGE")

set resp = Server.CreateObject("Chilkat.HttpResponse")
success = http.HttpNoBody("GET",sandboxUrl,resp)
If (success = 0) Then
    Response.Write "<pre>" & Server.HTMLEncode( http.LastErrorText) & "</pre>"
    Response.End
End If

' Make sure a successful response was received.
If (resp.StatusCode > 200) Then
    Response.Write "<pre>" & Server.HTMLEncode( resp.StatusLine) & "</pre>"
    Response.Write "<pre>" & Server.HTMLEncode( resp.Header) & "</pre>"
    Response.Write "<pre>" & Server.HTMLEncode( resp.BodyStr) & "</pre>"
    Response.End
End If

' Sample XML response:

' Use this online tool to generate parsing code from sample XML: 
' Generate Parsing Code from XML

' <?xml version="1.0" encoding="UTF-8"?>
' <BalanceResponse>
'    <accountId>83564979</accountId>
'    <accountType>PDT_ACCOUNT</accountType>
'    <optionLevel>LEVEL_4</optionLevel>
'    <accountDescription>KRITHH TT</accountDescription>
'    <quoteMode>6</quoteMode>
'    <dayTraderStatus>PDT_MIN_EQUITY_RES_1XK</dayTraderStatus>
'    <accountMode>PDT ACCOUNT</accountMode>
'    <Cash>
'       <fundsForOpenOrdersCash>0</fundsForOpenOrdersCash>
'       <moneyMktBalance>0</moneyMktBalance>
'    </Cash>
'    <Computed>
'       <cashAvailableForInvestment>0</cashAvailableForInvestment>
'       <netCash>93921.44</netCash>
'       <cashBalance>93921.44</cashBalance>
'       <settledCashForInvestment>0</settledCashForInvestment>
'       <unSettledCashForInvestment>0</unSettledCashForInvestment>
'       <fundsWithheldFromPurchasePower>0</fundsWithheldFromPurchasePower>
'       <fundsWithheldFromWithdrawal>0</fundsWithheldFromWithdrawal>
'       <marginBuyingPower>0</marginBuyingPower>
'       <cashBuyingPower>93921.44</cashBuyingPower>
'       <dtMarginBuyingPower>0</dtMarginBuyingPower>
'       <dtCashBuyingPower>0</dtCashBuyingPower>
'       <shortAdjustBalance>0</shortAdjustBalance>
'       <regtEquity>0</regtEquity>
'       <regtEquityPercent>0</regtEquityPercent>
'       <accountBalance>0</accountBalance>
'    </Computed>
'    <Margin>
'       <dtCashOpenOrderReserve>0</dtCashOpenOrderReserve>
'       <dtMarginOpenOrderReserve>0</dtMarginOpenOrderReserve>
'    </Margin>
' </BalanceResponse>

set xml = Server.CreateObject("Chilkat.Xml")
success = xml.LoadXml(resp.BodyStr)
Response.Write "<pre>" & Server.HTMLEncode( xml.GetXml()) & "</pre>"

accountId = xml.GetChildIntValue("accountId")
accountType = xml.GetChildContent("accountType")
optionLevel = xml.GetChildContent("optionLevel")
accountDescription = xml.GetChildContent("accountDescription")
quoteMode = xml.GetChildIntValue("quoteMode")
dayTraderStatus = xml.GetChildContent("dayTraderStatus")
accountMode = xml.GetChildContent("accountMode")
fundsForOpenOrdersCash = xml.GetChildIntValue("Cash|fundsForOpenOrdersCash")
moneyMktBalance = xml.GetChildIntValue("Cash|moneyMktBalance")
cashAvailableForInvestment = xml.GetChildIntValue("Computed|cashAvailableForInvestment")
netCash = xml.GetChildContent("Computed|netCash")
cashBalance = xml.GetChildContent("Computed|cashBalance")
settledCashForInvestment = xml.GetChildIntValue("Computed|settledCashForInvestment")
unSettledCashForInvestment = xml.GetChildIntValue("Computed|unSettledCashForInvestment")
fundsWithheldFromPurchasePower = xml.GetChildIntValue("Computed|fundsWithheldFromPurchasePower")
fundsWithheldFromWithdrawal = xml.GetChildIntValue("Computed|fundsWithheldFromWithdrawal")
marginBuyingPower = xml.GetChildIntValue("Computed|marginBuyingPower")
cashBuyingPower = xml.GetChildContent("Computed|cashBuyingPower")
dtMarginBuyingPower = xml.GetChildIntValue("Computed|dtMarginBuyingPower")
dtCashBuyingPower = xml.GetChildIntValue("Computed|dtCashBuyingPower")
shortAdjustBalance = xml.GetChildIntValue("Computed|shortAdjustBalance")
regtEquity = xml.GetChildIntValue("Computed|regtEquity")
regtEquityPercent = xml.GetChildIntValue("Computed|regtEquityPercent")
accountBalance = xml.GetChildIntValue("Computed|accountBalance")
dtCashOpenOrderReserve = xml.GetChildIntValue("Margin|dtCashOpenOrderReserve")
dtMarginOpenOrderReserve = xml.GetChildIntValue("Margin|dtMarginOpenOrderReserve")

Response.Write "<pre>" & Server.HTMLEncode( "Success.") & "</pre>"

%>
</body>
</html>