Preencha um calendário de conteúdo com datas
Transforme uma fila ordenada de conteúdos em um plano de publicação com datas, sem contar dias manualmente nem mover linhas em uma planilha.
Executar grátis
Informe as peças de conteúdo, a primeira data disponível e quantas postagens deseja fazer por semana. A ferramenta mantém a ordem original, distribui os espaços de maneira consistente em blocos consecutivos de sete dias e devolve um calendário claro com cada peça, data, semana e número do espaço. O cálculo é determinístico: as mesmas entradas sempre produzem o mesmo calendário e podem ser reutilizadas com segurança em fluxos automatizados.
Prepare uma fila de conteúdo ordenada
Comece organizando as peças na sequência exata em que devem ser publicadas. Cada item pode ser um título provisório, uma etiqueta de campanha, um identificador de ativo ou uma descrição curta, desde que seja um texto não vazio. O agendador não prioriza, reescreve nem classifica o material; ele preserva a ordem recebida para que as decisões editoriais continuem sob seu controle. Escolha uma data inicial que represente o primeiro espaço disponível para publicação, e não apenas o dia em que o planejamento começa. A primeira peça será atribuída a essa data. Depois, informe uma frequência semanal inteira e positiva, como uma, três ou sete postagens. Ao manter essas três entradas explícitas, o plano resultante fica fácil de auditar: qualquer pessoa pode relacionar uma linha agendada à posição de origem, identificar o bloco de sete dias correspondente e consultar o número do espaço dentro da semana. Se houver dependências de campanha, resolva-as na fila antes de gerar as datas, pois o calendário considera a ordem fornecida como referência e não cria suposições ocultas sobre prioridade.
Entenda como as datas são distribuídas
Cada semana do agendamento é um bloco consecutivo de sete dias ancorado na data inicial informada; ela não começa automaticamente na segunda-feira nem segue uma divisão semanal específica de uma região. Dentro desse bloco, as datas são calculadas pela posição de cada peça com uma regra proporcional estável. Para três postagens por semana, por exemplo, os deslocamentos são os dias zero, dois e quatro, e a peça seguinte começa no dia sete. Dessa forma, a quantidade semanal solicitada é mantida e os espaços são distribuídos pelo bloco, em vez de serem concentrados no primeiro dia. Quando a frequência passa de sete, mais de um espaço pode cair na mesma data, uma representação intencional e útil para várias postagens diárias. A aritmética segue as regras gregorianas de anos bissextos e duração dos meses sem depender de fusos horários ou horários do relógio. Por isso, mudanças de horário de verão não deslocam as datas, e execuções com entradas iguais devolvem resultados idênticos, adequados para testes, importações e registros de aprovação.
Use o calendário no fluxo editorial
A resposta traz a data inicial normalizada, a frequência de postagem, o total de peças, a última data agendada e um registro para cada item de entrada. Cada registro contém a posição iniciada em um, o texto original, a data atribuída, o número da semana e o número do espaço dentro dela. Esses campos permitem importar as linhas em um sistema de gestão de conteúdo, relacioná-las a uma tabela de ativos mais detalhada pela posição ou pelo texto, ou mostrar aos revisores como uma fila cabe no ritmo disponível. Considere o resultado um plano de espaços, não uma ação automática de publicação: a ferramenta não envia postagens, não acessa redes sociais, não verifica feriados, não evita fins de semana nem considera os melhores horários de cada canal. Se sua equipe pausar uma campanha, mudar a frequência ou inserir um item prioritário, atualize a entrada ordenada e gere o calendário novamente. Como o preço é US$ 0,002 por solicitação e o cálculo é determinístico, rotinas automatizadas podem reconstruir planos completos de forma previsível sempre que a fila de origem mudar.
Casos de uso
Agende uma fila de campanha
Associe uma sequência aprovada de postagens de lançamento a datas sem alterar a narrativa nem a frequência semanal escolhida.
Planeje uma fila editorial
Converta títulos de artigos ou identificadores de ativos em um calendário datado que sua equipe possa revisar e importar em outro sistema.
Refaça as datas após mudar o ritmo
Gere todos os espaços novamente de modo consistente quando sua equipe aumentar ou reduzir o número previsto de postagens semanais.
Perguntas frequentes
O que significa uma semana neste calendário?
É um bloco de sete dias iniciado na data informada, independentemente do dia da semana em que ela cair.
A primeira peça é publicada na data inicial?
Sim. A data inicial é tratada como o primeiro espaço disponível e, portanto, é atribuída à primeira peça.
Várias peças podem receber a mesma data?
Sim. Frequências acima de sete postagens por semana criam necessariamente vários espaços em algumas datas, mas cada peça ainda recebe um número de espaço distinto.
A ferramenta ignora fins de semana ou feriados?
Não. Ela distribui os espaços em dias consecutivos do calendário. Se você precisar de regras de dias úteis, remova datas indisponíveis em uma etapa posterior ou ajuste o plano resultante.
O que ocorre quando a frequência é zero ou negativa?
A solicitação falha com um erro de entrada inválida, pois a quantidade de postagens por semana deve ser um inteiro positivo.
Quanto custa uma solicitação?
Cada solicitação custa US$ 0,002. O mesmo cálculo determinístico também pode ser usado no executor do 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/biz/content-calendar-slot-fill \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"content_pieces":["Product launch announcement","Customer success story","Behind-the-scenes video","Monthly tips roundup"],"posts_per_week":3,"start_date":"2026-08-03"}'const res = await fetch("https://api.kit.forhosting.com/biz/content-calendar-slot-fill", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"content_pieces": [
"Product launch announcement",
"Customer success story",
"Behind-the-scenes video",
"Monthly tips roundup"
],
"posts_per_week": 3,
"start_date": "2026-08-03"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/biz/content-calendar-slot-fill",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"content_pieces": [
"Product launch announcement",
"Customer success story",
"Behind-the-scenes video",
"Monthly tips roundup"
],
"posts_per_week": 3,
"start_date": "2026-08-03"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/biz/content-calendar-slot-fill", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"content_pieces":["Product launch announcement","Customer success story","Behind-the-scenes video","Monthly tips roundup"],"posts_per_week":3,"start_date":"2026-08-03"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"content_pieces":["Product launch announcement","Customer success story","Behind-the-scenes video","Monthly tips roundup"],"posts_per_week":3,"start_date":"2026-08-03"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/biz/content-calendar-slot-fill", 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
{
"content_pieces": [
"Product launch announcement",
"Customer success story",
"Behind-the-scenes video",
"Monthly tips roundup"
],
"posts_per_week": 3,
"start_date": "2026-08-03"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "biz.content_calendar_slot_fill",
"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. |