Webhooks
Les webhooks permettent de recevoir des notifications en temps réel lorsque des événements se produisent.
📋 Événements Disponibles
| Événement | Description |
|---|---|
trade.created | Nouveau trade créé |
trade.updated | Trade mis à jour |
trade.closed | Trade clôturé |
journal.created | Nouvelle entrée journal |
alert.triggered | Alerte 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