Sur cette page

Remappage des identifiants de workflow entre comptes dans GoHighLevel (pipelines, tags, utilisateurs, champs)

Un workflow GoHighLevel est relié au compte où il a été construit par des identifiants internes ; déplacez-le sans réécrire ces identifiants et il arrive cassé. Voici exactement ce qui casse, et comment le remappage par nom y remédie.

Pourquoi un workflow est lié au compte où il a été construit

Des ids, pas des nomsAdd tag: Hot LeadStocke un id comme tag_7c1f..., pas le texteDans le compte sourceL'id y existeDans un autre compteLe même tag reçoit un autre idLa référence se résoutL'étape fonctionneRéférence orphelineNe fait rien en production
Les ids propres au compte sont la cause racine de presque tous les workflows copiés qui ont cessé de fonctionner.

Dans GoHighLevel, presque tout ce qu'un workflow touche est un élément doté de son propre identifiant interne : un pipeline, une étape de ce pipeline, un utilisateur à qui vous assignez une tâche, un tag, un champ personnalisé, un calendrier, un modèle. Quand vous construisez un workflow, GoHighLevel n'enregistre pas les noms de ces éléments dans la définition ; il enregistre leurs identifiants. Une action « Add tag: Hot Lead » ne stocke pas le texte « Hot Lead » – elle stocke quelque chose comme tag_7c1f…, l'identifiant de ce tag dans ce compte.

Ces identifiants sont propres au compte. Le même tag, créé à la main dans un second compte, y reçoit un identifiant totalement différent. Quand une définition de workflow est extraite d'un compte et déposée dans un autre, chaque identifiant qu'elle porte pointe donc encore vers des éléments qui n'existent que dans le compte source. La destination n'a aucun élément avec cet identifiant : la référence est orpheline. C'est la cause racine de presque tous les signalements « j'ai copié mon workflow et il ne fonctionne plus », et la raison pour laquelle une copie brute du JSON n'est pas un vrai déplacement.

Quels champs cassent exactement

Champs qui contiennent des ids de comptePipeline et étapeL'id d'étape a besoin de sonpipeline parentUtilisateur / responsableUn id différent dans chaque compteTagsActions, déclencheurs et branchessi/sinonChamps personnalisésLectures, écritures et conditionsCalendriersActions de rendez-vouset de réservationModèles d'e-mail et de SMSÉtapes d'envoi utilisant unmodèle enregistréValeurs personnaliséesChamps de fusion résolus par idLiens entre workflowsAller vers un autre workflowou en retirer le contact
Les valeurs littérales ne cassent pas ; tout champ contenant un id propre au compte casse.

La casse n'est pas aléatoire : elle touche chaque champ du workflow qui contient un id propre au compte plutôt qu'une valeur littérale. Concrètement :

  • Pipeline et étape. Les actions « Create / update opportunity » et « move to stage » référencent un id de pipeline et un id d'étape à l'intérieur. Les deux sont propres au compte, et l'id d'étape n'a aucun sens sans son pipeline parent.
  • Utilisateur / responsable. « Assign to user » et les étapes de répartition circulaire (round-robin) référencent des ids d'utilisateur. La même personne a un id différent dans chaque compte et peut ne pas être membre de la destination.
  • Tags. Les actions d'ajout et de retrait de tag, ainsi que tout déclencheur ou branche si/sinon basé sur un tag, fonctionnent sur des ids de tag.
  • Champs personnalisés. Tout ce qui lit ou écrit un champ personnalisé – y compris les conditions qui bifurquent selon la valeur d'un champ – pointe vers l'id du champ.
  • Calendriers. Les actions de rendez-vous et de réservation référencent un id de calendrier.
  • Modèles d'e-mail et de SMS. Les étapes « Send email » ou « Send SMS » qui utilisent un modèle enregistré référencent l'id de ce modèle.
  • Valeurs personnalisées. Les champs de fusion et les valeurs personnalisées au niveau du compte sont résolus par id et ne sont pas portables seuls.
  • Références de workflow à workflow. Les étapes « Go to another workflow » ou « remove from workflow » pointent vers l'id d'un workflow frère – qui doit lui-même avoir été déplacé et remappé, sans quoi il n'y a rien vers quoi pointer.

Chacun de ces points est une faille silencieuse. GoHighLevel vous laisse souvent enregistrer un workflow avec une référence orpheline ; il ne fait simplement rien, ou la mauvaise chose, quand un contact atteint cette étape en production. C'est le pire type de panne – invisible tant qu'un vrai contact ne la traverse pas.

Le symptôme typique : un workflow « importé sans problème » mais dont les actions de tag, de pipeline et d'assignation sont vides ou grisées quand vous ouvrez chaque étape. La structure est passée ; les références propres au compte ne se sont pas résolues.

Comment ExportGHL associe par nom et réécrit les identifiants

Associé par nom, réécrit avec des ids locauxRéférence sourceÉlément de destination« Sales Pipeline »id source« Sales Pipeline »id destinationÉtape « Booked »dans son pipelineÉtape « Booked »dans le pipeline remappéTag « Hot Lead »id sourceTag « Hot Lead »id destinationChamp « Lead Source »id sourceChamp « Lead Source »id destination
Les comptes partagent des noms : ce sont donc les noms qui servent de clé pour réécrire les ids.

ExportGHL Workflows traite le déplacement comme une réconciliation, pas comme une copie. Quand vous déployez un workflow enregistré dans un compte de destination, il lit chaque référence propre au compte dans la définition, retrouve ce qu'elle était dans la source (son nom) et cherche l'élément portant le même nom à destination. L'identifiant source orphelin est alors réécrit avec l'identifiant propre à la destination pour ce pipeline, cette étape, ce tag, cet utilisateur, ce champ, ce calendrier ou ce modèle.

L'association par nom est la bonne clé, car les noms sont ce que les deux comptes partagent réellement. Il est rare d'avoir les mêmes identifiants internes d'un compte à l'autre, mais très fréquent d'avoir un tag « Hot Lead », un « Sales Pipeline » avec une étape « Booked » et un champ personnalisé « Lead Source » dans les deux. ExportGHL parcourt le graphe complet des références – y compris les étapes imbriquées dans leur pipeline et les liens de workflow à workflow – pour qu'une étape remappée atterrisse dans le bon pipeline remappé, et pas dans n'importe quelle étape au nom proche.

Comme il est déployé à destination comme un nouveau workflow, rien de ce que vous avez déjà n'est écrasé. (Vous pouvez choisir d'en mettre un existant à jour, mais c'est un choix explicite, pas le comportement par défaut.) Le résultat est un workflow qui référence les vrais éléments de la destination et fonctionne comme dans la source. Cette page fait partie du guide complet pour exporter les workflows GoHighLevel, le hub pour enregistrer, déplacer et sauvegarder des automatisations entre comptes.

Ce qu'ExportGHL remappe, préserve et met en brouillon

Remappé ou préservéRemap par nomPréservé tel que construitCe que cela couvrePipelines, étapes, tags,utilisateurs, champs,calendriers, modèlesDéclencheurs, filtres, actions,attentes, si/sinon, objectifsSans correspondanceWorkflow entier retenu enbrouillonJamais en brouillon seul
Un bloc n'est mis en brouillon qu'à cause d'une référence propre au compte vers laquelle il pointe.

Il est utile de distinguer les deux types d'éléments d'un workflow : les références propres au compte qui doivent être remappées, et les blocs de construction structurels qui passent d'eux-mêmes.

Références remappées par nom. Chacune est associée à l'élément propre à la destination et son identifiant est réécrit. S'il existe une correspondance, elle est préservée ; sinon le workflow reste en brouillon jusqu'à ce que vous la fournissiez ou la mappiez :

  • Pipelines
  • Étapes (à l'intérieur de leur pipeline parent)
  • Tags
  • Utilisateurs et responsables
  • Champs personnalisés
  • Calendriers
  • Modèles d'e-mail et de SMS

Blocs de construction du workflow. La structure de l'automatisation est préservée à l'identique, car elle n'est pas propre au compte. Un bloc n'est mis en brouillon qu'à cause d'une référence propre au compte vers laquelle il pointe – jamais à cause du bloc lui-même :

  • Déclencheurs
  • Filtres de déclencheurs et d'actions
  • Actions, dans l'ordre
  • Étapes d'attente et minuteurs
  • Branches si/sinon
  • Objectifs (goals)

En bref : la structure et les valeurs littérales (durées d'attente, texte brut des messages, logique des branches) sont préservées intactes, chaque référence propre au compte est remappée par nom quand elle correspond, et tout ce qui n'a pas de correspondance maintient le workflow entier en brouillon plutôt que de le publier cassé.

Que se passe-t-il quand une référence ne peut pas être mappée

Parfois un nom n'existe vraiment pas à destination – le tag « Hot Lead » n'y a jamais été créé, ou un utilisateur n'en est pas membre. ExportGHL ne devine pas et ne publie rien qui échouerait en silence. Il signale chaque référence non mappée pour que vous voyiez précisément ce qui manque, et garde le workflow déployé en brouillon. Vous créez ensuite l'élément manquant (ou mappez l'action vers un élément existant) et publiez quand tout est résolu.

Ce comportement de brouillon par défaut est voulu. Le scénario à éviter est un workflow qui paraît actif mais se déclenche mal en silence ; le plus sûr est donc de refuser de publier tant que chaque référence ne pointe pas vers un élément réel.

Pourquoi les outils uniquement JSON laissent ces références cassées

Des outils comme GHL Workflows Pro, GHL Workflow Importer/Exporter et GHL Workflows JSON Exporter peuvent exporter le JSON d'un workflow et l'importer dans un autre compte. (Super Cloner est parfois rangé avec eux, mais il clone des pages de tunnels et de sites, pas des workflows.) Cela déplace la structure, mais les identifiants qu'elle contient sont copiés tels quels – sans être réconciliés avec la destination. Les références de pipeline, tag, utilisateur, champ et modèle pointent donc toujours vers les identifiants du compte source, et vous voilà de nouveau à réparer chaque étape à la main. Exporter le JSON, c'est les 80 % faciles ; remapper les références propres au compte, ce sont les 20 % difficiles qui font réellement fonctionner le workflow – et c'est la partie qu'ils sautent. Si vous comparez les options, le comparatif des outils de clonage présente leur comportement côte à côte, et le pas-à-pas d'un déplacement unique se trouve dans copier entre comptes.

Les outils propres à GoHighLevel ne comblent pas non plus cette lacune. La duplication native ne fonctionne qu'au sein d'un compte, et les snapshots copient un modèle de compte entier – ils résolvent les références uniquement parce que le snapshot apporte ses propres copies de chaque pipeline, tag et champ, ce qui n'aide en rien quand vous déplacez un workflow vers un compte déjà actif. Le remappage inter-comptes existe précisément pour le cas que GoHighLevel laisse sans réponse.

Essayez d'abord sur un vrai workflow

L'essai gratuit déplace un workflow de bout en bout pour que vous voyiez le remappage et le signalement en brouillon sur votre propre compte avant de dépenser quoi que ce soit. Ensuite, ce sont des crédits à l'usage qui n'expirent jamais, ou une licence Toolkit unique sans abonnement – la page tarifs donne les détails.

Foire aux questions

Pourquoi les workflows GoHighLevel cassent-ils quand on les copie vers un nouveau compte ?
Un workflow GoHighLevel ne stocke pas les noms des pipelines, tags, utilisateurs et champs personnalisés qu'il utilise. Il stocke leurs identifiants internes, et ces identifiants sont propres au compte où ils ont été créés. Quand vous copiez la définition du workflow dans un autre compte, les identifiants pointent toujours vers des éléments qui n'existent que dans la source ; la destination n'a donc rien avec quoi les associer. Les actions qui référencent ces identifiants échouent en silence ou pointent vers le mauvais élément jusqu'à ce que chacune soit réparée à la main.
Quels identifiants sont remappés entre comptes ?
ExportGHL Workflows remappe les références propres au compte dont dépend un workflow : pipelines et leurs étapes, utilisateurs assignés, tags, champs personnalisés, calendriers, modèles d'e-mail et de SMS, valeurs personnalisées, et références d'un workflow à un autre. Chacune est associée par nom dans le compte de destination et son identifiant est réécrit avec celui de la destination. Tout ce qui est une valeur littérale plutôt qu'un identifiant, comme les durées d'attente ou le texte brut des messages, est copié tel quel car il n'est pas propre au compte.
Que se passe-t-il si un tag ou un pipeline n'existe pas à destination ?
La référence ne peut pas être remappée, car il n'y a rien à destination vers quoi la pointer. ExportGHL signale chaque référence non mappée pour que vous voyiez exactement ce qui manque, et laisse le workflow en brouillon plutôt que de le publier cassé. Vous créez ensuite le pipeline ou le tag manquant, ou mappez l'action vers un élément existant, et publiez quand le workflow est complet. Rien ne passe en ligne en pointant vers un identifiant qui ne se résout pas.
Les snapshots GHL remappent-ils ces éléments ?
Non. Un snapshot GoHighLevel copie un modèle de compte entier dans un compte neuf ou chargé par snapshot, et les références ne se résolvent que parce que le snapshot embarque aussi ses propres copies de ces pipelines, tags et champs. Il ne réconcilie pas un workflow avec les pipelines, tags et utilisateurs déjà présents dans un compte de destination actif ; il convient donc mal pour déplacer un ou quelques workflows vers un compte déjà utilisé. Le remappage inter-comptes est conçu exactement pour ce cas.

Déplacez un workflow et voyez le remappage à l'œuvre

Déployez gratuitement un workflow dans un autre compte – voyez chaque pipeline, tag et champ réécrit vers la destination, et tout ce qui n'a pas de correspondance signalé avant la mise en ligne.

Essai gratuit