Statut du service
Statut global, instances de l'API et stockages, endpoints en échec, centiles de latence, disponibilité sur 30 jours, santé des collecteurs par famille de données et incidents ouverts.
/api/meta/statusRequête
Cet endpoint n'accepte aucun paramètre.
Exemple de requête
curl -s "https://www.coinboss.com/api/meta/status"Champs de la réponse
Le tableau des champs est généré à partir de réponses réelles : il liste donc exactement ce que renvoie l'endpoint. Les chemins utilisent a[] pour les éléments d'un tableau et {*} pour les objets indexés par un nom dynamique, comme une crypto ou une plateforme.
| Champ | Type | Unité | Description |
|---|---|---|---|
| success | boolean | — | true lorsque la requête a abouti. En cas d'échec, le corps est `{ success: false, code, error, request_id }`. |
| schema | string | — | Identifiant du schéma de cette réponse (`coinboss.meta.status/1`). |
| now | number | ms | Heure du serveur au moment où la réponse a été construite. |
| overall | string | — | Statut global du service : `operational`, `degraded`, `partial_outage`, `major_outage` ou `unknown` ; voir `legend`. |
| api_version | string | — | Version de l'API publique (`v1`). |
| catalog_version | string | — | Version du catalogue des endpoints, une date de publication telle que `2026.11.11`. |
| components | array | — | Composants du service avec leur statut : API REST, flux WebSocket, base de données, cache, stockage de séries temporelles, sonde des endpoints et collecte des données. |
| components[] | object | — | Un composant : `id`, `title`, `status` et un objet `detail` dont les champs dépendent du composant. |
| components[].id | string | — | Identifiant. |
| components[].title | string | — | Nom d'affichage du composant. |
| components[].status | string | — | Statut. |
| components[].detail | object | — | Détail. |
| components[].detail.instances_healthy | number | count | Instances du serveur d'API ayant répondu à l'instant au contrôle de santé. peut être absent |
| components[].detail.instances_total | number | count | Instances du serveur d'API qui ont été contrôlées. peut être absent |
| components[].detail.health_latency_ms | number | ms | Réponse la plus lente au contrôle de santé parmi les instances de l'API. peut être absent |
| components[].detail.last_check_at | number | ms | Horodatage. peut être absent |
| components[].detail.first_frame_ms | number | ms | Délai entre la connexion au flux WebSocket et l'arrivée de la première trame lors de la dernière sonde ; null lorsqu'il n'a pas été sondé. peut être absent |
| components[].detail.ping_ms | number | ms | Temps d'aller-retour d'une requête triviale vers le composant (base de données, cache ou stockage de séries temporelles), mesuré depuis l'hôte de l'API. peut être absent |
| components[].detail.note | null | — | Remarque. peut être absent |
| components[].detail.last_run_at | number | ms | Horodatage. peut être absent |
| components[].detail.age_s | number | s | Secondes écoulées depuis la dernière mise à jour de cette ligne. peut être absent |
| components[].detail.interval_s | number | s | Intervalle prévu entre deux exécutions de la sonde (300). peut être absent |
| components[].detail.took_ms | number | ms | Durée de la dernière exécution complète de la sonde ; null lorsqu'elle n'est pas enregistrée. peut être absent |
| components[].detail.families_total | number | count | Nombre de familles de données évaluées pour la collecte des données. peut être absent |
| components[].detail.families_degraded | number | count | Nombre de familles de données dont le statut de collecte est `degraded` ou `outage`. peut être absent |
| components[].detail.judged_by | string | — | Horodatage à partir duquel le statut a été évalué. peut être absent |
| endpoints | object | — | Nombre d'endpoints documentés dans chaque statut en direct, ainsi que la liste de ceux en échec. |
| endpoints.total | number | — | Total. |
| endpoints.available | number | — | Indique si des données sont disponibles. |
| endpoints.partial | number | — | true lorsque seule une partie des données attendues est présente. |
| endpoints.degraded | number | count | Nombre d'endpoints dont le statut en direct est `degraded`. |
| endpoints.down | number | count | Nombre d'endpoints dont le statut en direct est `down`. |
| endpoints.unavailable | number | — | Éléments pour lesquels aucune donnée n'est disponible, avec les raisons. Jamais déclarés comme 0. |
| endpoints.unknown | number | count | Nombre d'endpoints dont le statut en direct est `unknown` (aucun résultat de sonde récent). |
| endpoints.failing | array | — | Endpoints actuellement `down` ou `degraded`, chacun avec `id`, `path`, `status`, `reason`, le dernier statut HTTP, l'heure du dernier succès et la série d'échecs. |
| endpoints.failing[] | object | — | Un endpoint actuellement hors service ou dégradé. |
| endpoints.failing[].id | string | — | Identifiant. |
| endpoints.failing[].path | string | — | Chemin de l'endpoint. |
| endpoints.failing[].status | string | — | Statut. |
| endpoints.failing[].reason | string | — | Code de raison. |
| endpoints.failing[].http | number | — | Statut HTTP de la dernière sonde ; `null` s'il n'a jamais été sondé. |
| endpoints.failing[].last_ok_at | number | ms | Horodatage. |
| endpoints.failing[].fail_streak | number | count | Nombre de sondes en échec consécutives. |
| latency_ms | object | — | Distribution des temps de réponse du dernier appel de sonde réussi de chaque endpoint, mesurée sur l'hôte de l'API. |
| latency_ms.p50 | number | ms | Temps de réponse médian sur l'ensemble des endpoints ; null en l'absence d'échantillon à jour. |
| latency_ms.p95 | number | ms | Temps de réponse au 95e centile sur l'ensemble des endpoints ; null en l'absence d'échantillon à jour. |
| latency_ms.max | number | — | Maximum. |
| latency_ms.sample | number | count | Nombre d'endpoints pris en compte dans les chiffres de latence. |
| latency_ms.measured | string | — | Note en texte brut sur l'endroit où la latence est mesurée : côté serveur, hors transit réseau. |
| uptime | object | — | Contrôles de la sonde sur l'ensemble des endpoints au cours de la fenêtre : totaux, pourcentage de réussite et détail par jour. |
| uptime.window_days | number | days | Durée de la fenêtre de disponibilité (30). |
| uptime.checks | number | count | Nombre de contrôles de la sonde dans la fenêtre, tous endpoints confondus. |
| uptime.ok | number | count | Nombre de ces contrôles ayant réussi. |
| uptime.pct | number | % | Pourcentage. |
| uptime.tracking_since | string | — | Premier jour disposant de données de sonde dans la fenêtre, `YYYY-MM-DD` ; null tant qu'il n'y a pas encore de données. |
| uptime.days | array | — | Valeurs quotidiennes ou nombre de jours. |
| uptime.days[] | object | — | Valeurs quotidiennes ou nombre de jours. |
| uptime.days[].day | string | — | Jour calendaire (UTC). |
| uptime.days[].checks | number | count | Nombre de requêtes de sonde ce jour-là. |
| uptime.days[].ok | number | count | Nombre de requêtes de sonde réussies ce jour-là. |
| uptime.days[].pct | number | % | Pourcentage. |
| uptime.days[].schema_pct | number | % | Part des réponses sondées ce jour-là qui correspondaient à la table des champs documentée. |
| uptime.days[].avg_ms | number | ms | Temps de réponse moyen ce jour-là. |
| collectors | object | — | État de la collecte des données des plateformes, évalué à partir des horodatages des données stockées : décomptes par famille, contrôles des jeux de données et santé de la patrouille ; null lorsqu'il ne peut pas être évalué. |
| collectors.families | array | — | Statut de collecte par famille de données. |
| collectors.families[] | object | — | Une famille : `family`, `title`, le nombre de plateformes dans chaque état et le `status` qui en résulte. |
| collectors.families[].family | string | — | Identifiant de la famille, par exemple `ticker`, `oi`, `funding`, `liquidation`, `options`. |
| collectors.families[].title | string | — | Titre d'affichage de la famille. |
| collectors.families[].exchanges_collected | number | count | Plateformes pour lesquelles la famille est collectée : fresh + partial + stale + broken. |
| collectors.families[].fresh | number | count | Plateformes dont la donnée la plus récente pour la famille se situe dans la fenêtre de fraîcheur. |
| collectors.families[].partial | number | — | true lorsque seule une partie des données attendues est présente. |
| collectors.families[].stale | number | — | Lignes ou indicateur signalant des données plus anciennes que la fenêtre de fraîcheur. |
| collectors.families[].broken | number | count | Plateformes dont l'amont échoue de façon répétée ou dont les lignes échouent pour la plupart aux contrôles de cohérence pour la famille. |
| collectors.families[].unavailable | number | — | Éléments pour lesquels aucune donnée n'est disponible, avec les raisons. Jamais déclarés comme 0. |
| collectors.families[].status | string | — | Statut. |
| collectors.datasets | array | — | Contrôles qualité des jeux de données qui ne sont pas établis par plateforme (par exemple les données quotidiennes des ETF spot et du CME), chacun avec son statut, son retard, sa couverture et sa raison. |
| collectors.datasets[] | object | — | Un jeu de données à l'échelle du marché, non rattaché à une plateforme unique (options, ETF spot, CME, carnets d'ordres, basis). |
| collectors.datasets[].family | string | — | Identifiant du jeu de données, par exemple `etf` ou `cme`. |
| collectors.datasets[].id | string | — | Identifiant. |
| collectors.datasets[].title | string | — | Nom d'affichage du jeu de données. |
| collectors.datasets[].source | string | — | Provenance de la valeur. |
| collectors.datasets[].endpoint | string | — | Endpoint public qui sert le jeu de données. |
| collectors.datasets[].status | string | — | Statut. |
| collectors.datasets[].lag_s | number | s | Âge du point de données le plus récent au moment où la réponse a été construite. |
| collectors.datasets[].source_at | number | ms | Horodatage. |
| collectors.datasets[].fetched_at | number | ms | Moment où CoinBoss a récupéré les données auprès de la source. |
| collectors.datasets[].fresh_within_s | number | s | Fenêtre de fraîcheur : les données plus récentes que ce seuil sont considérées comme à jour. |
| collectors.datasets[].coverage | object | — | Ce qui est inclus et ce qui manque. |
| collectors.datasets[].coverage.funds_total | number | count | Nombre de fonds suivis. peut être absent |
| collectors.datasets[].coverage.funds_covered | number | count | Nombre de fonds disposant d'une publication exploitable. peut être absent |
| collectors.datasets[].coverage.funds_unavailable | number | count | Nombre de fonds dont l'émetteur ne publie aucune information lisible par machine. peut être absent |
| collectors.datasets[].coverage.funds_failing | number | count | Nombre de fonds dont la publication n'a pas pu être lue lors du dernier cycle de collecte. peut être absent |
| collectors.datasets[].coverage.as_of | string | — | Date de publication la plus récente parmi les fonds couverts (YYYY-MM-DD). peut être absent |
| collectors.datasets[].coverage.as_of_min | string | — | Date de publication la plus ancienne parmi les fonds couverts (YYYY-MM-DD). peut être absent |
| collectors.datasets[].reason | string|null | — | Code de raison. |
| collectors.datasets[].coverage.contracts | number | — | Lignes par contrat. peut être absent |
| collectors.datasets[].coverage.report_date | string | — | Date du rapport Commitments of Traders de la CFTC le plus récent (YYYY-MM-DD). peut être absent |
| collectors.datasets[].coverage.products | number | count | Nombre de produits CME couverts. peut être absent |
| collectors.datasets[].coverage.trade_date | string | — | Date de négociation du rapport quotidien du CME le plus récent (YYYY-MM-DD). peut être absent |
| collectors.patrol_ok | boolean | — | true lorsque la patrouille qualité des données est passée au cours des 15 dernières minutes. |
| collectors.patrol_age_s | number | s | Secondes écoulées depuis l'événement. |
| collectors.evaluated_at | number | ms | Horodatage. |
| incidents | object | — | Alertes de qualité des données qui sont ouvertes ou ont été résolues au cours des 7 derniers jours : nombre `open` et `items` (100 au plus). |
| incidents.open | number | — | Prix d'ouverture de la période. |
| incidents.items | array | — | Éléments du résultat. |
| incidents.items[] | object | — | Éléments du résultat. |
| incidents.items[].level | string | — | Niveau. |
| incidents.items[].exchange | string | — | Identifiant de la plateforme, en minuscules (par exemple `binance`). |
| incidents.items[].family | string | — | Famille de données concernée par l'alerte. |
| incidents.items[].code | string | — | Code. |
| incidents.items[].detail | string | — | Détail. |
| incidents.items[].opened_at | number | ms | Horodatage. |
| incidents.items[].last_seen_at | number | ms | Horodatage. |
| incidents.items[].resolved_at | number|null | ms | Horodatage. |
| incidents.items[].hits | number | count | Nombre de passages de la patrouille (un toutes les 5 minutes) ayant observé la condition depuis l'ouverture de l'alerte. |
| incidents.items[].open | boolean | — | Prix d'ouverture de la période. |
| probe | object | — | État de la sonde des endpoints à l'origine des statuts en direct : heure de la dernière exécution, son âge, l'intervalle et le fait qu'elle soit à jour ou non. |
| probe.last_run_at | number | ms | Horodatage. |
| probe.age_s | number | s | Secondes écoulées depuis la dernière mise à jour de cette ligne. |
| probe.interval_s | number | s | Intervalle prévu entre deux exécutions de la sonde (300). |
| probe.fresh | boolean | — | true lorsque la dernière exécution de la sonde date de moins de 20 minutes ; lorsqu'il vaut false, les statuts des endpoints sont indiqués comme `unknown`. |
| probe.error | null | — | Message d'erreur (présent uniquement en cas d'échec). |
| probe.endpoints_checked | number | count | Nombre d'endpoints contrôlés lors du dernier cycle de sonde. |
| probe.ok | number | count | Nombre d'endpoints ayant répondu correctement lors du dernier cycle de sonde. |
| probe.failed | number | count | Nombre d'endpoints en échec lors du dernier cycle de sonde. |
| probe.schema_mismatch | number | count | Nombre d'endpoints dont la réponse ne correspondait pas à la table des champs documentée. |
| probe.alt_samples_failed | null | count | Nombre de requêtes d'échantillonnage supplémentaires en échec ; `null` lorsque le dernier cycle ne les a pas exécutées. |
| legend | object | — | Définition en texte brut de chaque valeur de `overall`. |
| legend.operational | string | — | Définition de `operational`. |
| legend.degraded | string | — | Définition de `degraded`. |
| legend.partial_outage | string | — | Définition de `partial_outage`. |
| legend.major_outage | string | — | Définition de `major_outage`. |
| legend.unknown | string | — | Définition de `unknown`. |
| meta | object | — | Enveloppe de cette réponse : identifiant du schéma, système producteur, horodatages, durée de vie du cache et fraîcheur. |
| meta.schema | string | — | Identifiant du schéma de cette réponse ; même valeur que le `schema` de premier niveau. |
| meta.source | array | — | Provenance de la valeur. |
| meta.source[] | object | — | Provenance de la valeur. |
| meta.source[].system | string | — | Système qui a produit les données ; toujours `coinboss` pour les endpoints du centre développeurs. |
| meta.source[].component | string | — | Composant à l'origine des données : la sonde des endpoints et la patrouille qualité des données. |
| meta.observed_at | null | — | Horodatage. |
| meta.received_at | number | ms | Horodatage. |
| meta.fetched_at | number | ms | Moment où CoinBoss a récupéré les données auprès de la source. |
| meta.window | string | — | Fenêtre. |
| meta.cache_ttl_s | number | s | Durée de vie du cache côté serveur de cette réponse. |
| meta.quality | string | — | `FRESH` lorsque la sonde des endpoints a rendu compte au cours des 20 dernières minutes, sinon `STALE`. |
| meta.is_stale | boolean | — | true lorsque la ligne est plus ancienne que la fenêtre de fraîcheur ; les lignes périmées ne sont pas utilisées dans les totaux. |
| meta.fallback | string | — | Note en texte brut sur ce que renvoie cet endpoint lorsque ses données d'entrée sont périmées ou manquantes. |
Généré à partir de 1 réponses réelles (2026-11-11 23:01 UTC).
Exemple de réponse
/api/meta/status · Réponse réelle (capture : 2026-11-13 03:59:29 UTC). Les tableaux et dictionnaires longs sont abrégés pour l'affichage : components comptait 7 éléments; uptime.days comptait 3 éléments; incidents.items comptait 11 éléments; endpoints.failing comptait 23 éléments; collectors.datasets comptait 12 éléments; collectors.families comptait 12 éléments.
- "success"true
- "schema""coinboss.meta.status/1"
- "now"1794542369932
- "overall""partial_outage"
- "api_version""v1"
- "catalog_version""2026.11.12"
- "components"
- "endpoints"
- "total"299
- "available"256
- "partial"19
- "degraded"17
- "down"6
- "unavailable"1
- "unknown"0
- "failing"
- "latency_ms"
- "p50"6
- "p95"872
- "max"10538
- "sample"292
- "measured""server-side, from the probe on the API host (excludes network transit)"
- "uptime"
- "window_days"30
- "checks"119803
- "ok"118569
- "pct"98.97
- "tracking_since""2026-11-11"
- "days"
- "collectors"
- "families"
- "datasets"
- "patrol_ok"true
- "patrol_age_s"23
- "evaluated_at"1794542370810
- "incidents"
- "open"2
- "items"
- "probe"
- "last_run_at"1794542029183
- "age_s"341
- "interval_s"300
- "fresh"true
- "error"null
- "endpoints_checked"290
- "ok"289
- "failed"1
- "schema_mismatch"0
- "alt_samples_failed"null
- "legend"
- "operational""all checks pass"
- "degraded""serving, with stale data, schema drift or reduced redundancy"
- "partial_outage""at least one endpoint or API instance is failing"
- "major_outage""database down, no API instance healthy, or 20%+ of endpoints failing"
- "unknown""the probe has not reported within 20 minutes — status cannot be asserted"
- "meta"
- "schema""coinboss.meta.status/1"
- "source"
- "observed_at"null
- "received_at"1794542029183
- "fetched_at"1794542369932
- "window""latest"
- "cache_ttl_s"15
- "quality""FRESH"
- "is_stale"false
- "fallback""status is \"unknown\" whenever the probe is stale; process liveness is never used as evidence"
Détails
- Authentification
- Aucune. Endpoint public.
- Limite de requêtes
- 1200 requêtes par minute et par IP
- Cache serveur
- 15s
- Micro-cache en périphérie
- 10s
- Fréquence de mise à jour
- Évalué à la demande ; les résultats des endpoints proviennent de la sonde d'API exécutée toutes les 5 minutes, la santé des collecteurs des horodatages des données.
- Sources de données
- Résultats de la sonde d'API, contrôles de santé par instance, matrice de qualité des données, journal des alertes.
- Horodatages
- Millisecondes depuis l'epoch Unix (UTC), sauf indication contraire dans la description du champ
- Format de réponse
- json
- Stabilité
- Stable
- Disponible depuis
- 2026-11-11
Statut en direct
Disponibilité, 30 derniers jours
99.75 % des 408 contrôles réussis
Erreurs
Les appels en échec ont la même structure sur tous les endpoints. La liste complète figure sur la page des erreurs. Erreurs et limites de requêtes →
| Code | HTTP | Signification | Que faire |
|---|---|---|---|
| INVALID_PARAM | 400 | Un paramètre requis est manquant ou une valeur n'est pas acceptée. `param` indique le nom du paramètre lorsqu'il est connu. | Ne réessayez pas à l'identique ; corrigez la requête. |
| UNAUTHORIZED | 401 | L'en-tête `CB-API-KEY` a été envoyé, mais la clé est inconnue ou révoquée. Les données publiques ne nécessitent aucune clé — supprimez l'en-tête ou utilisez une clé valide. | Ne réessayez pas à l'identique. |
| FORBIDDEN | 403 | La route ne fait pas partie de l'API publique (interne ou réservée aux comptes). | Ne réessayez pas. |
| NOT_FOUND | 404 | Route inconnue, ou la crypto / la plateforme / le fonds demandé n'existe pas. | Ne réessayez pas ; vérifiez le chemin et les identifiants dans le catalogue. |
| RATE_LIMITED | 429 | Plus de requêtes que la limite par minute. `Retry-After` indique le nombre de secondes à attendre. | Attendez la durée indiquée par `Retry-After`, puis réessayez avec backoff. |
| INTERNAL | 500 | Erreur serveur inattendue. Le message est volontairement générique ; citez `request_id` lorsque vous la signalez. | Réessayez une fois après quelques secondes ; si l'erreur persiste, signalez-la avec l'ID de requête. |
| UPSTREAM_FAILED | 503 | La source de données derrière cet endpoint n'a pas répondu à temps. Aucun chiffre périmé ni de substitution n'est renvoyé à sa place. | Réessayez avec backoff ; consultez la page de statut. |
| UNAVAILABLE | 501 / 503 | Le jeu de données n'est temporairement pas prêt (préchauffage du cache) ou l'endpoint n'a pas encore de source publique licite. | Réessayez plus tard ; le catalogue signale les endpoints indisponibles par conception. |
| REQUEST_FAILED | 200 | Certains endpoints plus anciens répondent HTTP 200 avec `success: false`. Vérifiez toujours `success`, et pas seulement le statut HTTP. | Dépend du message ; à traiter comme une requête en échec. |
Essayer
/api/meta/statusDisponibleAucun paramètre.
https://www.coinboss.com/api/meta/statusAutres endpoints de cette catégorie
- Matrice de qualité des données (vue collecteur) /api/sd/quality
- Catalogue de l'API /api/meta/catalog
- Journal des modifications et politique de versionnement /api/meta/changelog
- Documentation d'un endpoint /api/meta/endpoint
- Document OpenAPI /api/meta/openapi
- Matrice de qualité des données /api/meta/quality
- Statut du service /api/meta/status
- Vérifie si un symbole de crypto est connu de la plateforme /api/coin-exists
- Correspondance entre symbole de crypto et chemin d'icône hébergée localement /api/coin-icons
- Synthèse agrégée de la page crypto /api/content/coin
- Synthèse des rubriques du site /api/content/summary
- Table des taux de change fiat /api/currency/fx
- Correspondance entre identifiant de plateforme et chemin d'icône hébergée localement /api/exchange-icons
- Contrôle de vivacité /api/health
- Statistiques de la page Recherche /api/research/stats