E-commerce — message remis par e-mail
Un client achète un cadeau, enregistre une vidéo directement sur votre page de confirmation de commande, puis passe à autre chose. Le destinataire ne reçoit rien tant que le colis n’est pas effectivement devant sa porte : c’est à ce moment-là que votre système logistique demande à Livstick d’envoyer l’e-mail qui contient le message.
Prérequis
Un jeton d’accès fourni par l’équipe Livstick, et un point de votre parcours de checkout où vous pouvez appeler l’API côté serveur. Si vous n’avez pas encore de jeton, demandez un accès développeur.
Créer le conteneur au checkout
Dès que la commande est passée, créez un conteneur avec votre propre référence de commande comme crid. Si vous ne renseignez pas mode, il garde sa valeur par défaut : single, un seul message. Conservez tout de suite la valeur editKey de la réponse : elle n’est fournie qu’à la création, et aucun endpoint ne permet de la retrouver ensuite.
curl -X POST https://client-api.v5.livstick.com/api/v3/containers \
-H "Authorization: Bearer {ACCESS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"crid": "ORDER-123",
"recipient": { "email": "recipient@example.com" },
"language": "en_us"
}'
Intégrer le Recorder à votre page de confirmation
Transmettez les valeurs urid et editKey du conteneur que vous venez de créer : toutes deux sont propres à cette requête et ne doivent pas être réutilisées d’une commande à l’autre. Le client enregistre sa vidéo sur place, avant de quitter la page.
<livstick-widget-v2
uid="{urid from step 1}"
domain="example.com"
></livstick-widget-v2>
<script>
const widget = document.querySelector("livstick-widget-v2");
widget.editKey = "{editKey from step 1}";
</script>
Enregistrer l’expédition au départ du colis
Quand votre système logistique remet le colis au transporteur, mettez à jour le conteneur (PATCH) avec les informations d’expédition dont vous disposez. Cet appel ne déclenche rien à lui seul : il maintient simplement les données du conteneur en phase avec la réalité.
curl -X PATCH https://client-api.v5.livstick.com/api/v3/containers/ORDER-123 \
-H "Authorization: Bearer {ACCESS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{ "shipmentCarrier": "chronopost", "shipmentCode": "XX123456789FR" }'
Notifier le destinataire à l’arrivée du colis
Quand le suivi du transporteur confirme la livraison, appelez notify. Livstick retrouve le contact du destinataire à partir des informations déjà présentes dans le conteneur et envoie l’e-mail contenant le lien vers le message.
curl -X POST https://client-api.v5.livstick.com/api/v3/containers/ORDER-123/notify \
-H "Authorization: Bearer {ACCESS_TOKEN}"
Les pièges à éviter
notify n’est pas idempotent : l’appeler deux fois envoie deux fois l’e-mail. Déclenchez-le donc depuis un point unique et dédoublonné de votre chaîne de livraison, et non à chaque nouvelle tentative d’un webhook. Si le conteneur ne contient aucun contact pour le destinataire, notify n’a personne à qui écrire : renseignez recipient.email à la création, ou ajoutez-le par un PATCH avant d’appeler notify. Enfin, sans recipient.channel, Livstick choisit l’e-mail dès que recipient.email est présent, même si un numéro de téléphone est aussi renseigné : si vous avez besoin du SMS, définissez channel explicitement.