Pular para o conteúdo principal

Solicitações de reserva

Um visitante de um dos seus mapas publicados pode enviar à sua empresa uma solicitação sobre um local do mapa: uma reserva em um estabelecimento, uma visita a um imóvel, um horário em uma loja, uma coleta em uma parada. A solicitação chega à caixa de entrada da sua organização no Kaleidr Booking, em booking.kaleidr.com, por e-mail se você quiser, e aos seus próprios sistemas por webhooks. Você a responde pela caixa de entrada.

Uma solicitação é uma solicitação, não uma reserva confirmada. Nada é reservado, bloqueado nem pago: sua empresa a confirma, por e-mail ou como costuma fazer.

Ativar as solicitações​

  1. No Kaleidr Booking, abra Configurações, Geral e ative Aceitar solicitações. Enquanto estiver desativado, nenhum visitante pode enviar uma solicitação à sua organização, e os botões de solicitação não aparecem.
  2. No Kaleidr Studio, adicione uma ação de solicitação a uma coleção: abra a coleção, Cartão e filtros, Ações do local, e adicione Solicitação. O rótulo dela é o botão que os visitantes veem; cada kit começa com o seu:
Tipo de coleçãoRótulo padrãoO visitante pede
LojasRequest an AppointmentUm horário, uma retirada ou a resposta a uma pergunta
AnúnciosSchedule a TourUma visita presencial ou por vídeo, ou mais informações
EstabelecimentosReserveUma reserva ou a resposta a uma pergunta
ParadasRequest PickupUma coleta, uma encomenda antecipada ou um aviso
  1. Publique um mapa que mostre a coleção. Os cartões de local, os layouts de locais e os locais das respostas do Ask Kaleidr passam então a exibir o botão.
  • Uma ação de solicitação por coleção. Adicioná-la ativa as solicitações para todos os locais da coleção. Uma nova coleção de Estabelecimentos começa com Reserve, e uma nova coleção de Paradas com Request Pickup.
  • Coleções de Veículos e Personalizadas não aceitam solicitações.
  • Locais do chat. A configuração Solicitações de um mapa no Studio, Aceitar Solicitações para Qualquer Lugar, também permite que os visitantes enviem uma solicitação sobre um local que a Kaleidr AI cita nas respostas, como um restaurante perto do seu hotel. Ela fica desativada por padrão. Essa solicitação identifica o local pelo nome e endereço. Só leva uma posição no mapa quando o endereço foi encontrado nos dados de endereços próprios da Kaleidr.
  • A Kaleidr AI pode preencher um formulário, nunca enviá-lo. Quando alguém pede "reserve uma mesa para quatro às 19h", o painel Ask Kaleidr prepara o formulário com o que o visitante disse e mostra Revisar e Enviar. O visitante revisa, adiciona os próprios dados e envia. A Kaleidr AI nunca vê o nome, o e-mail nem o telefone de um visitante.

O formulário​

O visitante vê o formulário sobre o mapa: os campos do kit da coleção, o nome, o e-mail e um telefone opcional, uma mensagem e a linha de consentimento. Enviar solicitação fica desativado até que os campos obrigatórios sejam preenchidos e a caixa de consentimento seja marcada. Depois do envio, o visitante vê Solicitação enviada e uma referência como K-7XQ2MD. Sobre o formulário em si, consulte O formulário de solicitação.

No Kaleidr Booking, Configurações, Formulários de solicitação tem uma aba por kit. Para cada campo, você escolhe se ele aparece, se é obrigatório e o rótulo, e pode adicionar até cinco perguntas próprias. A pré-visualização ao lado mostra o formulário como os visitantes vão vê-lo.

KitCampos padrão
LojasO motivo da solicitação, data, período do dia, itens
AnúnciosO motivo da solicitação, visita presencial ou por vídeo, até três datas, período do dia, financiamento
EstabelecimentosO motivo da solicitação, data, horário, número de pessoas (1 a 50), noites (1 a 60)
ParadasO motivo da solicitação, coleta, destino, data, horário, número de pessoas (1 a 20), itens

Coleta e destino são texto que o visitante digita. No layout ao vivo, uma coleção de Paradas cuja ação de solicitação deixa os visitantes escolhê-los adiciona os dois pontos, encontrados por uma busca de endereço ou um toque no mapa. Eles são o que o visitante escolheu para você atender.

Bots. Um visitante que não entrou na Kaleidr passa por uma breve verificação humana antes de a solicitação ser enviada.

A caixa de entrada​

Solicitações no Kaleidr Booking é um quadro com as colunas Nova, Aceita, Concluída e Recusada. Arraste um cartão para mudar o status, ou use o menu Mover para. Mostrar spam mostra as solicitações marcadas como spam. Filtre por mapa, local, kit e data, ou pesquise por referência, nome, e-mail ou local.

Abra uma solicitação para ver os dados e as respostas do visitante, o consentimento que ele deu, o local em um mapa e o histórico da solicitação. A partir daí:

AçãoO que faz
Aceitar, Recusar, Marcar como concluída, Marcar como spam, ReabrirMuda o status. Uma solicitação nova pode ser aceita, recusada ou marcada como spam; uma aceita pode ser marcada como concluída ou recusada; uma recusada ou marcada como spam pode ser reaberta. Concluída é definitivo.
RespostaEnvia sua resposta ao visitante por e-mail. A resposta dele chega ao seu próprio endereço de e-mail.
Adicionar notaUma nota só para sua equipe. Nunca é enviada.
Atribuir aEntrega a solicitação a um membro da sua organização.
Apagar solicitanteExclui todas as solicitações desse endereço de e-mail na sua organização. Consulte Retenção e apagamento.

Quem pode fazer o quê segue os papéis da sua organização: proprietários, administradores, membros e leitores podem ler as solicitações; proprietários, administradores e membros podem alterá-las, respondê-las e atribuí-las; proprietários e administradores gerenciam as configurações, os formulários, os webhooks e as notificações, excluem e apagam solicitações e as exportam em CSV.

E-mail. Em Configurações, Notificações, Avisar novas solicitações por e-mail envia um e-mail aos membros ativados em Equipe quando chega uma solicitação. O e-mail indica o local e o tipo de solicitação e leva até ela; não contém nenhum dado do visitante. Enviar confirmações envia ao visitante uma cópia com a referência.

Solicitações de teste. Uma solicitação que você mesmo envia pelo Studio é marcada como Teste e não conta para o limite do seu plano.

A linha de consentimento do formulário diz: "Concordo que sua empresa use estes dados para responder à minha solicitação. A Kaleidr os trata em nome de sua empresa.", com o nome da sua empresa no lugar de sua empresa: o Nome da empresa em Configurações, Geral, ou então o nome da sua organização. Defina o Link da Política de Privacidade com um endereço https:// da sua própria política, e a linha passa a apontar para ele. A caixa começa desmarcada, e uma solicitação sem ela é recusada. Cada solicitação guarda a versão da linha que o visitante aceitou e quando.

Retenção e apagamento​

  • Manter solicitações por exclui uma solicitação depois desse tempo sem atividade: 365 dias, a menos que você mude, de 30 a 730 dias. Uma solicitação marcada como spam é excluída após 30 dias.
  • Apagar solicitante exclui todas as solicitações de um endereço de e-mail na sua organização, junto com os e-mails enviados sobre elas. Use quando uma pessoa pedir que você exclua os dados dela.
  • Excluir uma solicitação a exclui junto com os e-mails enviados sobre ela.
  • Quando uma pessoa exclui a conta Kaleidr, as solicitações dela são excluídas em todas as organizações.
  • Quando sua organização é excluída, as solicitações dela são excluídas junto.

Webhooks​

Um webhook envia cada evento de solicitação a um endereço seu assim que acontece, para que seu sistema de reservas, seu CRM ou a automação da sua planilha possa agir. Adicione um no Kaleidr Booking em Configurações, Webhooks. Os webhooks estão disponíveis nos planos Pro e Enterprise.

  • O endereço precisa ser https na porta 443, e todos os endereços para os quais o nome dele resolve precisam ser públicos. Qualquer outra porta, ou um endereço privado, é recusado ao salvar e novamente em cada entrega.
  • O segredo é mostrado uma vez, quando você adiciona o webhook. Trocar segredo gera um novo; o antigo continua assinando por 24 horas para você fazer a troca.
  • Enviar teste envia um evento webhook.test.
EventoEnviado quando
request.createdUm visitante envia uma solicitação.
request.status_changedO status de uma solicitação muda. data.from_status contém o anterior.
request.repliedAlguém responde ao visitante. data.reply contém { body, created_at }.
webhook.testVocê escolhe Enviar teste.

Cada entrega é um POST com um corpo JSON e estes cabeçalhos:

CabeçalhoValor
Kaleidr-Signaturet=<unix seconds>,v1=<hex HMAC-SHA256(secret, "<t>.<raw body>")>
Kaleidr-Event-IdO id do evento, o mesmo em cada nova tentativa. Use-o para ignorar uma repetição.
Kaleidr-Event-TypeO evento, como na tabela acima.
Kaleidr-Delivery-AttemptDe 1 a 7.
{
"id": "8a1c2b9e-0000-4000-8000-000000000001",
"type": "request.created",
"api_version": "2026-10-22",
"created_at": "2026-10-22T15:04:05Z",
"org_id": "…",
"data": {
"request": {
"id": "…",
"ref": "K-7XQ2MD",
"kit": "venues",
"status": "new",
"place": { "name": "Sample Venue", "line": "…", "lat": 40.7411, "lng": -73.9897 },
"requester": { "name": "…", "email": "…", "phone": null, "locale": "en", "signed_in": false },
"fields": { "kind": "reservation", "date": "2026-10-30", "time": "19:00", "party_size": 4 },
"message": "…"
}
}
}

Uma solicitação sobre um local do chat cujo endereço não foi encontrado nos dados de endereços próprios da Kaleidr tem place.lat e place.lng definidos como null.

Verificar a assinatura​

Verifique o corpo bruto antes de analisá-lo, e recuse um carimbo de data e hora com mais de cinco minutos. Durante uma troca de segredo, o cabeçalho traz um segundo v1=, assinado com o segredo anterior; aceite qualquer um dos dois.

import hashlib, hmac, time

def verify(header: str, secret: str, body: bytes, tolerance: int = 300) -> bool:
parts = [p.split("=", 1) for p in header.split(",")]
t = next((v for k, v in parts if k == "t"), "")
if not t.isdigit() or abs(time.time() - int(t)) > tolerance:
return False
expected = hmac.new(secret.encode(), f"{t}.".encode() + body, hashlib.sha256).hexdigest()
return any(k == "v1" and hmac.compare_digest(v, expected) for k, v in parts)

Teste seu código com este vetor:

EntradaValor
segredowhsec_MfKQ9r8GKYqrTwjUPD8ILPZIo2LaLaSw
t1761091200
corpo{"id":"8a1c2b9e-0000-4000-8000-000000000001","type":"webhook.test"}
v13e55a2f93ac990282b95fd9140f8290ffaddc5d41969831e4234b164d613bd72

Entrega e novas tentativas​

  • Responda com qualquer status 2xx em até 10 segundos. Redirecionamentos não são seguidos.
  • Pelo menos uma vez. Uma entrega que falha é tentada de novo após 1 minuto, 5 minutos, 30 minutos, 2 horas, 6 horas e 24 horas: sete tentativas em cerca de 32 horas. O mesmo evento pode chegar duas vezes; ignore um Kaleidr-Event-Id que você já viu.
  • O corpo é a solicitação como está no momento do envio, então uma nova tentativa traz o estado mais recente. Uma solicitação apagada nesse meio-tempo não é enviada.
  • Dez entregas seguidas em que todas as tentativas falham desativam o webhook. Reativá-lo zera a contagem.
  • Entregas, em cada webhook, lista as tentativas dos últimos 30 dias com status, código de resposta e tempo, sem os corpos. Tentar novamente reenvia uma que falhou.

Limites​

LimiteFreeProEnterprise
Solicitações por mês501.000Definido no seu contrato
WebhooksNenhum5Definido no seu contrato

Um mês é o período de faturamento da sua organização. Solicitações de teste não contam. No limite, novas solicitações são recusadas até o próximo período, e o formulário mostra no lugar o telefone ou o link do local, quando houver.

Relacionado​