Dias úteis em um ano
A calculadora de dias úteis em um ano recebe uma data ISO explícita, identifica o ano civil correspondente e conta todas as segundas a sextas-feiras.
Executar grátis
Você pode acrescentar uma lista opcional de feriados para retirar os que caem em dias úteis, sem descontar duas vezes uma data repetida ou um feriado que já ocorra no fim de semana. O cálculo usa regras gregorianas fixas e aritmética determinística, portanto a mesma entrada sempre gera o mesmo resultado em qualquer fuso horário.
Escolha o ano com uma data explícita
Informe uma data no formato ISO exato YYYY-MM-DD. A data completa é obrigatória, embora o cálculo utilize apenas o ano, pois isso deixa as solicitações da API inequívocas e evita suposições sobre o ano atual, a localidade da conta ou o relógio do servidor. Por exemplo, 2024-07-25 seleciona todo o ano civil de 2024, de 1º de janeiro a 31 de dezembro; a contagem não começa em 25 de julho. O resultado mostra a data enviada, o ano escolhido, o número de dias corridos, os dias de fim de semana, os feriados em dias úteis e o total final. São aceitos anos de 0001 a 9999 segundo o calendário gregoriano proléptico e sua regra de anos bissextos. Datas inexistentes, como 2025-02-29, são rejeitadas em vez de ajustadas silenciosamente. Assim, você obtém resultados reproduzíveis para planejamento, auditoria, testes e regras empresariais armazenadas.
Exclua corretamente fins de semana e feriados
Primeiro, todos os sábados e domingos do ano selecionado são excluídos. Depois, você pode enviar os feriados como uma lista de datas ISO. Um feriado só reduz o total quando pertence ao ano escolhido e cai de segunda a sexta-feira. Se ocorrer no sábado ou domingo, ele já foi excluído como fim de semana e não é descontado novamente. Datas repetidas também são deduplicadas. Feriados válidos de outros anos são aceitos, mas ignorados, o que permite enviar uma lista compartilhada de vários anos sem filtrá-la antes de cada solicitação. A ferramenta não inventa feriados nacionais, não transfere automaticamente uma folga nem deduz um país pela sua localização. Essas regras variam entre jurisdições, empregadores, acordos e anos. Informe exatamente as datas de fechamento que valem para sua organização. O resultado separa fins de semana e feriados úteis efetivos para deixar a conta inteiramente transparente.
Use uma contagem determinística no planejamento
O cálculo usa somente aritmética inteira de calendário. Ele não consulta a rede, não lê o relógio atual, não utiliza o objeto Date do JavaScript e não aplica horário de verão ou configurações locais. Na prática, UTC é a interpretação estável: uma entrada como 2026-01-01 continua sendo essa data em Tóquio, Londres ou Califórnia. Isso é útil em planos anuais de capacidade, modelos de quadro de pessoal, metas de utilização, previsões de nível de serviço e estimativas de folha de pagamento. Guarde a data e a lista de feriados junto com o detalhamento retornado para ter um registro auditável que possa ser recalculado depois. O total representa possíveis dias úteis de segunda a sexta-feira, não as horas de uma pessoa específica. Ele não considera férias, jornadas parciais, paralisações não informadas, outros padrões de fim de semana ou meios expedientes. Execute grátis no navegador ou use a API por US$ 0,002 em uma automação repetível.
Casos de uso
Monte um plano anual de capacidade
Comece pelos dias úteis disponíveis, retire os fechamentos reais e multiplique o resultado transparente pela capacidade diária da equipe.
Confira premissas de folha e utilização
Compare o total previsto pelo modelo com uma divisão determinística entre fins de semana e feriados úteis efetivos.
Torne as previsões reproduzíveis
Salve a data e a lista de feriados para que execuções futuras usem as mesmas regras, e não o relógio atual.
Perguntas frequentes
A data inicia o período de contagem?
Não. Ela seleciona o ano civil inteiro; todos os dias de 1º de janeiro a 31 de dezembro são considerados.
Quais dias são considerados fim de semana?
Sábado e domingo. Outros padrões semanais de descanso não são inferidos.
O que acontece quando um feriado cai no fim de semana?
Ele não é descontado novamente, pois a data já está incluída na contagem de fins de semana.
A calculadora conhece os feriados nacionais?
Não. Informe as datas exatas de feriados ou fechamentos aplicáveis à sua organização e jurisdição.
Quanto custa uma solicitação da API?
Uma solicitação da API custa US$ 0,002. O mesmo cálculo determinístico também pode ser feito grátis no navegador.
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/workdays-in-year \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"date":"2024-07-25"}'const res = await fetch("https://api.kit.forhosting.com/date/workdays-in-year", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"date": "2024-07-25"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/workdays-in-year",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"date": "2024-07-25"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/workdays-in-year", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"date":"2024-07-25"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"date":"2024-07-25"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/workdays-in-year", 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-07-25"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.workdays_in_year",
"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. |