API e Webhooks

Integre o Spacevents com seu sistema e receba notificações em tempo real

Documentação para Desenvolvedores

O que são Webhooks?

Webhooks são notificações automáticas que o Spacevents envia para o seu sistema sempre que um evento importante acontece na plataforma. É como ter um assistente que te avisa imediatamente: "Olha, acabou de chegar uma nova solicitação de cotação!"

Ao invés de você precisar ficar consultando nossa API constantemente para ver se há novidades, nós enviamos os dados diretamente para você, em tempo real, sempre que algo acontecer.

Exemplo prático: Toda vez que alguém solicita uma cotação do seu espaço, o webhook envia os dados para o seu CRM, que automaticamente cria um novo contato e agenda uma tarefa para você entrar em contato.

Para que servem?

Como funciona?

1. Configure a URL

Informe o endereço do seu sistema que receberá as notificações

2. Evento acontece

Quando um evento ocorre (ex: nova cotação), o Spacevents detecta automaticamente

3. Dados enviados

Os dados são enviados instantaneamente para a URL configurada via POST

Como configurar um Webhook

Passo 1: Acesse a página de Webhooks

1. Faça login no Spacevents
2. Vá para o Dashboard
3. Clique em "Webhooks" no menu

Passo 2: Preencha os dados

Você verá um formulário com os seguintes campos:

Passo 3: Salvar

Clique em "Salvar Webhook" e pronto! O webhook está configurado e ativo.

Importante: Certifique-se de que a URL informada está acessível publicamente e aceita requisições POST.

Eventos Disponíveis

POST novo_lead

Disparado quando um cliente solicita uma cotação de um espaço. Este é o evento mais comum e útil para integrações com CRMs e sistemas de gestão.

Novos eventos: Estamos trabalhando para adicionar mais eventos no futuro, como "Reserva Confirmada", "Reserva Cancelada", etc. Fique de olho nas atualizações!

Estrutura dos Dados (Payload)

Quando um evento é disparado, o Spacevents envia um JSON com todas as informações relevantes. Veja a estrutura completa:

Informações do Evento

Informações da Reserva/Cotação

Informações do Solicitante (Lead)

Informações do Espaço

Exemplo de JSON Enviado

{
  "evento": "novo_lead",
  "timestamp": "2024-12-10T14:30:00",
  "reserva": {
    "id_reserva": 12345,
    "id_espaco": 789,
    "data_inicio": "2024-12-25",
    "data_fim": "2024-12-26",
    "qtd_pessoas": 50,
    "valor_previsto": 5000.00
  },
  "solicitante": {
    "id_usuario": 456,
    "nome": "João Silva",
    "email": "joao@exemplo.com",
    "telefone": "(11) 1234-5678",
    "celular": "(11) 98765-4321",
    "tipo": "PF",
    "cpf": "123.456.789-00"
  },
  "espaco": {
    "id_espaco": 789,
    "nome_espaco": "Salão de Festas Premium",
    "nome_local": "Centro de Eventos",
    "cidade": "São Paulo",
    "estado": "SP",
    "endereco_maps": "Rua Exemplo, 123 - Centro, São Paulo - SP"
  }
}

Como implementar no seu sistema

Seu sistema precisa ter uma URL que aceite requisições POST. Veja os requisitos técnicos:

Importante: O Spacevents tenta até 3 vezes se houver erro. Seu sistema deve responder rapidamente (idealmente em menos de 5 segundos).

Exemplo em PHP

// Recebe os dados do webhook
$dados = file_get_contents('php://input');
$json = json_decode($dados, true);

// Processa os dados
$nome = $json['solicitante']['nome'];
$email = $json['solicitante']['email'];
$id_reserva = $json['reserva']['id_reserva'];

// Faz o que precisa (salvar no banco, enviar email, etc.)
// ...

// Responde com sucesso
http_response_code(200);
echo json_encode(['status' => 'ok']);

Exemplo em Node.js

app.post('/webhook/spacevents', (req, res) => {
  const dados = req.body;
  
  // Processa os dados
  const nome = dados.solicitante.nome;
  const email = dados.solicitante.email;
  const idReserva = dados.reserva.id_reserva;
  
  // Faz o que precisa
  // ...
  
  // Responde com sucesso
  res.status(200).json({ status: 'ok' });
});

Exemplo em Python (Flask)

from flask import Flask, request, jsonify

app = Flask(__name__)

@app.route('/webhook/spacevents', methods=['POST'])
def webhook():
    dados = request.json
    
    # Processa os dados
    nome = dados['solicitante']['nome']
    email = dados['solicitante']['email']
    id_reserva = dados['reserva']['id_reserva']
    
    # Faz o que precisa
    # ...
    
    # Responde com sucesso
    return jsonify({'status': 'ok'}), 200

Como testar

Teste direto no Spacevents

1. Vá para a página de Webhooks no Dashboard
2. Na lista de webhooks, encontre o que você quer testar
3. Clique no botão "Testar" (ícone de raio)
4. O Spacevents enviará uma requisição de teste para a URL configurada
5. Você verá o resultado: sucesso ou erro

Ferramentas externas para teste

Dica: Use webhook.site para testar rapidamente. Acesse o site, copie a URL única que aparece, configure essa URL no Spacevents e faça um teste. Você verá os dados chegando em tempo real!

Logs e Monitoramento

O Spacevents registra todas as tentativas de envio de webhooks. Para ver os logs:

  1. Vá para Dashboard → Webhooks → Ver Logs
  2. Você verá uma lista com todas as requisições enviadas

Informações nos logs:

Status 200: Sucesso! Seu sistema recebeu e respondeu corretamente.

Boas Práticas e Segurança

Segurança

Performance

Tratamento de Erros

Problemas Comuns

Webhook não está sendo disparado

Erro ao enviar webhook

Dados não estão chegando

Pronto para começar?

Configure seus webhooks e comece a receber notificações em tempo real!

Acessar Dashboard