All
Filtrar por:
Como faço para depositar dinheiro na minha conta?
Eu preciso de ajuda com a verificação da conta
Por que não consigo acessar minha conta?
Há taxas de retirada de criptomoedas?
Eu preciso de ajuda para entrar na minha conta
Nossos endpoints públicos da API REST são acessíveis via uma simples solicitação HTTP (assim como uma página da web é solicitada via um navegador web), então um cliente de API para importar dados de mercado para uma Planilha Google pode ser implementado com apenas algumas linhas de código Google Script.
Crie uma nova Planilha Google ou abra uma planilha existente.
Abra o editor de script através do menu Extensões -> Apps Script.
Exclua o código padrão que é exibido (Selecionar Tudo e depois Excluir/Backspace, por exemplo).
Copie/Cole o código da API do Google Script (mostrado abaixo) no editor de script.
Opcional - Adicione quaisquer funções personalizadas adicionais que você precise (para chamar diferentes endpoints ou retornar diferentes campos JSON, por exemplo).
Salve o Código do Google Script através do ícone (Salvar projeto).

A função KAPI_Public() é responsável por criar a URL apropriada e fazer a solicitação HTTP para a API. A função KAPI_Public() pode ser chamada diretamente inserindo o seguinte (ou similar, dependendo do endpoint e dos parâmetros) em uma célula da Planilha Google:
Bash
=KAPI_Ticker("XBTUSD,ETHEUR,LTCUSD,XDGXBT,XDGUSD")
=KAPI_Depth("XDGUSD", "5")A função KAPI_Public() retorna a resposta JSON original da API, como o seguinte para o exemplo de endpoint Depth acima:
Bash
{"error":[],"result":{"XETHZUSD":{"asks":[["231.74000","4.386",1583402326],["231.75000","27.337",1583402277],["231.76000","5.887",1583402311],["231.79000","36.280",1583402334],["231.80000","50.000",1583402299]],"bids":[["231.70000","18.534",1583402335],["231.67000","22.109",1583402335],["231.61000","7.930",1583402335],["231.60000","33.841",1583402335],["231.54000","115.017",1583402334]]}}}Para colocar os campos/valores individuais em células separadas dentro da Planilha Google, funções personalizadas adicionais podem ser chamadas para analisar a resposta JSON, como as funções de exemplo KAPI_Ticker() e KAPI_Depth():
Bash
=KAPI_Ticker("XBTUSD,ETHEUR,LTCUSD,XDGXBT,XDGUSD")
=KAPI_Depth("XDGUSD", "5")que exibiria os resultados de forma semelhante ao seguinte, onde os dados seriam acessíveis a qualquer uma das funções padrão do Google Sheets (SOMA, MÉDIA, CONTAGEM, etc.):

Função Geral a ser incluída para chamadas a todos os Endpoints Públicos:
Bash
function KAPI_Public(endpoint, parameters) {
http_response = UrlFetchApp.fetch(
'https://api.kraken.com/0/public/' + endpoint + '?' + parameters
)
api_data = http_response.getContentText()
return api_data
}Exemplos de funções específicas para um determinado endpoint:
Profundidade:
Bash
function KAPI_Depth(currency_pair, depth) {
api_data = JSON.parse(
KAPI_Public("Depth", "pair=" + currency_pair + "&count=" + depth)
)
api_results = new Array()
for (count = 0; count < parseInt(depth); count++) {
api_results.push([
api_data['result'][currency_pair]['bids'][count][0],
api_data['result'][currency_pair]['bids'][count][1],
api_data['result'][currency_pair]['asks'][count][0],
api_data['result'][currency_pair]['asks'][count][1]
])
}
return api_results
}Ticker:
Bash
function KAPI_Ticker(currency_pairs) {
api_data = JSON.parse(
KAPI_Public("Ticker", "pair=" + currency_pairs)
)
api_results = new Array()
for (name in api_data['result']) {
api_results.push([
name,
api_data['result'][name]['a'][0],
api_data['result'][name]['a'][2],
api_data['result'][name]['b'][0],
api_data['result'][name]['b'][2],
api_data['result'][name]['c'][0],
api_data['result'][name]['c'][1]
])
}
return api_results
}Para usar os scripts acima, basta anexar o script genérico ao script específico do endpoint:
Bash
function KAPI_Public(endpoint, parameters) {
http_response = UrlFetchApp.fetch(
'https://api.kraken.com/0/public/' + endpoint + '?' + parameters
)
api_data = http_response.getContentText()
return api_data
}
function KAPI_Depth(currency_pair, depth) {
api_data = JSON.parse(
KAPI_Public("Depth", "pair=" + currency_pair + "&count=" + depth)
)
api_results = new Array()
for (count = 0; count < parseInt(depth); count++) {
api_results.push([
api_data['result'][currency_pair]['bids'][count][0],
api_data['result'][currency_pair]['bids'][count][1],
api_data['result'][currency_pair]['asks'][count][0],
api_data['result'][currency_pair]['asks'][count][1]
])
}
return api_results
}Os separadores decimais e de milhares mostrados neste artigo podem diferir dos formatos exibidos em nossas plataformas de negociação. Consulte nosso artigo sobre como usamos pontos e vírgulas para obter mais informações.