Estime a fase da Lua para qualquer data
Este estimador transforma uma data do calendário em uma descrição prática do ciclo lunar, como lua nova, crescente, quarto crescente, lua cheia ou minguante.
Executar grátis
Ele também informa a idade lunar aproximada, o percentual iluminado e a fração do ciclo. O cálculo é determinístico e utiliza um mês sinódico médio contado a partir de uma lua nova de referência conhecida. Não exige localização, acesso à rede, serviço astronômico nem armazenamento de dados do usuário, sendo útil para planejamento rápido e fluxos de software reproduzíveis.
Informe uma data gregoriana completa
Forneça a data exatamente no formato AAAA-MM-DD, incluindo zeros à esquerda em meses e dias de um só algarismo. Por exemplo, 8 de abril de 2024 deve ser escrito como 2024-04-08. O estimador valida o calendário gregoriano real, e não apenas o formato do texto, portanto rejeita valores impossíveis como 30 de fevereiro. Os anos bissextos seguem a regra padrão de divisibilidade por quatro, com a exceção dos séculos e a correção dos quatrocentos anos. O cálculo considera o meio-dia no tempo universal coordenado para a data solicitada. Isso oferece um ponto consistente de avaliação e impede que o resultado dependa silenciosamente do fuso horário do computador. Esta capacidade aceita anos de 0001 a 9999, representados por quatro dígitos. Ela não interpreta expressões informais, ordens regionais, carimbos de data e hora ou sufixos de fuso. Converta esses valores para o formato documentado antes da chamada. A entrada rigorosa torna as chamadas repetíveis e evita que uma data ambígua, como 03/04/2025, receba interpretações diferentes.
Entenda como a estimativa é calculada
O método parte de uma lua nova conhecida em 6 de janeiro de 2000, às 18:14 UTC, e converte a data solicitada em um dia juliano. Em seguida, determina o tempo transcorrido desde essa referência e reduz o resultado a um mês sinódico médio de 29.530588853 dias. A posição nesse intervalo recorrente é a fração do ciclo, enquanto a parte transcorrida aparece como idade lunar em dias. Oito rótulos conhecidos dividem o ciclo em faixas angulares iguais, centradas na lua nova, no quarto crescente, na lua cheia e no quarto minguante. A iluminação é estimada com uma curva de cosseno: começa perto de zero por cento na lua nova, aumenta até quase cem por cento na lua cheia e diminui novamente na metade minguante. Os valores são arredondados com precisão estável e útil. Trata-se de um modelo aritmético compacto, não de efemérides. Como a órbita real varia, uma observação astronômica precisa pode diferir em várias horas e indicar um rótulo vizinho perto da transição.
Use o resultado no nível correto de precisão
Use esta capacidade quando uma estimativa rápida e reproduzível for mais importante do que um horário de observatório. Calendários podem exibir um rótulo lunar reconhecível ao lado de eventos, projetos educacionais podem demonstrar o ciclo recorrente e ferramentas de planejamento podem orientar escolhas aproximadas sobre a luminosidade noturna. O campo de fase foi feito para categorização legível. A idade e a fração do ciclo servem melhor para ordenar, criar indicadores visuais ou comparar datas próximas, enquanto illumination_percent fornece uma estimativa intuitiva de brilho. Como o algoritmo recebe somente a data, ele não calcula nascer ou pôr da Lua, altitude, azimute, eclipses, visibilidade local, clima nem orientação aparente da parte iluminada. Essas questões exigem coordenadas geográficas, hora exata e dados orbitais detalhados. Não use a estimativa para navegação, segurança, publicação científica, determinações religiosas que exijam observação oficial ou eventos dependentes do instante exato da fase. Para consultas comuns e elementos visuais de aplicativos, ela é transparente, econômica e idêntica em todas as execuções. O navegador funciona sem chamada ao servidor, e cada solicitação automatizada à API custa US$ 0,002.
Casos de uso
Adicionar a fase a um calendário
Exiba uma fase aproximada ao lado de eventos sem consultar um serviço astronômico externo.
Planejar fotografia noturna casual
Compare datas pela iluminação estimada antes de conferir horários locais e previsão do tempo.
Ensinar o ciclo lunar
Gere exemplos reproduzíveis das fases crescente, cheia e minguante para aulas ou demonstrações.
Perguntas frequentes
Qual é a precisão da estimativa?
Ela é adequada para calendários gerais. Como usa um mês lunar médio, e não efemérides completas, os horários exatos podem diferir em várias horas.
Qual horário do dia é considerado?
O cálculo avalia a data informada às 12:00 UTC para nunca depender do fuso horário local.
Ela calcula o nascer ou o pôr da Lua?
Não. Esses horários exigem uma localização e um modelo astronômico mais detalhado.
Qual formato de data é aceito?
Use exatamente AAAA-MM-DD com mês e dia gregorianos válidos, como 2024-04-08.
Quanto custa uma solicitação à API?
Cada solicitação à API custa US$ 0,002. A versão no navegador pode ser executada localmente sem chamar a API.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/misc2/moon-phase-estimate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"date":"2024-04-08"}'const res = await fetch("https://api.kit.forhosting.com/misc2/moon-phase-estimate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"date": "2024-04-08"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/misc2/moon-phase-estimate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"date": "2024-04-08"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/misc2/moon-phase-estimate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"date":"2024-04-08"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"date":"2024-04-08"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/misc2/moon-phase-estimate", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"date": "2024-04-08"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "misc2.moon_phase_estimate",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |