Subtrair dias de uma data
Digite uma data e um número de dias e receba o dia anterior exato: 15 de março de 2024 menos 10 dias é 5 de março. Fins de mês, anos bissextos e viradas de ano são resolvidos automaticamente. 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-15
- Dias
- 10
- Resultado
- 2024-03-05
- Ano
- 2.024
- Mês
- 3
- Dia
- 5
Esta calculadora de subtração de dias recebe uma única data do calendário gregoriano no formato AAAA-MM-DD e um número não negativo de dias inteiros, e então retorna o dia de calendário anterior, esse número de dias antes da base. Verificações clássicas incluem 2024-03-15 menos dez dias caindo em 2024-03-05, 2024-03-01 menos um dia caindo em 2024-02-29 em um ano bissexto, e 2024-01-01 menos um dia retrocedendo para 2023-12-31. O mecanismo usa apenas aritmética gregoriana prolética determinística: valida que o dia base realmente existe no calendário, converte a tripla em uma contagem serial de dias, subtrai o número solicitado de dias inteiros, e converte de volta para ano, mês e dia, sem chamadas de rede, amostragem aleatória ou o relógio do host.
O que significa a subtração de dias e o que a resposta contém
Subtrair dias inteiros de calendário responde a uma pergunta diferente de contagens de dias úteis ou timestamps com fuso horário: move estritamente para trás no calendário civil gregoriano, de uma meia-noite para a meia-noite anterior, sem pular fins de semana, feriados ou transições de horário de verão. Você informa uma data base como uma string estrita AAAA-MM-DD e um valor days não negativo e inteiro; zero deixa a data inalterada, um avança para ontem em relação a essa base, e valores maiores atravessam fronteiras de mês e ano automaticamente.
Se você precisa de dias úteis, conversão de epoch, análise de múltiplos formatos ou números de semana ISO, use essas ferramentas dedicadas; esta página responde apenas a data gregoriana anterior após subtrair dias inteiros de uma base ISO validada.
Onde a aritmética de data anterior se encaixa em planejamento, conformidade e software
Equipes de operações e finanças subtraem dias quando uma política diz que faturas vencem depois de trinta dias de calendário, quando um aviso deve ser enviado catorze dias antes de um evento, ou quando uma janela de retenção é definida como noventa dias antes de hoje, relativa a um carimbo base fixo e não a um relógio ao vivo.
Analistas que constroem coortes históricas usam o mesmo movimento para rotular janelas de observação que terminam em um dia conhecido e começam um número fixo de dias antes, evitando erros de contagem em fins de mês e dias bissextos. Educadores e redatores de normas usam a ferramenta para demonstrar retrocessos de fim de mês, como 2024-03-01 menos um dia em um ano bissexto versus 2023-03-01 menos um dia em um ano comum, sem depender de números seriais de planilha que diferem entre produtos.
Combine-a com conversão de epoch, normalização de data ou auxiliares de semana ISO quando precisar de passos de calendário relacionados, e com outras ferramentas determinísticas gratuitas ao montar um pequeno laboratório de utilitários de data.
Casos de uso
Janelas de política e aviso
Calcule o dia de calendário anterior N dias antes de um prazo para faturas, avisos legais e janelas de retenção sem deriva de fuso horário.
Retrocessos de fim de mês e dia bissexto
Verifique que 1º de março menos um dia cai em 29 de fevereiro apenas em anos bissextos, e que fronteiras de ano retrocedem corretamente para o dezembro anterior.
Perguntas frequentes
Como a data anterior é definida?
O mecanismo subtrai um número inteiro não negativo de dias do calendário gregoriano de uma base AAAA-MM-DD validada, usando aritmética serial pura de dias. Fins de semana e feriados não são pulados.
O que acontece com anos bissextos e fins de mês?
Os comprimentos de mês e os dias bissextos são validados e aplicados. Por exemplo, 2024-03-01 menos 1 dia é 2024-02-29, enquanto 2023-03-01 menos 1 dia é 2023-02-28.
Quais formatos de data e valores de dias são aceitos?
Apenas datas estritas AAAA-MM-DD de calendário para a base, e um valor inteiro de days de 0 a 3652430.
Isso converte fusos horários ou usa o relógio atual?
Não. Ele apenas mapeia uma data de calendário validada menos N dias inteiros com aritmética pura.
A conta pula fins de semana e feriados?
Não. Todos os dias do calendário contam, inclusive sábados, domingos, feriados e mudanças de horário de verão. Se a regra fala em dias úteis, use um cálculo de dias úteis.
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/subtract-days \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"date":"2024-03-15","days":10}'const res = await fetch("https://api.kit.forhosting.com/date/subtract-days", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"date": "2024-03-15",
"days": 10
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/subtract-days",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"date": "2024-03-15",
"days": 10
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/subtract-days", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"date":"2024-03-15","days":10}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"date":"2024-03-15","days":10}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/subtract-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-15",
"days": 10
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.subtract_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.
Limites
year_min | 1 |
year_max | 9999 |
days_min | 0 |
days_max | 3652430 |
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 significa a subtração de dias e o que a resposta contém
A calculadora valida que o dia base é um dia real de calendário — 29 de fevereiro apenas em anos bissextos, trinta dias em abril, nunca dia trinta e dois — e então retorna a data base normalizada, a contagem de days usada, o resultado anterior como result no formato AAAA-MM-DD, os campos year, month e day do resultado, os componentes base_year, base_month e base_day da base para facilitar o encadeamento, e um breve lembrete de fórmula. Os casos rejeitados incluem campo date ou days ausente, formatos errados como 2024/03/15, meses impossíveis, dias que não existem como 2023-02-29, contagens de dias negativas, e resultados cujo ano ficaria fora da janela suportada de um a 9999.
Como a data e o número de dias são interpretados e como o resultado permanece reproduzível
A string deve corresponder a quatro dígitos, um hífen, dois dígitos, outro hífen e dois dígitos; espaços no início ou no fim são removidos, mas datas parciais, apenas o dia ordinal do ano, e nomes de meses não são expandidos aqui. Depois da análise, o ano deve estar entre 1 e 9999, o mês entre 1 e 12, e o dia entre 1 e o comprimento real desse mês naquele ano, com anos bissextos seguindo a regra gregoriana de divisível por quatro, exceto anos de século não divisíveis por quatrocentos. O campo base preferido é date, mas os aliases iso_date, d, value e base são aceitos, para que planilhas, strings de consulta e formulários tipados possam reutilizar o mesmo contrato sem renomear colunas. O campo days, com os aliases n, count e subtract, deve ser um inteiro de 0 a 3652430; sinais de mais à esquerda opcionais em strings de dígitos são permitidos, enquanto decimais, negativos e tokens não numéricos são rejeitados com uma mensagem clara, para que uma célula com erro não vire uma data anterior errada. Internamente, o mecanismo converte a tripla civil em uma contagem serial de dias gregoriana prolética usando o conhecido mapeamento days_from_civil, subtrai a contagem inteira de dias, e então recupera ano, mês e dia com civil_from_days — aritmética inteira pura, estável bit a bit entre runtimes. Combine a execução gratuita no navegador desta página com a API paga quando precisar da mesma data anterior dentro de um pipeline automatizado.
Onde a aritmética de data anterior se encaixa em planejamento, conformidade e software
Nesta página o trabalho roda inteiramente no seu navegador; pela API, cada consulta bem-sucedida custa US$ 0,002, a validação com falha não é cobrada, e nada é armazenado depois que a resposta é devolvida. Essa divisão — exploração interativa gratuita e uma API paga e idêntica — segue o padrão do resto do catálogo tier A do KIT e permite passar de uma verificação pontual para um pipeline sem mudar o resultado matemático.
Casos de integração
Fixtures determinísticas para testes
Gere strings reproduzíveis de data anterior para testes unitários, verificações de propriedades e asserções de CI sem depender de Date ou do relógio do host.
Perguntas técnicas
Quanto custa a calculadora de subtração de dias de uma data?
É gratuita no navegador, nesta página. Pela API, uma solicitação bem-sucedida custa US$ 0,002; entradas inválidas não são cobradas.