Вызовы и возвращаемые данные (REST API)

Последнее обновление: 31 мар. 2025 г.

Вызовы


Для доступа к конечным точкам API необходимо отправлять HTTP-запросы на следующий URL.

https://futures.kraken.com/derivatives/api/v3

Для вызовов приватных конечных точек необходимо предоставить следующие HTTP-заголовки: apiKey и
authent. Включение nonce в запрос является необязательным.

Пример

Ниже приведен пример включения HTTP-заголовков в Java. Полные рабочие примеры на различных языках программирования см. в разделе Примеры реализаций. String url = "https://futures.kraken.com/derivatives/api/v3/sendOrder";
URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
...
con.setRequestProperty("APIKey", apiKey);
con.setRequestProperty("Authent", authent); где apiKey и authent определяются, как описано ранее.


Вызовы конечных точек, которые не изменяют состояние сервера, должны отправляться с requestType
= GET и с postData, передаваемыми в URL. Вызовы конечных точек, которые изменяют состояние сервера, должны отправляться с requestType = POST и с postData, передаваемыми в URL. В разделе 4 подробно описано, какой requestType следует использовать для каждой конечной точки.

Возвращаемые данные


Возвращаемые данные API имеют формат JSON. Если вызов был успешным, возвращаемые данные включают запрошенную
информацию или обратную связь по запрошенному действию. Описание возвращаемых данных для каждой конечной точки см. в разделе Error! Reference source not found.

Если вызов был успешным, ключ result в корневой структуре будет иметь значение success.

Для вызовов приватных конечных точек необходимо предоставить следующие HTTP-заголовки: apiKey и
authent.

Пример

Ниже показан результат успешного вызова конечной точки sendorder.
{
"result":"success",
"serverTime":"2016-02-25T09:45:53.818Z",
"sendStatus":{
"receivedTime":"2016-02-25T09:45:53.601Z",
"status":"placed",
"order_id":"c18f0c17-9971-40e6-8e5b10df05d422f0"
}
}


Обратите внимание, что если вызов возвращает result, равный success, это означает лишь то, что запрос был успешно получен и оценен. Это не обязательно означает, что желаемая операция была выполнена. Подробности о статусе операции возвращаются в ключе status, если применимо.

Пример

Ниже показан результат успешного вызова конечной точки sendorder, где желаемая операция не была выполнена. {
"result":"success",
"serverTime":"2016-02-25T09:45:53.818Z",
"sendStatus":{
"receivedTime":"2016-02-25T09:45:53.601Z",
"status":"insufficientAvailableFunds"
}
}

Нужна дополнительная помощь?