/api/meta/endpoint
GETVerfügbarFRESH

Endpunktdokumentation

Vollständige Dokumentation eines Endpunkts: Parameter, aus echten Antworten erzeugte Feldtabelle, eine erfasste Beispielantwort, geprüfte Stichproben, 30-Tage-Prüfhistorie, Fehler und Limits.

GET/api/meta/endpoint

Anfrage

Query-Parameter

NameTypErforderlichStandardZulässige WerteBeschreibung
idstringErforderlich——Endpunktkennung aus dem Katalog (zum Beispiel `sd-oi`). Unbekannte Kennungen liefern 404. Beispiel: sd-oi

Beispielanfrage

curl -s "https://www.coinboss.com/api/meta/endpoint?id=sd-oi"

Antwortfelder

Die Feldtabelle wird aus echten Antworten erzeugt und führt daher genau das auf, was der Endpunkt zurückgibt. In Pfaden steht a[] für Array-Elemente und {*} für Objekte, deren Schlüssel ein dynamischer Name ist, etwa ein Coin oder eine Börse.

FeldTypEinheitBeschreibung
successboolean—true, wenn die Anfrage erfolgreich war. Im Fehlerfall lautet der Body `{ success: false, code, error, request_id }`.
schemastring—Schema-ID dieser Antwort (`coinboss.meta.endpoint/1`).
nownumbermsServerzeit beim Erstellen der Antwort.
endpointobject—Katalogeintrag des Endpunkts. Die Map-Schlüssel sind Attributnamen wie `id`, `path`, `status`, `params`, `category`, `sources`, `units`, `formula`. dynamische Schlüssel: id,cat,kind,method,path,title
endpoint.{*}array|number|object|string|null—Wert eines Attributs: Text, eine Zahl, eine Liste (`params`, `required`, `ts_fields`) oder ein Objekt (`probe`, `category`, `example_query`); null, wenn nicht gesetzt.
endpoint.{*}[]object|string—Element eines Listenattributs: eine Parameterdefinition in `params` oder ein Name in `required` / `ts_fields`. kann fehlen
endpoint.{*}[].namestring—Name. kann fehlen
endpoint.{*}[].instring—Wo der Parameter gesendet wird: `query` oder `path`. kann fehlen
endpoint.{*}[].typestring—Typ. kann fehlen
endpoint.{*}[].requiredboolean—true, wenn der Parameter gesendet werden muss. kann fehlen
endpoint.{*}[].defaultnull—Wert, der verwendet wird, wenn der Parameter weggelassen wird; null, wenn es keinen Standardwert gibt. kann fehlen
endpoint.{*}[].enumnull—Liste der zulässigen Werte; null, wenn der Parameter nicht auf eine Liste beschränkt ist. kann fehlen
endpoint.{*}[].minnull—Minimum. kann fehlen
endpoint.{*}[].maxnull—Maximum. kann fehlen
endpoint.{*}[].examplestring—Beispielwert des Parameters; null, wenn keiner angegeben ist. kann fehlen
endpoint.{*}[].descstring—Beschreibung des Parameters. kann fehlen
endpoint.{*}.checked_atnumbermsZeitstempel. kann fehlen
endpoint.{*}.httpnumber—HTTP-Status der letzten Probe-Anfrage. kann fehlen
endpoint.{*}.okboolean—`true`, wenn die letzte Probe-Anfrage HTTP 200 mit gültigem JSON-Body geliefert hat. kann fehlen
endpoint.{*}.schema_okboolean—`true`, wenn die geprüfte Antwort der dokumentierten Feldtabelle entsprach; `null`, wenn keine Feldtabelle existiert. kann fehlen
endpoint.{*}.latency_msnumbermsAntwortzeit der letzten Probe-Anfrage. kann fehlen
endpoint.{*}.bytesnumberbytesGröße des geprüften Antwort-Bodys. kann fehlen
endpoint.{*}.qualitynull—Von der geprüften Antwort gemeldete `meta.quality` (FRESH / PARTIAL / STALE …); `null`, wenn der Endpunkt sie nicht meldet. kann fehlen
endpoint.{*}.data_age_snumber|nullsSekunden seit dem Ereignis. kann fehlen
endpoint.{*}.last_ok_atnumbermsZeitstempel. kann fehlen
endpoint.{*}.fail_streaknumbercountAnzahl aufeinanderfolgender fehlgeschlagener Proben; 0, wenn die letzte Probe erfolgreich war. kann fehlen
endpoint.{*}.idstring—Kennung. kann fehlen
endpoint.{*}.titlestring—Anzeigetitel der Kategorie des Endpunkts (innerhalb von `category`). kann fehlen
endpoint.{*}.coinstring—Coin-Symbol in Großbuchstaben (zum Beispiel BTC). kann fehlen
fieldsarray—Feldtabelle der Antwort, aus echten Antworten abgeleitet; null, wenn keine Tabelle erzeugt wurde.
fields[]object—Ein Antwortfeld: `path`, `type`, `unit`, `desc` und Flags.
fields[].pathstring—Pfad des Felds in der Antwort: `a.b` für Verschachtelung, `[]` für Array-Elemente, `{*}` für die Werte einer Map.
fields[].typestring—Typ.
fields[].unitstring|null—Einheit der Werte in diesem Objekt.
fields[].descstring—Beschreibung des Felds; null, wenn keine verfasst wurde.
fields[].optionalboolean—Vorhanden und true, wenn das Feld in mindestens einer der Stichprobenantworten fehlte. kann fehlen
fields[].mapboolean—Vorhanden und true, wenn das Objekt eine Map mit datenabhängigen Schlüsseln (Coins, Börsen, Datumsangaben) statt fester Felder ist. kann fehlen
fields[].keysarray—Stichprobe der in der Map beobachteten Schlüssel; nur bei Feldern mit `map` true. kann fehlen
fields[].keys[]string—Ein Beispielschlüssel. kann fehlen
fields_generated_atnumbermsZeitstempel.
fields_generated_fromarray—Anfrage-URLs, aus deren echten Antworten die Feldtabelle abgeleitet wurde; null, wenn es keine Tabelle gibt.
fields_generated_from[]string—Ein als Stichprobe verwendeter Anfragepfad mit Query-String.
exampleobject—Letzte erfolgreiche echte Antwort, die die Probe erfasst hat: `request`, `captured_at`, `truncated` (ursprüngliche Längen gekürzter Arrays) und `body`; null, wenn keine vorliegt.
example.requeststring—Anfrage, die das erfasste Beispiel erzeugt hat (Pfad und Query-String).
example.captured_atnumbermsZeitstempel.
example.truncatedobject—Was im erfassten Beispiel gekürzt wurde: für jedes Array oder jede Map die Anzahl der ausgelassenen Elemente. Die Schlüssel hängen vom dokumentierten Endpunkt ab.
example.bodyobject—Erfasste Antwort des dokumentierten Endpunkts, gekürzt. Ihre Struktur ist die in `fields` beschriebene.
verified_samplesobject|null—Ergebnisse der zusätzlichen Stichprobenanfragen der Probe (`at`, `samples` mit Query, HTTP-Status, Latenz, Schemaprüfung); null, wenn keine gelaufen sind.
verified_samples.atnumbermsZeitpunkt, zu dem die zusätzlichen Stichproben zuletzt geprüft wurden.
verified_samples.samplesarray—Anzahl der Stichprobenwerte.
verified_samples.samples[]object—Anzahl der Stichprobenwerte.
verified_samples.samples[].queryobject—Query-Parameter der Stichprobenanfrage.
verified_samples.samples[].query.coinstring—Coin-Symbol in Großbuchstaben (zum Beispiel BTC). kann fehlen
verified_samples.samples[].httpnumber—Zurückgegebener HTTP-Status.
verified_samples.samples[].okboolean—`true`, wenn die Stichprobe das Erwartete geliefert hat (HTTP 200 mit gültigem JSON oder den erwarteten Fehlerstatus).
verified_samples.samples[].latency_msnumbermsAntwortzeit der Stichprobenanfrage.
verified_samples.samples[].schema_okboolean|null—`true`, wenn die Stichprobenantwort der dokumentierten Feldtabelle entsprach; `null`, wenn nicht geprüft.
verified_samples.samples[].qualitynull—Von der Stichprobenantwort gemeldete `meta.quality`; `null`, wenn nicht gemeldet.
verified_samples.samples[].notestring|null—Hinweis.
probe_detailnull—Bei der letzten Probe festgestellte Schemaabweichungen: Feldpfade unter `missing`, `mismatched` und `undocumented`; null, wenn es keine gibt.
uptime_30dobject—Probe-Prüfungen dieses Endpunkts in den letzten 30 Tagen: Summen, Erfolgsquote in Prozent und eine Aufschlüsselung nach Tagen.
uptime_30d.checksnumbercountAnzahl der Probe-Prüfungen des Endpunkts in den letzten 30 Tagen (weniger Tage, wenn die Erfassung später begonnen hat).
uptime_30d.oknumbercountAnzahl dieser Prüfungen, die erfolgreich waren.
uptime_30d.pctnumber%Prozentwert.
uptime_30d.daysarray—Tageswerte oder Anzahl der Tage.
uptime_30d.days[]object—Tageswerte oder Anzahl der Tage.
uptime_30d.days[].daystring—Kalendertag (UTC).
uptime_30d.days[].checksnumbercountAnzahl der Probe-Anfragen an diesem Tag.
uptime_30d.days[].oknumbercountAnzahl der erfolgreichen Probe-Anfragen an diesem Tag.
uptime_30d.days[].pctnumber%Prozentwert.
uptime_30d.days[].avg_msnumbermsDurchschnittliche Antwortzeit an diesem Tag; `null` ohne Prüfungen.
uptime_30d.days[].max_msnumbermsLangsamste Antwort an diesem Tag.
errorsarray—Fehlercodes, die die API zurückgeben kann, jeweils mit HTTP-Status, Bedeutung und Hinweis zum erneuten Versuch.
errors[]object—Ein Fehlercode.
errors[].codestring—Code.
errors[].httpnumber|string—Mit diesem Code gesendeter HTTP-Status; ein String wie `501 / 503`, wenn mehr als einer zutrifft.
errors[].meaningstring—Was der Fehler bedeutet.
errors[].retrystring—Hinweis, ob und wie ein erneuter Versuch sinnvoll ist.
errors[].legacyboolean—Nur vorhanden und true bei dem Code, den ältere Endpunkte verwenden, die mit HTTP 200 und `success: false` antworten. kann fehlen
rate_limitobject—Rate-Limit-Regeln der öffentlichen API.
rate_limit.window_snumbersLänge des Zählfensters (60).
rate_limit.anonymous_per_minnumbercountErlaubte Anfragen pro Minute je Client-IP, wenn kein API-Schlüssel gesendet wird.
rate_limit.scopestring—Text, der angibt, wie Anfragen gezählt werden: anonym je Client-IP, je Schlüssel, wenn ein Header `CB-API-KEY` gesendet wird.
rate_limit.key_tiers_per_minobject—Erlaubte Anfragen pro Minute für jede API-Schlüssel-Stufe, mit dem Stufennamen als Schlüssel.
rate_limit.key_tiers_per_min.hobbyistnumbercountAnfragen pro Minute für Schlüssel der Stufe `hobbyist`.
rate_limit.key_tiers_per_min.startupnumbercountAnfragen pro Minute für Schlüssel der Stufe `startup`.
rate_limit.key_tiers_per_min.standardnumbercountAnfragen pro Minute für Schlüssel der Stufe `standard`.
rate_limit.key_tiers_per_min.professionalnumbercountAnfragen pro Minute für Schlüssel der Stufe `professional`.
rate_limit.exemptarray—Pfadmuster, die nicht auf das Limit angerechnet werden.
rate_limit.exempt[]string—Ein ausgenommenes Pfadmuster, zum Beispiel `/api/coin-icon/*`.
rate_limit.headersarray—Namen der Antwort-Header, die den Rate-Limit-Zustand melden.
rate_limit.headers[]string—Ein Header-Name, zum Beispiel `X-RateLimit-Remaining`.
rate_limit.on_exceedobject—Was zurückgegeben wird, wenn das Limit überschritten ist: `http`-Status und Fehler-`code`.
rate_limit.on_exceed.httpnumber—HTTP-Status, der bei Überschreitung des Limits zurückgegeben wird (429).
rate_limit.on_exceed.codestring—Code.
relatedarray—Alle Endpunkte derselben Kategorie, einschließlich dieses Endpunkts.
related[]object—Ein Endpunkt: `id`, `path` und `title`.
related[].idstring—Kennung.
related[].pathstring—Anfragepfad des Endpunkts.
related[].titlestring—Kurzer Anzeigetitel des Endpunkts.
probeobject—Zustand der Endpunkt-Probe hinter den Live-Status: Zeitpunkt des letzten Laufs, dessen Alter, das Intervall und ob sie aktuell ist.
probe.last_run_atnumbermsZeitstempel.
probe.age_snumbersSekunden seit der letzten Aktualisierung dieser Zeile.
probe.interval_snumbersGeplantes Intervall zwischen zwei Probe-Läufen (300).
probe.freshboolean—true, wenn der letzte Probe-Lauf weniger als 20 Minuten alt ist; bei false werden die Endpunkt-Status als `unknown` gemeldet.
probe.errornull—Fehlermeldung (nur bei einem Fehler vorhanden).
metaobject—Umschlag dieser Antwort: Schema-ID, erzeugendes System, Zeitstempel, Cache-Lebensdauer und Aktualität.
meta.schemastring—Schema-ID dieser Antwort; derselbe Wert wie `schema` auf oberster Ebene.
meta.sourcearray—Herkunft des Werts.
meta.source[]object—Herkunft des Werts.
meta.source[].systemstring—System, das die Daten erzeugt hat; bei den Endpunkten des Entwicklerzentrums immer `coinboss`.
meta.source[].componentstring—Komponente hinter den Daten: die Endpunkt-Probe und die Datenqualitäts-Patrouille.
meta.observed_atnull—Zeitstempel.
meta.received_atnumbermsZeitstempel.
meta.fetched_atnumbermsZeitpunkt, zu dem CoinBoss die Daten von der Quelle abgerufen hat.
meta.windowstring—Zeitfenster.
meta.cache_ttl_snumbersServerseitige Cache-Lebensdauer dieser Antwort.
meta.qualitystring—`FRESH`, wenn dieser Endpunkt innerhalb der letzten 20 Minuten geprüft wurde, andernfalls `STALE`.
meta.is_staleboolean—true, wenn die Zeile älter als das Aktualitätsfenster ist; veraltete Zeilen fließen nicht in die Summen ein.
meta.fallbackstring—Klartexthinweis dazu, was dieser Endpunkt zurückgibt, wenn seine Eingangsdaten veraltet sind oder fehlen.

Erzeugt 2026-11-11 23:03 UTC aus 3 echten Antworten.

Beispielantwort

/api/meta/endpoint?id=sd-oi · Echte Antwort, erfasst 2026-11-13 03:53:45 UTC. Lange Arrays und Maps sind für die Anzeige gekürzt: errors hatte 9 Elemente; fields hatte 103 Elemente; related hatte 6 Elemente; endpoint hatte 35 Elemente; uptime_30d.days hatte 3 Elemente; verified_samples.samples hatte 4 Elemente.

  • {
    • "success": true,
    • "schema": "coinboss.meta.endpoint/1",
    • "now": 1794542025825,
    • "endpoint": {
      • "id": "sd-oi",
      • "cat": "open-interest"
      },
    • "fields": [
      • { … 4 },
      • { … 4 }
      ],
    • "fields_generated_at": 1794438008862,
    • "fields_generated_from": [
      • "/api/sd/oi?coin=BTC",
      • "/api/sd/oi?coin=ETH",
      • "/api/sd/oi?coin=SOL",
      • "/api/sd/oi?coin=ARKM"
      ],
    • "example": {
      • "request": "/api/sd/oi?coin=BTC",
      • "captured_at": 1794541954384,
      • "truncated": { … 4 },
      • "body": { … 17 }
      },
    • "verified_samples": {
      • "at": 1794540459506,
      • "samples": [ … 2 ]
      },
    • "probe_detail": {
      • "missing": [],
      • "mismatched": [],
      • "undocumented": [ … 6 ]
      },
    • "uptime_30d": {
      • "checks": 410,
      • "ok": 410,
      • "pct": 100,
      • "days": [ … 2 ]
      },
    • "errors": [
      • { … 4 },
      • { … 4 }
      ],
    • "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": { … 4 },
      • "exempt": [ … 1 ],
      • "headers": [ … 4 ],
      • "on_exceed": { … 2 }
      },
    • "related": [
      • { … 3 },
      • { … 3 }
      ],
    • "probe": {
      • "last_run_at": 1794541726312,
      • "age_s": 300,
      • "interval_s": 300,
      • "fresh": true,
      • "error": null
      },
    • "meta": {
      • "schema": "coinboss.meta.endpoint/1",
      • "source": [ … 1 ],
      • "observed_at": null,
      • "received_at": 1794541954384,
      • "fetched_at": 1794542025825,
      • "window": "latest",
      • "cache_ttl_s": 30,
      • "quality": "FRESH",
      • "is_stale": false,
      • "fallback": "field table comes from the last schema generation; example is the last successful real response"
      }
    }

Geprüfte Stichproben

Neben dem obigen Beispiel ruft die Prüfsonde diesen Endpunkt mit den folgenden Parametern auf und prüft jedes Mal das Schema.

ParameterHTTPLatenzErgebnis
id=sd-funding2002 msBestanden FRESH
id=liquidations-overview2002 msBestanden FRESH
—4002 msBestanden liefert den erwarteten Fehler

Geprüft 2026-11-13 03:29:26 UTC

Details

Authentifizierung
Keine. Öffentlicher Endpunkt.
Rate-Limit
1200 Anfragen pro Minute und IP
Server-Cache
30s
Edge-Micro-Cache
10s
Datenquellen
CoinBoss-Endpunktkatalog, von der API-Prüfsonde erzeugte Schemas, sd_api_probe.
Zeitstempel
Unix-Epoche in Millisekunden (UTC), sofern die Feldbeschreibung nichts anderes angibt
Antwortformat
json
Stabilität
Stabil
Verfügbar seit
2026-11-11

Live-Status

VerfügbarGeprüft 2026-11-13 03:53:45 UTCHTTP 2004 msSchema stimmt übereinNeuester Datenpunkt 71s alt

Verfügbarkeit, letzte 30 Tage

99.75 % von 407 Prüfungen bestanden

Bei der letzten Prüfung erkannte Schemaabweichung
  • Zurückgegeben, aber nicht dokumentiert: probe_detail.missing, probe_detail.mismatched, probe_detail.undocumented, probe_detail.undocumented[]

Fehler

Fehlgeschlagene Aufrufe haben auf jedem Endpunkt denselben Aufbau. Die vollständige Liste steht auf der Fehlerseite. Fehler und Rate-Limits →

CodeHTTPBedeutungEmpfohlene Reaktion
INVALID_PARAM400Ein erforderlicher Parameter fehlt oder ein Wert wird nicht akzeptiert. `param` nennt den Parameter, sofern er bekannt ist.Nicht unverändert wiederholen; die Anfrage korrigieren.
UNAUTHORIZED401Der Header `CB-API-KEY` wurde gesendet, der Schlüssel ist jedoch unbekannt oder widerrufen. Öffentliche Daten erfordern keinen Schlüssel – lassen Sie den Header weg oder verwenden Sie einen gültigen Schlüssel.Nicht unverändert wiederholen.
FORBIDDEN403Die Route gehört nicht zur öffentlichen API (intern oder nur für Konten).Nicht wiederholen.
NOT_FOUND404Unbekannte Route, oder der angefragte Coin / die Börse / der Fonds existiert nicht.Nicht wiederholen; Pfad und Kennungen mit dem Katalog abgleichen.
RATE_LIMITED429Mehr Anfragen, als das Limit pro Minute zulässt. `Retry-After` gibt die Wartezeit in Sekunden an.`Retry-After` abwarten, dann mit Backoff wiederholen.
INTERNAL500Unerwarteter Serverfehler. Die Meldung ist bewusst allgemein gehalten; geben Sie `request_id` an, wenn Sie den Fehler melden.Einmal nach einigen Sekunden wiederholen; wenn der Fehler bestehen bleibt, mit der Request-ID melden.
UPSTREAM_FAILED503Die Datenquelle hinter diesem Endpunkt hat nicht rechtzeitig geantwortet. Es werden ersatzweise keine veralteten oder stellvertretenden Zahlen zurückgegeben.Mit Backoff wiederholen; die Statusseite prüfen.
UNAVAILABLE501 / 503Der Datensatz ist vorübergehend nicht bereit (Cache wird aufgewärmt), oder der Endpunkt hat noch keine rechtmäßige öffentliche Quelle.Später wiederholen; der Katalog kennzeichnet Endpunkte, die konzeptbedingt nicht verfügbar sind.
REQUEST_FAILED200Einige ältere Endpunkte antworten mit HTTP 200 und `success: false`. Prüfen Sie immer `success`, nicht nur den HTTP-Status.Hängt von der Meldung ab; als fehlgeschlagene Anfrage behandeln.

Ausprobieren

GET/api/meta/endpointVerfügbar
Parameter

string — Endpoint id from the catalog (for example `sd-oi`). Unknown ids return 404.

Anfrage-URLhttps://www.coinboss.com/api/meta/endpoint?id=sd-oi
Wählen Sie einen Endpunkt und klicken Sie auf „Anfrage senden“. Antwort, Header und Laufzeit erscheinen hier.