Aller au contenu principal

Votants (Votez)

Endpoints CRUD pour les votants d'une campagne, plus une mise à jour en lot du droit de vote. Module requis : Votez.

Toutes les routes sont sous le préfixe /b2b/v1/campagnes/{campagneId}/votants.

Liste des votants​

GET /b2b/v1/campagnes/{campagneId}/votants

Filtres (query string)​

NomTypeDescription
courrielstringRecherche partielle (contains)
identifiantstringÉgalité stricte
nomstringRecherche partielle sur nom ou prenom
droitDeVoteboolFiltre par droit de vote
estRadieboolFiltre par statut radié
aVoteboolFiltre par statut « a voté »

Réponse​

[
{
"id": "...",
"identifiant": "M-001",
"courriel": "alice@example.com",
"courrielAlternatif": null,
"nom": "Tremblay",
"prenom": "Alice",
"droitDeVote": true,
"estRadie": false,
"aVote": false,
"poids": 1.0,
"commentaire": null
}
]

Obtenir un votant​

GET /b2b/v1/campagnes/{campagneId}/votants/{votantId}
NomEmplacementType
campagneIdPathGuid
votantIdPathGuid

Upsert (créer / modifier) un votant​

PUT /b2b/v1/campagnes/{campagneId}/votants

Corps de la requête​

{
"votantId": null,
"identifiant": "M-001",
"courriel": "alice@example.com",
"courrielAlternatif": null,
"nom": "Tremblay",
"prenom": "Alice",
"droitDeVote": true,
"poids": 1.0,
"commentaire": null
}

votantId null = création. Fourni = mise à jour de ce votant.

Réponse​

"3fa85f64-5717-4562-b3fc-2c963f66afa6"

L'identifiant Guid du votant créé ou mis à jour.

Erreurs possibles​

CodeHTTPSignification
Votant.CourrielDejaUtilise409Le courriel est déjà utilisé pour cette campagne
Votant.IdentifiantDejaUtilise409L'identifiant est déjà utilisé
Votant.ADejaVote400Le votant a déjà voté — modifications interdites
Votant.EstRadie400Le votant est radié

Supprimer un votant​

DELETE /b2b/v1/campagnes/{campagneId}/votants/{votantId}

Erreurs possibles​

CodeHTTPSignification
Votant.ADesVotes400Le votant a déjà voté — utilisez radier à la place

Radier un votant​

POST /b2b/v1/campagnes/{campagneId}/votants/{votantId}/radier

Marque le votant comme radié — il est exclu des envois de jeton, des mises à jour en lot et ne peut plus voter.

Erreurs possibles​

CodeHTTPSignification
Votant.DejaRadie400Le votant est déjà radié

Mise à jour en lot du droit de vote​

POST /b2b/v1/campagnes/{campagneId}/votants/droits-de-vote

Idéal pour appliquer une liste d'exclus depuis un système externe. Prend en charge 40 000+ identifiants par appel, ignore les votants radiés, n'écrit que les différences.

Corps de la requête​

{
"votantIds": ["...", "...", "..."],
"droitDeVote": false
}

Réponse​

{
"nombreMisAJour": 1234,
"votantIdsNonTrouves": []
}
ChampTypeDescription
nombreMisAJourintNombre de votants effectivement modifiés
votantIdsNonTrouvesGuid[]Identifiants ne correspondant à aucun votant de la campagne

Voir aussi​