Projets
Là où les projets naissent et où vivent leurs identifiants : chaque projet porte un environnement Live et un environnement Test, chacun avec sa propre clé d'ingestion et son secret de signature. La rotation s'accompagne d'une fenêtre de grâce pour laisser un déploiement rattraper, et un secret ne s'affiche qu'une seule fois, au moment de sa création.


The grid
Each row is one project: its name, its identifier chip, which environments it carries, a masked glimpse of its ingest key and when it was made. The Active and Archived tabs split the population, the search narrows by name, and New project opens a dialog that creates the project and reveals both credentials for Live and Test in the dialog itself: the ingest keys, which stay readable on the Messenger Install tab, and the signing secret, which is shown only there.
Renaming and archiving live on the row. Archiving asks for the project identifier to be typed back, because an archived project stops accepting traffic; the Archived tab restores.
Opening a project


Selecting a row opens the project: a card for the environment the console is in, carrying both credentials labelled. Deliberately not both cards at once: showing the Test key while working in Live is a mix-up waiting to happen, so the other environment's card appears by switching environment. The ingest key is what SDKs send events with; rotating it offers a grace window (immediately, one hour, a day or a week) during which the old key still ingests, so a fleet mid-deploy does not drop events. The signing secret is what the Messenger's identity verification signs with; its action reads Create until one exists and Rotate after. Either mint prints the new value exactly once, and a replaced secret says it replaced one, so an accidental rotation is visible before it bites.
Rapprocher un visiteur de la personne
Un interrupteur par environnement sur la carte du projet : Conserver l’activité d’avant la connexion. Activé, l’activité d’une personne avant sa connexion lui reste associée, plutôt que d’être comptée comme un visiteur distinct. Il part désactivé, et c’est le worker d’état qui le lit, pas le navigateur : quoi qu’un SDK envoie, le rapprochement n’a jamais lieu pour un projet qui ne l’a pas choisi. Le désactiver arrête le prochain rapprochement et ne défait rien de déjà rapproché. Un membre sans droit d’écriture sur le projet voit l’interrupteur dans son état et ne peut pas le bouger.
Copier la configuration
Tout ce que vous configurez dans un environnement peut être copié vers n’importe quel autre environnement de n’importe quel projet de cet espace de travail, en une seule opération visant plusieurs cibles. Copier la configuration, sur la page Projets, ouvre la boîte de dialogue vide ; Copier vers… sur une cohorte, un drapeau, une expérience, un tableau, un flux de travail ou une connexion l’ouvre avec cet objet déjà coché. Choisissez quoi copier dans l’arborescence (un type emporte tout ce qu’il contient, et le filtre restreint la vue), choisissez où, puis passez les cibles en revue une par une : chaque objet indique s’il est créé, écrasé, inchangé, s’il lui manque quelque chose d’absent de la cible (ajoutez-le ou écartez l’objet), ou s’il est refusé, et un écrasement montre chaque champ qui change avant que quoi que ce soit ne soit écrit. Les interrupteurs (l’interrupteur de diffusion d’un drapeau, la marche et l’arrêt d’un flux, l’activation du messager, l’état en cours d’une expérience, l’interrupteur actif d’une cohorte) ne voyagent que si Copier aussi les interrupteurs est activé dans la revue. Une cible qui exige une revue transforme ses drapeaux en demandes de modification. Chaque cible s’applique pour son compte : un refus ne retient jamais les autres.
Where this meets the API
What the keys are for is the Keys guide. On the wire: the listing is the projectGroups query, creation and lifecycle are createProject, renameProject and archiveProject, the credentials rotate through rotateProjectKey and rotateSigningSecret, and the Identity switch reads identityLinkEnabled and writes setIdentityLinkEnabled (GraphQL reference). The ingest key authenticates event ingestion; the signing secret backs Messenger identity verification (Messaging pillar).