Référence

Référence : site web et @zean-chat/js

Le window.zean du code d’installation et le paquet @zean-chat/js : chaque option, chaque méthode et chaque type.

Mis à jour le 18 octobre 2026

Les exemples affichent app_your_app_key. Ouvrez ce guide depuis Paramètres de l’App > Développeurs > Démarrage pour y voir la clé de votre App.

Le code d’installation et le paquet @zean-chat/js donnent les mêmes méthodes. Le code d’installation les place sur window.zean ; le paquet les exporte, pour un site construit avec un bundler et sans React ni Vue.

Terminal
npm install @zean-chat/js
JSX
import { loadZean, zean } from "@zean-chat/js";loadZean({ appKey: "app_your_app_key" });// Plus loin, n’importe où dans votre codezean.open();
  • loadZean() ajoute le chargeur du chat une seule fois, quel que soit le nombre d’appels. Un appel avec une autre clé est ignoré, et la console l’indique.
  • Les méthodes de zean marchent avant la fin du chargement : les appels attendent le chat.
  • Côté serveur, rien ne se passe : le paquet peut être importé dans du code rendu sur le serveur.
  • Si le code d’installation est aussi sur la page, loadZean() se sert du chat qu’il a chargé.

Exports

NomTypeDescription
loadZean()(options: ZeanOptions) => ZeanApiAffiche le chat sur la page et renvoie ses méthodes.
zeanZeanApiLes méthodes du chat, utilisables avant loadZean().
ZeanApiinterfaceLes méthodes du chat, plus bas.
ZeanSettingsinterfaceCe que window.zean contient avant le chargement.
ZeanOptionsinterfaceLes options de loadZean().
ZeanUserinterfaceLa personne connectée, plus bas.
ZeanAttributesRecord<string, ZeanAttributeValue>Les attributs du Contact : { city: "Douala", orders: 12 }.
ZeanAttributeValuestring | number | booleanLa valeur d’un attribut.
ZeanLocale'fr' | 'en'Une langue du chat.

window.zean, avant le chargement

Le code d’installation définit window.zean avant d’ajouter le chargeur :

HTML
<script>  window.zean = { appKey: "app_your_app_key", locale: "fr" };</script><script async src="https://widget.zean.chat/loader.js"></script>
NomTypeDescription
appKeystringObligatoire. La clé publique de l’App, dans Paramètres de l’App > Développeurs > Démarrage.
userZeanUserFacultatif. La personne connectée, { id, name, email }. Comme appeler identify() une fois le chat chargé. Voir Identifier vos Contacts.
locale'fr' | 'en'Facultatif. La langue du chat. Sans elle : celle du navigateur si le chat la parle, sinon la langue par défaut de l’App. Lue au chargement de la page.
tabAlertbooleanFacultatif. L’alerte d’onglet : tant que le Contact a des réponses à lire, le titre de votre onglet commence par leur nombre et son icône prend un point rouge. Active par défaut ; false la désactive. Voir Afficher le nombre de messages non lus.

Options de loadZean()

NomTypeDescription
appKeystringObligatoire. La clé publique de l’App, dans Paramètres de l’App > Développeurs > Démarrage.
userZeanUserFacultatif. La personne connectée, { id, name, email }. Comme appeler identify() une fois le chat chargé. Voir Identifier vos Contacts.
locale'fr' | 'en'Facultatif. La langue du chat. Sans elle : celle du navigateur si le chat la parle, sinon la langue par défaut de l’App. Lue au chargement de la page.
tabAlertbooleanFacultatif. L’alerte d’onglet : tant que le Contact a des réponses à lire, le titre de votre onglet commence par leur nombre et son icône prend un point rouge. Active par défaut ; false la désactive. Voir Afficher le nombre de messages non lus.

Méthodes

NomTypeDescription
open()() => voidOuvre le chat.
close()() => voidFerme le chat.
toggle()() => voidOuvre le chat s’il est fermé, le ferme sinon.
getUnreadCount()() => numberLe nombre de réponses que le Contact n’a pas lues. 0 avant le chargement.
onUnreadChange()(listener: (count: number) => void) => () => voidAppelle listener à chaque changement de ce nombre. Renvoie la fonction qui arrête l’écoute.
identify()(user: ZeanUser) => voidLa personne s’est connectée. Le premier appareil qui donne son ID rejoint sa Conversation tout de suite ; un autre lui demande d’abord un code envoyé par email. Voir Identifier vos Contacts.
signOut()() => voidLa personne s’est déconnectée : le chat repart de zéro, anonyme.
setAttributes()(attributes: ZeanAttributes) => voidAjoute ces attributs à ceux déjà envoyés. Les valeurs refusées sont signalées dans la console. Voir Attributs personnalisés.

ZeanUser

NomTypeDescription
idstring | numberObligatoire. Votre propre ID pour la personne, en texte ou en nombre, 200 caractères au plus. Le même ID sur votre site et dans votre application mobile donne une seule personne.
namestringFacultatif. Son nom, sur sa fiche Contact.
emailstringFacultatif. Le code qui ajoute un autre appareil part à cette adresse : sans elle, un deuxième appareil ne peut jamais rejoindre le Contact.
phonestringFacultatif. Son téléphone, sur sa fiche Contact.
languagestringFacultatif. Sa langue, n’importe laquelle, en code comme pt ou pt-BR. Sans elle, celle de son appareil est gardée. Elle ne change pas la langue du chat.

Sur window.zean, les méthodes n’existent qu’une fois le chargeur exécuté : appelez-les après le chargement de la page. Les méthodes de @zean-chat/js, elles, attendent le chat.