Passer au contenu principal
La revendication de conversation avec les invités aide les flux de discussion sur le site Web à fusionner les conversations anonymes des visiteurs dans un véritable profil client. Utilisez-le après qu’un visiteur s’est connecté, a soumis son e-mail ou est devenu connu.

Réclamez des conversations d’invités

const result = await plato.v1.connect.claimGuestConversations.mutate({
  fingerprint: "browser_fingerprint_value",
  guestExternalId: "guest_123",
  customer: {
    externalId: "customer_123",
    name: "Jane Customer",
    email: "[email protected]",
  },
  targetParentId: "known_customer_conversation_id",
  claimMetadata: {
    source: "website-login",
  },
});

Saisir

{
  fingerprint: string;
  guestExternalId?: string | null;
  guestLocalConversationId?: string | null;
  targetParentId?: string | null;
  customerId?: string | null;
  customer?: {
    id?: string | null;
    externalId?: string | null;
    name?: string | null;
    email?: string | null;
    phone?: string | null;
    image?: string | null;
    metadata?: Record<string, unknown> | null;
  } | null;
  claimMetadata?: Record<string, unknown> | null;
}
customerId ou customer est requis.

Réponse

{
  claimed: 2,
  reparented: 1
}
claimed est le nombre de conversations correspondantes et attachées au client connu. reparented est le nombre de conversations enfants déplacées sous targetParentId.

Quand l’utiliser

Utilisez ce flux lorsque :
  • Un visiteur démarre le chat avant de se connecter.
  • Un site Web crée un identifiant de conversation temporaire dans le stockage local.
  • Une connexion ultérieure devrait connecter l’ancien historique de discussion au client réel.

Remarques

  • fingerprint doit contenir au moins 8 caractères.
  • targetParentId doit appartenir au même espace de travail que la clé API.
  • Le API supprime les participants invités uniquement lorsqu’il peut les remplacer en toute sécurité par le vrai client.
  • Les conversations avec les dossiers professionnels sont préservées.