Webhook

Ricevi una notifica nel momento in cui un record viene creato, aggiornato o eliminato.

I webhook inviano una richiesta HTTP al tuo sistema ogni volta che i dati cambiano in Solid, così non devi mai interrogare periodicamente l'API.

Creare un webhook

  1. Vai su Impostazioni → API e Webhook → Webhook.
  2. Fai clic su + Crea webhook e inserisci un URL HTTPS pubblico.
  3. Fai clic su Salva. Gli eventi iniziano ad arrivare immediatamente.

Eventi

EventoEsempi
Record creatoperson.created, company.created
Record aggiornatoopportunity.updated
Record eliminatocompany.deleted

Payload

Ogni evento è una POST con un corpo JSON:

{
  "event": "person.created",
  "data": {
    "id": "abc12345",
    "name": { "firstName": "Ana", "lastName": "Souza" },
    "createdAt": "2026-09-30T15:30:45Z"
  },
  "timestamp": "2026-09-30T15:30:50Z"
}

Rispondi con qualsiasi stato 2xx per confermare la consegna. Le altre risposte vengono registrate come errori.

Verificare la firma

Ogni richiesta è firmata, così puoi verificare che provenga da Solid. Gli header mantengono i nomi del motore open source su cui Solid è costruito:

HeaderContenuto
X-Twenty-Webhook-SignatureFirma HMAC SHA-256
X-Twenty-Webhook-TimestampMomento in cui la richiesta è stata firmata
import crypto from 'node:crypto';

export function isFromSolid(req, secret) {
  const timestamp = req.headers['x-twenty-webhook-timestamp'];
  const expected = crypto
    .createHmac('sha256', secret)
    .update(`${timestamp}:${JSON.stringify(req.body)}`)
    .digest('hex');
  return expected === req.headers['x-twenty-webhook-signature'];
}

Rifiuta le richieste la cui firma non corrisponde e ignora i timestamp più vecchi di qualche minuto per prevenire attacchi di replay.

In questa pagina