Catalogo dell'API
Tutti gli endpoint pubblici con categoria, stato dichiarato e stato in tempo reale, TTL della cache e ultimo risultato della sonda, più i limiti di richieste e la tabella dei codici di errore.
/api/meta/catalogRichiesta
Questo endpoint non accetta parametri.
Richiesta di esempio
curl -s "https://www.coinboss.com/api/meta/catalog"Campi della risposta
La tabella dei campi è generata da risposte reali, quindi elenca esattamente ciò che l'endpoint restituisce. I percorsi usano a[] per gli elementi di un array e {*} per gli oggetti indicizzati da un nome dinamico, come una moneta o un exchange.
| Campo | Tipo | Unità | Descrizione |
|---|---|---|---|
| success | boolean | — | true quando la richiesta è riuscita. In caso di errore il corpo è `{ success: false, code, error, request_id }`. |
| schema | string | — | ID dello schema di questa risposta (`coinboss.meta.catalog/1`). |
| now | number | ms | Ora del server al momento della composizione della risposta. |
| api_version | string | — | Versione dell'API pubblica (`v1`). |
| catalog_version | string | — | Versione del catalogo degli endpoint, una data di rilascio come `2026.11.11`. |
| base_path | string | — | Prefisso di percorso comune a tutti gli endpoint (`/api`). |
| summary | object | — | Blocco di riepilogo. |
| summary.total | number | — | Totale. |
| summary.available | number | — | Indica se i dati sono disponibili. |
| summary.partial | number | — | true quando è presente solo una parte dei dati attesi. |
| summary.degraded | number | count | Numero di endpoint il cui stato in tempo reale è `degraded`. |
| summary.down | number | count | Numero di endpoint il cui stato in tempo reale è `down`. |
| summary.unavailable | number | — | Elementi per i quali non sono disponibili dati, con i motivi. Mai riportati come 0. |
| summary.unknown | number | count | Numero di endpoint il cui stato in tempo reale è `unknown` (nessun risultato recente della sonda). |
| probe | object | — | Stato della sonda degli endpoint alla base degli stati in tempo reale: ora dell'ultima esecuzione, la sua età, l'intervallo e se è aggiornata. |
| probe.last_run_at | number | ms | Timestamp. |
| probe.age_s | number | s | Secondi trascorsi dall'ultimo aggiornamento di questa riga. |
| probe.interval_s | number | s | Intervallo previsto tra due esecuzioni della sonda (300). |
| probe.fresh | boolean | — | true quando l'ultima esecuzione della sonda risale a meno di 20 minuti fa; quando è false, gli stati degli endpoint sono riportati come `unknown`. |
| probe.error | null | — | Messaggio di errore (presente solo in caso di errore). |
| categories | array | — | Categorie di endpoint che contengono almeno un endpoint, con il numero di endpoint per stato. |
| categories[] | object | — | Una categoria: `id`, `title`, `desc` e il numero dei suoi endpoint in ciascuno stato. |
| categories[].id | string | — | Identificatore. |
| categories[].title | string | — | Titolo visualizzato della categoria. |
| categories[].desc | string | — | Descrizione della categoria in una frase; null quando non ne è stata scritta alcuna. |
| categories[].total | number | — | Totale. |
| categories[].available | number | — | Indica se i dati sono disponibili. |
| categories[].partial | number | — | true quando è presente solo una parte dei dati attesi. |
| categories[].degraded | number | count | Numero di endpoint della categoria il cui stato in tempo reale è `degraded`. |
| categories[].down | number | count | Numero di endpoint della categoria il cui stato in tempo reale è `down`. |
| categories[].unavailable | number | — | Elementi per i quali non sono disponibili dati, con i motivi. Mai riportati come 0. |
| categories[].unknown | number | count | Numero di endpoint della categoria il cui stato in tempo reale è `unknown`. |
| endpoints | array | — | Tutti gli endpoint documentati con il relativo stato in tempo reale. |
| endpoints[] | object | — | Un endpoint: identità, percorso, stato dichiarato e stato in tempo reale, durata della cache, nomi dei parametri e ultimo risultato della sonda. |
| endpoints[].id | string | — | Identificatore. |
| endpoints[].cat | string | — | ID della categoria a cui appartiene l'endpoint. |
| endpoints[].kind | string | — | Tipo. |
| endpoints[].method | string | — | Note su formula / metodo. |
| endpoints[].path | string | — | Percorso di richiesta dell'endpoint; i segmenti `:name` sono parametri di percorso. |
| endpoints[].title | string | — | Titolo breve visualizzato dell'endpoint. |
| endpoints[].summary | string | — | Blocco di riepilogo. |
| endpoints[].declared | string | — | Stato dichiarato nel catalogo, indipendente dalla sonda: `available`, `partial` o `unavailable`. |
| endpoints[].status | string | — | Stato. |
| endpoints[].status_reason | string|null | — | Motivo per cui `status` non è `available`, in testo semplice; null quando lo è. |
| endpoints[].stability | string | — | `stable`, `beta` (l'insieme dei campi può cambiare senza il preavviso di 90 giorni) o `legacy` (continua a funzionare, esiste un sostituto). |
| endpoints[].since | string|null | — | Inizio del periodo. |
| endpoints[].ttl_s | number|null | s | Durata della cache lato server delle risposte dell'endpoint; null quando non è in cache o non è applicabile. |
| endpoints[].params | array | — | Nomi di tutti i parametri accettati dall'endpoint. vuoto nei campioni usati per generare questa tabella |
| endpoints[].params[] | string | — | Il nome di un parametro. |
| endpoints[].required | array | — | Nomi dei parametri che devono essere inviati. vuoto nei campioni usati per generare questa tabella |
| endpoints[].probe | object | — | Ultimo risultato della sonda per l'endpoint: ora del controllo, stato HTTP, `ok`, `schema_ok`, latenza, dimensione, età dei dati, ultimo successo e serie di fallimenti; null quando non è mai stato sondato. |
| endpoints[].probe.checked_at | number | ms | Timestamp. |
| endpoints[].probe.http | number | — | Stato HTTP della richiesta più recente della sonda. |
| endpoints[].probe.ok | boolean | — | `true` quando la richiesta più recente della sonda ha restituito HTTP 200 con un corpo JSON valido. |
| endpoints[].probe.schema_ok | boolean | — | `true` quando la risposta sondata corrispondeva alla tabella dei campi documentata; `null` quando non esiste alcuna tabella dei campi. |
| endpoints[].probe.latency_ms | number | ms | Tempo di risposta della richiesta più recente della sonda. |
| endpoints[].probe.bytes | number | bytes | Dimensione del corpo della risposta sondata. |
| endpoints[].probe.quality | null | — | `meta.quality` riportato dalla risposta sondata (FRESH / PARTIAL / STALE …); `null` quando l'endpoint non lo riporta. |
| endpoints[].probe.data_age_s | number|null | s | Secondi trascorsi dall'evento. |
| endpoints[].probe.last_ok_at | number | ms | Timestamp. |
| endpoints[].probe.fail_streak | number | count | Numero di sonde fallite consecutive; 0 quando l'ultima sonda è riuscita. |
| endpoints[].required[] | string | — | Il nome di un parametro obbligatorio. |
| rate_limit | object | — | Regole sui limiti di richieste dell'API pubblica. |
| rate_limit.window_s | number | s | Durata della finestra di conteggio (60). |
| rate_limit.anonymous_per_min | number | count | Richieste al minuto consentite per IP del client quando non viene inviata alcuna chiave API. |
| rate_limit.scope | string | — | Testo che indica come vengono conteggiate le richieste: per IP del client quando sono anonime, per chiave quando viene inviato un header `CB-API-KEY`. |
| rate_limit.key_tiers_per_min | object | — | Richieste al minuto consentite per ciascun livello di chiave API, indicizzate per nome del livello. |
| rate_limit.key_tiers_per_min.hobbyist | number | count | Richieste al minuto per le chiavi del livello `hobbyist`. |
| rate_limit.key_tiers_per_min.startup | number | count | Richieste al minuto per le chiavi del livello `startup`. |
| rate_limit.key_tiers_per_min.standard | number | count | Richieste al minuto per le chiavi del livello `standard`. |
| rate_limit.key_tiers_per_min.professional | number | count | Richieste al minuto per le chiavi del livello `professional`. |
| rate_limit.exempt | array | — | Pattern di percorso che non vengono conteggiati ai fini del limite. |
| rate_limit.exempt[] | string | — | Un pattern di percorso esente, per esempio `/api/coin-icon/*`. |
| rate_limit.headers | array | — | Nomi degli header di risposta che riportano lo stato del limite di richieste. |
| rate_limit.headers[] | string | — | Il nome di un header, per esempio `X-RateLimit-Remaining`. |
| rate_limit.on_exceed | object | — | Che cosa viene restituito quando il limite è superato: stato `http` e `code` di errore. |
| rate_limit.on_exceed.http | number | — | Stato HTTP restituito quando il limite è superato (429). |
| rate_limit.on_exceed.code | string | — | Codice. |
| errors | array | — | Codici di errore che l'API può restituire, ciascuno con stato HTTP, significato e indicazioni sul nuovo tentativo. |
| errors[] | object | — | Un codice di errore. |
| errors[].code | string | — | Codice. |
| errors[].http | number|string | — | Stato HTTP inviato con questo codice; una stringa come `501 / 503` quando ne è applicabile più di uno. |
| errors[].meaning | string | — | Che cosa significa l'errore. |
| errors[].retry | string | — | Indicazioni su se e come ritentare. |
| errors[].legacy | boolean | — | Presente e true solo per il codice usato dagli endpoint meno recenti che rispondono HTTP 200 con `success: false`. può essere assente |
| status_legend | object | — | Definizione in testo semplice di ogni stato di endpoint. |
| status_legend.available | string | — | Indica se i dati sono disponibili. |
| status_legend.partial | string | — | true quando è presente solo una parte dei dati attesi. |
| status_legend.degraded | string | — | Definizione dello stato `degraded`. |
| status_legend.down | string | — | Definizione dello stato `down`. |
| status_legend.unavailable | string | — | Elementi per i quali non sono disponibili dati, con i motivi. Mai riportati come 0. |
| status_legend.unknown | string | — | Definizione dello stato `unknown`. |
| meta | object | — | Envelope di questa risposta: ID dello schema, sistema di origine, timestamp, durata della cache e freschezza. |
| meta.schema | string | — | ID dello schema di questa risposta; stesso valore del campo di primo livello `schema`. |
| meta.source | array | — | Provenienza del valore. |
| meta.source[] | object | — | Provenienza del valore. |
| meta.source[].system | string | — | Sistema che ha prodotto i dati; sempre `coinboss` per gli endpoint del centro sviluppatori. |
| meta.source[].component | string | — | Componente alla base dei dati: la sonda degli endpoint e il controllo periodico della qualità dei dati. |
| meta.observed_at | null | — | Timestamp. |
| meta.received_at | number | ms | Timestamp. |
| meta.fetched_at | number | ms | Momento in cui CoinBoss ha recuperato i dati dalla fonte. |
| meta.window | string | — | Finestra. |
| meta.cache_ttl_s | number | s | Durata della cache lato server di questa risposta. |
| meta.quality | string | — | `FRESH` quando la sonda degli endpoint ha riportato risultati negli ultimi 20 minuti, altrimenti `STALE`. |
| meta.is_stale | boolean | — | true quando la riga è più vecchia della finestra di freschezza; le righe obsolete non vengono usate nei totali. |
| meta.fallback | string | — | Nota in testo semplice su ciò che questo endpoint restituisce quando i suoi dati di ingresso sono obsoleti o mancanti. |
Generata 2026-11-11 23:01 UTC da 1 risposte reali.
Risposta di esempio
/api/meta/catalog · Risposta reale acquisita 2026-11-13 03:59:27 UTC. Array e mappe lunghi sono abbreviati per la visualizzazione: errors conteneva 9 elementi; endpoints conteneva 299 elementi; categories conteneva 21 elementi.
- "success"true
- "schema""coinboss.meta.catalog/1"
- "now"1794542367982
- "api_version""v1"
- "catalog_version""2026.11.12"
- "base_path""/api"
- "summary"
- "total"299
- "available"256
- "partial"19
- "degraded"17
- "down"6
- "unavailable"1
- "unknown"0
- "probe"
- "last_run_at"1794542029183
- "age_s"339
- "interval_s"300
- "fresh"true
- "error"null
- "categories"
- "endpoints"
- "rate_limit"
- "window_s"60
- "anonymous_per_min"1200
- "scope""per client IP for anonymous requests; per key when a CB-API-KEY header is sent"
- "key_tiers_per_min"
- "exempt"
- "headers"
- "on_exceed"
- "errors"
- "status_legend"
- "available""last probe returned HTTP 200 and the response matched the documented schema"
- "partial""works, but exchange / field coverage is incomplete (see status_reason)"
- "degraded""responding, but schema drift or stale data was detected by the last probe"
- "down""last probe failed"
- "unavailable""documented for completeness; no lawful public source yet, the endpoint returns nulls or is not served"
- "unknown""no probe result within the last 20 minutes"
- "meta"
- "schema""coinboss.meta.catalog/1"
- "source"
- "observed_at"null
- "received_at"1794542029183
- "fetched_at"1794542367982
- "window""latest"
- "cache_ttl_s"30
- "quality""FRESH"
- "is_stale"false
- "fallback""when the probe has not reported within 20 minutes every endpoint status becomes \"unknown\""
Dettagli
- Autenticazione
- Nessuna. Endpoint pubblico.
- Limite di richieste
- 1200 richieste al minuto per IP
- Cache del server
- 30s
- Micro-cache edge
- 10s
- Frequenza di aggiornamento
- Ricostruito su richiesta dal file del catalogo e dagli ultimi risultati della sonda (la sonda viene eseguita ogni 5 minuti).
- Fonti dei dati
- Catalogo degli endpoint di CoinBoss + sd_api_probe (risultati di chiamate reali effettuate dalla sonda dell'API).
- Timestamp
- Millisecondi dall'epoca Unix (UTC), salvo diversa indicazione nella descrizione del campo
- Formato della risposta
- json
- Stabilità
- Stabile
- Disponibile dal
- 2026-11-11
Stato in tempo reale
Disponibilità, ultimi 30 giorni
100% di 409 verifiche superate
Errori
Le chiamate non riuscite hanno la stessa struttura su tutti gli endpoint. L'elenco completo è nella pagina degli errori. Errori e limiti di richieste →
| Codice | HTTP | Significato | Che cosa fare |
|---|---|---|---|
| INVALID_PARAM | 400 | Manca un parametro obbligatorio oppure un valore non è accettato. `param` indica il nome del parametro quando è noto. | Non riprovare senza modifiche; correggere la richiesta. |
| UNAUTHORIZED | 401 | L'header `CB-API-KEY` è stato inviato ma la chiave è sconosciuta o revocata. I dati pubblici non richiedono alcuna chiave: rimuovere l'header o usare una chiave valida. | Non riprovare senza modifiche. |
| FORBIDDEN | 403 | La route non fa parte dell'API pubblica (interna o riservata agli account). | Non riprovare. |
| NOT_FOUND | 404 | Route sconosciuta, oppure la moneta / l'exchange / il fondo richiesto non esiste. | Non riprovare; verificare il percorso e gli identificatori nel catalogo. |
| RATE_LIMITED | 429 | Più richieste del limite al minuto. `Retry-After` indica i secondi da attendere. | Attendere `Retry-After`, poi riprovare con backoff. |
| INTERNAL | 500 | Errore imprevisto del server. Il messaggio è volutamente generico; citare `request_id` quando lo si segnala. | Riprovare una volta dopo qualche secondo; se persiste, segnalarlo con l'ID della richiesta. |
| UPSTREAM_FAILED | 503 | La fonte di dati alla base di questo endpoint non ha risposto in tempo. Al suo posto non vengono restituiti numeri obsoleti o sostitutivi. | Riprovare con backoff; controllare la pagina di stato. |
| UNAVAILABLE | 501 / 503 | Il dataset è temporaneamente non pronto (riscaldamento della cache) oppure l'endpoint non ha ancora una fonte pubblica lecita. | Riprovare più tardi; il catalogo contrassegna gli endpoint non disponibili per scelta progettuale. |
| REQUEST_FAILED | 200 | Alcuni endpoint meno recenti rispondono HTTP 200 con `success: false`. Controllare sempre `success`, non solo lo stato HTTP. | Dipende dal messaggio; trattare come una richiesta non riuscita. |
Prova
/api/meta/catalogDisponibileNessun parametro.
https://www.coinboss.com/api/meta/catalogAltro in questa categoria
- Matrice della qualità dei dati (vista del collector) /api/sd/quality
- Catalogo dell'API /api/meta/catalog
- Registro delle modifiche e politica di versionamento /api/meta/changelog
- Documentazione di un endpoint /api/meta/endpoint
- Documento OpenAPI /api/meta/openapi
- Matrice della qualità dei dati /api/meta/quality
- Stato del servizio /api/meta/status
- Verifica se il simbolo di una moneta è noto alla piattaforma /api/coin-exists
- Mappa dal simbolo della moneta al percorso dell'icona ospitata in locale /api/coin-icons
- Riepilogo aggregato della pagina moneta /api/content/coin
- Riepilogo delle sezioni dell'intero sito /api/content/summary
- Tabella dei tassi di cambio fiat /api/currency/fx
- Mappa dall'ID dell'exchange al percorso dell'icona ospitata in locale /api/exchange-icons
- Controllo di liveness /api/health
- Statistiche della pagina di ricerca /api/research/stats