Financiamento via API

Última atualização: 31/03/2025

Introdução

A nossa API REST fornece vários endpoints de financiamento que permitem realizar as seguintes tarefas relacionadas com depósitos/levantamentos:

  • Obter/criar endereços de depósito

  • Ver o estado das transações de depósito

  • Solicitar um levantamento (para um endereço/conta já aprovado)

  • Ver o estado das transações de levantamento

Todos os endpoints de financiamento da API REST são endpoints privados (autenticados), por isso devem ser chamados usando o método HTTP POST e devem incluir valores de autenticação válidos nos cabeçalhos HTTP.

As chaves de API usadas para pedidos de financiamento devem incluir certas permissões, dependendo se a chave será apenas de leitura (apenas permite visualizar transações de financiamento) ou de acesso total (permite visualizar e solicitar transações de financiamento).

Exemplos

Seguem-se exemplos para cada um dos endpoints de financiamento da API REST (usando o nosso cliente de linha de comando da API REST):

DepositMethods

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

DepositAddresses (nenhum endereço de depósito disponível)

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

DepositAddresses (criar um novo endereço de depósito)

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

DepositStatus (depósitos na rede 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 (depósitos na rede 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"]}]}

Note o campo adicional originators que fornece o ID da transação original (cliente para Kraken), em oposição ao ID da transação interna (Kraken para Kraken) fornecido pelo 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 possível)

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

Exemplos falhados

Seguem-se exemplos de alguns pedidos de financiamento falhados, mostrando as mensagens de erro que podem ser recebidas:

DepositAddresses (sem um parâmetro method válido)

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

WithdrawInfo (usando uma descrição incorreta no parâmetro key)

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

Withdraw (usando um endereço sem as informações de beneficiário/recetor necessárias)

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

Note que as informações de beneficiário/recetor são atualmente exigidas apenas para levantamentos selecionados de contas canadianas.

WithdrawCancel (para um levantamento já em processamento)

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

Precisa de mais ajuda?