Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Tcl) ETrade Cancel OrderThe cancel order API is used to cancel an existing order. For more information, see https://apisb.etrade.com/docs/api/order/api-order-v1.html#/definition/cancelOrder
load ./chilkat.dll # This requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. set http [new_CkHttp] CkHttp_put_OAuth1 $http 1 CkHttp_put_OAuthVerifier $http "" CkHttp_put_OAuthConsumerKey $http "ETRADE_CONSUMER_KEY" CkHttp_put_OAuthConsumerSecret $http "ETRADE_CONSUMER_SECRET" # Load the access token previously obtained via the OAuth1 Authorization set jsonToken [new_CkJsonObject] set success [CkJsonObject_LoadFile $jsonToken "qa_data/tokens/etrade.json"] if {$success != 1} then { puts "Failed to load OAuth1 token" delete_CkHttp $http delete_CkJsonObject $jsonToken exit } CkHttp_put_OAuthToken $http [CkJsonObject_stringOf $jsonToken "oauth_token"] CkHttp_put_OAuthTokenSecret $http [CkJsonObject_stringOf $jsonToken "oauth_token_secret"] set sandboxUrl "https://apisb.etrade.com/v1/accounts/{$accountIdKey}/orders/cancel" set liveUrl "https://api.etrade.com/v1/accounts/{$accountIdKey}/orders/cancel" CkHttp_SetUrlVar $http "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> set xml [new_CkXml] CkXml_put_Tag $xml "CancelOrderRequest" CkXml_UpdateChildContent $xml "orderId" "11" CkXml_put_EmitCompact $xml 1 # resp is a CkHttpResponse set resp [CkHttp_PText $http "PUT" $sandboxUrl [CkXml_getXml $xml] "utf-8" "application/xml" 0 0] if {[CkHttp_get_LastMethodSuccess $http] != 1} then { puts [CkHttp_lastErrorText $http] delete_CkHttp $http delete_CkJsonObject $jsonToken delete_CkXml $xml exit } # Make sure a successful response was received. if {[CkHttpResponse_get_StatusCode $resp] > 200} then { puts [CkHttpResponse_statusLine $resp] puts [CkHttpResponse_header $resp] puts [CkHttpResponse_bodyStr $resp] delete_CkHttp $http delete_CkJsonObject $jsonToken delete_CkXml $xml exit } # 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> CkXml_LoadXml $xml [CkHttpResponse_bodyStr $resp] puts [CkXml_getXml $xml] set accountId [CkXml_GetChildIntValue $xml "accountId"] set orderId [CkXml_GetChildIntValue $xml "orderId"] set cancelTime [CkXml_getChildContent $xml "cancelTime"] set code [CkXml_GetChildIntValue $xml "Messages|Message|code"] set description [CkXml_getChildContent $xml "Messages|Message|description"] set v_type [CkXml_getChildContent $xml "Messages|Message|type"] puts "Success." delete_CkHttp $http delete_CkJsonObject $jsonToken delete_CkXml $xml |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.