Como usar a API

API do Preço Bitcoin Brasil

A API ddo Preço Bitcoin Brasil permite que você obtenha o valor atualizado do Bitcoin em Reais (R$), com base na média ponderada do último valor e no volume negociado nas últimas 24 horas no par BTC/BRL nas principais exchanges brasileiras.

Adicionalmente, a API pode fornecer informações detalhadas sobre o último valor e o volume negociado nas últimas 24 horas do par BTC/BRL para cada uma das exchanges nacionais.

Ticker

O ticker do Preço Bitcoin Brasil, fornecido pelo Cointrader Monitor, retorna um JSON contendo o par de moedas considerado (pair), informações do último valor do preço do Bitcoin no Brasil (last) arredondado até 2 casas decimais, o volume negociado pelas exchanges nacionais nas últimas 24h (volume24h) arredondado até 2 casas decimais, e a hora de geração do último valor (time) no formato ISO-8601.

O método de requisição é do tipo GET para a URL 'https://cointradermonitor.com/api/pbb/v1/ticker'. A resposta esperada é apresentada abaixo:


{"pair":"BTCBRL","last":46339.51,"volume24h":2617.69,"var24h":7.78,"time":"2020-04-29T21:17:54-0300"}
				

Parâmetro: exchanges
Tipo: Boolean
Valor: true | false

Ao adicionar a querystring "exchanges" com o valor "true" à requisição, a API retorna uma lista de objetos. Os objetos referem-se a cada exchange que apresentou informações nos últimos 60 segundos do tempo solicitado na requisição. Ou seja, se a exchange estiver sem apresentar informações, ela não será incluída na lista de objetos.
Os objetos da lista são compostos pelo código de 3 letras da exchange (code), pelo nome da exchange (name), pelo volume negociado nas últimas 24h (volume24h) arredondado até 2 casas decimais e pelo último valor negociado (last) arredondado até 2 casas decimais.
Se o parâmetro não for especificado, o valor "false" é utilizado por padrão.

Parâmetro: time
Tipo: String
Valor: ISO-8601 Ex: "2020-04-29T21:17:54-0300"

Adicionando a querystring "time" no formato ISO-8601, ao invés da API retornar as informações do momento atual, ela retornará todas as informações do momento solicitado. Não é possível solicitar informações anteriores a "2018-01-09T02:46:15-0000" ou posteriores ao momento atual.
Se o parâmetro não for especificado, a API retornará os dados do momento atual.

Exemplos

C

#include <stdio.h>
#include <string.h>
#include <curl/curl.h>
#include <jansson.h>

int main(int argc, char *argv[])
{
  CURL *curl;
  CURLcode res;

  curl = curl_easy_init();
  if (curl) {
    curl_easy_setopt(curl, CURLOPT_URL, "https://cointradermonitor.com/api/pbb/v1/ticker");
    res = curl_easy_perform(curl);
    if (res == CURLE_OK) {
      char *data;
      json_t *root, *last, *volume24h;
      json_error_t error;

      curl_easy_setopt(curl, CURLOPT_WRITEDATA, &data);
      root = json_loads(data, 0, &error);
      last = json_object_get(root, "last");
      volume24h = json_object_get(root, "volume24h");
      printf("last: %f, volume24h: %f\n", json_number_value(last), json_number_value(volume24h));
      free(data);
      json_decref(root);
    } else {
      fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res));
    }
    curl_easy_cleanup(curl);
  }
  return 0;
}
				

Curl

curl 'https://cointradermonitor.com/api/pbb/v1/ticker?exchanges=true&time=2020-03-10T21:05:00-0300'
				

Go

package main

import (
	"encoding/json"
	"fmt"
	"net/http"
)

func main() {
	resp, err := http.Get("https://cointradermonitor.com/api/pbb/v1/ticker")
	if err != nil {
		fmt.Println(err)
		return
	}
	defer resp.Body.Close()

	var data map[string]interface{}
	err = json.NewDecoder(resp.Body).Decode(&data)
	if err != nil {
		fmt.Println(err)
		return
	}

	fmt.Printf("last: %v, volume24h: %v\n", data["last"], data["volume24h"])
}
				

Java

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

import com.google.gson.JsonObject;
import com.google.gson.JsonParser;

public class Main {
  public static void main(String[] args) throws IOException {
    URL url = new URL("https://cointradermonitor.com/api/pbb/v1/ticker");
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
    connection.setRequestMethod("GET");

    int responseCode = connection.getResponseCode();
    if (responseCode == 200) {
      BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
      StringBuilder response = new StringBuilder();
      String line;
      while ((line = reader.readLine()) != null) {
        response.append(line);
      }
      reader.close();

      JsonObject data = new JsonParser().parse(response.toString()).getAsJsonObject();
      System.out.printf("last: %s, volume24h: %s\n", data.get("last"), data.get("volume24h"));
    } else {
      System.out.println("Request failed with status code " + responseCode);
    }
  }
}

				

JavaScript

const xhr = new XMLHttpRequest();
xhr.open('GET', 'https://cointradermonitor.com/api/pbb/v1/ticker');
xhr.onload = () => {
    if (xhr.status === 200) {
        const data = JSON.parse(xhr.responseText);
        console.log(`last: ${data.last}, volume24h: ${data.volume24h}`);
    }
};
xhr.send();
				

JavaScript (fetch)

fetch('https://cointradermonitor.com/api/pbb/v1/ticker')
  .then(response => response.json())
  .then(data => {
    console.log(`last: ${data.last}, volume24h: ${data.volume24h}`);
  })
  .catch(error => {
    console.error(error);
});
				

JQuery

$.get('https://cointradermonitor.com/api/pbb/v1/ticker', data => {
    console.log(`last: ${data.last}, volume24h: ${data.volume24h}`);
});
				

PHP

<?php
$response = file_get_contents('https://cointradermonitor.com/api/pbb/v1/ticker');
$data = json_decode($response, true);
echo "last: {$data['last']}, volume24h: {$data['volume24h']}" . PHP_EOL;
?>
				

Python

import requests
data = requests.get('https://cointradermonitor.com/api/pbb/v1/ticker').json()
print(f'last: {data["last"]}, volume24h: {data["volume24h"]}')
				

Ruby

require 'net/http'
require 'json'

uri = URI('https://cointradermonitor.com/api/pbb/v1/ticker')
response = Net::HTTP.get(uri)
data = JSON.parse(response)
puts "last: #{data['last']}, volume24h: #{data['volume24h']}"
				

Se você tiver alguma dúvida ou sugestão sobre a API de Preços do Bitcoin no Brasil, o funcionamento das exchanges ou qualquer outro aspecto relacionado, sinta-se à vontade para compartilhá-las nos comentários abaixo. Nossa equipe está comprometida em fornecer informações claras e precisas, e valorizamos sua opinião para melhorar continuamente nossos conteúdos.

Nossos especialistas monitoram os comentários regularmente e estão sempre prontos para responder às suas perguntas e considerar suas sugestões. Faremos o nosso melhor para responder o mais rápido possível, garantindo que você receba informações atualizadas e de alta qualidade.

Agradecemos por escolher nosso serviço como sua fonte de informações sobre a API de Preços do Bitcoin no Brasil e esperamos ajudá-lo a navegar neste mercado em constante evolução.