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