Somar dias a uma data
Some ou subtraia dias corridos de uma data e veja a data exata resultante: 1º de março de 2024 mais 10 dias é 11 de março de 2024. Anos bissextos e a duração de cada mês já são considerados. 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
- Data
- 2024-03-01
- Dias a somar
- 10
- Data resultante
- 2024-03-11
- Ano
- 2.024
- Mês
- 3
- Dia
- 11
Adicionar um número fixo de dias de calendário a uma data parece trivial até que anos bissextos, comprimentos de mês e strings base inválidas entram em cena. Gerentes de projeto agendam acompanhamentos trinta dias após o kickoff, equipes financeiras calculam vencimentos de faturas, mesas de suporte prometem resposta em sete dias e pipelines de dados deslocam carimbos de tempo com deslocamentos guardados como contagens puras de dias. Bases impossíveis, como vinte e nove de fevereiro em um ano comum, falham com um erro de validação claro em vez de virar março.
Como a soma de dias de calendário funciona sem relógio
Comece com uma data de calendário base escrita como ano, mês e dia na forma ISO internacional com hífens e larguras fixas para que todo cliente concorde nos mesmos três inteiros. Confirme que o ano esteja em um intervalo gregoriano prático, que o mês esteja entre um e doze, e que o dia exista para aquele mês sob as regras bissextas gregorianas: um ano é bissexto quando é divisível por quatro, exceto que anos seculares só são bissextos quando também são divisíveis por quatrocentos.
Essa regra torna legal o vinte e nove de fevereiro em anos como dois mil e vinte e quatro e dois mil, e ilegal em dois mil e vinte e três e mil e novecentos. Quando a tripla é válida, converta-a em um ordinal de dia do ano somando os comprimentos dos meses anteriores completos e adicionando o dia do mês. Some o deslocamento inteiro a esse ordinal.
Enquanto o total em execução ultrapassar o comprimento do ano corrente, subtraia esse comprimento e avance o ano; enquanto cair abaixo de um, recue o ano e some o comprimento do ano anterior. Por fim, converta o ordinal estabilizado de volta em mês e dia e formate o resultado como string ISO quatro-dois-dois.
Onde calculadoras de somar dias aparecem no trabalho real
Sistemas de faturamento calculam datas de vencimento como data da fatura mais trinta dias líquidos de calendário sem puxar uma biblioteca completa de agendamento. Ferramentas de sucesso do cliente definem lembretes sete ou quatorze dias após um evento de onboarding. Equipes jurídicas e de compliance acompanham prazos de aviso medidos em dias de calendário, não em dias úteis.
Engenheiros de dados materializam colunas derivadas para janelas de retenção, fim de trial e datas de fim de campanha a partir de uma única base ISO mais um deslocamento inteiro guardado na configuração.
Se mais tarde você precisar de contagens de dias úteis que pulem fins de semana e feriados, a diferença em dias entre duas datas, a idade a partir de um nascimento ou apenas ordinais de dia do ano, trate isso como intenções de busca e páginas distintas em vez de sobrecarregar esta página de somar dias a uma data.
Casos de uso
Vencimentos de faturas e assinaturas
Some quinze ou trinta dias líquidos de calendário a uma data ISO de fatura para produzir um vencimento estável entre fusos horários e hosts.
Lembretes e acompanhamentos
Agende acompanhamentos de suporte ou vendas a sete, quatorze ou noventa dias após um ticket ou data de kickoff com aritmética pura de dias.
Perguntas frequentes
O que significa somar dias a uma data?
Significa pegar um dia válido do calendário gregoriano e avançar ou recuar um número inteiro de dias de calendário, cruzando limites de mês e ano e dias bissextos quando se aplicam.
Ele lida com anos bissextos?
Sim. Aplicam-se as regras bissextas gregorianas: divisível por 4, exceto séculos que devem ser divisíveis por 400. 29 de fevereiro só é aceito em anos bissextos e é atravessado corretamente quando o deslocamento cai nesse dia ou o ultrapassa.
Qual formato de data é exigido?
ISO estrito YYYY-MM-DD com ano de quatro dígitos e mês e dia de dois. Valores como 2024-3-1 ou 2024/03/01 são rejeitados para que todo cliente concorde na mesma string.
O que acontece com uma data base inválida como 2023-02-29?
A mensagem de erro explica que o dia não é válido para aquele ano e mês.
Quanto custa?
A ferramenta do navegador é gratuita e roda localmente.
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/date/add-days \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"date":"2024-03-01","days":10}'const res = await fetch("https://api.kit.forhosting.com/date/add-days", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"date": "2024-03-01",
"days": 10
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/add-days",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"date": "2024-03-01",
"days": 10
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/add-days", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"date":"2024-03-01","days":10}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"date":"2024-03-01","days":10}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/add-days", 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-03-01",
"days": 10
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.add_days",
"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
O que você envia e o que recebe de volta
Envie dois campos obrigatórios: date como dia de calendário ISO estrito, por exemplo dois mil e vinte e quatro hífen zero três hífen zero um, e days como uma contagem inteira finita de dias, por exemplo dez, zero ou menos sete. Checagens clássicas incluem somar dez dias ao primeiro de março de dois mil e vinte e quatro para chegar ao onze de março, somar um dia ao vinte e oito de fevereiro em ano comum para chegar ao primeiro de março, somar um dia ao vinte e oito de fevereiro em ano bissexto para chegar ao vinte e nove, e subtrair sete dias de uma data ISO no estilo segunda-feira para cair na semana anterior. Campos ausentes, datas que não são string, strings que não batem com o padrão de dígitos quatro-dois-dois, deslocamentos de dias não inteiros e bases que batem com o padrão mas não são datas de calendário reais falham com invalid_input e não são cobrados. Em sucesso a resposta ecoa a data base normalizada, o deslocamento inteiro days aplicado, a string ISO result após a adição, o ano, mês e dia numéricos do resultado, um booleano is_leap_year para o ano do resultado e uma string curta formula que documenta a regra bissexta. O preço de chamadas API bem-sucedidas é a base publicada de US$ 0,002 por item; falhas de validação não consomem saldo pré-pago.
Onde calculadoras de somar dias aparecem no trabalho real
Como esta capacidade é um motor parse puro, o preço da API é a base publicada de US$ 0,002 por item bem-sucedido e a validação falha não consome saldo.
Casos de integração
Janelas de retenção e de trial
Derive datas de fim de trial e cortes de retenção a partir de uma string ISO de início mais um deslocamento inteiro de dias configurado para pipelines e fixtures de QA.