    {
      "generatedAtUtc":"2026-08-08T11:09:27.768123568Z",
      "overallStatusCode":"OPERATIONAL",
      "overallLabel":"Operational",
      "components":[ {
  "id":"6f375863-b262-4bc0-8ad9-c23a7ab3aa04",
  "componentKey":"api",
  "name":"API TripBill",
  "description":"Endpoints mobiles, web et intégrations.",
  "groupKey":"core",
  "statusCode":"OPERATIONAL",
  "statusMessage":null,
  "sortOrder":10,
  "visiblePublic":true,
  "updatedAtUtc":"2026-06-10T18:56:26.442797Z",
  "updatedByAdminId":null
},
{
  "id":"38dc42c6-ba30-4e17-a072-e7a5010efb4f",
  "componentKey":"cloud_sync",
  "name":"Synchronisation cloud",
  "description":"Synchronisation des voyages, dépenses, tickets et paramètres.",
  "groupKey":"core",
  "statusCode":"OPERATIONAL",
  "statusMessage":null,
  "sortOrder":20,
  "visiblePublic":true,
  "updatedAtUtc":"2026-06-10T18:56:26.442797Z",
  "updatedByAdminId":null
},
{
  "id":"094f3141-b2b8-4a2d-8892-27b2f7def1ba",
  "componentKey":"web_app",
  "name":"Application web",
  "description":"Portail web TripBill.",
  "groupKey":"apps",
  "statusCode":"OPERATIONAL",
  "statusMessage":null,
  "sortOrder":30,
  "visiblePublic":true,
  "updatedAtUtc":"2026-06-10T18:56:26.442797Z",
  "updatedByAdminId":null
},
{
  "id":"7954e184-f64b-42d2-aae3-6a85f388566b",
  "componentKey":"android_app",
  "name":"Application Android",
  "description":"Application Android native TripBill.",
  "groupKey":"apps",
  "statusCode":"OPERATIONAL",
  "statusMessage":null,
  "sortOrder":40,
  "visiblePublic":true,
  "updatedAtUtc":"2026-06-10T18:56:26.442797Z",
  "updatedByAdminId":null
},
{
  "id":"d6a9128d-fc34-4865-af8c-80f64ba45695",
  "componentKey":"database",
  "name":"Base de données",
  "description":"Stockage PostgreSQL principal.",
  "groupKey":"core",
  "statusCode":"OPERATIONAL",
  "statusMessage":null,
  "sortOrder":50,
  "visiblePublic":true,
  "updatedAtUtc":"2026-06-10T18:56:26.442797Z",
  "updatedByAdminId":null
},
{
  "id":"ff559784-178f-486f-9ce8-881a86a49610",
  "componentKey":"auth",
  "name":"Authentification",
  "description":"Login, sessions, Google Sign-In et récupération de compte.",
  "groupKey":"core",
  "statusCode":"OPERATIONAL",
  "statusMessage":null,
  "sortOrder":60,
  "visiblePublic":true,
  "updatedAtUtc":"2026-06-10T18:56:26.442797Z",
  "updatedByAdminId":null
},
{
  "id":"a3ced1cb-6dad-4304-8a6e-0e05439ae1ea",
  "componentKey":"receipts_storage",
  "name":"Tickets et fichiers",
  "description":"Upload, stockage et affichage des justificatifs.",
  "groupKey":"features",
  "statusCode":"OPERATIONAL",
  "statusMessage":null,
  "sortOrder":70,
  "visiblePublic":true,
  "updatedAtUtc":"2026-06-10T18:56:26.442797Z",
  "updatedByAdminId":null
},
{
  "id":"4f2f551a-3a58-4940-a3e3-dcc28cd44497",
  "componentKey":"receipt_ocr",
  "name":"OCR tickets",
  "description":"Analyse assistée des tickets.",
  "groupKey":"features",
  "statusCode":"OPERATIONAL",
  "statusMessage":null,
  "sortOrder":80,
  "visiblePublic":true,
  "updatedAtUtc":"2026-06-10T18:56:26.442797Z",
  "updatedByAdminId":null
},
{
  "id":"a1face40-b507-4f68-b378-f2a833afd7ef",
  "componentKey":"reports",
  "name":"Rapports PDF / CSV",
  "description":"Génération et envoi des rapports.",
  "groupKey":"features",
  "statusCode":"OPERATIONAL",
  "statusMessage":null,
  "sortOrder":90,
  "visiblePublic":true,
  "updatedAtUtc":"2026-06-10T18:56:26.442797Z",
  "updatedByAdminId":null
},
{
  "id":"611c770a-df76-464c-83aa-3404f14af418",
  "componentKey":"transactional_email",
  "name":"Emails transactionnels",
  "description":"Emails de compte, sécurité, rapports et notifications.",
  "groupKey":"integrations",
  "statusCode":"OPERATIONAL",
  "statusMessage":null,
  "sortOrder":100,
  "visiblePublic":true,
  "updatedAtUtc":"2026-06-10T18:56:26.442797Z",
  "updatedByAdminId":null
},
{
  "id":"aa2f0984-090c-4cf5-bdf5-d307e9491aa9",
  "componentKey":"push_notifications",
  "name":"Notifications push",
  "description":"Notifications Android et futures notifications mobiles.",
  "groupKey":"integrations",
  "statusCode":"OPERATIONAL",
  "statusMessage":null,
  "sortOrder":110,
  "visiblePublic":true,
  "updatedAtUtc":"2026-06-10T18:56:26.442797Z",
  "updatedByAdminId":null
},
{
  "id":"a240e31c-28bf-43ff-9f30-7af72b8fd0ca",
  "componentKey":"billing",
  "name":"Billing / abonnements",
  "description":"Plans, abonnements et validation Google Play.",
  "groupKey":"integrations",
  "statusCode":"OPERATIONAL",
  "statusMessage":null,
  "sortOrder":120,
  "visiblePublic":true,
  "updatedAtUtc":"2026-06-10T18:56:26.442797Z",
  "updatedByAdminId":null
},
{
  "id":"475cbc95-9548-4156-bf13-72dc1c91fb29",
  "componentKey":"exchange_rates",
  "name":"Taux de change",
  "description":"Récupération et application des taux de change.",
  "groupKey":"features",
  "statusCode":"OPERATIONAL",
  "statusMessage":null,
  "sortOrder":130,
  "visiblePublic":true,
  "updatedAtUtc":"2026-06-10T18:56:26.442797Z",
  "updatedByAdminId":null
},
{
  "id":"3260576f-6fb8-44da-a621-ba739024ae95",
  "componentKey":"destination_data",
  "name":"Données destination",
  "description":"Données pays, devises et destinations.",
  "groupKey":"features",
  "statusCode":"OPERATIONAL",
  "statusMessage":null,
  "sortOrder":140,
  "visiblePublic":true,
  "updatedAtUtc":"2026-06-10T18:56:26.442797Z",
  "updatedByAdminId":null
} ],
      "incidents":[  ],
      "updates":[  ]
    }