GET可用FRESH
端点文档
单个端点的完整文档:参数、根据真实响应生成的字段表、采集到的响应示例、已验证的样本、30 天探测历史、错误和限制。
GET
/api/meta/endpoint请求
查询参数
| 名称 | 类型 | 必填 | 默认值 | 可选值 | 说明 |
|---|---|---|---|---|---|
| id | string | 必填 | — | — | 目录中的端点 ID(例如 `sd-oi`)。未知的 ID 返回 404。 示例: sd-oi |
请求示例
curl -s "https://www.coinboss.com/api/meta/endpoint?id=sd-oi"响应字段
字段表根据真实响应生成,因此所列内容与端点实际返回的完全一致。路径中 a[] 表示数组元素,{*} 表示以动态名称(如币种或交易所)为键的对象。
| 字段 | 类型 | 单位 | 说明 |
|---|---|---|---|
| success | boolean | — | 请求成功时为 true。失败时响应体为 `{ success: false, code, error, request_id }`。 |
| schema | string | — | 本响应的结构 ID(`coinboss.meta.endpoint/1`)。 |
| now | number | ms | 响应生成时的服务器时间。 |
| endpoint | object | — | 该端点的目录记录。映射的键为属性名称,例如 `id`、`path`、`status`、`params`、`category`、`sources`、`units`、`formula`。 动态键: id,cat,kind,method,path,title |
| endpoint.{*} | array|number|object|string|null | — | 某个属性的值:文本、数字、列表(`params`、`required`、`ts_fields`)或对象(`probe`、`category`、`example_query`);未设置时为 null。 |
| endpoint.{*}[] | object|string | — | 列表属性的元素:`params` 中为参数定义,`required` / `ts_fields` 中为名称。 可能缺失 |
| endpoint.{*}[].name | string | — | 名称。 可能缺失 |
| endpoint.{*}[].in | string | — | 参数的传入位置:`query` 或 `path`。 可能缺失 |
| endpoint.{*}[].type | string | — | 类型。 可能缺失 |
| endpoint.{*}[].required | boolean | — | 该参数必须传入时为 true。 可能缺失 |
| endpoint.{*}[].default | null | — | 省略该参数时使用的值;没有默认值时为 null。 可能缺失 |
| endpoint.{*}[].enum | null | — | 可接受的取值列表;参数不限定于某个列表时为 null。 可能缺失 |
| endpoint.{*}[].min | null | — | 最小值。 可能缺失 |
| endpoint.{*}[].max | null | — | 最大值。 可能缺失 |
| endpoint.{*}[].example | string | — | 该参数的示例值;未给出时为 null。 可能缺失 |
| endpoint.{*}[].desc | string | — | 该参数的说明。 可能缺失 |
| endpoint.{*}.checked_at | number | ms | 时间戳。 可能缺失 |
| endpoint.{*}.http | number | — | 最近一次探测请求的 HTTP 状态码。 可能缺失 |
| endpoint.{*}.ok | boolean | — | 最近一次探测请求返回 HTTP 200 且响应体为有效 JSON 时为 `true`。 可能缺失 |
| endpoint.{*}.schema_ok | boolean | — | 被探测的响应与文档记载的字段表一致时为 `true`;没有字段表时为 `null`。 可能缺失 |
| endpoint.{*}.latency_ms | number | ms | 最近一次探测请求的响应时间。 可能缺失 |
| endpoint.{*}.bytes | number | bytes | 被探测响应体的大小。 可能缺失 |
| endpoint.{*}.quality | null | — | 被探测响应上报的 `meta.quality`(FRESH / PARTIAL / STALE …);端点不上报该项时为 `null`。 可能缺失 |
| endpoint.{*}.data_age_s | number|null | s | 距该事件的秒数。 可能缺失 |
| endpoint.{*}.last_ok_at | number | ms | 时间戳。 可能缺失 |
| endpoint.{*}.fail_streak | number | count | 连续失败的探测次数;最近一次探测成功时为 0。 可能缺失 |
| endpoint.{*}.id | string | — | 标识符。 可能缺失 |
| endpoint.{*}.title | string | — | 端点所属分类的显示标题(位于 `category` 内)。 可能缺失 |
| endpoint.{*}.coin | string | — | 币种代码,大写(例如 BTC)。 可能缺失 |
| fields | array | — | 响应的字段表,根据真实响应推断得出;尚未生成字段表时为 null。 |
| fields[] | object | — | 一个响应字段:`path`、`type`、`unit`、`desc` 以及若干标志。 |
| fields[].path | string | — | 字段在响应中的路径:`a.b` 表示嵌套,`[]` 表示数组元素,`{*}` 表示映射的值。 |
| fields[].type | string | — | 类型。 |
| fields[].unit | string|null | — | 该对象中数值的单位。 |
| fields[].desc | string | — | 该字段的说明;尚未撰写时为 null。 |
| fields[].optional | boolean | — | 该字段在至少一个采样响应中缺失时存在且为 true。 可能缺失 |
| fields[].map | boolean | — | 该对象是键随数据变化(币种、交易所、日期)的映射而非固定字段时存在且为 true。 可能缺失 |
| fields[].keys | array | — | 映射中出现过的键的样本;仅出现在 `map` 为 true 的字段上。 可能缺失 |
| fields[].keys[] | string | — | 一个样本键。 可能缺失 |
| fields_generated_at | number | ms | 时间戳。 |
| fields_generated_from | array | — | 推断字段表所依据的真实响应对应的请求 URL;没有字段表时为 null。 |
| fields_generated_from[] | string | — | 一个带查询字符串的采样请求路径。 |
| example | object | — | 探针捕获的最近一次成功的真实响应:`request`、`captured_at`、`truncated`(被截短数组的原始长度)和 `body`;没有时为 null。 |
| example.request | string | — | 产生所捕获示例的请求(路径和查询字符串)。 |
| example.captured_at | number | ms | 时间戳。 |
| example.truncated | object | — | 所捕获示例中被截短的内容:每个数组或映射被省略的条目数。其键取决于所记载的端点。 |
| example.body | object | — | 所记载端点的已捕获响应,经过截短。其结构即 `fields` 所描述的结构。 |
| verified_samples | object|null | — | 探针额外样本请求的结果(`at`,以及含查询参数、HTTP 状态码、延迟和结构校验的 `samples`);没有运行过时为 null。 |
| verified_samples.at | number | ms | 额外样本最近一次被检查的时间。 |
| verified_samples.samples | array | — | 样本数量。 |
| verified_samples.samples[] | object | — | 样本数量。 |
| verified_samples.samples[].query | object | — | 样本请求的查询参数。 |
| verified_samples.samples[].query.coin | string | — | 币种代码,大写(例如 BTC)。 可能缺失 |
| verified_samples.samples[].http | number | — | 返回的 HTTP 状态码。 |
| verified_samples.samples[].ok | boolean | — | 样本返回了预期结果(HTTP 200 且为有效 JSON,或返回预期的错误状态码)时为 `true`。 |
| verified_samples.samples[].latency_ms | number | ms | 样本请求的响应时间。 |
| verified_samples.samples[].schema_ok | boolean|null | — | 样本响应与文档记载的字段表一致时为 `true`;未校验时为 `null`。 |
| verified_samples.samples[].quality | null | — | 样本响应上报的 `meta.quality`;未上报时为 `null`。 |
| verified_samples.samples[].note | string|null | — | 备注。 |
| probe_detail | null | — | 最近一次探测发现的结构差异:`missing`、`mismatched` 和 `undocumented` 字段路径;没有差异时为 null。 |
| uptime_30d | object | — | 该端点最近 30 天的探针检查情况:总数、成功百分比和按日拆分。 |
| uptime_30d.checks | number | count | 该端点最近 30 天的探针检查次数(追踪开始较晚时天数更少)。 |
| uptime_30d.ok | number | count | 其中成功的检查次数。 |
| uptime_30d.pct | number | % | 百分比。 |
| uptime_30d.days | array | — | 日度数值或天数。 |
| uptime_30d.days[] | object | — | 日度数值或天数。 |
| uptime_30d.days[].day | string | — | 日历日(UTC)。 |
| uptime_30d.days[].checks | number | count | 当日的探测请求次数。 |
| uptime_30d.days[].ok | number | count | 当日成功的探测请求次数。 |
| uptime_30d.days[].pct | number | % | 百分比。 |
| uptime_30d.days[].avg_ms | number | ms | 当日的平均响应时间;没有检查时为 `null`。 |
| uptime_30d.days[].max_ms | number | ms | 当日最慢的响应。 |
| errors | array | — | API 可能返回的错误码,每个都附带 HTTP 状态码、含义和重试建议。 |
| errors[] | object | — | 一个错误码。 |
| errors[].code | string | — | 代码。 |
| errors[].http | number|string | — | 随该错误码返回的 HTTP 状态码;适用多个状态码时为 `501 / 503` 这样的字符串。 |
| errors[].meaning | string | — | 该错误的含义。 |
| errors[].retry | string | — | 关于是否重试以及如何重试的建议。 |
| errors[].legacy | boolean | — | 仅在旧版端点所用的错误码上存在且为 true,这些端点以 HTTP 200 附带 `success: false` 作答。 可能缺失 |
| rate_limit | object | — | 公开 API 的速率限制规则。 |
| rate_limit.window_s | number | s | 计数窗口的长度(60)。 |
| rate_limit.anonymous_per_min | number | count | 未发送 API 密钥时,每个客户端 IP 每分钟允许的请求数。 |
| rate_limit.scope | string | — | 说明请求计数方式的文本:匿名时按客户端 IP 计数,发送 `CB-API-KEY` 请求头时按密钥计数。 |
| rate_limit.key_tiers_per_min | object | — | 各 API 密钥档位每分钟允许的请求数,以档位名称为键。 |
| rate_limit.key_tiers_per_min.hobbyist | number | count | `hobbyist` 档位密钥的每分钟请求数。 |
| rate_limit.key_tiers_per_min.startup | number | count | `startup` 档位密钥的每分钟请求数。 |
| rate_limit.key_tiers_per_min.standard | number | count | `standard` 档位密钥的每分钟请求数。 |
| rate_limit.key_tiers_per_min.professional | number | count | `professional` 档位密钥的每分钟请求数。 |
| rate_limit.exempt | array | — | 不计入限额的路径模式。 |
| rate_limit.exempt[] | string | — | 一个豁免的路径模式,例如 `/api/coin-icon/*`。 |
| rate_limit.headers | array | — | 用于报告速率限制状态的响应头名称。 |
| rate_limit.headers[] | string | — | 一个响应头名称,例如 `X-RateLimit-Remaining`。 |
| rate_limit.on_exceed | object | — | 超出限制时返回的内容:`http` 状态码和错误 `code`。 |
| rate_limit.on_exceed.http | number | — | 超出限制时返回的 HTTP 状态码(429)。 |
| rate_limit.on_exceed.code | string | — | 代码。 |
| related | array | — | 同一分类下的全部端点,包括本端点。 |
| related[] | object | — | 一个端点:`id`、`path` 和 `title`。 |
| related[].id | string | — | 标识符。 |
| related[].path | string | — | 端点的请求路径。 |
| related[].title | string | — | 端点的简短显示标题。 |
| probe | object | — | 实时状态背后的端点探针的状态:上次运行时间、距今时长、运行间隔以及是否新鲜。 |
| probe.last_run_at | number | ms | 时间戳。 |
| probe.age_s | number | s | 该行距上次更新的秒数。 |
| probe.interval_s | number | s | 两次探针运行之间的计划间隔(300)。 |
| probe.fresh | boolean | — | 最近一次探针运行距今不足 20 分钟时为 true;为 false 时端点状态一律报告为 `unknown`。 |
| probe.error | null | — | 错误信息(仅在失败时出现)。 |
| meta | object | — | 本响应的封装:结构 ID、数据生成系统、时间戳、缓存有效期和新鲜度。 |
| meta.schema | string | — | 本响应的结构 ID;与顶层 `schema` 的值相同。 |
| meta.source | array | — | 数值的来源。 |
| meta.source[] | object | — | 数值的来源。 |
| meta.source[].system | string | — | 生成该数据的系统;开发者中心端点始终为 `coinboss`。 |
| meta.source[].component | string | — | 数据背后的组件:端点探针和数据质量巡检。 |
| meta.observed_at | null | — | 时间戳。 |
| meta.received_at | number | ms | 时间戳。 |
| meta.fetched_at | number | ms | CoinBoss 从数据源获取该数据的时间。 |
| meta.window | string | — | 时间窗口。 |
| meta.cache_ttl_s | number | s | 本响应的服务端缓存有效期。 |
| meta.quality | string | — | 该端点在最近 20 分钟内被探测过时为 `FRESH`,否则为 `STALE`。 |
| meta.is_stale | boolean | — | 该行超出新鲜窗口时为 true;过期的行不计入合计。 |
| meta.fallback | string | — | 纯文本说明:该端点的输入数据过期或缺失时会返回什么。 |
生成于 2026-11-11 23:03 UTC,基于 3 个真实响应。
响应示例
/api/meta/endpoint?id=sd-oi · 真实响应,采集于 2026-11-13 03:53:45 UTC。 为便于展示,较长的数组和映射已被截短:errors 原有 9 项; fields 原有 103 项; related 原有 6 项; endpoint 原有 35 项; uptime_30d.days 原有 3 项; verified_samples.samples 原有 4 项。
- "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"
已验证的样本
除上面的示例外,探针还会使用以下参数调用该端点,并在每次调用时校验结构。
| 参数 | HTTP | 延迟 | 结果 |
|---|---|---|---|
| id=sd-funding | 200 | 2 ms | 通过 FRESH |
| id=liquidations-overview | 200 | 2 ms | 通过 FRESH |
| — | 400 | 2 ms | 通过 返回预期的错误 |
检查于 2026-11-13 03:29:26 UTC
详细信息
- 身份验证
- 无。公开端点。
- 速率限制
- 每个 IP 每分钟 1200 次请求
- 服务端缓存
- 30s
- 边缘微缓存
- 10s
- 数据来源
- CoinBoss 端点目录、由 API 探针生成的结构、sd_api_probe。
- 时间戳
- 除非字段说明另有注明,均为 Unix 纪元毫秒(UTC)
- 响应格式
- json
- 稳定性
- 稳定
- 上线时间
- 2026-11-11
实时状态
可用检查于 2026-11-13 03:53:45 UTCHTTP 2004 ms结构一致最新数据点距今 71s
近 30 天可用性
407 次检查中 99.75% 通过
最近一次探测发现结构漂移
- 实际返回但文档未记载: probe_detail.missing, probe_detail.mismatched, probe_detail.undocumented, probe_detail.undocumented[]
错误
所有端点的失败响应格式一致。完整列表见错误页面。 错误与速率限制 →
| 错误码 | HTTP | 含义 | 处理方式 |
|---|---|---|---|
| INVALID_PARAM | 400 | 缺少必填参数,或某个取值不被接受。已知是哪个参数时,`param` 会给出其名称。 | 请勿原样重试;请修正请求。 |
| UNAUTHORIZED | 401 | 已发送 `CB-API-KEY` 请求头,但该密钥未知或已被吊销。公开数据无需密钥,请去掉该请求头或使用有效密钥。 | 请勿原样重试。 |
| FORBIDDEN | 403 | 该路由不属于公开 API(内部或仅限账户使用)。 | 请勿重试。 |
| NOT_FOUND | 404 | 未知路由,或所请求的币种 / 交易所 / 基金不存在。 | 请勿重试;请对照目录检查路径和标识符。 |
| RATE_LIMITED | 429 | 请求数超过每分钟限额。`Retry-After` 给出需要等待的秒数。 | 等待 `Retry-After` 指定的时间后,再以退避方式重试。 |
| INTERNAL | 500 | 意外的服务器错误。错误信息有意保持通用;报告问题时请附上 `request_id`。 | 几秒后重试一次;若问题持续,请附上请求 ID 报告。 |
| UPSTREAM_FAILED | 503 | 该端点背后的数据源未及时响应。不会返回过期数据或替代数值来顶替。 | 以退避方式重试;并查看状态页。 |
| UNAVAILABLE | 501 / 503 | 数据集暂时未就绪(缓存预热中),或该端点尚无合法的公开数据源。 | 请稍后重试;目录会标出因设计原因而不可用的端点。 |
| REQUEST_FAILED | 200 | 部分较旧的端点会以 HTTP 200 返回 `success: false`。请务必检查 `success`,而不只是 HTTP 状态码。 | 取决于具体信息;按请求失败处理。 |
试一试
GET
/api/meta/endpoint可用参数
string — Endpoint id from the catalog (for example `sd-oi`). Unknown ids return 404.
请求 URL
https://www.coinboss.com/api/meta/endpoint?id=sd-oi选择一个端点,然后点击“发送请求”。响应、响应头和耗时将显示在这里。
同分类的其他端点
- 数据质量矩阵(采集器视角) /api/sd/quality
- API 目录 /api/meta/catalog
- 更新日志与版本管理策略 /api/meta/changelog
- 端点文档 /api/meta/endpoint
- OpenAPI 文档 /api/meta/openapi
- 数据质量矩阵 /api/meta/quality
- 服务状态 /api/meta/status
- 检查平台是否收录某个币种代码 /api/coin-exists
- 币种代码到本地托管图标路径的映射 /api/coin-icons
- 币种页聚合摘要 /api/content/coin
- 全站栏目摘要 /api/content/summary
- 法币汇率表 /api/currency/fx
- 交易所 ID 到本地托管图标路径的映射 /api/exchange-icons
- 存活检查 /api/health
- 研究页统计数据 /api/research/stats