Помогите настроить API запрос для биржи HitBTC, выдает ошибку 1004 Unsupported authorization method
Помогите пожалуйста перевести этот код в PHP, уже много часов не получается его запустить
Из документации https://api.hitbtc.com/#authentication
Здесь вообще не понятно что за язык и как все это читать
PS. на каком языке выяснил, это Node.js
curl -u "apiKey:secretKey" https://api.hitbtc.com/api/3/spot/balance
import requests
session = requests.session()
session.auth = ("apiKey", "secretKey")
const fetch = require('node-fetch');
const credentials = Buffer.from('apiKey' + ':' + 'secretKey').toString('base64');
fetch('https://api.hitbtc.com/api/3/spot/balance', {
method: 'GET',
headers: {
'Authorization': 'Basic ' + credentials
}
});
Заготовка
function request($url, $params = []) {
$api_key = '12345';
$api_secret = '12345';
$curl = curl_init();
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$params['apikey'] = $api_key;
$params['nonce'] = intval(microtime(true) * 1000);
$query = http_build_query($params, '', '&');
$request = $url .'?'. $query;
$sign = strtolower(hash_hmac('sha512', '/'. $request, $api_secret));
curl_setopt($curl, CURLOPT_HTTPHEADER, [
'Api-Signature: '. $sign,
'User-Agent: Hitbtc PHP Client'
]);
curl_setopt($curl, CURLOPT_URL, 'https://api.hitbtc.com/'. $request);
return curl_exec($curl);
}
$result = request('api/3/spot/balance');
var_dump($result);
exit;
// Выдает ошибку 1004 401 Unsupported authorization method Use Basic authentication.
Ранее работал с таким вызовом
$result = request('api/1/trading/balance');
Но они обновили API, не получается разобраться как теперь подстроить под него код.
Очень надеюсь на любую помощь, так как знаком только с языком php
Ответы (2 шт):
Автор решения: Serge88
→ Ссылка
Получилось новую версию путем проб и ошибок подстроить код под PHP
Плохо что документацию не пишут под разные языки программирования
function request($url, $params = []) {
$api_key = '12345';
$api_secret = '12345';
$curl = curl_init();
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, [
'Authorization: Basic '. base64_encode($api_key .':'. $api_secret)
]);
curl_setopt($curl, CURLOPT_URL, 'https://api.hitbtc.com/'. $url);
return curl_exec($curl);
}
$result = request('api/3/wallet/balance');
var_dump($result);
exit;