Sample code for 30+ languages & platforms
PHP ActiveX

ETrade v1 List Accounts

See more HTTP Misc Examples

List ETrade accounts using the ETrade v1 API.

Chilkat PHP ActiveX Downloads

PHP ActiveX
<?php

$success = 0;

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

$http = new COM("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 3-Legged Authorization examples Step1 and Step2.
$json = new COM("Chilkat.JsonObject");
$success = $json->LoadFile('qa_data/tokens/etrade.json');
if ($success != 1) {
    print 'Failed to load OAuth1 token' . "\n";
    exit;
}

$http->OAuthToken = $json->stringOf('oauth_token');
$http->OAuthTokenSecret = $json->stringOf('oauth_token_secret');

// See the ETrade v1 API documentation HERE.

$respStr = $http->quickGetStr('https://apisb.etrade.com/v1/accounts/list');
if ($http->LastMethodSuccess != 1) {
    print $http->LastErrorText . "\n";
    exit;
}

// A 200 status code indicates success.
$statusCode = $http->LastStatus;
print 'statusCode = ' . $statusCode . "\n";

// 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 = new COM("Chilkat.Xml");
$xml->LoadXml($respStr);

$i = 0;
$count_i = $xml->NumChildrenHavingTag('Accounts|Account');
while ($i < $count_i) {
    $xml->I = $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;
}

// <?xml version="1.0" encoding="UTF-8"?>
// <AccountListResponse>
//    <Accounts>
//       <Account>
//          <accountId>84010429</accountId>
//          <accountIdKey>JIdOIAcSpwR1Jva7RQBraQ</accountIdKey>
//          <accountMode>MARGIN</accountMode>
//          <accountDesc>INDIVIDUAL</accountDesc>
//          <accountName>Individual Brokerage</accountName>
//          <accountType>INDIVIDUAL</accountType>
//          <institutionType>BROKERAGE</institutionType>
//          <accountStatus>ACTIVE</accountStatus>
//          <closedDate>0</closedDate>
//       </Account>
//       <Account>
//          <accountId>84010430</accountId>
//          <accountIdKey>JAAOIAcSpwR1Jva7RQBraQ</accountIdKey>
//          <accountMode>MARGIN</accountMode>
//          <accountDesc>INDIVIDUAL</accountDesc>
//          <accountName>Individual Brokerage</accountName>
//          <accountType>INDIVIDUAL</accountType>
//          <institutionType>BROKERAGE</institutionType>
//          <accountStatus>ACTIVE</accountStatus>
//          <closedDate>0</closedDate>
//       </Account>
//    </Accounts>
// </AccountListResponse>

?>