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.
/api/meta/endpointAnfrage
Query-Parameter
| Name | Typ | Erforderlich | Standard | Zulässige Werte | Beschreibung |
|---|---|---|---|---|---|
| id | string | Erforderlich | — | — | 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.
| Feld | Typ | Einheit | Beschreibung |
|---|---|---|---|
| success | boolean | — | true, wenn die Anfrage erfolgreich war. Im Fehlerfall lautet der Body `{ success: false, code, error, request_id }`. |
| schema | string | — | Schema-ID dieser Antwort (`coinboss.meta.endpoint/1`). |
| now | number | ms | Serverzeit beim Erstellen der Antwort. |
| endpoint | object | — | 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.{*}[].name | string | — | Name. kann fehlen |
| endpoint.{*}[].in | string | — | Wo der Parameter gesendet wird: `query` oder `path`. kann fehlen |
| endpoint.{*}[].type | string | — | Typ. kann fehlen |
| endpoint.{*}[].required | boolean | — | true, wenn der Parameter gesendet werden muss. kann fehlen |
| endpoint.{*}[].default | null | — | Wert, der verwendet wird, wenn der Parameter weggelassen wird; null, wenn es keinen Standardwert gibt. kann fehlen |
| endpoint.{*}[].enum | null | — | Liste der zulässigen Werte; null, wenn der Parameter nicht auf eine Liste beschränkt ist. kann fehlen |
| endpoint.{*}[].min | null | — | Minimum. kann fehlen |
| endpoint.{*}[].max | null | — | Maximum. kann fehlen |
| endpoint.{*}[].example | string | — | Beispielwert des Parameters; null, wenn keiner angegeben ist. kann fehlen |
| endpoint.{*}[].desc | string | — | Beschreibung des Parameters. kann fehlen |
| endpoint.{*}.checked_at | number | ms | Zeitstempel. kann fehlen |
| endpoint.{*}.http | number | — | HTTP-Status der letzten Probe-Anfrage. kann fehlen |
| endpoint.{*}.ok | boolean | — | `true`, wenn die letzte Probe-Anfrage HTTP 200 mit gültigem JSON-Body geliefert hat. kann fehlen |
| endpoint.{*}.schema_ok | boolean | — | `true`, wenn die geprüfte Antwort der dokumentierten Feldtabelle entsprach; `null`, wenn keine Feldtabelle existiert. kann fehlen |
| endpoint.{*}.latency_ms | number | ms | Antwortzeit der letzten Probe-Anfrage. kann fehlen |
| endpoint.{*}.bytes | number | bytes | Größe des geprüften Antwort-Bodys. kann fehlen |
| endpoint.{*}.quality | null | — | Von der geprüften Antwort gemeldete `meta.quality` (FRESH / PARTIAL / STALE …); `null`, wenn der Endpunkt sie nicht meldet. kann fehlen |
| endpoint.{*}.data_age_s | number|null | s | Sekunden seit dem Ereignis. kann fehlen |
| endpoint.{*}.last_ok_at | number | ms | Zeitstempel. kann fehlen |
| endpoint.{*}.fail_streak | number | count | Anzahl aufeinanderfolgender fehlgeschlagener Proben; 0, wenn die letzte Probe erfolgreich war. kann fehlen |
| endpoint.{*}.id | string | — | Kennung. kann fehlen |
| endpoint.{*}.title | string | — | Anzeigetitel der Kategorie des Endpunkts (innerhalb von `category`). kann fehlen |
| endpoint.{*}.coin | string | — | Coin-Symbol in Großbuchstaben (zum Beispiel BTC). kann fehlen |
| fields | array | — | Feldtabelle der Antwort, aus echten Antworten abgeleitet; null, wenn keine Tabelle erzeugt wurde. |
| fields[] | object | — | Ein Antwortfeld: `path`, `type`, `unit`, `desc` und Flags. |
| fields[].path | string | — | Pfad des Felds in der Antwort: `a.b` für Verschachtelung, `[]` für Array-Elemente, `{*}` für die Werte einer Map. |
| fields[].type | string | — | Typ. |
| fields[].unit | string|null | — | Einheit der Werte in diesem Objekt. |
| fields[].desc | string | — | Beschreibung des Felds; null, wenn keine verfasst wurde. |
| fields[].optional | boolean | — | Vorhanden und true, wenn das Feld in mindestens einer der Stichprobenantworten fehlte. kann fehlen |
| fields[].map | boolean | — | Vorhanden und true, wenn das Objekt eine Map mit datenabhängigen Schlüsseln (Coins, Börsen, Datumsangaben) statt fester Felder ist. kann fehlen |
| fields[].keys | array | — | 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_at | number | ms | Zeitstempel. |
| fields_generated_from | array | — | 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. |
| example | object | — | 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.request | string | — | Anfrage, die das erfasste Beispiel erzeugt hat (Pfad und Query-String). |
| example.captured_at | number | ms | Zeitstempel. |
| example.truncated | object | — | 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.body | object | — | Erfasste Antwort des dokumentierten Endpunkts, gekürzt. Ihre Struktur ist die in `fields` beschriebene. |
| verified_samples | object|null | — | Ergebnisse der zusätzlichen Stichprobenanfragen der Probe (`at`, `samples` mit Query, HTTP-Status, Latenz, Schemaprüfung); null, wenn keine gelaufen sind. |
| verified_samples.at | number | ms | Zeitpunkt, zu dem die zusätzlichen Stichproben zuletzt geprüft wurden. |
| verified_samples.samples | array | — | Anzahl der Stichprobenwerte. |
| verified_samples.samples[] | object | — | Anzahl der Stichprobenwerte. |
| verified_samples.samples[].query | object | — | Query-Parameter der Stichprobenanfrage. |
| verified_samples.samples[].query.coin | string | — | Coin-Symbol in Großbuchstaben (zum Beispiel BTC). kann fehlen |
| verified_samples.samples[].http | number | — | Zurückgegebener HTTP-Status. |
| verified_samples.samples[].ok | boolean | — | `true`, wenn die Stichprobe das Erwartete geliefert hat (HTTP 200 mit gültigem JSON oder den erwarteten Fehlerstatus). |
| verified_samples.samples[].latency_ms | number | ms | Antwortzeit der Stichprobenanfrage. |
| verified_samples.samples[].schema_ok | boolean|null | — | `true`, wenn die Stichprobenantwort der dokumentierten Feldtabelle entsprach; `null`, wenn nicht geprüft. |
| verified_samples.samples[].quality | null | — | Von der Stichprobenantwort gemeldete `meta.quality`; `null`, wenn nicht gemeldet. |
| verified_samples.samples[].note | string|null | — | Hinweis. |
| probe_detail | null | — | Bei der letzten Probe festgestellte Schemaabweichungen: Feldpfade unter `missing`, `mismatched` und `undocumented`; null, wenn es keine gibt. |
| uptime_30d | object | — | Probe-Prüfungen dieses Endpunkts in den letzten 30 Tagen: Summen, Erfolgsquote in Prozent und eine Aufschlüsselung nach Tagen. |
| uptime_30d.checks | number | count | Anzahl der Probe-Prüfungen des Endpunkts in den letzten 30 Tagen (weniger Tage, wenn die Erfassung später begonnen hat). |
| uptime_30d.ok | number | count | Anzahl dieser Prüfungen, die erfolgreich waren. |
| uptime_30d.pct | number | % | Prozentwert. |
| uptime_30d.days | array | — | Tageswerte oder Anzahl der Tage. |
| uptime_30d.days[] | object | — | Tageswerte oder Anzahl der Tage. |
| uptime_30d.days[].day | string | — | Kalendertag (UTC). |
| uptime_30d.days[].checks | number | count | Anzahl der Probe-Anfragen an diesem Tag. |
| uptime_30d.days[].ok | number | count | Anzahl der erfolgreichen Probe-Anfragen an diesem Tag. |
| uptime_30d.days[].pct | number | % | Prozentwert. |
| uptime_30d.days[].avg_ms | number | ms | Durchschnittliche Antwortzeit an diesem Tag; `null` ohne Prüfungen. |
| uptime_30d.days[].max_ms | number | ms | Langsamste Antwort an diesem Tag. |
| errors | array | — | Fehlercodes, die die API zurückgeben kann, jeweils mit HTTP-Status, Bedeutung und Hinweis zum erneuten Versuch. |
| errors[] | object | — | Ein Fehlercode. |
| errors[].code | string | — | Code. |
| errors[].http | number|string | — | Mit diesem Code gesendeter HTTP-Status; ein String wie `501 / 503`, wenn mehr als einer zutrifft. |
| errors[].meaning | string | — | Was der Fehler bedeutet. |
| errors[].retry | string | — | Hinweis, ob und wie ein erneuter Versuch sinnvoll ist. |
| errors[].legacy | boolean | — | Nur vorhanden und true bei dem Code, den ältere Endpunkte verwenden, die mit HTTP 200 und `success: false` antworten. kann fehlen |
| rate_limit | object | — | Rate-Limit-Regeln der öffentlichen API. |
| rate_limit.window_s | number | s | Länge des Zählfensters (60). |
| rate_limit.anonymous_per_min | number | count | Erlaubte Anfragen pro Minute je Client-IP, wenn kein API-Schlüssel gesendet wird. |
| rate_limit.scope | string | — | 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_min | object | — | Erlaubte Anfragen pro Minute für jede API-Schlüssel-Stufe, mit dem Stufennamen als Schlüssel. |
| rate_limit.key_tiers_per_min.hobbyist | number | count | Anfragen pro Minute für Schlüssel der Stufe `hobbyist`. |
| rate_limit.key_tiers_per_min.startup | number | count | Anfragen pro Minute für Schlüssel der Stufe `startup`. |
| rate_limit.key_tiers_per_min.standard | number | count | Anfragen pro Minute für Schlüssel der Stufe `standard`. |
| rate_limit.key_tiers_per_min.professional | number | count | Anfragen pro Minute für Schlüssel der Stufe `professional`. |
| rate_limit.exempt | array | — | Pfadmuster, die nicht auf das Limit angerechnet werden. |
| rate_limit.exempt[] | string | — | Ein ausgenommenes Pfadmuster, zum Beispiel `/api/coin-icon/*`. |
| rate_limit.headers | array | — | 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_exceed | object | — | Was zurückgegeben wird, wenn das Limit überschritten ist: `http`-Status und Fehler-`code`. |
| rate_limit.on_exceed.http | number | — | HTTP-Status, der bei Überschreitung des Limits zurückgegeben wird (429). |
| rate_limit.on_exceed.code | string | — | Code. |
| related | array | — | Alle Endpunkte derselben Kategorie, einschließlich dieses Endpunkts. |
| related[] | object | — | Ein Endpunkt: `id`, `path` und `title`. |
| related[].id | string | — | Kennung. |
| related[].path | string | — | Anfragepfad des Endpunkts. |
| related[].title | string | — | Kurzer Anzeigetitel des Endpunkts. |
| probe | object | — | Zustand der Endpunkt-Probe hinter den Live-Status: Zeitpunkt des letzten Laufs, dessen Alter, das Intervall und ob sie aktuell ist. |
| probe.last_run_at | number | ms | Zeitstempel. |
| probe.age_s | number | s | Sekunden seit der letzten Aktualisierung dieser Zeile. |
| probe.interval_s | number | s | Geplantes Intervall zwischen zwei Probe-Läufen (300). |
| probe.fresh | boolean | — | true, wenn der letzte Probe-Lauf weniger als 20 Minuten alt ist; bei false werden die Endpunkt-Status als `unknown` gemeldet. |
| probe.error | null | — | Fehlermeldung (nur bei einem Fehler vorhanden). |
| meta | object | — | Umschlag dieser Antwort: Schema-ID, erzeugendes System, Zeitstempel, Cache-Lebensdauer und Aktualität. |
| meta.schema | string | — | Schema-ID dieser Antwort; derselbe Wert wie `schema` auf oberster Ebene. |
| meta.source | array | — | Herkunft des Werts. |
| meta.source[] | object | — | Herkunft des Werts. |
| meta.source[].system | string | — | System, das die Daten erzeugt hat; bei den Endpunkten des Entwicklerzentrums immer `coinboss`. |
| meta.source[].component | string | — | Komponente hinter den Daten: die Endpunkt-Probe und die Datenqualitäts-Patrouille. |
| meta.observed_at | null | — | Zeitstempel. |
| meta.received_at | number | ms | Zeitstempel. |
| meta.fetched_at | number | ms | Zeitpunkt, zu dem CoinBoss die Daten von der Quelle abgerufen hat. |
| meta.window | string | — | Zeitfenster. |
| meta.cache_ttl_s | number | s | Serverseitige Cache-Lebensdauer dieser Antwort. |
| meta.quality | string | — | `FRESH`, wenn dieser Endpunkt innerhalb der letzten 20 Minuten geprüft wurde, andernfalls `STALE`. |
| meta.is_stale | boolean | — | true, wenn die Zeile älter als das Aktualitätsfenster ist; veraltete Zeilen fließen nicht in die Summen ein. |
| meta.fallback | string | — | 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"
- "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"
- "body"
- "verified_samples"
- "at"1794540459506
- "samples"
- "probe_detail"
- "missing"
- "mismatched"
- "undocumented"
- "uptime_30d"
- "checks"410
- "ok"410
- "pct"100
- "days"
- "errors"
- "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"
- "related"
- "probe"
- "last_run_at"1794541726312
- "age_s"300
- "interval_s"300
- "fresh"true
- "error"null
- "meta"
- "schema""coinboss.meta.endpoint/1"
- "source"
- "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.
| Parameter | HTTP | Latenz | Ergebnis |
|---|---|---|---|
| id=sd-funding | 200 | 2 ms | Bestanden FRESH |
| id=liquidations-overview | 200 | 2 ms | Bestanden FRESH |
| — | 400 | 2 ms | Bestanden 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ügbarkeit, letzte 30 Tage
99.75 % von 407 Prüfungen bestanden
- 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 →
| Code | HTTP | Bedeutung | Empfohlene Reaktion |
|---|---|---|---|
| INVALID_PARAM | 400 | Ein erforderlicher Parameter fehlt oder ein Wert wird nicht akzeptiert. `param` nennt den Parameter, sofern er bekannt ist. | Nicht unverändert wiederholen; die Anfrage korrigieren. |
| UNAUTHORIZED | 401 | Der 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. |
| FORBIDDEN | 403 | Die Route gehört nicht zur öffentlichen API (intern oder nur für Konten). | Nicht wiederholen. |
| NOT_FOUND | 404 | Unbekannte Route, oder der angefragte Coin / die Börse / der Fonds existiert nicht. | Nicht wiederholen; Pfad und Kennungen mit dem Katalog abgleichen. |
| RATE_LIMITED | 429 | Mehr Anfragen, als das Limit pro Minute zulässt. `Retry-After` gibt die Wartezeit in Sekunden an. | `Retry-After` abwarten, dann mit Backoff wiederholen. |
| INTERNAL | 500 | Unerwarteter 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_FAILED | 503 | Die 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. |
| UNAVAILABLE | 501 / 503 | Der 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_FAILED | 200 | Einige ä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
/api/meta/endpointVerfügbarstring — Endpoint id from the catalog (for example `sd-oi`). Unknown ids return 404.
https://www.coinboss.com/api/meta/endpoint?id=sd-oiMehr in dieser Kategorie
- Datenqualitätsmatrix (Sicht der Collectoren) /api/sd/quality
- API-Katalog /api/meta/catalog
- Änderungsprotokoll und Versionierungsrichtlinie /api/meta/changelog
- Endpunktdokumentation /api/meta/endpoint
- OpenAPI-Dokument /api/meta/openapi
- Datenqualitätsmatrix /api/meta/quality
- Dienststatus /api/meta/status
- Prüft, ob ein Coin-Symbol der Plattform bekannt ist /api/coin-exists
- Zuordnung von Coin-Symbol zu lokal gehostetem Icon-Pfad /api/coin-icons
- Aggregierte Zusammenfassung der Coin-Seite /api/content/coin
- Websiteweite Zusammenfassung der Bereiche /api/content/summary
- Tabelle der Fiat-Wechselkurse /api/currency/fx
- Zuordnung von Börsenkennung zu lokal gehostetem Icon-Pfad /api/exchange-icons
- Liveness-Check /api/health
- Statistik der Research-Seite /api/research/stats