Sample code for 30+ languages & platforms
AutoIt

ETrade v1 List Transactions

See more HTTP Misc Examples

Get information about the transactions in an ETrade brokerage account.

Chilkat AutoIt Downloads

AutoIt
Local $bSuccess = False

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

$oHttp = ObjCreate("Chilkat.Http")

$oHttp.OAuth1 = True
$oHttp.OAuthVerifier = ""
$oHttp.OAuthConsumerKey = "ETRADE_CONSUMER_KEY"
$oHttp.OAuthConsumerSecret = "ETRADE_CONSUMER_SECRET"

; Load the access token previously obtained via the OAuth1 3-Legged Authorization examples Step1 and Step2.
$oJson = ObjCreate("Chilkat.JsonObject")
$bSuccess = $oJson.LoadFile("qa_data/tokens/etrade.json")
If ($bSuccess <> True) Then
    ConsoleWrite("Failed to load OAuth1 token" & @CRLF)
    Exit
EndIf

$oHttp.OAuthToken = $oJson.StringOf("oauth_token")
$oHttp.OAuthTokenSecret = $oJson.StringOf("oauth_token_secret")

; See the ETrade v1 API documentation HERE.

$oHttp.SetUrlVar("accountIdKey","vsnhtF7d9jXxBy6HyaAC4vQ")
Local $sRespStr = $oHttp.QuickGetStr("https://apisb.etrade.com/v1/accounts/{$accountIdKey}/transactions")
If ($oHttp.LastMethodSuccess <> True) Then
    ConsoleWrite($oHttp.LastErrorText & @CRLF)
    Exit
EndIf

; A 200 status code indicates success.
Local $iStatusCode = $oHttp.LastStatus
ConsoleWrite("statusCode = " & $iStatusCode & @CRLF)

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

; A sample XML response is shown below...

$oXml = ObjCreate("Chilkat.Xml")
$oXml.LoadXml($sRespStr)

Local $i
Local $iCount_i
Local $sTagPath
Local $sTransactionId
Local $iAccountId
Local $sTransactionDate
Local $sPostDate
Local $iAmount
Local $sDescription
Local $iDescription2
Local $sTransactionType
Local $sImageFlag
Local $sInstType
Local $iQuantity
Local $iPrice
Local $settlementCurrency
Local $sPaymentCurrency
Local $iFee
Local $settlementDate
Local $sDetailsURI
Local $sPageMarkers
Local $sMoreTransactions
Local $iTransactionCount
Local $iTotalCount

$i = 0
$iCount_i = $oXml.NumChildrenHavingTag("Transaction")
While $i < $iCount_i
    $oXml.I = $i
    $sTransactionId = $oXml.GetChildContent("Transaction[i]|transactionId")
    $iAccountId = $oXml.GetChildIntValue("Transaction[i]|accountId")
    $sTransactionDate = $oXml.GetChildContent("Transaction[i]|transactionDate")
    $sPostDate = $oXml.GetChildContent("Transaction[i]|postDate")
    $iAmount = $oXml.GetChildIntValue("Transaction[i]|amount")
    $sDescription = $oXml.GetChildContent("Transaction[i]|description")
    $iDescription2 = $oXml.GetChildIntValue("Transaction[i]|description2")
    $sTransactionType = $oXml.GetChildContent("Transaction[i]|transactionType")
    $sImageFlag = $oXml.GetChildContent("Transaction[i]|imageFlag")
    $sInstType = $oXml.GetChildContent("Transaction[i]|instType")
    $iQuantity = $oXml.GetChildIntValue("Transaction[i]|brokerage|quantity")
    $iPrice = $oXml.GetChildIntValue("Transaction[i]|brokerage|price")
    $settlementCurrency = $oXml.GetChildContent("Transaction[i]|brokerage|settlementCurrency")
    $sPaymentCurrency = $oXml.GetChildContent("Transaction[i]|brokerage|paymentCurrency")
    $iFee = $oXml.GetChildIntValue("Transaction[i]|brokerage|fee")
    $settlementDate = $oXml.GetChildContent("Transaction[i]|brokerage|settlementDate")
    $sDetailsURI = $oXml.GetChildContent("Transaction[i]|detailsURI")
    $i = $i + 1
Wend
$sPageMarkers = $oXml.GetChildContent("pageMarkers")
$sMoreTransactions = $oXml.GetChildContent("moreTransactions")
$iTransactionCount = $oXml.GetChildIntValue("transactionCount")
$iTotalCount = $oXml.GetChildIntValue("totalCount")

; <?xml version="1.0" encoding="UTF-8"?>
; <TransactionListResponse>
;    <Transaction>
;       <transactionId>18165100001766</transactionId>
;       <accountId>83564979</accountId>
;       <transactionDate>1528948800000</transactionDate>
;       <postDate>1528948800000</postDate>
;       <amount>-2</amount>
;       <description>ACH WITHDRAWL REFID:109187276;</description>
;       <description2>109187276</description2>
;       <transactionType>Transfer</transactionType>
;       <memo />
;       <imageFlag>false</imageFlag>
;       <instType>BROKERAGE</instType>
;       <brokerage>
;          <product />
;          <quantity>0</quantity>
;          <price>0</price>
;          <settlementCurrency>USD</settlementCurrency>
;          <paymentCurrency>USD</paymentCurrency>
;          <fee>0</fee>
;          <settlementDate>1528948800000</settlementDate>
;       </brokerage>
;       <detailsURI>https://api.etrade.com/v1/accounts/yIFaUoJ81qyAhgxLWRQ42g/transactions/18165100001766</detailsURI>
;    </Transaction>
;    <Transaction>
;       <transactionId>18158100000983</transactionId>
;       <accountId>83564979</accountId>
;       <transactionDate>1528344000000</transactionDate>
;       <postDate>1528344000000</postDate>
;       <amount>-2</amount>
;       <description>ACH WITHDRAWL REFID:98655276;</description>
;       <description2>98655276</description2>
;       <transactionType>Transfer</transactionType>
;       <memo />
;       <imageFlag>false</imageFlag>
;       <instType>BROKERAGE</instType>
;       <brokerage>
;          <product />
;          <quantity>0</quantity>
;          <price>0</price>
;          <settlementCurrency>USD</settlementCurrency>
;          <paymentCurrency>USD</paymentCurrency>
;          <fee>0</fee>
;          <settlementDate>1528344000000</settlementDate>
;       </brokerage>
;       <detailsURI>https://api.etrade.com/v1/accounts/yIFaUoJ81qyAhgxLWRQ42g/transactions/18158100000983</detailsURI>
;    </Transaction>
;    <pageMarkers>eNpTsAlITE91zi%2FNK%2FHMc04syi8tTs2xM7TRxybMpWATkl%2BSmBOUmpxflAKWtTO10ccQg6mDmwEyEE0EqAbE8SvNTUotCk4tLE3NS061M9Ax0DEEYgOIA9BkuRQgmjxTfDKLQUYoQAV8E4uyU4vsDC0MzUwNDYDA0NzMrKamBmIKVJYLphpiKsyTUB7IbH1kwwFa7F0D</pageMarkers>
;    <moreTransactions>false</moreTransactions>
;    <transactionCount>5</transactionCount>
;    <totalCount>5</totalCount>
; </TransactionListResponse