All
篩選條件:
我該如何將現金存入我的帳戶當中?
我需要帳戶驗證方面的幫助
為甚麼我無法訪問我的帳戶?
提取加密貨幣會產生任何費用嗎?
我需要協助登錄我的帳戶
大多數 API 請求都能成功完成,但有時會出錯,並返回錯誤訊息而非預期回應。
我們的 API 提供各種描述性錯誤訊息,旨在說明錯誤原因並提供適當的解決方案建議。
API 錯誤訊息可分為幾個不同的組別(取決於錯誤類型、根本原因和最佳解決方案),但 API 錯誤訊息的格式是一致的,如下所示:
"Severity Level""Error Category":"Error Message"
「嚴重程度」可以是 E 代表錯誤,或 W 代表警告。「錯誤類別」可以是 General、API、Query、Order、Trade、Funding 或 Service 之一。「錯誤訊息」可以是描述錯誤原因的任何文字字串(例如 Invalid arguments)。
例如,指示在 ticker 查詢中使用了無效貨幣對的錯誤將如下所示:
EQuery:Unknown asset pair
請注意,某些第三方軟件(流動應用程式、交易機器人等)會選擇隱藏原始 API 錯誤並顯示自訂錯誤,因此可能會根據所使用的軟件而出現替代的錯誤格式或內容。
一般使用錯誤
速率限制錯誤
交易(下單/取消訂單)錯誤
資金(存款/提款)錯誤
服務狀態錯誤
內部錯誤
Cloudflare(網絡)錯誤
當 API 客戶端嘗試執行 API 金鑰沒有權限的任務時,會返回「權限遭拒」錯誤。例如,如果 API 客戶端嘗試使用配置為允許交易存取但未允許帳戶管理存取的 API 金鑰來檢索帳戶餘額,則會返回「權限遭拒」錯誤。您可以透過帳戶管理中的「設定」->「API」分頁檢閱您的 API 金鑰及其設定(例如其權限)。您需要確保您的第三方應用程式所使用的 API 金鑰具有您的應用程式所需的所有設定和權限。
當用於呼叫的 API 金鑰已過期或已停用時,會返回此錯誤,請在帳戶管理中的「設定」->「API」分頁檢閱 API 金鑰,或產生一個新的並更新您的應用程式。
您可以從 AssetPairs 公開呼叫中提取我們資產對的完整列表,並在 Json 標頭的條目中或透過參數 "altname" 查找配對名稱:https://api.kraken.com/0/public/AssetPairs
當呼叫方法時沒有提供所需參數,就會返回此錯誤。例如,在未指定有效交易 ID (txid) 參數的情況下呼叫 QueryOrders 方法,將導致返回無效參數錯誤。即使呼叫方法時帶有不必要的參數,也不會返回無效參數錯誤,因為不必要的參數將被簡單地忽略。
「無效簽名」錯誤發生在您的程式中 API 金鑰或 API 密鑰寫入不正確,或者用於驗證的 POST 資料與發送到 API 的 POST 資料不匹配時。作為額外參考,以下是實現 API 簽名演算法的 Python 範例程式碼。應從帳戶管理中複製並貼上適當的 API 公鑰,並相應地更新 API 方法和 POST 資料。輸出值可以直接用作 API-Sign HTTP 標頭的值。 #!/usr/bin/env python
# 導入所需的 Python 函式庫
import time
import base64
import hashlib
import hmac
# 從帳戶管理中顯示的 base64 格式解碼 API 私鑰
api_secret = base64.b64decode("nmlrD83t1J+yVWKUBx9vD6j26C5zhC11tFfXpN+Ww+8oOVuGgse5AeADcvl95jYaD+UAi3D5CrVfFr8GfQ7zhA==")
# 變數(API 方法、nonce 和 POST 資料)
api_path = "/0/private/TradeBalance"
api_nonce = str(int(time.time()*1000))
api_post = "nonce=" + api_nonce + "&asset=xxbt"
# 加密雜湊演算法
api_sha256 = hashlib.sha256(api_nonce + api_post).digest()
api_hmac = hmac.new(api_secret, api_path + api_sha256, hashlib.sha512)
# 將簽名編碼為 API-Sign 值中使用的 base64 格式
api_signature = base64.b64encode(api_hmac.digest())
# 用於 API-Sign HTTP 標頭的 API 驗證簽名
print(api_signature)SHA256 是使用 nonce 值本身以及 API 方法的 POST 資料計算的,POST 資料由 nonce(再次)和 API 方法參數的名稱/值對組成。應傳遞給 TradeBalance 方法的 SHA256 資料範例如下:SHA256 = SHA256 of "1541933977000nonce=1541933977000&asset=xxbt"傳遞給 SHA256 的字串值不應包含任何額外的空值 (\0),並且字串值不應編碼為 base64 或 hex(即,字串值應為純文字字串)。URI 路徑是 API 方法的整個 URL,除了「https://api.kraken.com」前綴,因此 TradeBalance 方法的 URI 路徑(例如)將是字串值「/0/private/TradeBalance」,不帶任何額外的空值。HMAC SHA512 是使用 URI 路徑和先前計算的 SHA256 摘要,並以 base64 解碼的 API 私鑰作為 HMAC 金鑰計算的。應傳遞給 HMAC 的資料範例如下:HMAC SHA512 using base64 decoded private key = HMAC of "/0/private/TradeBalanceSHA256"API-Key 和 API-Sign HTTP 標頭是僅有的兩個必需的自訂 HTTP 標頭。API-Key 標頭是帳戶管理中 API 公鑰的精確副本。API-Sign 標頭是使用 base64 編碼的 HMAC SHA512 摘要。
您可以在此處找到有關此錯誤的更多資訊:https://support.kraken.com/hc/en-us/articles/360001148063並在此處找到有關 Nonce 和 Nonce Window 的更多資訊:https://support.kraken.com/hc/en-us/articles/360000906023https://support.kraken.com/hc/en-us/articles/360001148023
當嘗試使用不再有效(例如已過期)的驗證令牌訂閱經過驗證(私人)的資訊源時,WebSocket API 會返回「無效會話」錯誤。
解決方案是透過 REST API GetWebSocketsToken 端點請求新的驗證令牌,並將新令牌用於所有後續的經過驗證(私人)訂閱請求。
「錯誤請求」錯誤表示底層 HTTP 請求(而非後續的 API 請求)存在問題,例如 REST/WebSocket 之間的 URL 不匹配,或未正確包含 HTTP POST 資料:
% curl --data "" https://api.kraken.com/0/private/GetWebSocketsToken
{"error":["EAPI:Bad request"]}
當呼叫的端點不是有效端點時,會返回此錯誤。
雖然新增和取消訂單不計入我們的標準 API 計數器限制,但這些操作有其自己的新增和取消訂單計數器。此計數器的工作方式是,訂單在訂單簿上保留的時間越長,客戶能夠新增或取消的訂單就越多。
如果您在短時間內有太多失敗的 API 呼叫、太多無效的 nonce 錯誤或無效簽名,可能會發生暫時鎖定錯誤訊息。即使這些呼叫返回錯誤,該錯誤仍會計入您的 API 限制,並可能導致暫時鎖定。
暫時鎖定大約持續 15 分鐘。收到暫時鎖定錯誤後,請等待 15 分鐘再發送任何新的 API 請求。如果您觸發了多個無效的 nonce 錯誤,請增加 nonce 視窗,這有助於減少這些錯誤發生的頻率。也請嘗試減少您的私人 API 呼叫頻率。
由於交易引擎維護,保證金現貨新倉位已暫時暫停。此功能將很快恢復,您可以透過 status.kraken.com 關注更新。
另一個原因可能是,保證金現貨倉位目前不適用於居住在某些國家的客戶。
在 Kraken 上,您不能為同一交易對同時開立多頭和空頭倉位。
如果希望為同一幣種開立多頭和空頭倉位,請選擇以該幣種作為基礎貨幣或報價貨幣的不同交易對。例如:空頭 XBT/USD,多頭 XBT/EUR。
當您超出當前驗證級別的保證金限額時,會出現此錯誤。每個幣種的保證金限額會根據您的當前驗證級別而異。
我們用於保證金擴展的資金有限。「保證金不足」訊息表示我們暫時用盡了適用保證金池中的資金。這種情況隨時可能改變。您可能在幾秒或幾分鐘後就能成功下單,但大額訂單和在高交易量時段下達的訂單可能需要更長時間。對於由此造成的不便,我們深表歉意。
當帳戶的可用保證金不足以開立新倉位,或者當前開倉嘗試會導致帳戶的可用保證金降至 100% 以下時,會出現此錯誤。
您沒有足夠的可用資金來下達此訂單。請檢查您的未平倉位和訂單,以了解可能佔用您資金的項目。
您尚未達到此資產的最低訂單量。
您已超出帳戶可用的最大未平倉訂單數量。
這些限制是根據您的驗證級別而定。請關閉部分未平倉訂單,或將您的帳戶驗證至更高級別。
您已超出帳戶可用的最大未平倉位數量。
這些限制是根據您的驗證級別而定。請關閉或結算部分或所有未平倉位,或在可能的情況下將您的帳戶驗證至更高級別。
嘗試編輯現有 (未平倉) 訂單,但修改未能成功完成。可能的原因包括新訂單資金不足、部分成交情況以及部分槓桿訂單。
新交易量小於已執行/已成交的交易量。
訂單規模超出該交易對的保證金倉位規模限制。
顯示交易量未達到最低訂單量。
顯示交易量必須小於訂單交易量。
冰山訂單不兼容除限價訂單以外的任何其他訂單類型。
每種加密貨幣最多有 5 個新的 (未使用的) 充值地址,在此之後,任何嘗試創建第 6 個新地址的行為都將返回錯誤。
當資金端點在呼叫時帶有無效或缺失的「method」參數時,會返回此錯誤。
「key」輸入參數與帳戶管理中設定的地址描述不符 (透過資金 -> 提款)。
每個幣種的最低提款金額各不相同,任何低於最低金額的提款嘗試都將導致此錯誤。
這是一個通用錯誤,表示資金請求無法完成 (例如,來自某些地區的客戶嘗試發出鏈上質押請求會導致此錯誤)。
請求的提款無法完成,因為目的地地址缺少所需的受益人/收款人資訊(請注意,這目前僅適用於從加拿大帳戶進行的部分提款)。
您遇到的服務錯誤應該只是暫時性的。如果您的請求失敗,您可能需要重新提交。我們將會監察這些問題並更新我們的頁面:
https://status.kraken.com/
當我們面臨 API 降級問題時,這可能會導致 Kraken 出現問題,表現為服務不可用訊息和網站中斷。
此問題與您的帳戶安全有關,您的帳戶可能已被盜用。請更改您的密碼和雙重認證,並聯絡我們的支援中心。
當旗標或輸入參數被暫時或永久停用時,會發生此錯誤。錯誤應來自其中一個傳入的輸入,請聯絡我們的支援部門,並附上產生錯誤的呼叫所使用的完整資訊日誌。
這些 5xx 和 10xx 錯誤實際上並非 API 錯誤,而是來自 Cloudflare 的網絡伺服器錯誤。
API 錯誤總是會以 JSON 格式返回,例如「error」:[「ErrorType:ErrorMessage」],因此,任何時候收到不同格式的錯誤(例如 HTTP 狀態碼 520、504、502、1020 等),臨時解決方案是稍後再嘗試進行 API 呼叫,希望該呼叫屆時會成功。