Skip to main content
Chaque réponse servie laisse une trace, avec son trace_id, la version de core qui l’a produite et la version de l’app qui l’a demandée. Cette route est le seul chemin qui vient y poser un pouce. Pourquoi une route à part, et non un champ de plus sur /v2/retrieve : le vote arrive après la réponse, parfois longtemps après — l’utilisateur lit, puis juge — et parfois jamais. C’est un autre geste, avec sa propre durée de vie.
vote: 0 existe pour que se dédire soit un geste écrit comme un autre. Sans lui, retirer un pouce obligerait à supprimer la ligne — et on perdrait la réponse tracée en même temps que l’avis.

Idempotent

Re-poster écrase le vote précédent. C’est ce qui permet à l’utilisateur de changer d’avis, et à un client de re-tenter un envoi perdu sans compter deux fois.

Écriture synchrone

Contrairement à la trace elle-même, l’écriture est synchrone : accuser réception d’un vote qu’on n’a pas écrit serait mentir à l’utilisateur qui vient de cliquer.

Erreurs

Quand trace_id revient vide dans une réponse, la journalisation est coupée : ne proposez alors pas le retour dans l’interface, plutôt que de poster dans le vide.