본문으로 건너뛰기

Webhooks

Les webhooks permettent de recevoir des notifications en temps réel lorsque des événements se produisent.

📋 Événements Disponibles

ÉvénementDescription
trade.createdNouveau trade créé
trade.updatedTrade mis à jour
trade.closedTrade clôturé
journal.createdNouvelle entrée journal
alert.triggeredAlerte déclenchée

➕ Créer un Webhook

POST /api/webhooks
Authorization: Bearer {token}
Content-Type: application/json

{
"url": "https://your-server.com/webhook",
"events": ["trade.created", "trade.closed"],
"secret": "your-webhook-secret"
}

📨 Payload Reçu

{
"event": "trade.closed",
"timestamp": "2025-01-15T14:45:00Z",
"data": {
"tradeId": "uuid",
"instrument": "EUR/USD",
"result": 225.00,
"rMultiple": 2.25
}
}

🔐 Vérification de Signature

Chaque webhook inclut un en-tête X-Webhook-Signature :

const crypto = require('crypto');

function verifySignature(payload, signature, secret) {
const expected = crypto
.createHmac('sha256', secret)
.update(payload)
.digest('hex');
return crypto.timingSafeEqual(
Buffer.from(signature),
Buffer.from(expected)
);
}

📋 Gérer les Webhooks

Lister

GET /api/webhooks

Supprimer

DELETE /api/webhooks/{id}

Tester

POST /api/webhooks/{id}/test