As chaves API são um dos componentes principais da autenticação de API e segurança; elas são o equivalente de API para um nome de usuário e senha de sua conta Kraken.
As chaves API são necessárias para chamar qualquer um dos endpoints de API específicos da conta (privados), como os dados da conta, negociação, os depósitos e retiradas e ganhe endpoints. As chaves API não são necessárias para chamar os endpoints de API de dados de mercado (públicos), pois os endpoints de dados de mercado não estão associados a nenhuma Conta Kraken específica.
As chaves API podem ser usadas por qualquer software que interaja com nossos mercados e contas, como nossos clientes de linha de comando da API REST API, alguns aplicativos móveis, plataforma de negociação, bots de negociação de terceiros e muitos outros produtos/serviços.
- •Criando uma chave API
- •Configurando uma chave API (permissões/configurações)
- •Usando uma chave API
- •Verificação em duas etapas (2FA) da chave API
Criando uma chave API
- •Abra o menu da conta (clique no ícone de perfil no canto superior direito da página).
- •Selecione a opção Configurações.
- •Selecione a guia API e clique em Criar Chave API.
Configurando uma chave API
As chaves API têm várias configurações e opções que devem ser definidas antes que uma chave API possa ser usada, especialmente o nome/descrição e as permissões de acesso.
Descrição da chave
A descrição da chave é essencialmente o nome da chave API, e pode ser composta de quase tudo o que você queira usar, desde que a descrição seja exclusiva (diferente das descrições de qualquer outra chave API na mesma conta).
Por padrão, a descrição da chave será preenchida com algo como "api-key-1605316109249". Essa descrição padrão pode ser mantida ou alterada para um nome mais descritivo (como"Chave de negociação", "Chave de gestão de contas", "Chave Python API 6", ou "Chave de aplicativo móvel", por exemplo).
Permissões da chave
As permissões da chave determinam quais endpoints de API específicos da conta (privada) a chave API tem autorização para chamar:
Fundos
- •Consultar fundos é necessário para os endpoints de API que consultam as informações de saldo da conta, como Balance e TradeBalance.
- •Depositar fundos é necessário para os endpoints de depósitos e retiradas relacionados a depósitos, como DepositMethods e DepositAddresses.
- •Retirar fundos é necessário para os endpoints de depósitos e retiradas relacionados a retiradas, como WithdrawInfo, Withdraw e WithdrawCancel.
Ordens e negociações
- •Consultar ordens e negociações& abertas é necessário para os endpoints de API que consultam ordens e posições com margem já existentes, como OpenOrders, QueryOrders e OpenPositions.
- •Consultar ordens e negociações & fechadas é necessário para os endpoints que consultam ordens e posições com margem que já tenham sido canceladas/fechadas, como ClosedOrders, QueryOrders e QueryTrades.
- •Modificar ordens é necessário para os endpoints de negociação que fazem novas ordens, como AddOrder, EditOrder e AddOrderBatch.
- •Cancelar/fechar ordens é necessário para endpoints de negociação que cancelam ordens abertas ou pendentes, como CancelOrder, CancelAll e CancelOrderBatch.
Outros
- •Consultar entradas no registro é necessário para os endpoints de API que recuperam dados históricos da conta do registro da conta, ou seja, Ledgers e QueryLedgers.
- •Exportar dados é necessário para os endpoints que exportam (fazem o download) o registro da conta, ou seja, AddExport, RetrieveExport, ExportStatus e RemoveExport.
- •Acessar API do WebSockets é necessário para recuperar um token de autenticação para os APIs do WebSocket por meio do endpoint GetWebSocketsToken.
Como um exemplo de uso correto das permissões de chave API, imagine uma chave API fornecida a terceiros para fins de negociação. Com toda certeza, essa chave API exigiria permissões de Modificar ordens e Cancelar/fechar ordens. Provavelmente, exigiria permissão de Consultar Ordens em aberto &Negociações, mas certamente não exigiria a permissão de Retirar fundos.
Configurar as permissões corretamente é algo que permitiria que o cliente da API fizesse negociações na conta, mas o impediria de acessar quaisquer informações da conta ou realizar ações de depósitos e retiradas.
Configurações opcionais
As demais configurações da chave API são necessárias apenas para definições mais avançadas. Portanto, geralmente podem ser mantidas com seus valores padrão:
- •A janela nonce é uma configuração usada para superar problemas de rede que podem fazer com que as solicitações de API cheguem fora de ordem, fornecendo um intervalo de tempo curto (1 segundo, 10 segundos etc.), durante o qual as solicitações de API com um nonce inválido (um valor nonce menor que um valor nonce usado anteriormente) não causarão um erro de nonce inválido.
- •A lista de permissões de IP é um recurso de segurança que restringe o uso da chave API a endereços IP específicos do lado do cliente.
- •A Expiração de chave pode ser usada para criar uma chave API que funcione apenas por um período específico, como uma chave válida somente por 1 semana.
- •Data/hora de início/término da consulta é uma configuração que restringe solicitações de dados históricos de contas a um período específico, como uma chave que pode recuperar o histórico de negociações deste ano, mas não de quaisquer anos anteriores.
Depois que as configurações da chave API tiverem sido definidas adequadamente, a nova chave API poderá ser criada clicando-se no botão Gerar chave.
IMPORTANTE: A chave API, a chave privada e o código QR devem ser tratados da mesma forma que seu nome de usuário/senha. Salve-os em um gerenciador de senhas, se precisar acessá-los novamente mais tarde. Não salve essas informações em um formato que não seja criptografado!
Usando uma chave API
As chaves API consistem em um par de chaves públicas e privadas, ambas devem ser fornecidas ao software do cliente de API.
chaves API pode ser fornecido de diferentes maneiras como, por exemplo:
- •O par de chaves pode ser copiado e colado como texto simples diretamente no código do cliente de API. Exemplo: O método usado por nosso cliente de API PHP.
- •O par de chaves pode ser copiado e colado em arquivos de texto simples que o cliente de API possa acessar. Exemplo: O método usado por nosso cliente de API de linha de comando.
Observação: A chave privada também é conhecida como o segredo de API (ou apenas como segredo) por alguns softwares de cliente de API.
Verificação em duas etapas para chave API
As chaves API já oferecem uma maneira segura de autenticar o acesso da API a uma conta Kraken, mas a sua segurança pode ser aprimorada ainda mais com a verificação em duas etapas (2FA).
A verificação em duas etapas da chave API pode ser adicionada a uma chave API já existente por meio da página Segurança e pode usar uma senha estática ou o Google Authenticator.
Observação: A adição da verificação em duas etapas a uma chave API também requer que o cliente de API tenha compatibilidade com a verificação em duas etapas (ou seja, forneça os dados da verificação em duas etapas para cada chamada aos métodos de API privada). Caso contrário, ocorrerá um erro inesperado em vez da geração da API desejada.
Saiba mais sobre como funciona a verificação em duas etapas (2FA) com as chaves API aqui.