Guides

Qu'est-ce que JSON ? Un guide simple avec des exemples

JSON (JavaScript Object Notation) est un format texte simple pour décrire des données structurées (un client, une commande ou une liste de produits) sous forme de noms associés à des valeurs. Il est facile à lire pour les humains et facile à produire et à analyser pour les programmes. Lorsque des apps et des services échangent des données sur le web, JSON est de loin le format le plus courant.

Pourquoi JSON compte quand on crée avec l'IA

Vous rencontrerez JSON constamment, même si vous n'écrivez jamais de code :

  • Les API. Lorsque les écrans de votre app chargent des données depuis son backend, ou que votre backend appelle un service de paiement, d'e-mail ou d'IA, les données voyagent généralement en JSON. Voir qu'est-ce qu'une API.
  • Les fichiers de réglages. Beaucoup de fichiers de configuration de projet sont en JSON, par exemple package.json, qui liste les dépendances d'un projet JavaScript.
  • Les bases de données. Postgres peut stocker du JSON dans une colonne (le type jsonb) pour les données qui ne rentrent pas dans des lignes et colonnes bien définies. Voir qu'est-ce que Postgres.
  • Les réponses de l'IA. Lorsque vous voulez qu'un modèle d'IA renvoie quelque chose qu'un programme peut utiliser (une liste de tags, des champs extraits d'une facture), vous demandez en général du JSON.
  • Les messages d'erreur et les journaux. Beaucoup d'erreurs arrivent en JSON, et les lire est souvent le moyen le plus rapide de comprendre ce qui s'est passé.

Savoir lire du JSON vous permet de vérifier ce que votre app a réellement reçu, de repérer un champ manquant et de décrire précisément un problème à votre créateur d'apps.

Une analogie du quotidien

Pensez à un formulaire papier : Nom : ____, Téléphone : ____, Newsletter : ☐ oui ☐ non. Chaque case est un libellé accompagné de sa valeur. JSON, c'est ce formulaire écrit en texte, selon une mise en page stricte qu'un ordinateur peut lire sans deviner. Et comme pour un formulaire, JSON peut contenir des sections dans des sections (un bloc adresse avec la rue, la ville et le code postal) et des listes (plusieurs numéros de téléphone).

À quoi ressemble JSON

Voici une réservation en JSON :

{
  "id": 5001,
  "client": "Léa Martin",
  "prestation": "Coupe",
  "debuteA": "2026-10-03T14:00:00Z",
  "prix": 35.5,
  "paye": false,
  "notes": null,
  "options": ["taille de barbe", "serviette chaude"],
  "contact": {
    "email": "lea@exemple.com",
    "telephone": "+33 1 23 45 67 89"
  }
}

Lecture :

  • Les accolades { } entourent un objet, c'est-à-dire un ensemble de paires nom/valeur.
  • Chaque paire s'écrit "nom": valeur, séparées par des virgules.
  • Les crochets [ ] entourent un tableau, c'est-à-dire une liste ordonnée.
  • Les objets et les tableaux peuvent être imbriqués, comme contact et options ci-dessus.

Les six types de valeurs

JSON ne connaît que six types de valeurs. Cette liste réduite explique en grande partie pourquoi il fonctionne partout.

TypeExempleRemarques
Chaîne (texte)"Léa Martin"Toujours entre guillemets doubles
Nombre35.5, -2, 1e6Sans guillemets ; pas de symbole monétaire
Booléentrue, falseMinuscules, sans guillemets
Nullnull« Aucune valeur »
Objet{ "ville": "Lyon" }Valeurs nommées
Tableau[1, 2, 3]Liste ordonnée ; les éléments peuvent être de n'importe quel type

Il n'existe pas de type date. Les dates s'écrivent comme des chaînes, généralement au format ISO 8601 vu plus haut (2026-10-03T14:00:00Z, où Z désigne l'heure UTC). S'accorder sur ce format évite toute une catégorie de bugs liés aux fuseaux horaires.

Les règles strictes (d'où viennent les erreurs)

JSON est moins indulgent qu'il n'y paraît. Ces écritures sont toutes invalides :

{ nom: "Léa" }             ← clé sans guillemets doubles
{ 'nom': 'Léa' }            ← apostrophes simples
{ "a": 1, "b": 2, }        ← virgule finale
{ "a": 1 "b": 2 }          ← virgule manquante
{ "a": 1 // commentaire }  ← les commentaires ne sont pas autorisés

La plupart des erreurs « Unexpected token » se ramènent à l'une de ces situations. Un validateur ou un formateur JSON vous indiquera la ligne exacte.

Un exemple concret : JSON dans une app

Une cliente réserve une coupe dans une application de salon de coiffure. Voici où le JSON intervient :

  1. Le formulaire de réservation envoie ceci au backend de l'app :
{ "prestation": "Coupe", "debuteA": "2026-10-03T14:00:00Z", "nom": "Léa Martin" }
  1. Le backend enregistre la réservation dans la base de données et répond avec le statut 201 Created et :
{ "id": 5001, "statut": "confirmee" }
  1. Si le créneau était déjà pris, il peut répondre avec le statut 409 Conflict et :
{ "error": "slot_taken", "message": "Ce créneau vient d'être réservé. Merci d'en choisir un autre." }

La page lit le champ statut ou le champ error et affiche le bon message. Si la page affichait un écran blanc, ouvrir les outils de développement du navigateur (onglet Réseau) vous montrerait ce JSON, souvent l'indice le plus rapide sur l'origine du problème.

Termes clés

TermeSignification
CléLe nom d'une paire nom/valeur, comme "email".
Analyser (parse)Transformer du texte JSON en données qu'un programme peut utiliser.
Sérialiser / stringifyTransformer des données en texte JSON pour les envoyer ou les stocker.
Charge utile (payload)Les données envoyées dans une requête ou une réponse.
SchémaLa description de la forme que doivent avoir les données : quels champs, quels types. JSON Schema est une manière standard de l'écrire.
JSONBLe type de colonne JSON binaire de Postgres, qui peut être indexé et interrogé.
NDJSON / JSON LinesUn objet JSON par ligne, courant pour les journaux et les flux.

Idées fausses courantes

  • « JSON, c'est du JavaScript. » Il tire sa syntaxe de JavaScript, mais il est indépendant du langage ; Python, Java, C#, Go et les autres le lisent tous.
  • « Les nombres entre guillemets, ça ne pose pas de problème. » "35" est une chaîne, pas un nombre. Mélanger les deux crée des bugs, comme "35" + "5" qui donne "355". Les montants sont souvent mieux stockés en centimes entiers (3550) pour éviter les arrondis.
  • « JSON est sûr parce que ce ne sont que des données. » JSON peut transporter n'importe quoi, y compris des secrets. Ne mettez pas de clés API dans du JSON envoyé au navigateur.
  • « Tout mettre dans une colonne JSON. » Pratique pour des données supplémentaires flexibles, mais les données que vous recherchez, filtrez ou jointez relèvent en général de colonnes classiques.
  • « L'IA renvoie toujours du JSON valide. » Un modèle peut ajouter du texte en trop ou casser le format. Beaucoup de fournisseurs proposent un mode de sortie structurée ; votre code doit tout de même vérifier ce qui revient.

Que demander à votre créateur d'apps IA

  • « Montre-moi un exemple du JSON que renvoie cet endpoint. »
  • « Renvoie les erreurs en JSON avec un code error et un message lisible par un humain. »
  • « Stocke les dates au format ISO 8601 en UTC et ne les convertis en heure locale qu'à l'affichage. »
  • « Stocke les prix en centimes entiers. »
  • « Valide le JSON entrant côté serveur et rejette les requêtes dont des champs manquent ou ont un mauvais type. »
  • « Quand tu appelles le modèle d'IA, demande du JSON dans cette forme exacte et vérifie-le avant de l'utiliser. »

JSON dans Mythex

Vous n'avez pas besoin d'écrire du JSON à la main dans Mythex : vous décrivez ce que vous voulez, et l'agent écrit le code qui l'envoie et le lit. Il est tout de même utile de le reconnaître : lorsque quelque chose casse, coller l'erreur JSON dans le chat donne à l'agent un indice précis. La recette backend REST API de la documentation demande dès le départ des « erreurs JSON claires », et la recette intégrer n'importe quelle API couvre les appels vers des services externes. Pour la vue d'ensemble, voir REST vs GraphQL et comment déboguer une app créée avec l'IA.

Questions

Qu'est-ce que JSON, en termes simples ?

JSON (JavaScript Object Notation) est un format texte qui décrit des données structurées sous forme de noms et de valeurs, comme "nom" : "Léa". Presque toutes les API web l'utilisent pour échanger des données, et beaucoup d'apps s'en servent pour leurs réglages et leurs données stockées.

JSON est-il un langage de programmation ?

Non. JSON est un format de données, pas un langage. Il ne peut rien faire seul : il décrit seulement des données. Bien qu'il vienne de JavaScript, pratiquement tous les langages de programmation savent le lire et l'écrire.

Quelle est la différence entre JSON et un objet JavaScript ?

Ils se ressemblent, mais JSON est plus strict. En JSON, chaque clé doit être entre guillemets doubles, les chaînes utilisent aussi les guillemets doubles, il n'y a pas de commentaires ni de virgule finale, et les valeurs se limitent aux chaînes, nombres, true, false, null, objets et tableaux.

Pourquoi mon JSON est-il signalé comme invalide ?

Les causes habituelles sont une virgule après le dernier élément, des apostrophes simples à la place des guillemets doubles, une virgule manquante entre deux éléments, un crochet non fermé ou un commentaire. Collez-le dans un validateur JSON : il indiquera la ligne fautive.

Mythex · Pricing · Créez tout avec l'IA · Modèles de sites et d'applications · Mythex comparé · Glossaire de la création d'applications avec l'IA · Outils gratuits pour créer des applications avec l'IA · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)