Sample code for 30+ languages & platforms
Rust

ETrade v1 List Orders

See more HTTP Misc Examples

Gets the order details for a selected brokerage account based on the search criteria provided.

Chilkat Rust Downloads

Rust

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

let http = chilkat::Http::new();

http.set_o_auth1(true);
http.set_o_auth_verifier("");
http.set_o_auth_consumer_key("ETRADE_CONSUMER_KEY");
http.set_o_auth_consumer_secret("ETRADE_CONSUMER_SECRET");

// Load the access token previously obtained via the OAuth1 3-Legged Authorization examples Step1 and Step2.
let json = chilkat::JsonObject::new();
if json.load_file("qa_data/tokens/etrade.json").is_err() {
    println!("Failed to load OAuth1 token");
    return;
}

http.set_o_auth_token(&json.string_of("oauth_token").unwrap_or_default());
http.set_o_auth_token_secret(&json.string_of("oauth_token_secret").unwrap_or_default());

// See the ETrade v1 API documentation HERE.

let _ = http.set_url_var("accountIdKey", "vsnhtF7d9jXxBy6HyaAC4vQ");
let Ok(resp_str) = http.quick_get_str("https://apisb.etrade.com/v1/accounts/{$accountIdKey}/orders?securityType=EQ&count=100") else {
    println!("{}", http.last_error_text());
    return;
};

// A 200 status code indicates success.
let status_code = http.last_status();
println!("statusCode = {}", status_code);

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

// A sample XML response is shown below...

let xml = chilkat::Xml::new();
let _ = xml.load_xml(&resp_str);

let mut i: i32 = 0;

i = 0;
let count_i = xml.num_children_having_tag("Order");
while i < count_i {
    xml.set_i(i);
    let _ = xml.get_child_int_value("Order[i]|orderId");
    let _ = xml.get_child_content("Order[i]|details").unwrap_or_default();
    let _ = xml.get_child_content("Order[i]|orderType").unwrap_or_default();
    let _ = xml.get_child_content("Order[i]|OrderDetail").unwrap_or_default();
    i = i + 1;
}

// Sample XML Response
// <?xml version="1.0" encoding="UTF-8"?>
// <OrdersResponse>
//    <Order>
//       <orderId>96</orderId>
//       <details>https://api.etrade.com/v1/accounts/ZrnXF-hPu853sBzwHfWGBQ/orders/96</details>
//       <orderType>EQ</orderType>
//       <OrderDetail>�</OrderDetail>
//    </Order>
//    <Order>
//       <orderId>95</orderId>
//       <details>https://api.etrade.com/v1/accounts/ZrnXF-hPu853sBzwHfWGBQ/orders/95</details>
//       <orderType>EQ</orderType>
//       <OrderDetail>�</OrderDetail>
//    </Order>
//    <Order>
//       <orderId>94</orderId>
//       <details>https://api.etrade.com/v1/accounts/ZrnXF-hPu853sBzwHfWGBQ/orders/94</details>
//       <orderType>EQ</orderType>
//       <OrderDetail>�</OrderDetail>
//    </Order>
//    <Order>
//       <orderId>93</orderId>
//       <details>https://api.etrade.com/v1/accounts/ZrnXF-hPu853sBzwHfWGBQ/orders/93</details>
//       <orderType>EQ</orderType>
//       <OrderDetail>�</OrderDetail>
//    </Order>
// </OrdersResponse>