Calculadora de sono
Planeje o sono em ciclos completos de 90 minutos: para acordar às 07:00 depois de 5 ciclos, com 15 minutos para pegar no sono, deite-se às 23:15. A calculadora também conta para a frente, da hora de deitar até a hora de acordar. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Modo de cálculo
- Calcular hora de dormir
- Tempo
- 07:00
- Ciclos de sono
- 5
- Tempo para adormecer (minutos)
- 15
- Duração do ciclo (minutos)
- 90
- Horários sugeridos
- 23:15, 00:45, 02:15, 03:45, 05:15
Cada resultado soma sua latência para adormecer e ciclos completos.
Contando para trás a partir do alarme
No modo hora de deitar, você informa a que horas quer acordar e a calculadora conta para trás. Da hora de acordar ela tira os minutos que você costuma levar para dormir e depois ciclos completos de 90 minutos, com uma sugestão por ciclo. Com o alarme às 07:00, 5 ciclos e 15 minutos para pegar no sono, os horários de deitar são 23:15, 00:45, 02:15, 03:45 e 05:15. A lista vai do horário mais cedo, que dá mais sono, ao mais tarde, para você escolher quanto descanso quer.
Contando para a frente a partir da hora de deitar
O modo de acordar faz o contrário: informe a hora em que vai deitar e a calculadora soma os minutos para pegar no sono mais um, dois ou mais ciclos completos, listando os horários de acordar do mais próximo ao mais distante. Os horários usam o relógio de 24 horas e passam da meia-noite sem problema, então deitar tarde da noite gera horários de acordar na manhã seguinte sem ajuste manual. Você pode pedir de 1 a 12 ciclos, 5 por padrão.
Perguntas frequentes
Quanto dura um ciclo?
As sugestões são espaçadas em um ciclo de distância.
Qual formato de horário ela espera?
Uma cadeia HH:MM de 24 horas de 00:00 a 23:59. Horários que cruzam a meia-noite dão a volta corretamente na saída.
Quantas sugestões eu recebo?
Uma por ciclo, definida por cycles (padrão 5, permitido de 1 a 12). bedtime lista do mais cedo ao mais tarde; wake lista do mais próximo ao mais tarde.
Como sei a que horas acordar se eu deitar agora?
Use o modo de acordar e informe a hora em que vai deitar. A calculadora soma os seus minutos para pegar no sono e um, dois ou mais ciclos completos de 90 minutos, e sugere horários de acordar do mais próximo ao mais distante.
Para que serve o tempo que levo para dormir?
Ele entra na conta antes dos ciclos, porque o primeiro ciclo só começa quando você pega no sono. O padrão é 15 minutos; você pode usar qualquer número inteiro de minutos, inclusive zero.
Ferramentas relacionadas
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/dev/sleep-calculator \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"mode":"bedtime","time":"07:00"}'const res = await fetch("https://api.kit.forhosting.com/dev/sleep-calculator", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"mode": "bedtime",
"time": "07:00"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/sleep-calculator",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"mode": "bedtime",
"time": "07:00"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/sleep-calculator", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"mode":"bedtime","time":"07:00"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"mode":"bedtime","time":"07:00"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/sleep-calculator", 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
{
"mode": "bedtime",
"time": "07:00"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.sleep_calculator",
"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. |
Notas técnicas
Dado um horário-alvo e um modo, ela lista horários alinhados a ciclos de sono de 90 minutos. mode=bedtime devolve horários para dormir dado um alvo de despertar; mode=wake devolve horários para acordar após uma hora de dormir.
Ciclos de noventa minutos a partir de um horário-âncora
O campo time é um valor de relógio HH:MM de 24 horas que se torna a âncora, convertido em minutos desde a meia-noite. Os horários dão a volta de forma limpa através da meia-noite usando módulo 1440 e são formatados de volta para HH:MM com zeros à esquerda. Um ciclo de sono é fixado em 90 minutos (devolvido como cycle_minutes). No mode=bedtime, a âncora é o seu horário de despertar desejado e a ferramenta trabalha para trás: para cada contagem de ciclo de cycles até 1, ela calcula âncora menos latency_minutes menos n vezes 90, então com um despertar às 07:00, 5 ciclos e 15 minutos de latência você obtém os horários para dormir 23:15, 00:45, 02:15, 03:45 e 05:15. No mode=wake, a âncora é a sua hora de dormir e ela trabalha para frente: âncora mais latency_minutes mais n vezes 90 para n de 1 a cycles.
Ciclos, latência e a lista de sugestões
No modo bedtime, a lista vai do mais cedo (mais sono) ao mais tarde para dormir; no modo wake, do mais próximo ao mais tarde para acordar. cycles assume 5 por padrão e deve ser um inteiro de 1 a 12; ele define quantas sugestões voltam, uma por ciclo completo, para que você possa escolher quanto sono total buscar. latency_minutes assume 15 por padrão e deve ser um inteiro não negativo; ele modela o tempo para de fato adormecer e desloca cada sugestão, já que o descanso real começa depois que você pega no sono, não no momento em que se deita. A resposta repete mode, o horário-âncora normalizado, cycles, latency_minutes e cycle_minutes ao lado do array suggestions.
Validação e saída determinística
Todo campo é verificado antes de qualquer cálculo de tempo. Observe que esta ferramenta recebe o horário do relógio como um parâmetro de entrada em vez de ler o relógio do sistema, então ela nunca consulta a hora real do dia e sua saída depende apenas dos argumentos. O time deve corresponder a um padrão estrito de 24 horas (00:00 a 23:59); qualquer outra coisa, incluindo um não-string, lança um erro invalid_input tipado. Um valor de cycles fora de 1..12 ou não inteiro, e um latency_minutes negativo ou não inteiro, são rejeitados da mesma forma, assim como um mode diferente de bedtime ou wake e qualquer entrada não objeto.
Casos de integração
Planejar a hora de dormir de hoje
Informe o horário do seu alarme em mode=bedtime para ver quais horários para dormir permitem que você acorde ao fim de um ciclo, e não no meio dele.
Cochilos e horários de trabalho por turnos
Use mode=wake a partir de um horário escolhido para se deitar e encontre alvos de despertar de um a doze ciclos à frente para cochilos ou turnos rotativos.
Apps de sono e bem-estar
Incorpore sugestões alinhadas a ciclos em um app ou bot via API, ajustando latency_minutes por usuário para conselhos personalizados.
Perguntas técnicas
O que latency_minutes faz?
É o tempo que você leva para adormecer (padrão 15). Ele desloca cada horário sugerido para que os ciclos sejam contados a partir de quando você realmente pega no sono.
É gratuito e quanto custa a API?
O widget do navegador é gratuito; a API usa saldo KIT pré-pago a partir de US$ 0,002, e tarefas que falham não são cobradas.