Como faço pra pegar as informações de uma solicitação http

Olá, estou com um projeto que necessita fazer consultas nesta api: https://www.mercadobitcoin.com.br/api-doc/#glosario_api_dados
E gostaria de saber, o que fazer para pegar os dados dela depois de uma consulta http. Ela retorna um json.
ps; Não entendo bem de como fazer isso. Eu peguei uma etapa que vi aqui em um post, vou vou mostrar o código na imagem. Depois de rodar o código, recebi a mensagem “json recebido” mas dai em diante não sei como prosseguir. Agradeço a ajuda.

Posta o código em si e não imagens dele.
Não dá pra compilar imagens. :wink:

public class Teste {
private static final String URL_API = “https://www.mercadobitcoin.net/api/BTC/ticker/”;

public static void main(String[] args) {
	HttpURLConnection con = null;
	try {
		URL url = new URL(URL_API);
		con = (HttpURLConnection) url.openConnection();
		con.setRequestMethod("GET");
		con.connect();

		switch (con.getResponseCode()) {
		case 200:
			System.out.println("JSON recebido!");
			String json = getJson(url);

			JsonParser parser = new JsonParser();
			JsonObject obj = (JsonObject) parser.parse(json);

			Set<Entry<String, JsonElement>> el = obj.entrySet();
			
			for (Entry<String, JsonElement> els : el) {
				if (els.getKey().equals("status")) {
					
					System.out.println(els.getKey() + ":" + els.getValue().getAsBoolean());
				} else if (els.getKey().equals("valores")) {
					JsonElement e = els.getValue();
					JsonObject jobj = e.getAsJsonObject();
					Set<Entry<String, JsonElement>> props = jobj.entrySet();
					for (Entry<String, JsonElement> prop : props) {
						System.out.println(prop.getKey() + ":" + String.valueOf(prop.getValue()));
					}
				}
			}
			break;
		case 500:
			System.out.println("Status 500");
			break;
		}
	} catch (Exception e) {
		e.printStackTrace();
	} finally {
		if (con != null)
			con.disconnect();
	}

}

public static String getJson(URL url) {
	if (url == null)
		throw new RuntimeException("URL é null");

	String html = null;
	StringBuilder sB = new StringBuilder();
	try (BufferedReader bR = new BufferedReader(new InputStreamReader(url.openStream()))) {
		while ((html = bR.readLine()) != null)
			sB.append(html);
	} catch (Exception e) {
		e.printStackTrace();
	}

	return sB.toString();
}

}

O seu código faz download do seguinte JSON:

{"ticker": {"buy": "35500.00003000", "sell": "35649.97994000", "high": "36000.00000000", "low": "35100.00000000", "vol": "605.24297600", "last": "35500.00003000", "date": 1560866345}}

Mas você está tentando obter valores de propriedades que não estão nele.

O que exatamente você quer fazer com esse JSON?

Eu queria poder pegar o valor do “buy”, para poder jogar um banco de dados e consumir esse dado.