// api

API publique

Cette page inventorie la surface machine de l0g : Agent Surface 1.10, claims sourcées, evidence graph, Risk Diff, Black Box Recorder, snapshots de risque, endpoint canonique debt-risk.json et historique signals/history pour replay et backtest. CORS ouvert, aucune clé, aucune authentification, aucun pistage.

English version available →

// endpoints

Les points d'accès publics, sans clé ni authentification. Agent Surface 1.10 est le contrat de lecture pour agents ; les endpoints de risque restent des snapshots spécialisés.

GET /donnees/agents/ HTML Documentation Agent Surface 1.10 : règles de citation, flux recommandé, garde-fous, champs temporels et endpoints M2M. GET /agents.json JSON Manifeste de découverte pour agents : capacités, endpoints, règles d'usage et politique de preuve. GET /openapi.json OPENAPI Contrat OpenAPI 3.1 des endpoints M2M de l0g. GET /api/v1/claims.json JSON Graphe affirmation-source : claims typées, références cliquables, datées quand détectable. GET /api/v1/evidence-graph.json JSON Evidence graph : articles, claims, références, hôtes, sources primaires et datasets en nœuds/arêtes. GET /api/v1/catalog.ndjson NDJSON Catalogue complet ligne à ligne pour ingestion streaming, RAG ou indexation incrémentale. GET /api/v1/claims.ndjson NDJSON Claims typées en flux NDJSON, avec références embarquées. GET /api/v1/evidence-graph.ndjson NDJSON Evidence graph ligne à ligne : nœuds puis arêtes. GET /api/v1/sources.json JSON Sources primaires et hôtes effectivement cités par le corpus. GET /api/v1/freshness.json JSON Fraîcheur du corpus et des signaux : dates utiles, expiration et couverture. GET /api/v1/integrity.json JSON Empreintes SHA-256 canoniques des surfaces Agent Surface, pour vérifier un snapshot. GET /api/v1/changes.json JSON Changefeed machine : versions, hashes courants, statut de diff et changements sémantiques. GET /api/v1/changes.ndjson NDJSON Changefeed en flux ligne à ligne, avec métadonnées de version pour watchers. GET /api/v1/black-box.json JSON Black Box Recorder : frames point-in-time hashées pour rejouer l’état public du risque. GET /api/v1/risk-diff.json JSON Risk Diff : ce qui change dans les signaux, sources, claims, modèles, articles et niveau de confiance. GET /api/v1/catalog.json JSON Catalogue machine complet : articles, guides, sources, atlas du glossaire et protocole. GET /api/v1/risk.json JSON État courant des dashboards historiques et synthèse confluence. GET /api/v1/debt-risk.json JSON Snapshot canonique Debt Risk Radar importé depuis latest.json : score courant hors CBO, buckets, couverture des sources, provenance et top signaux. GET /api/v1/risk.xml Atom Flux des changements de niveau, pour bots d'alerte et SIEM. GET /api/v1/signals/current.json JSON Dernières observations point-in-time par instrument, dérivées de l'historique public. GET /api/v1/signals/history.json JSON Surface complète de l'historique : coverage, policy, current, observations backtestables et levelChanges d'audit. GET /api/v1/signals/history.ndjson NDJSON Historique ligne à ligne : une ligne meta, puis observations, puis événements level-change. GET /api/v1/signals/history.csv CSV Observations à plat pour pandas, R, DuckDB ou tableur. GET /api/v1/signals/schema.json JSON Schéma machine des lignes meta, observation et level-change.

// exemple

curl -s https://l0g.fr/agents.json
curl -s https://l0g.fr/api/v1/risk.json
curl -s https://l0g.fr/api/v1/debt-risk.json
curl -s https://l0g.fr/api/v1/signals/history.ndjson | head
{
  "version": "1",
  "generated": "2026-06-18T08:00:00Z",
  "snapshot": "2026-06-16T08:16:13Z",
  "indices": {
    "us":      { "value": 58, "scale": 100, "level": "Élevé",  "tone": "elevated", "label": "US Macro Dashboard", "source": "https://us.l0g.fr" },
    "eu":      { "value": 47, "scale": 100, "level": "Modéré", "tone": "moderate", "label": "EU Macro Dashboard", "source": "https://euro.l0g.fr" },
    "yen":     { "value": 41, "scale": 100, "level": "Modéré", "tone": "moderate", "label": "Yen Carry Monitor",  "source": "https://yct.l0g.fr" },
    "energie": { "value": 58, "scale": 100, "level": "Tendu",  "tone": "elevated", "label": "Energie Monitor",    "source": "https://energie.l0g.fr" }
  },
  "scaleCaveat": { "title": "Normalisation d’affichage, pas indice unique" },
  "precisionGuard": { "title": "Illusion de précision" },
  "confluence": { "updated": "...", "count": 15, "conviction": 1, "top": { "ticker": "TSM", "score": 90, "quadrant": "divergent" } },
  "license": "CC BY 4.0", "attribution": "l0g.fr"
}

// historique & backtest

L'historique signals/history est point-in-time : chaque observation conserve observedAt, sourcePublishedAt, retrievedAt, computedAt et snapshotHash. Vous backtestez sur ce qui était réellement publié ou collecté à l'instant T, sans look-ahead bias.

import pandas as pd
df = pd.read_csv("https://l0g.fr/api/v1/signals/history.csv", parse_dates=["observedAt", "retrievedAt"])
df = df.set_index("observedAt").sort_index()

Le backtest doit utiliser observedAt pour la date du signal et retrievedAt pour vérifier quand l0g l'a collecté. Les lignes observation sont backtestables ; les événements level-change servent à l'audit et aux alertes, pas au calcul de performance.

// champs

  • Agent Surface 1.10 : contrat M2M, avec /agents.json pour la découverte, /openapi.json pour le schéma et /api/v1/integrity.json pour vérifier les snapshots.
  • indices.<clé>.value — valeur du signal (0 à scale, généralement 100), normalisée par instrument.
  • /api/v1/debt-risk.json — source canonique du signal Dette US : signal.value est l'arrondi de provenance.scoreRaw, lui-même repris de https://debt.l0g.fr/latest.json. Le stress courant exclut les projections CBO et stabilise les familles manquantes par imputation neutre ; quand disponible, provenance.coverage indique la couverture observée avant imputation.
  • /api/v1/signals/history.json : surface complète pour replay, avec coverage, policy, current, observations et levelChanges.
  • signals/history.ndjson : même contrat en flux, avec recordType=meta, recordType=observation, puis recordType=level-change.
  • scaleCaveat et precisionGuard — limites de lecture : normalisation d’affichage, couverture, fraîcheur, incertitude et reproductibilité.
  • level — libellé lisible (Détendu, Modéré, Élevé/Tendu, Crise).
  • tone — code machine : calm, moderate, elevated, crisis.
  • snapshot — horodatage (ISO 8601 UTC) des données ; generated — date de génération du fichier.
  • confluence — synthèse 13FLOW : nombre de titres, quadrant conviction, meilleur score.

Pas d'« indice global » : on n'expose que les sous-signaux réellement mesurés par chaque outil. Agréger les signaux en un seul chiffre serait un nombre dérivé non mesuré — on ne le fait pas.

// notes

  • CORS : Access-Control-Allow-Origin: * — consommable depuis n'importe quel domaine.
  • Cadence : régénéré à chaque snapshot des outils. Ce n'est pas du temps réel strict ; fiez-vous au champ snapshot.
  • Versionnement : la forme de /v1/ reste stable ; toute rupture passera par /v2/.
  • Licence : CC BY 4.0. Réutilisation libre avec attribution à l0g.fr.

Best-effort. Ceci n'est pas un conseil en investissement.