Перейти к основному содержимому

Авторизация

Запрос

Каждый запрос должен содержать заголовки Api-key и Signature и должен передавать параметры в формате JSON:

Пример запроса к API
POST /v2/balances HTTP/1.1
Content-Type: application/json
Accept: application/json; charset=utf-8
Api-key: {publicApiKey}
Signature: {signature}
{} /* request body, an empty object for requests without arguments */
  • {publicApiKey} - ваш публичный ключ API
  • {signature} - цифровая подпись, создается по методу HMAC на основе алгоритма sha256 с использованием вашего секретного ключа API и тела запроса в формате JSON
Пример создания цифровой подписи, PHP
/** @var array $data */
$jsonData = json_encode($data);
$signature = hash_hmac("sha256", $jsonData, $secretKey, false);
  • $secretKey - ваш секретный ключ API

Ответ

Ответ API также содержит заголовок Signature с цифровой подписью для верификации. Подпись создается по методу HMAC на основе алгоритма sha256 с использованием вашего секретного ключа API и тела ответа в формате JSON

Пример ответа API
HTTP/1.1 200 OK
Content-Type: application/json
Signature: {signature}

{
/* The overall status of the request execution means that the API processed the request correctly */
"status": "success",
"data": {
"usdt": {
"currency": "usdt",
"wallet_uuid": "fc630e08-c4bc-4a6f-ab1b-0c668a093426",
"amount": "38021.77",
"overdraft": "50",
"updated_at": "1970-01-01 12:40:11",
"currency_precision": 2
},
...
}
}
Пример проверки цифровой подписи полученного ответа, PHP
/** @var \Psr\Http\Message\ResponseInterface $response */
if(
$response->getHeaderLine('Signature') === hash_hmac(
'sha256',
$response->getBody()->getContents(),
$secretKey
)
)
{
// You can trust
}
Важно

В случае ошибки во время исполнения запроса мерчанта, сервис возвращает http code 400, код и описание ошибки. Подробнее см. Коды ошибок