{
  "department": "31",
  "rulesetVersion": 10,
  "crawlerVersion": 2,
  "crawledOn": "2026-10-17",
  "communes": {
    "total": 586,
    "withWebsite": 354,
    "reachable": 350,
    "pagesCrawled": 9095,
    "delegatedExcluded": 1
  },
  "checks": [
    {
      "code": "A11Y_DECLARATION",
      "kind": "LEGAL",
      "impact": "HIGH",
      "obligationCode": "A11Y_DECL",
      "pass": 153,
      "fail": 192,
      "unknown": 241,
      "notApplicable": 0,
      "failHighConfidence": 81
    },
    {
      "code": "A11Y_HOMEPAGE_MENTION",
      "kind": "LEGAL",
      "impact": "HIGH",
      "obligationCode": "A11Y_DECL",
      "pass": 133,
      "fail": 210,
      "unknown": 243,
      "notApplicable": 0,
      "failHighConfidence": 210
    },
    {
      "code": "A11Y_SCHEMA",
      "kind": "LEGAL",
      "impact": "HIGH",
      "obligationCode": "A11Y_DECL",
      "pass": 23,
      "fail": 315,
      "unknown": 248,
      "notApplicable": 0,
      "failHighConfidence": 268
    },
    {
      "code": "DPO_CONTACT",
      "kind": "LEGAL",
      "impact": "HIGH",
      "obligationCode": "DPO",
      "pass": 67,
      "fail": 278,
      "unknown": 241,
      "notApplicable": 0,
      "failHighConfidence": 237
    },
    {
      "code": "RGPD_POLICY",
      "kind": "LEGAL",
      "impact": "MEDIUM",
      "obligationCode": "RGPD_INFO",
      "pass": 291,
      "fail": 54,
      "unknown": 241,
      "notApplicable": 0,
      "failHighConfidence": 33
    },
    {
      "code": "MENTIONS_LEGALES",
      "kind": "LEGAL",
      "impact": "MEDIUM",
      "obligationCode": "LCEN",
      "pass": 301,
      "fail": 44,
      "unknown": 241,
      "notApplicable": 0,
      "failHighConfidence": 28
    },
    {
      "code": "ACTES_PUBLICATION",
      "kind": "LEGAL",
      "impact": "MEDIUM",
      "obligationCode": "ACTES",
      "pass": 48,
      "fail": 18,
      "unknown": 1,
      "notApplicable": 519,
      "failHighConfidence": 9
    },
    {
      "code": "CNIL_COOKIES",
      "kind": "LEGAL",
      "impact": "MEDIUM",
      "obligationCode": "RGPD_INFO",
      "pass": 261,
      "fail": 84,
      "unknown": 241,
      "notApplicable": 0,
      "failHighConfidence": 82
    },
    {
      "code": "NO_SITE",
      "kind": "TECHNICAL",
      "impact": "HIGH",
      "obligationCode": null,
      "pass": 350,
      "fail": 236,
      "unknown": 0,
      "notApplicable": 0,
      "failHighConfidence": 4
    },
    {
      "code": "HTTPS",
      "kind": "TECHNICAL",
      "impact": "HIGH",
      "obligationCode": null,
      "pass": 338,
      "fail": 12,
      "unknown": 236,
      "notApplicable": 0,
      "failHighConfidence": 12
    },
    {
      "code": "MOBILE_VIEWPORT",
      "kind": "TECHNICAL",
      "impact": "HIGH",
      "obligationCode": null,
      "pass": 237,
      "fail": 113,
      "unknown": 236,
      "notApplicable": 0,
      "failHighConfidence": 113
    },
    {
      "code": "HTML_WEIGHT",
      "kind": "TECHNICAL",
      "impact": "LOW",
      "obligationCode": null,
      "pass": 329,
      "fail": 21,
      "unknown": 236,
      "notApplicable": 0,
      "failHighConfidence": 21
    },
    {
      "code": "LAST_UPDATED",
      "kind": "TECHNICAL",
      "impact": "MEDIUM",
      "obligationCode": null,
      "pass": 313,
      "fail": 25,
      "unknown": 248,
      "notApplicable": 0,
      "failHighConfidence": 19
    },
    {
      "code": "CMS_FINGERPRINT",
      "kind": "TECHNICAL",
      "impact": "LOW",
      "obligationCode": null,
      "pass": 218,
      "fail": 0,
      "unknown": 368,
      "notApplicable": 0,
      "failHighConfidence": 0
    },
    {
      "code": "CMS_OUTDATED",
      "kind": "TECHNICAL",
      "impact": "HIGH",
      "obligationCode": null,
      "pass": 0,
      "fail": 14,
      "unknown": 572,
      "notApplicable": 0,
      "failHighConfidence": 14
    },
    {
      "code": "EMAIL_DOMAIN",
      "kind": "TECHNICAL",
      "impact": "MEDIUM",
      "obligationCode": null,
      "pass": 296,
      "fail": 284,
      "unknown": 6,
      "notApplicable": 0,
      "failHighConfidence": 284
    }
  ],
  "populationBands": [
    {
      "band": "moins de 500",
      "communes": 339,
      "declarationMissing": 68
    },
    {
      "band": "500 à 1 999",
      "communes": 133,
      "declarationMissing": 65
    },
    {
      "band": "2 000 à 4 999",
      "communes": 65,
      "declarationMissing": 40
    },
    {
      "band": "5 000 à 9 999",
      "communes": 30,
      "declarationMissing": 14
    },
    {
      "band": "10 000 et plus",
      "communes": 19,
      "declarationMissing": 5
    }
  ],
  "cms": [
    {
      "label": "wordpress",
      "count": 170
    },
    {
      "label": "inconnu",
      "count": 132
    },
    {
      "label": "joomla",
      "count": 14
    },
    {
      "label": "drupal",
      "count": 10
    },
    {
      "label": "intramuros",
      "count": 8
    },
    {
      "label": "wix",
      "count": 6
    },
    {
      "label": "e-monsite",
      "count": 4
    },
    {
      "label": "typo3",
      "count": 4
    },
    {
      "label": "sitew",
      "count": 1
    },
    {
      "label": "spip",
      "count": 1
    }
  ],
  "freshness": [
    {
      "label": "moins de 6 mois",
      "count": 303
    },
    {
      "label": "6 à 12 mois",
      "count": 10
    },
    {
      "label": "1 à 2 ans",
      "count": 13
    },
    {
      "label": "2 à 5 ans",
      "count": 6
    },
    {
      "label": "plus de 5 ans",
      "count": 6
    },
    {
      "label": "inconnu",
      "count": 12
    }
  ],
  "obligationsMet": [
    {
      "label": "aucune",
      "count": 34
    },
    {
      "label": "1 sur 6",
      "count": 25
    },
    {
      "label": "2 sur 6",
      "count": 104
    },
    {
      "label": "3 sur 6",
      "count": 39
    },
    {
      "label": "4 sur 6",
      "count": 107
    },
    {
      "label": "5 sur 6",
      "count": 26
    },
    {
      "label": "6 sur 6",
      "count": 10
    }
  ],
  "obligationsMeasured": 345,
  "unreachable": [
    {
      "label": "aucun site connu",
      "count": 232
    },
    {
      "label": "site en ligne, accès refusé au robot",
      "count": 0
    },
    {
      "label": "adresse publiée en erreur",
      "count": 0
    },
    {
      "label": "erreur du serveur au moment du relevé",
      "count": 0
    },
    {
      "label": "domaine ou certificat hors service",
      "count": 3
    },
    {
      "label": "autre",
      "count": 1
    }
  ],
  "map": [
    {
      "insee": "31001",
      "name": "Agassac",
      "lat": 43.374,
      "lon": 0.8866,
      "population": 115,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31002",
      "name": "Aignes",
      "lat": 43.3334,
      "lon": 1.5866,
      "population": 242,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 21,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        }
      ]
    },
    {
      "insee": "31003",
      "name": "Aigrefeuille",
      "lat": 43.5684,
      "lon": 1.5845,
      "population": 1369,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://aigrefeuille31.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://aigrefeuille31.fr/"
        }
      ]
    },
    {
      "insee": "31004",
      "name": "Ayguesvives",
      "lat": 43.4236,
      "lon": 1.5965,
      "population": 2812,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 32,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://ayguesvives.fr/declaration-daccessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ayguesvives.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ayguesvives.fr/politique-de-confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ayguesvives.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ayguesvives.fr/"
        }
      ]
    },
    {
      "insee": "31005",
      "name": "Alan",
      "lat": 43.2175,
      "lon": 0.9301,
      "population": 292,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://alan-village.fr/?page_id=14763"
        }
      ]
    },
    {
      "insee": "31006",
      "name": "Albiac",
      "lat": 43.5547,
      "lon": 1.7864,
      "population": 231,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31007",
      "name": "Ambax",
      "lat": 43.3692,
      "lon": 0.9387,
      "population": 57,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31008",
      "name": "Anan",
      "lat": 43.3541,
      "lon": 0.8139,
      "population": 267,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-anan.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-anan.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-anan.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-anan.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31009",
      "name": "Antichan-de-Frontignes",
      "lat": 42.9679,
      "lon": 0.6744,
      "population": 158,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31010",
      "name": "Antignac",
      "lat": 42.8305,
      "lon": 0.5876,
      "population": 83,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31011",
      "name": "Arbas",
      "lat": 42.9925,
      "lon": 0.9036,
      "population": 285,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 25,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://arbas.fr/"
        }
      ]
    },
    {
      "insee": "31012",
      "name": "Arbon",
      "lat": 43.0017,
      "lon": 0.7311,
      "population": 93,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31013",
      "name": "Ardiège",
      "lat": 43.0647,
      "lon": 0.6424,
      "population": 381,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-ardiege.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-ardiege.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-ardiege.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-ardiege.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31014",
      "name": "Arguenos",
      "lat": 42.9589,
      "lon": 0.7284,
      "population": 90,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31015",
      "name": "Argut-Dessous",
      "lat": 42.8924,
      "lon": 0.7151,
      "population": 21,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31017",
      "name": "Arlos",
      "lat": 42.8782,
      "lon": 0.6933,
      "population": 106,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31018",
      "name": "Arnaud-Guilhem",
      "lat": 43.1466,
      "lon": 0.901,
      "population": 230,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://arnaud-guilhem.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://arnaud-guilhem.fr/"
        }
      ]
    },
    {
      "insee": "31019",
      "name": "Artigue",
      "lat": 42.8268,
      "lon": 0.6409,
      "population": 36,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31020",
      "name": "Aspet",
      "lat": 43.0127,
      "lon": 0.8076,
      "population": 907,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-aspet31.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-aspet31.fr/mentions-legales"
        }
      ]
    },
    {
      "insee": "31021",
      "name": "Aspret-Sarrat",
      "lat": 43.0694,
      "lon": 0.7181,
      "population": 130,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31022",
      "name": "Aucamville",
      "lat": 43.6714,
      "lon": 1.4243,
      "population": 9623,
      "declaration": "PASS",
      "obligationsMet": 6,
      "obligationsDecided": 6,
      "pagesCrawled": 32,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-aucamville.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-aucamville.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-aucamville.fr/accessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "links"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-aucamville.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-aucamville.fr/"
        }
      ]
    },
    {
      "insee": "31023",
      "name": "Aulon",
      "lat": 43.1888,
      "lon": 0.8108,
      "population": 313,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31024",
      "name": "Auragne",
      "lat": 43.3922,
      "lon": 1.51,
      "population": 480,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31025",
      "name": "Aureville",
      "lat": 43.4794,
      "lon": 1.4574,
      "population": 1048,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        }
      ]
    },
    {
      "insee": "31026",
      "name": "Auriac-sur-Vendinelle",
      "lat": 43.5172,
      "lon": 1.8258,
      "population": 1087,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31027",
      "name": "Auribail",
      "lat": 43.3485,
      "lon": 1.3724,
      "population": 193,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-auribail.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-auribail.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-auribail.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-auribail.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31028",
      "name": "Aurignac",
      "lat": 43.2133,
      "lon": 0.8701,
      "population": 1229,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://aurignac.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://aurignac.fr/"
        }
      ]
    },
    {
      "insee": "31029",
      "name": "Aurin",
      "lat": 43.5355,
      "lon": 1.6804,
      "population": 338,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 15,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-aurin.fr/mentionsLegales.php"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-aurin.fr/"
        }
      ]
    },
    {
      "insee": "31030",
      "name": "Ausseing",
      "lat": 43.1561,
      "lon": 1.0284,
      "population": 91,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31031",
      "name": "Ausson",
      "lat": 43.0916,
      "lon": 0.5894,
      "population": 596,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 5,
      "pagesCrawled": 4,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31032",
      "name": "Aussonne",
      "lat": 43.6841,
      "lon": 1.3278,
      "population": 7997,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://aussonne.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://aussonne.fr/"
        }
      ]
    },
    {
      "insee": "31033",
      "name": "Auterive",
      "lat": 43.3579,
      "lon": 1.4822,
      "population": 10456,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://auterive31.fr/systeme/declaration-accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://auterive31.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://auterive31.fr/systeme/politique-de-confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://auterive31.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://auterive31.fr/"
        }
      ]
    },
    {
      "insee": "31034",
      "name": "Auzas",
      "lat": 43.1737,
      "lon": 0.8948,
      "population": 222,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://auzas.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://auzas.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://auzas.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://auzas.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31035",
      "name": "Auzeville-Tolosane",
      "lat": 43.5285,
      "lon": 1.4896,
      "population": 4665,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://auzeville.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://auzeville.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://auzeville.fr/politique-de-confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://auzeville.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://auzeville.fr/"
        }
      ]
    },
    {
      "insee": "31036",
      "name": "Auzielle",
      "lat": 43.5411,
      "lon": 1.5691,
      "population": 1635,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://auzielle.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://auzielle.fr/"
        }
      ]
    },
    {
      "insee": "31037",
      "name": "Avignonet-Lauragais",
      "lat": 43.3773,
      "lon": 1.7777,
      "population": 1573,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://avignonet-lauragais.fr/"
        }
      ]
    },
    {
      "insee": "31038",
      "name": "Azas",
      "lat": 43.7216,
      "lon": 1.6763,
      "population": 675,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-azas.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-azas.fr/"
        }
      ]
    },
    {
      "insee": "31039",
      "name": "Bachas",
      "lat": 43.2495,
      "lon": 0.9408,
      "population": 90,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31040",
      "name": "Bachos",
      "lat": 42.9008,
      "lon": 0.607,
      "population": 31,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31041",
      "name": "Bagiry",
      "lat": 42.9803,
      "lon": 0.6235,
      "population": 105,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31042",
      "name": "Bagnères-de-Luchon",
      "lat": 42.7492,
      "lon": 0.6264,
      "population": 2076,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://mairie-luchon.fr/rgpd"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://mairie-luchon.fr/mentions-legales"
        }
      ]
    },
    {
      "insee": "31043",
      "name": "Balesta",
      "lat": 43.2028,
      "lon": 0.5644,
      "population": 169,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31044",
      "name": "Balma",
      "lat": 43.6108,
      "lon": 1.5037,
      "population": 17772,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-balma.fr/systeme/declaration-accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://mairie-balma.fr/systeme/politique-de-confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-balma.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-balma.fr/"
        }
      ]
    },
    {
      "insee": "31045",
      "name": "Barbazan",
      "lat": 43.0344,
      "lon": 0.6223,
      "population": 512,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-barbazan31.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-barbazan31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-barbazan31.fr/fr/mentions-legales-credits.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-barbazan31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31046",
      "name": "Baren",
      "lat": 42.8677,
      "lon": 0.6356,
      "population": 9,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31047",
      "name": "Bax",
      "lat": 43.2269,
      "lon": 1.2892,
      "population": 101,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31048",
      "name": "Baziège",
      "lat": 43.4614,
      "lon": 1.6294,
      "population": 3583,
      "declaration": "FAIL",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://baziege.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://baziege.fr/confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://baziege.fr/confidentialite"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://baziege.fr/"
        }
      ]
    },
    {
      "insee": "31049",
      "name": "Bazus",
      "lat": 43.7347,
      "lon": 1.5232,
      "population": 603,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31050",
      "name": "Beauchalot",
      "lat": 43.114,
      "lon": 0.868,
      "population": 662,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31051",
      "name": "Beaufort",
      "lat": 43.4545,
      "lon": 1.1069,
      "population": 475,
      "declaration": "PASS",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 25,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-beaufort31.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-beaufort31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31052",
      "name": "Beaumont-sur-Lèze",
      "lat": 43.3792,
      "lon": 1.357,
      "population": 1647,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://beaumont-sur-leze.net/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://beaumont-sur-leze.net/"
        }
      ]
    },
    {
      "insee": "31053",
      "name": "Beaupuy",
      "lat": 43.6517,
      "lon": 1.556,
      "population": 1283,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-beaupuy.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-beaupuy.fr/"
        }
      ]
    },
    {
      "insee": "31054",
      "name": "Beauteville",
      "lat": 43.349,
      "lon": 1.7336,
      "population": 193,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-beauteville.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-beauteville.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-beauteville.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-beauteville.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31055",
      "name": "Beauville",
      "lat": 43.4686,
      "lon": 1.7713,
      "population": 168,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31056",
      "name": "Beauzelle",
      "lat": 43.668,
      "lon": 1.3753,
      "population": 8713,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://beauzelle.fr/systeme/declaration-accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://beauzelle.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://beauzelle.fr/systeme/politique-de-confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://beauzelle.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://beauzelle.fr/"
        }
      ]
    },
    {
      "insee": "31057",
      "name": "Belberaud",
      "lat": 43.5045,
      "lon": 1.5709,
      "population": 1597,
      "declaration": "PASS",
      "obligationsMet": 6,
      "obligationsDecided": 6,
      "pagesCrawled": 32,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sicoval.fr/mentions-legales"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sicoval.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sicoval.fr/declaration-daccessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sicoval.fr/politiques-de-confidentialite-des-donnees"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sicoval.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sicoval.fr/"
        }
      ]
    },
    {
      "insee": "31058",
      "name": "Belbèze-de-Lauragais",
      "lat": 43.4375,
      "lon": 1.5556,
      "population": 125,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31059",
      "name": "Belbèze-en-Comminges",
      "lat": 43.1326,
      "lon": 1.0273,
      "population": 108,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31060",
      "name": "Bélesta-en-Lauragais",
      "lat": 43.4384,
      "lon": 1.8315,
      "population": 114,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31061",
      "name": "Bellegarde-Sainte-Marie",
      "lat": 43.6779,
      "lon": 1.0911,
      "population": 204,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31062",
      "name": "Bellesserre",
      "lat": 43.787,
      "lon": 1.1014,
      "population": 109,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31063",
      "name": "Benque",
      "lat": 43.2599,
      "lon": 0.9183,
      "population": 177,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31064",
      "name": "Benque-Dessous-et-Dessus",
      "lat": 42.8214,
      "lon": 0.5414,
      "population": 30,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31065",
      "name": "Bérat",
      "lat": 43.3771,
      "lon": 1.1742,
      "population": 3087,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 2,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31066",
      "name": "Bessières",
      "lat": 43.794,
      "lon": 1.5846,
      "population": 4310,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 31,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://bessieres.fr/cookies"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://bessieres.fr/"
        }
      ]
    },
    {
      "insee": "31067",
      "name": "Bezins-Garraux",
      "lat": 42.9372,
      "lon": 0.7083,
      "population": 46,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31068",
      "name": "Billière",
      "lat": 42.8196,
      "lon": 0.5309,
      "population": 32,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31069",
      "name": "Blagnac",
      "lat": 43.641,
      "lon": 1.377,
      "population": 27604,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 9,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-blagnac.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-blagnac.fr/"
        }
      ]
    },
    {
      "insee": "31070",
      "name": "Blajan",
      "lat": 43.2519,
      "lon": 0.6488,
      "population": 426,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31071",
      "name": "Bois-de-la-Pierre",
      "lat": 43.3404,
      "lon": 1.1611,
      "population": 470,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31072",
      "name": "Boissède",
      "lat": 43.4074,
      "lon": 0.8279,
      "population": 65,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31073",
      "name": "Bondigoux",
      "lat": 43.8455,
      "lon": 1.5455,
      "population": 766,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://bondigoux.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://bondigoux.fr/"
        }
      ]
    },
    {
      "insee": "31074",
      "name": "Bonrepos-Riquet",
      "lat": 43.6757,
      "lon": 1.6229,
      "population": 324,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 5,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://bonrepos-riquet.fr/index.php/accueil-site/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://bonrepos-riquet.fr/"
        }
      ]
    },
    {
      "insee": "31075",
      "name": "Bonrepos-sur-Aussonnelle",
      "lat": 43.5429,
      "lon": 1.1395,
      "population": 1241,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://bonrepos-sur-aussonnelle.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://bonrepos-sur-aussonnelle.fr/"
        }
      ]
    },
    {
      "insee": "31076",
      "name": "Bordes-de-Rivière",
      "lat": 43.1241,
      "lon": 0.6347,
      "population": 461,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31077",
      "name": "Le Born",
      "lat": 43.8952,
      "lon": 1.5394,
      "population": 652,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://leborn.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://leborn.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://leborn.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://leborn.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31078",
      "name": "Boudrac",
      "lat": 43.179,
      "lon": 0.5043,
      "population": 148,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31079",
      "name": "Bouloc",
      "lat": 43.7958,
      "lon": 1.4192,
      "population": 4618,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://mairie-bouloc.fr/politique-de-confidentialite-du-site-internet"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://mairie-bouloc.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://mairie-bouloc.fr/"
        }
      ]
    },
    {
      "insee": "31080",
      "name": "Boulogne-sur-Gesse",
      "lat": 43.2903,
      "lon": 0.649,
      "population": 1673,
      "declaration": "PASS",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://ville-boulogne-sur-gesse.fr/credits-mentions-legales"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-boulogne-sur-gesse.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-boulogne-sur-gesse.fr/"
        }
      ]
    },
    {
      "insee": "31081",
      "name": "Bourg-d'Oueil",
      "lat": 42.8616,
      "lon": 0.4859,
      "population": 14,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://bourgdoueil.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://bourgdoueil.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://bourgdoueil.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://bourgdoueil.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31082",
      "name": "Bourg-Saint-Bernard",
      "lat": 43.6069,
      "lon": 1.7028,
      "population": 1125,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://bourg-saint-bernard.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://bourg-saint-bernard.fr/fr/actualites.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://bourg-saint-bernard.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://bourg-saint-bernard.fr/fr/actualites.html"
        }
      ]
    },
    {
      "insee": "31083",
      "name": "Boussan",
      "lat": 43.2417,
      "lon": 0.8702,
      "population": 227,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31084",
      "name": "Boussens",
      "lat": 43.1747,
      "lon": 0.9594,
      "population": 1135,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-boussens.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-boussens.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-boussens.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-boussens.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31085",
      "name": "Boutx",
      "lat": 42.9169,
      "lon": 0.7722,
      "population": 249,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31086",
      "name": "Bouzin",
      "lat": 43.1884,
      "lon": 0.8865,
      "population": 82,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31087",
      "name": "Bragayrac",
      "lat": 43.4894,
      "lon": 1.068,
      "population": 311,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31088",
      "name": "Brax",
      "lat": 43.6154,
      "lon": 1.2309,
      "population": 3037,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 25,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-brax31.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-brax31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-brax31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-brax31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31089",
      "name": "Bretx",
      "lat": 43.7066,
      "lon": 1.1979,
      "population": 673,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-bretx31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-bretx31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31090",
      "name": "Brignemont",
      "lat": 43.7664,
      "lon": 0.9993,
      "population": 366,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-brignemont31.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-brignemont31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-brignemont31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-brignemont31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31091",
      "name": "Bruguières",
      "lat": 43.7258,
      "lon": 1.4105,
      "population": 6202,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-bruguieres.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-bruguieres.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-bruguieres.fr/accessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-bruguieres.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-bruguieres.fr/"
        }
      ]
    },
    {
      "insee": "31092",
      "name": "Burgalays",
      "lat": 42.8856,
      "lon": 0.6364,
      "population": 124,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31093",
      "name": "Le Burgaud",
      "lat": 43.7919,
      "lon": 1.1484,
      "population": 944,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-le-burgaud.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-le-burgaud.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-le-burgaud.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-le-burgaud.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31094",
      "name": "Buzet-sur-Tarn",
      "lat": 43.7721,
      "lon": 1.6099,
      "population": 2963,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://mairie-buzet-sur-tarn.fr/cookies"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-buzet-sur-tarn.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-buzet-sur-tarn.fr/"
        }
      ]
    },
    {
      "insee": "31095",
      "name": "Cabanac-Cazaux",
      "lat": 43.0354,
      "lon": 0.7416,
      "population": 128,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31096",
      "name": "Cabanac-Séguenville",
      "lat": 43.7898,
      "lon": 1.0209,
      "population": 194,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31097",
      "name": "Le Cabanial",
      "lat": 43.5237,
      "lon": 1.8706,
      "population": 472,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-le-cabanial.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-le-cabanial.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-le-cabanial.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-le-cabanial.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31098",
      "name": "Cadours",
      "lat": 43.725,
      "lon": 1.0489,
      "population": 1142,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-cadours.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-cadours.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-cadours.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-cadours.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31099",
      "name": "Caignac",
      "lat": 43.3182,
      "lon": 1.707,
      "population": 405,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://caignac.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://caignac.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://caignac.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://caignac.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31100",
      "name": "Calmont",
      "lat": 43.2832,
      "lon": 1.6251,
      "population": 2494,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 5,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://calmont31.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://calmont31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://calmont31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://calmont31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31101",
      "name": "Cambernard",
      "lat": 43.4643,
      "lon": 1.1785,
      "population": 499,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31102",
      "name": "Cambiac",
      "lat": 43.4911,
      "lon": 1.7928,
      "population": 236,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31103",
      "name": "Canens",
      "lat": 43.2178,
      "lon": 1.3367,
      "population": 63,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31104",
      "name": "Capens",
      "lat": 43.3354,
      "lon": 1.2607,
      "population": 637,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-capens31.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-capens31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-capens31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-capens31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31105",
      "name": "Caragoudes",
      "lat": 43.4982,
      "lon": 1.709,
      "population": 239,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-caragoudes.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-caragoudes.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-caragoudes.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-caragoudes.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31106",
      "name": "Caraman",
      "lat": 43.5324,
      "lon": 1.7487,
      "population": 2513,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-caraman.fr/"
        }
      ]
    },
    {
      "insee": "31107",
      "name": "Carbonne",
      "lat": 43.3063,
      "lon": 1.2321,
      "population": 5563,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-carbonne.fr/declaration-accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-carbonne.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-carbonne.fr/declaration-accessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-carbonne.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-carbonne.fr/"
        }
      ]
    },
    {
      "insee": "31108",
      "name": "Cardeilhac",
      "lat": 43.1964,
      "lon": 0.6788,
      "population": 259,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31109",
      "name": "Cassagnabère-Tournas",
      "lat": 43.2296,
      "lon": 0.8008,
      "population": 468,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31110",
      "name": "Cassagne",
      "lat": 43.1242,
      "lon": 0.992,
      "population": 641,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://cassagne-31.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://cassagne-31.fr/"
        }
      ]
    },
    {
      "insee": "31111",
      "name": "Castagnac",
      "lat": 43.2352,
      "lon": 1.3454,
      "population": 325,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31112",
      "name": "Castagnède",
      "lat": 43.051,
      "lon": 0.9765,
      "population": 172,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31113",
      "name": "Castanet-Tolosan",
      "lat": 43.5083,
      "lon": 1.5069,
      "population": 15317,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 5,
      "pagesCrawled": 9,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://castanet-tolosan.fr/accessibilite-numerique-7.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://castanet-tolosan.fr/accueil-3.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://castanet-tolosan.fr/politique-de-gestion-des-donnees-personnelles-291.html"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://castanet-tolosan.fr/accueil-3.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://castanet-tolosan.fr/accueil-3.html"
        }
      ]
    },
    {
      "insee": "31114",
      "name": "Castelbiague",
      "lat": 43.0331,
      "lon": 0.9284,
      "population": 234,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31115",
      "name": "Castelgaillard",
      "lat": 43.3499,
      "lon": 0.9019,
      "population": 60,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-castelgaillard31.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-castelgaillard31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-castelgaillard31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-castelgaillard31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31116",
      "name": "Castelginest",
      "lat": 43.698,
      "lon": 1.4349,
      "population": 11271,
      "declaration": "PASS",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://mairie-castelginest.fr/fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31117",
      "name": "Castelmaurou",
      "lat": 43.6863,
      "lon": 1.5289,
      "population": 4524,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://castelmaurou.fr/declaration-daccessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://castelmaurou.fr/politique-de-confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://castelmaurou.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://castelmaurou.fr/"
        }
      ]
    },
    {
      "insee": "31118",
      "name": "Castelnau-d'Estrétefonds",
      "lat": 43.7956,
      "lon": 1.3516,
      "population": 7003,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://castelnau-estretefonds.fr/politique-de-confidentialite"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://castelnau-estretefonds.fr/"
        }
      ]
    },
    {
      "insee": "31119",
      "name": "Castelnau-Picampeau",
      "lat": 43.308,
      "lon": 1.0138,
      "population": 234,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31120",
      "name": "Le Castéra",
      "lat": 43.6717,
      "lon": 1.1503,
      "population": 802,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lecastera31.fr/fr/bas-de-page/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lecastera31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lecastera31.fr/fr/bas-de-page/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lecastera31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31121",
      "name": "Castéra-Vignoles",
      "lat": 43.2782,
      "lon": 0.7828,
      "population": 64,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 19,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://castera-vignoles.fr/politiques-de-confidentialite-rgpd"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://castera-vignoles.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://castera-vignoles.fr/"
        }
      ]
    },
    {
      "insee": "31122",
      "name": "Casties-Labrande",
      "lat": 43.3269,
      "lon": 0.9931,
      "population": 94,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31123",
      "name": "Castillon-de-Larboust",
      "lat": 42.7534,
      "lon": 0.5618,
      "population": 84,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31124",
      "name": "Castillon-de-Saint-Martory",
      "lat": 43.1397,
      "lon": 0.8575,
      "population": 398,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31125",
      "name": "Cathervielle",
      "lat": 42.823,
      "lon": 0.5078,
      "population": 28,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31126",
      "name": "Caubiac",
      "lat": 43.7155,
      "lon": 1.0756,
      "population": 441,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31127",
      "name": "Caubous",
      "lat": 42.8499,
      "lon": 0.5199,
      "population": 3,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31128",
      "name": "Caujac",
      "lat": 43.297,
      "lon": 1.4554,
      "population": 869,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://caujac31.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://caujac31.fr/"
        }
      ]
    },
    {
      "insee": "31129",
      "name": "Cazarilh-Laspènes",
      "lat": 42.8033,
      "lon": 0.581,
      "population": 13,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31130",
      "name": "Cazaril-Tambourès",
      "lat": 43.1783,
      "lon": 0.5418,
      "population": 89,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31131",
      "name": "Cazaunous",
      "lat": 42.9854,
      "lon": 0.722,
      "population": 64,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://cazaunous.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://cazaunous.fr/"
        }
      ]
    },
    {
      "insee": "31132",
      "name": "Cazaux-Layrisse",
      "lat": 42.87,
      "lon": 0.595,
      "population": 59,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31133",
      "name": "Cazeaux-de-Larboust",
      "lat": 42.7567,
      "lon": 0.5377,
      "population": 88,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 3,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://cazeauxdelarboust.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://cazeauxdelarboust.fr/"
        }
      ]
    },
    {
      "insee": "31134",
      "name": "Cazeneuve-Montaut",
      "lat": 43.1846,
      "lon": 0.8605,
      "population": 82,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31135",
      "name": "Cazères",
      "lat": 43.2155,
      "lon": 1.1005,
      "population": 4854,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 6,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-cazeres.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-cazeres.fr/"
        }
      ]
    },
    {
      "insee": "31136",
      "name": "Cépet",
      "lat": 43.7487,
      "lon": 1.4368,
      "population": 2389,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://cepet.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://cepet.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://cepet.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://cepet.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31137",
      "name": "Cessales",
      "lat": 43.4571,
      "lon": 1.7444,
      "population": 168,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31138",
      "name": "Charlas",
      "lat": 43.2366,
      "lon": 0.6951,
      "population": 243,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31139",
      "name": "Chaum",
      "lat": 42.9389,
      "lon": 0.6712,
      "population": 205,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31140",
      "name": "Chein-Dessus",
      "lat": 43.0034,
      "lon": 0.8781,
      "population": 209,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31141",
      "name": "Ciadoux",
      "lat": 43.2553,
      "lon": 0.7354,
      "population": 234,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 24,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://ciadoux.fr/politiques-de-confidentialite-rgpd"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ciadoux.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ciadoux.fr/"
        }
      ]
    },
    {
      "insee": "31142",
      "name": "Cier-de-Luchon",
      "lat": 42.8559,
      "lon": 0.587,
      "population": 235,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 6,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31143",
      "name": "Cier-de-Rivière",
      "lat": 43.0605,
      "lon": 0.6295,
      "population": 266,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://cierderiviere.jimdofree.com/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://cierderiviere.jimdofree.com/"
        }
      ]
    },
    {
      "insee": "31144",
      "name": "Cierp-Gaud",
      "lat": 42.9005,
      "lon": 0.6327,
      "population": 689,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://cierpgaud.fr/mention-legale"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://cierpgaud.fr/mention-legale"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://cierpgaud.fr/"
        }
      ]
    },
    {
      "insee": "31145",
      "name": "Cintegabelle",
      "lat": 43.3,
      "lon": 1.5375,
      "population": 3006,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-cintegabelle.fr/systeme/declaration-accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-cintegabelle.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://mairie-cintegabelle.fr/systeme/politique-de-confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-cintegabelle.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-cintegabelle.fr/"
        }
      ]
    },
    {
      "insee": "31146",
      "name": "Cirès",
      "lat": 42.8527,
      "lon": 0.5063,
      "population": 9,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31147",
      "name": "Clarac",
      "lat": 43.1113,
      "lon": 0.615,
      "population": 672,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://clarac31.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://clarac31.fr/"
        }
      ]
    },
    {
      "insee": "31148",
      "name": "Clermont-le-Fort",
      "lat": 43.4584,
      "lon": 1.4453,
      "population": 531,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://clermont-le-fort.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://clermont-le-fort.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://clermont-le-fort.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://clermont-le-fort.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31149",
      "name": "Colomiers",
      "lat": 43.6116,
      "lon": 1.3245,
      "population": 40882,
      "declaration": "PASS",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 31,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://ville-colomiers.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-colomiers.fr/cookies"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-colomiers.fr/1"
        }
      ]
    },
    {
      "insee": "31150",
      "name": "Cornebarrieu",
      "lat": 43.649,
      "lon": 1.3197,
      "population": 8978,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://cornebarrieu.fr/annuaire-des-services"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://cornebarrieu.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://cornebarrieu.fr/"
        }
      ]
    },
    {
      "insee": "31151",
      "name": "Corronsac",
      "lat": 43.4707,
      "lon": 1.4907,
      "population": 901,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://corronsac.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://corronsac.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://corronsac.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://corronsac.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31152",
      "name": "Coueilles",
      "lat": 43.3461,
      "lon": 0.8774,
      "population": 85,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31153",
      "name": "Couladère",
      "lat": 43.1962,
      "lon": 1.0935,
      "population": 415,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31155",
      "name": "Couret",
      "lat": 43.0483,
      "lon": 0.8188,
      "population": 233,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31156",
      "name": "Cox",
      "lat": 43.7606,
      "lon": 1.0419,
      "population": 364,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-cox.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-cox.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-cox.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-cox.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31157",
      "name": "Cugnaux",
      "lat": 43.5446,
      "lon": 1.3432,
      "population": 20662,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 31,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-cugnaux.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-cugnaux.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-cugnaux.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-cugnaux.fr/"
        }
      ]
    },
    {
      "insee": "31158",
      "name": "Cuguron",
      "lat": 43.1063,
      "lon": 0.5222,
      "population": 161,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31159",
      "name": "Le Cuing",
      "lat": 43.1479,
      "lon": 0.6205,
      "population": 482,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lecuing.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lecuing.fr/"
        }
      ]
    },
    {
      "insee": "31160",
      "name": "Daux",
      "lat": 43.6849,
      "lon": 1.2685,
      "population": 2643,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://daux.fr/fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://daux.fr/fr/accessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://daux.fr/fr"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://daux.fr/fr"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://daux.fr/fr"
        }
      ]
    },
    {
      "insee": "31161",
      "name": "Deyme",
      "lat": 43.4841,
      "lon": 1.5311,
      "population": 1468,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://deyme.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://deyme.fr/"
        }
      ]
    },
    {
      "insee": "31162",
      "name": "Donneville",
      "lat": 43.4728,
      "lon": 1.5506,
      "population": 1139,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-donneville.fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-donneville.fr/"
        }
      ]
    },
    {
      "insee": "31163",
      "name": "Drémil-Lafage",
      "lat": 43.592,
      "lon": 1.5996,
      "population": 2608,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://dremil-lafage.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://dremil-lafage.fr/"
        }
      ]
    },
    {
      "insee": "31164",
      "name": "Drudas",
      "lat": 43.7638,
      "lon": 1.1006,
      "population": 206,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31165",
      "name": "Eaunes",
      "lat": 43.4324,
      "lon": 1.3543,
      "population": 6539,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-eaunes.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-eaunes.fr/"
        }
      ]
    },
    {
      "insee": "31166",
      "name": "Empeaux",
      "lat": 43.536,
      "lon": 1.074,
      "population": 314,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://mairie-empeaux.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://mairie-empeaux.fr/"
        }
      ]
    },
    {
      "insee": "31167",
      "name": "Encausse-les-Thermes",
      "lat": 43.0511,
      "lon": 0.7464,
      "population": 641,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31168",
      "name": "Eoux",
      "lat": 43.2773,
      "lon": 0.8835,
      "population": 131,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31169",
      "name": "Escalquens",
      "lat": 43.5201,
      "lon": 1.5528,
      "population": 6924,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://escalquens.fr/politique-de-confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://escalquens.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://escalquens.fr/"
        }
      ]
    },
    {
      "insee": "31170",
      "name": "Escanecrabe",
      "lat": 43.2734,
      "lon": 0.7577,
      "population": 210,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31171",
      "name": "Espanès",
      "lat": 43.4513,
      "lon": 1.4885,
      "population": 273,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://espanes.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://espanes.fr/mentions-legales"
        }
      ]
    },
    {
      "insee": "31172",
      "name": "Esparron",
      "lat": 43.2632,
      "lon": 0.81,
      "population": 42,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31173",
      "name": "Esperce",
      "lat": 43.2984,
      "lon": 1.3974,
      "population": 296,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-esperce.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-esperce.fr/"
        }
      ]
    },
    {
      "insee": "31174",
      "name": "Estadens",
      "lat": 43.0334,
      "lon": 0.8398,
      "population": 526,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31175",
      "name": "Estancarbon",
      "lat": 43.1094,
      "lon": 0.7833,
      "population": 612,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31176",
      "name": "Esténos",
      "lat": 42.9431,
      "lon": 0.6323,
      "population": 191,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31177",
      "name": "Eup",
      "lat": 42.9259,
      "lon": 0.684,
      "population": 139,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31178",
      "name": "Fabas",
      "lat": 43.3128,
      "lon": 0.8919,
      "population": 196,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31179",
      "name": "Le Faget",
      "lat": 43.5647,
      "lon": 1.8256,
      "population": 297,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31180",
      "name": "Falga",
      "lat": 43.4796,
      "lon": 1.8425,
      "population": 141,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://lefalga.fr/mentions-legales"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lefalga.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lefalga.fr/"
        }
      ]
    },
    {
      "insee": "31181",
      "name": "Le Fauga",
      "lat": 43.3996,
      "lon": 1.3003,
      "population": 2603,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lefauga.fr/contact.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lefauga.fr/"
        }
      ]
    },
    {
      "insee": "31182",
      "name": "Fenouillet",
      "lat": 43.6864,
      "lon": 1.3897,
      "population": 5784,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://fenouillet.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://fenouillet.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://fenouillet.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://fenouillet.fr/"
        }
      ]
    },
    {
      "insee": "31183",
      "name": "Figarol",
      "lat": 43.0857,
      "lon": 0.9073,
      "population": 311,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31184",
      "name": "Flourens",
      "lat": 43.5975,
      "lon": 1.5514,
      "population": 2084,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://flourens.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://flourens.fr/"
        }
      ]
    },
    {
      "insee": "31185",
      "name": "Folcarde",
      "lat": 43.4061,
      "lon": 1.7954,
      "population": 118,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31186",
      "name": "Fonbeauzard",
      "lat": 43.6792,
      "lon": 1.4368,
      "population": 3204,
      "declaration": "PASS",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-fonbeauzard.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-fonbeauzard.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-fonbeauzard.fr/fr/index.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31187",
      "name": "Fonsorbes",
      "lat": 43.5332,
      "lon": 1.2429,
      "population": 12954,
      "declaration": "FAIL",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://fonsorbes.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://fonsorbes.fr/traitement-des-donnees-personnelles/politique-de-cookies"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://fonsorbes.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://fonsorbes.fr/"
        }
      ]
    },
    {
      "insee": "31188",
      "name": "Fontenilles",
      "lat": 43.5524,
      "lon": 1.2048,
      "population": 5906,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-fontenilles.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-fontenilles.fr/"
        }
      ]
    },
    {
      "insee": "31189",
      "name": "Forgues",
      "lat": 43.4322,
      "lon": 1.0429,
      "population": 214,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 2,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31190",
      "name": "Fos",
      "lat": 42.8606,
      "lon": 0.7545,
      "population": 248,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        }
      ]
    },
    {
      "insee": "31191",
      "name": "Fougaron",
      "lat": 42.9877,
      "lon": 0.9382,
      "population": 109,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 10,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://fougaron.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://fougaron.fr/"
        }
      ]
    },
    {
      "insee": "31192",
      "name": "Fourquevaux",
      "lat": 43.5004,
      "lon": 1.6231,
      "population": 851,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://fourquevaux.fr/declaration-daccessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://fourquevaux.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://fourquevaux.fr/politiques-de-confidentialite-des-donnees"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://fourquevaux.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31193",
      "name": "Le Fousseret",
      "lat": 43.2867,
      "lon": 1.0673,
      "population": 1863,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lefousseret.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lefousseret.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lefousseret.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lefousseret.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31194",
      "name": "Francarville",
      "lat": 43.5872,
      "lon": 1.7479,
      "population": 191,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31195",
      "name": "Francazal",
      "lat": 43.0074,
      "lon": 1.0018,
      "population": 28,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31196",
      "name": "Francon",
      "lat": 43.2605,
      "lon": 0.9884,
      "population": 236,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-francon31.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-francon31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-francon31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-francon31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31197",
      "name": "Franquevielle",
      "lat": 43.1333,
      "lon": 0.5304,
      "population": 339,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 14,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://station.illiwap.com/fr/public/31197"
        }
      ]
    },
    {
      "insee": "31198",
      "name": "Le Fréchet",
      "lat": 43.1903,
      "lon": 0.9303,
      "population": 129,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31199",
      "name": "Fronsac",
      "lat": 42.9548,
      "lon": 0.6688,
      "population": 185,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 21,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        }
      ]
    },
    {
      "insee": "31200",
      "name": "Frontignan-de-Comminges",
      "lat": 42.9647,
      "lon": 0.67,
      "population": 80,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-frontignandecomminges.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-frontignandecomminges.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-frontignandecomminges.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-frontignandecomminges.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31201",
      "name": "Frontignan-Savès",
      "lat": 43.399,
      "lon": 0.9129,
      "population": 66,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31202",
      "name": "Fronton",
      "lat": 43.8529,
      "lon": 1.3714,
      "population": 6671,
      "declaration": "PASS",
      "obligationsMet": 6,
      "obligationsDecided": 6,
      "pagesCrawled": 33,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-fronton.fr/accessibilite-du-site"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-fronton.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-fronton.fr/accessibilite-du-site"
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-fronton.fr/politique-de-confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-fronton.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-fronton.fr/"
        }
      ]
    },
    {
      "insee": "31203",
      "name": "Frouzins",
      "lat": 43.5218,
      "lon": 1.3125,
      "population": 9805,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-frouzins.fr/mentions-l%C3%A9gales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-frouzins.fr/mentions-l%C3%A9gales"
        }
      ]
    },
    {
      "insee": "31204",
      "name": "Fustignac",
      "lat": 43.3028,
      "lon": 0.9844,
      "population": 70,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31205",
      "name": "Gagnac-sur-Garonne",
      "lat": 43.7077,
      "lon": 1.3636,
      "population": 3198,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 31,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://gagnac-sur-garonne.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://gagnac-sur-garonne.fr/"
        }
      ]
    },
    {
      "insee": "31206",
      "name": "Gaillac-Toulza",
      "lat": 43.2573,
      "lon": 1.453,
      "population": 1342,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31207",
      "name": "Galié",
      "lat": 42.9918,
      "lon": 0.6337,
      "population": 87,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31208",
      "name": "Ganties",
      "lat": 43.0611,
      "lon": 0.8379,
      "population": 302,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31209",
      "name": "Garac",
      "lat": 43.6869,
      "lon": 1.097,
      "population": 168,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31210",
      "name": "Gardouch",
      "lat": 43.3834,
      "lon": 1.6781,
      "population": 1370,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-gardouch31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-gardouch31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31211",
      "name": "Gargas",
      "lat": 43.7589,
      "lon": 1.4595,
      "population": 785,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-gargas31.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-gargas31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-gargas31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-gargas31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31212",
      "name": "Garidech",
      "lat": 43.7123,
      "lon": 1.549,
      "population": 1893,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-garidech.com/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-garidech.com/"
        }
      ]
    },
    {
      "insee": "31213",
      "name": "Garin",
      "lat": 42.8093,
      "lon": 0.491,
      "population": 146,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31215",
      "name": "Gauré",
      "lat": 43.6183,
      "lon": 1.6397,
      "population": 464,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://gaure.net/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://gaure.net/"
        }
      ]
    },
    {
      "insee": "31216",
      "name": "Gémil",
      "lat": 43.7388,
      "lon": 1.5967,
      "population": 483,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://gemil.fr/index.php/component/content/article/2-non-categorise/155-espace-depeche-petit-journal"
        }
      ]
    },
    {
      "insee": "31217",
      "name": "Génos",
      "lat": 43.0004,
      "lon": 0.6681,
      "population": 71,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31218",
      "name": "Gensac-de-Boulogne",
      "lat": 43.2593,
      "lon": 0.6037,
      "population": 109,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://gensac-de-boulogne.fr/informations-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://gensac-de-boulogne.fr/"
        }
      ]
    },
    {
      "insee": "31219",
      "name": "Gensac-sur-Garonne",
      "lat": 43.2161,
      "lon": 1.1422,
      "population": 451,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-gensac-sur-garonne.fr/fr/declaration-d-accessibilite.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-gensac-sur-garonne.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-gensac-sur-garonne.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-gensac-sur-garonne.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31220",
      "name": "Gibel",
      "lat": 43.3017,
      "lon": 1.6728,
      "population": 393,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31221",
      "name": "Gouaux-de-Larboust",
      "lat": 42.7804,
      "lon": 0.4783,
      "population": 40,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 14,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://gouaux-de-larboust-peyragudes.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        }
      ]
    },
    {
      "insee": "31222",
      "name": "Gouaux-de-Luchon",
      "lat": 42.8501,
      "lon": 0.644,
      "population": 43,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31223",
      "name": "Goudex",
      "lat": 43.38,
      "lon": 0.9559,
      "population": 40,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31224",
      "name": "Gourdan-Polignan",
      "lat": 43.0708,
      "lon": 0.5745,
      "population": 1177,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://gourdan-polignan.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://gourdan-polignan.fr/"
        }
      ]
    },
    {
      "insee": "31225",
      "name": "Goutevernisse",
      "lat": 43.2138,
      "lon": 1.1738,
      "population": 185,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31226",
      "name": "Gouzens",
      "lat": 43.1802,
      "lon": 1.1843,
      "population": 81,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31227",
      "name": "Goyrans",
      "lat": 43.4817,
      "lon": 1.4252,
      "population": 867,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://goyrans.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://goyrans.fr/"
        }
      ]
    },
    {
      "insee": "31228",
      "name": "Gragnague",
      "lat": 43.6852,
      "lon": 1.5828,
      "population": 2553,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://gragnague.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://gragnague.fr/"
        }
      ]
    },
    {
      "insee": "31229",
      "name": "Gratens",
      "lat": 43.3245,
      "lon": 1.1208,
      "population": 805,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        }
      ]
    },
    {
      "insee": "31230",
      "name": "Gratentour",
      "lat": 43.7206,
      "lon": 1.4333,
      "population": 4906,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 24,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://gratentour.fr/politique-de-confidentialite-2"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://gratentour.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://gratentour.fr/"
        }
      ]
    },
    {
      "insee": "31231",
      "name": "Grazac",
      "lat": 43.3117,
      "lon": 1.4491,
      "population": 816,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-grazac31.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-grazac31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-grazac31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-grazac31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31232",
      "name": "Grenade",
      "lat": 43.7702,
      "lon": 1.2791,
      "population": 9062,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-grenade.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-grenade.fr/"
        }
      ]
    },
    {
      "insee": "31233",
      "name": "Grépiac",
      "lat": 43.4053,
      "lon": 1.4539,
      "population": 1017,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 32,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://grepiac.fr/mentions-legales"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://grepiac.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://grepiac.fr/"
        }
      ]
    },
    {
      "insee": "31234",
      "name": "Le Grès",
      "lat": 43.719,
      "lon": 1.0981,
      "population": 463,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://legres.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://legres.fr/"
        }
      ]
    },
    {
      "insee": "31235",
      "name": "Guran",
      "lat": 42.884,
      "lon": 0.6046,
      "population": 59,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31236",
      "name": "Herran",
      "lat": 42.9752,
      "lon": 0.8892,
      "population": 74,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31237",
      "name": "His",
      "lat": 43.0637,
      "lon": 0.9679,
      "population": 235,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31238",
      "name": "Huos",
      "lat": 43.0673,
      "lon": 0.6,
      "population": 491,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31239",
      "name": "L'Isle-en-Dodon",
      "lat": 43.3792,
      "lon": 0.831,
      "population": 1614,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31240",
      "name": "Issus",
      "lat": 43.4232,
      "lon": 1.5001,
      "population": 655,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31241",
      "name": "Izaut-de-l'Hôtel",
      "lat": 43.0124,
      "lon": 0.748,
      "population": 298,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31242",
      "name": "Jurvielle",
      "lat": 42.8304,
      "lon": 0.4763,
      "population": 23,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://jurvielle.com/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://jurvielle.com/"
        }
      ]
    },
    {
      "insee": "31243",
      "name": "Juzes",
      "lat": 43.4461,
      "lon": 1.7936,
      "population": 73,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31244",
      "name": "Juzet-de-Luchon",
      "lat": 42.8036,
      "lon": 0.631,
      "population": 366,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 10,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://juzetdeluchon.com/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://juzetdeluchon.com/"
        }
      ]
    },
    {
      "insee": "31245",
      "name": "Juzet-d'Izaut",
      "lat": 42.9708,
      "lon": 0.7575,
      "population": 177,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31246",
      "name": "Labarthe-Inard",
      "lat": 43.1079,
      "lon": 0.8337,
      "population": 871,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31247",
      "name": "Labarthe-Rivière",
      "lat": 43.0837,
      "lon": 0.6786,
      "population": 1298,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://labarthe-riviere.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://labarthe-riviere.fr/"
        }
      ]
    },
    {
      "insee": "31248",
      "name": "Labarthe-sur-Lèze",
      "lat": 43.4589,
      "lon": 1.3995,
      "population": 6585,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://labarthesurleze.com/confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://labarthesurleze.com/application-regles-de-confidentialite"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://labarthesurleze.com/"
        }
      ]
    },
    {
      "insee": "31249",
      "name": "Labastide-Beauvoir",
      "lat": 43.4822,
      "lon": 1.6635,
      "population": 1254,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://labastide-beauvoir.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://labastide-beauvoir.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://labastide-beauvoir.fr/"
        }
      ]
    },
    {
      "insee": "31250",
      "name": "Labastide-Clermont",
      "lat": 43.3499,
      "lon": 1.1071,
      "population": 690,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-labastide-clermont.fr/"
        }
      ]
    },
    {
      "insee": "31251",
      "name": "Labastide-Paumès",
      "lat": 43.3321,
      "lon": 0.9405,
      "population": 150,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31252",
      "name": "Labastide-Saint-Sernin",
      "lat": 43.7369,
      "lon": 1.4667,
      "population": 1925,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://labastidesaintsernin.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://labastidesaintsernin.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://labastidesaintsernin.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://labastidesaintsernin.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31253",
      "name": "Labastidette",
      "lat": 43.4554,
      "lon": 1.2411,
      "population": 2930,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://labastidette.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://labastidette.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://labastidette.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://labastidette.fr/"
        }
      ]
    },
    {
      "insee": "31254",
      "name": "Labège",
      "lat": 43.5396,
      "lon": 1.5207,
      "population": 4392,
      "declaration": "FAIL",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 32,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": "https://labege.fr/declaration-daccessibilite",
          "withoutStatus": true
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://labege.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://labege.fr/"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://labege.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://labege.fr/"
        }
      ]
    },
    {
      "insee": "31255",
      "name": "Labroquère",
      "lat": 43.0433,
      "lon": 0.5874,
      "population": 324,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31256",
      "name": "Labruyère-Dorsa",
      "lat": 43.4056,
      "lon": 1.4712,
      "population": 317,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-labruyeredorsa.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-labruyeredorsa.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-labruyeredorsa.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-labruyeredorsa.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31258",
      "name": "Lacaugne",
      "lat": 43.28,
      "lon": 1.2808,
      "population": 252,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31259",
      "name": "Lacroix-Falgarde",
      "lat": 43.5022,
      "lon": 1.4256,
      "population": 2030,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 8,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lacroixfalgarde.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lacroixfalgarde.fr/"
        }
      ]
    },
    {
      "insee": "31260",
      "name": "Laffite-Toupière",
      "lat": 43.1651,
      "lon": 0.907,
      "population": 98,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31261",
      "name": "Lafitte-Vigordane",
      "lat": 43.3027,
      "lon": 1.1597,
      "population": 1142,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://lafitte-vigordane.fr/fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lafitte-vigordane.fr/fr/accessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://lafitte-vigordane.fr/fr"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lafitte-vigordane.fr/fr"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lafitte-vigordane.fr/fr"
        }
      ]
    },
    {
      "insee": "31262",
      "name": "Lagarde",
      "lat": 43.3464,
      "lon": 1.6973,
      "population": 432,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lagarde31.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lagarde31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lagarde31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lagarde31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31263",
      "name": "Lagardelle-sur-Lèze",
      "lat": 43.4162,
      "lon": 1.3929,
      "population": 3303,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lagardellesurleze.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lagardellesurleze.fr/"
        }
      ]
    },
    {
      "insee": "31264",
      "name": "Lagrâce-Dieu",
      "lat": 43.3361,
      "lon": 1.4077,
      "population": 551,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lagracedieu.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lagracedieu.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lagracedieu.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lagracedieu.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31265",
      "name": "Lagraulet-Saint-Nicolas",
      "lat": 43.7901,
      "lon": 1.0756,
      "population": 284,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 5,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lagraulet31.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lagraulet31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lagraulet31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lagraulet31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31266",
      "name": "Lahage",
      "lat": 43.4414,
      "lon": 1.0699,
      "population": 212,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31267",
      "name": "Lahitère",
      "lat": 43.1412,
      "lon": 1.1878,
      "population": 52,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31268",
      "name": "Lalouret-Laffiteau",
      "lat": 43.1864,
      "lon": 0.6987,
      "population": 134,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31269",
      "name": "Lamasquère",
      "lat": 43.4857,
      "lon": 1.25,
      "population": 1682,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lamasquere.fr/fr/utilisation-cookies"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lamasquere.fr/fr"
        }
      ]
    },
    {
      "insee": "31270",
      "name": "Landorthe",
      "lat": 43.1288,
      "lon": 0.7806,
      "population": 1030,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-landorthe.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-landorthe.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-landorthe.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-landorthe.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31271",
      "name": "Lanta",
      "lat": 43.5573,
      "lon": 1.6687,
      "population": 2283,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lanta.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lanta.fr/"
        }
      ]
    },
    {
      "insee": "31272",
      "name": "Lapeyrère",
      "lat": 43.2054,
      "lon": 1.3105,
      "population": 58,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31273",
      "name": "Lapeyrouse-Fossat",
      "lat": 43.7033,
      "lon": 1.5103,
      "population": 3043,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lapeyrouse-fossat.fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lapeyrouse-fossat.fr/"
        }
      ]
    },
    {
      "insee": "31274",
      "name": "Larcan",
      "lat": 43.171,
      "lon": 0.7197,
      "population": 178,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31275",
      "name": "Laréole",
      "lat": 43.741,
      "lon": 1.0206,
      "population": 157,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31276",
      "name": "Larroque",
      "lat": 43.1966,
      "lon": 0.6115,
      "population": 293,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 23,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://larroque31.fr/mentions-legales"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://larroque31.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://larroque31.fr/"
        }
      ]
    },
    {
      "insee": "31277",
      "name": "Lasserre-Pradère",
      "lat": 43.637,
      "lon": 1.176,
      "population": 1574,
      "declaration": "PASS",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://grandouesttoulousain.fr/"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lasserrepradere.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lasserrepradere.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31278",
      "name": "Latoue",
      "lat": 43.1728,
      "lon": 0.7815,
      "population": 310,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-latoue.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-latoue.fr/"
        }
      ]
    },
    {
      "insee": "31279",
      "name": "Latour",
      "lat": 43.2028,
      "lon": 1.2822,
      "population": 80,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-latour31310.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31280",
      "name": "Latrape",
      "lat": 43.2484,
      "lon": 1.2924,
      "population": 444,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31281",
      "name": "Launac",
      "lat": 43.7526,
      "lon": 1.1657,
      "population": 1335,
      "declaration": "PASS",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-launac.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-launac.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-launac.fr/"
        }
      ]
    },
    {
      "insee": "31282",
      "name": "Launaguet",
      "lat": 43.6668,
      "lon": 1.4579,
      "population": 9173,
      "declaration": "PASS",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://mairie-launaguet.fr/credits"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-launaguet.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-launaguet.fr/"
        }
      ]
    },
    {
      "insee": "31283",
      "name": "Lautignac",
      "lat": 43.3789,
      "lon": 1.0668,
      "population": 248,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31284",
      "name": "Lauzerville",
      "lat": 43.5578,
      "lon": 1.5657,
      "population": 1582,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://mairie-lauzerville.fr/declaration-daccessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lauzerville.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lauzerville.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lauzerville.fr/"
        }
      ]
    },
    {
      "insee": "31285",
      "name": "Lavalette",
      "lat": 43.6406,
      "lon": 1.5953,
      "population": 793,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31286",
      "name": "Lavelanet-de-Comminges",
      "lat": 43.2545,
      "lon": 1.1149,
      "population": 653,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lavelanetdecomminges.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lavelanetdecomminges.fr/"
        }
      ]
    },
    {
      "insee": "31287",
      "name": "Lavernose-Lacasse",
      "lat": 43.391,
      "lon": 1.2411,
      "population": 3798,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        }
      ]
    },
    {
      "insee": "31288",
      "name": "Layrac-sur-Tarn",
      "lat": 43.8327,
      "lon": 1.5655,
      "population": 320,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://layracsurtarn.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://layracsurtarn.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://layracsurtarn.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://layracsurtarn.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31289",
      "name": "Lécussan",
      "lat": 43.1512,
      "lon": 0.489,
      "population": 248,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31290",
      "name": "Lège",
      "lat": 42.8777,
      "lon": 0.5973,
      "population": 32,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31291",
      "name": "Léguevin",
      "lat": 43.5928,
      "lon": 1.2353,
      "population": 9945,
      "declaration": "PASS",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://ville-leguevin.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-leguevin.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-leguevin.fr/"
        }
      ]
    },
    {
      "insee": "31292",
      "name": "Lescuns",
      "lat": 43.2448,
      "lon": 1.006,
      "population": 75,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31293",
      "name": "Lespinasse",
      "lat": 43.7174,
      "lon": 1.3821,
      "population": 3251,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 31,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-lespinasse.fr/declaration-daccessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-lespinasse.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-lespinasse.fr/politique-de-confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-lespinasse.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-lespinasse.fr/"
        }
      ]
    },
    {
      "insee": "31294",
      "name": "Lespiteau",
      "lat": 43.065,
      "lon": 0.7603,
      "population": 78,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31295",
      "name": "Lespugue",
      "lat": 43.2311,
      "lon": 0.6652,
      "population": 75,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31296",
      "name": "Lestelle-de-Saint-Martory",
      "lat": 43.1177,
      "lon": 0.9042,
      "population": 430,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lestelle-de-saint-martory.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lestelle-de-saint-martory.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lestelle-de-saint-martory.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lestelle-de-saint-martory.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31297",
      "name": "Lévignac",
      "lat": 43.6646,
      "lon": 1.2036,
      "population": 2206,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://mairie-levignac.com/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://mairie-levignac.com/"
        }
      ]
    },
    {
      "insee": "31299",
      "name": "Lherm",
      "lat": 43.4273,
      "lon": 1.2288,
      "population": 3880,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 25,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lherm.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lherm.fr/la-mairie/coordonnees-horaires"
        }
      ]
    },
    {
      "insee": "31300",
      "name": "Lieoux",
      "lat": 43.1492,
      "lon": 0.7734,
      "population": 126,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31301",
      "name": "Lilhac",
      "lat": 43.2854,
      "lon": 0.8109,
      "population": 140,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lilhac.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lilhac.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lilhac.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-lilhac.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31302",
      "name": "Lodes",
      "lat": 43.1664,
      "lon": 0.6608,
      "population": 308,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31303",
      "name": "Longages",
      "lat": 43.3571,
      "lon": 1.2114,
      "population": 3392,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://longages.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://longages.fr/"
        }
      ]
    },
    {
      "insee": "31304",
      "name": "Loubens-Lauragais",
      "lat": 43.5762,
      "lon": 1.784,
      "population": 454,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://loubens-lauragais.fr/"
        }
      ]
    },
    {
      "insee": "31305",
      "name": "Loudet",
      "lat": 43.1397,
      "lon": 0.5755,
      "population": 191,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31306",
      "name": "Lourde",
      "lat": 42.9849,
      "lon": 0.6568,
      "population": 123,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31308",
      "name": "Luscan",
      "lat": 43.0133,
      "lon": 0.6272,
      "population": 46,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31309",
      "name": "Lussan-Adeilhac",
      "lat": 43.2944,
      "lon": 0.953,
      "population": 236,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31310",
      "name": "Lux",
      "lat": 43.4299,
      "lon": 1.7854,
      "population": 342,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31311",
      "name": "La Magdelaine-sur-Tarn",
      "lat": 43.8146,
      "lon": 1.5367,
      "population": 1254,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://la-magdelaine-sur-tarn.fr/fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://la-magdelaine-sur-tarn.fr/fr/accessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://la-magdelaine-sur-tarn.fr/fr"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://la-magdelaine-sur-tarn.fr/fr"
        }
      ]
    },
    {
      "insee": "31312",
      "name": "Mailholas",
      "lat": 43.2485,
      "lon": 1.2504,
      "population": 34,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mailholas.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mailholas.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mailholas.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mailholas.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31313",
      "name": "Malvezie",
      "lat": 43.0065,
      "lon": 0.6989,
      "population": 113,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://malvezie.fr/politiques-de-confidentialite-rgpd"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://malvezie.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://malvezie.fr/"
        }
      ]
    },
    {
      "insee": "31314",
      "name": "Mancioux",
      "lat": 43.1671,
      "lon": 0.9385,
      "population": 386,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mancioux.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mancioux.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mancioux.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mancioux.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31315",
      "name": "Mane",
      "lat": 43.0804,
      "lon": 0.9428,
      "population": 969,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mane31.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mane31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mane31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mane31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31316",
      "name": "Marignac",
      "lat": 42.893,
      "lon": 0.6649,
      "population": 474,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://marignac.fr/"
        }
      ]
    },
    {
      "insee": "31317",
      "name": "Marignac-Lasclares",
      "lat": 43.3042,
      "lon": 1.1095,
      "population": 479,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://marignac-lasclares.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://marignac-lasclares.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://marignac-lasclares.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://marignac-lasclares.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31318",
      "name": "Marignac-Laspeyres",
      "lat": 43.2121,
      "lon": 0.9627,
      "population": 194,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://marignac-laspeyres.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://marignac-laspeyres.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://tourismecoeurdegaronne.com/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://tourismecoeurdegaronne.com/"
        }
      ]
    },
    {
      "insee": "31319",
      "name": "Marliac",
      "lat": 43.2229,
      "lon": 1.4756,
      "population": 129,
      "declaration": "PASS",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://mairiedemarliac.fr/mentions-legales"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairiedemarliac.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairiedemarliac.fr/"
        }
      ]
    },
    {
      "insee": "31320",
      "name": "Marquefave",
      "lat": 43.311,
      "lon": 1.2601,
      "population": 991,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://marquefave.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://marquefave.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://marquefave.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://marquefave.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31321",
      "name": "Marsoulas",
      "lat": 43.1072,
      "lon": 0.9929,
      "population": 143,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31322",
      "name": "Martisserre",
      "lat": 43.3961,
      "lon": 0.8847,
      "population": 64,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31323",
      "name": "Martres-de-Rivière",
      "lat": 43.0834,
      "lon": 0.6422,
      "population": 418,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://martres-de-riviere.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://martres-de-riviere.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://martres-de-riviere.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://martres-de-riviere.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31324",
      "name": "Martres-Tolosane",
      "lat": 43.2052,
      "lon": 0.994,
      "population": 2387,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 23,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-martres-tolosane.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-martres-tolosane.fr/"
        }
      ]
    },
    {
      "insee": "31325",
      "name": "Mascarville",
      "lat": 43.5575,
      "lon": 1.7531,
      "population": 179,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31326",
      "name": "Massabrac",
      "lat": 43.2238,
      "lon": 1.3645,
      "population": 132,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31327",
      "name": "Mauran",
      "lat": 43.1857,
      "lon": 1.0193,
      "population": 201,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 5,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mauran31.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mauran31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mauran31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mauran31.fr/fr/mentions-legales.html"
        }
      ]
    },
    {
      "insee": "31328",
      "name": "Mauremont",
      "lat": 43.4557,
      "lon": 1.6811,
      "population": 349,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 2,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31329",
      "name": "Maurens",
      "lat": 43.4668,
      "lon": 1.7968,
      "population": 207,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31330",
      "name": "Mauressac",
      "lat": 43.3222,
      "lon": 1.4341,
      "population": 492,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mauressac.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mauressac.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mauressac.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mauressac.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31331",
      "name": "Maureville",
      "lat": 43.5317,
      "lon": 1.7141,
      "population": 296,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-maureville.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-maureville.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-maureville.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-maureville.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31332",
      "name": "Mauvaisin",
      "lat": 43.3587,
      "lon": 1.5339,
      "population": 233,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31333",
      "name": "Mauvezin",
      "lat": 43.3817,
      "lon": 0.9213,
      "population": 82,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31334",
      "name": "Mauzac",
      "lat": 43.3772,
      "lon": 1.3028,
      "population": 1351,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mauzac.fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mauzac.fr/"
        }
      ]
    },
    {
      "insee": "31335",
      "name": "Mayrègne",
      "lat": 42.849,
      "lon": 0.5389,
      "population": 28,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31336",
      "name": "Mazères-sur-Salat",
      "lat": 43.1341,
      "lon": 0.9605,
      "population": 628,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mazeres-sur-salat.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mazeres-sur-salat.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mazeres-sur-salat.fr/fr/contenu-permanent-colonne-de-gauche/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mazeres-sur-salat.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31337",
      "name": "Melles",
      "lat": 42.8643,
      "lon": 0.8036,
      "population": 95,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-de-melles.wixsite.com/mairie-de-melles/conditions-dutilisation"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-de-melles.wixsite.com/mairie-de-melles/conditions-dutilisation"
        }
      ]
    },
    {
      "insee": "31338",
      "name": "Menville",
      "lat": 43.6789,
      "lon": 1.1888,
      "population": 805,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31339",
      "name": "Mérenvielle",
      "lat": 43.6211,
      "lon": 1.171,
      "population": 474,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 23,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-merenvielle.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-merenvielle.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-merenvielle.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-merenvielle.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31340",
      "name": "Mervilla",
      "lat": 43.5067,
      "lon": 1.473,
      "population": 303,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mervilla.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mervilla.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mervilla.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mervilla.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31341",
      "name": "Merville",
      "lat": 43.7227,
      "lon": 1.2916,
      "population": 6760,
      "declaration": "PASS",
      "obligationsMet": 6,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://merville31.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://merville31.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://merville31.fr/accessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://merville31.fr/confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://merville31.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://merville31.fr/"
        }
      ]
    },
    {
      "insee": "31342",
      "name": "Milhas",
      "lat": 42.976,
      "lon": 0.8254,
      "population": 191,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31343",
      "name": "Mirambeau",
      "lat": 43.4049,
      "lon": 0.865,
      "population": 64,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31344",
      "name": "Miramont-de-Comminges",
      "lat": 43.0886,
      "lon": 0.7586,
      "population": 736,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://miramont-de-comminges.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://miramont-de-comminges.fr/"
        }
      ]
    },
    {
      "insee": "31345",
      "name": "Miremont",
      "lat": 43.3733,
      "lon": 1.4177,
      "population": 2838,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://mairiemiremont31.fr/fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairiemiremont31.fr/fr/accessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://mairiemiremont31.fr/fr"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairiemiremont31.fr/fr"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairiemiremont31.fr/fr"
        }
      ]
    },
    {
      "insee": "31346",
      "name": "Mirepoix-sur-Tarn",
      "lat": 43.8269,
      "lon": 1.5726,
      "population": 1139,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 19,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mirepoixsurtarn.fr/"
        }
      ]
    },
    {
      "insee": "31347",
      "name": "Molas",
      "lat": 43.4009,
      "lon": 0.7785,
      "population": 167,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31348",
      "name": "Moncaup",
      "lat": 42.9687,
      "lon": 0.704,
      "population": 37,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-moncaup.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-moncaup.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-moncaup.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-moncaup.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31349",
      "name": "Mondavezan",
      "lat": 43.2394,
      "lon": 1.041,
      "population": 880,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mondavezan.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mondavezan.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mondavezan.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mondavezan.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31350",
      "name": "Mondilhan",
      "lat": 43.2902,
      "lon": 0.7091,
      "population": 88,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31351",
      "name": "Mondonville",
      "lat": 43.6691,
      "lon": 1.2735,
      "population": 6060,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 5,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mondonville.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mondonville.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mondonville.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mondonville.fr/"
        }
      ]
    },
    {
      "insee": "31352",
      "name": "Mondouzil",
      "lat": 43.6304,
      "lon": 1.5602,
      "population": 210,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31353",
      "name": "Monès",
      "lat": 43.418,
      "lon": 1.0333,
      "population": 87,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mones31.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31354",
      "name": "Monestrol",
      "lat": 43.3351,
      "lon": 1.66,
      "population": 57,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://monestrol.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31355",
      "name": "Mons",
      "lat": 43.6092,
      "lon": 1.5696,
      "population": 1861,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mons.com/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-mons.com/"
        }
      ]
    },
    {
      "insee": "31356",
      "name": "Montaigut-sur-Save",
      "lat": 43.6855,
      "lon": 1.2329,
      "population": 1984,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 24,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://montaigut-sur-save.com/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://montaigut-sur-save.com/"
        }
      ]
    },
    {
      "insee": "31357",
      "name": "Montastruc-de-Salies",
      "lat": 43.0412,
      "lon": 0.8991,
      "population": 302,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montastruc-de-salies.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montastruc-de-salies.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montastruc-de-salies.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montastruc-de-salies.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31358",
      "name": "Montastruc-la-Conseillère",
      "lat": 43.7209,
      "lon": 1.5899,
      "population": 3708,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 19,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montastruc.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montastruc.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://mairie-montastruc.fr/fr/politique-de-protection-des-donnees.html"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montastruc.fr/fr/index.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montastruc.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31359",
      "name": "Montastruc-Savès",
      "lat": 43.3614,
      "lon": 1.0185,
      "population": 61,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31360",
      "name": "Montauban-de-Luchon",
      "lat": 42.791,
      "lon": 0.626,
      "population": 498,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        }
      ]
    },
    {
      "insee": "31361",
      "name": "Montaut",
      "lat": 43.3419,
      "lon": 1.3147,
      "population": 578,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://montaut31.fr/mentions-legales"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://montaut31.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://montaut31.fr/"
        }
      ]
    },
    {
      "insee": "31362",
      "name": "Montberaud",
      "lat": 43.1611,
      "lon": 1.1535,
      "population": 192,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31363",
      "name": "Montbernard",
      "lat": 43.3031,
      "lon": 0.7683,
      "population": 215,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31364",
      "name": "Montberon",
      "lat": 43.7188,
      "lon": 1.4901,
      "population": 3158,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://montberon.fr/politique-de-confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://montberon.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://montberon.fr/"
        }
      ]
    },
    {
      "insee": "31365",
      "name": "Montbrun-Bocage",
      "lat": 43.1179,
      "lon": 1.2566,
      "population": 592,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 5,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montbrun-bocage.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montbrun-bocage.fr/mentions-legales"
        }
      ]
    },
    {
      "insee": "31366",
      "name": "Montbrun-Lauragais",
      "lat": 43.4555,
      "lon": 1.5219,
      "population": 730,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 31,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://montbrun-lauragais.fr/declaration-daccessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://montbrun-lauragais.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://montbrun-lauragais.fr/politique-de-confidentialite-des-donnees"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://montbrun-lauragais.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://montbrun-lauragais.fr/"
        }
      ]
    },
    {
      "insee": "31367",
      "name": "Montclar-de-Comminges",
      "lat": 43.169,
      "lon": 1.033,
      "population": 79,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31368",
      "name": "Montclar-Lauragais",
      "lat": 43.3623,
      "lon": 1.7121,
      "population": 253,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31369",
      "name": "Mont-de-Galié",
      "lat": 42.993,
      "lon": 0.6458,
      "population": 24,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31370",
      "name": "Montégut-Bourjac",
      "lat": 43.283,
      "lon": 0.9863,
      "population": 129,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31371",
      "name": "Montégut-Lauragais",
      "lat": 43.4792,
      "lon": 1.9341,
      "population": 400,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31372",
      "name": "Montespan",
      "lat": 43.0842,
      "lon": 0.8584,
      "population": 476,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31373",
      "name": "Montesquieu-Guittaut",
      "lat": 43.3366,
      "lon": 0.7649,
      "population": 171,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31374",
      "name": "Montesquieu-Lauragais",
      "lat": 43.4067,
      "lon": 1.6267,
      "population": 1032,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        }
      ]
    },
    {
      "insee": "31375",
      "name": "Montesquieu-Volvestre",
      "lat": 43.1778,
      "lon": 1.2184,
      "population": 3050,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 2,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31376",
      "name": "Montgaillard-de-Salies",
      "lat": 43.0598,
      "lon": 0.9328,
      "population": 108,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31377",
      "name": "Montgaillard-Lauragais",
      "lat": 43.4293,
      "lon": 1.7037,
      "population": 683,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://montgaillard-lauragais.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://montgaillard-lauragais.fr/"
        }
      ]
    },
    {
      "insee": "31378",
      "name": "Montgaillard-sur-Save",
      "lat": 43.2545,
      "lon": 0.7145,
      "population": 66,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31379",
      "name": "Montgazin",
      "lat": 43.3038,
      "lon": 1.3061,
      "population": 164,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31380",
      "name": "Montgeard",
      "lat": 43.3458,
      "lon": 1.6427,
      "population": 568,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://montgeard.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://montgeard.fr/"
        }
      ]
    },
    {
      "insee": "31381",
      "name": "Montgiscard",
      "lat": 43.4507,
      "lon": 1.5687,
      "population": 2587,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-montgiscard.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-montgiscard.fr/"
        }
      ]
    },
    {
      "insee": "31382",
      "name": "Montgras",
      "lat": 43.4507,
      "lon": 1.0721,
      "population": 116,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31383",
      "name": "Montjoire",
      "lat": 43.7786,
      "lon": 1.5282,
      "population": 1243,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://mairie-montjoire.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://mairie-montjoire.fr/"
        }
      ]
    },
    {
      "insee": "31384",
      "name": "Montlaur",
      "lat": 43.4836,
      "lon": 1.5799,
      "population": 1791,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montlaur31.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montlaur31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montlaur31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montlaur31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31385",
      "name": "Montmaurin",
      "lat": 43.2254,
      "lon": 0.638,
      "population": 192,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 1,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31386",
      "name": "Montoulieu-Saint-Bernard",
      "lat": 43.2302,
      "lon": 0.9102,
      "population": 230,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31387",
      "name": "Montoussin",
      "lat": 43.2792,
      "lon": 1.0101,
      "population": 126,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31388",
      "name": "Montpitol",
      "lat": 43.7074,
      "lon": 1.6449,
      "population": 335,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montpitol.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montpitol.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montpitol.fr/fr/rechercher/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montpitol.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31389",
      "name": "Montrabé",
      "lat": 43.6436,
      "lon": 1.5333,
      "population": 4473,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montrabe.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montrabe.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montrabe.fr/accessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montrabe.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montrabe.fr/"
        }
      ]
    },
    {
      "insee": "31390",
      "name": "Montréjeau",
      "lat": 43.0876,
      "lon": 0.5588,
      "population": 2648,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montrejeau.com/fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-montrejeau.com/"
        }
      ]
    },
    {
      "insee": "31391",
      "name": "Montsaunès",
      "lat": 43.1084,
      "lon": 0.9328,
      "population": 455,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31392",
      "name": "Mourvilles-Basses",
      "lat": 43.4881,
      "lon": 1.6983,
      "population": 79,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31393",
      "name": "Mourvilles-Hautes",
      "lat": 43.4246,
      "lon": 1.8206,
      "population": 172,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31394",
      "name": "Moustajon",
      "lat": 42.8139,
      "lon": 0.5911,
      "population": 127,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31395",
      "name": "Muret",
      "lat": 43.4407,
      "lon": 1.2987,
      "population": 26079,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://mairie-muret.fr/politique-de-confidentialit%c3%a9"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-muret.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-muret.fr/"
        }
      ]
    },
    {
      "insee": "31396",
      "name": "Nailloux",
      "lat": 43.3673,
      "lon": 1.6115,
      "population": 4211,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 33,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31397",
      "name": "Nénigan",
      "lat": 43.3532,
      "lon": 0.7095,
      "population": 51,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31398",
      "name": "Nizan-Gesse",
      "lat": 43.2298,
      "lon": 0.5979,
      "population": 105,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31399",
      "name": "Noé",
      "lat": 43.3644,
      "lon": 1.2704,
      "population": 3067,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-noe.fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-noe.fr/"
        }
      ]
    },
    {
      "insee": "31400",
      "name": "Nogaret",
      "lat": 43.4934,
      "lon": 1.9347,
      "population": 96,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-nogaret.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-nogaret.fr/mentions-legales"
        }
      ]
    },
    {
      "insee": "31401",
      "name": "Noueilles",
      "lat": 43.4135,
      "lon": 1.5279,
      "population": 387,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 23,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31402",
      "name": "Odars",
      "lat": 43.5234,
      "lon": 1.5919,
      "population": 916,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://odars.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://odars.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://odars.fr/fr/mentions-legales-2.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://odars.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31403",
      "name": "Ondes",
      "lat": 43.7857,
      "lon": 1.3046,
      "population": 822,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-ondes31.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-ondes31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-ondes31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-ondes31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31404",
      "name": "Oô",
      "lat": 42.7475,
      "lon": 0.489,
      "population": 104,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 8,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://oo.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://oo.fr/"
        }
      ]
    },
    {
      "insee": "31405",
      "name": "Ore",
      "lat": 42.9737,
      "lon": 0.6463,
      "population": 120,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31406",
      "name": "Palaminy",
      "lat": 43.1948,
      "lon": 1.059,
      "population": 751,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://palaminy.fr/rgpd"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31407",
      "name": "Paulhac",
      "lat": 43.7602,
      "lon": 1.5556,
      "population": 1256,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://paulhac.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://paulhac.fr/"
        }
      ]
    },
    {
      "insee": "31408",
      "name": "Payssous",
      "lat": 43.0343,
      "lon": 0.7163,
      "population": 80,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31409",
      "name": "Péchabou",
      "lat": 43.5012,
      "lon": 1.5124,
      "population": 2449,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 32,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://pechabou.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://pechabou.fr/politique-de-confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://pechabou.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://pechabou.fr/"
        }
      ]
    },
    {
      "insee": "31410",
      "name": "Pechbonnieu",
      "lat": 43.7111,
      "lon": 1.4561,
      "population": 4922,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-pechbonnieu.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-pechbonnieu.fr/"
        }
      ]
    },
    {
      "insee": "31411",
      "name": "Pechbusque",
      "lat": 43.5269,
      "lon": 1.4544,
      "population": 975,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://pechbusque.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://pechbusque.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://pechbusque.fr/fr/index.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://pechbusque.fr/fr/contenu-permanent/mentions-legales.html"
        }
      ]
    },
    {
      "insee": "31412",
      "name": "Péguilhan",
      "lat": 43.3256,
      "lon": 0.703,
      "population": 274,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31413",
      "name": "Pelleport",
      "lat": 43.742,
      "lon": 1.1141,
      "population": 545,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pelleport31.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pelleport31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pelleport31.fr/fr/mentions-legales-2.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pelleport31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31414",
      "name": "Peyrissas",
      "lat": 43.2898,
      "lon": 0.9107,
      "population": 86,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31415",
      "name": "Peyrouzet",
      "lat": 43.209,
      "lon": 0.8362,
      "population": 81,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31416",
      "name": "Peyssies",
      "lat": 43.3264,
      "lon": 1.1806,
      "population": 723,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 25,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31417",
      "name": "Pibrac",
      "lat": 43.6245,
      "lon": 1.2584,
      "population": 8977,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 31,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://ville-pibrac.fr/accueil/mentions-legales"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-pibrac.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-pibrac.fr/"
        }
      ]
    },
    {
      "insee": "31418",
      "name": "Pin-Balma",
      "lat": 43.6222,
      "lon": 1.5373,
      "population": 1081,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pin-balma.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pin-balma.fr/"
        }
      ]
    },
    {
      "insee": "31419",
      "name": "Le Pin-Murelet",
      "lat": 43.3974,
      "lon": 1.0221,
      "population": 163,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31420",
      "name": "Pinsaguel",
      "lat": 43.503,
      "lon": 1.3919,
      "population": 2786,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pinsaguel.com/fr/liens-bas-de-page/accessibilite-partiellement-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pinsaguel.com/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pinsaguel.com/fr/liens-bas-de-page/accessibilite-partiellement-conforme.html"
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pinsaguel.com/fr/liens-bas-de-page/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pinsaguel.com/fr/index.html"
        }
      ]
    },
    {
      "insee": "31421",
      "name": "Pins-Justaret",
      "lat": 43.4825,
      "lon": 1.3914,
      "population": 4378,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pinsjustaret.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pinsjustaret.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pinsjustaret.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pinsjustaret.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31422",
      "name": "Plagne",
      "lat": 43.1591,
      "lon": 1.0584,
      "population": 95,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31423",
      "name": "Plagnole",
      "lat": 43.4114,
      "lon": 1.07,
      "population": 348,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://plagnole.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://plagnole.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://plagnole.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://plagnole.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31424",
      "name": "Plaisance-du-Touch",
      "lat": 43.5626,
      "lon": 1.2833,
      "population": 21079,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://plaisancedutouch.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://plaisancedutouch.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://plaisancedutouch.fr/politique-de-confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://plaisancedutouch.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://plaisancedutouch.fr/"
        }
      ]
    },
    {
      "insee": "31425",
      "name": "Le Plan",
      "lat": 43.1631,
      "lon": 1.1246,
      "population": 441,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31426",
      "name": "Pointis-de-Rivière",
      "lat": 43.0909,
      "lon": 0.626,
      "population": 825,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31427",
      "name": "Pointis-Inard",
      "lat": 43.0862,
      "lon": 0.7949,
      "population": 919,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pointisinard31.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pointisinard31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pointisinard31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pointisinard31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31428",
      "name": "Polastron",
      "lat": 43.3193,
      "lon": 0.9505,
      "population": 70,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31429",
      "name": "Pompertuzat",
      "lat": 43.4958,
      "lon": 1.5199,
      "population": 2155,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pompertuzat.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-pompertuzat.fr/"
        }
      ]
    },
    {
      "insee": "31430",
      "name": "Ponlat-Taillebourg",
      "lat": 43.1097,
      "lon": 0.5943,
      "population": 633,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31431",
      "name": "Portet-d'Aspet",
      "lat": 42.9412,
      "lon": 0.8522,
      "population": 63,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31432",
      "name": "Portet-de-Luchon",
      "lat": 42.8126,
      "lon": 0.4732,
      "population": 37,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 3,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31433",
      "name": "Portet-sur-Garonne",
      "lat": 43.5285,
      "lon": 1.3995,
      "population": 9782,
      "declaration": "PASS",
      "obligationsMet": 6,
      "obligationsDecided": 6,
      "pagesCrawled": 31,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://portetgaronne.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://portetgaronne.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://portetgaronne.fr/accessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://portetgaronne.fr/politique-de-gestion-des-donnees-personnelles"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://portetgaronne.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://portetgaronne.fr/"
        }
      ]
    },
    {
      "insee": "31434",
      "name": "Poubeau",
      "lat": 42.8272,
      "lon": 0.4909,
      "population": 78,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31435",
      "name": "Poucharramet",
      "lat": 43.42,
      "lon": 1.1657,
      "population": 974,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://poucharramet.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://poucharramet.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://poucharramet.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://poucharramet.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31436",
      "name": "Pouy-de-Touges",
      "lat": 43.3365,
      "lon": 1.0525,
      "population": 429,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31437",
      "name": "Pouze",
      "lat": 43.4341,
      "lon": 1.5353,
      "population": 89,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31439",
      "name": "Préserville",
      "lat": 43.5188,
      "lon": 1.6265,
      "population": 786,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://commune-preserville31.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://commune-preserville31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://commune-preserville31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://commune-preserville31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31440",
      "name": "Proupiary",
      "lat": 43.1575,
      "lon": 0.8672,
      "population": 61,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31441",
      "name": "Prunet",
      "lat": 43.572,
      "lon": 1.7301,
      "population": 153,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        }
      ]
    },
    {
      "insee": "31442",
      "name": "Puydaniel",
      "lat": 43.3315,
      "lon": 1.42,
      "population": 575,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-puydaniel.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-puydaniel.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-puydaniel.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-puydaniel.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31443",
      "name": "Puymaurin",
      "lat": 43.3712,
      "lon": 0.7494,
      "population": 309,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31444",
      "name": "Puysségur",
      "lat": 43.7531,
      "lon": 1.067,
      "population": 140,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31445",
      "name": "Quint-Fonsegrives",
      "lat": 43.5806,
      "lon": 1.5372,
      "population": 6133,
      "declaration": "PASS",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://quint-fonsegrives.fr/accessibilite-du-site-et-handicap"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://quint-fonsegrives.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://quint-fonsegrives.fr/"
        }
      ]
    },
    {
      "insee": "31446",
      "name": "Ramonville-Saint-Agne",
      "lat": 43.5438,
      "lon": 1.4784,
      "population": 15158,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 5,
      "pagesCrawled": 25,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://ramonville.fr/declaration-daccessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ramonville.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://ramonville.fr/politique-de-confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ramonville.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ramonville.fr/"
        }
      ]
    },
    {
      "insee": "31447",
      "name": "Razecueillé",
      "lat": 42.9626,
      "lon": 0.8139,
      "population": 29,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31448",
      "name": "Rebigue",
      "lat": 43.4896,
      "lon": 1.4801,
      "population": 505,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://rebigue.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://rebigue.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://rebigue.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://rebigue.fr/"
        }
      ]
    },
    {
      "insee": "31449",
      "name": "Régades",
      "lat": 43.0535,
      "lon": 0.7193,
      "population": 137,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 25,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31450",
      "name": "Renneville",
      "lat": 43.3803,
      "lon": 1.7224,
      "population": 573,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31451",
      "name": "Revel",
      "lat": 43.4679,
      "lon": 1.9975,
      "population": 9762,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 33,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-revel.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-revel.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-revel.fr/accessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-revel.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-revel.fr/"
        }
      ]
    },
    {
      "insee": "31452",
      "name": "Rieucazé",
      "lat": 43.0773,
      "lon": 0.7516,
      "population": 52,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31453",
      "name": "Rieumajou",
      "lat": 43.4112,
      "lon": 1.8023,
      "population": 134,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31454",
      "name": "Rieumes",
      "lat": 43.413,
      "lon": 1.1104,
      "population": 3517,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-rieumes.fr/"
        }
      ]
    },
    {
      "insee": "31455",
      "name": "Rieux-Volvestre",
      "lat": 43.2538,
      "lon": 1.2096,
      "population": 2639,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-rieux-volvestre.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-rieux-volvestre.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-rieux-volvestre.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-rieux-volvestre.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31456",
      "name": "Riolas",
      "lat": 43.3501,
      "lon": 0.9195,
      "population": 57,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31457",
      "name": "Roquefort-sur-Garonne",
      "lat": 43.1603,
      "lon": 0.9839,
      "population": 801,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31458",
      "name": "Roques",
      "lat": 43.507,
      "lon": 1.3576,
      "population": 5436,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-roques.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-roques.fr/"
        }
      ]
    },
    {
      "insee": "31459",
      "name": "Roquesérière",
      "lat": 43.7299,
      "lon": 1.634,
      "population": 942,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://roqueseriere.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://roqueseriere.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://roqueseriere.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://roqueseriere.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31460",
      "name": "Roquettes",
      "lat": 43.4948,
      "lon": 1.3745,
      "population": 4280,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 31,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://roquettes.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://roquettes.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://roquettes.fr/mentions-legales"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://roquettes.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://roquettes.fr/"
        }
      ]
    },
    {
      "insee": "31461",
      "name": "Rouède",
      "lat": 43.055,
      "lon": 0.8823,
      "population": 285,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://rouede.fr/politiques-de-confidentialite-rgpd"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://rouede.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://rouede.fr/"
        }
      ]
    },
    {
      "insee": "31462",
      "name": "Rouffiac-Tolosan",
      "lat": 43.6638,
      "lon": 1.5253,
      "population": 2363,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairiederouffiac.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairiederouffiac.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairiederouffiac.fr/accessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairiederouffiac.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairiederouffiac.fr/"
        }
      ]
    },
    {
      "insee": "31463",
      "name": "Roumens",
      "lat": 43.4634,
      "lon": 1.9388,
      "population": 250,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://mairie-roumens.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-roumens.fr/politique-de-confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-roumens.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-roumens.fr/"
        }
      ]
    },
    {
      "insee": "31464",
      "name": "Sabonnères",
      "lat": 43.4666,
      "lon": 1.057,
      "population": 332,
      "declaration": "PASS",
      "obligationsMet": 6,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sabonneres.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sabonneres.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sabonneres.fr/accessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://sabonneres.fr/confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sabonneres.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sabonneres.fr/"
        }
      ]
    },
    {
      "insee": "31465",
      "name": "Saccourvielle",
      "lat": 42.8209,
      "lon": 0.5671,
      "population": 22,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31466",
      "name": "Saiguède",
      "lat": 43.524,
      "lon": 1.1424,
      "population": 794,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairiedesaiguede.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairiedesaiguede.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairiedesaiguede.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairiedesaiguede.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31467",
      "name": "Saint-Alban",
      "lat": 43.6955,
      "lon": 1.4133,
      "population": 6534,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://saint-alban31.fr/politique-de-confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saint-alban31.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saint-alban31.fr/"
        }
      ]
    },
    {
      "insee": "31468",
      "name": "Saint-André",
      "lat": 43.2752,
      "lon": 0.8482,
      "population": 239,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saint-andre-en-comminges.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saint-andre-en-comminges.fr/"
        }
      ]
    },
    {
      "insee": "31469",
      "name": "Saint-Araille",
      "lat": 43.3536,
      "lon": 1.0067,
      "population": 123,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31470",
      "name": "Saint-Aventin",
      "lat": 42.7583,
      "lon": 0.5745,
      "population": 69,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31471",
      "name": "Saint-Béat-Lez",
      "lat": 42.8994,
      "lon": 0.6945,
      "population": 385,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31472",
      "name": "Saint-Bertrand-de-Comminges",
      "lat": 43.0229,
      "lon": 0.5562,
      "population": 243,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://st-bertrand.com/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://st-bertrand.com/"
        }
      ]
    },
    {
      "insee": "31473",
      "name": "Saint-Cézert",
      "lat": 43.7806,
      "lon": 1.1921,
      "population": 447,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saintcezert.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saintcezert.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saintcezert.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saintcezert.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31474",
      "name": "Saint-Christaud",
      "lat": 43.1915,
      "lon": 1.1329,
      "population": 235,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31475",
      "name": "Saint-Clar-de-Rivière",
      "lat": 43.4749,
      "lon": 1.208,
      "population": 1720,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 24,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31476",
      "name": "Saint-Élix-le-Château",
      "lat": 43.2826,
      "lon": 1.138,
      "population": 933,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 5,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://stelixlechateau.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://stelixlechateau.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://stelixlechateau.fr/fr/mentions-legales-1.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://stelixlechateau.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31477",
      "name": "Saint-Élix-Séglan",
      "lat": 43.1957,
      "lon": 0.8498,
      "population": 51,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31478",
      "name": "Saint-Félix-Lauragais",
      "lat": 43.454,
      "lon": 1.9057,
      "population": 1252,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://mairiestfelix.fr/donnees-personnelles"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairiestfelix.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairiestfelix.fr/"
        }
      ]
    },
    {
      "insee": "31479",
      "name": "Saint-Ferréol-de-Comminges",
      "lat": 43.341,
      "lon": 0.738,
      "population": 59,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31480",
      "name": "Sainte-Foy-d'Aigrefeuille",
      "lat": 43.5514,
      "lon": 1.6037,
      "population": 2576,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairiesaintefoydaigrefeuille.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairiesaintefoydaigrefeuille.fr/"
        }
      ]
    },
    {
      "insee": "31481",
      "name": "Sainte-Foy-de-Peyrolières",
      "lat": 43.4754,
      "lon": 1.1362,
      "population": 2088,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://sainte-foy-de-peyrolieres.fr/accueil/mentions-legales"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://sainte-foy-de-peyrolieres.fr/accueil/mentions-legales/politique-de-confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sainte-foy-de-peyrolieres.fr/accueil/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sainte-foy-de-peyrolieres.fr/"
        }
      ]
    },
    {
      "insee": "31482",
      "name": "Saint-Frajou",
      "lat": 43.3319,
      "lon": 0.8512,
      "population": 204,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31483",
      "name": "Saint-Gaudens",
      "lat": 43.1209,
      "lon": 0.7254,
      "population": 12139,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 32,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://stgo.fr/declaration-daccessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://stgo.fr/declaration-daccessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://stgo.fr/protection-des-donnees"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://stgo.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://stgo.fr/"
        }
      ]
    },
    {
      "insee": "31484",
      "name": "Saint-Geniès-Bellevue",
      "lat": 43.6809,
      "lon": 1.4819,
      "population": 2495,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 30,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saint-genies-bellevue.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saint-genies-bellevue.fr/"
        }
      ]
    },
    {
      "insee": "31485",
      "name": "Saint-Germier",
      "lat": 43.4672,
      "lon": 1.7255,
      "population": 133,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saintgermier31.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saintgermier31.fr/mentions-legales"
        }
      ]
    },
    {
      "insee": "31486",
      "name": "Saint-Hilaire",
      "lat": 43.4211,
      "lon": 1.2689,
      "population": 1807,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 23,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://mairie-sthilaire31.fr/mentions-legales-du-site"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-sthilaire31.fr/mentions-legales-du-site"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-sthilaire31.fr/"
        }
      ]
    },
    {
      "insee": "31487",
      "name": "Saint-Ignan",
      "lat": 43.1582,
      "lon": 0.686,
      "population": 218,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31488",
      "name": "Saint-Jean",
      "lat": 43.6641,
      "lon": 1.5016,
      "population": 11261,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saintjean.fr/"
        }
      ]
    },
    {
      "insee": "31489",
      "name": "Saint-Jean-Lherm",
      "lat": 43.6976,
      "lon": 1.6193,
      "population": 443,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saint-jean-lherm.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saint-jean-lherm.fr/"
        }
      ]
    },
    {
      "insee": "31490",
      "name": "Saint-Jory",
      "lat": 43.7398,
      "lon": 1.3539,
      "population": 8662,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 11,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saint-jory.fr/politique-de-confidentialite"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saint-jory.fr/regles-de-confidentialite"
        }
      ]
    },
    {
      "insee": "31491",
      "name": "Saint-Julia",
      "lat": 43.4943,
      "lon": 1.8949,
      "population": 418,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saint-julia.fr/"
        }
      ]
    },
    {
      "insee": "31492",
      "name": "Saint-Julien-sur-Garonne",
      "lat": 43.2497,
      "lon": 1.146,
      "population": 549,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saintjuliensurgaronne.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saintjuliensurgaronne.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saintjuliensurgaronne.fr/fr/index.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saintjuliensurgaronne.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31493",
      "name": "Saint-Lary-Boujean",
      "lat": 43.2206,
      "lon": 0.7397,
      "population": 127,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31494",
      "name": "Saint-Laurent",
      "lat": 43.3255,
      "lon": 0.8007,
      "population": 178,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saintlaurentsursave.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saintlaurentsursave.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saintlaurentsursave.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saintlaurentsursave.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31495",
      "name": "Saint-Léon",
      "lat": 43.3962,
      "lon": 1.5645,
      "population": 1265,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saintleon31.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saintleon31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saintleon31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saintleon31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31496",
      "name": "Sainte-Livrade",
      "lat": 43.6487,
      "lon": 1.1136,
      "population": 255,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 20,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sainte-livrade31.fr/?page=mentions"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sainte-livrade31.fr/"
        }
      ]
    },
    {
      "insee": "31497",
      "name": "Saint-Loup-Cammas",
      "lat": 43.6968,
      "lon": 1.4786,
      "population": 2334,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saintloupcammas.fr/mentions_legales.vdom"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saintloupcammas.fr/accueil.vdom"
        }
      ]
    },
    {
      "insee": "31498",
      "name": "Saint-Loup-en-Comminges",
      "lat": 43.2426,
      "lon": 0.573,
      "population": 38,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31499",
      "name": "Saint-Lys",
      "lat": 43.5106,
      "lon": 1.2023,
      "population": 9892,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 31,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://saint-lys.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://saint-lys.fr/protection-des-donnees"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saint-lys.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saint-lys.fr/"
        }
      ]
    },
    {
      "insee": "31500",
      "name": "Saint-Mamet",
      "lat": 42.7719,
      "lon": 0.6328,
      "population": 548,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saint-mamet31.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saint-mamet31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saint-mamet31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saint-mamet31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31501",
      "name": "Saint-Marcel-Paulel",
      "lat": 43.6564,
      "lon": 1.6149,
      "population": 483,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saintmarcelpaulel.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saintmarcelpaulel.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saintmarcelpaulel.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saintmarcelpaulel.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31502",
      "name": "Saint-Marcet",
      "lat": 43.1938,
      "lon": 0.7437,
      "population": 368,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31503",
      "name": "Saint-Martory",
      "lat": 43.1449,
      "lon": 0.9384,
      "population": 1027,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://commune-saintmartory.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31504",
      "name": "Saint-Médard",
      "lat": 43.1287,
      "lon": 0.829,
      "population": 225,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31505",
      "name": "Saint-Michel",
      "lat": 43.1613,
      "lon": 1.0819,
      "population": 306,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 2,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31506",
      "name": "Saint-Orens-de-Gameville",
      "lat": 43.555,
      "lon": 1.5332,
      "population": 14646,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 32,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-saint-orens.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-saint-orens.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-saint-orens.fr/mentions-legales"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-saint-orens.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-saint-orens.fr/"
        }
      ]
    },
    {
      "insee": "31507",
      "name": "Saint-Paul-sur-Save",
      "lat": 43.699,
      "lon": 1.2197,
      "population": 1816,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saintpaulsursave.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saintpaulsursave.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saintpaulsursave.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saintpaulsursave.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31508",
      "name": "Saint-Paul-d'Oueil",
      "lat": 42.8408,
      "lon": 0.5516,
      "population": 46,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31509",
      "name": "Saint-Pé-d'Ardet",
      "lat": 42.9856,
      "lon": 0.6816,
      "population": 166,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saintpedardet31.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saintpedardet31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saintpedardet31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saintpedardet31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31510",
      "name": "Saint-Pé-Delbosc",
      "lat": 43.2681,
      "lon": 0.6964,
      "population": 142,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31511",
      "name": "Saint-Pierre",
      "lat": 43.6371,
      "lon": 1.6408,
      "population": 268,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31512",
      "name": "Saint-Pierre-de-Lages",
      "lat": 43.5657,
      "lon": 1.627,
      "population": 886,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saintpierredelages.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saintpierredelages.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saintpierredelages.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saintpierredelages.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31513",
      "name": "Saint-Plancard",
      "lat": 43.169,
      "lon": 0.5683,
      "population": 398,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31514",
      "name": "Saint-Rome",
      "lat": 43.4151,
      "lon": 1.6745,
      "population": 57,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31515",
      "name": "Saint-Rustice",
      "lat": 43.8027,
      "lon": 1.3282,
      "population": 439,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 1,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31516",
      "name": "Saint-Sauveur",
      "lat": 43.749,
      "lon": 1.3947,
      "population": 2243,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31517",
      "name": "Saint-Sulpice-sur-Lèze",
      "lat": 43.3252,
      "lon": 1.341,
      "population": 2277,
      "declaration": "PASS",
      "obligationsMet": 6,
      "obligationsDecided": 6,
      "pagesCrawled": 33,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://stsulpicesurleze.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://stsulpicesurleze.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://stsulpicesurleze.fr/accessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://stsulpicesurleze.fr/rgpd-et-cybersecurite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://stsulpicesurleze.fr/politique-de-cookies-ue"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://stsulpicesurleze.fr/"
        }
      ]
    },
    {
      "insee": "31518",
      "name": "Saint-Thomas",
      "lat": 43.5152,
      "lon": 1.0835,
      "population": 627,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saint-thomas-31.fr/contact.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://saint-thomas-31.fr/"
        }
      ]
    },
    {
      "insee": "31519",
      "name": "Saint-Vincent",
      "lat": 43.4398,
      "lon": 1.7582,
      "population": 215,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31520",
      "name": "Sajas",
      "lat": 43.3765,
      "lon": 1.0259,
      "population": 104,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31521",
      "name": "Saleich",
      "lat": 43.0234,
      "lon": 0.9649,
      "population": 335,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saleich.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saleich.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saleich.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://saleich.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31522",
      "name": "Salherm",
      "lat": 43.3078,
      "lon": 0.8275,
      "population": 66,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31523",
      "name": "Salies-du-Salat",
      "lat": 43.1013,
      "lon": 0.9637,
      "population": 1733,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 25,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-salies-salat.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-salies-salat.fr/"
        }
      ]
    },
    {
      "insee": "31524",
      "name": "Salles-et-Pratviel",
      "lat": 42.8321,
      "lon": 0.6072,
      "population": 129,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31525",
      "name": "Salles-sur-Garonne",
      "lat": 43.277,
      "lon": 1.1711,
      "population": 584,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "http://salles-sur-garonne.fr/"
        }
      ]
    },
    {
      "insee": "31526",
      "name": "La Salvetat-Saint-Gilles",
      "lat": 43.5768,
      "lon": 1.2655,
      "population": 8511,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lasalvetat31.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lasalvetat31.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lasalvetat31.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://lasalvetat31.fr/"
        }
      ]
    },
    {
      "insee": "31527",
      "name": "La Salvetat-Lauragais",
      "lat": 43.5466,
      "lon": 1.8013,
      "population": 151,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31528",
      "name": "Saman",
      "lat": 43.2398,
      "lon": 0.7223,
      "population": 143,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31529",
      "name": "Samouillan",
      "lat": 43.2673,
      "lon": 0.948,
      "population": 110,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31530",
      "name": "Sana",
      "lat": 43.2277,
      "lon": 1.0115,
      "population": 236,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31531",
      "name": "Sarrecave",
      "lat": 43.2155,
      "lon": 0.5943,
      "population": 69,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 18,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://sarrecave.fr/politiques-de-confidentialite-rgpd"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sarrecave.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sarrecave.fr/"
        }
      ]
    },
    {
      "insee": "31532",
      "name": "Sarremezan",
      "lat": 43.211,
      "lon": 0.6673,
      "population": 89,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://sarremezan.fr/politiques-de-confidentialite-rgpd"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sarremezan.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sarremezan.fr/"
        }
      ]
    },
    {
      "insee": "31533",
      "name": "Saubens",
      "lat": 43.4799,
      "lon": 1.3592,
      "population": 2364,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saubens.com/wdps/donnees-personnelles"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saubens.com/wdps/infos-legales"
        }
      ]
    },
    {
      "insee": "31534",
      "name": "Saussens",
      "lat": 43.5922,
      "lon": 1.7257,
      "population": 217,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saussens.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saussens.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saussens.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-saussens.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31535",
      "name": "Sauveterre-de-Comminges",
      "lat": 43.0337,
      "lon": 0.6744,
      "population": 702,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sauveterre-de-comminges.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://sauveterre-de-comminges.fr/"
        }
      ]
    },
    {
      "insee": "31536",
      "name": "Saux-et-Pomarède",
      "lat": 43.1508,
      "lon": 0.7043,
      "population": 245,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31537",
      "name": "Savarthès",
      "lat": 43.1237,
      "lon": 0.8032,
      "population": 195,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31538",
      "name": "Savères",
      "lat": 43.3743,
      "lon": 1.0991,
      "population": 209,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31539",
      "name": "Sédeilhac",
      "lat": 43.1467,
      "lon": 0.5404,
      "population": 63,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31540",
      "name": "Ségreville",
      "lat": 43.4918,
      "lon": 1.7491,
      "population": 329,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31541",
      "name": "Seilh",
      "lat": 43.692,
      "lon": 1.3574,
      "population": 3356,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://mairie-seilh.fr/mentions-legales-rgpd"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-seilh.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-seilh.fr/"
        }
      ]
    },
    {
      "insee": "31542",
      "name": "Seilhan",
      "lat": 43.0517,
      "lon": 0.581,
      "population": 207,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-seilhan31.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-seilhan31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-seilhan31.fr/fr/mentions-legales-credits.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-seilhan31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31543",
      "name": "Sénarens",
      "lat": 43.3533,
      "lon": 0.9776,
      "population": 118,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31544",
      "name": "Sengouagnet",
      "lat": 42.9625,
      "lon": 0.7824,
      "population": 228,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31545",
      "name": "Sepx",
      "lat": 43.1563,
      "lon": 0.8401,
      "population": 211,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-sepx.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-sepx.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-sepx.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-sepx.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31546",
      "name": "Seyre",
      "lat": 43.3642,
      "lon": 1.6638,
      "population": 129,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31547",
      "name": "Seysses",
      "lat": 43.4971,
      "lon": 1.2822,
      "population": 10539,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-seysses.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-seysses.fr/"
        }
      ]
    },
    {
      "insee": "31548",
      "name": "Signac",
      "lat": 42.9084,
      "lon": 0.6167,
      "population": 40,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31549",
      "name": "Sode",
      "lat": 42.8122,
      "lon": 0.6399,
      "population": 18,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31550",
      "name": "Soueich",
      "lat": 43.0524,
      "lon": 0.7832,
      "population": 514,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31551",
      "name": "Tarabel",
      "lat": 43.5122,
      "lon": 1.6773,
      "population": 601,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 2,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31552",
      "name": "Terrebasse",
      "lat": 43.2403,
      "lon": 0.9752,
      "population": 135,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31553",
      "name": "Thil",
      "lat": 43.7059,
      "lon": 1.1503,
      "population": 1136,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-thil31.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-thil31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-thil31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-thil31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31554",
      "name": "Touille",
      "lat": 43.0856,
      "lon": 0.9804,
      "population": 245,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31555",
      "name": "Toulouse",
      "lat": 43.6007,
      "lon": 1.4328,
      "population": 514819,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 33,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://metropole.toulouse.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://metropole.toulouse.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://metropole.toulouse.fr/donnees-personnelles"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://metropole.toulouse.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://metropole.toulouse.fr/"
        }
      ]
    },
    {
      "insee": "31556",
      "name": "Les Tourreilles",
      "lat": 43.1127,
      "lon": 0.5498,
      "population": 376,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31557",
      "name": "Tournefeuille",
      "lat": 43.5747,
      "lon": 1.3338,
      "population": 30168,
      "declaration": "PASS",
      "obligationsMet": 6,
      "obligationsDecided": 6,
      "pagesCrawled": 31,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-tournefeuille.fr/declaration-daccessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-tournefeuille.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-tournefeuille.fr/declaration-daccessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-tournefeuille.fr/protection-des-donnees"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-tournefeuille.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-tournefeuille.fr/"
        }
      ]
    },
    {
      "insee": "31558",
      "name": "Toutens",
      "lat": 43.4747,
      "lon": 1.7463,
      "population": 430,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-toutens31.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-toutens31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-toutens31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-toutens31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31559",
      "name": "Trébons-de-Luchon",
      "lat": 42.8021,
      "lon": 0.5687,
      "population": 8,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 24,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://trebonsdeluchon.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://trebonsdeluchon.fr/"
        }
      ]
    },
    {
      "insee": "31560",
      "name": "Trébons-sur-la-Grasse",
      "lat": 43.4505,
      "lon": 1.7225,
      "population": 505,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://trebons.fr/"
        }
      ]
    },
    {
      "insee": "31561",
      "name": "L'Union",
      "lat": 43.6515,
      "lon": 1.483,
      "population": 12638,
      "declaration": "PASS",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 33,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-lunion.fr/personne-en-situation-de-handicap/obligation-daccessibilite-erp-aux-personnes-situation-de-handicap"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-lunion.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://ville-lunion.fr/"
        }
      ]
    },
    {
      "insee": "31562",
      "name": "Urau",
      "lat": 43.0008,
      "lon": 0.959,
      "population": 118,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31563",
      "name": "Vacquiers",
      "lat": 43.7895,
      "lon": 1.486,
      "population": 1492,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31564",
      "name": "Valcabrère",
      "lat": 43.03,
      "lon": 0.5828,
      "population": 151,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31565",
      "name": "Valentine",
      "lat": 43.0886,
      "lon": 0.7009,
      "population": 869,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://valentine-lamairie.fr/mentions-legales"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://valentine-lamairie.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://valentine-lamairie.fr/"
        }
      ]
    },
    {
      "insee": "31566",
      "name": "Vallègue",
      "lat": 43.4256,
      "lon": 1.7547,
      "population": 509,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-vallegue.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-vallegue.fr/"
        }
      ]
    },
    {
      "insee": "31567",
      "name": "Vallesvilles",
      "lat": 43.5948,
      "lon": 1.6487,
      "population": 462,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31568",
      "name": "Varennes",
      "lat": 43.4779,
      "lon": 1.6955,
      "population": 255,
      "declaration": "FAIL",
      "obligationsMet": 0,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        }
      ]
    },
    {
      "insee": "31569",
      "name": "Vaudreuille",
      "lat": 43.4226,
      "lon": 2.0008,
      "population": 392,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-vaudreuille.fr/_authenticate?requestedURL=/fr/index.html"
        }
      ]
    },
    {
      "insee": "31570",
      "name": "Vaux",
      "lat": 43.462,
      "lon": 1.8298,
      "population": 310,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31571",
      "name": "Vendine",
      "lat": 43.5904,
      "lon": 1.7651,
      "population": 269,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31572",
      "name": "Venerque",
      "lat": 43.4363,
      "lon": 1.4629,
      "population": 2974,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://venerque.fr/"
        }
      ]
    },
    {
      "insee": "31573",
      "name": "Verfeil",
      "lat": 43.6579,
      "lon": 1.6792,
      "population": 3954,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://mairie-verfeil31.fr/mentions-legales"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-verfeil31.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-verfeil31.fr/"
        }
      ]
    },
    {
      "insee": "31574",
      "name": "Vernet",
      "lat": 43.4272,
      "lon": 1.4193,
      "population": 3381,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-le-vernet-31.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-le-vernet-31.fr/"
        }
      ]
    },
    {
      "insee": "31575",
      "name": "Vieille-Toulouse",
      "lat": 43.5299,
      "lon": 1.4368,
      "population": 1230,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://vieille-toulouse.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://vieille-toulouse.fr/"
        }
      ]
    },
    {
      "insee": "31576",
      "name": "Vieillevigne",
      "lat": 43.4092,
      "lon": 1.6599,
      "population": 344,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-vieillevigne-31.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-vieillevigne-31.fr/"
        }
      ]
    },
    {
      "insee": "31577",
      "name": "Vignaux",
      "lat": 43.6897,
      "lon": 1.0654,
      "population": 157,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31578",
      "name": "Vigoulet-Auzil",
      "lat": 43.508,
      "lon": 1.4482,
      "population": 1040,
      "declaration": "FAIL",
      "obligationsMet": 1,
      "obligationsDecided": 6,
      "pagesCrawled": 5,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-vigoulet-auzil.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "FAIL",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31579",
      "name": "Villariès",
      "lat": 43.7512,
      "lon": 1.4899,
      "population": 921,
      "declaration": "FAIL",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://villaries.fr/mentions-legales"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://villaries.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://villaries.fr/"
        }
      ]
    },
    {
      "insee": "31580",
      "name": "Villate",
      "lat": 43.4679,
      "lon": 1.383,
      "population": 1233,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-villate.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-villate.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-villate.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-villate.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31581",
      "name": "Villaudric",
      "lat": 43.832,
      "lon": 1.4372,
      "population": 1653,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://villaudric.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://villaudric.fr/"
        }
      ]
    },
    {
      "insee": "31582",
      "name": "Villefranche-de-Lauragais",
      "lat": 43.4065,
      "lon": 1.7185,
      "population": 5072,
      "declaration": "PASS",
      "obligationsMet": 6,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-villefranchedelauragais.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-villefranchedelauragais.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-villefranchedelauragais.fr/accessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://mairie-villefranchedelauragais.fr/mentions-legales"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-villefranchedelauragais.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-villefranchedelauragais.fr/"
        }
      ]
    },
    {
      "insee": "31583",
      "name": "Villematier",
      "lat": 43.8312,
      "lon": 1.4934,
      "population": 1133,
      "declaration": "PASS",
      "obligationsMet": 4,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-villematier31.fr/fr/accessibilite-non-conforme.html"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-villematier31.fr/fr/index.html"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-villematier31.fr/fr/mentions-legales.html"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-villematier31.fr/fr/index.html"
        }
      ]
    },
    {
      "insee": "31584",
      "name": "Villemur-sur-Tarn",
      "lat": 43.8582,
      "lon": 1.4947,
      "population": 6345,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 27,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-villemur-sur-tarn.fr/site/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-villemur-sur-tarn.fr/site"
        }
      ]
    },
    {
      "insee": "31585",
      "name": "Villeneuve-de-Rivière",
      "lat": 43.121,
      "lon": 0.6681,
      "population": 1725,
      "declaration": "PASS",
      "obligationsMet": 6,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://villeneuvederiviere.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://villeneuvederiviere.fr/"
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://villeneuvederiviere.fr/accessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://villeneuvederiviere.fr/confidentialite"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://villeneuvederiviere.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://villeneuvederiviere.fr/"
        }
      ]
    },
    {
      "insee": "31586",
      "name": "Villeneuve-Lécussan",
      "lat": 43.1344,
      "lon": 0.4843,
      "population": 544,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31587",
      "name": "Villeneuve-lès-Bouloc",
      "lat": 43.7795,
      "lon": 1.4247,
      "population": 1687,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://villeneuvelesbouloc.fr/fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://villeneuvelesbouloc.fr/fr/accessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://villeneuvelesbouloc.fr/fr"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://villeneuvelesbouloc.fr/fr"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://villeneuvelesbouloc.fr/fr"
        }
      ]
    },
    {
      "insee": "31588",
      "name": "Villeneuve-Tolosane",
      "lat": 43.5273,
      "lon": 1.3447,
      "population": 11044,
      "declaration": "PASS",
      "obligationsMet": 3,
      "obligationsDecided": 6,
      "pagesCrawled": 28,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://villeneuve-tolosane.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "MEDIUM",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://villeneuve-tolosane.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://villeneuve-tolosane.fr/"
        }
      ]
    },
    {
      "insee": "31589",
      "name": "Villenouvelle",
      "lat": 43.4368,
      "lon": 1.6583,
      "population": 1487,
      "declaration": "FAIL",
      "obligationsMet": 2,
      "obligationsDecided": 6,
      "pagesCrawled": 26,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-villenouvelle.fr/"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://mairie-villenouvelle.fr/"
        }
      ]
    },
    {
      "insee": "31590",
      "name": "Binos",
      "lat": 42.9048,
      "lon": 0.6095,
      "population": 40,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31591",
      "name": "Escoulis",
      "lat": 43.1106,
      "lon": 1.0302,
      "population": 76,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    },
    {
      "insee": "31592",
      "name": "Larra",
      "lat": 43.7355,
      "lon": 1.2223,
      "population": 2273,
      "declaration": "PASS",
      "obligationsMet": 5,
      "obligationsDecided": 6,
      "pagesCrawled": 29,
      "readOn": "2026-10-17",
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://larra.fr/accessibilite"
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "FAIL",
          "confidence": "HIGH",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://larra.fr/accessibilite"
        },
        {
          "code": "DPO_CONTACT",
          "status": "PASS",
          "confidence": "MEDIUM",
          "url": "https://larra.fr/mentions-legales"
        },
        {
          "code": "RGPD_POLICY",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://larra.fr/mentions-legales"
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "PASS",
          "confidence": "HIGH",
          "url": "https://larra.fr/"
        }
      ]
    },
    {
      "insee": "31593",
      "name": "Cazac",
      "lat": 43.3467,
      "lon": 0.9562,
      "population": 75,
      "declaration": "UNKNOWN",
      "obligationsMet": 0,
      "obligationsDecided": 0,
      "pagesCrawled": 0,
      "readOn": null,
      "checks": [
        {
          "code": "A11Y_DECLARATION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_HOMEPAGE_MENTION",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "A11Y_SCHEMA",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "DPO_CONTACT",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "RGPD_POLICY",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        },
        {
          "code": "MENTIONS_LEGALES",
          "status": "UNKNOWN",
          "confidence": "LOW",
          "url": null
        }
      ]
    }
  ]
}
