Finanziamento tramite API

Ultimo aggiornamento: 31 mar 2025

Introduzione

La nostra API REST fornisce diversi endpoint di finanziamento che consentono di eseguire le seguenti operazioni relative a depositi/prelievi:

  • Recuperare/creare indirizzi di deposito

  • Visualizzare lo stato delle transazioni di deposito

  • Richiedere un prelievo (verso un indirizzo/conto già approvato)

  • Visualizzare lo stato delle transazioni di prelievo

Gli endpoint di finanziamento dell'API REST sono tutti endpoint privati (autenticati), pertanto devono essere chiamati utilizzando il metodo HTTP POST e devono includere valori di autenticazione validi nelle intestazioni HTTP.

Le chiavi API utilizzate per le richieste di finanziamento devono includere determinate autorizzazioni, a seconda che la chiave sia di sola lettura (consenta solo la visualizzazione delle transazioni di finanziamento) o con accesso completo (consenta sia la visualizzazione che la richiesta di transazioni di finanziamento).

Esempi

Di seguito sono riportati esempi per ciascuno degli endpoint di finanziamento dell'API REST (utilizzando il nostro client da riga di comando dell'API REST):

DepositMethods

% ./krakenapi DepositMethods asset=doge{"error":[],"result":[{"method":"Dogecoin","limit":false,"gen-address":true}]}

DepositAddresses (nessun indirizzo di deposito disponibile)

% ./krakenapi DepositAddresses asset=doge method=Dogecoin{"error":[],"result":[]}

DepositAddresses (crea un nuovo indirizzo di deposito)

% ./krakenapi DepositAddresses asset=doge method=Dogecoin new=true{"error":[],"result":[{"address":"DFSHkVSQycPZDu8CkiNvx8ymHKHoMLteUD","expiretm":"0","new":true}]}

DepositStatus (depositi su rete nativa)

% ./krakenapi DepositStatus asset=doge{"error":[],"result":[{"method":"Dogecoin","aclass":"currency","asset":"XXDG","refid":"QSBALMX-YTM4MI-REMLWN","txid":"f0cf9b21eeabb87cd240b61ce813490bf03ae96427f5874a55768e7299a9ac9c","info":"DFSHkVSQycPZDu8CkiNvx8ymHKHoMLteUD","amount":"95.00000000","fee":"0.00000000","time":1676727227,"status":"Success"}]}

DepositStatus (depositi su rete ERC20)

% ./krakenapi DepositStatus asset=usdc{"error":[],"result":[{"method":"USDC","aclass":"currency","asset":"USDC","refid":"Q4FTRAH-KPUTB7-ATW3UH","txid":"0x2756a446fa1bd75c4bb84b151a12456e52e0a65ff0aa5f35d7231cd25856058b","info":"0xc2ed795f33ed0b8b43fa8165de0107438237161e","amount":"10.00000000","fee":"0.00000000","time":1679452779,"status":"Success","originators":["0x9d7f5e4b07d8f3fb9456128191e4bc517d3d706da1b1dcf52037d0c93ecae3cc"]}

Si noti il campo aggiuntivo originators che fornisce l'ID della transazione originale (dal client a Kraken), in contrapposizione all'ID della transazione interna (da Kraken a Kraken) fornito dal campo txid.

WithdrawInfo

% ./krakenapi WithdrawInfo asset=doge key=XDG_Wallet amount=100{"error":[],"result":{"method":"XXDG","limit":"100.00000000","amount":"96.00000000","fee":"4.00000000"}}

Withdraw

% ./krakenapi Withdraw asset=doge key=XDG_Wallet amount=100 {"error":[],"result":{"refid":"ASBG2IX-OQZTG5-CRWGN3"}}

WithdrawStatus

% ./krakenapi WithdrawStatus asset=doge{"error":[],"result":[{"method":"Dogecoin","aclass":"currency","asset":"XXDG","refid":"ASBG2IX-OQZTG5-CRWGN3","txid":"86b9bbee8775793d0ef420e3c374a2e7913ad8ba9e1a4939cf3044a09c533e44","info":"DNtxrbNnPWf9RZQMYcrqLL6QRgHoozabwM","amount":"96.00000000","fee":"4.00000000","time":1676713821,"status":"Success"}]}

WithdrawCancel (se possibile)

% ./krakenapi WithdrawCancel asset=doge refid=ASBTV5V-STE7C7-MIQUAC{"error":[],"result":true}

Esempi di errori

Di seguito sono riportati alcuni esempi di richieste di finanziamento fallite, che mostrano i messaggi di errore che potrebbero essere ricevuti:

DepositAddresses (senza un parametro method valido)

% ./krakenapi DepositAddresses asset=doge method=invalid {"error":["EFunding:No funding method"]}

WithdrawInfo (utilizzando una descrizione errata nel parametro key)

% ./krakenapi WithdrawInfo asset=doge key=invalid amount=100{"error":["EFunding:Unknown withdraw key"]}

Withdraw (utilizzando un indirizzo senza le informazioni richieste sul beneficiario/destinatario)

% ./krakenapi Withdraw asset=btc key=BTC_Wallet amount=1.5{"error":["EGeneral:Invalid arguments:beneficiary_recipient"]}

Si noti che le informazioni sul beneficiario/destinatario sono attualmente richieste solo per alcuni prelievi da conti canadesi.

WithdrawCancel (per un prelievo già in corso)

% ./krakenapi WithdrawCancel asset=doge refid=ASBG2IX-OQZTG5-CRWGN3 {"error":["EFunding:Invalid reference id"]}

Hai ancora bisogno di aiuto?