{"id":447,"date":"2026-05-25T17:56:03","date_gmt":"2026-05-25T15:56:03","guid":{"rendered":"https:\/\/eryann.fr\/?p=447"},"modified":"2026-05-25T17:56:05","modified_gmt":"2026-05-25T15:56:05","slug":"fiche-json","status":"publish","type":"post","link":"https:\/\/eryann.fr\/index.php\/administration-systeme\/fiche-json\/","title":{"rendered":"Fiche json"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">1. Introduction<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">JSON signifie <strong>JavaScript Object Notation<\/strong>. Ce format permet d\u2019\u00e9changer des donn\u00e9es entre des applications, des API, des services web ou des scripts.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dans un BTS CIEL ou SIO, tu rencontres JSON partout :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>API REST<\/li>\n\n\n\n<li>fichiers de configuration<\/li>\n\n\n\n<li>Docker<\/li>\n\n\n\n<li>Node-RED<\/li>\n\n\n\n<li>applications web<\/li>\n\n\n\n<li>scripts Python<\/li>\n\n\n\n<li>MQTT<\/li>\n\n\n\n<li>Elasticsearch<\/li>\n\n\n\n<li>Kubernetes<\/li>\n\n\n\n<li>outils cloud<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Aujourd\u2019hui, JSON repr\u00e9sente le format standard pour transmettre des donn\u00e9es structur\u00e9es sur le r\u00e9seau.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">L\u2019objectif de cette fiche consiste \u00e0 comprendre :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>la structure d\u2019un fichier JSON ;<\/li>\n\n\n\n<li>la syntaxe ;<\/li>\n\n\n\n<li>les types de donn\u00e9es ;<\/li>\n\n\n\n<li>la validation ;<\/li>\n\n\n\n<li>les outils d\u2019analyse ;<\/li>\n\n\n\n<li>les erreurs fr\u00e9quentes ;<\/li>\n\n\n\n<li>les usages concrets sous Linux et dans les infrastructures modernes.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">2. Sommaire<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Introduction<\/li>\n\n\n\n<li>Sommaire<\/li>\n\n\n\n<li>Synth\u00e8se Markdown pour ta fiche bristol<\/li>\n\n\n\n<li>Comprendre le format JSON<\/li>\n\n\n\n<li>Structure d\u2019un fichier JSON<\/li>\n\n\n\n<li>Types de donn\u00e9es JSON<\/li>\n\n\n\n<li>Cr\u00e9er et lire un fichier JSON<\/li>\n\n\n\n<li>Validation et analyse JSON<\/li>\n\n\n\n<li>JSON et les API REST<\/li>\n\n\n\n<li>JSON dans les fichiers de configuration<\/li>\n\n\n\n<li>Commandes utiles et d\u00e9pannage<\/li>\n\n\n\n<li>Logs et analyse des erreurs<\/li>\n\n\n\n<li>Bonnes pratiques de s\u00e9curit\u00e9<\/li>\n\n\n\n<li>Erreurs fr\u00e9quentes<\/li>\n\n\n\n<li>Conclusion<\/li>\n\n\n\n<li>Pour aller plus loin<\/li>\n\n\n\n<li>Liens utiles<\/li>\n\n\n\n<li>Propositions de TP<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">Synth\u00e8se Markdown pour ta fiche bristol<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code># JSON<br><br>## Structure de base<br><br>{<br>  \"nom\": \"serveur-web\",<br>  \"port\": 80,<br>  \"ssl\": true<br>}<br><br>## Types disponibles<br><br>- string<br>- number<br>- boolean<br>- array<br>- object<br>- null<br><br>## Tableau JSON<br><br>{<br>  \"services\": &#91;<br>    \"apache2\",<br>    \"mariadb\",<br>    \"docker\"<br>  ]<br>}<br><br>## V\u00e9rifier un JSON<br><br>jq . fichier.json<br><br>## Lire une cl\u00e9 avec jq<br><br>jq '.nom' fichier.json<br><br>## Formatter un JSON<br><br>python3 -m json.tool fichier.json<br><br>## Exemple API REST<br><br>curl http:\/\/api.exemple.local\/data<br><br>## Emplacement fr\u00e9quent<br><br>\/etc\/<br>\/opt\/<br>\/var\/lib\/<br>\/srv\/<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">3. Comprendre le format JSON<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">JSON repose sur une structure simple compos\u00e9e :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>d\u2019objets ;<\/li>\n\n\n\n<li>de tableaux ;<\/li>\n\n\n\n<li>de cl\u00e9s ;<\/li>\n\n\n\n<li>de valeurs.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Le format reste lisible par un humain tout en \u00e9tant tr\u00e8s simple \u00e0 parser par une machine.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Exemple simple :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>{<br>  \"hostname\": \"srv-web-01\",<br>  \"ip\": \"192.168.1.10\",<br>  \"ssh\": true<br>}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Ici :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>hostname<\/code> repr\u00e9sente une cha\u00eene de caract\u00e8res ;<\/li>\n\n\n\n<li><code>ip<\/code> contient une adresse IP ;<\/li>\n\n\n\n<li><code>ssh<\/code> contient une valeur bool\u00e9enne.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">JSON utilise :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>des accolades <code>{}<\/code> pour les objets ;<\/li>\n\n\n\n<li>des crochets <code>[]<\/code> pour les tableaux.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">4. Structure d\u2019un fichier JSON<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Arborescence typique :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>config\/<br>\u2514\u2500\u2500 application.json<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Exemple complet :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>{<br>  \"serveur\": {<br>    \"nom\": \"web01\",<br>    \"adresse\": \"192.168.1.20\",<br>    \"services\": &#91;<br>      \"nginx\",<br>      \"php\",<br>      \"mariadb\"<br>    ]<br>  }<br>}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Le fichier contient :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>un objet principal ;<\/li>\n\n\n\n<li>un sous-objet <code>serveur<\/code> ;<\/li>\n\n\n\n<li>un tableau <code>services<\/code>.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">5. Types de donn\u00e9es JSON<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">5.1 Cha\u00eene de caract\u00e8res<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>{<br>  \"nom\": \"debian\"<br>}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">5.2 Nombre<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>{<br>  \"port\": 443<br>}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">5.3 Bool\u00e9en<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>{<br>  \"ssl\": true<br>}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Valeurs possibles :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>true<\/code><\/li>\n\n\n\n<li><code>false<\/code><\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">5.4 Tableau<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>{<br>  \"dns\": &#91;<br>    \"1.1.1.1\",<br>    \"8.8.8.8\"<br>  ]<br>}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">5.5 Objet<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>{<br>  \"reseau\": {<br>    \"ip\": \"192.168.1.10\",<br>    \"masque\": \"255.255.255.0\"<br>  }<br>}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">5.6 Valeur null<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>{<br>  \"proxy\": null<br>}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">6. Cr\u00e9er et lire un fichier JSON<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">6.1 Cr\u00e9ation manuelle<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Fichier :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/etc\/app\/config.json<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Cr\u00e9ation :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo nano \/etc\/app\/config.json<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">6.2 Exemple complet de configuration<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>{<br>  \"application\": \"supervision\",<br>  \"version\": \"1.0\",<br>  \"serveur\": {<br>    \"host\": \"127.0.0.1\",<br>    \"port\": 8080<br>  },<br>  \"authentification\": {<br>    \"active\": true,<br>    \"utilisateur\": \"admin\"<br>  },<br>  \"services\": &#91;<br>    \"mqtt\",<br>    \"database\",<br>    \"web\"<br>  ]<br>}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">6.3 Lecture avec jq<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Installation :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt update<br>sudo apt install jq -y<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Lecture compl\u00e8te :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>jq . \/etc\/app\/config.json<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Le point <code>.<\/code> signifie :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>afficher tout le contenu JSON.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Lecture d\u2019une cl\u00e9 :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>jq '.serveur.port' \/etc\/app\/config.json<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">R\u00e9sultat :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>8080<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">7. Validation et analyse JSON<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">JSON exige une syntaxe stricte.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Les erreurs les plus fr\u00e9quentes :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>virgule oubli\u00e9e ;<\/li>\n\n\n\n<li>guillemet manquant ;<\/li>\n\n\n\n<li>accolade non ferm\u00e9e ;<\/li>\n\n\n\n<li>commentaire ajout\u00e9 ;<\/li>\n\n\n\n<li>mauvaise structure.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">7.1 Validation avec jq<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>jq . fichier.json<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Si le fichier contient une erreur :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>parse error: Expected separator between values<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">7.2 Validation avec Python<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>python3 -m json.tool fichier.json<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Cette commande :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>valide le JSON ;<\/li>\n\n\n\n<li>reformate le contenu.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">8. JSON et les API REST<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Les API REST utilisent tr\u00e8s souvent JSON comme format d\u2019\u00e9change.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Exemple :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl http:\/\/192.168.1.50\/api\/users<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">R\u00e9ponse :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;<br>  {<br>    \"id\": 1,<br>    \"nom\": \"alice\"<br>  },<br>  {<br>    \"id\": 2,<br>    \"nom\": \"bob\"<br>  }<br>]<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Analyse avec jq<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>curl http:\/\/192.168.1.50\/api\/users | jq .<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Extraire uniquement les noms :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl http:\/\/192.168.1.50\/api\/users | jq '.&#91;].nom'<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">9. JSON dans les fichiers de configuration<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">De nombreux outils utilisent JSON.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">9.1 Docker<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Fichier :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/etc\/docker\/daemon.json<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Exemple :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>{<br>  \"log-driver\": \"json-file\",<br>  \"log-opts\": {<br>    \"max-size\": \"100m\"<br>  }<br>}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">9.2 VSCode<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Fichier :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~\/.config\/Code\/User\/settings.json<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">9.3 Elasticsearch<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Elasticsearch utilise massivement JSON pour :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>les requ\u00eates ;<\/li>\n\n\n\n<li>les r\u00e9ponses ;<\/li>\n\n\n\n<li>les index.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">10. Fichiers importants<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/etc\/docker\/daemon.json<br>~\/.config\/Code\/User\/settings.json<br>\/etc\/app\/config.json<br>\/var\/lib\/<br>\/srv\/<br>\/opt\/<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">11. Commandes utiles et d\u00e9pannage<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Installer jq<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt install jq -y<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Options :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>install<\/code> : installe un paquet ;<\/li>\n\n\n\n<li><code>-y<\/code> : accepte automatiquement la confirmation.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">V\u00e9rifier un JSON<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>jq . fichier.json<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Reformater un JSON<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>python3 -m json.tool fichier.json<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Lire une cl\u00e9<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>jq '.port' fichier.json<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Lire un tableau<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>jq '.services&#91;]' fichier.json<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Lire une API REST<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>curl http:\/\/api.local\/data | jq .<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">V\u00e9rifier la validit\u00e9 avec Node.js<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>node -e \"JSON.parse(require('fs').readFileSync('fichier.json'))\"<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">12. Logs et analyse des erreurs<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">JSON appara\u00eet souvent dans les logs modernes.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Emplacements fr\u00e9quents<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>\/var\/log\/<br>\/var\/log\/syslog<br>\/var\/log\/nginx\/<br>\/var\/log\/apache2\/<br>\/var\/log\/docker.log<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Exemple avec journalctl<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>journalctl -xe<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Options :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>-x<\/code> : ajoute des explications ;<\/li>\n\n\n\n<li><code>-e<\/code> : saute \u00e0 la fin du journal.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Rechercher des erreurs JSON<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>grep -i json \/var\/log\/syslog<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Docker et logs JSON<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Docker stocke souvent les logs en JSON.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">R\u00e9pertoire :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/var\/lib\/docker\/containers\/<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Lecture :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>jq . fichier.log<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">13. Bonnes pratiques de s\u00e9curit\u00e9<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ne stocke jamais :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>des mots de passe en clair ;<\/li>\n\n\n\n<li>des tokens API ;<\/li>\n\n\n\n<li>des cl\u00e9s priv\u00e9es.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u00c9vite les permissions trop ouvertes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Mauvaise pratique :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>chmod 777 config.json<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Bonne pratique :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>chmod 640 config.json<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Limiter les acc\u00e8s :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>chown root:app config.json<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Si un service \u00e9coute sur le r\u00e9seau via une API JSON, ouvre uniquement les ports n\u00e9cessaires.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Exemple UFW :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo ufw allow 8080\/tcp<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Limiter \u00e0 un sous-r\u00e9seau :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo ufw allow from 192.168.1.0\/24 to any port 8080 proto tcp<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">14. Erreurs fr\u00e9quentes<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Virgule finale interdite<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Incorrect :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>{<br>  \"port\": 80,<br>}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Correct :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>{<br>  \"port\": 80<br>}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Commentaires interdits<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Incorrect :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>{<br>  \/\/ commentaire<br>  \"port\": 80<br>}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">JSON n\u2019accepte pas les commentaires.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Guillemets obligatoires<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Incorrect :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>{<br>  port: 80<br>}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Correct :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>{<br>  \"port\": 80<br>}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">15. Conclusion<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">JSON constitue aujourd\u2019hui un format incontournable dans les infrastructures modernes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Tu le retrouves dans :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>les API ;<\/li>\n\n\n\n<li>les applications web ;<\/li>\n\n\n\n<li>les outils cloud ;<\/li>\n\n\n\n<li>les conteneurs ;<\/li>\n\n\n\n<li>les scripts d\u2019automatisation ;<\/li>\n\n\n\n<li>les outils DevOps.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Ma\u00eetriser JSON permet :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>d\u2019automatiser des t\u00e2ches ;<\/li>\n\n\n\n<li>d\u2019interagir avec des API ;<\/li>\n\n\n\n<li>de comprendre les applications modernes ;<\/li>\n\n\n\n<li>de diagnostiquer des erreurs rapidement.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">16. Pour aller plus loin<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Tu peux approfondir :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>JSON Schema ;<\/li>\n\n\n\n<li>les API REST ;<\/li>\n\n\n\n<li>jq avanc\u00e9 ;<\/li>\n\n\n\n<li>Elasticsearch ;<\/li>\n\n\n\n<li>Docker ;<\/li>\n\n\n\n<li>Kubernetes ;<\/li>\n\n\n\n<li>Node-RED ;<\/li>\n\n\n\n<li>YAML ;<\/li>\n\n\n\n<li>s\u00e9rialisation de donn\u00e9es.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">17. Liens vers les sites officiels, mooc et contenus p\u00e9dagogiques<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Documentation officielle JSON :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.json.org\/json-fr.html\">https:\/\/www.json.org\/json-fr.html<\/a><br>Pr\u00e9sentation officielle du format JSON en fran\u00e7ais.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">RFC officielle :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/datatracker.ietf.org\/doc\/html\/rfc8259\">https:\/\/datatracker.ietf.org\/doc\/html\/rfc8259<\/a><br>Sp\u00e9cification officielle du format JSON.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Documentation jq :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/jqlang.github.io\/jq\/manual\/\">https:\/\/jqlang.github.io\/jq\/manual\/<\/a><br>Documentation officielle de jq avec exemples avanc\u00e9s.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Documentation Python JSON :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/docs.python.org\/fr\/3\/library\/json.html\">https:\/\/docs.python.org\/fr\/3\/library\/json.html<\/a><br>Module officiel Python pour manipuler JSON.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">OpenClassrooms \u2014 Comprendre les API REST :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a>https:\/\/openclassrooms.com\/fr\/courses\/3449001-utilisez-des-api-rest-dans-vos-projets-web<\/a><br>Tr\u00e8s bon cours pour comprendre JSON dans les API.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">OpenClassrooms \u2014 Apprenez \u00e0 programmer avec Python :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a>https:\/\/openclassrooms.com\/fr\/courses\/235344-apprenez-a-programmer-en-python<\/a><br>Explique la manipulation JSON en Python.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Documentation Docker daemon.json :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/docs.docker.com\/engine\/daemon\/\">https:\/\/docs.docker.com\/engine\/daemon\/<\/a><br>Configuration officielle Docker via JSON.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Documentation Debian jq :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/packages.debian.org\/bookworm\/jq\">https:\/\/packages.debian.org\/bookworm\/jq<\/a><br>Paquet officiel Debian jq.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">18. Propositions de TP pour s\u2019exercer<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">TP 1 \u2014 Cr\u00e9er un fichier JSON de configuration<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Objectif :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>cr\u00e9er un fichier JSON valide ;<\/li>\n\n\n\n<li>le v\u00e9rifier avec jq.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">TP 2 \u2014 Parser une API REST<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Objectif :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>utiliser curl ;<\/li>\n\n\n\n<li>extraire des donn\u00e9es avec jq.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">TP 3 \u2014 Cr\u00e9er un inventaire r\u00e9seau JSON<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Cr\u00e9er un fichier contenant :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>hostname ;<\/li>\n\n\n\n<li>IP ;<\/li>\n\n\n\n<li>VLAN ;<\/li>\n\n\n\n<li>syst\u00e8me ;<\/li>\n\n\n\n<li>services.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">TP 4 \u2014 D\u00e9velopper un script Python JSON<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Objectif :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>lire un fichier JSON ;<\/li>\n\n\n\n<li>modifier une valeur ;<\/li>\n\n\n\n<li>sauvegarder le r\u00e9sultat.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">TP 5 \u2014 D\u00e9boguer un JSON cass\u00e9<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Objectif :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>corriger plusieurs erreurs de syntaxe ;<\/li>\n\n\n\n<li>utiliser jq et python3 pour valider le fichier.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>1. Introduction JSON signifie JavaScript Object Notation. Ce format permet d\u2019\u00e9changer des donn\u00e9es entre des applications, des API, des services web ou des scripts. Dans un BTS CIEL ou SIO, tu rencontres JSON partout : Aujourd\u2019hui, JSON repr\u00e9sente le format standard pour transmettre des donn\u00e9es structur\u00e9es sur le r\u00e9seau. L\u2019objectif de cette fiche consiste \u00e0 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[29],"tags":[55],"class_list":["post-447","post","type-post","status-publish","format-standard","hentry","category-administration-systeme","tag-json"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Fiche json - Eryann Breizh SecOps<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/eryann.fr\/index.php\/administration-systeme\/fiche-json\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Fiche json - Eryann Breizh SecOps\" \/>\n<meta property=\"og:description\" content=\"1. Introduction JSON signifie JavaScript Object Notation. Ce format permet d\u2019\u00e9changer des donn\u00e9es entre des applications, des API, des services web ou des scripts. Dans un BTS CIEL ou SIO, tu rencontres JSON partout : Aujourd\u2019hui, JSON repr\u00e9sente le format standard pour transmettre des donn\u00e9es structur\u00e9es sur le r\u00e9seau. L\u2019objectif de cette fiche consiste \u00e0 [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/eryann.fr\/index.php\/administration-systeme\/fiche-json\/\" \/>\n<meta property=\"og:site_name\" content=\"Eryann Breizh SecOps\" \/>\n<meta property=\"article:published_time\" content=\"2026-05-25T15:56:03+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-05-25T15:56:05+00:00\" \/>\n<meta name=\"author\" content=\"wpadmin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u00c9crit par\" \/>\n\t<meta name=\"twitter:data1\" content=\"wpadmin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/eryann.fr\\\/index.php\\\/administration-systeme\\\/fiche-json\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/eryann.fr\\\/index.php\\\/administration-systeme\\\/fiche-json\\\/\"},\"author\":{\"name\":\"wpadmin\",\"@id\":\"https:\\\/\\\/eryann.fr\\\/#\\\/schema\\\/person\\\/d2ee98d2385cd045ed4fe1c07ca320b5\"},\"headline\":\"Fiche json\",\"datePublished\":\"2026-05-25T15:56:03+00:00\",\"dateModified\":\"2026-05-25T15:56:05+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/eryann.fr\\\/index.php\\\/administration-systeme\\\/fiche-json\\\/\"},\"wordCount\":932,\"publisher\":{\"@id\":\"https:\\\/\\\/eryann.fr\\\/#organization\"},\"keywords\":[\"json\"],\"articleSection\":[\"Administration syst\u00e8me\"],\"inLanguage\":\"fr-FR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/eryann.fr\\\/index.php\\\/administration-systeme\\\/fiche-json\\\/\",\"url\":\"https:\\\/\\\/eryann.fr\\\/index.php\\\/administration-systeme\\\/fiche-json\\\/\",\"name\":\"Fiche json - Eryann Breizh SecOps\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/eryann.fr\\\/#website\"},\"datePublished\":\"2026-05-25T15:56:03+00:00\",\"dateModified\":\"2026-05-25T15:56:05+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/eryann.fr\\\/index.php\\\/administration-systeme\\\/fiche-json\\\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/eryann.fr\\\/index.php\\\/administration-systeme\\\/fiche-json\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/eryann.fr\\\/index.php\\\/administration-systeme\\\/fiche-json\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/eryann.fr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Fiche json\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/eryann.fr\\\/#website\",\"url\":\"https:\\\/\\\/eryann.fr\\\/\",\"name\":\"Eryann Breizh SecOps\",\"description\":\"Fiches techniques &amp; labs en syst\u00e8mes et r\u00e9seaux poor les \u00e9tudiants en BTS CEIL ET SIO\",\"publisher\":{\"@id\":\"https:\\\/\\\/eryann.fr\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/eryann.fr\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/eryann.fr\\\/#organization\",\"name\":\"Breizh Sec Ops\",\"url\":\"https:\\\/\\\/eryann.fr\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/eryann.fr\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/eryann.fr\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/cropped-088112b9-fd28-4b18-b02d-4d9dded3e900-e1777846396685.png\",\"contentUrl\":\"https:\\\/\\\/eryann.fr\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/cropped-088112b9-fd28-4b18-b02d-4d9dded3e900-e1777846396685.png\",\"width\":1246,\"height\":229,\"caption\":\"Breizh Sec Ops\"},\"image\":{\"@id\":\"https:\\\/\\\/eryann.fr\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/eryann.fr\\\/#\\\/schema\\\/person\\\/d2ee98d2385cd045ed4fe1c07ca320b5\",\"name\":\"wpadmin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d71b4031c3d015de3ca68c137413277e548b331b07db0acf781b9379b798eb3e?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d71b4031c3d015de3ca68c137413277e548b331b07db0acf781b9379b798eb3e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d71b4031c3d015de3ca68c137413277e548b331b07db0acf781b9379b798eb3e?s=96&d=mm&r=g\",\"caption\":\"wpadmin\"},\"sameAs\":[\"https:\\\/\\\/eryann.fr\"],\"url\":\"https:\\\/\\\/eryann.fr\\\/index.php\\\/author\\\/wpadmin\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Fiche json - Eryann Breizh SecOps","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/eryann.fr\/index.php\/administration-systeme\/fiche-json\/","og_locale":"fr_FR","og_type":"article","og_title":"Fiche json - Eryann Breizh SecOps","og_description":"1. Introduction JSON signifie JavaScript Object Notation. Ce format permet d\u2019\u00e9changer des donn\u00e9es entre des applications, des API, des services web ou des scripts. Dans un BTS CIEL ou SIO, tu rencontres JSON partout : Aujourd\u2019hui, JSON repr\u00e9sente le format standard pour transmettre des donn\u00e9es structur\u00e9es sur le r\u00e9seau. L\u2019objectif de cette fiche consiste \u00e0 [&hellip;]","og_url":"https:\/\/eryann.fr\/index.php\/administration-systeme\/fiche-json\/","og_site_name":"Eryann Breizh SecOps","article_published_time":"2026-05-25T15:56:03+00:00","article_modified_time":"2026-05-25T15:56:05+00:00","author":"wpadmin","twitter_card":"summary_large_image","twitter_misc":{"\u00c9crit par":"wpadmin","Dur\u00e9e de lecture estim\u00e9e":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/eryann.fr\/index.php\/administration-systeme\/fiche-json\/#article","isPartOf":{"@id":"https:\/\/eryann.fr\/index.php\/administration-systeme\/fiche-json\/"},"author":{"name":"wpadmin","@id":"https:\/\/eryann.fr\/#\/schema\/person\/d2ee98d2385cd045ed4fe1c07ca320b5"},"headline":"Fiche json","datePublished":"2026-05-25T15:56:03+00:00","dateModified":"2026-05-25T15:56:05+00:00","mainEntityOfPage":{"@id":"https:\/\/eryann.fr\/index.php\/administration-systeme\/fiche-json\/"},"wordCount":932,"publisher":{"@id":"https:\/\/eryann.fr\/#organization"},"keywords":["json"],"articleSection":["Administration syst\u00e8me"],"inLanguage":"fr-FR"},{"@type":"WebPage","@id":"https:\/\/eryann.fr\/index.php\/administration-systeme\/fiche-json\/","url":"https:\/\/eryann.fr\/index.php\/administration-systeme\/fiche-json\/","name":"Fiche json - Eryann Breizh SecOps","isPartOf":{"@id":"https:\/\/eryann.fr\/#website"},"datePublished":"2026-05-25T15:56:03+00:00","dateModified":"2026-05-25T15:56:05+00:00","breadcrumb":{"@id":"https:\/\/eryann.fr\/index.php\/administration-systeme\/fiche-json\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/eryann.fr\/index.php\/administration-systeme\/fiche-json\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/eryann.fr\/index.php\/administration-systeme\/fiche-json\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/eryann.fr\/"},{"@type":"ListItem","position":2,"name":"Fiche json"}]},{"@type":"WebSite","@id":"https:\/\/eryann.fr\/#website","url":"https:\/\/eryann.fr\/","name":"Eryann Breizh SecOps","description":"Fiches techniques &amp; labs en syst\u00e8mes et r\u00e9seaux poor les \u00e9tudiants en BTS CEIL ET SIO","publisher":{"@id":"https:\/\/eryann.fr\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/eryann.fr\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Organization","@id":"https:\/\/eryann.fr\/#organization","name":"Breizh Sec Ops","url":"https:\/\/eryann.fr\/","logo":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/eryann.fr\/#\/schema\/logo\/image\/","url":"https:\/\/eryann.fr\/wp-content\/uploads\/2026\/05\/cropped-088112b9-fd28-4b18-b02d-4d9dded3e900-e1777846396685.png","contentUrl":"https:\/\/eryann.fr\/wp-content\/uploads\/2026\/05\/cropped-088112b9-fd28-4b18-b02d-4d9dded3e900-e1777846396685.png","width":1246,"height":229,"caption":"Breizh Sec Ops"},"image":{"@id":"https:\/\/eryann.fr\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/eryann.fr\/#\/schema\/person\/d2ee98d2385cd045ed4fe1c07ca320b5","name":"wpadmin","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/secure.gravatar.com\/avatar\/d71b4031c3d015de3ca68c137413277e548b331b07db0acf781b9379b798eb3e?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/d71b4031c3d015de3ca68c137413277e548b331b07db0acf781b9379b798eb3e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d71b4031c3d015de3ca68c137413277e548b331b07db0acf781b9379b798eb3e?s=96&d=mm&r=g","caption":"wpadmin"},"sameAs":["https:\/\/eryann.fr"],"url":"https:\/\/eryann.fr\/index.php\/author\/wpadmin\/"}]}},"_links":{"self":[{"href":"https:\/\/eryann.fr\/index.php\/wp-json\/wp\/v2\/posts\/447","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/eryann.fr\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/eryann.fr\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/eryann.fr\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/eryann.fr\/index.php\/wp-json\/wp\/v2\/comments?post=447"}],"version-history":[{"count":1,"href":"https:\/\/eryann.fr\/index.php\/wp-json\/wp\/v2\/posts\/447\/revisions"}],"predecessor-version":[{"id":448,"href":"https:\/\/eryann.fr\/index.php\/wp-json\/wp\/v2\/posts\/447\/revisions\/448"}],"wp:attachment":[{"href":"https:\/\/eryann.fr\/index.php\/wp-json\/wp\/v2\/media?parent=447"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/eryann.fr\/index.php\/wp-json\/wp\/v2\/categories?post=447"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/eryann.fr\/index.php\/wp-json\/wp\/v2\/tags?post=447"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}