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
(PowerBuilder) ETrade List AccountsReturns a list of E*TRADE accounts for the current user. For more information, see https://apisb.etrade.com/docs/api/account/api-account-v1.html
integer li_rc oleobject loo_Http oleobject loo_JsonToken integer li_Success string ls_SandboxUrl string ls_LiveUrl oleobject loo_Resp oleobject loo_Xml integer li_AccountId string ls_AccountIdKey string ls_AccountMode string ls_AccountDesc string ls_AccountName string ls_AccountType string ls_InstitutionType string ls_AccountStatus integer li_ClosedDate integer i integer li_Count_i // This requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. loo_Http = create oleobject // Use "Chilkat_9_5_0.Http" for versions of Chilkat < 10.0.0 li_rc = loo_Http.ConnectToNewObject("Chilkat.Http") if li_rc < 0 then destroy loo_Http MessageBox("Error","Connecting to COM object failed") return end if loo_Http.OAuth1 = 1 loo_Http.OAuthVerifier = "" loo_Http.OAuthConsumerKey = "ETRADE_CONSUMER_KEY" loo_Http.OAuthConsumerSecret = "ETRADE_CONSUMER_SECRET" // Load the access token previously obtained via the OAuth1 Authorization loo_JsonToken = create oleobject // Use "Chilkat_9_5_0.JsonObject" for versions of Chilkat < 10.0.0 li_rc = loo_JsonToken.ConnectToNewObject("Chilkat.JsonObject") li_Success = loo_JsonToken.LoadFile("qa_data/tokens/etrade.json") if li_Success <> 1 then Write-Debug "Failed to load OAuth1 token" destroy loo_Http destroy loo_JsonToken return end if loo_Http.OAuthToken = loo_JsonToken.StringOf("oauth_token") loo_Http.OAuthTokenSecret = loo_JsonToken.StringOf("oauth_token_secret") ls_SandboxUrl = "https://apisb.etrade.com/v1/accounts/list" ls_LiveUrl = "https://api.etrade.com/v1/accounts/list" loo_Resp = loo_Http.QuickGetObj(ls_SandboxUrl) if loo_Http.LastMethodSuccess <> 1 then Write-Debug loo_Http.LastErrorText destroy loo_Http destroy loo_JsonToken return end if // Make sure a successful response was received. if loo_Resp.StatusCode >= 300 then Write-Debug loo_Resp.StatusLine Write-Debug loo_Resp.Header Write-Debug loo_Resp.BodyStr destroy loo_Http destroy loo_JsonToken return end if if loo_Resp.StatusCode = 204 then Write-Debug "No records available." destroy loo_Http destroy loo_JsonToken return 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" standalone="yes"?> // <AccountListResponse> // <Accounts> // <Account> // <accountId>82314598</accountId> // <accountIdKey>dBZOKt9xDrtRSAOl4MSiiA</accountIdKey> // <accountMode>IRA</accountMode> // <accountDesc>Brokerage</accountDesc> // <accountName>NickName-1</accountName> // <accountType>MARGIN</accountType> // <institutionType>BROKERAGE</institutionType> // <accountStatus>ACTIVE</accountStatus> // <closedDate>0</closedDate> // </Account> // <Account> // <accountId>58315636</accountId> // <accountIdKey>vQMsebA1H5WltUfDkJP48g</accountIdKey> // <accountMode>BROKERAGE</accountMode> // <accountDesc>Complete Savings</accountDesc> // <accountName>NickName-2</accountName> // <accountType>INDIVIDUAL</accountType> // <institutionType>BROKERAGE</institutionType> // <accountStatus>ACTIVE</accountStatus> // <closedDate>0</closedDate> // </Account> // <Account> // <accountId>70700418</accountId> // <accountIdKey>6_Dpy0rmuQ9cu9IbTfvF2A</accountIdKey> // <accountMode>CASH</accountMode> // <accountDesc>INDIVIDUAL</accountDesc> // <accountName>NickName-3</accountName> // <accountType>INDIVIDUAL</accountType> // <institutionType>BROKERAGE</institutionType> // <accountStatus>ACTIVE</accountStatus> // <closedDate>0</closedDate> // </Account> // <Account> // <accountId>83515143</accountId> // <accountIdKey>xj1Dc18FTqWPqkEEVUr5rw</accountIdKey> // <accountMode>CASH</accountMode> // <accountDesc>INDIVIDUAL</accountDesc> // <accountName/> // <accountType>CASH</accountType> // <institutionType>BROKERAGE</institutionType> // <accountStatus>CLOSED</accountStatus> // <closedDate>1521027780</closedDate> // // </Account> // </Accounts> // </AccountListResponse> loo_Xml = create oleobject // Use "Chilkat_9_5_0.Xml" for versions of Chilkat < 10.0.0 li_rc = loo_Xml.ConnectToNewObject("Chilkat.Xml") loo_Xml.LoadXml(loo_Resp.BodyStr) Write-Debug loo_Xml.GetXml() i = 0 li_Count_i = loo_Xml.NumChildrenHavingTag("Accounts|Account") do while i < li_Count_i loo_Xml.I = i li_AccountId = loo_Xml.GetChildIntValue("Accounts|Account[i]|accountId") ls_AccountIdKey = loo_Xml.GetChildContent("Accounts|Account[i]|accountIdKey") ls_AccountMode = loo_Xml.GetChildContent("Accounts|Account[i]|accountMode") ls_AccountDesc = loo_Xml.GetChildContent("Accounts|Account[i]|accountDesc") ls_AccountName = loo_Xml.GetChildContent("Accounts|Account[i]|accountName") ls_AccountType = loo_Xml.GetChildContent("Accounts|Account[i]|accountType") ls_InstitutionType = loo_Xml.GetChildContent("Accounts|Account[i]|institutionType") ls_AccountStatus = loo_Xml.GetChildContent("Accounts|Account[i]|accountStatus") li_ClosedDate = loo_Xml.GetChildIntValue("Accounts|Account[i]|closedDate") i = i + 1 loop Write-Debug "Success." destroy loo_Http destroy loo_JsonToken destroy loo_Xml |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.