Dernière mise à jour 2026-07-15
Limites API
À qui s’adresse cette page
Cette page s’adresse aux personnes qui gèrent le site. Les données météo consultées sont partagées et favorables au cache pour que les limites OpenWeather gratuites (défaut 1000 appels/jour) soient moins souvent épuisées.
Quota journalier et par minute
Défauts depuis constants/weather.js : DAILY_LIMIT 1000, WARNING_THRESHOLD 800, SOFT_BLOCK_THRESHOLD 950, PER_MINUTE_LIMIT 60 appels upstream par minute glissante. platform_settings peut remplacer daily_limit, soft_block_threshold, warning_threshold et per_minute_limit (défauts semés au premier ouverture DB). Compteur remis à zéro à minuit UTC.
Valeurs de statut
ok — sous le seuil d’avertissement. warning — à ou au-dessus de warning_threshold (défaut 800 appels aujourd’hui). soft_block — à ou au-dessus de soft_block_threshold (défaut 950) ; upstream bloqué. hard_block — à daily_limit (défaut 1000). Le plafond par minute bloque aussi upstream quand per_minute_limit appels ont eu lieu dans les 60 dernières secondes.
Hits cache vs upstream
Les hits base L2 journalisent dans api_call_log avec cache_hit=1 et n’incrémentent pas le compteur upstream journalier. Les hits mémoire L1 ne sont pas journalisés dans SQLite — recordCacheHit retourne tôt quand meta.layer est memory. Seuls les appels upstream OpenWeather réussis (statut 200, cache_hit=0) comptent pour le quota. Les serves emergency stale évitent upstream quand bloqué.
Diagnostics admin
Ouvrez /admin (après connexion) pour utilisé aujourd’hui / limite journalière, restant, statut et réglages d’intervalle de rafraîchissement. API : GET /api/admin/usage.
API admin
GET /api/admin/usage — instantané quota et appels récents. GET|PATCH /api/admin/config — API principale des réglages admin (intervalle de rafraîchissement, connecteurs, défauts digest, AdSense, bascules alertes, etc.). Legacy étroit : PATCH /api/admin/settings { refreshIntervalMs }. Auth : cookie de session HttpOnly meridian_admin_session après /login. Secret de signature ADMIN_SECRET (pas ADMIN_PASSWORD). Contournement dev quand NODE_ENV=development, ALLOW_DEV_ADMIN_BYPASS=1 et ADMIN_SECRET unset.
Limites fournisseur OpenWeather
meridian suit son propre compteur upstream ; OpenWeather peut aussi limiter ou rejeter les clés indépendamment (401, 429). L’orchestrateur les mappe vers des erreurs API structurées pour le client.
Mode urgence
En soft/hard block, les utilisateurs voient encore le dernier snapshot SQLite acceptable marqué freshness emergency plutôt qu’une erreur vide — sauf si aucun snapshot n’a jamais existé pour ces coordonnées.