:

Cidades que consultaram nas últimas 24 horas


Requisições

nos últimos 30 dias

Top cidades

# Nome WOEID
Carregando...
Tempo de Resposta - Response time, tempo de processamento da requisição.

Radar de chuvas SP

Conheça a nova documentação do HG Weather

Obter dados por código da cidade (WOEID)

Com este método, informamos os dados de tempo no código de cidade do Yahoo. Dessa maneira, você não precisa se registrar na API e por ser uma consulta mais simples, geralmente o seu tempo de resposta é melhor.

GET https://api.hgbrasil.com/weather/?format=json&woeid=455903
visualizar resposta

Parâmetros:

locale: (opcional, idioma da resposta, padrão português)
- pt (português)
- en (inglês)

format: (formato de resposta)
- json
- json-cors (liberado para AJAX, requer chave com domínio correto)
- php-serialize
- debug (resposta em JSON indentado, recomenda-se apenas para leitura)

woeid: (código da cidade no Yahoo Weather)
- informe o código da cidade desejada, busque abaixo o WOEID de sua cidade

Buscar cidade: qualquer cidade no mundo

Obter dados por Geo IP

Com este método, informamos os dados de tempo baseado no Geo IP do Yahoo, o sistema busca uma localição aproximada do seu usuário se baseando pelo IP.

GET https://api.hgbrasil.com/weather/?format=json&user_ip=000.000.000.000&key=SUA-CHAVE
visualizar resposta

Parâmetros:

locale: (opcional, idioma da resposta, padrão português)
- pt (português)
- en (inglês)

format: (formato de resposta)
- json
- json-cors (liberado para AJAX, requer chave com domínio correto)
- php-serialize
- debug (resposta em JSON indentado, recomenda-se apenas para leitura)

user_ip: (IP do usuário)
- informe o IP do seu usuário, exemplo 123.45.67.89 ou informe a string remote para usar o IP do cliente

key: (sua chave de API)
- informe sua chave de API HG Brasil, obtenha uma gratuitamente aqui.

Obter dados por Geolocalização

Com este método, retornamos o tempo baseado nas coordenadas de seu usuário, o próprio sistema se encarrega de salvar os dados associando a geolocalização com o IP do usuário, tornando possível novas consultas no futuro, sem informar as coordenadas. Mas não se preocupe, esses dados nunca são exibidos no retorno da API.

GET https://api.hgbrasil.com/weather/?format=json&lat=-00.000&lon=-00.000&user_ip=000.000.000.000&key=SUA-CHAVE
visualizar resposta

Parâmetros:

locale: (opcional, idioma da resposta, padrão português)
- pt (português)
- en (inglês)

format: (formato de resposta)
- json
- json-cors (liberado para AJAX, requer chave com domínio correto)
- php-serialize
- debug (resposta em JSON indentado, recomenda-se apenas para leitura)

lat: (latitude do usuário)
- informe a latitude como float, exemplo -21.176

lon: (longitude do usuário)
- informe a longitude como float, exemplo -47.820

user_ip: (IP do usuário)
- informe o IP do seu usuário, exemplo 123.45.67.89, ou informe a string remote para usar o IP do cliente, necessário para cache interno do sistema

key: (sua chave de API)
- informe sua chave de API HG Brasil, obtenha uma gratuitamente aqui.

*Após a primeira consulta com as coordenadas, enviando somente o IP, será retornado os dados da cidade baseado na ultima consulta com geolocalização.

Obter dados pelo nome da cidade

Com este método, informamos os dados de tempo baseado no nome da cidade. Quando for sempre a mesma cidade, considere utilizar a busca por CID.

GET https://api.hgbrasil.com/weather/?format=json&city_name=Ribeir%C3%A3o%20Preto&key=SUA-CHAVE
visualizar resposta

Parâmetros:

locale: (opcional, idioma da resposta, padrão português)
- pt (português)
- en (inglês)

format: (formato de resposta)
- json
- json-cors (liberado para AJAX, requer chave com domínio correto)
- php-serialize
- debug (resposta em JSON indentado, recomenda-se apenas para leitura)

city_name: (nome da cidade)
- informe o nome da cidade desejada, exempo Ribeirão Preto

key: (sua chave de API)
- informe sua chave de API HG Brasil, obtenha uma gratuitamente aqui.

Limitando o retorno dos dados beta

Caso seja necessário, você pode limitar os dados que a API retorna. Podendo escolher quais campos são retornados, limitar arrays ou ignorar os retornos de status e chave.
Este recurso é compatível apenas com o formato JSON e requer o uso de sua chave de API.

GET https://api.hgbrasil.com/weather/?format=json&woeid=455903&array_limit=2&fields=only_results,temp,city_name,forecast,max,min,date&key=SUA-CHAVE
visualizar resposta

Parâmetros:
Além dos parâmetros para buscar a cidade, você pode usar os demais abaixo:

format: (formato de resposta)
- json
- json-cors (liberado para AJAX, requer chave com domínio correto)
- debug (resposta em JSON indentado, recomenda-se apenas para leitura)

fields: (opções abaixo em string, separadas por vírgula)
- only_results (remove os dados de status, cache e chave, enviando apenas os resultados)
- nome do campo desejado (você pode informar mais de um, separado por vírgula)

array_limit: (inteiro, somente disponível quando utilizado o fields)
- limite de itens por array

key: (sua chave de API)
- informe sua chave de API HG Brasil, obtenha uma gratuitamente aqui.
Criar nova chave gratuita Baixar exemplo

Resgatando via geolocalização do usuário

Exemplo de como solicitar as coordenadas do navegador do usuário e solicitando as condições climáticas na API.


Javascript

$(document).ready(function(){ // Inicia com a previsao por Geo IP, sem passar as coordenadas atualizarDados(); // Quando o usuario clicar no botao, obtem os dados de geolocalizacao do navegador. $('.obter-localizacao').on('click', function(){ // Verifica se o navegador do usuario tem suporte a geolocalizacao if(navigator.geolocation){ // Se tiver, solicita os dados e atualiza a previsao do tempo pela API navigator.geolocation.getCurrentPosition(atualizarDados); } else { alert('Seu navegador não suporta geolocalização.'); } }); }); function atualizarDados(localizacao) { localizacao = typeof localizacao !== 'undefined' ? localizacao : false; $.ajax({ url: 'tempo.php'+(!localizacao ? '' : '?lat='+localizacao.coords.latitude+'&lon='+localizacao.coords.longitude), dataType: 'json', success: function(dados) { // Loop inserindo os dados no HTML $.each(dados, function(dado, valor){ $('.'+dado).text(valor); }); // Insere a imagem $('.imagem-do-tempo').attr('src', dados.imagem); } }); }

PHP

<?php // Sua chave de API HG Braisl $chave = 'SUA-CHAVE'; $ip = $_SERVER["REMOTE_ADDR"]; $lat = $_GET['lat']; $lon = $_GET['lon']; // Obtem os dados da API passando os parametros $dados = hg_request(array('lat' => $lat, 'lon' => $lon, 'user_ip' => $ip), $chave); // Formata dos dados recebidos echo json_encode(array( 'temperatura' => $dados->results->temp.' ºC', 'umidade' => $dados->results->humidity.' %', 'descricao' => $dados->results->description, 'cidade' => $dados->results->city, 'nascer_do_sol' => $dados->results->sunrise, 'por_do_sol' => $dados->results->sunset, 'vento' => $dados->results->wind_speedy, 'imagem' => 'imagens/'.$dados->results->img_id.'.png', )); /* ================================================ * Função para resgatar os dados da API HG Brasil * * Parametros: * * parametros: array, informe os dados que quer enviar para a API * chave: string, informe sua chave de acesso * endpoint: string, informe qual API deseja acessar, padrao weather (previsao do tempo) */ function hg_request($parametros, $chave = null, $endpoint = 'weather'){ $url = 'https://api.hgbrasil.com/'.$endpoint.'/?format=json&'; if(is_array($parametros)){ // Insere a chave nos parametros if(!empty($chave)) $parametros = array_merge($parametros, array('key' => $chave)); // Transforma os parametros em URL foreach($parametros as $key => $value){ if(empty($value)) continue; $url .= $key.'='.urlencode($value).'&'; } // Obtem os dados da API $resposta = file_get_contents(substr($url, 0, -1)); return json_decode($resposta); } else { return false; } } ?>

HTML

<!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <script src="script.js"></script> </head> <body> <span class="cidade"></span> <span class="temperatura"></span><br> <span class="descricao"></span><br> Nascer do Sol: <span class="nascer_do_sol"></span> - Pôr do Sol: <span class="por_do_sol"></span><br> Velocidade do vento: <span class="vento"></span><br> <img src="imagens/44.png" class="imagem-do-tempo"><br> <a href="#" class="obter-localizacao">Obter localização</a> </body> </html>

Resultado

Atenção!

Não garantimos a precisão dos dados fornecidos pela API ou contidos nesta página, uma vez que devem ser utilizados apenas para efeitos informativos. Recomendamos que confirme todos os dados antes de efetuar qualquer ação que possa ser afetada por estes valores. Os dados são obtidos de fontes públicas da internet e podem sofrer alterações sem aviso prévio. O IP de origem, assim como a chave de API, são armazenados pelo sistema a fim de monitoramento do consumo de dados. Existem alguns limites no número de consultas, você pode verificar aqui, seu acesso pode ser restringido caso o limite seja atingido, ou se houver riscos à integridade do sistema no caso de sobrecargas oriundas de suas consultas. Entre em contato para consultas em larga escala ou para obter atualizações dos dados mais frequentes. Limites podem ser alterados ou impostos sem aviso prévio.