Webhooks sortants
Envoyez les événements TeeckIn sous forme de JSON brut et signé vers n’importe quel point de terminaison HTTPS — connectez votre activité de Timer et de tâches à n8n, Make, Zapier ou à votre propre backend.
De quoi s’agit-il
Une intégration Webhook personnalisé (JSON) distribue les événements TeeckIn sous forme de charge utile JSON exploitable par une machine vers un point de terminaison que vous contrôlez — contrairement aux intégrations Slack/Mattermost, qui envoient des messages de chat formatés. Utilisez-la pour déclencher des automatisations : enregistrer un Timer terminé dans un tableur, rédiger une facture lorsqu’une entrée facturable est créée, ou mettre à jour une tâche dans votre outil de gestion de projet.
Disponible sur tous les forfaits
Créer une intégration de webhook
- 1Accédez à Paramètres → Intégrations et cliquez sur Ajouter une intégration
- 2Choisissez la plateforme Webhook personnalisé (JSON)
- 3Collez l’URL de votre point de terminaison HTTPS (l’adresse sur laquelle votre outil d’automatisation est à l’écoute)
- 4Choisissez les événements à envoyer et un filtre facultatif par Topic/catégorie
- 5Cliquez sur Créer l’intégration et copiez le secret de signature affiché — il n’est affiché qu’une seule fois
HTTPS uniquement, points de terminaison publics uniquement
localhost, 10.x.x.x, ou des IP de métadonnées cloud). Cela protège votre compte et votre infrastructure contre la falsification de requête côté serveur.La charge utile
Chaque distribution est une requête POST avec une enveloppe JSON versionnée. Les événements survenant dans la fenêtre de regroupement de l’intégration sont combinés dans le tableau events d’une seule requête.
{
"version": "1",
"sentAt": "2026-05-30T14:02:11.000Z",
"integration": { "name": "My Automation" },
"events": [
{
"event": "timer_stop",
"topicName": "Acme redesign",
"categoryName": "Client work",
"userName": "Jordan Breton",
"durationMinutes": 45,
"timestamp": "2026-05-30T14:02:11.000Z"
}
]
}Le champ version est un contrat de stabilité : les noms de champ ne changeront pas sans incrément de version, afin que vos automatisations continuent de fonctionner.
Vérifier la signature
Chaque requête inclut un en-tête X-TeeckIn-Signature contenant un HMAC-SHA256 du corps brut de la requête, signé avec votre secret de signature :
X-TeeckIn-Signature: sha256=<hex-digest>Recalculez le condensé sur le corps brut et comparez-le. Exemple en Node.js :
import crypto from 'node:crypto';
function isValid(rawBody, header, secret) {
const expected =
'sha256=' + crypto.createHmac('sha256', secret).update(rawBody).digest('hex');
// Constant-time comparison
return crypto.timingSafeEqual(Buffer.from(header), Buffer.from(expected));
}Renouveler le secret
Se connecter à n8n / Make / Zapier
Pointez l’URL du webhook vers le nœud de webhook entrant de votre outil d’automatisation, puis utilisez ses actions de requête HTTP pour rappeler TeeckIn (par ex. créer un pointage) si vous avez besoin de flux bidirectionnels. Une configuration type :
- 1Créez un nœud de webhook/déclencheur dans n8n, Make ou Zapier et copiez son URL
- 2Créez une intégration de webhook TeeckIn pointant vers cette URL
- 3(Facultatif) Ajoutez une étape de vérification de signature à l’aide du secret
- 4Mappez les champs
events[]vers votre action en aval