Types Webhooks
Types partagés pour le système de webhooks MCM.
B2BWebhookPayload
Enveloppe non-typée d'un événement webhook.
public class B2BWebhookPayload
{
public string EventType { get; init; }
public DateTime TimestampUtc { get; init; }
public Guid DeliveryId { get; init; }
public JsonElement Data { get; init; }
}
B2BWebhookPayload<TData>
Enveloppe typée passée aux handlers.
public class B2BWebhookPayload<TData>
{
public string EventType { get; init; }
public DateTime TimestampUtc { get; init; }
public Guid DeliveryId { get; init; }
public TData Data { get; init; }
}
B2BListeElectoraleCreeData
Données de l'événement campagne.liste_electorale_cree.
| Propriété | Type | Description |
|---|---|---|
CampagneId | Guid | Identifiant unique de la campagne |
TitreCampagne | string | Titre de la campagne |
NombreVotantsAjoutes | int | Nombre de votants ajoutés avec succès |
NombreVotantsIgnores | int | Nombre de votants ignorés (doublons) |
NombreVotantsErreurs | int | Nombre d'erreurs lors de l'ajout |
TotalVotantsCampagne | int | Total de votants dans la campagne |
IMcmWebhookHandler<TData>
Interface pour les handlers de webhooks.
public interface IMcmWebhookHandler<TData>
{
Task HandleAsync(B2BWebhookPayload<TData> payload, CancellationToken ct);
}
WebhookEventTypes
Constantes pour les types d'événements.
| Constante | Valeur | Description |
|---|---|---|
ListeElectoraleCree | campagne.liste_electorale_cree | Liste électorale créée |
WebhookSignatureValidator
Utilitaire pour valider les signatures HMAC-SHA256.
public static class WebhookSignatureValidator
{
public static bool IsValid(
string secret, // Secret base64
string timestamp, // En-tête X-MCM-Timestamp
string body, // Corps brut de la requête
string signature // En-tête X-MCM-Signature
);
}