API-KA — plateforme centrale : collecte quotidienne des 8 services KA, historisation append-only et API publique sur www.api-ka.com
Python 60.9%
HTML 21%
TypeScript 7.3%
JavaScript 5.2%
CSS 4.8%
Shell 0.8%
1# ============================================2# Projet : API-KA3# Fichier : src/api/routes/__init__.py4# Node : m3u96b5# Author : Simon-Pierre Boucher6# Contact : contact@spboucher.ai7# Date : 2026-08-168# ============================================9"""Routes de l'API publique + enveloppe de réponse uniforme."""1011from __future__ import annotations1213from typing import Any1415from src.config import get_settings161718def envelope(19 data: Any,20 *,21 page: int | None = None,22 limit: int | None = None,23 total: int | None = None,24 extra_meta: dict[str, Any] | None = None,25) -> dict[str, Any]:26 """Construit la réponse uniforme ``{success, data, meta}`` de l'API.2728 Le ``meta`` contient toujours le node (m3u96b) et, si fournis, la29 pagination (``page``, ``limit``, ``total``).30 """31 meta: dict[str, Any] = {}32 if page is not None:33 meta["page"] = page34 if limit is not None:35 meta["limit"] = limit36 if total is not None:37 meta["total"] = total38 meta["node"] = get_settings().node_name39 if extra_meta:40 meta.update(extra_meta)41 return {"success": True, "data": data, "meta": meta}42