Cerca
Come creare una API key
Le API key sono una componente fondamentale dell'autenticazione tramite API e costituiscono l'equivalente API di nome utente e password dell'account di Kraken.
Le API key sono necessarie per richiedere qualsiasi punto finale dell'API specifico dell'account (noto anche come privato), ovvero un punto finale utilizzato per la gestione dell'accountil trading, il versamento di fondi e lo staking. Le API key non sono necessarie per richiedere i punti finali dell'API dei dati di mercato (noti anche come pubblici), poiché questi non sono associati a nessun account di Kraken specifico.
Le API key possono essere utilizzate da qualsiasi software che interagisce con mercati e account, come i nostri command line REST API client, alcune app per dispositivi mobili, piattaforme di trading come Cryptowatch, bot di trading di terze parti e molti altri prodotti/servizi.

Creazione di una API key

  • Apri il menu dell'account (cliccando sul tuo nome nell'angolo in alto a destra della pagina)
  • Seleziona l'opzione Sicurezza
  • Seleziona l'opzione API
API_Key_1.png
  • Clicca sul link Aggiungi key (potrai configurare la tua API key nelle fasi successive)
API_Key_2.png

Configurazione di una API key

Prima di utilizzare una API key è necessario impostare varie opzioni e configurazioni, in particolare la descrizione o il nome e le autorizzazioni di accesso.
API_Key_Settings.png

Descrizione della key

La descrizione della key è sostanzialmente il nome dell'API key, che può essere scelta a piacere purché risulti univoca (diversa dalle descrizioni di tutte le altre API key nello stesso account).
Per impostazione predefinita, la descrizione della key viene automaticamente popolata con un codice quale "api-key-1605316109249". Tale descrizione predefinita può essere mantenuta o sostituita da un nome più descrittivo, come "Key di Trading", "Key Gestione Account", "API Key Python 6" o "Key app mobile".

Autorizzazioni della key

Le autorizzazioni della key determinano i punti finali dell'API specifici (privati) dell'account che l'API key è autorizzata a utilizzare:

Fondi

  • L'autorizzazione Dati sui fondi è necessaria per i punti finali dell'API che recuperano le informazioni relative al saldo dell'account, come Balance e TradeBalance.
  • L'autorizzazione Deposito fondi viene utilizzata dai punti finali di versamento correlati ai depositi, come DepositMethods e DepositAddresses.
  • L'autorizzazione Prelievo fondi è necessaria per i punti finali di versamento correlati ai prelievi, come WithdrawInfo, Withdraw e WithdrawCancel.

Ordini & Trade

  • L'autorizzazione Dati su Trade e Ordini aperti viene utilizzata dai punti finali dell'API che recuperano informazioni su posizioni con margine e ordini esistenti, come OpenOrders, QueryOrders e OpenPositions.
  • L'autorizzazione Dati su Trade e Ordini chiusi viene utilizzata dai punti finali che recuperano informazioni su posizioni con margine e ordini chiusi o annullati in precedenza, come ClosedOrders, QueryOrders e QueryTrades.
  • L'autorizzazione Modifica ordini viene utilizzata per i punti finali di trading che eseguono nuovi ordini, come AddOrder, EditOrder e AddOrderBatch.
  • L'autorizzazione Annulla/Chiudi Ordini viene utilizzata per i punti finali di trading che annullano gli ordini aperti o in sospeso, come CancelOrder, CancelAll e CancelOrderBatch.

Altro

  • L'autorizzazione Dati su Voci Ledger viene utilizzata dagli endpoints dell'API che recuperano i dati storici dell'account dal relativo ledger, ovvero Ledgers e QueryLedgers.
  • L'autorizzazione Esportazione Dati viene utilizzata dagli endpoints dell'API che esportano (scaricano) il ledger dell'account, ovvero AddExport, RetrieveExport, ExportStatus e RemoveExport.
  • L'autorizzazione Accesso API WebSocket viene utilizzata per recuperare un token di autenticazione per le WebSocket API tramite i punti finali di GetWebSocketsToken.
Come esempio di utilizzo corretto delle autorizzazioni della chiave, considera una API key che viene fornita a terze parti a scopo di trading. Una API key di questo tipo richiede sicuramente le autorizzazioni Modifica Ordini e Annulla/Chiudi Ordini e potrebbe richiedere l'autorizzazione Dati su Trade e Ordini Aperti, ma probabilmente non richiede l'autorizzazione Prelievo Fondi.
Configurando correttamente le autorizzazioni, si offre all'API client la possibilità di eseguire trade per l'account, ma non quella di accedere alle informazioni sull'account o di eseguire attività di versamento.

Impostazioni opzionali

Le altre impostazioni relative all'API key sono necessarie solo per le configurazioni più avanzate, e in genere è possibile mantenere i valori predefiniti:
  • Finestra nonce è un'impostazione utilizzata per risolvere i problemi di rete che potrebbero causare la mancata esecuzione delle richieste API fornendo un breve intervallo di tempo (1 secondo, 10 secondi e così via) durante il quale le richieste API con un nonce non valido (un valore del nonce inferiore a uno utilizzato in precedenza) non causeranno un errore. 
  • Whitelist degli IP è una funzionalità di sicurezza che limita l'uso della API key a indirizzi IP specifici lato cliente.
  • Scadenza key può essere utilizzata per creare un'API key che funziona solo per un determinato periodo di tempo, ad esempio per una sola settimana.
  • Dati su ora/data di inizio/fine è un'impostazione che limita le richieste di dati cronologici di un account a un intervallo di tempo specifico, ad esempio una key che potrebbe recuperare la cronologia di trading di quest'anno, ma non degli anni precedenti.
Una volta configurate correttamente le impostazioni relative, è possibile generare la nuova API key cliccando sul pulsante Genera key.
IMPORTANTE: L'API key, la key privata e il codice QR devono essere trattati come se fossero nome utente e password. Salvali in un password manager per potervi accedere nuovamente in seguito e qualora fosse necessario. Non salvarli in un formato non criptato!

Uso di una API key

Una API key è costituita da una coppia di chiavi (pubblica/privata) che devono essere fornite al software dell'API client.
API_ExampleKey1Generated_03122021.png
Può essere utilizzata in tre modi:
  • La coppia di chiavi può essere copiata e incollata come testo semplice, direttamente nel codice del client API. Esempio: metodo utilizzato dal nostro PHP API client.
  • La coppia di chiavi può essere copiata e incollata in file di testo semplice accessibili all'API client. Esempio: metodo utilizzato dal nostro command line API client.
Nota: in alcuni software API client, la chiave privata prende il nome di "API secret" (o semplicemente "secret").

Autenticazione a due fattori per l'API key

Le API key offrono già un metodo sicuro per autenticare l'accesso tramite API a un account Kraken, ma è possibile aumentare ulteriormente il livello di protezione aggiungendo l'autenticazione a due fattori (2FA).
La 2FA per l'API key può essere aggiunta a una API key esistente tramite la pagina Sicurezza e può utilizzare una password statica o Google Authenticator.
Nota: per aggiungere la 2FA a una API key è necessario utilizzare anche un API client che supporta la 2FA, fornendo i dati relativi per ogni richiesta ai metodi API privati. In caso contrario, al posto dell'output desiderato dell'API viene restituito un errore imprevisto.
Per ulteriori informazioni sul funzionamento della 2FA per le API key, clicca qui.