Bittrex API #400 "Bad Request" WebRequest problem

작업 종료됨

실행 시간 5 시간
고객의 피드백
Good and fast programmer, quickly responds to messages, stays on point.
피고용인의 피드백
Great customer, very friendly and kindly.

명시

I have been using bittrex bot for over a year and few days ago it started to report BAD REQUEST (400) error. (my code did not change, something changed in Bittrex)

this is my mql code:

int nonce = TimeGMT();
string uri = "https://bittrex.com/api/v1.1/market/getopenorders?apikey="+api_key+"&nonce="+nonce; 
StringToCharArray(uri, uri_char, 0, WHOLE_ARRAY, CP_UTF8); 
string output = CryptCreateSHA512Hash(uri,api_secret); 
ArrayResize(uri_char, ArraySize(uri_char)-1);
string headers = "apisign:"+output; 
int res=WebRequest("POST",uri, headers,private_api_timeout,uri_char, result_char, result_headers);
result = CharArrayToString(result_char,0,WHOLE_ARRAY);
if(res!=200)
{
   Print2("Authorization error #"+(string)res+", LastError="+(string)GetLastError());
   Print2("result = "+result);
   Print2("ERROR: Positions NOT LOADED from all pairs!");
} else {
...
}

reports:

Authorization error #400, LastError=0
result2 = Bad Request

php example, that works:

<?php

$apikey='xxx';
$apisecret='xxx'; 
$nonce=time(); 
$uri='https://bittrex.com/api/v1.1/market/getopenorders?apikey='.$apikey.'&nonce='.$nonce; 
$sign=hash_hmac('sha512',$uri,$apisecret); 
$ch = curl_init($uri); 
curl_setopt($ch, CURLOPT_HTTPHEADER, array('apisign:'.$sign)); 
$execResult = curl_exec($ch); 
$obj = json_decode($execResult);

if (curl_error($ch)) {
    $error_msg = curl_error($ch);
    echo 'error='.$error_msg;
} else {
    echo 'execResult='.$execResult;
}

?>

returns:

{"success":true,"message":"","result":[]}execResult=1


When I wrote their customer support, they replied:

Hi,

The the V1.1 API has been changed to no longer accept request bodies. You must use the API as documented with a query string.

https://support.bittrex.com/hc/en-us/articles/115003723911-Developer-s-Guide-API

Best Regards,

But I still can't catch what am I doing wrong in my code. Another response from service desk, after me implying that their method doesn't work for me:

HI,

Our developers are working to resolve this issue. Please see the information below. 

There is a workaround to use GetOrdersEx which does not require a POST.

## API POST Account/GetOrders

* Method : POST
* URL : https://bittrex.com/api/v1.1/Account/GetOrders?apikey=xxx&nonce=1234
* HEADER :
  * apisign : signature with hmac(sah512) fro above URL
* BODY format :
  * {"orders":["xxxxxxxx-2f68-405b-bfd3-fb19b362feea","xxxxxxxx-3583-48e5-951f-29b3ed04b65f"]}
* LIMIT : orders count <= 1000

I need someone to make my code great again and make it work with Bittrex API, as it used to.

응답함

1
개발자 1
등급
(5)
프로젝트
5
20%
중재
2
0% / 100%
기한 초과
1
20%
무료
2
개발자 2
등급
(69)
프로젝트
93
34%
중재
10
40% / 30%
기한 초과
5
5%
무료
비슷한 주문
I am looking for an experienced MQL4/MQL5 developer to build a custom MT4 indicator from scratch or cracking my ex4 file that i provide to you. I already have an existing indicator (EX4) which produces highly accurate buy/sell signals. I want a similar indicator developed based on its observable behavior and signal structure. my existing indicator is pc id protected so you have to do PC ID security bypass and source
Patricia Ukawilu 6:43 PM I need help creating an EA to optimize my trade. I already have a preliminary pine script which I will want optimized and create an EA from it to optimize my trade on MT4. I also subscribed to a signal app. I’m looking to automate the execution of the signal from the app so as not to miss out on good trades

프로젝트 정보

예산
30 - 60 USD
기한
에서 1  2 일