Sample code for 30+ languages & platforms
C#

ETrade Cancel Order

See more ETrade Examples

The cancel order API is used to cancel an existing order.

Chilkat C# Downloads

C#
bool success = false;

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

Chilkat.Http http = new Chilkat.Http();

http.OAuth1 = true;
http.OAuthVerifier = "";
http.OAuthConsumerKey = "ETRADE_CONSUMER_KEY";
http.OAuthConsumerSecret = "ETRADE_CONSUMER_SECRET";

// Load the access token previously obtained via the OAuth1 Authorization
Chilkat.JsonObject jsonToken = new Chilkat.JsonObject();
success = jsonToken.LoadFile("qa_data/tokens/etrade.json");
if (success != true) {
    Debug.WriteLine("Failed to load OAuth1 token");
    return;
}

http.OAuthToken = jsonToken.StringOf("oauth_token");
http.OAuthTokenSecret = jsonToken.StringOf("oauth_token_secret");

string sandboxUrl = "https://apisb.etrade.com/v1/accounts/{$accountIdKey}/orders/cancel";
string liveUrl = "https://api.etrade.com/v1/accounts/{$accountIdKey}/orders/cancel";

http.SetUrlVar("accountIdKey","6_Dpy0rmuQ9cu9IbTfvF2A");

// Send a PUT with the following XML body

// Use this online tool to generate the code from sample XML: 
// Generate Code to Create XML

// <CancelOrderRequest>
//    <orderId>11</orderId>
// </CancelOrderRequest>

Chilkat.Xml xml = new Chilkat.Xml();
xml.Tag = "CancelOrderRequest";
xml.UpdateChildContent("orderId","11");
xml.EmitCompact = true;

string httpRequestBody = xml.GetXml();
Chilkat.HttpResponse resp = new Chilkat.HttpResponse();
success = http.HttpStr("PUT",sandboxUrl,httpRequestBody,"utf-8","application/xml",resp);
if (success == false) {
    Debug.WriteLine(http.LastErrorText);
    return;
}

// Make sure a successful response was received.
if (resp.StatusCode > 200) {
    Debug.WriteLine(resp.StatusLine);
    Debug.WriteLine(resp.Header);
    Debug.WriteLine(resp.BodyStr);
    return;
}

// Sample XML response:

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

// <CancelOrderResponse>
//    <accountId>63438617</accountId>
//    <orderId>11</orderId>
//    <cancelTime>1529563499081</cancelTime>
//    <Messages>
//       <Message>
//          <code>5011</code>
//          <description>200|Your request to cancel your order is being processed.</description>
//          <type>WARNING</type>
//       </Message>
//    </Messages>
// </CancelOrderResponse>

xml.LoadXml(resp.BodyStr);
Debug.WriteLine(xml.GetXml());

int accountId;
int orderId;
string cancelTime;
int code;
string description;
string v_type;

accountId = xml.GetChildIntValue("accountId");
orderId = xml.GetChildIntValue("orderId");
cancelTime = xml.GetChildContent("cancelTime");
code = xml.GetChildIntValue("Messages|Message|code");
description = xml.GetChildContent("Messages|Message|description");
v_type = xml.GetChildContent("Messages|Message|type");

Debug.WriteLine("Success.");