# Exercice de migration du suivi Claude

Ces données sont entièrement synthétiques. Elles illustrent uniquement le déplacement de output_tokens depuis les résultats d’un bucket legacy vers usage dans les lignes Analytics, et la pagination. Les extraits JSON omettent les dimensions non nécessaires. Ils ne sont pas des réponses collectées chez Anthropic.

Télécharger comparer.py, legacy.json et analytics-pages.json dans un même dossier puis exécuter :

    python3 comparer.py

Python 3.10 ou plus récent, bibliothèque standard seulement, aucun réseau, aucune clé. Résultat attendu : égalité du détail jour/modèle, 400 tokens en sortie avec les deux pages, 350 si seule la première page est additionnée. Les scénarios page manquante, données pas encore rafraîchies et curseur incohérent doivent être refusés.

Le code n’est pas un client de collecte : il ne télécharge pas les pages et ne valide ni tous les champs API, ni les coûts facturés. Sur une vraie collecte, conserver les filtres, les bornes, la clé de regroupement, les curseurs et data_refreshed_at.

Sources : https://platform.claude.com/docs/en/api/beta/organization/usage_report/retrieve_messages et https://platform.claude.com/docs/en/api/beta/organization/analytics/usage/list

L’ordre des pages synthétiques illustre un classement par métrique, pas le tri order_by=time&order=asc de la première requête documentaire du blog. Les mêmes groupes sont comparés indépendamment de leur ordre.
