Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Go) ETrade v1 Get Account BalancesGet account balances using the ETrade v1 API.
// This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. http := chilkat.NewHttp() http.SetOAuth1(true) http.SetOAuthVerifier("") http.SetOAuthConsumerKey("ETRADE_CONSUMER_KEY") http.SetOAuthConsumerSecret("ETRADE_CONSUMER_SECRET") // Load the access token previously obtained via the OAuth1 3-Legged Authorization examples Step1 and Step2. json := chilkat.NewJsonObject() success := json.LoadFile("qa_data/tokens/etrade.json") if success != true { fmt.Println("Failed to load OAuth1 token") http.DisposeHttp() json.DisposeJsonObject() return } http.SetOAuthToken(json.StringOf("oauth_token")) http.SetOAuthTokenSecret(json.StringOf("oauth_token_secret")) // See the ETrade v1 API documentation HERE. http.SetUrlVar("accountIdKey","vsnhtF7d9jXxBy6HyaAC4vQ") http.SetUrlVar("instType","BROKERAGE") respStr := http.QuickGetStr("https://apisb.etrade.com/v1/accounts/{$accountIdKey}/balance?instType={$instType}&realTimeNAV=true") if http.LastMethodSuccess() != true { fmt.Println(http.LastErrorText()) http.DisposeHttp() json.DisposeJsonObject() return } // A 200 status code indicates success. statusCode := http.LastStatus() fmt.Println("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... xml := chilkat.NewXml() xml.LoadXml(*respStr) var tagPath string var accountId int var accountType *string = new(string) var optionLevel *string = new(string) var accountDescription *string = new(string) var quoteMode int var dayTraderStatus *string = new(string) var accountMode *string = new(string) var fundsForOpenOrdersCash int var moneyMktBalance int var cashAvailableForInvestment int var netCash *string = new(string) var cashBalance *string = new(string) var settledCashForInvestment int var unSettledCashForInvestment int var fundsWithheldFromPurchasePower int var fundsWithheldFromWithdrawal int var marginBuyingPower int var cashBuyingPower *string = new(string) var dtMarginBuyingPower int var dtCashBuyingPower int var shortAdjustBalance int var regtEquity int var regtEquityPercent int var accountBalance int var dtCashOpenOrderReserve int var dtMarginOpenOrderReserve int 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") // <?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> http.DisposeHttp() json.DisposeJsonObject() xml.DisposeXml() |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.