ForHosting KIT · Finanças e dinheiro

Verificar reservas duplicadas e conflitos em salas de reunião

Um planejamento das 09:00 às 10:30 e entrevistas das 10:00 às 11:00 se chocam entre 10:00 e 10:30, enquanto uma revisão que começa às 11:00 não tem problema. Todos os pares sobrepostos são listados, não só o primeiro. Grátis no seu navegador.

  • Grátis
  • Funciona no seu navegador
  • Sem cadastro
  • Seus dados não saem do seu aparelho
Use pelo WebAPIE-mailTelegramApp em breve

Uma sala de reunião compartilhada pode parecer disponível mesmo quando duas reservas ocupam discretamente o mesmo período do dia. Esta ferramenta analisa uma lista de reservas de uma única sala, valida cada intervalo e informa todos os pares que se sobrepõem. Ela usa horários claros do mesmo dia no formato de 24 horas e considera o término de uma reserva disponível para o início da próxima. O resultado é determinístico e pode apoiar conferências de agenda, validação de importações ou um relatório objetivo de conflitos antes da publicação do calendário.

Prepare as reservas de uma sala

Envie na lista bookings as reservas de uma única sala. Manter uma sala e um dia por solicitação torna o resultado direto: qualquer par informado representa uma disputa real pelo mesmo espaço físico. Sempre que possível, use identificadores estáveis do seu sistema de agenda, pois a resposta nomeia os conflitos com esses identificadores, sem depender da posição das linhas.

A ferramenta rejeita listas vazias, registros malformados, identificadores repetidos, horários impossíveis e entradas acima do limite publicado. Também rejeita uma reserva cujo término anteceda o início, em vez de presumir que ela atravessa a meia-noite. Se a origem contiver datas, fusos horários ou reservas noturnas, divida ou normalize os dados antes de chamar esta capacidade.

Esse contrato explícito impede que um horário local seja interpretado de formas diferentes em um servidor, navegador ou planilha e mantém idênticas as execuções repetidas.

Entenda o que constitui um conflito

As reservas são avaliadas como intervalos semiabertos: o início pertence à reserva, mas o instante exato do término fica disponível para a próxima. Portanto, uma reserva das 09:00 às 10:00 e outra das 10:00 às 11:00 são consecutivas e não entram em conflito. Se a segunda começar às 09:59, o par será informado.

Para cada conflito, a resposta inclui os dois identificadores e o início e o fim do período compartilhado. Uma entrada com duração zero, na qual start é igual a end, é válida, porém não ocupa tempo e não pode se sobrepor a outra reserva. O algoritmo retorna todos os pares conflitantes, não apenas o primeiro conflito nem um único conflito por reserva.

Essa diferença importa quando várias marcações se acumulam no mesmo horário: três reservas mutuamente sobrepostas produzem três pares, oferecendo à administração todas as relações que precisam ser investigadas. Os resultados são sempre ordenados por horário, usando a ordem original da entrada como último desempate, para manter estáveis as comparações automatizadas e os registros de auditoria.

Use o relatório no fluxo de agendamento

O resultado principal informa quantas reservas foram conferidas, se há conflitos e quantos pares conflitantes foram encontrados. Quando houver conflitos, use os limites da sobreposição para explicar o intervalo exato em disputa, em vez de exibir um alerta vago de reserva duplicada. A capacidade não escolhe um vencedor, não move reuniões nem combina reservas adjacentes; essas ações dependem das prioridades da organização e devem permanecer no seu fluxo de agendamento.

Execute a verificação antes de publicar o calendário de uma sala, depois de importar reservas de outro sistema ou sempre que uma edição em lote alterar muitos horários.

Validar uma importação de calendário

Confira as reservas importadas antes que elas substituam ou complementem a agenda do seu calendário principal.

Proteger uma atualização em lote

Encontre conflitos criados quando a administração altera vários horários de reunião em uma única operação.

Criar um relatório de conflitos

Relacione os pares exatos de reservas e os períodos compartilhados que a equipe de instalações precisa resolver.

Qual formato de horário devo usar?

Use o formato de 24 horas, HH:MM ou HH:MM:SS, como 09:30 ou 14:05:20.

Reservas consecutivas entram em conflito?

Não. Se uma reserva terminar exatamente quando outra começar, a sala será considerada disponível para a segunda.

O que ocorre quando o término antecede o início?

Normalize ou divida os intervalos noturnos antes da verificação.

A ferramenta para depois da primeira sobreposição?

Não. Ela informa todos os pares conflitantes, inclusive todas as combinações de um grupo de reservas simultâneas.

Posso conferir várias salas em uma solicitação?

Não. Cada solicitação representa uma sala. Agrupe as reservas por sala e confira cada grupo separadamente.

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.

POSThttps://api.kit.forhosting.com/biz/meeting-room-double-booking-check

Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.

curl -X POST https://api.kit.forhosting.com/biz/meeting-room-double-booking-check \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"bookings":[{"booking_id":"planning","start":"09:00","end":"10:30"},{"booking_id":"interviews","start":"10:00","end":"11:00"},{"booking_id":"review","start":"11:00","end":"11:30"}]}'
{
  "bookings": [
    {
      "booking_id": "planning",
      "start": "09:00",
      "end": "10:30"
    },
    {
      "booking_id": "interviews",
      "start": "10:00",
      "end": "11:00"
    },
    {
      "booking_id": "review",
      "start": "11:00",
      "end": "11:30"
    }
  ]
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "biz.meeting_room_double_booking_check",
  "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.

por chamadaUS$ 0,002

Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.

max_items1000
HTTPCódigoO que significa
401unauthorizedToken ausente ou inválido. Confira o header Authorization.
402insufficient_balanceSaldo insuficiente para esta tarefa. Faça uma recarga e tente de novo.
404unknown_typeEsse tipo de tarefa não existe. Confira o campo type no catálogo.
429rate_limitedMuitas requisições em pouco tempo. Espere um instante e tente de novo.

Prepare as reservas de uma sala

Cada linha precisa de um booking_id exclusivo e dos valores start e end escritos no formato de 24 horas, como HH:MM ou HH:MM:SS.

Use o relatório no fluxo de agendamento

A lista conflicting_pairs pode alimentar um painel de alertas, uma mensagem de rejeição da importação ou um relatório enviado às pessoas responsáveis pelas reservas. Um resultado sem problemas apresenta has_conflicts como false e uma lista vazia, o que facilita uma regra simples para continuar ou interromper o processo. Ela funciona sem rede, armazenamento, aleatoriedade ou data atual, e uma solicitação de API usa o preço US$ 0,002, permitindo utilizar a mesma entrada em testes reproduzíveis e na validação de produção.

Quanto custa uma solicitação de API?

Cada solicitação de API custa US$ 0,002. A versão para navegador usa a mesma lógica de verificação determinística.

Ver a documentação completa do KIT →