{"format":1,"templates":[{"format":1,"key":"demo","label":"Démo : Atelier Lumen","summary":"Une petite agence, ses clients, projets, tâches, factures et avis : toutes les facettes de basedb dans une seule base.","description":"La base de démonstration. Atelier Lumen est une agence de design fictive. Sa base montre les relations entre tables, les recherches et cumuls (chiffre d'affaires par client, note moyenne), les formules (montant TTC, retard), trois champs calculés par l'IA sur les avis clients (sentiment, thème, réponse suggérée), chaque sorte de vue — grille, kanban, calendrier, chronologie avec dépendances, galerie, liste, formulaire —, un tableau de bord et deux automatisations.","category":"Démonstration","icon":"sparkles","color":"#8b5cf6","tags":["IA","Relations","Toutes les vues","Tableau de bord"],"base":{"label":"Démo — Atelier Lumen","description":"Base de démonstration : une agence de design, ses clients, projets, tâches, factures et avis. Elle sert à explorer les relations, les calculs, l'IA, les vues, les tableaux de bord et les automatisations."},"tables":[{"key":"clients","label":"Clients","description":"Les organisations pour qui l'agence travaille, prospects compris. Une ligne par client.","icon":"building-2","color":"#3b82f6","fields":[{"label":"Nom","kind":"short_text","description":"Nom usuel du client, tel qu'il apparaît sur les devis.","required":true},{"label":"Secteur","kind":"select","options":[{"label":"Commerce","value":"commerce","color":"#94a3b8","icon":null},{"label":"Santé","value":"sante","color":"#3b82f6","icon":null},{"label":"Éducation","value":"education","color":"#f59e0b","icon":null},{"label":"Industrie","value":"industrie","color":"#10b981","icon":null},{"label":"Association","value":"association","color":"#ef4444","icon":null}]},{"label":"Statut","kind":"select","options":[{"label":"Prospect","value":"prospect","color":"#f59e0b","icon":null},{"label":"Actif","value":"actif","color":"#10b981","icon":null},{"label":"Ancien","value":"ancien","color":"#94a3b8","icon":null}]},{"label":"Ville","kind":"short_text"},{"label":"E-mail","kind":"email","description":"Adresse du contact principal."},{"label":"Site web","kind":"url"},{"label":"Projets","kind":"count","description":"Nombre de projets menés pour ce client.","rollup":{"via":"Client","table":"projets"}},{"label":"Chiffre d'affaires","kind":"rollup","description":"Somme des montants HT facturés au client.","rollup":{"via":"Client","table":"factures","target":"Montant HT","aggregate":"sum"}},{"label":"Note moyenne","kind":"rollup","description":"Moyenne des notes laissées par le client, sur 5.","rollup":{"via":"Client","table":"avis","target":"Note","aggregate":"avg"}},{"label":"Écrire","kind":"button","button":{"label":"Écrire","url":"mailto:{{E-mail}}"}}]},{"key":"projets","label":"Projets","description":"Les missions de l'agence, de l'idée à la livraison. Un projet a un client et des tâches.","icon":"rocket","color":"#8b5cf6","fields":[{"label":"Nom","kind":"short_text","required":true},{"label":"Statut","kind":"select","options":[{"label":"Idée","value":"idee","color":"#94a3b8","icon":null},{"label":"En cours","value":"en_cours","color":"#3b82f6","icon":null},{"label":"En pause","value":"en_pause","color":"#f59e0b","icon":null},{"label":"Livré","value":"livre","color":"#10b981","icon":null}]},{"label":"Début","kind":"date"},{"label":"Fin","kind":"date"},{"label":"Budget","kind":"number","format":{"display":"currency","currency":"EUR"}},{"label":"Durée (jours)","kind":"formula","description":"Nombre de jours entre le début et la fin prévue.","formula":"JOURS([Fin]; [Début])"},{"label":"Ville du client","kind":"lookup","rollup":{"via":"Client","target":"Ville"}},{"label":"Tâches","kind":"count","rollup":{"via":"Projet","table":"taches"}}]},{"key":"taches","label":"Tâches","description":"Le travail à faire, projet par projet. Une tâche peut dépendre d'autres tâches.","icon":"list-todo","color":"#10b981","fields":[{"label":"Titre","kind":"short_text","required":true},{"label":"Statut","kind":"select","options":[{"label":"À faire","value":"a_faire","color":"#94a3b8","icon":null},{"label":"En cours","value":"en_cours","color":"#3b82f6","icon":null},{"label":"En revue","value":"en_revue","color":"#f59e0b","icon":null},{"label":"Fait","value":"fait","color":"#10b981","icon":null}]},{"label":"Priorité","kind":"select","options":[{"label":"Haute","value":"haute","color":"#ef4444","icon":"flame"},{"label":"Moyenne","value":"moyenne","color":"#f59e0b","icon":null},{"label":"Basse","value":"basse","color":"#94a3b8","icon":null}]},{"label":"Début","kind":"date"},{"label":"Échéance","kind":"date"},{"label":"Assigné à","kind":"user"},{"label":"Estimation (h)","kind":"number"},{"label":"Notes","kind":"long_text"},{"label":"Terminée le","kind":"datetime","description":"Rempli par l'automatisation « Tâche terminée »."}]},{"key":"factures","label":"Factures","description":"Les factures émises. Une facture vise un client, et souvent un projet.","icon":"receipt","color":"#f59e0b","fields":[{"label":"Numéro","kind":"short_text","description":"Référence imprimée sur la facture, par exemple F-2026-012.","required":true},{"label":"Émise le","kind":"date"},{"label":"Montant HT","kind":"number","format":{"display":"currency","currency":"EUR"}},{"label":"Taux de TVA","kind":"number","description":"0,2 pour 20 %."},{"label":"Montant TTC","kind":"formula","formula":"ARRONDI([Montant HT] * (1 + [Taux de TVA]); 2)"},{"label":"Échéance","kind":"date"},{"label":"Payée","kind":"boolean"},{"label":"En retard","kind":"formula","description":"Vrai quand l'échéance est passée et la facture non payée.","formula":"SI([Payée]; FAUX; JOURS(AUJOURDHUI(); [Échéance]) > 0)"}]},{"key":"avis","label":"Avis clients","description":"Ce que les clients disent du travail livré. L'IA lit chaque avis : sentiment, thème et proposition de réponse.","icon":"message-square","color":"#ec4899","fields":[{"label":"Auteur","kind":"short_text","required":true},{"label":"Avis","kind":"long_text","description":"Le texte laissé par le client."},{"label":"Note","kind":"number","format":{"display":"rating","rating_max":5}},{"label":"Reçu le","kind":"date"},{"label":"Sentiment","kind":"select","description":"Calculé par l'IA à partir du texte et de la note.","options":[{"label":"Positif","value":"positif","color":"#10b981","icon":"smile"},{"label":"Neutre","value":"neutre","color":"#94a3b8","icon":"meh"},{"label":"Négatif","value":"negatif","color":"#ef4444","icon":"frown"}],"ai":{"prompt":"Voici l'avis d'un client sur une agence de design, noté {{Note}}/5 :\n« {{Avis}} »\nQuel est le sentiment général de cet avis ?","refresh":"if_empty"}},{"label":"Thème","kind":"select","description":"Le sujet principal de l'avis, selon l'IA.","options":[{"label":"Qualité","value":"qualite","color":"#94a3b8","icon":null},{"label":"Délais","value":"delais","color":"#3b82f6","icon":null},{"label":"Prix","value":"prix","color":"#f59e0b","icon":null},{"label":"Communication","value":"communication","color":"#10b981","icon":null},{"label":"Autre","value":"autre","color":"#ef4444","icon":null}],"ai":{"prompt":"De quoi parle principalement cet avis client ? « {{Avis}} »","refresh":"if_empty"}},{"label":"Réponse suggérée","kind":"long_text","description":"Un brouillon de réponse, à relire avant envoi.","ai":{"prompt":"Rédige en trois phrases au plus une réponse chaleureuse et professionnelle à cet avis client, noté {{Note}}/5. Remercie, réponds précisément aux remarques, et signe « L'équipe Atelier Lumen ».\nAvis de {{Auteur}} : « {{Avis}} »","refresh":"if_empty"}}]}],"links":[{"from":"projets","label":"Client","to":"clients","multiple":false,"description":"Le client pour qui le projet est mené."},{"from":"taches","label":"Projet","to":"projets","multiple":false},{"from":"taches","label":"Dépend de","to":"taches","multiple":true,"description":"Les tâches à terminer avant de commencer celle-ci."},{"from":"factures","label":"Client","to":"clients","multiple":false},{"from":"factures","label":"Projet","to":"projets","multiple":false},{"from":"avis","label":"Client","to":"clients","multiple":false}],"rows":{"clients":[{"$key":"boulangerie","Nom":"Boulangerie Martin","Secteur":"Commerce","Statut":"Actif","Ville":"Lyon","E-mail":"contact@boulangerie-martin.example","Site web":"https://boulangerie-martin.example"},{"$key":"clinique","Nom":"Clinique des Tilleuls","Secteur":"Santé","Statut":"Actif","Ville":"Nantes","E-mail":"communication@tilleuls.example"},{"$key":"lycee","Nom":"Lycée Jean Moulin","Secteur":"Éducation","Statut":"Actif","Ville":"Bordeaux","E-mail":"direction@jeanmoulin.example"},{"$key":"forges","Nom":"Forges du Rhône","Secteur":"Industrie","Statut":"Ancien","Ville":"Vienne","E-mail":"marketing@forges-rhone.example","Site web":"https://forges-rhone.example"},{"$key":"velo","Nom":"Vélo Solidaire","Secteur":"Association","Statut":"Actif","Ville":"Grenoble","E-mail":"bonjour@velo-solidaire.example"},{"$key":"epicerie","Nom":"L'Épicerie fine","Secteur":"Commerce","Statut":"Prospect","Ville":"Lyon","E-mail":"gerance@epicerie-fine.example"}],"projets":[{"$key":"site-boulangerie","Nom":"Site vitrine et commande en ligne","Statut":"En cours","Début":"-20d","Fin":"+25d","Budget":12500,"Client":"@boulangerie"},{"$key":"charte-clinique","Nom":"Nouvelle charte graphique","Statut":"En cours","Début":"-10d","Fin":"+40d","Budget":18000,"Client":"@clinique"},{"$key":"portes-ouvertes","Nom":"Campagne portes ouvertes","Statut":"Livré","Début":"-90d","Fin":"-30d","Budget":6400,"Client":"@lycee"},{"$key":"catalogue-forges","Nom":"Catalogue produits 2026","Statut":"Livré","Début":"-200d","Fin":"-120d","Budget":22000,"Client":"@forges"},{"$key":"appli-velo","Nom":"Application de réservation","Statut":"En pause","Début":"-40d","Fin":"+60d","Budget":9800,"Client":"@velo"},{"$key":"identite-epicerie","Nom":"Identité visuelle","Statut":"Idée","Budget":7500,"Client":"@epicerie"}],"taches":[{"$key":"t1","Titre":"Atelier de cadrage avec la boulangerie","Statut":"Fait","Priorité":"Haute","Début":"-20d","Échéance":"-18d","Estimation (h)":4,"Projet":"@site-boulangerie","Assigné à":"$moi"},{"$key":"t2","Titre":"Maquettes de la page d'accueil","Statut":"En revue","Priorité":"Haute","Début":"-15d","Échéance":"-2d","Estimation (h)":16,"Projet":"@site-boulangerie","Dépend de":["@t1"],"Assigné à":"$moi"},{"$key":"t3","Titre":"Intégration du tunnel de commande","Statut":"En cours","Priorité":"Haute","Début":"-3d","Échéance":"+8d","Estimation (h)":30,"Projet":"@site-boulangerie","Dépend de":["@t2"]},{"$key":"t4","Titre":"Recette et mise en ligne","Statut":"À faire","Priorité":"Moyenne","Début":"+9d","Échéance":"+20d","Estimation (h)":10,"Projet":"@site-boulangerie","Dépend de":["@t3"]},{"$key":"t5","Titre":"Audit de l'identité actuelle","Statut":"Fait","Priorité":"Moyenne","Début":"-10d","Échéance":"-6d","Estimation (h)":8,"Projet":"@charte-clinique"},{"$key":"t6","Titre":"Trois pistes de logo","Statut":"En cours","Priorité":"Haute","Début":"-5d","Échéance":"+5d","Estimation (h)":24,"Projet":"@charte-clinique","Dépend de":["@t5"],"Assigné à":"$moi"},{"$key":"t7","Titre":"Présentation au comité de direction","Statut":"À faire","Priorité":"Haute","Début":"+6d","Échéance":"+12d","Estimation (h)":6,"Projet":"@charte-clinique","Dépend de":["@t6"]},{"$key":"t8","Titre":"Déclinaison de la signalétique","Statut":"À faire","Priorité":"Basse","Début":"+13d","Échéance":"+35d","Estimation (h)":40,"Projet":"@charte-clinique","Dépend de":["@t7"]},{"$key":"t9","Titre":"Affiches et réseaux sociaux","Statut":"Fait","Priorité":"Moyenne","Début":"-80d","Échéance":"-60d","Estimation (h)":20,"Projet":"@portes-ouvertes"},{"$key":"t10","Titre":"Bilan de la campagne","Statut":"Fait","Priorité":"Basse","Début":"-35d","Échéance":"-30d","Estimation (h)":3,"Projet":"@portes-ouvertes","Dépend de":["@t9"]},{"$key":"t11","Titre":"Parcours de réservation","Statut":"En cours","Priorité":"Moyenne","Début":"-30d","Échéance":"+15d","Estimation (h)":18,"Projet":"@appli-velo","Notes":"En attente du retour de l'association sur les tarifs."},{"$key":"t12","Titre":"Relancer l'association pour les tarifs","Statut":"À faire","Priorité":"Haute","Début":"today","Échéance":"+2d","Estimation (h)":1,"Projet":"@appli-velo","Assigné à":"$moi"},{"$key":"t13","Titre":"Proposition commerciale pour l'épicerie","Statut":"À faire","Priorité":"Moyenne","Début":"+1d","Échéance":"+7d","Estimation (h)":5,"Projet":"@identite-epicerie"}],"factures":[{"Numéro":"F-2026-001","Émise le":"-190d","Montant HT":11000,"Taux de TVA":0.2,"Échéance":"-160d","Payée":true,"Client":"@forges","Projet":"@catalogue-forges"},{"Numéro":"F-2026-002","Émise le":"-120d","Montant HT":11000,"Taux de TVA":0.2,"Échéance":"-90d","Payée":true,"Client":"@forges","Projet":"@catalogue-forges"},{"Numéro":"F-2026-003","Émise le":"-85d","Montant HT":3200,"Taux de TVA":0.2,"Échéance":"-55d","Payée":true,"Client":"@lycee","Projet":"@portes-ouvertes"},{"Numéro":"F-2026-004","Émise le":"-30d","Montant HT":3200,"Taux de TVA":0.2,"Échéance":"today","Payée":false,"Client":"@lycee","Projet":"@portes-ouvertes"},{"Numéro":"F-2026-005","Émise le":"-20d","Montant HT":5000,"Taux de TVA":0.2,"Échéance":"-5d","Payée":false,"Client":"@boulangerie","Projet":"@site-boulangerie"},{"Numéro":"F-2026-006","Émise le":"-10d","Montant HT":7200,"Taux de TVA":0.2,"Échéance":"+20d","Payée":false,"Client":"@clinique","Projet":"@charte-clinique"},{"Numéro":"F-2026-007","Émise le":"-38d","Montant HT":2900,"Taux de TVA":0.055,"Échéance":"-8d","Payée":true,"Client":"@velo","Projet":"@appli-velo"}],"avis":[{"Auteur":"Claire, Lycée Jean Moulin","Avis":"Campagne livrée en temps et en heure, des visuels qui ont vraiment plu aux familles. Nous avons eu 30 % de visiteurs en plus aux portes ouvertes !","Note":5,"Reçu le":"-28d","Client":"@lycee","Sentiment":"Positif","Thème":"Qualité","Réponse suggérée":"Merci Claire pour ce retour enthousiaste ! Nous sommes ravis que la campagne ait attiré autant de familles. À très bientôt pour la prochaine édition — l'équipe Atelier Lumen"},{"Auteur":"Service marketing, Forges du Rhône","Avis":"Beau catalogue, mais deux semaines de retard sur l'impression et des relances nécessaires pour obtenir les fichiers définitifs.","Note":3,"Reçu le":"-115d","Client":"@forges","Sentiment":"Neutre","Thème":"Délais","Réponse suggérée":"Merci pour votre franchise. Le retard d'impression n'aurait pas dû arriver et nous avons revu notre planning de livraison des fichiers. Nous serions heureux de vous le prouver sur un prochain projet — l'équipe Atelier Lumen"},{"Auteur":"Julien, Vélo Solidaire","Avis":"Équipe à l'écoute et prix très raisonnable pour une association. Hâte de voir l'application terminée.","Note":5,"Reçu le":"-12d","Client":"@velo","Sentiment":"Positif","Thème":"Prix","Réponse suggérée":"Merci Julien ! Travailler avec Vélo Solidaire est un vrai plaisir ; nous avançons sur l'application dès réception des tarifs. — l'équipe Atelier Lumen"},{"Auteur":"Direction, Clinique des Tilleuls","Avis":"Les premières pistes sont intéressantes, mais nous aurions aimé être davantage consultés avant l'atelier.","Note":3,"Reçu le":"-4d","Client":"@clinique","Sentiment":"Neutre","Thème":"Communication","Réponse suggérée":"Merci pour ce retour. Nous planifions un point d'étape hebdomadaire pour vous associer à chaque décision d'ici la présentation au comité. — l'équipe Atelier Lumen"},{"Auteur":"Sophie, Boulangerie Martin","Avis":"Les maquettes sont superbes mais le devis a augmenté en cours de route sans qu'on nous prévienne vraiment. Un peu déçue.","Note":2,"Reçu le":"-1d","Client":"@boulangerie","Sentiment":"Négatif","Thème":"Prix","Réponse suggérée":"Sophie, merci de nous l'avoir dit. Vous avez raison : l'évolution du devis aurait dû être expliquée avant d'être engagée. Nous vous appelons cette semaine pour la revoir ensemble. — l'équipe Atelier Lumen"}]},"views":[{"table":"clients","label":"Cartes","kind":"gallery","spec":{"card_fields":["Secteur","Ville","Statut","Chiffre d'affaires"],"color_field":"Statut","card_size":"medium"}},{"table":"clients","label":"Par secteur","kind":"list","spec":{"group_by":"Secteur","card_fields":["Ville","Statut","Projets"]}},{"table":"projets","label":"Par statut","kind":"kanban","spec":{"group_by":"Statut","card_fields":["Client","Budget","Fin"],"group_order":["Idée","En cours","En pause","Livré"]}},{"table":"projets","label":"Planning","kind":"timeline","spec":{"start_field":"Début","end_field":"Fin","color_field":"Statut","scale":"month"}},{"table":"taches","label":"Tableau","kind":"kanban","spec":{"group_by":"Statut","card_fields":["Priorité","Échéance","Projet","Assigné à"],"group_order":["À faire","En cours","En revue","Fait"]}},{"table":"taches","label":"Échéances","kind":"calendar","spec":{"date_field":"Échéance","color_field":"Priorité","card_fields":["Projet"]}},{"table":"taches","label":"Dépendances","kind":"timeline","spec":{"start_field":"Début","end_field":"Échéance","depends_on":"Dépend de","group_by":"Projet","color_field":"Statut","scale":"week"}},{"table":"taches","label":"À faire","kind":"grid","spec":{"filter":"[Statut] ne \"Fait\"","sorts":[{"field":"Échéance","direction":"asc"}],"group_by":"Priorité"}},{"table":"factures","label":"Impayées","kind":"grid","spec":{"filter":"[Payée] eq false","sorts":[{"field":"Échéance","direction":"asc"}],"summaries":{"Montant HT":"sum"}}},{"table":"avis","label":"Par sentiment","kind":"kanban","spec":{"group_by":"Sentiment","card_fields":["Note","Thème","Client"],"group_order":["Négatif","Neutre","Positif"]}},{"table":"avis","label":"Donnez votre avis","kind":"form","spec":{"title":"Votre avis sur Atelier Lumen","description":"Deux minutes pour nous dire ce que vous avez pensé de notre travail. Merci !","fields":[{"field":"Auteur","required":true,"label":"Votre nom et votre organisation"},{"field":"Note","required":true},{"field":"Avis","required":true,"label":"Votre avis","help":"Ce qui vous a plu, ce que nous pourrions mieux faire."}],"submit_label":"Envoyer mon avis","success_message":"Merci, votre avis nous aide à progresser."}}],"dashboards":[{"label":"Pilotage de l'agence","description":"L'essentiel en un coup d'œil.","blocks":[{"kind":"number","title":"Projets en cours","width":1,"table":"projets","aggregate":"count","field":null,"filter":"[Statut] eq \"En cours\""},{"kind":"number","title":"Encaissé (HT)","width":1,"table":"factures","aggregate":"sum","field":"Montant HT","filter":"[Payée] eq true"},{"kind":"number","title":"Note moyenne des avis","width":1,"table":"avis","aggregate":"avg","field":"Note","filter":""},{"kind":"chart","title":"Tâches par statut","width":2,"table":"taches","group_by":"Statut","filter":"","style":"bar"},{"kind":"chart","title":"Sentiment des avis","width":1,"table":"avis","group_by":"Sentiment","filter":"","style":"pie"},{"kind":"list","title":"Prochaines échéances","width":2,"table":"taches","fields":["Titre","Échéance","Priorité"],"filter":"[Statut] ne \"Fait\"","sort":"Échéance","limit":6},{"kind":"text","title":"Bienvenue","width":1,"body":"Cette base est une démonstration. Ouvrez « Avis clients » pour voir l'IA lire les avis, « Tâches » pour les vues kanban, calendrier et dépendances, et « Automatisations » pour ce qui se passe quand une tâche est terminée."}]}],"automations":[{"label":"Tâche terminée","description":"Note l'heure à laquelle une tâche passe à « Fait ».","enabled":true,"trigger":{"kind":"record_updated","table":"taches","fields":["Statut"],"schedule":null},"condition":"[Statut] eq \"Fait\"","actions":[{"kind":"update_record","values":{"Terminée le":"{{_maintenant}}"}}]},{"label":"Avis négatif","description":"Prévient dès que l'IA juge un avis négatif.","enabled":true,"trigger":{"kind":"record_updated","table":"avis","fields":["Sentiment"],"schedule":null},"condition":"[Sentiment] eq \"Négatif\"","actions":[{"kind":"notify","users":["$moi"],"user_field":null,"message":"Avis négatif de {{Auteur}} : « {{Avis}} »"}]}]},{"format":1,"key":"evenements","label":"Événements et inscriptions","summary":"Conférences, ateliers et webinaires : les inscriptions, les places restantes, et les retours des participants lus par l'IA.","description":"Pour organiser des événements récurrents. Chaque événement compte ses inscrits et ses places restantes ; les inscriptions avancent jusqu'à la présence. Après l'événement, les participants laissent un retour que l'IA classe par sentiment et résume. Un formulaire public permet de rejoindre la liste de diffusion.","category":"Événementiel","icon":"calendar","color":"#ec4899","tags":["IA","Calendrier","Formulaire","Cumuls"],"base":{"label":"Événements","description":"Les événements organisés, leurs participants et leurs inscriptions."},"tables":[{"key":"evenements","label":"Événements","icon":"calendar","color":"#ec4899","fields":[{"label":"Nom","kind":"short_text","required":true},{"label":"Type","kind":"select","options":[{"label":"Conférence","value":"conference","color":"#8b5cf6","icon":null},{"label":"Atelier","value":"atelier","color":"#10b981","icon":null},{"label":"Webinaire","value":"webinaire","color":"#0ea5e9","icon":null},{"label":"Afterwork","value":"afterwork","color":"#f59e0b","icon":null}]},{"label":"Début","kind":"datetime"},{"label":"Fin","kind":"datetime"},{"label":"Lieu","kind":"short_text"},{"label":"Capacité","kind":"number"},{"label":"Statut","kind":"select","options":[{"label":"Brouillon","value":"brouillon","color":"#94a3b8","icon":null},{"label":"Ouvert","value":"ouvert","color":"#10b981","icon":null},{"label":"Complet","value":"complet","color":"#f59e0b","icon":null},{"label":"Terminé","value":"termine","color":"#64748b","icon":null}]},{"label":"Description","kind":"long_text"},{"label":"Inscrits","kind":"count","rollup":{"via":"Événement","table":"inscriptions"}},{"label":"Places restantes","kind":"formula","formula":"[Capacité] - SIVIDE([Inscrits]; 0)"}]},{"key":"inscriptions","label":"Inscriptions","icon":"clipboard-check","color":"#8b5cf6","fields":[{"label":"Participant","kind":"short_text","description":"Le nom de la personne inscrite.","required":true},{"label":"Statut","kind":"select","options":[{"label":"Inscrit","value":"inscrit","color":"#94a3b8","icon":null},{"label":"Confirmé","value":"confirme","color":"#3b82f6","icon":null},{"label":"Présent","value":"present","color":"#10b981","icon":null},{"label":"Absent","value":"absent","color":"#ef4444","icon":null},{"label":"Annulé","value":"annule","color":"#64748b","icon":null}]},{"label":"Inscrit le","kind":"datetime"},{"label":"Retour","kind":"long_text","description":"Ce que le participant a pensé de l'événement."},{"label":"Sentiment","kind":"select","options":[{"label":"Enthousiaste","value":"enthousiaste","color":"#10b981","icon":"laugh"},{"label":"Satisfait","value":"satisfait","color":"#84cc16","icon":"smile"},{"label":"Mitigé","value":"mitige","color":"#f59e0b","icon":"meh"},{"label":"Déçu","value":"decu","color":"#ef4444","icon":"frown"}],"ai":{"prompt":"Voici le retour d'un participant après un événement :\n« {{Retour}} »\nQuel est son sentiment ?","refresh":"if_empty"}},{"label":"À retenir","kind":"short_text","ai":{"prompt":"Qu'est-ce que l'organisateur doit retenir de ce retour, en 15 mots au plus ? « {{Retour}} »","refresh":"if_empty"}}]},{"key":"participants","label":"Participants","icon":"users","color":"#14b8a6","fields":[{"label":"Nom","kind":"short_text","required":true},{"label":"E-mail","kind":"email"},{"label":"Entreprise","kind":"short_text"},{"label":"Fonction","kind":"short_text"},{"label":"Centres d'intérêt","kind":"multi_select","options":[{"label":"Produit","value":"produit","color":"#94a3b8","icon":null},{"label":"Technique","value":"technique","color":"#3b82f6","icon":null},{"label":"Marketing","value":"marketing","color":"#f59e0b","icon":null},{"label":"Ressources humaines","value":"ressources_humaines","color":"#10b981","icon":null},{"label":"Finance","value":"finance","color":"#ef4444","icon":null}]},{"label":"Inscriptions","kind":"count","rollup":{"via":"Personne","table":"inscriptions"}}]}],"links":[{"from":"inscriptions","label":"Événement","to":"evenements","multiple":false},{"from":"inscriptions","label":"Personne","to":"participants","multiple":false}],"rows":{"evenements":[{"$key":"conf","Nom":"Conférence : l'IA au service des PME","Type":"Conférence","Début":"+14d 09:30","Fin":"+14d 12:30","Lieu":"Lyon, salle Confluence","Capacité":120,"Statut":"Ouvert","Description":"Trois interventions et une table ronde sur des usages concrets de l'IA dans les petites entreprises."},{"$key":"atelier","Nom":"Atelier : automatiser ses tableaux de bord","Type":"Atelier","Début":"+6d 14:00","Fin":"+6d 17:00","Lieu":"Paris, espace Oberkampf","Capacité":15,"Statut":"Complet","Description":"Atelier pratique de trois heures, ordinateur portable nécessaire."},{"$key":"webinaire","Nom":"Webinaire : les nouveautés de la rentrée","Type":"Webinaire","Début":"-7d 11:00","Fin":"-7d 12:00","Lieu":"En ligne","Capacité":500,"Statut":"Terminé","Description":"Présentation des nouveautés et questions-réponses."},{"$key":"afterwork","Nom":"Afterwork clients","Type":"Afterwork","Début":"+21d 18:30","Fin":"+21d 21:00","Lieu":"Lyon, rooftop du centre","Capacité":60,"Statut":"Brouillon"}],"participants":[{"$key":"p1","Nom":"Claire Fontaine","E-mail":"claire.fontaine@exemple.fr","Entreprise":"Fontaine & Associés","Fonction":"Gérante","Centres d'intérêt":["Produit","Finance"]},{"$key":"p2","Nom":"Mehdi Saïdi","E-mail":"mehdi.saidi@exemple.fr","Entreprise":"Logistique Express","Fonction":"Responsable informatique","Centres d'intérêt":["Technique"]},{"$key":"p3","Nom":"Sophie Lambert","E-mail":"sophie.lambert@exemple.fr","Entreprise":"Studio Lambert","Fonction":"Directrice marketing","Centres d'intérêt":["Marketing","Produit"]},{"$key":"p4","Nom":"Antoine Mercier","E-mail":"antoine.mercier@exemple.fr","Entreprise":"Mercier Industrie","Fonction":"DRH","Centres d'intérêt":["Ressources humaines"]}],"inscriptions":[{"Participant":"Claire Fontaine","Statut":"Confirmé","Inscrit le":"-10d 08:12","Événement":"@conf","Personne":"@p1"},{"Participant":"Mehdi Saïdi","Statut":"Inscrit","Inscrit le":"-3d 19:40","Événement":"@conf","Personne":"@p2"},{"Participant":"Sophie Lambert","Statut":"Confirmé","Inscrit le":"-12d 10:05","Événement":"@atelier","Personne":"@p3"},{"Participant":"Claire Fontaine","Statut":"Présent","Inscrit le":"-20d 09:00","Événement":"@webinaire","Personne":"@p1","Retour":"Très clair, les démonstrations étaient parfaites. J'aurais aimé une heure de plus pour les questions.","Sentiment":"Enthousiaste","À retenir":"Prévoir plus de temps pour les questions."},{"Participant":"Mehdi Saïdi","Statut":"Présent","Inscrit le":"-18d 14:30","Événement":"@webinaire","Personne":"@p2","Retour":"Le son coupait régulièrement et la moitié des nouveautés ne concernait pas les équipes techniques.","Sentiment":"Déçu","À retenir":"Soigner le son et prévoir une session technique."},{"Participant":"Antoine Mercier","Statut":"Absent","Inscrit le":"-15d 11:20","Événement":"@webinaire","Personne":"@p4"}]},"views":[{"table":"evenements","label":"Calendrier","kind":"calendar","spec":{"date_field":"Début","end_field":"Fin","color_field":"Type","card_fields":["Lieu","Places restantes"]}},{"table":"evenements","label":"Affiches","kind":"gallery","spec":{"card_fields":["Type","Début","Lieu","Places restantes"],"color_field":"Statut","card_size":"large"}},{"table":"inscriptions","label":"Suivi","kind":"kanban","spec":{"group_by":"Statut","card_fields":["Événement","Inscrit le"],"group_order":["Inscrit","Confirmé","Présent","Absent","Annulé"]}},{"table":"inscriptions","label":"Retours","kind":"list","spec":{"filter":"not [Retour] is_null","group_by":"Sentiment","card_fields":["Événement","Retour","À retenir"]}},{"table":"participants","label":"Rejoindre la liste","kind":"form","spec":{"title":"Rester informé de nos événements","description":"Laissez vos coordonnées : nous vous prévenons de chaque nouvel événement qui vous concerne.","fields":[{"field":"Nom","required":true,"label":"Prénom et nom"},{"field":"E-mail","required":true},{"field":"Entreprise","required":false},{"field":"Centres d'intérêt","required":false}],"submit_label":"M'inscrire à la liste","success_message":"C'est noté, à bientôt !"}}],"dashboards":[{"label":"Événements","blocks":[{"kind":"number","title":"Événements à venir","width":1,"table":"evenements","aggregate":"count","field":null,"filter":"[Statut] ne \"Terminé\""},{"kind":"number","title":"Inscriptions","width":1,"table":"inscriptions","aggregate":"count","field":null,"filter":""},{"kind":"number","title":"Participants","width":1,"table":"participants","aggregate":"count","field":null,"filter":""},{"kind":"chart","title":"Inscriptions par statut","width":2,"table":"inscriptions","group_by":"Statut","filter":"","style":"bar"},{"kind":"chart","title":"Sentiment des retours","width":1,"table":"inscriptions","group_by":"Sentiment","filter":"","style":"pie"},{"kind":"list","title":"Prochains événements","width":3,"table":"evenements","fields":["Nom","Début","Places restantes"],"filter":"[Statut] ne \"Terminé\"","sort":"Début","limit":5}]}],"automations":[{"label":"Date d'inscription","description":"Note la date de chaque nouvelle inscription.","enabled":true,"trigger":{"kind":"record_created","table":"inscriptions","fields":[],"schedule":null},"condition":"","actions":[{"kind":"update_record","values":{"Inscrit le":"{{_maintenant}}"}}]}]},{"format":1,"key":"calendrier-editorial","label":"Calendrier éditorial","summary":"Articles, posts et newsletters planifiés sur un calendrier ; l'IA propose accroches et mots-clés.","description":"Pour une équipe marketing ou une rédaction. Chaque contenu avance de l'idée à la publication, se place sur le calendrier des parutions et appartient à une campagne. L'IA propose une accroche et des mots-clés à partir du brief, et un formulaire permet à toute l'entreprise de suggérer un sujet.","category":"Marketing","icon":"megaphone","color":"#f97316","tags":["IA","Calendrier","Kanban","Formulaire"],"base":{"label":"Calendrier éditorial","description":"Les contenus à produire et à publier, par canal et par campagne."},"tables":[{"key":"contenus","label":"Contenus","icon":"file-text","color":"#f97316","fields":[{"label":"Titre","kind":"short_text","required":true},{"label":"Format","kind":"select","options":[{"label":"Article","value":"article","color":"#3b82f6","icon":null},{"label":"Newsletter","value":"newsletter","color":"#8b5cf6","icon":null},{"label":"Post LinkedIn","value":"post_linkedin","color":"#0ea5e9","icon":null},{"label":"Vidéo","value":"video","color":"#ef4444","icon":null},{"label":"Podcast","value":"podcast","color":"#10b981","icon":null}]},{"label":"Statut","kind":"select","options":[{"label":"Idée","value":"idee","color":"#94a3b8","icon":null},{"label":"Rédaction","value":"redaction","color":"#3b82f6","icon":null},{"label":"Relecture","value":"relecture","color":"#f59e0b","icon":null},{"label":"Programmé","value":"programme","color":"#8b5cf6","icon":null},{"label":"Publié","value":"publie","color":"#10b981","icon":null}]},{"label":"Publication","kind":"date"},{"label":"Canaux","kind":"multi_select","options":[{"label":"Blog","value":"blog","color":"#94a3b8","icon":null},{"label":"LinkedIn","value":"linkedin","color":"#3b82f6","icon":null},{"label":"Instagram","value":"instagram","color":"#f59e0b","icon":null},{"label":"Newsletter","value":"newsletter","color":"#10b981","icon":null},{"label":"YouTube","value":"youtube","color":"#ef4444","icon":null}]},{"label":"Brief","kind":"long_text","description":"Le sujet, la cible, le message à faire passer."},{"label":"Proposé par","kind":"email"},{"label":"Accroche","kind":"short_text","ai":{"prompt":"Écris une accroche de 15 mots au plus, percutante et sans point d'exclamation, pour ce contenu ({{Format}}) intitulé « {{Titre}} ».\nBrief : {{Brief}}","refresh":"if_empty"}},{"label":"Mots-clés","kind":"short_text","ai":{"prompt":"Donne cinq mots-clés de référencement pour ce contenu, séparés par des virgules.\n{{Titre}} — {{Brief}}","refresh":"if_empty"}}]},{"key":"campagnes","label":"Campagnes","icon":"target","color":"#8b5cf6","fields":[{"label":"Nom","kind":"short_text","required":true},{"label":"Début","kind":"date"},{"label":"Fin","kind":"date"},{"label":"Objectif","kind":"long_text"},{"label":"Contenus","kind":"count","rollup":{"via":"Campagne","table":"contenus"}}]},{"key":"auteurs","label":"Auteurs","icon":"users","color":"#14b8a6","fields":[{"label":"Nom","kind":"short_text","required":true},{"label":"Rôle","kind":"select","options":[{"label":"Rédaction","value":"redaction","color":"#94a3b8","icon":null},{"label":"Graphisme","value":"graphisme","color":"#3b82f6","icon":null},{"label":"Vidéo","value":"video","color":"#f59e0b","icon":null},{"label":"Invité","value":"invite","color":"#10b981","icon":null}]},{"label":"E-mail","kind":"email"},{"label":"Contenus","kind":"count","rollup":{"via":"Auteur","table":"contenus"}}]}],"links":[{"from":"contenus","label":"Campagne","to":"campagnes","multiple":false},{"from":"contenus","label":"Auteur","to":"auteurs","multiple":false}],"rows":{"auteurs":[{"$key":"lea","Nom":"Léa Dubois","Rôle":"Rédaction","E-mail":"lea@exemple.fr"},{"$key":"sami","Nom":"Sami Haddad","Rôle":"Vidéo","E-mail":"sami@exemple.fr"},{"$key":"ines","Nom":"Inès Morel","Rôle":"Graphisme","E-mail":"ines@exemple.fr"}],"campagnes":[{"$key":"rentree","Nom":"Rentrée : nouvelle offre","Début":"-10d","Fin":"+20d","Objectif":"Faire connaître la nouvelle offre aux clients existants et générer 50 demandes de démonstration."},{"$key":"salon","Nom":"Salon de novembre","Début":"+25d","Fin":"+50d","Objectif":"Obtenir des rendez-vous sur le stand avant l'ouverture du salon."}],"contenus":[{"Titre":"Cinq façons de gagner une heure par jour","Format":"Article","Statut":"Publié","Publication":"-6d","Canaux":["Blog","LinkedIn"],"Brief":"Article pratique pour les responsables d'équipe : automatiser les tâches répétitives, avec des exemples concrets.","Campagne":"@rentree","Auteur":"@lea","Accroche":"Une heure de plus chaque jour, sans travailler plus vite.","Mots-clés":"productivité, automatisation, équipe, organisation, temps"},{"Titre":"Découvrez la nouvelle offre en 90 secondes","Format":"Vidéo","Statut":"Relecture","Publication":"+2d","Canaux":["YouTube","LinkedIn"],"Brief":"Vidéo courte qui montre les trois nouveautés, avec une démonstration à l'écran.","Campagne":"@rentree","Auteur":"@sami","Accroche":"Trois nouveautés, quatre-vingt-dix secondes, zéro jargon.","Mots-clés":"nouvelle offre, démonstration, nouveautés, vidéo, logiciel"},{"Titre":"Newsletter de rentrée","Format":"Newsletter","Statut":"Programmé","Publication":"+5d","Canaux":["Newsletter"],"Brief":"Récapitulatif des nouveautés, lien vers la vidéo, invitation à réserver une démonstration.","Campagne":"@rentree","Auteur":"@lea"},{"Titre":"Témoignage client : la clinique des Tilleuls","Format":"Article","Statut":"Rédaction","Publication":"+12d","Canaux":["Blog"],"Brief":"Interview de la directrice : avant, pendant et après le déploiement ; chiffres clés.","Campagne":"@rentree","Auteur":"@lea"},{"Titre":"Coulisses de notre stand","Format":"Post LinkedIn","Statut":"Idée","Publication":"+30d","Canaux":["LinkedIn","Instagram"],"Brief":"Photos de la préparation du stand et présentation de l'équipe présente au salon.","Campagne":"@salon","Auteur":"@ines"},{"Titre":"Épisode 4 : bien choisir ses outils","Format":"Podcast","Statut":"Idée","Publication":"+40d","Canaux":["Blog"],"Brief":"Discussion avec un consultant sur les critères de choix d'un logiciel métier.","Auteur":"@sami"}]},"views":[{"table":"contenus","label":"Calendrier","kind":"calendar","spec":{"date_field":"Publication","color_field":"Format","card_fields":["Statut","Canaux"]}},{"table":"contenus","label":"Production","kind":"kanban","spec":{"group_by":"Statut","card_fields":["Format","Publication","Auteur"],"group_order":["Idée","Rédaction","Relecture","Programmé","Publié"]}},{"table":"contenus","label":"Par format","kind":"list","spec":{"group_by":"Format","card_fields":["Statut","Publication","Accroche"]}},{"table":"contenus","label":"Proposer un sujet","kind":"form","spec":{"title":"Une idée de contenu ?","description":"Proposez un sujet à l'équipe marketing : article, vidéo, témoignage…","fields":[{"field":"Titre","required":true,"label":"Votre idée en une phrase"},{"field":"Format","required":false},{"field":"Brief","required":true,"label":"Pourquoi ce sujet, pour qui ?"},{"field":"Proposé par","required":true,"label":"Votre e-mail"}],"submit_label":"Proposer","success_message":"Merci ! L'équipe marketing étudiera votre idée."}},{"table":"campagnes","label":"Chronologie","kind":"timeline","spec":{"start_field":"Début","end_field":"Fin","scale":"week"}}],"dashboards":[{"label":"Production","blocks":[{"kind":"number","title":"À publier ce mois-ci","width":1,"table":"contenus","aggregate":"count","field":null,"filter":"[Statut] ne \"Publié\""},{"kind":"number","title":"Publiés","width":1,"table":"contenus","aggregate":"count","field":null,"filter":"[Statut] eq \"Publié\""},{"kind":"number","title":"Campagnes","width":1,"table":"campagnes","aggregate":"count","field":null,"filter":""},{"kind":"chart","title":"Par format","width":1,"table":"contenus","group_by":"Format","filter":"","style":"pie"},{"kind":"chart","title":"Par statut","width":2,"table":"contenus","group_by":"Statut","filter":"","style":"bar"},{"kind":"list","title":"Prochaines parutions","width":3,"table":"contenus","fields":["Titre","Format","Publication"],"filter":"[Statut] ne \"Publié\"","sort":"Publication","limit":6}]}],"automations":[{"label":"Contenu publié","enabled":true,"trigger":{"kind":"record_updated","table":"contenus","fields":["Statut"],"schedule":null},"condition":"[Statut] eq \"Publié\"","actions":[{"kind":"notify","users":["$moi"],"user_field":null,"message":"Publié : {{Titre}} ({{Format}})"}]}]},{"format":1,"key":"inventaire","label":"Inventaire et stocks","summary":"Articles, fournisseurs et mouvements : le stock se calcule tout seul, les ruptures se voient d'avance.","description":"Pour un atelier, une boutique ou un service généraux. Chaque entrée ou sortie est un mouvement ; le stock de chaque article en est la somme, sa valeur une formule, et les articles sous leur seuil apparaissent dans « À commander ». L'IA rédige la fiche de chaque article à partir de son nom et de sa catégorie.","category":"Opérations","icon":"package","color":"#a16207","tags":["Cumuls","Formules","Galerie","IA"],"base":{"label":"Stocks","description":"Les articles en stock, leurs fournisseurs et les entrées et sorties."},"tables":[{"key":"articles","label":"Articles","icon":"package","color":"#a16207","fields":[{"label":"Nom","kind":"short_text","required":true},{"label":"Référence","kind":"short_text","format":{"display":"barcode"}},{"label":"Catégorie","kind":"select","options":[{"label":"Matériel","value":"materiel","color":"#3b82f6","icon":null},{"label":"Consommable","value":"consommable","color":"#10b981","icon":null},{"label":"Mobilier","value":"mobilier","color":"#a16207","icon":null},{"label":"Emballage","value":"emballage","color":"#94a3b8","icon":null}]},{"label":"Unité","kind":"select","options":[{"label":"pièce","value":"piece","color":"#94a3b8","icon":null},{"label":"boîte","value":"boite","color":"#3b82f6","icon":null},{"label":"carton","value":"carton","color":"#f59e0b","icon":null},{"label":"kg","value":"kg","color":"#10b981","icon":null},{"label":"litre","value":"litre","color":"#ef4444","icon":null}]},{"label":"Seuil d'alerte","kind":"number"},{"label":"Prix unitaire","kind":"number","format":{"display":"currency","currency":"EUR"}},{"label":"Stock","kind":"rollup","description":"La somme des mouvements : les sorties sont négatives.","rollup":{"via":"Article","table":"mouvements","target":"Quantité","aggregate":"sum"}},{"label":"À commander","kind":"formula","formula":"SIVIDE([Stock]; 0) < [Seuil d'alerte]"},{"label":"Valeur du stock","kind":"formula","formula":"ARRONDI(SIVIDE([Stock]; 0) * [Prix unitaire]; 2)"},{"label":"Fiche","kind":"long_text","ai":{"prompt":"Rédige en deux phrases une fiche descriptive neutre de cet article de la catégorie « {{Catégorie}} », vendu à l'unité « {{Unité}} » : {{Nom}}.","refresh":"if_empty"}}]},{"key":"mouvements","label":"Mouvements","icon":"truck","color":"#0ea5e9","fields":[{"label":"Libellé","kind":"short_text","required":true},{"label":"Date","kind":"date"},{"label":"Type","kind":"select","options":[{"label":"Entrée","value":"entree","color":"#10b981","icon":"arrow-down"},{"label":"Sortie","value":"sortie","color":"#ef4444","icon":"arrow-up"},{"label":"Inventaire","value":"inventaire","color":"#8b5cf6","icon":null}]},{"label":"Quantité","kind":"number","description":"Positive pour une entrée, négative pour une sortie."},{"label":"Commentaire","kind":"long_text"}]},{"key":"fournisseurs","label":"Fournisseurs","icon":"building-2","color":"#6366f1","fields":[{"label":"Nom","kind":"short_text","required":true},{"label":"Contact","kind":"short_text"},{"label":"E-mail","kind":"email"},{"label":"Téléphone","kind":"short_text","format":{"display":"phone"}},{"label":"Délai (jours)","kind":"number"},{"label":"Articles","kind":"count","rollup":{"via":"Fournisseur","table":"articles"}},{"label":"Commander","kind":"button","button":{"label":"Commander","url":"mailto:{{E-mail}}?subject=Commande"}}]}],"links":[{"from":"articles","label":"Fournisseur","to":"fournisseurs","multiple":false},{"from":"mouvements","label":"Article","to":"articles","multiple":false}],"rows":{"fournisseurs":[{"$key":"bureau","Nom":"Bureau Plus","Contact":"Sandrine","E-mail":"commandes@bureauplus.example","Téléphone":"01 23 45 67 89","Délai (jours)":3},{"$key":"embal","Nom":"Emballages du Centre","Contact":"Patrick","E-mail":"contact@emballages-centre.example","Délai (jours)":7},{"$key":"info","Nom":"InfoMatériel","E-mail":"pro@infomateriel.example","Délai (jours)":5}],"articles":[{"$key":"ecran","Nom":"Écran 27 pouces","Référence":"3760001000011","Catégorie":"Matériel","Unité":"pièce","Seuil d'alerte":2,"Prix unitaire":219,"Fournisseur":"@info","Fiche":"Écran de 27 pouces pour poste de travail. Livré avec son pied et ses câbles."},{"$key":"papier","Nom":"Ramette de papier A4","Référence":"3760001000028","Catégorie":"Consommable","Unité":"carton","Seuil d'alerte":10,"Prix unitaire":27.5,"Fournisseur":"@bureau","Fiche":"Carton de cinq ramettes de papier A4 80 g. Pour imprimantes et photocopieurs."},{"$key":"chaise","Nom":"Chaise de bureau ergonomique","Référence":"3760001000035","Catégorie":"Mobilier","Unité":"pièce","Seuil d'alerte":1,"Prix unitaire":189,"Fournisseur":"@bureau"},{"$key":"carton","Nom":"Carton d'expédition 40 × 30 × 20","Référence":"3760001000042","Catégorie":"Emballage","Unité":"pièce","Seuil d'alerte":50,"Prix unitaire":0.9,"Fournisseur":"@embal"},{"$key":"clavier","Nom":"Clavier sans fil","Référence":"3760001000059","Catégorie":"Matériel","Unité":"pièce","Seuil d'alerte":3,"Prix unitaire":39,"Fournisseur":"@info"}],"mouvements":[{"Libellé":"Réception commande InfoMatériel","Date":"-20d","Type":"Entrée","Quantité":6,"Article":"@ecran"},{"Libellé":"Postes des nouveaux arrivants","Date":"-10d","Type":"Sortie","Quantité":-3,"Article":"@ecran"},{"Libellé":"Commande mensuelle papier","Date":"-15d","Type":"Entrée","Quantité":12,"Article":"@papier"},{"Libellé":"Consommation du mois","Date":"-2d","Type":"Sortie","Quantité":-5,"Article":"@papier"},{"Libellé":"Inventaire annuel","Date":"-30d","Type":"Inventaire","Quantité":2,"Article":"@chaise"},{"Libellé":"Réception cartons","Date":"-25d","Type":"Entrée","Quantité":200,"Article":"@carton"},{"Libellé":"Expéditions de la semaine","Date":"-1d","Type":"Sortie","Quantité":-165,"Article":"@carton","Commentaire":"Pic d'activité lié aux soldes."},{"Libellé":"Réception claviers","Date":"-8d","Type":"Entrée","Quantité":5,"Article":"@clavier"}]},"views":[{"table":"articles","label":"À commander","kind":"grid","spec":{"filter":"[À commander] eq true","sorts":[{"field":"Catégorie","direction":"asc"}]}},{"table":"articles","label":"Catalogue","kind":"gallery","spec":{"card_fields":["Catégorie","Stock","Prix unitaire","Fournisseur"],"color_field":"Catégorie"}},{"table":"articles","label":"Par catégorie","kind":"list","spec":{"group_by":"Catégorie","card_fields":["Stock","Seuil d'alerte","Valeur du stock"]}},{"table":"mouvements","label":"Journal","kind":"grid","spec":{"sorts":[{"field":"Date","direction":"desc"}],"group_by":"Type","summaries":{"Quantité":"sum"}}},{"table":"mouvements","label":"Calendrier","kind":"calendar","spec":{"date_field":"Date","color_field":"Type","card_fields":["Article","Quantité"]}}],"dashboards":[{"label":"Stocks","blocks":[{"kind":"number","title":"Articles à commander","width":1,"table":"articles","aggregate":"count","field":null,"filter":"[À commander] eq true"},{"kind":"number","title":"Articles suivis","width":1,"table":"articles","aggregate":"count","field":null,"filter":""},{"kind":"number","title":"Sorties ce mois-ci","width":1,"table":"mouvements","aggregate":"count","field":null,"filter":"[Type] eq \"Sortie\""},{"kind":"chart","title":"Articles par catégorie","width":1,"table":"articles","group_by":"Catégorie","filter":"","style":"pie"},{"kind":"chart","title":"Mouvements par type","width":2,"table":"mouvements","group_by":"Type","filter":"","style":"bar"},{"kind":"list","title":"Derniers mouvements","width":3,"table":"mouvements","fields":["Libellé","Article","Quantité"],"filter":"","sort":"-Date","limit":6}]}],"automations":[{"label":"Grosse sortie","description":"Prévient quand une sortie dépasse 50 unités.","enabled":true,"trigger":{"kind":"record_created","table":"mouvements","fields":[],"schedule":null},"condition":"[Quantité] lt -50","actions":[{"kind":"notify","users":["$moi"],"user_field":null,"message":"Grosse sortie : {{Libellé}} ({{Quantité}})"}]}]},{"format":1,"key":"gestion-projet","label":"Gestion de projet","summary":"Projets, tâches et jalons : une feuille de route, des dépendances entre tâches, un kanban et un calendrier.","description":"Pour piloter plusieurs projets en parallèle. Chaque projet cumule ses tâches et ses heures ; les tâches se suivent en kanban, se planifient sur une chronologie qui dessine leurs dépendances, et les jalons se lisent dans un calendrier. L'IA rédige une météo du projet pour la direction à partir de sa description et de son avancement.","category":"Organisation","icon":"list-todo","color":"#10b981","tags":["Chronologie","Dépendances","Kanban","IA"],"base":{"label":"Projets","description":"Les projets de l'équipe, leurs tâches et leurs jalons."},"tables":[{"key":"projets","label":"Projets","icon":"rocket","color":"#10b981","fields":[{"label":"Nom","kind":"short_text","required":true},{"label":"Statut","kind":"select","options":[{"label":"Idée","value":"idee","color":"#94a3b8","icon":null},{"label":"Planifié","value":"planifie","color":"#8b5cf6","icon":null},{"label":"En cours","value":"en_cours","color":"#3b82f6","icon":null},{"label":"Terminé","value":"termine","color":"#10b981","icon":null},{"label":"Suspendu","value":"suspendu","color":"#f59e0b","icon":null}]},{"label":"Priorité","kind":"select","options":[{"label":"Haute","value":"haute","color":"#ef4444","icon":null},{"label":"Moyenne","value":"moyenne","color":"#f59e0b","icon":null},{"label":"Basse","value":"basse","color":"#94a3b8","icon":null}]},{"label":"Début","kind":"date"},{"label":"Fin","kind":"date"},{"label":"Budget","kind":"number","format":{"display":"currency","currency":"EUR"}},{"label":"Chef de projet","kind":"user"},{"label":"Description","kind":"long_text"},{"label":"Tâches","kind":"count","rollup":{"via":"Projet","table":"taches"}},{"label":"Heures prévues","kind":"rollup","rollup":{"via":"Projet","table":"taches","target":"Estimation (h)","aggregate":"sum"}},{"label":"Météo","kind":"select","options":[{"label":"Ensoleillé","value":"ensoleille","color":"#10b981","icon":"sun"},{"label":"Nuageux","value":"nuageux","color":"#f59e0b","icon":"cloud"},{"label":"Orageux","value":"orageux","color":"#ef4444","icon":"zap"}],"ai":{"prompt":"Voici un projet au statut « {{Statut}} », prévu du {{Début}} au {{Fin}} :\n{{Description}}\nQuelle est sa météo : tout va bien, des points d'attention, ou de sérieux problèmes ?","refresh":"if_empty"}}]},{"key":"taches","label":"Tâches","icon":"clipboard-list","color":"#3b82f6","fields":[{"label":"Titre","kind":"short_text","required":true},{"label":"Statut","kind":"select","options":[{"label":"À faire","value":"a_faire","color":"#94a3b8","icon":null},{"label":"En cours","value":"en_cours","color":"#3b82f6","icon":null},{"label":"Bloqué","value":"bloque","color":"#ef4444","icon":null},{"label":"Fait","value":"fait","color":"#10b981","icon":null}]},{"label":"Priorité","kind":"select","options":[{"label":"Haute","value":"haute","color":"#ef4444","icon":"flame"},{"label":"Moyenne","value":"moyenne","color":"#f59e0b","icon":null},{"label":"Basse","value":"basse","color":"#94a3b8","icon":null}]},{"label":"Début","kind":"date"},{"label":"Échéance","kind":"date"},{"label":"Estimation (h)","kind":"number","format":{"display":"decimal"}},{"label":"Assigné à","kind":"user"},{"label":"Notes","kind":"long_text"},{"label":"Jours restants","kind":"formula","description":"Négatif quand l'échéance est dépassée.","formula":"JOURS([Échéance]; AUJOURDHUI())"},{"label":"Terminée le","kind":"datetime"}]},{"key":"jalons","label":"Jalons","icon":"flag","color":"#f59e0b","fields":[{"label":"Nom","kind":"short_text","required":true},{"label":"Date","kind":"date"},{"label":"Atteint","kind":"boolean"}]}],"links":[{"from":"taches","label":"Projet","to":"projets","multiple":false},{"from":"taches","label":"Dépend de","to":"taches","multiple":true,"description":"Les tâches à terminer avant celle-ci."},{"from":"jalons","label":"Projet","to":"projets","multiple":false}],"rows":{"projets":[{"$key":"site","Nom":"Refonte du site web","Statut":"En cours","Priorité":"Haute","Début":"-21d","Fin":"+30d","Budget":25000,"Chef de projet":"$moi","Description":"Nouveau site vitrine et espace client. Les maquettes sont validées, l'intégration a pris une semaine de retard à cause d'un changement de prestataire d'hébergement.","Météo":"Nuageux"},{"$key":"crm","Nom":"Déploiement du CRM","Statut":"Planifié","Priorité":"Moyenne","Début":"+10d","Fin":"+60d","Budget":12000,"Description":"Remplacer les tableurs de l'équipe commerciale. Éditeur choisi, formation prévue en deux sessions.","Météo":"Ensoleillé"},{"$key":"salon","Nom":"Salon professionnel de printemps","Statut":"En cours","Priorité":"Haute","Début":"-7d","Fin":"+45d","Budget":18000,"Description":"Stand de 24 m², supports imprimés et démonstrations. Le fournisseur du stand ne répond plus depuis dix jours et l'acompte est versé.","Météo":"Orageux"}],"taches":[{"$key":"t1","Titre":"Valider les maquettes","Statut":"Fait","Priorité":"Haute","Début":"-21d","Échéance":"-14d","Estimation (h)":6,"Projet":"@site","Assigné à":"$moi"},{"$key":"t2","Titre":"Intégrer les pages principales","Statut":"En cours","Priorité":"Haute","Début":"-12d","Échéance":"+3d","Estimation (h)":40,"Projet":"@site","Dépend de":["@t1"]},{"$key":"t3","Titre":"Migrer l'hébergement","Statut":"Bloqué","Priorité":"Haute","Début":"-5d","Échéance":"+2d","Estimation (h)":8,"Projet":"@site","Notes":"En attente des accès du nouveau prestataire."},{"$key":"t4","Titre":"Recette et mise en ligne","Statut":"À faire","Priorité":"Moyenne","Début":"+4d","Échéance":"+15d","Estimation (h)":16,"Projet":"@site","Dépend de":["@t2","@t3"]},{"$key":"t5","Titre":"Paramétrer le CRM","Statut":"À faire","Priorité":"Moyenne","Début":"+10d","Échéance":"+25d","Estimation (h)":24,"Projet":"@crm"},{"$key":"t6","Titre":"Former l'équipe commerciale","Statut":"À faire","Priorité":"Basse","Début":"+26d","Échéance":"+35d","Estimation (h)":10,"Projet":"@crm","Dépend de":["@t5"]},{"$key":"t7","Titre":"Relancer le fournisseur du stand","Statut":"En cours","Priorité":"Haute","Début":"-2d","Échéance":"+1d","Estimation (h)":1,"Projet":"@salon","Assigné à":"$moi"},{"$key":"t8","Titre":"Commander les supports imprimés","Statut":"À faire","Priorité":"Moyenne","Début":"+5d","Échéance":"+20d","Estimation (h)":4,"Projet":"@salon"}],"jalons":[{"Nom":"Maquettes validées","Date":"-14d","Atteint":true,"Projet":"@site"},{"Nom":"Mise en ligne du site","Date":"+30d","Atteint":false,"Projet":"@site"},{"Nom":"CRM en production","Date":"+60d","Atteint":false,"Projet":"@crm"},{"Nom":"Ouverture du salon","Date":"+45d","Atteint":false,"Projet":"@salon"}]},"views":[{"table":"projets","label":"Feuille de route","kind":"timeline","spec":{"start_field":"Début","end_field":"Fin","color_field":"Météo","scale":"month","card_fields":["Chef de projet"]}},{"table":"projets","label":"Portefeuille","kind":"gallery","spec":{"card_fields":["Statut","Météo","Budget","Tâches"],"color_field":"Statut","card_size":"large"}},{"table":"taches","label":"Tableau","kind":"kanban","spec":{"group_by":"Statut","card_fields":["Projet","Échéance","Priorité","Assigné à"],"group_order":["À faire","En cours","Bloqué","Fait"]}},{"table":"taches","label":"Planning","kind":"timeline","spec":{"start_field":"Début","end_field":"Échéance","group_by":"Projet","depends_on":"Dépend de","color_field":"Statut","scale":"week"}},{"table":"taches","label":"À faire","kind":"grid","spec":{"filter":"[Statut] ne \"Fait\"","sorts":[{"field":"Échéance","direction":"asc"}],"summaries":{"Estimation (h)":"sum"}}},{"table":"jalons","label":"Calendrier","kind":"calendar","spec":{"date_field":"Date","card_fields":["Projet"]}}],"dashboards":[{"label":"Portefeuille","blocks":[{"kind":"number","title":"Projets en cours","width":1,"table":"projets","aggregate":"count","field":null,"filter":"[Statut] eq \"En cours\""},{"kind":"number","title":"Tâches bloquées","width":1,"table":"taches","aggregate":"count","field":null,"filter":"[Statut] eq \"Bloqué\""},{"kind":"number","title":"Heures restantes","width":1,"table":"taches","aggregate":"sum","field":"Estimation (h)","filter":"[Statut] ne \"Fait\""},{"kind":"chart","title":"Météo des projets","width":1,"table":"projets","group_by":"Météo","filter":"","style":"pie"},{"kind":"chart","title":"Tâches par statut","width":2,"table":"taches","group_by":"Statut","filter":"","style":"bar"},{"kind":"list","title":"Échéances proches","width":3,"table":"taches","fields":["Titre","Projet","Échéance"],"filter":"[Statut] ne \"Fait\"","sort":"Échéance","limit":6}]}],"automations":[{"label":"Tâche terminée","description":"Note l'heure à laquelle une tâche passe à « Fait ».","enabled":true,"trigger":{"kind":"record_updated","table":"taches","fields":["Statut"],"schedule":null},"condition":"[Statut] eq \"Fait\"","actions":[{"kind":"update_record","values":{"Terminée le":"{{_maintenant}}"}}]},{"label":"Tâche bloquée","description":"Prévient quand une tâche est bloquée.","enabled":true,"trigger":{"kind":"record_updated","table":"taches","fields":["Statut"],"schedule":null},"condition":"[Statut] eq \"Bloqué\"","actions":[{"kind":"notify","users":["$moi"],"user_field":"Assigné à","message":"Tâche bloquée : {{Titre}}"}]}]},{"format":1,"key":"suivi-tickets","label":"Suivi de tickets","summary":"Bugs et demandes triés par l'IA, suivis par sprint jusqu'à leur résolution, avec un formulaire de signalement.","description":"Un gestionnaire de tickets pour une équipe produit. Chaque ticket est rattaché à un composant et à un sprint ; l'IA propose une catégorie, estime la gravité et résume le signalement. Un kanban suit l'avancement, une chronologie montre les sprints, un formulaire permet à n'importe qui de signaler un problème, et une automatisation note la date de résolution.","category":"Produit et technique","icon":"bug","color":"#ef4444","tags":["IA","Kanban","Formulaire","Sprints"],"base":{"label":"Suivi de tickets","description":"Les bugs et demandes de l'équipe produit, du signalement à la résolution."},"tables":[{"key":"tickets","label":"Tickets","description":"Un ticket par problème signalé ou demande d'évolution.","icon":"bug","color":"#ef4444","fields":[{"label":"Titre","kind":"short_text","description":"Le problème ou la demande, en une phrase.","required":true},{"label":"N°","kind":"autonumber","description":"Numéro du ticket, attribué à la création."},{"label":"Description","kind":"long_text","description":"Ce qui se passe, ce qui était attendu, comment le reproduire."},{"label":"Statut","kind":"select","options":[{"label":"Nouveau","value":"nouveau","color":"#94a3b8","icon":null},{"label":"À faire","value":"a_faire","color":"#8b5cf6","icon":null},{"label":"En cours","value":"en_cours","color":"#3b82f6","icon":null},{"label":"En revue","value":"en_revue","color":"#f59e0b","icon":null},{"label":"Résolu","value":"resolu","color":"#10b981","icon":null},{"label":"Fermé","value":"ferme","color":"#64748b","icon":null}]},{"label":"Priorité","kind":"select","options":[{"label":"Critique","value":"critique","color":"#ef4444","icon":"siren"},{"label":"Haute","value":"haute","color":"#f97316","icon":null},{"label":"Normale","value":"normale","color":"#3b82f6","icon":null},{"label":"Basse","value":"basse","color":"#94a3b8","icon":null}]},{"label":"Catégorie","kind":"select","description":"Proposée par l'IA à partir du titre et de la description.","options":[{"label":"Bug","value":"bug","color":"#ef4444","icon":"bug"},{"label":"Évolution","value":"evolution","color":"#8b5cf6","icon":"sparkles"},{"label":"Question","value":"question","color":"#3b82f6","icon":"circle-help"},{"label":"Performance","value":"performance","color":"#f59e0b","icon":"zap"},{"label":"Sécurité","value":"securite","color":"#0f172a","icon":"shield-alert"}],"ai":{"prompt":"Classe ce ticket d'une équipe logiciel.\nTitre : {{Titre}}\nDescription : {{Description}}","refresh":"if_empty"}},{"label":"Gravité estimée","kind":"number","description":"L'avis de l'IA, pour aider au tri ; la priorité reste une décision de l'équipe.","format":{"display":"rating","rating_max":5},"ai":{"prompt":"Sur une échelle de 1 (gêne mineure) à 5 (service inutilisable ou données en danger), quelle est la gravité de ce problème pour les utilisateurs ?\nTitre : {{Titre}}\nDescription : {{Description}}","refresh":"if_empty"}},{"label":"Résumé","kind":"short_text","ai":{"prompt":"Résume ce ticket en une phrase de 15 mots au plus, sans jargon.\n{{Titre}} — {{Description}}","refresh":"if_empty"}},{"label":"Assigné à","kind":"user"},{"label":"Signalé par","kind":"email"},{"label":"Ouvert le","kind":"date"},{"label":"Estimation (points)","kind":"number"},{"label":"Résolu le","kind":"datetime","description":"Rempli par l'automatisation « Date de résolution »."},{"label":"Âge (jours)","kind":"formula","description":"Depuis combien de jours le ticket est ouvert.","formula":"JOURS(AUJOURDHUI(); [Ouvert le])"}]},{"key":"composants","label":"Composants","description":"Les parties du produit, pour savoir où se concentrent les problèmes.","icon":"code","color":"#3b82f6","fields":[{"label":"Nom","kind":"short_text","required":true},{"label":"Responsable","kind":"user"},{"label":"Tickets","kind":"count","rollup":{"via":"Composant","table":"tickets"}}]},{"key":"sprints","label":"Sprints","description":"Les itérations de deux semaines de l'équipe.","icon":"timer","color":"#10b981","fields":[{"label":"Nom","kind":"short_text","required":true},{"label":"Début","kind":"date"},{"label":"Fin","kind":"date"},{"label":"Objectif","kind":"long_text"},{"label":"Tickets","kind":"count","rollup":{"via":"Sprint","table":"tickets"}},{"label":"Points engagés","kind":"rollup","rollup":{"via":"Sprint","table":"tickets","target":"Estimation (points)","aggregate":"sum"}}]}],"links":[{"from":"tickets","label":"Composant","to":"composants","multiple":false},{"from":"tickets","label":"Sprint","to":"sprints","multiple":false},{"from":"tickets","label":"Bloqué par","to":"tickets","multiple":true,"description":"Les tickets à résoudre avant celui-ci."}],"rows":{"composants":[{"$key":"app","Nom":"Application mobile"},{"$key":"web","Nom":"Site web"},{"$key":"api","Nom":"API"},{"$key":"paiement","Nom":"Paiement"}],"sprints":[{"$key":"s1","Nom":"Sprint 14","Début":"-18d","Fin":"-5d","Objectif":"Stabiliser le paiement avant les soldes."},{"$key":"s2","Nom":"Sprint 15","Début":"-4d","Fin":"+9d","Objectif":"Nouveau parcours d'inscription sur mobile."},{"$key":"s3","Nom":"Sprint 16","Début":"+10d","Fin":"+23d","Objectif":"Performances de l'API."}],"tickets":[{"$key":"k1","Titre":"L'application plante à l'ouverture sur Android 12","Description":"Depuis la version 3.4, l'application se ferme aussitôt ouverte sur plusieurs Pixel 6. Aucun message d'erreur.","Statut":"En cours","Priorité":"Critique","Composant":"@app","Sprint":"@s2","Ouvert le":"-3d","Estimation (points)":5,"Assigné à":"$moi","Signalé par":"support@exemple.fr","Catégorie":"Bug","Gravité estimée":5,"Résumé":"Plantage immédiat au démarrage sur certains téléphones Android 12."},{"$key":"k2","Titre":"Double débit lors d'un paiement par carte","Description":"Deux clients ont été débités deux fois après avoir cliqué deux fois sur « Payer ». Le bouton ne se désactive pas.","Statut":"Résolu","Priorité":"Critique","Composant":"@paiement","Sprint":"@s1","Ouvert le":"-15d","Estimation (points)":3,"Catégorie":"Bug","Gravité estimée":5,"Résumé":"Un double clic sur « Payer » débite deux fois le client."},{"$key":"k3","Titre":"Pouvoir se connecter avec son compte Apple","Description":"Plusieurs utilisateurs iPhone demandent la connexion avec Apple, plus rapide que la création d'un mot de passe.","Statut":"À faire","Priorité":"Normale","Composant":"@app","Sprint":"@s2","Ouvert le":"-10d","Estimation (points)":8,"Catégorie":"Évolution","Gravité estimée":2,"Résumé":"Ajouter la connexion avec un compte Apple."},{"$key":"k4","Titre":"La liste des commandes met 8 secondes à charger","Description":"Pour les clients qui ont plus de 200 commandes, la page « Mes commandes » est très lente.","Statut":"Nouveau","Priorité":"Haute","Composant":"@api","Sprint":"@s3","Ouvert le":"-2d","Estimation (points)":5,"Catégorie":"Performance","Gravité estimée":3,"Résumé":"La page des commandes est très lente pour les gros clients."},{"$key":"k5","Titre":"Mot de passe visible dans les journaux du serveur","Description":"La requête de connexion est journalisée avec son corps complet, mot de passe compris.","Statut":"En revue","Priorité":"Critique","Composant":"@api","Sprint":"@s2","Ouvert le":"-1d","Estimation (points)":2,"Assigné à":"$moi","Catégorie":"Sécurité","Gravité estimée":5,"Résumé":"Les mots de passe apparaissent en clair dans les journaux."},{"$key":"k6","Titre":"Comment exporter mes factures ?","Description":"Je ne trouve pas où télécharger mes factures de l'année dernière pour ma comptabilité.","Statut":"Fermé","Priorité":"Basse","Composant":"@web","Ouvert le":"-20d","Signalé par":"client@exemple.fr","Catégorie":"Question","Gravité estimée":1,"Résumé":"Un client cherche comment télécharger ses factures."},{"$key":"k7","Titre":"Le bouton « Payer » reste cliquable pendant le traitement","Description":"Cause du double débit : désactiver le bouton et afficher un indicateur de chargement.","Statut":"Résolu","Priorité":"Haute","Composant":"@web","Sprint":"@s1","Ouvert le":"-14d","Estimation (points)":1,"Catégorie":"Bug","Gravité estimée":4,"Résumé":"Désactiver le bouton de paiement pendant le traitement."},{"$key":"k8","Titre":"Nouveau parcours d'inscription en trois étapes","Description":"Réduire le formulaire d'inscription à trois écrans : e-mail, mot de passe, préférences.","Statut":"En cours","Priorité":"Haute","Composant":"@app","Sprint":"@s2","Ouvert le":"-6d","Estimation (points)":13,"Bloqué par":["@k1"],"Catégorie":"Évolution","Gravité estimée":2,"Résumé":"Simplifier l'inscription mobile en trois écrans."},{"$key":"k9","Titre":"Mettre en cache le détail des produits","Description":"Chaque fiche produit interroge la base à chaque affichage ; un cache de 5 minutes suffirait.","Statut":"À faire","Priorité":"Normale","Composant":"@api","Sprint":"@s3","Ouvert le":"-2d","Estimation (points)":3,"Bloqué par":["@k4"],"Catégorie":"Performance","Gravité estimée":2,"Résumé":"Ajouter un cache court sur les fiches produit."}]},"views":[{"table":"tickets","label":"Tableau","kind":"kanban","spec":{"group_by":"Statut","card_fields":["Priorité","Catégorie","Composant","Assigné à"],"group_order":["Nouveau","À faire","En cours","En revue","Résolu","Fermé"],"hide_empty":false}},{"table":"tickets","label":"À trier","kind":"grid","spec":{"filter":"[Statut] eq \"Nouveau\"","sorts":[{"field":"Gravité estimée","direction":"desc"}]}},{"table":"tickets","label":"Ouverts par priorité","kind":"grid","spec":{"filter":"[Statut] ne \"Résolu\" and [Statut] ne \"Fermé\"","group_by":"Priorité","sorts":[{"field":"Ouvert le","direction":"asc"}],"summaries":{"Estimation (points)":"sum"}}},{"table":"tickets","label":"Par composant","kind":"list","spec":{"group_by":"Catégorie","card_fields":["Statut","Composant","Priorité"]}},{"table":"tickets","label":"Signaler un problème","kind":"form","spec":{"title":"Signaler un problème","description":"Décrivez ce qui ne va pas : l'équipe reçoit votre ticket immédiatement.","fields":[{"field":"Titre","required":true,"label":"En une phrase, que se passe-t-il ?"},{"field":"Description","required":true,"help":"Ce que vous faisiez, ce qui s'est passé, ce que vous attendiez."},{"field":"Signalé par","required":true,"label":"Votre e-mail"}],"submit_label":"Envoyer le signalement","success_message":"Merci ! Votre signalement a été transmis à l'équipe."}},{"table":"sprints","label":"Planning","kind":"timeline","spec":{"start_field":"Début","end_field":"Fin","card_fields":["Objectif"],"scale":"week"}}],"dashboards":[{"label":"Santé du produit","blocks":[{"kind":"number","title":"Tickets ouverts","width":1,"table":"tickets","aggregate":"count","field":null,"filter":"[Statut] ne \"Résolu\" and [Statut] ne \"Fermé\""},{"kind":"number","title":"Critiques ouverts","width":1,"table":"tickets","aggregate":"count","field":null,"filter":"[Priorité] eq \"Critique\" and [Statut] ne \"Résolu\" and [Statut] ne \"Fermé\""},{"kind":"number","title":"À trier","width":1,"table":"tickets","aggregate":"count","field":null,"filter":"[Statut] eq \"Nouveau\""},{"kind":"chart","title":"Par catégorie","width":1,"table":"tickets","group_by":"Catégorie","filter":"","style":"pie"},{"kind":"chart","title":"Par statut","width":2,"table":"tickets","group_by":"Statut","filter":"","style":"bar"},{"kind":"list","title":"Critiques à traiter","width":3,"table":"tickets","fields":["Titre","Statut","Assigné à"],"filter":"[Priorité] eq \"Critique\" and [Statut] ne \"Résolu\" and [Statut] ne \"Fermé\"","sort":"Ouvert le","limit":5}]}],"automations":[{"label":"Date de résolution","description":"Note quand un ticket passe à « Résolu ».","enabled":true,"trigger":{"kind":"record_updated","table":"tickets","fields":["Statut"],"schedule":null},"condition":"[Statut] eq \"Résolu\"","actions":[{"kind":"update_record","values":{"Résolu le":"{{_maintenant}}"}}]},{"label":"Ticket critique","description":"Prévient dès qu'un ticket est marqué critique.","enabled":true,"trigger":{"kind":"record_updated","table":"tickets","fields":["Priorité"],"schedule":null},"condition":"[Priorité] eq \"Critique\"","actions":[{"kind":"notify","users":["$moi"],"user_field":"Assigné à","message":"Ticket critique : {{Titre}}"}]}]},{"format":1,"key":"analyse-avis","label":"Analyse d'avis clients","summary":"Collectez les avis, laissez l'IA en tirer le sentiment, les thèmes, l'urgence et un brouillon de réponse.","description":"Pour un commerce, un restaurant ou une marque : les avis arrivent d'un formulaire public ou d'un import, et l'IA lit chacun d'eux. Elle classe le sentiment, repère le thème principal, signale ceux qui demandent une réponse rapide, extrait la suggestion du client et rédige une réponse à relire. Les produits cumulent leur note moyenne et leur nombre d'avis ; un tableau de bord suit la satisfaction.","category":"Relation client","icon":"message-square","color":"#ec4899","tags":["IA","Formulaire","Tableau de bord"],"base":{"label":"Avis clients","description":"Les avis des clients, lus et classés par l'IA, pour savoir ce qui plaît et ce qui fâche."},"tables":[{"key":"avis","label":"Avis","description":"Un avis par ligne, d'où qu'il vienne.","icon":"message-square","color":"#ec4899","fields":[{"label":"Auteur","kind":"short_text","required":true},{"label":"Avis","kind":"long_text","description":"Le texte du client, tel quel."},{"label":"Note","kind":"number","format":{"display":"rating","rating_max":5}},{"label":"Source","kind":"select","options":[{"label":"Site web","value":"site_web","color":"#94a3b8","icon":null},{"label":"Google","value":"google","color":"#3b82f6","icon":null},{"label":"Formulaire","value":"formulaire","color":"#f59e0b","icon":null},{"label":"E-mail","value":"e_mail","color":"#10b981","icon":null},{"label":"En boutique","value":"en_boutique","color":"#ef4444","icon":null}]},{"label":"Reçu le","kind":"date"},{"label":"Sentiment","kind":"select","options":[{"label":"Très positif","value":"tres_positif","color":"#059669","icon":"laugh"},{"label":"Positif","value":"positif","color":"#10b981","icon":"smile"},{"label":"Mitigé","value":"mitige","color":"#f59e0b","icon":"meh"},{"label":"Négatif","value":"negatif","color":"#ef4444","icon":"frown"},{"label":"Très négatif","value":"tres_negatif","color":"#b91c1c","icon":"angry"}],"ai":{"prompt":"Voici un avis client, noté {{Note}}/5 :\n« {{Avis}} »\nQuel est son sentiment global ?","refresh":"if_empty"}},{"label":"Thème","kind":"select","options":[{"label":"Qualité du produit","value":"qualite_du_produit","color":"#94a3b8","icon":null},{"label":"Prix","value":"prix","color":"#3b82f6","icon":null},{"label":"Livraison","value":"livraison","color":"#f59e0b","icon":null},{"label":"Service client","value":"service_client","color":"#10b981","icon":null},{"label":"Site et commande","value":"site_et_commande","color":"#ef4444","icon":null},{"label":"Autre","value":"autre","color":"#8b5cf6","icon":null}],"ai":{"prompt":"Quel est le sujet principal de cet avis client ?\n« {{Avis}} »","refresh":"if_empty"}},{"label":"Réponse urgente","kind":"boolean","ai":{"prompt":"Cet avis demande-t-il une réponse rapide de l'entreprise (client en colère, problème non résolu, risque de mauvaise publicité, question posée) ?\n« {{Avis}} » ({{Note}}/5)","refresh":"if_empty"}},{"label":"Suggestion du client","kind":"short_text","ai":{"prompt":"Si ce client suggère une amélioration concrète, résume-la en 12 mots au plus ; sinon réponds par une chaîne vide.\n« {{Avis}} »","refresh":"if_empty"}},{"label":"Réponse proposée","kind":"long_text","ai":{"prompt":"Rédige une réponse publique à cet avis, en trois phrases au plus : remercie, réponds précisément à ce que dit le client, propose une solution s'il y a un problème. Ton chaleureux et professionnel, vouvoiement, sans formule creuse.\nAvis de {{Auteur}} ({{Note}}/5) : « {{Avis}} »","refresh":"if_empty"}},{"label":"Traité","kind":"boolean","description":"Coché quand la réponse a été publiée."}]},{"key":"produits","label":"Produits","description":"Ce sur quoi portent les avis.","icon":"package","color":"#8b5cf6","fields":[{"label":"Nom","kind":"short_text","required":true},{"label":"Gamme","kind":"select","options":[{"label":"Cafés","value":"cafes","color":"#94a3b8","icon":null},{"label":"Thés","value":"thes","color":"#3b82f6","icon":null},{"label":"Accessoires","value":"accessoires","color":"#f59e0b","icon":null}]},{"label":"Prix","kind":"number","format":{"display":"currency","currency":"EUR"}},{"label":"Avis","kind":"count","rollup":{"via":"Produit","table":"avis"}},{"label":"Note moyenne","kind":"rollup","rollup":{"via":"Produit","table":"avis","target":"Note","aggregate":"avg"}},{"label":"Note la plus basse","kind":"rollup","rollup":{"via":"Produit","table":"avis","target":"Note","aggregate":"min"}}]}],"links":[{"from":"avis","label":"Produit","to":"produits","multiple":false}],"rows":{"produits":[{"$key":"ethiopie","Nom":"Café d'Éthiopie Yirgacheffe","Gamme":"Cafés","Prix":14.9},{"$key":"espresso","Nom":"Mélange Espresso Maison","Gamme":"Cafés","Prix":11.5},{"$key":"sencha","Nom":"Thé vert Sencha","Gamme":"Thés","Prix":9.8},{"$key":"moulin","Nom":"Moulin à café manuel","Gamme":"Accessoires","Prix":49}],"avis":[{"Auteur":"Camille R.","Avis":"Un café incroyable, des notes de fruits rouges et de fleurs. Livré en deux jours dans un emballage soigné. Je recommande sans hésiter !","Note":5,"Source":"Site web","Reçu le":"-12d","Produit":"@ethiopie","Sentiment":"Très positif","Thème":"Qualité du produit","Réponse urgente":false,"Traité":true},{"Auteur":"Marc D.","Avis":"Colis arrivé avec une semaine de retard et aucune réponse du service client à mes deux e-mails. Le café est bon mais l'expérience est décevante.","Note":2,"Source":"Google","Reçu le":"-3d","Produit":"@espresso","Sentiment":"Négatif","Thème":"Livraison","Réponse urgente":true,"Suggestion du client":"Répondre aux e-mails et prévenir en cas de retard","Traité":false},{"Auteur":"Inès B.","Avis":"Le moulin est joli mais la mouture n'est pas régulière, impossible d'obtenir une mouture fine pour l'espresso. Assez cher pour ce résultat.","Note":2,"Source":"Site web","Reçu le":"-6d","Produit":"@moulin","Sentiment":"Négatif","Thème":"Qualité du produit","Réponse urgente":true,"Suggestion du client":"Proposer un réglage de mouture plus fin","Traité":false},{"Auteur":"Thomas L.","Avis":"Bon thé, frais et parfumé. Dommage que le sachet ne soit pas refermable.","Note":4,"Source":"Formulaire","Reçu le":"-9d","Produit":"@sencha","Sentiment":"Positif","Thème":"Qualité du produit","Réponse urgente":false,"Suggestion du client":"Un sachet refermable","Traité":true},{"Auteur":"Aurélie P.","Avis":"Le site plante à chaque fois que j'essaie de payer avec PayPal. J'ai fini par commander par téléphone. Vendeuse adorable au passage.","Note":3,"Source":"E-mail","Reçu le":"-1d","Produit":"@espresso","Sentiment":"Mitigé","Thème":"Site et commande","Réponse urgente":true,"Suggestion du client":"Réparer le paiement PayPal","Traité":false},{"Auteur":"Jean-Paul V.","Avis":"Toujours aussi bon, j'en commande tous les mois depuis deux ans.","Note":5,"Source":"Site web","Reçu le":"-20d","Produit":"@espresso","Sentiment":"Très positif","Thème":"Qualité du produit","Réponse urgente":false,"Traité":true},{"Auteur":"Léa M.","Avis":"Un peu cher par rapport aux cafés de supermarché, mais la différence de goût est réelle.","Note":4,"Source":"En boutique","Reçu le":"-15d","Produit":"@ethiopie","Sentiment":"Positif","Thème":"Prix","Réponse urgente":false,"Traité":true},{"Auteur":"Karim S.","Avis":"Reçu un thé périmé depuis trois mois. Inadmissible, je veux un remboursement.","Note":1,"Source":"Google","Reçu le":"today","Produit":"@sencha","Sentiment":"Très négatif","Thème":"Qualité du produit","Réponse urgente":true,"Suggestion du client":"Vérifier les dates avant expédition","Traité":false}]},"views":[{"table":"avis","label":"À traiter","kind":"grid","spec":{"filter":"[Traité] eq false","sorts":[{"field":"Reçu le","direction":"desc"}],"color_field":"Sentiment"}},{"table":"avis","label":"Urgents","kind":"list","spec":{"filter":"[Réponse urgente] eq true and [Traité] eq false","card_fields":["Sentiment","Thème","Note","Réponse proposée"]}},{"table":"avis","label":"Par sentiment","kind":"kanban","spec":{"group_by":"Sentiment","card_fields":["Note","Thème","Produit"],"group_order":["Très négatif","Négatif","Mitigé","Positif","Très positif"]}},{"table":"avis","label":"Par thème","kind":"list","spec":{"group_by":"Thème","card_fields":["Sentiment","Note","Suggestion du client"]}},{"table":"avis","label":"Laisser un avis","kind":"form","spec":{"title":"Votre avis compte","description":"Dites-nous ce que vous avez pensé de votre commande.","fields":[{"field":"Auteur","required":true,"label":"Votre prénom et l'initiale de votre nom"},{"field":"Note","required":true},{"field":"Avis","required":true,"label":"Votre avis"}],"submit_label":"Publier mon avis","success_message":"Merci pour votre avis !"}},{"table":"produits","label":"Catalogue","kind":"gallery","spec":{"card_fields":["Gamme","Prix","Note moyenne","Avis"],"card_size":"medium"}}],"dashboards":[{"label":"Satisfaction","blocks":[{"kind":"number","title":"Note moyenne","width":1,"table":"avis","aggregate":"avg","field":"Note","filter":""},{"kind":"number","title":"Avis à traiter","width":1,"table":"avis","aggregate":"count","field":null,"filter":"[Traité] eq false"},{"kind":"number","title":"Réponses urgentes","width":1,"table":"avis","aggregate":"count","field":null,"filter":"[Réponse urgente] eq true and [Traité] eq false"},{"kind":"chart","title":"Sentiment","width":1,"table":"avis","group_by":"Sentiment","filter":"","style":"pie"},{"kind":"chart","title":"Thèmes abordés","width":2,"table":"avis","group_by":"Thème","filter":"","style":"bar"},{"kind":"list","title":"Derniers avis négatifs","width":3,"table":"avis","fields":["Auteur","Note","Thème"],"filter":"[Note] lte 2","sort":"-Reçu le","limit":5}]}],"automations":[{"label":"Alerte avis urgent","description":"Prévient quand l'IA juge qu'un avis demande une réponse rapide.","enabled":true,"trigger":{"kind":"record_updated","table":"avis","fields":["Réponse urgente"],"schedule":null},"condition":"[Réponse urgente] eq true","actions":[{"kind":"notify","users":["$moi"],"user_field":null,"message":"Avis urgent de {{Auteur}} ({{Note}}/5) : « {{Avis}} »"}]}]},{"format":1,"key":"recrutement","label":"Recrutement","summary":"Postes ouverts, candidats et entretiens ; l'IA synthétise chaque candidature et suggère les points à creuser.","description":"Un suivi des recrutements, de la candidature à l'embauche. Les candidats postulent par un formulaire public, avancent étape par étape dans un kanban, et les entretiens se planifient dans un calendrier. L'IA lit la lettre de motivation et les notes : une synthèse, et les questions à poser en entretien. Elle aide à lire, elle ne décide pas.","category":"Ressources humaines","icon":"users","color":"#14b8a6","tags":["IA","Formulaire","Kanban","Calendrier"],"base":{"label":"Recrutement","description":"Les postes ouverts, les candidatures reçues et les entretiens."},"tables":[{"key":"candidats","label":"Candidats","icon":"user","color":"#14b8a6","fields":[{"label":"Nom","kind":"short_text","required":true},{"label":"E-mail","kind":"email"},{"label":"Téléphone","kind":"short_text","format":{"display":"phone"}},{"label":"Étape","kind":"select","options":[{"label":"Candidature","value":"candidature","color":"#94a3b8","icon":null},{"label":"Présélection","value":"preselection","color":"#8b5cf6","icon":null},{"label":"Entretien","value":"entretien","color":"#3b82f6","icon":null},{"label":"Offre","value":"offre","color":"#f59e0b","icon":null},{"label":"Embauché","value":"embauche","color":"#10b981","icon":"trophy"},{"label":"Refusé","value":"refuse","color":"#ef4444","icon":null}]},{"label":"Source","kind":"select","options":[{"label":"Site carrières","value":"site_carrieres","color":"#94a3b8","icon":null},{"label":"LinkedIn","value":"linkedin","color":"#3b82f6","icon":null},{"label":"Cooptation","value":"cooptation","color":"#f59e0b","icon":null},{"label":"Salon","value":"salon","color":"#10b981","icon":null},{"label":"Candidature spontanée","value":"candidature_spontanee","color":"#ef4444","icon":null}]},{"label":"Reçue le","kind":"date"},{"label":"Lettre de motivation","kind":"long_text"},{"label":"Notes","kind":"long_text","description":"Les impressions de l'équipe au fil du processus."},{"label":"Évaluation","kind":"number","description":"La note de l'équipe, après entretien.","format":{"display":"rating","rating_max":5}},{"label":"Poste visé","kind":"lookup","rollup":{"via":"Poste","target":"Intitulé"}},{"label":"Synthèse","kind":"long_text","ai":{"prompt":"Résume en trois phrases factuelles cette candidature : parcours, motivations, points forts.\nLettre : {{Lettre de motivation}}\nNotes de l'équipe : {{Notes}}","refresh":"if_empty"}},{"label":"Questions à poser","kind":"long_text","ai":{"prompt":"Propose trois questions précises à poser en entretien pour vérifier ce qui reste flou dans cette candidature. Une question par ligne.\nLettre : {{Lettre de motivation}}","refresh":"if_empty"}}]},{"key":"postes","label":"Postes","icon":"briefcase","color":"#6366f1","fields":[{"label":"Intitulé","kind":"short_text","required":true},{"label":"Service","kind":"select","options":[{"label":"Technique","value":"technique","color":"#94a3b8","icon":null},{"label":"Commercial","value":"commercial","color":"#3b82f6","icon":null},{"label":"Support","value":"support","color":"#f59e0b","icon":null},{"label":"Marketing","value":"marketing","color":"#10b981","icon":null},{"label":"Administration","value":"administration","color":"#ef4444","icon":null}]},{"label":"Contrat","kind":"select","options":[{"label":"CDI","value":"cdi","color":"#94a3b8","icon":null},{"label":"CDD","value":"cdd","color":"#3b82f6","icon":null},{"label":"Stage","value":"stage","color":"#f59e0b","icon":null},{"label":"Alternance","value":"alternance","color":"#10b981","icon":null}]},{"label":"Lieu","kind":"short_text"},{"label":"Ouvert","kind":"boolean"},{"label":"Description","kind":"long_text"},{"label":"Candidatures","kind":"count","rollup":{"via":"Poste","table":"candidats"}}]},{"key":"entretiens","label":"Entretiens","icon":"calendar","color":"#f59e0b","fields":[{"label":"Titre","kind":"short_text","required":true},{"label":"Date","kind":"datetime"},{"label":"Type","kind":"select","options":[{"label":"Téléphone","value":"telephone","color":"#94a3b8","icon":null},{"label":"Visio","value":"visio","color":"#3b82f6","icon":null},{"label":"Sur place","value":"sur_place","color":"#f59e0b","icon":null},{"label":"Cas pratique","value":"cas_pratique","color":"#10b981","icon":null}]},{"label":"Intervieweur","kind":"user"},{"label":"Avis","kind":"select","options":[{"label":"Favorable","value":"favorable","color":"#10b981","icon":null},{"label":"Réservé","value":"reserve","color":"#f59e0b","icon":null},{"label":"Défavorable","value":"defavorable","color":"#ef4444","icon":null}]},{"label":"Compte rendu","kind":"long_text"}]}],"links":[{"from":"candidats","label":"Poste","to":"postes","multiple":false},{"from":"entretiens","label":"Candidat","to":"candidats","multiple":false}],"rows":{"postes":[{"$key":"dev","Intitulé":"Développeuse ou développeur full stack","Service":"Technique","Contrat":"CDI","Lieu":"Lyon ou télétravail","Ouvert":true,"Description":"Faire évoluer notre application web (TypeScript, PostgreSQL) au sein d'une équipe de six personnes."},{"$key":"sales","Intitulé":"Chargé·e de clientèle","Service":"Commercial","Contrat":"CDI","Lieu":"Paris","Ouvert":true,"Description":"Accompagner une cinquantaine de clients PME, de la signature au renouvellement."},{"$key":"stage","Intitulé":"Stage marketing de contenu","Service":"Marketing","Contrat":"Stage","Lieu":"Lyon","Ouvert":false,"Description":"Six mois pour produire articles, vidéos et newsletters avec l'équipe marketing."}],"candidats":[{"$key":"c1","Nom":"Inès Garnier","E-mail":"ines.garnier@exemple.fr","Téléphone":"06 12 34 56 78","Étape":"Entretien","Source":"LinkedIn","Reçue le":"-12d","Poste":"@dev","Lettre de motivation":"Cinq ans de développement web dans une agence, dont deux en tant que référente technique. J'ai migré une application de PHP vers TypeScript et je cherche un produit sur lequel m'investir dans la durée.","Notes":"Très bon premier appel. À vérifier : expérience de PostgreSQL au-delà des requêtes simples.","Évaluation":4,"Synthèse":"Développeuse avec cinq ans d'expérience en agence, dont deux comme référente technique. A mené une migration vers TypeScript. Cherche un produit pour s'investir durablement.","Questions à poser":"Quelle a été la plus grande difficulté de la migration vers TypeScript ?\nQuelles requêtes PostgreSQL complexes avez-vous déjà écrites ?\nQu'attendez-vous d'une équipe produit par rapport à une agence ?"},{"$key":"c2","Nom":"Tom Leroy","E-mail":"tom.leroy@exemple.fr","Étape":"Candidature","Source":"Site carrières","Reçue le":"-2d","Poste":"@sales","Lettre de motivation":"Commercial terrain depuis trois ans dans l'équipement de bureau, j'aimerais évoluer vers un rôle de suivi de clients dans le logiciel."},{"$key":"c3","Nom":"Mathilde Roux","E-mail":"mathilde.roux@exemple.fr","Étape":"Offre","Source":"Cooptation","Reçue le":"-30d","Poste":"@dev","Lettre de motivation":"Développeuse back-end, spécialiste des bases de données. J'ai conçu le modèle de données d'une application de gestion utilisée par 200 entreprises.","Notes":"Excellente au cas pratique. Prétentions salariales dans le haut de la fourchette.","Évaluation":5},{"$key":"c4","Nom":"Yanis Belkacem","E-mail":"yanis.b@exemple.fr","Étape":"Présélection","Source":"Salon","Reçue le":"-6d","Poste":"@sales","Lettre de motivation":"Rencontré sur votre stand au salon de l'entrepreneuriat. Deux ans de relation client chez un opérateur télécom."},{"$key":"c5","Nom":"Clara Nguyen","E-mail":"clara.nguyen@exemple.fr","Étape":"Refusé","Source":"Candidature spontanée","Reçue le":"-45d","Poste":"@stage","Lettre de motivation":"Étudiante en école de communication, je cherche un stage de six mois en marketing de contenu.","Notes":"Profil intéressant mais le stage a été pourvu."}],"entretiens":[{"Titre":"Inès Garnier — entretien technique","Date":"+2d 10:00","Type":"Visio","Intervieweur":"$moi","Candidat":"@c1"},{"Titre":"Inès Garnier — premier appel","Date":"-8d 14:00","Type":"Téléphone","Avis":"Favorable","Candidat":"@c1","Compte rendu":"Motivée, parcours cohérent, bonne communication."},{"Titre":"Mathilde Roux — cas pratique","Date":"-15d 09:30","Type":"Cas pratique","Avis":"Favorable","Candidat":"@c3","Compte rendu":"Modèle de données très propre, bonnes explications de ses choix."},{"Titre":"Yanis Belkacem — appel de présélection","Date":"+1d 16:30","Type":"Téléphone","Candidat":"@c4"}]},"views":[{"table":"candidats","label":"Pipeline","kind":"kanban","spec":{"group_by":"Étape","card_fields":["Poste","Source","Évaluation"],"group_order":["Candidature","Présélection","Entretien","Offre","Embauché","Refusé"]}},{"table":"candidats","label":"À traiter","kind":"grid","spec":{"filter":"[Étape] eq \"Candidature\"","sorts":[{"field":"Reçue le","direction":"asc"}]}},{"table":"candidats","label":"Postuler","kind":"form","spec":{"title":"Postuler","description":"Présentez-vous en quelques lignes : nous répondons à chaque candidature sous dix jours.","fields":[{"field":"Nom","required":true,"label":"Prénom et nom"},{"field":"E-mail","required":true},{"field":"Téléphone","required":false},{"field":"Lettre de motivation","required":true,"label":"Pourquoi nous rejoindre ?","help":"Votre parcours, ce que vous cherchez, le poste qui vous intéresse."}],"submit_label":"Envoyer ma candidature","success_message":"Merci ! Nous revenons vers vous sous dix jours."}},{"table":"entretiens","label":"Agenda","kind":"calendar","spec":{"date_field":"Date","color_field":"Avis","card_fields":["Candidat","Type"],"mode":"week"}},{"table":"postes","label":"Postes ouverts","kind":"gallery","spec":{"filter":"[Ouvert] eq true","card_fields":["Service","Contrat","Lieu","Candidatures"],"color_field":"Service"}}],"dashboards":[{"label":"Recrutements","blocks":[{"kind":"number","title":"Candidatures en cours","width":1,"table":"candidats","aggregate":"count","field":null,"filter":"[Étape] ne \"Embauché\" and [Étape] ne \"Refusé\""},{"kind":"number","title":"Postes ouverts","width":1,"table":"postes","aggregate":"count","field":null,"filter":"[Ouvert] eq true"},{"kind":"number","title":"Évaluation moyenne","width":1,"table":"candidats","aggregate":"avg","field":"Évaluation","filter":""},{"kind":"chart","title":"Par étape","width":2,"table":"candidats","group_by":"Étape","filter":"","style":"bar"},{"kind":"chart","title":"Sources","width":1,"table":"candidats","group_by":"Source","filter":"","style":"pie"},{"kind":"list","title":"Prochains entretiens","width":3,"table":"entretiens","fields":["Titre","Date","Type"],"filter":"","sort":"Date","limit":5}]}],"automations":[{"label":"Nouvelle candidature","description":"Prévient à chaque candidature reçue.","enabled":true,"trigger":{"kind":"record_created","table":"candidats","fields":[],"schedule":null},"condition":"","actions":[{"kind":"notify","users":["$moi"],"user_field":null,"message":"Nouvelle candidature : {{Nom}}"}]}]},{"format":1,"key":"base-connaissances","label":"Base de connaissances","summary":"Articles d'aide et questions des clients : l'IA résume, classe et propose une réponse à partir des articles.","description":"Pour un service support. Les articles d'aide sont rangés par catégorie et suivis dans le temps ; les questions des clients arrivent par un formulaire public. L'IA résume chaque article et en évalue le niveau, classe chaque question et rédige un brouillon de réponse à relire.","category":"Support","icon":"lightbulb","color":"#eab308","tags":["IA","Formulaire","Liste"],"base":{"label":"Base de connaissances","description":"Les articles d'aide du support et les questions posées par les clients."},"tables":[{"key":"articles","label":"Articles","icon":"file-text","color":"#eab308","fields":[{"label":"Titre","kind":"short_text","required":true},{"label":"Catégorie","kind":"select","options":[{"label":"Premiers pas","value":"premiers_pas","color":"#10b981","icon":null},{"label":"Compte et facturation","value":"compte_et_facturation","color":"#3b82f6","icon":null},{"label":"Fonctionnalités","value":"fonctionnalites","color":"#8b5cf6","icon":null},{"label":"Dépannage","value":"depannage","color":"#ef4444","icon":null}]},{"label":"Statut","kind":"select","options":[{"label":"Brouillon","value":"brouillon","color":"#94a3b8","icon":null},{"label":"Publié","value":"publie","color":"#10b981","icon":null},{"label":"À revoir","value":"a_revoir","color":"#f59e0b","icon":null}]},{"label":"Contenu","kind":"long_text"},{"label":"Auteur","kind":"user"},{"label":"Mis à jour le","kind":"date"},{"label":"Utile","kind":"number","description":"Nombre de lecteurs qui ont trouvé l'article utile."},{"label":"Questions liées","kind":"count","rollup":{"via":"Article","table":"questions"}},{"label":"Résumé","kind":"short_text","ai":{"prompt":"Résume cet article d'aide en une phrase de 20 mots au plus.\n{{Titre}}\n{{Contenu}}","refresh":"if_empty"}},{"label":"Niveau","kind":"select","options":[{"label":"Débutant","value":"debutant","color":"#94a3b8","icon":null},{"label":"Intermédiaire","value":"intermediaire","color":"#3b82f6","icon":null},{"label":"Avancé","value":"avance","color":"#f59e0b","icon":null}],"ai":{"prompt":"À quel niveau d'utilisateur s'adresse cet article d'aide ?\n{{Titre}} — {{Contenu}}","refresh":"if_empty"}}]},{"key":"questions","label":"Questions","icon":"circle-help","color":"#0ea5e9","fields":[{"label":"Question","kind":"short_text","required":true},{"label":"Détails","kind":"long_text"},{"label":"Posée par","kind":"email"},{"label":"Reçue le","kind":"date"},{"label":"Statut","kind":"select","options":[{"label":"Nouvelle","value":"nouvelle","color":"#3b82f6","icon":null},{"label":"En cours","value":"en_cours","color":"#f59e0b","icon":null},{"label":"Répondue","value":"repondue","color":"#10b981","icon":null}]},{"label":"Catégorie","kind":"select","options":[{"label":"Premiers pas","value":"premiers_pas","color":"#94a3b8","icon":null},{"label":"Compte et facturation","value":"compte_et_facturation","color":"#3b82f6","icon":null},{"label":"Fonctionnalités","value":"fonctionnalites","color":"#f59e0b","icon":null},{"label":"Dépannage","value":"depannage","color":"#10b981","icon":null}],"ai":{"prompt":"Dans quelle catégorie du support ranger cette question ?\n{{Question}}\n{{Détails}}","refresh":"if_empty"}},{"label":"Réponse suggérée","kind":"long_text","ai":{"prompt":"Rédige une réponse courte, claire et bienveillante à cette question d'un client, en vouvoyant. Si elle manque de précisions, demande-les poliment.\nQuestion : {{Question}}\nDétails : {{Détails}}","refresh":"if_empty"}}]}],"links":[{"from":"questions","label":"Article","to":"articles","multiple":false,"description":"L'article qui répond à la question, quand il existe."}],"rows":{"articles":[{"$key":"a1","Titre":"Créer votre compte en trois minutes","Catégorie":"Premiers pas","Statut":"Publié","Mis à jour le":"-40d","Utile":128,"Auteur":"$moi","Contenu":"Rendez-vous sur la page d'inscription, saisissez votre e-mail professionnel, puis choisissez un mot de passe d'au moins douze caractères. Un e-mail de confirmation vous est envoyé : cliquez sur le lien pour activer votre compte.","Résumé":"Inscription avec un e-mail professionnel, un mot de passe solide et une confirmation par e-mail.","Niveau":"Débutant"},{"$key":"a2","Titre":"Changer de formule d'abonnement","Catégorie":"Compte et facturation","Statut":"Publié","Mis à jour le":"-15d","Utile":64,"Contenu":"Depuis Paramètres, puis Abonnement, choisissez la nouvelle formule. Le changement est immédiat ; la différence de prix est calculée au prorata sur votre prochaine facture.","Résumé":"Le changement de formule se fait dans Paramètres et se facture au prorata.","Niveau":"Débutant"},{"$key":"a3","Titre":"Importer vos données depuis un tableur","Catégorie":"Fonctionnalités","Statut":"Publié","Mis à jour le":"-5d","Utile":97,"Contenu":"Exportez votre tableur au format CSV, puis utilisez Importer dans le menu de la table. Associez chaque colonne à un champ ; les dates doivent être au format AAAA-MM-JJ.","Résumé":"Import d'un CSV en associant chaque colonne à un champ, dates au format AAAA-MM-JJ.","Niveau":"Intermédiaire"},{"$key":"a4","Titre":"Que faire si la synchronisation échoue ?","Catégorie":"Dépannage","Statut":"À revoir","Mis à jour le":"-120d","Utile":12,"Contenu":"Vérifiez que l'adresse de la source est toujours accessible, puis relancez la synchronisation. Si l'erreur persiste, contactez le support avec le message affiché.","Résumé":"Vérifier l'accès à la source, relancer, puis contacter le support si besoin.","Niveau":"Avancé"}],"questions":[{"Question":"Comment récupérer mes factures de l'an dernier ?","Détails":"J'ai besoin des factures de janvier à décembre pour mon comptable.","Posée par":"comptabilite@exemple.fr","Reçue le":"-1d","Statut":"Nouvelle","Catégorie":"Compte et facturation","Réponse suggérée":"Bonjour, vos factures sont disponibles dans Paramètres, puis Facturation : vous pouvez les télécharger une à une ou toutes ensemble au format PDF. N'hésitez pas à revenir vers nous si vous ne les trouvez pas."},{"Question":"Mon import CSV mélange les dates","Détails":"Les dates 03/04 deviennent le 4 mars au lieu du 3 avril.","Posée par":"lucie@exemple.fr","Reçue le":"-2d","Statut":"En cours","Article":"@a3","Catégorie":"Fonctionnalités","Réponse suggérée":"Bonjour, l'import attend des dates au format AAAA-MM-JJ : convertissez la colonne dans votre tableur avant l'export, et vos dates seront lues correctement."},{"Question":"Peut-on inviter un collègue gratuitement ?","Posée par":"marc@exemple.fr","Reçue le":"-6d","Statut":"Répondue","Catégorie":"Compte et facturation","Réponse suggérée":"Bonjour, chaque formule inclut un nombre de membres ; pourriez-vous nous préciser votre formule actuelle afin que nous vous répondions précisément ?"},{"Question":"La synchronisation affiche « source injoignable »","Détails":"Depuis ce matin, plus rien ne se met à jour.","Posée par":"it@exemple.fr","Reçue le":"today","Statut":"Nouvelle","Article":"@a4","Catégorie":"Dépannage"}]},"views":[{"table":"articles","label":"Par catégorie","kind":"list","spec":{"filter":"[Statut] eq \"Publié\"","group_by":"Catégorie","card_fields":["Résumé","Niveau","Utile"]}},{"table":"articles","label":"À revoir","kind":"grid","spec":{"filter":"[Statut] ne \"Publié\"","sorts":[{"field":"Mis à jour le","direction":"asc"}]}},{"table":"articles","label":"Fiches","kind":"gallery","spec":{"card_fields":["Catégorie","Niveau","Résumé"],"color_field":"Catégorie","card_size":"large"}},{"table":"questions","label":"File d'attente","kind":"kanban","spec":{"group_by":"Statut","card_fields":["Catégorie","Reçue le","Posée par"],"group_order":["Nouvelle","En cours","Répondue"]}},{"table":"questions","label":"Poser une question","kind":"form","spec":{"title":"Une question ?","description":"Décrivez votre question : le support vous répond par e-mail, en général dans la journée.","fields":[{"field":"Question","required":true,"label":"Votre question"},{"field":"Détails","required":false,"help":"Ce que vous avez essayé, les messages affichés."},{"field":"Posée par","required":true,"label":"Votre e-mail"}],"submit_label":"Envoyer","success_message":"Merci, nous vous répondons au plus vite."}}],"dashboards":[{"label":"Support","blocks":[{"kind":"number","title":"Questions en attente","width":1,"table":"questions","aggregate":"count","field":null,"filter":"[Statut] ne \"Répondue\""},{"kind":"number","title":"Articles publiés","width":1,"table":"articles","aggregate":"count","field":null,"filter":"[Statut] eq \"Publié\""},{"kind":"number","title":"Votes « utile »","width":1,"table":"articles","aggregate":"sum","field":"Utile","filter":""},{"kind":"chart","title":"Questions par catégorie","width":1,"table":"questions","group_by":"Catégorie","filter":"","style":"pie"},{"kind":"chart","title":"Articles par niveau","width":2,"table":"articles","group_by":"Niveau","filter":"","style":"bar"},{"kind":"list","title":"Questions récentes","width":3,"table":"questions","fields":["Question","Statut","Catégorie"],"filter":"","sort":"-Reçue le","limit":6}]}],"automations":[{"label":"Nouvelle question","description":"Prévient à chaque question reçue.","enabled":true,"trigger":{"kind":"record_created","table":"questions","fields":[],"schedule":null},"condition":"","actions":[{"kind":"notify","users":["$moi"],"user_field":null,"message":"Nouvelle question : {{Question}}"}]}]},{"format":1,"key":"crm","label":"CRM commercial","summary":"Entreprises, contacts et opportunités : un pipeline de vente, les échanges, et l'IA qui conseille la prochaine étape.","description":"Un CRM léger pour une équipe commerciale. Les opportunités avancent dans un pipeline, portent un montant pondéré par leur probabilité, et l'IA en évalue le risque et conseille la prochaine action à partir des notes. Les échanges avec les clients sont consignés et résumés, les entreprises cumulent ce qu'elles représentent.","category":"Ventes","icon":"handshake","color":"#0ea5e9","tags":["IA","Pipeline","Kanban","Calendrier"],"base":{"label":"CRM","description":"Les clients, leurs contacts et les ventes en cours, de la découverte à la signature."},"tables":[{"key":"opportunites","label":"Opportunités","description":"Une vente possible, de la découverte à la signature ou à l'abandon.","icon":"target","color":"#0ea5e9","fields":[{"label":"Nom","kind":"short_text","required":true},{"label":"Étape","kind":"select","options":[{"label":"Découverte","value":"decouverte","color":"#94a3b8","icon":null},{"label":"Qualification","value":"qualification","color":"#8b5cf6","icon":null},{"label":"Proposition","value":"proposition","color":"#3b82f6","icon":null},{"label":"Négociation","value":"negociation","color":"#f59e0b","icon":null},{"label":"Gagnée","value":"gagnee","color":"#10b981","icon":"trophy"},{"label":"Perdue","value":"perdue","color":"#ef4444","icon":null}]},{"label":"Montant","kind":"number","format":{"display":"currency","currency":"EUR"}},{"label":"Probabilité (%)","kind":"number","description":"Chance de signer, de 0 à 100."},{"label":"Montant pondéré","kind":"formula","description":"Le montant multiplié par la probabilité.","formula":"ARRONDI([Montant] * [Probabilité (%)] / 100; 0)"},{"label":"Clôture prévue","kind":"date"},{"label":"Responsable","kind":"user"},{"label":"Notes","kind":"long_text","description":"Ce que l'on sait du besoin, du budget, des décideurs et des objections."},{"label":"Risque","kind":"select","options":[{"label":"Faible","value":"faible","color":"#10b981","icon":null},{"label":"Moyen","value":"moyen","color":"#f59e0b","icon":null},{"label":"Élevé","value":"eleve","color":"#ef4444","icon":null}],"ai":{"prompt":"Voici les notes d'un commercial sur une opportunité à l'étape « {{Étape}} », d'un montant de {{Montant}} € :\n{{Notes}}\nQuel est le risque de ne pas signer ?","refresh":"if_empty"}},{"label":"Prochaine étape conseillée","kind":"short_text","ai":{"prompt":"En une phrase de 15 mots au plus, quelle est la prochaine action commerciale la plus utile pour faire avancer cette opportunité (étape « {{Étape}} ») ?\nNotes : {{Notes}}","refresh":"if_empty"}}]},{"key":"entreprises","label":"Entreprises","description":"Les comptes clients et prospects.","icon":"building-2","color":"#6366f1","fields":[{"label":"Nom","kind":"short_text","required":true},{"label":"Secteur","kind":"select","options":[{"label":"Industrie","value":"industrie","color":"#94a3b8","icon":null},{"label":"Services","value":"services","color":"#3b82f6","icon":null},{"label":"Commerce","value":"commerce","color":"#f59e0b","icon":null},{"label":"Santé","value":"sante","color":"#10b981","icon":null},{"label":"Public","value":"public","color":"#ef4444","icon":null}]},{"label":"Taille","kind":"select","options":[{"label":"TPE","value":"tpe","color":"#94a3b8","icon":null},{"label":"PME","value":"pme","color":"#3b82f6","icon":null},{"label":"ETI","value":"eti","color":"#f59e0b","icon":null},{"label":"Grand compte","value":"grand_compte","color":"#10b981","icon":null}]},{"label":"Ville","kind":"short_text"},{"label":"Site web","kind":"url"},{"label":"Opportunités","kind":"count","rollup":{"via":"Entreprise","table":"opportunites"}},{"label":"Montant en jeu","kind":"rollup","rollup":{"via":"Entreprise","table":"opportunites","target":"Montant","aggregate":"sum"}}]},{"key":"contacts","label":"Contacts","description":"Les personnes à qui l'on parle chez les clients.","icon":"users","color":"#14b8a6","fields":[{"label":"Nom","kind":"short_text","required":true},{"label":"Fonction","kind":"short_text"},{"label":"E-mail","kind":"email"},{"label":"Téléphone","kind":"short_text","format":{"display":"phone"}},{"label":"Rôle dans la décision","kind":"select","options":[{"label":"Décideur","value":"decideur","color":"#94a3b8","icon":null},{"label":"Prescripteur","value":"prescripteur","color":"#3b82f6","icon":null},{"label":"Utilisateur","value":"utilisateur","color":"#f59e0b","icon":null},{"label":"Acheteur","value":"acheteur","color":"#10b981","icon":null}]},{"label":"Écrire","kind":"button","button":{"label":"Écrire","url":"mailto:{{E-mail}}"}}]},{"key":"echanges","label":"Échanges","description":"Appels, rendez-vous, démonstrations : ce qui s'est dit, et quand.","icon":"message-square","color":"#f59e0b","fields":[{"label":"Sujet","kind":"short_text","required":true},{"label":"Type","kind":"select","options":[{"label":"Appel","value":"appel","color":"#94a3b8","icon":"phone"},{"label":"E-mail","value":"e_mail","color":"#3b82f6","icon":"mail"},{"label":"Rendez-vous","value":"rendez_vous","color":"#f59e0b","icon":"users"},{"label":"Démonstration","value":"demonstration","color":"#10b981","icon":"monitor"}]},{"label":"Date","kind":"datetime"},{"label":"Compte rendu","kind":"long_text"},{"label":"Points clés","kind":"short_text","ai":{"prompt":"Résume en 20 mots au plus les points clés de cet échange commercial :\n{{Compte rendu}}","refresh":"if_empty"}}]}],"links":[{"from":"opportunites","label":"Entreprise","to":"entreprises","multiple":false},{"from":"opportunites","label":"Contact","to":"contacts","multiple":false},{"from":"contacts","label":"Entreprise","to":"entreprises","multiple":false},{"from":"echanges","label":"Opportunité","to":"opportunites","multiple":false}],"rows":{"entreprises":[{"$key":"rhodia","Nom":"Chimie du Rhône","Secteur":"Industrie","Taille":"ETI","Ville":"Lyon","Site web":"https://chimie-rhone.example"},{"$key":"optique","Nom":"Optique Martin & Fils","Secteur":"Commerce","Taille":"PME","Ville":"Rennes"},{"$key":"clinique","Nom":"Groupe Santé Atlantique","Secteur":"Santé","Taille":"Grand compte","Ville":"Nantes","Site web":"https://sante-atlantique.example"},{"$key":"mairie","Nom":"Mairie de Villeurbanne","Secteur":"Public","Taille":"ETI","Ville":"Villeurbanne"},{"$key":"conseil","Nom":"Atelier Conseil","Secteur":"Services","Taille":"TPE","Ville":"Paris"}],"contacts":[{"$key":"c1","Nom":"Nathalie Perrin","Fonction":"Directrice des achats","E-mail":"n.perrin@chimie-rhone.example","Téléphone":"04 72 00 00 01","Rôle dans la décision":"Décideur","Entreprise":"@rhodia"},{"$key":"c2","Nom":"Julien Martin","Fonction":"Gérant","E-mail":"julien@optique-martin.example","Téléphone":"02 99 00 00 02","Rôle dans la décision":"Décideur","Entreprise":"@optique"},{"$key":"c3","Nom":"Dr Hélène Robin","Fonction":"Directrice des systèmes d'information","E-mail":"h.robin@sante-atlantique.example","Rôle dans la décision":"Prescripteur","Entreprise":"@clinique"},{"$key":"c4","Nom":"Karim Benali","Fonction":"Responsable de la commande publique","E-mail":"k.benali@villeurbanne.example","Rôle dans la décision":"Acheteur","Entreprise":"@mairie"},{"$key":"c5","Nom":"Chloé Garnier","Fonction":"Associée","E-mail":"chloe@atelier-conseil.example","Rôle dans la décision":"Décideur","Entreprise":"@conseil"}],"opportunites":[{"$key":"o1","Nom":"Chimie du Rhône — logiciel de maintenance","Étape":"Négociation","Montant":48000,"Probabilité (%)":70,"Clôture prévue":"+12d","Responsable":"$moi","Entreprise":"@rhodia","Contact":"@c1","Notes":"Budget validé en comité. Ils comparent avec un concurrent 15 % moins cher. La directrice des achats veut une remise ou un accompagnement renforcé.","Risque":"Moyen","Prochaine étape conseillée":"Proposer un accompagnement au déploiement plutôt qu'une remise."},{"$key":"o2","Nom":"Optique Martin — caisse et fidélité","Étape":"Proposition","Montant":9500,"Probabilité (%)":50,"Clôture prévue":"+25d","Entreprise":"@optique","Contact":"@c2","Notes":"Très intéressé par le programme de fidélité. Hésite sur le calendrier : il veut attendre après les soldes.","Risque":"Moyen","Prochaine étape conseillée":"Proposer un démarrage en deux temps, fidélité après les soldes."},{"$key":"o3","Nom":"Santé Atlantique — portail patients","Étape":"Qualification","Montant":120000,"Probabilité (%)":25,"Clôture prévue":"+75d","Responsable":"$moi","Entreprise":"@clinique","Contact":"@c3","Notes":"Projet stratégique mais pas encore budgété. La DSI est favorable ; la direction générale n'a pas été rencontrée. Appel d'offres probable.","Risque":"Élevé","Prochaine étape conseillée":"Obtenir un rendez-vous avec la direction générale."},{"$key":"o4","Nom":"Villeurbanne — réservation des salles","Étape":"Découverte","Montant":22000,"Probabilité (%)":10,"Clôture prévue":"+120d","Entreprise":"@mairie","Contact":"@c4","Notes":"Premier contact au salon des collectivités. Marché public à venir, cahier des charges en rédaction.","Risque":"Élevé","Prochaine étape conseillée":"Demander à être consulté pour le cahier des charges."},{"$key":"o5","Nom":"Atelier Conseil — abonnement annuel","Étape":"Gagnée","Montant":3600,"Probabilité (%)":100,"Clôture prévue":"-5d","Entreprise":"@conseil","Contact":"@c5","Notes":"Signé après la démonstration. Souhaite une formation pour deux nouveaux collaborateurs en janvier.","Risque":"Faible","Prochaine étape conseillée":"Planifier la formation de janvier."},{"$key":"o6","Nom":"Chimie du Rhône — module qualité","Étape":"Perdue","Montant":15000,"Probabilité (%)":0,"Clôture prévue":"-40d","Entreprise":"@rhodia","Contact":"@c1","Notes":"Perdu face à la solution déjà en place chez leur maison mère.","Risque":"Élevé"}],"echanges":[{"Sujet":"Démonstration du logiciel","Type":"Démonstration","Date":"-20d 10:00","Opportunité":"@o1","Compte rendu":"Démonstration devant quatre personnes. Très bon accueil sur la planification ; questions sur l'import des historiques et sur l'hébergement en France.","Points clés":"Bon accueil, questions sur l'import des historiques et l'hébergement."},{"Sujet":"Point sur la proposition","Type":"Appel","Date":"-3d 14:30","Opportunité":"@o1","Compte rendu":"La directrice des achats trouve l'offre chère. Un concurrent propose 15 % de moins. Elle attend un geste avant la fin du mois.","Points clés":"Offre jugée chère, concurrent moins cher, geste attendu avant la fin du mois."},{"Sujet":"Présentation du programme de fidélité","Type":"Rendez-vous","Date":"-8d 09:30","Opportunité":"@o2","Compte rendu":"Rendez-vous en boutique. Le gérant veut des cartes dématérialisées et un envoi de SMS à l'anniversaire des clients.","Points clés":"Cartes dématérialisées et SMS d'anniversaire demandés."},{"Sujet":"Découverte du besoin","Type":"Rendez-vous","Date":"+4d 11:00","Opportunité":"@o3","Compte rendu":"À préparer : liste des services concernés, volumétrie des patients, contraintes d'hébergement de données de santé."},{"Sujet":"Envoi du contrat signé","Type":"E-mail","Date":"-5d 17:00","Opportunité":"@o5","Compte rendu":"Contrat reçu signé. Facture à émettre, formation à planifier en janvier.","Points clés":"Contrat signé, facture à émettre, formation en janvier."}]},"views":[{"table":"opportunites","label":"Pipeline","kind":"kanban","spec":{"group_by":"Étape","card_fields":["Entreprise","Montant","Clôture prévue","Risque"],"group_order":["Découverte","Qualification","Proposition","Négociation","Gagnée","Perdue"]}},{"table":"opportunites","label":"En cours par risque","kind":"grid","spec":{"filter":"[Étape] ne \"Gagnée\" and [Étape] ne \"Perdue\"","group_by":"Risque","sorts":[{"field":"Clôture prévue","direction":"asc"}],"summaries":{"Montant":"sum"}}},{"table":"opportunites","label":"Clôtures","kind":"calendar","spec":{"date_field":"Clôture prévue","color_field":"Étape","card_fields":["Montant"]}},{"table":"echanges","label":"Agenda","kind":"calendar","spec":{"date_field":"Date","color_field":"Type","card_fields":["Opportunité"],"mode":"week"}},{"table":"entreprises","label":"Comptes","kind":"gallery","spec":{"card_fields":["Secteur","Taille","Ville","Montant en jeu"],"color_field":"Taille"}},{"table":"contacts","label":"Par entreprise","kind":"list","spec":{"group_by":"Entreprise","card_fields":["Fonction","E-mail","Rôle dans la décision"]}}],"dashboards":[{"label":"Ventes","blocks":[{"kind":"number","title":"En jeu","width":1,"table":"opportunites","aggregate":"sum","field":"Montant","filter":"[Étape] ne \"Gagnée\" and [Étape] ne \"Perdue\""},{"kind":"number","title":"Gagné","width":1,"table":"opportunites","aggregate":"sum","field":"Montant","filter":"[Étape] eq \"Gagnée\""},{"kind":"number","title":"Opportunités ouvertes","width":1,"table":"opportunites","aggregate":"count","field":null,"filter":"[Étape] ne \"Gagnée\" and [Étape] ne \"Perdue\""},{"kind":"chart","title":"Pipeline par étape","width":2,"table":"opportunites","group_by":"Étape","filter":"","style":"bar"},{"kind":"chart","title":"Risque","width":1,"table":"opportunites","group_by":"Risque","filter":"","style":"pie"},{"kind":"list","title":"Prochaines clôtures","width":3,"table":"opportunites","fields":["Nom","Montant","Clôture prévue","Prochaine étape conseillée"],"filter":"[Étape] ne \"Gagnée\" and [Étape] ne \"Perdue\"","sort":"Clôture prévue","limit":5}]}],"automations":[{"label":"Opportunité gagnée","description":"Prévient le responsable quand une opportunité est gagnée.","enabled":true,"trigger":{"kind":"record_updated","table":"opportunites","fields":["Étape"],"schedule":null},"condition":"[Étape] eq \"Gagnée\"","actions":[{"kind":"notify","users":["$moi"],"user_field":"Responsable","message":"Gagnée : {{Nom}} ({{Montant}} €)"}]}]}]}