跳转到主要内容
POST
/
sourcemap
/
stack
/
enrich
丰富错误栈信息
curl --request POST \
  --url 'https://api.flashcat.cloud/sourcemap/stack/enrich?app_key=' \
  --header 'Content-Type: application/json' \
  --data '
{
  "type": "browser",
  "service": "my-web-app",
  "version": "1.0.0",
  "stack": "TypeError: Cannot read properties of undefined\n    at render (https://cdn.example.com/app.min.js:1:2345)",
  "near": 3
}
'
{
  "request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4",
  "data": {
    "frames": [
      {
        "function": "renderCheckout",
        "file": "src/pages/checkout.tsx",
        "line": 42,
        "column": 17,
        "converted": true,
        "code_snippets": [
          {
            "line": 41,
            "code": "const cart = props.cart;"
          },
          {
            "line": 42,
            "code": "return cart.items.map(renderItem);"
          }
        ],
        "original_frame": {
          "function": "render",
          "file": "https://cdn.example.com/app.min.js",
          "line": 1,
          "column": 2345
        }
      }
    ]
  }
}

限制说明

项目说明
速率限制每个账户 1,000 次/分钟50 次/秒
权限要求无 —— 持有有效的 app_key 即可调用

使用说明

  • 为兼容旧调用,省略 type 时默认按 browser 处理。
  • 设置 1 到 20 之间的 near 可在转换后的栈帧附近返回源码片段。
  • Android NDK native 崩溃需传入 archsource_type: ndk,后端会路由到 native 符号化逻辑。
  • iOS 崩溃栈需传入 binary_images,以便按上传的 dSYM 文件重定位地址。
  • no_cache 主要用于调试,会绕过已缓存的 enrich 结果。

授权

app_key
string
query
必填

在 Flashduty 控制台 账户 → APP Key 中签发的 app_key。调用任何公开 API 时都必须携带。它等同于所属账户的身份凭证,请妥善保管。

请求体

application/json

错误栈 enrich 请求。

service
string
必填

上传 Sourcemap 时使用的应用或服务名称。

version
string
必填

上传 Sourcemap 时使用的应用版本。

type
enum<string>

来源平台。省略时默认按 browser 处理。

可用选项:
browser,
android,
ios,
miniprogram,
harmony
stack
string

待解析和 enrich 的原始错误栈。

near
integer

在转换后的栈帧附近返回的有效源码行数。

必填范围: 1 <= x <= 20
no_cache
boolean

跳过缓存的 enrich 结果,主要用于调试。

build_id
string

Gradle 插件 1.13.0 及以后版本使用的 Android build ID。

variant
string

旧版 Gradle 插件使用的 Android build variant。

arch
string

Android NDK 架构,例如 armarm64x86x64

source_type
string

Android 错误来源类型;native 符号化时配合 arch 传入 ndk

binary_images
object[]

iOS 崩溃报告中的已加载 binary image 列表。

响应

成功

成功响应结构。2xx 响应中 request_id 标识本次调用(同时出现在 Flashcat-Request-Id 响应头中),data 为接口业务 payload。失败响应使用不同结构,参见 ErrorResponse

request_id
string
必填

本次请求的唯一 ID,也会在 Flashcat-Request-Id 响应头中返回。反馈问题时请一并附上。

示例:

"01HK8XQE3Z7JM2NTFQ5YJ8P9R4"

data
object
必填

enrich 后的错误栈帧。