Ocorrência do dia da semana no mês
Digite uma data e saiba qual ocorrência do dia da semana ela é dentro do mês e se é a última: 1º de julho de 2025 é a primeira terça-feira de julho, e não a última. Útil para regras como a segunda segunda-feira. 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
- 2025-07-01
- Dia da semana
- tuesday
- Número do dia da semana
- 2
- Ocorrência no mês
- 1
Ferramenta gratuita e determinística. A partir de uma data, indique qual ocorrência daquele dia da semana ela é dentro do mês e se é a última ocorrência.
Entradas e saídas
Informe os campos exigidos pelo esquema, sempre presentes e com o tipo correto; os campos opcionais usam os valores padrão documentados. A saída indica o número da ocorrência do dia da semana dentro do mês e um sinalizador que diz se aquela é a última ocorrência, útil para regras como 'a última sexta-feira do mês'. As respostas de sucesso trazem sempre os campos de saída principais, para que as ligações da interface fiquem estáveis e não seja preciso tratar ausências inesperadas.
Consulte os exemplos antes de escrever a integração, porque eles mostram exatamente o formato de cada campo de entrada e de saída e congelam o contrato.
Casos-limite
Strings vazias, tipos errados e datas impossíveis são rejeitados logo no começo, antes de qualquer conta. As datas civis sem fuso horário são tratadas como datas de calendário, sem deslocamento implícito, o que evita surpresas na virada do dia. Um mês pode conter quatro ou cinco ocorrências do mesmo dia da semana, e a capacidade distingue corretamente esses casos, marcando como última tanto uma quarta quanto uma quinta ocorrência quando for o caso.
Não há nenhuma chamada de rede em tempo de execução, então o resultado é sempre o mesmo para a mesma entrada. As cadeias de erro são estáveis e servem de âncora para a certificação e para os testes automatizados. Revise os exemplos de sucesso e de erro antes de integrar, para que seu código trate cada caminho com segurança.
Casos de uso
Trabalho do dia a dia
Obtenha uma resposta confiável sem planilha.
Perguntas frequentes
Usa rede?
Não há rede; a análise é feita no dispositivo.
O que o resultado me informa?
O dia da semana da data, qual ocorrência desse dia ela é no mês e se é a última. Para 1º de julho de 2025 você recebe terça-feira, primeira ocorrência, e não a última.
Como confiro se uma data é a última sexta-feira do mês?
Digite a data e veja se o resultado a marca como a última. Se marcar, não existe outra sexta-feira depois dela naquele mês, então a data é a sexta-feira final.
Um dia pode ser ao mesmo tempo o quarto e o último?
Pode. Quando o mês tem só quatro desse dia da semana, o quarto também é o último, e o resultado marca as duas coisas. Leia as duas partes da resposta juntas.
O que acontece se eu digitar um valor vazio ou errado?
Ele é recusado na hora com uma mensagem clara, em vez de gerar um resultado inventado. Confira se você digitou uma data completa e real antes de tentar de novo.
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/weekday-occurrence \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"date":"2025-07-01"}'const res = await fetch("https://api.kit.forhosting.com/date/weekday-occurrence", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"date": "2025-07-01"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/weekday-occurrence",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"date": "2025-07-01"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/weekday-occurrence", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"date":"2025-07-01"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"date":"2025-07-01"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/weekday-occurrence", 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": "2025-07-01"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.weekday_occurrence",
"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
Como funciona
A partir de uma data informada, esta capacidade calcula qual ocorrência daquele dia da semana ela representa dentro do próprio mês — por exemplo, a segunda terça-feira ou a quarta sexta-feira — e ainda diz se ela é a última ocorrência desse dia da semana no mês. Não há chamadas de rede em tempo de execução: tudo acontece no dispositivo. As entradas são validadas antes de qualquer aritmética, então tipos incorretos viram erros invalid_input claros em vez de respostas ambíguas.
Entradas e saídas
A validação tipada e as mensagens de erro claras valem igualmente no navegador e na API, garantindo paridade total entre os dois caminhos.
Casos de integração
Automação
A mesma função pura no widget e na API.
Ensino
Exemplos golden estáveis para demonstrações.
Perguntas técnicas
É gratuita?
Sim, tier A no navegador.
Entrada inválida?
invalid_input com correspondência clara.
É estável?
Exemplos golden determinísticos congelam o contrato.
Autor?
samurai.