# Artemis API 有 HTTP 200 却没有数值：检查符号、错误与月度桶

整理：链小知（AI 辅助）
资料核对日期：2026-10-12
引用地址：https://lianxiaozhi.com/tools/guides/artemis-v2-series-error-period-check
难度：进阶
核验方式：官方文档整理，未执行真实账户操作

逐项检查既有 v2/data 响应的数据类型、series_columns、symbol、聚合规则和未闭合周期，避免将业务错误或 null 当零值。

## 使用工具
- [Artemis](https://lianxiaozhi.com/tools/artemis) · [官方入口](https://www.artemis.ai/)

## 前置条件
- 准备既有脱敏请求路径、参数、HTTP 状态、原响应及读取时间；有可比日序列时一并保存。此任务不要求新建账户或发起认证请求。
- 先选一个具体问题，例如 OPEN_INTEREST 月数据被求和，或 STABLECOIN_SUPPLY 月桶被理解成月初余额。没有真实响应则按官方格式整理待补字段。

## 1. 先确认 v2 路径和响应结构

核对原路径是否 /v2/data/{metricNames}，读取顶层 series 和 series_columns。当前 API Reference 另有 /data/api/{metricNames}/ 返回 data.symbols 下的 date/val，属于另一结构；解析器若找不到 series，先查实际路径和正文，不能自动把空字段解释为无数据。

核对结果：实际路径和解析结构匹配，旧接口结构未套入 v2。
依据：[Artemis：v2/data 快速指南](https://www.artemis.ai/docs/artemis-api/quickstart.md)
依据：[Artemis：data/api 旧结构的具体方法](https://www.artemis.ai/docs/api-reference/core-artemis-assets/fetch-metrics-for-assets-by-symbol)

## 2. 检查认证位置和可用产品权限

在脱敏请求中核对查询参数 APIKey 的大小写，只记录是否存在，不复制其值。免费 Intern Analyst 的问题额度不等于指标 API；Managing Director 或 Plugin 的 API 权限须按已有计划核对。公开 /asset/ 目录无 key 的条件不能推广到 /supported-metrics/ 或 v2 数据请求。认证/套餐未确认时先记访问条件未知。

核对结果：目录免认证、指标认证和已有计划权限分开记录。
依据：[Artemis：已有 key 与计划权限](https://www.artemis.ai/docs/artemis-api/api-key.md)
依据：[Artemis：产品权限与免费范围](https://www.artemis.ai/docs/welcome/pricing)
依据：[Artemis：资产与指标发现](https://www.artemis.ai/docs/artemis-api/discovery)

## 3. 从资产目录核对 symbol

对照既有 /asset/ 目录中的 symbol、artemis_id 和 sector 标签。v2 的 symbols 与指标发现的 symbol 使用 symbol；例如官方映射 uniswap→uni、maker→sky，不能直接将品牌或 artemis_id 填入。一个资产可有多个 sector 标签，需再查该资产具体指标，不能从 lending/dex 分类推出某个字段一定有值。

核对结果：每个查询符号有对应目录字段和具体指标，而非品牌猜测。
依据：[Artemis：v2 数据类型、聚合与时间标签](https://www.artemis.ai/docs/artemis-api/core-concepts)
依据：[Artemis：资产与指标发现](https://www.artemis.ai/docs/artemis-api/discovery)

## 4. 按每条 series.data 的类型分类失败

先检查 data 是数组还是字符串。官方列出三种字符串：Metric not available for asset.、Latest data not available for this asset.、Dimension type does not exist.，分别对应指标不支持、无近期数据和分维度不适用。保留原消息和资产/指标；即使 HTTP 200 也不是数值成功，响应条数等于请求符号数也不是成功证据。

核对结果：业务错误、无近期值和错误分维度分别记录，未强制转成零。
依据：[Artemis：v2 数据类型、聚合与时间标签](https://www.artemis.ai/docs/artemis-api/core-concepts)

## 5. 依据 series_columns 解码时间或标签

若 columns 为 timestamp/value，将 epoch 毫秒除以 1000 后按 UTC 转日期；若 summarize=true 返回 label/value，首列是显示标签，不能作为时间戳解析。PCT_CHG 附加序列与原值序列分别识别，不把增长率当数额；日期输入保持 YYYY-MM-DD，保存原列名以便复查。

核对结果：每一列的含义明确，毫秒/秒及显示标签没有混用。
依据：[Artemis：v2 数据类型、聚合与时间标签](https://www.artemis.ai/docs/artemis-api/core-concepts)
依据：[Artemis：稳定币链拆分和月序列](https://www.artemis.ai/docs/artemis-api/recipes/stablecoins.md)

## 6. 核对月度聚合语义和原日序列

从具体指标元数据读 aggregation_type：PERP_VOLUME 等流量按 SUM；OPEN_INTEREST 等按 LAST，不能将每日未平仓量相加。稳定币供应表列 FIRST，但指南强调月末 closing balance，月桶标签为月初；将月值与已有同月日序列末值比对，未取得原序列就标待核，不按 FIRST 字面改写为月初。DAU 的 AVERAGE 不能当月累计独立地址数。

核对结果：月标签、实际值时点和指标聚合分别确认，文档字段与案例差异已披露。
依据：[Artemis：v2 数据类型、聚合与时间标签](https://www.artemis.ai/docs/artemis-api/core-concepts)
依据：[Artemis：资产与指标发现](https://www.artemis.ai/docs/artemis-api/discovery)
依据：[Artemis：稳定币链拆分和月序列](https://www.artemis.ai/docs/artemis-api/recipes/stablecoins.md)

## 7. 处理 null 和尚未完整的周期

保留数组中的 null，不当成零活动；当前周期可能未结束，不能盲取 data 最后一行。先过滤有效数值，再保留其原时间。稳定币指南还说明进行中的月桶可能为最近可用日数据，因此有效数值也不自动代表完整月；以读取日期和原日序列核对成熟度。链上序列按期初标签，股票基本面另有财务期末规则，本任务不将两种日历混为一组。

核对结果：最新有效值、未知缺值和未闭合周期分别标注。
依据：[Artemis：v2 数据类型、聚合与时间标签](https://www.artemis.ai/docs/artemis-api/core-concepts)
依据：[Artemis：稳定币链拆分和月序列](https://www.artemis.ai/docs/artemis-api/recipes/stablecoins.md)

## 8. 形成逐资产逐指标的排错结果

列出 path、symbol、metric、unit、granularity、dimensionType、原 data 类型、最近有效日期、周期成熟度和失败消息。对无近期数据再核对官方维护变更记录，不因仍可见旧历史或市场价格就认定该链上指标持续维护。未取得数据或日序列时保留待补项，不生成伪造最新值。

核对结果：得到可追溯排错表；权限、维护状态和未核对日序列仍明确未知。
依据：[Artemis：数据模型变更记录](https://www.artemis.ai/docs/data-reference/changelog.md)
依据：[Artemis：资产与指标发现](https://www.artemis.ai/docs/artemis-api/discovery)

## 常见错误
- 200 只说明 HTTP 处理成功，series.data 内的字符串可表示业务失败。
- 有数值的月桶也可能尚未闭合，末值不是完整月的保证。
- 旧 data/api 的 limit 范围与返回结构不能直接套用到 v2/data。

## 完成检查
- 完成每条 series 的类型/时间/符号/聚合检查，并输出失败原因和成熟度。
- 保留脱敏原记录与未知项；没有新增认证调用或实时数据验收。

## 相关知识
- [协议手续费与收入指标怎样统一口径？](https://lianxiaozhi.com/learn/protocol-metric-scope)
- [稳定币供应增长等于资金流入吗？铸造、销毁与跨链要分开](https://lianxiaozhi.com/learn/stablecoin-supply-and-flow)
- [原始、解码和整理后的链上数据有什么区别？](https://lianxiaozhi.com/learn/raw-decoded-curated-data)

## 官方依据
- [Artemis：v2 数据类型、聚合与时间标签](https://www.artemis.ai/docs/artemis-api/core-concepts)
- [Artemis：产品权限与免费范围](https://www.artemis.ai/docs/welcome/pricing)
- [Artemis：v2/data 快速指南](https://www.artemis.ai/docs/artemis-api/quickstart.md)
- [Artemis：已有 key 与计划权限](https://www.artemis.ai/docs/artemis-api/api-key.md)
- [Artemis：资产与指标发现](https://www.artemis.ai/docs/artemis-api/discovery)
- [Artemis：稳定币指标与供应余额](https://www.artemis.ai/docs/artemis-api/metrics/stablecoins.md)
- [Artemis：稳定币链拆分和月序列](https://www.artemis.ai/docs/artemis-api/recipes/stablecoins.md)
- [Artemis：数据模型变更记录](https://www.artemis.ai/docs/data-reference/changelog.md)
- [Artemis：data/api 旧结构的具体方法](https://www.artemis.ai/docs/api-reference/core-artemis-assets/fetch-metrics-for-assets-by-symbol)
