![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Swift) ETrade Cancel OrderThe cancel order API is used to cancel an existing order. Note: This example requires Chilkat v11.0.0 or greater. For more information, see https://apisb.etrade.com/docs/api/order/api-order-v1.html#/definition/cancelOrder
func chilkatTest() { var success: Bool = false // This requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. let http = CkoHttp()! 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 let jsonToken = CkoJsonObject()! success = jsonToken.loadFile("qa_data/tokens/etrade.json") if success != true { print("Failed to load OAuth1 token") return } http.oAuthToken = jsonToken.string(of: "oauth_token") http.oAuthTokenSecret = jsonToken.string(of: "oauth_token_secret") var sandboxUrl: String? = "https://apisb.etrade.com/v1/accounts/{$accountIdKey}/orders/cancel" var liveUrl: String? = "https://api.etrade.com/v1/accounts/{$accountIdKey}/orders/cancel" http.setUrlVar("accountIdKey", value: "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> let xml = CkoXml()! xml.tag = "CancelOrderRequest" xml.updateChildContent("orderId", value: "11") xml.emitCompact = true var httpRequestBody: String? = xml.getXml() let resp = CkoHttpResponse()! success = http.httpStr("PUT", url: sandboxUrl, bodyStr: httpRequestBody, charset: "utf-8", contentType: "application/xml", response: resp) if success == false { print("\(http.lastErrorText!)") return } // Make sure a successful response was received. if resp.statusCode.intValue > 200 { print("\(resp.statusLine!)") print("\(resp.header!)") print("\(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.load(resp.bodyStr) print("\(xml.getXml()!)") var accountId: Int var orderId: Int var cancelTime: String? var code: Int var description: String? var v_type: String? accountId = xml.getChildIntValue("accountId").intValue orderId = xml.getChildIntValue("orderId").intValue cancelTime = xml.getChildContent("cancelTime") code = xml.getChildIntValue("Messages|Message|code").intValue description = xml.getChildContent("Messages|Message|description") v_type = xml.getChildContent("Messages|Message|type") print("Success.") } |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.