Sample code for 30+ languages & platforms
Java

ETrade List Accounts

See more ETrade Examples

Returns a list of E*TRADE accounts for the current user.

Chilkat Java Downloads

Chilkat2 Java
import com.chilkatsoft.chilkat2.ChilkatException;
import com.chilkatsoft.chilkat2.Http;
import com.chilkatsoft.chilkat2.HttpResponse;
import com.chilkatsoft.chilkat2.JsonObject;
import com.chilkatsoft.chilkat2.Xml;

public class ChilkatExample {

    public static void main(String[] args) {
        // This requires the Chilkat API to have been previously unlocked.
        // See Global Unlock Sample for sample code.

        Http http = new Http();

        http.setOAuth1(true);
        http.setOAuthVerifier("");
        http.setOAuthConsumerKey("ETRADE_CONSUMER_KEY");
        http.setOAuthConsumerSecret("ETRADE_CONSUMER_SECRET");

        // Load the access token previously obtained via the OAuth1 Authorization
        JsonObject jsonToken = new JsonObject();
        try {
            jsonToken.loadFile("qa_data/tokens/etrade.json");
        } catch (ChilkatException e) {
            System.out.println("Failed to load OAuth1 token");
            return;
        }

        http.setOAuthToken(jsonToken.stringOf("oauth_token"));
        http.setOAuthTokenSecret(jsonToken.stringOf("oauth_token_secret"));

        String sandboxUrl = "https://apisb.etrade.com/v1/accounts/list";
        String liveUrl = "https://api.etrade.com/v1/accounts/list";

        HttpResponse resp = new HttpResponse();
        try {
            http.httpNoBody("GET", sandboxUrl, resp);
        } catch (ChilkatException e) {
            System.out.println(e.getLastErrorText());
            return;
        }

        // Make sure a successful response was received.
        if (resp.getStatusCode() >= 300) {
            System.out.println(resp.getStatusLine());
            System.out.println(resp.getHeader());
            System.out.println(resp.getBodyStr());
            return;
        }

        if (resp.getStatusCode() == 204) {
            System.out.println("No records available.");
            return;
        }

        // 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>

        Xml xml = new Xml();
        xml.loadXml(resp.getBodyStr());
        System.out.println(xml.getXml());

        int accountId = 0;
        String accountIdKey = "";
        String accountMode = "";
        String accountDesc = "";
        String accountName = "";
        String accountType = "";
        String institutionType = "";
        String accountStatus = "";
        int closedDate = 0;

        int i = 0;
        int count_i = xml.numChildrenHavingTag("Accounts|Account");
        while (i < count_i) {
            xml.setI(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;
        }

        System.out.println("Success.");
    }
}