ROAD TO

Connexion

ROAD TO

App road to help customer to achieve their goals

Ressources

Documentation

Entreprise

À proposContactez-nous

Légal

Conditions d'utilisationPolitique de confidentialité

© 2026 Baptcompany. Tous droits réservés.

Référence technique/Format JSON des templates
Documentation

Guide

  • Premiers pas
  • Comment fonctionne Road To

Référence technique

  • Format JSON des templates
  • API REST v1
  • Serveur MCP

Format JSON des templates

Spécification complète du format JSON RtTemplate v1 utilisé par Road To pour les templates, sections et tâches. Documentation pour les développeurs, robots et IA.

Road To utilise un format JSON ouvert nommé RtTemplate pour représenter les templates de parcours. Ce format est utilisé pour l'import, l'export, et la génération par IA.

Structure globale

{
  "version": 1,
  "versionTemplate": 1,
  "id": "UNIQUE_ID",
  "locale": "fr",
  "name": "Nom du template",
  "description": "Description du parcours",
  "sections": [ ... ]
}

Champs racine

ChampTypeRequisDescription
versionnumberOuiVersion du format JSON (1 actuellement)
versionTemplatenumberNonVersion interne du template (incrémentée à chaque édition)
idstringOuiIdentifiant unique du template (alphanumérique, 9 caractères)
localestringOuiLocale BCP 47 : "fr", "en", "es", etc.
namestringOuiNom affiché du template
descriptionstringOuiDescription synthétique du parcours
sectionsarrayOuiListe ordonnée des sections du template
sourceTemplateIdstringNonID du template d'origine si ce template est un fork
sourceTemplateNamestringNonNom du template d'origine si ce template est un fork

Section

Une section représente une phase ou étape du parcours.

{
  "id": "SECTION_ID",
  "version": 1,
  "title": "Titre de la section",
  "subtitle": "Sous-titre optionnel",
  "description": "Description détaillée de cette phase",
  "tasks": [ ... ]
}

Champs d'une section

ChampTypeRequisDescription
idstringOuiIdentifiant unique dans le template
versionnumberNonVersion interne de la section
titlestringOuiTitre principal de la section
subtitlestringNonSous-titre ou accroche de la section
descriptionstringOuiDescription du contenu ou des objectifs de la phase
tasksarrayOuiListe ordonnée des tâches de la section

Tâche

Une tâche est une action concrète à accomplir.

{
  "id": "TASK_ID",
  "version": 1,
  "text": "Description de l'action à réaliser",
  "estimatedTime": 30,
  "difficulty": "medium"
}

Champs d'une tâche

ChampTypeRequisDescription
idstringOuiIdentifiant unique dans le template
versionnumberNonVersion interne de la tâche
textstringOuiTexte de la tâche (action à effectuer)
estimatedTimenumber (minutes)NonDurée estimée en minutes
difficulty"low" | "medium" | "high"NonNiveau de difficulté de la tâche

Exemple complet

Voici un exemple de template complet au format RtTemplate v1 :

{
  "version": 1,
  "versionTemplate": 1,
  "id": "WEBPROJ001",
  "locale": "fr",
  "name": "Lancement d'un projet web",
  "description": "Parcours complet pour lancer un projet web de A à Z",
  "sections": [
    {
      "id": "PHASE_DISCOVERY",
      "version": 1,
      "title": "Découverte",
      "subtitle": "Comprendre le besoin",
      "description": "Cette phase permet de cadrer le projet et de valider les objectifs avec le client.",
      "tasks": [
        {
          "id": "TASK_BRIEF",
          "version": 1,
          "text": "Rédiger le brief projet avec le client",
          "estimatedTime": 60,
          "difficulty": "low"
        },
        {
          "id": "TASK_PERSONAS",
          "version": 1,
          "text": "Définir les personas utilisateurs",
          "estimatedTime": 120,
          "difficulty": "medium"
        }
      ]
    },
    {
      "id": "PHASE_DESIGN",
      "version": 1,
      "title": "Design",
      "subtitle": "Concevoir l'expérience",
      "description": "Création des maquettes et validation de l'interface avec les parties prenantes.",
      "tasks": [
        {
          "id": "TASK_WIREFRAMES",
          "version": 1,
          "text": "Créer les wireframes des pages principales",
          "estimatedTime": 240,
          "difficulty": "medium"
        },
        {
          "id": "TASK_VALIDATE_UI",
          "version": 1,
          "text": "Valider les maquettes avec le client",
          "estimatedTime": 60,
          "difficulty": "low"
        }
      ]
    },
    {
      "id": "PHASE_DEV",
      "version": 1,
      "title": "Développement",
      "subtitle": "Construire la solution",
      "description": "Phase de développement et d'intégration des fonctionnalités.",
      "tasks": [
        {
          "id": "TASK_SETUP",
          "version": 1,
          "text": "Initialiser le projet et configurer l'environnement",
          "estimatedTime": 90,
          "difficulty": "low"
        },
        {
          "id": "TASK_FEATURES",
          "version": 1,
          "text": "Développer les fonctionnalités principales",
          "estimatedTime": 1440,
          "difficulty": "high"
        },
        {
          "id": "TASK_TESTS",
          "version": 1,
          "text": "Écrire et exécuter les tests",
          "estimatedTime": 360,
          "difficulty": "medium"
        }
      ]
    },
    {
      "id": "PHASE_LAUNCH",
      "version": 1,
      "title": "Livraison",
      "subtitle": "Mettre en production",
      "description": "Déploiement, recette finale et transfert au client.",
      "tasks": [
        {
          "id": "TASK_DEPLOY",
          "version": 1,
          "text": "Déployer en production",
          "estimatedTime": 120,
          "difficulty": "high"
        },
        {
          "id": "TASK_HANDOVER",
          "version": 1,
          "text": "Former le client et livrer la documentation",
          "estimatedTime": 180,
          "difficulty": "medium"
        }
      ]
    }
  ]
}

Règles de génération

Pour qu'un template soit valide et importable dans Road To :

  1. Les id doivent être uniques dans tout le fichier JSON (entre sections et entre tâches).
  2. L'ordre des sections et des tâches dans le tableau JSON définit l'ordre d'affichage.
  3. La locale doit être un code BCP 47 valide ("fr", "en", "es", "de", etc.).
  4. Le difficulty doit être exactement "low", "medium" ou "high" (ou omis).
  5. L'estimatedTime est en minutes (entier positif).
  6. Un template doit contenir au moins une section, et chaque section au moins une tâche.

Import et export

  • Export : depuis l'interface Road To, via le bouton "Exporter" sur un template.
  • Import : via le bouton "Importer un JSON" dans l'éditeur de templates.
  • Format : fichier .json encodé en UTF-8.
  • Validation : le format est validé à l'import — un message d'erreur est affiché si la structure est incorrecte.
Comment fonctionne Road ToAPI REST v1

On This Page

Structure globaleChamps racineSectionChamps d'une sectionTâcheChamps d'une tâcheExemple completRègles de générationImport et export