{"components":{"schemas":{"AddressClassification":{"description":"單一地址的分類結果。","properties":{"address":{"description":"對應的地址（原樣回傳）。","type":"string"},"confidence":{"description":"預測信心，0.0–1.0。分類失敗時為 0。","example":0.9811,"format":"double","type":"number"},"error":{"description":"該地址分類失敗的說明；成功時為 `null`。\n\n單一地址失敗**不會**讓整批請求失敗，整體仍回 200。","type":["string","null"]},"predicted_class":{"description":"預測類型。該地址分類失敗時為 `null`（此時 `error` 有值）。\n\n可能值依鏈而異：\n- **Tron**：`Exchange`、`Deposit`、`Defi`、`Mixer`、`Scam`、`Unknown`\n- **Ethereum**：`Exchange`、`Deposit`、`Defi`、`Mixer`、`Scam`\n- **Bitcoin**：`Exchange`、`Deposit`、`Defi`、`ColdWallet`、`MiningPool`、`Scam`\n\n模型改版時可能新增類別，請以「未知字串」的方式寬容處理，不要用窮舉 match。","example":"Exchange","type":["string","null"]}},"required":["address","confidence"],"type":"object"},"AddressFlow":{"description":"單一地址在區間內的流量明細。","properties":{"address":{"type":"string"},"first_activity_ts":{"format":"int64","type":["integer","null"]},"last_activity_ts":{"format":"int64","type":["integer","null"]},"net_flow":{"description":"淨流量 = received − sent。負值表示出貨。","format":"double","type":"number"},"net_flow_usd":{"description":"僅穩定幣會附（USDT / USDC / DAI）= `net_flow`。","format":"double","type":["number","null"]},"received":{"description":"區間內收到的 token 數量（已依 decimals 換算）。","format":"double","type":"number"},"received_count":{"format":"int64","minimum":0,"type":"integer"},"sent":{"description":"區間內送出的 token 數量。","format":"double","type":"number"},"sent_count":{"format":"int64","minimum":0,"type":"integer"},"tx_count":{"format":"int64","minimum":0,"type":"integer"}},"required":["address","received","sent","net_flow","received_count","sent_count","tx_count"],"type":"object"},"AddressRiskRequest":{"description":"`POST /v1/address-risk` 的請求 body（綜合地址風險）。\n\n綜合地址的**情資、行為與拓樸關係**評估風險，回傳綜合分數 `composite_score`\n（0–100）、風險等級 `risk_level`（low/medium/high）與各維度明細 `dimensions`。\n行為與拓樸維度目前支援 Ethereum / Tron；情資維度為全鏈。估值與轉帳流固定以\n原生幣與主要穩定幣計算，不需（也不接受）指定代幣範圍。","properties":{"address":{"description":"查詢的地址。","type":"string"},"blockchain":{"description":"鏈別（行為/拓樸維度目前僅支援 ethereum / tron）。","type":"string"},"third_party":{"description":"外部來源查詢模式：`auto`（預設）＝只在可能改變風險判定時才動用外部來源；\n`force`＝一律查（合規 / 深度盡職調查用，較慢、較貴）；`off`＝只用自有情資庫。","example":"auto","type":["string","null"]}},"required":["blockchain","address"],"type":"object"},"AddressesFlowAggregate":{"description":"全體地址加總。對「項目方出貨」場景:`net_flow_total < 0` 表示淨送出。","properties":{"net_flow_total":{"format":"double","type":"number"},"net_flow_total_usd":{"format":"double","type":["number","null"]},"received_total":{"format":"double","type":"number"},"sent_total":{"format":"double","type":"number"},"tx_count_total":{"format":"int64","minimum":0,"type":"integer"}},"required":["received_total","sent_total","net_flow_total","tx_count_total"],"type":"object"},"AggregateLabel":{"description":"綜合標籤。","properties":{"confidence":{"description":"綜合信心，0.0–1.0。多方一致或經我方驗證會拉高；單一來源、未經驗證會偏低。\n沒有任何命中時為 `0.0`。","example":1.0,"format":"double","type":"number"},"entity_name":{"description":"實體名稱，例如 `Binance`。無法判定時不出現。","example":"Binance","type":["string","null"]},"labels":{"description":"這個地址的身分與行為標籤（小寫 snake_case 代碼，去重、保序）。\n\n一個地址可以同時有多個標籤，而且它們分屬不同面向——身分（`exchange`、\n`dex`、`mixer`）、行為（`mev_bot`、`sandwich_attack`）、風險\n（`sanction`、`phishing`）、資金流形態（`peel_chain`）與活躍度\n（`dormant`）。這些**不互斥**，請逐一比對需要的標籤，不要假設只有一個。\n\n查無情資時為空陣列（欄位不出現）。","example":["exchange","exchange_hot_wallet"],"items":{"type":"string"},"type":"array"}},"required":["confidence"],"type":"object"},"BalanceHistoryRequest":{"description":"`POST /v1/balance-history` 的請求 body（每日餘額變化 / 歷史餘額）。\n\n以單一資產為主，通常帶一個 symbol / contract；回應含每日 data_points\n與 `final_balance`。","properties":{"address":{"type":"string"},"blockchain":{"type":"string"},"contracts":{"items":{"type":["string","null"]},"type":["array","null"]},"end_time":{"format":"int64","type":["integer","null"]},"output_asset":{"type":["string","null"]},"start_time":{"format":"int64","type":["integer","null"]},"symbols":{"items":{"type":"string"},"type":["array","null"]},"timezone":{"description":"UTC 偏移小時數。","format":"int32","type":["integer","null"]},"unit":{"description":"目前僅支援 `daily`。","type":["string","null"]}},"required":["blockchain","address"],"type":"object"},"BatchItem":{"description":"批次的單筆查詢。","properties":{"label":{"type":"string"},"txhash":{"type":"string"}},"required":["txhash","label"],"type":"object"},"BatchRequest":{"description":"`POST /v1/cross-chain/batch` 的請求 body。","properties":{"queries":{"items":{"$ref":"#/components/schemas/BatchItem"},"type":"array"}},"required":["queries"],"type":"object"},"BehaviorDimension":{"description":"行為維度明細。","properties":{"behaviors":{"description":"偵測到的行為樣態明細。","items":{"$ref":"#/components/schemas/BehaviorHit"},"type":"array"},"data_window":{"$ref":"#/components/schemas/DataWindow","description":"本次掃描涵蓋的資料範圍。"},"deferred":{"description":"本次略過未評估的行為代碼（資料不足或成本考量）。","items":{"type":"string"},"type":"array"},"evaluated":{"description":"本次實際評估的行為代碼。","items":{"type":"string"},"type":"array"},"score":{"description":"套用身分語境**之後**的行為分數，0–100。與 `score_raw` 的差距即語境的影響。","format":"double","type":"number"},"score_breakdown":{"description":"分數計算過程（各行為貢獻與封頂後總分）。"},"score_raw":{"description":"套用身分語境**之前**的原始行為分數，0–100。","format":"double","type":"number"}},"required":["score_raw","score","behaviors","score_breakdown","data_window"],"type":"object"},"BehaviorHit":{"description":"單一行為樣態。","properties":{"code":{"description":"行為代碼，例如 `rapid_in_out` / `fan_out` / `burner_wallet` / `fan_in` / `pass_through`。","example":"rapid_in_out","type":"string"},"context_weight":{"description":"身分語境對此行為的權重倍率（<1 為壓抑、>1 為放大）。語境不明時不出現。","format":"double","type":["number","null"]},"ever_detected":{"description":"歷史上是否曾偵測到。","type":"boolean"},"evidence":{"description":"觸發此判定的證據（欄位依行為代碼而異）。"},"first_detected_at":{"description":"首次偵測到此行為的時間（Unix epoch 秒，UTC）。","format":"int64","type":"integer"},"last_detected_at":{"description":"最近一次偵測到此行為的時間（Unix epoch 秒，UTC）。距今越久，對分數的加權越低。","format":"int64","type":"integer"},"name_zh":{"description":"行為的中文名稱。","example":"快速進出","type":"string"},"occurrence_count":{"description":"偵測到的次數。","format":"int64","type":"integer"},"score":{"description":"此行為的得分（套語境前）。","format":"double","type":"number"},"score_after_context":{"description":"套用語境後的得分。語境不明時不出現。","format":"double","type":["number","null"]},"severity":{"description":"嚴重程度：`low` | `medium` | `high`。","type":"string"}},"required":["code","name_zh","severity","score","evidence"],"type":"object"},"ChangeAddressRequest":{"description":"`POST /v1/btc/change-address` 的請求 body。","properties":{"txid":{"description":"Bitcoin 交易 ID（txid）。","type":"string"}},"required":["txid"],"type":"object"},"ClassifyRequest":{"description":"`POST /v1/address-classify` 的請求 body。","properties":{"addresses":{"description":"要分類的地址清單。不可為空，單次最多 100 筆，且格式須與 `blockchain` 相符。","items":{"type":"string"},"type":"array"},"blockchain":{"description":"區塊鏈網路名稱。支援 `tron`（預設）、`ethereum`、`bitcoin`。\n\n省略時為 `tron`——若你送的是其他鏈的地址，會因格式不符而回 400，不會被誤判成 Tron 地址。","example":"tron","type":"string"}},"required":["addresses"],"type":"object"},"ConcentrationMetrics":{"description":"集中度指標。effective_holders_* 依鏈不同:\n  stables (USDT/USDC/DAI) — `effective_holders_1usd` / `_100usd`\n  bitcoin               — `effective_holders_0_001_btc` / `_0_1_btc`\n                           (BTC/USD 變動快,改用 BTC 計價門檻)\n  其他 token              — 不附","properties":{"effective_holders_0_001_btc":{"description":"餘額 ≥ 0.001 BTC 的地址數（僅 bitcoin）。","format":"int64","minimum":0,"type":["integer","null"]},"effective_holders_0_1_btc":{"description":"餘額 ≥ 0.1 BTC 的地址數（僅 bitcoin）。","format":"int64","minimum":0,"type":["integer","null"]},"effective_holders_100usd":{"description":"餘額 ≥ $100 的地址數（僅穩定幣）。","format":"int64","minimum":0,"type":["integer","null"]},"effective_holders_1usd":{"description":"餘額 ≥ $1 的地址數（僅穩定幣，其他 token 不附）。","format":"int64","minimum":0,"type":["integer","null"]},"gini":{"description":"Gini coefficient（區塊鏈持有結構天然接近 1，僅供相對比較）。","format":"double","type":"number"},"hhi":{"description":"Herfindahl-Hirschman Index（0=完全分散，1=完全壟斷）。","format":"double","type":"number"},"top1000_pct":{"format":"double","type":"number"},"top100_pct":{"format":"double","type":"number"},"top10_pct":{"description":"前 10 名持有者占流通量 %。","format":"double","type":"number"}},"required":["top10_pct","top100_pct","top1000_pct","hhi","gini"],"type":"object"},"CounterpartyOverviewRequest":{"description":"`POST /v1/counterparty/overview`：兩地址聚合統計。","properties":{"blockchain":{"type":"string"},"contracts":{"items":{"type":["string","null"]},"type":["array","null"]},"counterparty":{"type":["string","null"]},"end_time":{"format":"int64","type":["integer","null"]},"output_asset":{"type":["string","null"]},"start_time":{"format":"int64","type":["integer","null"]},"symbols":{"items":{"type":"string"},"type":["array","null"]},"target":{"type":["string","null"]}},"required":["blockchain"],"type":"object"},"CounterpartyRequest":{"description":"`POST /v1/counterparty` 的請求 body（交易對手排行）。","properties":{"address":{"type":"string"},"blockchain":{"type":"string"},"contracts":{"items":{"type":["string","null"]},"type":["array","null"]},"direction":{"type":["string","null"]},"end_time":{"format":"int64","type":["integer","null"]},"limit":{"format":"int32","minimum":0,"type":["integer","null"]},"min_interactions":{"format":"int32","minimum":0,"type":["integer","null"]},"order":{"type":["string","null"]},"output_asset":{"type":["string","null"]},"page":{"format":"int32","minimum":0,"type":["integer","null"]},"sort":{"type":["string","null"]},"start_time":{"format":"int64","type":["integer","null"]},"symbols":{"items":{"type":"string"},"type":["array","null"]}},"required":["blockchain","address"],"type":"object"},"CreateWebhookRequest":{"description":"建立訂閱的請求 body。","properties":{"event_type":{"description":"訂閱的事件類型，例如 `large_transfer`、`address_activity`。","type":"string"},"target_url":{"description":"事件送達的目標 URL。","type":"string"}},"required":["target_url","event_type"],"type":"object"},"DataWindow":{"description":"行為掃描涵蓋的資料範圍。","properties":{"from":{"description":"掃描起點：此地址最早一筆活動的時間（Unix epoch 秒，UTC）。","format":"int64","type":"integer"},"to":{"description":"掃描終點：此地址最近一筆活動的時間（Unix epoch 秒，UTC）。","format":"int64","type":"integer"},"tx_count":{"description":"涵蓋的轉帳筆數。為 0 代表這個地址在我方資料中沒有活動紀錄。","format":"int64","type":"integer"}},"required":["from","to","tx_count"],"type":"object"},"ErrorDetail":{"description":"錯誤本體。`code` 是穩定的機器可讀字串（比 HTTP 狀態碼細緻），\n`message` 是給人看的說明，不保證格式穩定——請用 `code` 做程式判斷。","properties":{"code":{"description":"機器可讀錯誤碼，例如 `bad_request` / `insufficient_credit` / `gateway_timeout`。","example":"bad_request","type":"string"},"message":{"description":"人可讀的錯誤說明。","example":"address is not a valid ethereum address","type":"string"}},"required":["code","message"],"type":"object"},"ErrorResponse":{"description":"對外錯誤信封。與成功回應的 [`crate::response::ApiResponse`] 結構對稱，\n客戶端永遠拿到 `{ \"error\": { \"code\": ..., \"message\": ... } }`。\n\n同時是 OpenAPI 的錯誤 schema：所有非 2xx 回應都是這個形狀，端點文件以\n`body = ErrorResponse` 引用它，客戶端只要寫一次錯誤解析。","properties":{"error":{"$ref":"#/components/schemas/ErrorDetail"}},"required":["error"],"type":"object"},"FilterCriteria":{"description":"幣別篩選條件（交易列表用）。","properties":{"max_value":{"format":"double","type":["number","null"]},"min_value":{"format":"double","type":["number","null"]},"sign":{"type":["string","null"]},"symbol":{"type":"string"}},"required":["symbol"],"type":"object"},"GraphDimension":{"description":"拓樸維度明細。","properties":{"depth_reached":{"description":"實際展開的深度：`point`（未展開）| `edge`（一跳鄰居）。","example":"point","type":"string"},"edge":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/GraphEdge","description":"一跳鄰居篩檢結果；未展開時為 null。"}]},"paths":{"description":"多跳路徑（目前保留欄位，恆為空陣列）。","items":{},"type":"array"},"reason":{"description":"展開 / 未展開的原因代碼。","type":"string"},"score":{"description":"本維度分數，0–100。未展開時為 0。","format":"double","type":"number"}},"required":["score","depth_reached","reason"],"type":"object"},"GraphEdge":{"description":"一跳鄰居篩檢結果。","properties":{"direct_sanctioned":{"description":"是否有鄰居直接命中制裁名單。","type":"boolean"},"neighbors_hit":{"description":"篩檢後命中風險標籤的鄰居數。","format":"int64","type":"integer"},"neighbors_screened":{"description":"實際送去情資篩檢的鄰居數（有上限，故可能小於 `neighbors_total`）。","format":"int64","type":"integer"},"neighbors_total":{"description":"一跳鄰居總數。","format":"int64","type":"integer"},"risky_exposure_ratio":{"description":"風險曝險占比，0.0–1.0（風險鄰居的金額占比）。","format":"double","type":"number"},"risky_neighbors":{"description":"風險鄰居明細（依貢獻排序，最多 5 筆）。","items":{},"type":"array"}},"required":["risky_exposure_ratio","neighbors_total","neighbors_screened","neighbors_hit","direct_sanctioned"],"type":"object"},"HolderEntry":{"description":"單一持有者。","properties":{"address":{"type":"string"},"balance":{"description":"已換算的餘額（依 `decimals`）。","format":"double","type":"number"},"balance_raw":{"description":"raw 餘額（精度備援，UInt256 字串）。","type":"string"},"balance_usd":{"description":"僅穩定幣（USDT/USDC/DAI）會有，等於 `balance`。","format":"double","type":["number","null"]},"pct_of_supply":{"description":"占流通量百分比（總流通量為 0 時不附）。","format":"double","type":["number","null"]},"rank":{"format":"int32","minimum":0,"type":"integer"}},"required":["rank","address","balance","balance_raw"],"type":"object"},"IntelDimension":{"description":"情資維度明細。","properties":{"confidence":{"description":"情資信心，0.0–1.0。欄位語意同 `/v1/labels` 的 `label.confidence`。","format":"double","type":"number"},"entity":{"description":"實體名稱（與 `label` 同值，保留供既有整合使用）。","type":["string","null"]},"label":{"description":"實體名稱。","type":["string","null"]},"labels":{"description":"命中的標籤。欄位語意同 `/v1/labels` 的 `label.labels`。","items":{"type":"string"},"type":"array"},"score":{"description":"本維度分數，0–100。","format":"double","type":"number"}},"required":["score","confidence"],"type":"object"},"Meta":{"description":"回應的中繼資訊。所有欄位都是 `Option`，沒有的就不會出現在 JSON 裡\n（搭配 `skip_serializing_if`），維持輸出乾淨。","properties":{"credit_cost":{"description":"本次請求扣掉的 credit 數量（計費後填入）。","format":"int64","type":["integer","null"]},"credit_remaining":{"description":"本次請求後剩餘的 credit 餘額。","format":"int64","type":["integer","null"]},"pagination":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/PaginationMeta","description":"分頁資訊（僅列表型 endpoint 會帶）。"}]},"request_id":{"description":"本次請求的唯一識別碼，與 log / 追蹤系統對應，方便客訴時定位。","type":["string","null"]}},"type":"object"},"PaginationMeta":{"description":"對外的分頁中繼資訊。","properties":{"limit":{"format":"int32","minimum":0,"type":"integer"},"offset":{"format":"int32","minimum":0,"type":"integer"},"total":{"description":"符合條件的總筆數（若下游能提供）。","format":"int64","minimum":0,"type":["integer","null"]}},"required":["limit","offset"],"type":"object"},"QueryMeta":{"description":"查詢層級的中繼資訊。","properties":{"cached":{"description":"是否命中快取（true = 快取結果，回應較快）。","type":"boolean"},"cost_class":{"description":"`light` / `medium` / `heavy`。可依此值決定 retry / backoff 策略。","type":"string"},"limit":{"description":"holders 才有：請求的 limit。","format":"int32","minimum":0,"type":["integer","null"]},"offset":{"description":"holders 才有：請求的 offset。","format":"int32","minimum":0,"type":["integer","null"]},"query_duration_ms":{"description":"本次查詢耗時（毫秒）。","format":"int64","minimum":0,"type":"integer"}},"required":["query_duration_ms","cost_class","cached"],"type":"object"},"ResolveRequest":{"description":"`POST /v1/resolve` 的請求 body。\n\n宣告型別讓 `/docs` UI 帶出可填的 body 欄位（否則送空 POST 會撞 415）。","properties":{"blockchain":{"description":"鏈別（ethereum / bsc / tron …）。","type":"string"},"contracts":{"description":"contract-first（較防偽）：合約位址清單，元素為 `null` 代表原生幣。\n與 `symbols` 同時給時以 `contracts` 為準。","items":{"type":["string","null"]},"type":["array","null"]},"symbols":{"description":"要解析的 symbol 清單；省略 / 空 / 含 `all` 代表該鏈全部。","items":{"type":"string"},"type":["array","null"]}},"required":["blockchain"],"type":"object"},"RiskDecision":{"description":"判定過程資訊。","properties":{"context":{"description":"套用的身分語境，例如 `exchange`。有語境時同樣的行為會被重新詮釋\n（交易所的高頻進出屬正常營運，混幣器的則加重）。無法判定身分時為 null。","example":"exchange","type":["string","null"]},"context_confidence":{"description":"語境判定的信心，0.0–1.0。","example":0.97,"format":"double","type":"number"},"gate_reason":{"description":"觸發的下限原因；未觸發為 null。可能值：\n\n- `ofac_sanctioned` — 此地址本身在制裁名單上。分數下限 100。\n- `confirmed_illicit` — 此地址本身帶有已確認的非法行為者標籤\n  （暗網市場、勒索軟體、盜幣、釣魚等）。分數下限 90。\n- `direct_sanctioned_edge` — 此地址本身無標籤，但直接與制裁地址往來。分數下限 70。\n\n三者判定的是不同主體：前兩者看這個地址本身，最後一者看它的交易對手。","example":null,"type":["string","null"]},"gated":{"description":"是否觸發硬性下限。為 `true` 時分數由下限決定，不受其他維度稀釋——\n一個被制裁的地址不會因為行為看起來正常就被拉低。","type":"boolean"}},"required":["gated","context_confidence"],"type":"object"},"RiskDimensions":{"description":"三個評估維度。","properties":{"behavior":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/BehaviorDimension","description":"行為維度：這個地址「做了什麼」。**僅 Ethereum / Tron**；其他鏈或資料暫時\n不可用時為 null（此時 `meta.behavior_available` 為 false）。"}]},"graph":{"$ref":"#/components/schemas/GraphDimension","description":"拓樸維度：這個地址「跟誰往來」。只在情資與行為無法定案時才展開（成本較高）。"},"intel":{"$ref":"#/components/schemas/IntelDimension","description":"情資維度：這個地址「是誰」。全鏈支援。"}},"required":["intel","graph"],"type":"object"},"RiskFactor":{"description":"影響分數的單一因子。","properties":{"code":{"description":"因子代碼。","type":"string"},"detail":{"description":"人可讀的說明。","type":["string","null"]},"dimension":{"description":"來自哪個維度：`intel` | `behavior` | `graph`。","type":"string"},"effect":{"description":"對分數的作用：`amplify`（放大）| `suppress`（壓抑）| `as_is`（不變）。","type":"string"},"weight":{"description":"該因子的權重 / 貢獻分數。","format":"double","type":["number","null"]}},"required":["dimension","code","effect"],"type":"object"},"RiskMeta":{"description":"本次評估的覆蓋範圍。","properties":{"analysis_depth":{"description":"實際達到的分析深度：`intel_only` | `point` | `edge`。","example":"point","type":"string"},"behavior_available":{"description":"行為維度是否可用。為 `false` 時 `dimensions.behavior` 為 null，\n綜合分數**不包含**行為訊號——不要把它當成完整評估。","type":"boolean"},"computed_at":{"description":"本次評估時間（Unix epoch 秒，UTC）。","format":"int64","type":"integer"},"graph_available":{"description":"拓樸維度是否展開。","type":"boolean"},"graph_reason":{"description":"拓樸維度展開 / 未展開的原因代碼。","type":"string"}},"required":["analysis_depth","behavior_available","graph_available","graph_reason","computed_at"],"type":"object"},"TraceRequest":{"description":"智能追蹤的請求參數。\n\n`track_setting`（時間範圍、向外 / 向內追蹤深度、回傳筆數上限、金額累計…）、\n`filter_criterias`（金額 / 幣別篩選）、`stop_track_condition`（停止追蹤條件）皆為選填；\n未提供時以預設行為追蹤。","properties":{"address":{"description":"起始追蹤地址。","type":"string"},"blockchain":{"description":"鏈別（tron / ethereum / bitcoin）。","type":"string"},"filter_criterias":{"description":"金額篩選條件陣列（symbol / min_value / max_value / sign）。"},"stop_track_condition":{"description":"停止追蹤條件（預留）。"},"track_setting":{"description":"追蹤參數（時間範圍、往外/往內深度、limit、金額累計等）。"}},"required":["blockchain","address"],"type":"object"},"TransactionsRequest":{"description":"`POST /v1/transactions` 的請求 body。","properties":{"address":{"description":"查詢的地址。","type":"string"},"blockchain":{"description":"鏈別（ethereum / bsc / tron …）。","type":"string"},"contracts":{"description":"contract-first：合約位址清單（與 symbols 二擇一，較防偽）。","items":{"type":["string","null"]},"type":["array","null"]},"direction":{"type":["string","null"]},"end_time":{"format":"int64","type":["integer","null"]},"filter_criterias":{"description":"進階：per-symbol 金額區間篩選。","items":{"$ref":"#/components/schemas/FilterCriteria"},"type":["array","null"]},"limit":{"format":"int32","minimum":0,"type":["integer","null"]},"output_asset":{"type":["string","null"]},"page":{"format":"int32","minimum":0,"type":["integer","null"]},"start_time":{"format":"int64","type":["integer","null"]},"symbols":{"description":"要看的幣種 symbol；省略 / 含 `all` 代表全部。","items":{"type":"string"},"type":["array","null"]}},"required":["blockchain","address"],"type":"object"},"TransferBetweenRequest":{"description":"`POST /v1/counterparty/transfer-between`：兩地址之間的交易明細。","properties":{"address_a":{"type":["string","null"]},"address_b":{"type":["string","null"]},"blockchain":{"type":"string"},"contracts":{"items":{"type":["string","null"]},"type":["array","null"]},"counterparty":{"description":"對手地址（`address_b` 為同義別名）。","type":["string","null"]},"direction":{"type":["string","null"]},"end_time":{"format":"int64","type":["integer","null"]},"limit":{"format":"int32","minimum":0,"type":["integer","null"]},"order":{"type":["string","null"]},"output_asset":{"type":["string","null"]},"page":{"format":"int32","minimum":0,"type":["integer","null"]},"sort":{"type":["string","null"]},"start_time":{"format":"int64","type":["integer","null"]},"symbols":{"items":{"type":"string"},"type":["array","null"]},"target":{"description":"主地址（`address_a` 為同義別名）。","type":["string","null"]}},"required":["blockchain"],"type":"object"},"WalletOverviewRequest":{"description":"`POST /v1/wallet-overview` 的請求 body（地址總覽：餘額、收付次數、首末活躍…）。","properties":{"address":{"type":"string"},"blockchain":{"type":"string"},"contracts":{"items":{"type":["string","null"]},"type":["array","null"]},"output_asset":{"type":["string","null"]},"symbols":{"items":{"type":"string"},"type":["array","null"]}},"required":["blockchain","address"],"type":"object"},"WebhookView":{"description":"對外的訂閱視圖（不含 secret）。","properties":{"created_at":{"format":"date-time","type":"string"},"event_type":{"type":"string"},"id":{"format":"uuid","type":"string"},"status":{"type":"string"},"target_url":{"type":"string"}},"required":["id","target_url","event_type","status","created_at"],"type":"object"}},"securitySchemes":{"api_key":{"in":"header","name":"X-API-Key","type":"apiKey"}}},"info":{"contact":{"name":"Blockchain Atlantis Team"},"description":"企業 / 政府級區塊鏈服務統一 API gateway。所有成功回應皆包在 `{ data, meta }` 信封內。","license":{"identifier":"Proprietary","name":"Proprietary"},"title":"Blockchain Atlantis API Gateway","version":"0.1.0"},"openapi":"3.1.0","paths":{"/healthz":{"get":{"operationId":"livez","responses":{"200":{"content":{"application/json":{"example":{"status":"ok"}}},"description":"服務存活中"}},"summary":"","tags":["服務存活檢查"]}},"/readyz":{"get":{"operationId":"readyz","responses":{"200":{"content":{"application/json":{"example":{"status":"ready"}}},"description":"服務已就緒，可以開始接收流量"},"503":{"description":"服務尚未就緒，請稍後重試"}},"summary":"","tags":["服務就緒檢查"]}},"/v1/address-classify":{"post":{"operationId":"classify","requestBody":{"content":{"application/json":{"example":{"addresses":["TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t"],"blockchain":"tron"},"schema":{"$ref":"#/components/schemas/ClassifyRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"example":{"data":{"results":[{"address":"TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t","confidence":0.9811,"error":null,"predicted_class":"Defi"},{"address":"TMuA6YqfCeX8EhbfYEg5y7S4DqzSJireY9","confidence":0.4132,"error":null,"predicted_class":"Unknown"},{"address":"TWd4WrZ9wn84f5x1hZhL4DHvk738ns5jwb","confidence":0.0,"error":"feature collection failed for this address","predicted_class":null}]},"meta":{"request_id":"85ebb9f5-36e4-41c7-a890-2df10f972250"}},"schema":{"description":"統一成功回應信封。\n\n- `data`：實際的業務資料（泛型 `T`，必須可序列化）。\n- `meta`：與這次請求有關的中繼資訊（request id、分頁、credit 用量等）。","properties":{"data":{"description":"地址分類結果。","properties":{"results":{"description":"每個地址一筆，**順序與請求的 `addresses` 相同**。","items":{"$ref":"#/components/schemas/AddressClassification"},"type":"array"}},"required":["results"],"type":"object"},"meta":{"$ref":"#/components/schemas/Meta"}},"required":["data","meta"],"type":"object"}}},"description":"分類完成，回傳每個地址的預測類型與信心分數"},"400":{"content":{"application/json":{"example":{"error":{"code":"bad_request","message":"bad request: addresses[2] is not a valid tron address"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"請求參數有誤：缺少必填欄位、鏈別不支援、地址清單為空或超過 100 筆，或地址格式與鏈不符"},"401":{"content":{"application/json":{"example":{"error":{"code":"unauthorized","message":"unauthorized: missing api key"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"缺少或無效的 API key"},"402":{"content":{"application/json":{"example":{"error":{"code":"insufficient_credit","message":"insufficient credit (required 5, remaining 0); please contact support@chainsecurity.asia to top up your account"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"點數餘額不足"},"403":{"content":{"application/json":{"example":{"error":{"code":"forbidden","message":"forbidden: endpoint not permitted for this plan"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"目前方案不含此端點"},"429":{"content":{"application/json":{"example":{"error":{"code":"rate_limited","message":"rate limited, retry after 1s"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"請求過於頻繁，請依 Retry-After 退避後重試"},"500":{"content":{"application/json":{"example":{"error":{"code":"internal_error","message":"internal server error"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"伺服器內部錯誤"},"502":{"content":{"application/json":{"example":{"error":{"code":"upstream_error","message":"upstream service unreachable"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"後端服務暫時無法回應，請稍後重試"},"503":{"content":{"application/json":{"example":{"error":{"code":"service_unavailable","message":"upstream temporarily unavailable, retry with backoff"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"後端服務暫時過載，請退避後重試"},"504":{"content":{"application/json":{"example":{"error":{"code":"gateway_timeout","message":"upstream did not respond in time"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"分類逾時（一次送較多地址時較容易發生），請縮小批次後重試"}},"security":[{"api_key":[]}],"summary":"","tags":["地址類型分類"]}},"/v1/address-risk":{"post":{"operationId":"address_risk","requestBody":{"content":{"application/json":{"example":{"address":"0x28c6c06298d514db089934071355e5743bf21d60","blockchain":"ethereum"},"schema":{"$ref":"#/components/schemas/AddressRiskRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"example":{"data":{"address":"0x28c6c06298d514db089934071355e5743bf21d60","chain":"ethereum","composite_score":8.4,"decision":{"context":"exchange","context_confidence":1.0,"gate_reason":null,"gated":false},"dimensions":{"behavior":{"behaviors":[{"code":"rapid_in_out","context_weight":0.1,"ever_detected":true,"evidence":{"in_amount_usd":3412848.81,"out_amount_usd":616634422.08,"out_ratio":9.99,"window_minutes":30},"first_detected_at":1584086703,"last_detected_at":1638244803,"name_zh":"快速進出","occurrence_count":8,"score":12.0,"score_after_context":1.2,"severity":"high"}],"data_window":{"from":1533891705,"to":1764517689,"tx_count":1132},"deferred":["drainer_pattern","risky_contract_interaction"],"evaluated":["rapid_in_out","burner_wallet","pass_through"],"score":2.68,"score_breakdown":{"burner_wallet":8.0,"capped_total":26.78,"pass_through":6.78,"rapid_in_out":12.0,"total_raw":26.78},"score_raw":26.78},"graph":{"depth_reached":"point","edge":null,"paths":[],"reason":"high_confidence_benign_entity","score":0},"intel":{"confidence":1.0,"entity":"Binance","label":"Binance","labels":["exchange","exchange_hot_wallet"],"score":5.0}},"factors":[{"code":"category:exchange","detail":"已知交易所身分，行為維度依此語境重新詮釋","dimension":"intel","effect":"suppress"},{"code":"rapid_in_out","dimension":"behavior","effect":"suppress","weight":1.2}],"meta":{"analysis_depth":"point","behavior_available":true,"computed_at":1783332664,"graph_available":false,"graph_reason":"high_confidence_benign_entity"},"risk_level":"low","risk_level_zh":"低"},"meta":{"request_id":"6c41c310-6a01-4c3e-8253-13e7c23e148a"}},"schema":{"description":"統一成功回應信封。\n\n- `data`：實際的業務資料（泛型 `T`，必須可序列化）。\n- `meta`：與這次請求有關的中繼資訊（request id、分頁、credit 用量等）。","properties":{"data":{"description":"綜合地址風險結果。","properties":{"address":{"description":"查詢的地址。","type":"string"},"chain":{"description":"查詢的鏈別（正規化後）。","type":"string"},"composite_score":{"description":"綜合風險分數，0–100。三個維度加權後再套用 gate 下限。","example":12.5,"format":"double","type":"number"},"decision":{"$ref":"#/components/schemas/RiskDecision","description":"判定過程的透明化資訊。"},"dimensions":{"$ref":"#/components/schemas/RiskDimensions","description":"三個維度的明細。"},"factors":{"description":"影響本次分數的主要因子（已依影響程度排序）。","items":{"$ref":"#/components/schemas/RiskFactor"},"type":"array"},"meta":{"$ref":"#/components/schemas/RiskMeta","description":"本次評估的覆蓋範圍。**務必檢查**：維度不可用時分數只反映可用的維度。"},"risk_level":{"description":"綜合風險等級：`low` | `medium` | `high`。","example":"low","type":"string"},"risk_level_zh":{"description":"風險等級的中文說明。","example":"低","type":"string"}},"required":["address","chain","composite_score","risk_level","risk_level_zh","decision","dimensions","factors","meta"],"type":"object"},"meta":{"$ref":"#/components/schemas/Meta"}},"required":["data","meta"],"type":"object"}}},"description":"查詢成功，回傳綜合分數、風險等級與情資/行為/拓樸各維度明細"},"400":{"content":{"application/json":{"example":{"error":{"code":"bad_request","message":"bad request: address is not a valid ethereum address"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"請求參數有誤：缺少必填欄位、blockchain 不支援、address 格式與 blockchain 不符，或 third_party 值無效"},"401":{"content":{"application/json":{"example":{"error":{"code":"unauthorized","message":"unauthorized: missing api key"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"缺少或無效的 API key"},"402":{"content":{"application/json":{"example":{"error":{"code":"insufficient_credit","message":"insufficient credit (required 5, remaining 0); please contact support@chainsecurity.asia to top up your account"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"點數餘額不足"},"403":{"content":{"application/json":{"example":{"error":{"code":"forbidden","message":"forbidden: endpoint not permitted for this plan"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"目前方案不含此端點"},"429":{"content":{"application/json":{"example":{"error":{"code":"rate_limited","message":"rate limited, retry after 1s"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"請求過於頻繁，請依 Retry-After 退避後重試"},"500":{"content":{"application/json":{"example":{"error":{"code":"internal_error","message":"internal server error"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"伺服器內部錯誤"},"502":{"content":{"application/json":{"example":{"error":{"code":"upstream_error","message":"upstream service unreachable"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"後端服務暫時無法回應，請稍後重試"},"503":{"content":{"application/json":{"example":{"error":{"code":"service_unavailable","message":"upstream temporarily unavailable, retry with backoff"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"後端服務暫時過載，請退避後重試"},"504":{"content":{"application/json":{"example":{"error":{"code":"gateway_timeout","message":"upstream did not respond in time"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"查詢逾時（大地址的完整歷史掃描較久），請稍後重試"}},"security":[{"api_key":[]}],"summary":"","tags":["地址風險評分"]}},"/v1/addresses/autocomplete":{"get":{"operationId":"autocomplete","parameters":[{"description":"地址前綴（至少 5 字）","example":"TXgXcJ","in":"query","name":"q","required":true,"schema":{"type":"string"}},{"description":"鏈別；省略則由服務嘗試推斷","example":"tron","in":"query","name":"chain","required":false,"schema":{"type":"string"}},{"description":"候選數上限","example":10,"in":"query","name":"limit","required":false,"schema":{"format":"int32","minimum":0,"type":"integer"}}],"responses":{"200":{"content":{"application/json":{"example":{"data":{"candidates":["TXgXcJwxbDsDfTHq3BSZagZor4Dg74tb5Z"],"chain":"tron","query":"TXgXcJ","total":1},"meta":{"request_id":"00000000-0000-0000-0000-000000000000"}}}},"description":"查詢成功，回傳符合前綴的候選地址"},"400":{"description":"請求參數有誤，請提供 q（且長度足夠），或無法判斷其所屬鏈別"},"401":{"description":"缺少或無效的 API key"}},"security":[{"api_key":[]}],"summary":"","tags":["地址自動補全"]}},"/v1/addresses/resolve":{"get":{"operationId":"resolve","parameters":[{"description":"完整地址（驗證 / 糾錯）","example":"TXgXcJwxbDsDfTHq3BSZagZor4Dg74tb5Z","in":"query","name":"q","required":true,"schema":{"type":"string"}},{"description":"鏈別；省略則由服務嘗試推斷","example":"tron","in":"query","name":"chain","required":false,"schema":{"type":"string"}},{"description":"相似候選數上限","example":10,"in":"query","name":"limit","required":false,"schema":{"format":"int32","minimum":0,"type":"integer"}}],"responses":{"200":{"content":{"application/json":{"example":{"data":{"candidates":[],"chain":"tron","match":true,"query":"TXgXcJwxbDsDfTHq3BSZagZor4Dg74tb5Z","took_ms":3,"total":0},"meta":{"request_id":"00000000-0000-0000-0000-000000000000"}}}},"description":"查詢成功，回傳比對結果與相似候選地址"},"400":{"description":"請求參數有誤，請提供 q，或無法判斷其所屬鏈別"},"401":{"description":"缺少或無效的 API key"}},"security":[{"api_key":[]}],"summary":"","tags":["地址驗證與修正"]}},"/v1/assets":{"get":{"operationId":"assets","parameters":[{"description":"鏈別，例如 ethereum / bsc / tron","example":"ethereum","in":"query","name":"chain","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"example":{"data":{"assets":[{"contract":"TD3et9gS2pYz46ZC2mkCfYcKQGNwrnBLef","decimals":18,"rate_symbol":null,"symbol":"3sun","usd_mode":"none"},{"contract":"TA1TVZdERDRDGi9QXNdLVfPxbymmi8xFyc","decimals":18,"rate_symbol":null,"symbol":"3usd","usd_mode":"none"}],"chain":"tron"},"meta":{"request_id":"117822f1-c9c1-4b55-9dab-1273c1d2a6b0"}}}},"description":"查詢成功，回傳該鏈支援的代幣"},"400":{"description":"請求參數有誤，請提供有效且支援的鏈別"},"401":{"description":"缺少或無效的 API key"}},"security":[{"api_key":[]}],"summary":"","tags":["指定鏈資產清單"]}},"/v1/balance-history":{"post":{"operationId":"balance_history","requestBody":{"content":{"application/json":{"example":{"address":"TMuA6YqfCeX8EhbfYEg5y7S4DqzSJireY9","blockchain":"tron","symbols":["trx"]},"schema":{"$ref":"#/components/schemas/BalanceHistoryRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"example":{"data":{"address":"TMuA6YqfCeX8EhbfYEg5y7S4DqzSJireY9","blockchain":"tron","data_points":[{"balance":"28811576.136503","date":"20180810","index":"0","received":"28811577.136503","sent":"1.000000","timestamp":1533859200},{"balance":"28811576.136503","date":"20180811","index":"1","received":"0.000000","sent":"0.000000","timestamp":1533945600}],"final_balance":"35.216519","output_asset":"native","symbol":"trx","unit":"daily","utc":"UTC+0"},"meta":{"request_id":"19f2e0c8-3b39-4724-8286-0d7fa6e71218"}}}},"description":"查詢成功，回傳每日餘額變化與最終餘額"},"400":{"description":"請求參數有誤，請檢查輸入內容"},"401":{"description":"缺少或無效的 API key"}},"security":[{"api_key":[]}],"summary":"","tags":["地址餘額歷史"]}},"/v1/btc/change-address":{"post":{"operationId":"change_address","requestBody":{"content":{"application/json":{"example":{"txid":"f4184fc596403b9d638783cf57adfe4c75c605f6356fbc91338530e9831e9e16"},"schema":{"$ref":"#/components/schemas/ChangeAddressRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"example":{"data":{"change_address":"12cbQLTFMXRnSzktFkuoG3eHoMeFtpTu3S","detection_method":"input_match","txid":"f4184fc596403b9d638783cf57adfe4c75c605f6356fbc91338530e9831e9e16"},"meta":{"request_id":"b2f57914-ded8-4d59-8baa-51b03dc3f034"}}}},"description":"偵測成功，回傳找零地址與判定依據"},"400":{"description":"請求參數有誤，請提供 txid"},"401":{"description":"缺少或無效的 API key"},"502":{"description":"後端服務暫時無法回應，請稍後重試"}},"security":[{"api_key":[]}],"summary":"","tags":["Bitcoin 找零地址偵測"]}},"/v1/chains":{"get":{"operationId":"chains","responses":{"200":{"content":{"application/json":{"example":{"data":[{"name":"bitcoin","token_addresses":[{"address":"0x0","decimals":8,"name":"BTC","symbol":"BTC","verified":true}]},{"name":"ethereum","token_addresses":[{"address":"0x0","decimals":18,"name":"ETH","symbol":"ETH","verified":true},{"address":"0xdAC17F958D2ee523a2206206994597C13D831ec7","decimals":6,"name":"USDT","symbol":"USDT","verified":true}]}],"meta":{"request_id":"ef25c6a1-0b1c-450b-b73b-ed0d2a1af623"}}}},"description":"查詢成功，回傳支援的鏈與各鏈可用代幣"},"401":{"description":"缺少或無效的 API key"}},"security":[{"api_key":[]}],"summary":"","tags":["支援鏈總覽"]}},"/v1/counterparty":{"post":{"operationId":"counterparty","requestBody":{"content":{"application/json":{"example":{"address":"TMuA6YqfCeX8EhbfYEg5y7S4DqzSJireY9","blockchain":"tron","limit":50,"sort":"total_amount"},"schema":{"$ref":"#/components/schemas/CounterpartyRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"example":{"data":{"datas":[{"address":"TAUN6FwrnwwmaEqYcckffC7wYmbaS6cBiX","blockchain":"tron","first_activity":1533891705,"last_activity":1630913688,"received_amount":"925630051399.04565430","received_amount_usd":22090152259.545155,"received_count":208,"sent_amount":"10025588129.66468239","sent_amount_usd":4379001976.236216,"sent_count":26,"symbol":"all","symbols":["win","sun"],"total_amount":"935655639528.71020508","total_amount_usd":26469154235.781372,"total_count":234,"total_transfers":234},{"address":"TWd4WrZ9wn84f5x1hZhL4DHvk738ns5jwb","blockchain":"tron","first_activity":1542274983,"last_activity":1729421391,"received_amount":"0.00000000","received_amount_usd":0,"received_count":0,"sent_amount":"1846183394865.81567383","sent_amount_usd":17890204366.68017,"sent_count":52,"symbol":"all","symbols":["trx","nft"],"total_amount":"1846183394865.81567383","total_amount_usd":17890204366.68017,"total_count":52,"total_transfers":52}],"pagination":{"has_more":true,"limit":2,"page":1,"total_pages":177},"received_address_count":344,"sent_address_count":11},"meta":{"request_id":"e8392260-a5c0-429f-b6f4-0b5c2687ef9e"}}}},"description":"查詢成功，回傳交易對手清單與往來排行"},"400":{"description":"請求參數有誤，請檢查輸入內容"},"401":{"description":"缺少或無效的 API key"}},"security":[{"api_key":[]}],"summary":"","tags":["地址交易對手"]}},"/v1/counterparty/overview":{"post":{"operationId":"counterparty_overview","requestBody":{"content":{"application/json":{"example":{"blockchain":"tron","counterparty":"TAUN6FwrnwwmaEqYcckffC7wYmbaS6cBiX","target":"TMuA6YqfCeX8EhbfYEg5y7S4DqzSJireY9"},"schema":{"$ref":"#/components/schemas/CounterpartyOverviewRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"example":{"data":{"assets_transferred":["sun","trx"],"blockchain":"tron","counterparty":"TAUN6FwrnwwmaEqYcckffC7wYmbaS6cBiX","first_interaction":1533891705,"last_interaction":1630913688,"target":"TMuA6YqfCeX8EhbfYEg5y7S4DqzSJireY9","total_amount":"38038188656.72198486","total_amount_usd":"25319326184.80","total_count":234,"transfer_betweens":[{"action":"send","amount":"4973363911.66468334","amount_usd":"0.00","count":26,"direction":"To","symbols":[{"amount":"4973363911.66468334","amount_usd":"0.00","count":20,"symbol":"trx"},{"amount":"0.00000000","amount_usd":"0.00","count":5,"symbol":"usdt"}]},{"action":"receive","amount":"33064824745.05730438","amount_usd":"0.00","count":208,"direction":"From","symbols":[{"amount":"33064824745.05730438","amount_usd":"0.00","count":138,"symbol":"trx"},{"amount":"0.00000000","amount_usd":"0.00","count":5,"symbol":"sun"}]}]},"meta":{"request_id":"82573011-2aef-424a-a88b-f7d58a2e5324"}}}},"description":"查詢成功，回傳兩地址往來的彙總統計"},"400":{"description":"請求參數有誤，請檢查輸入內容"},"401":{"description":"缺少或無效的 API key"}},"security":[{"api_key":[]}],"summary":"","tags":["兩地址往來總覽"]}},"/v1/counterparty/transfer-between":{"post":{"operationId":"transfer_between","requestBody":{"content":{"application/json":{"example":{"blockchain":"tron","counterparty":"TAUN6FwrnwwmaEqYcckffC7wYmbaS6cBiX","target":"TMuA6YqfCeX8EhbfYEg5y7S4DqzSJireY9"},"schema":{"$ref":"#/components/schemas/TransferBetweenRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"example":{"data":{"pagination":{"has_more":true,"limit":50,"page":0,"total_pages":5},"transactions":[{"amount":"129270219","amount_usd":"","blockchain":"tron","direction":"From","from":{"address":"TAUN6FwrnwwmaEqYcckffC7wYmbaS6cBiX","blockchain":"tron","label":[]},"symbol":"sun","timestamp":1630913688,"to":{"address":"TMuA6YqfCeX8EhbfYEg5y7S4DqzSJireY9","blockchain":"tron","label":[]},"tx_hash":"543d18d43768196596cf6b7ed1cb274b04077f0545418faa1587eb0fc2a8dce2","txn_type":"token_transfer","uid":"7d81cabec504907d8c0e09e88b1a4ece-0"},{"amount":"5711591803","amount_usd":"","blockchain":"tron","direction":"From","from":{"address":"TAUN6FwrnwwmaEqYcckffC7wYmbaS6cBiX","blockchain":"tron","label":[]},"symbol":"win","timestamp":1630231911,"to":{"address":"TMuA6YqfCeX8EhbfYEg5y7S4DqzSJireY9","blockchain":"tron","label":[]},"tx_hash":"a7cfc9059fe419573ba9c79c9b37b0cffb9aef8abfac0a0dc87585c8f4db85a1","txn_type":"token_transfer","uid":"6f25367adb3101d5f75a76a8e542a3a7-0"}]},"meta":{"request_id":"16a340f3-9a4b-43a0-8dd2-9aec8fd233b6"}}}},"description":"查詢成功，回傳兩地址之間的轉帳明細"},"400":{"description":"請求參數有誤，請檢查輸入內容"},"401":{"description":"缺少或無效的 API key"}},"security":[{"api_key":[]}],"summary":"","tags":["兩地址轉帳紀錄"]}},"/v1/cross-chain":{"get":{"operationId":"track","parameters":[{"description":"來源交易 hash","example":"0x11ce7a536a3ec57699c918ecd43424ea97b928cfee38508814b40e48cb79fe15","in":"query","name":"txhash","required":true,"schema":{"type":"string"}},{"description":"protocol label（協定關鍵字），例如 across、axelar、celer、wormhole","example":"across","in":"query","name":"label","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"example":{"data":{"results":[{"label":"Across Protocol","result":{"destination_chain":"Hyperliquid","destination_tx_hash":"0x6133d3c95096173c0b96be38612133af52e4c4ed05eb703639ca85b7dad99397","receiver_address":"0xd0d80284e8db5b36373185b9ecaabe43350306e3","sender_address":"0xd0d80284e8db5b36373185b9ecaabe43350306e3","source_chain":"Arbitrum","source_tx_hash":"0x11ce7a536a3ec57699c918ecd43424ea97b928cfee38508814b40e48cb79fe15"}}]},"meta":{"request_id":"954a3cea-05fa-4bd0-bbfb-7bca2eb250dc"}}}},"description":"查詢成功，回傳跨鏈交易詳情（來源/目的鏈、兩端交易與收付地址）"},"400":{"description":"請求參數有誤，請提供 txhash 與 label"},"401":{"description":"缺少或無效的 API key"},"502":{"description":"後端服務暫時無法回應，請稍後重試"}},"security":[{"api_key":[]}],"summary":"","tags":["跨鏈資金追蹤"]}},"/v1/cross-chain/batch":{"post":{"operationId":"track_batch","requestBody":{"content":{"application/json":{"example":{"queries":[{"label":"across","txhash":"0x11ce7a536a3ec57699c918ecd43424ea97b928cfee38508814b40e48cb79fe15"}]},"schema":{"$ref":"#/components/schemas/BatchRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"example":{"data":{"results":[{"label":"Across Protocol","result":{"destination_chain":"Hyperliquid","destination_tx_hash":"0x6133d3c95096173c0b96be38612133af52e4c4ed05eb703639ca85b7dad99397","receiver_address":"0xd0d80284e8db5b36373185b9ecaabe43350306e3","sender_address":"0xd0d80284e8db5b36373185b9ecaabe43350306e3","source_chain":"Arbitrum","source_tx_hash":"0x11ce7a536a3ec57699c918ecd43424ea97b928cfee38508814b40e48cb79fe15"},"txhash":"0x11ce7a536a3ec57699c918ecd43424ea97b928cfee38508814b40e48cb79fe15"}]},"meta":{"request_id":"d75072ae-494e-41ea-a6bf-66ea0f6559ac"}}}},"description":"查詢成功，回傳各筆跨鏈交易詳情"},"400":{"description":"請求參數有誤，請檢查輸入內容"},"401":{"description":"缺少或無效的 API key"},"502":{"description":"後端服務暫時無法回應，請稍後重試"}},"security":[{"api_key":[]}],"summary":"","tags":["批次跨鏈追蹤"]}},"/v1/labels":{"get":{"operationId":"labels","parameters":[{"description":"鏈別。支援 ethereum、tron、bitcoin、bsc、polygon、avalanche、base（可用 eth / btc / bnb 等常見別名）","example":"ethereum","in":"query","name":"chain","required":true,"schema":{"type":"string"}},{"description":"查詢地址。格式須與 chain 相符，否則回 400","example":"0x28c6c06298d514db089934071355e5743bf21d60","in":"query","name":"address","required":true,"schema":{"type":"string"}},{"description":"查詢範圍。all（預設）＝自有情資庫加外部來源；first_party＝只查自有情資庫（較快，不消耗外部查詢額度）","example":"all","in":"query","name":"sources","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"example":{"data":{"address":"0x28c6c06298d514db089934071355e5743bf21d60","chain":"ethereum","fetched_at":1783332664,"label":{"confidence":1.0,"entity_name":"Binance","labels":["exchange","exchange_hot_wallet"]}},"meta":{"request_id":"03ca1bda-ebb1-40e8-bf99-387ee3efe341"}},"schema":{"description":"統一成功回應信封。\n\n- `data`：實際的業務資料（泛型 `T`，必須可序列化）。\n- `meta`：與這次請求有關的中繼資訊（request id、分頁、credit 用量等）。","properties":{"data":{"description":"地址標籤查詢結果。","properties":{"address":{"description":"查詢的地址。","type":"string"},"chain":{"description":"查詢的鏈別（正規化後）。","type":"string"},"fetched_at":{"description":"本次結果產生時間（Unix epoch 秒，UTC）。","format":"int64","type":"integer"},"label":{"$ref":"#/components/schemas/AggregateLabel","description":"綜合標籤：各來源結果彙整後的單一結論。"}},"required":["chain","address","label","fetched_at"],"type":"object"},"meta":{"$ref":"#/components/schemas/Meta"}},"required":["data","meta"],"type":"object"}}},"description":"查詢成功"},"400":{"content":{"application/json":{"example":{"error":{"code":"bad_request","message":"bad request: address is not a valid ethereum address"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"請求參數有誤：缺少必填參數、chain 不支援、address 格式與 chain 不符，或 sources 值無效"},"401":{"content":{"application/json":{"example":{"error":{"code":"unauthorized","message":"unauthorized: missing api key"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"缺少或無效的 API key"},"402":{"content":{"application/json":{"example":{"error":{"code":"insufficient_credit","message":"insufficient credit (required 5, remaining 0); please contact support@chainsecurity.asia to top up your account"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"點數餘額不足"},"403":{"content":{"application/json":{"example":{"error":{"code":"forbidden","message":"forbidden: endpoint not permitted for this plan"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"目前方案不含此端點"},"429":{"content":{"application/json":{"example":{"error":{"code":"rate_limited","message":"rate limited, retry after 1s"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"請求過於頻繁，請依 Retry-After 退避後重試"},"500":{"content":{"application/json":{"example":{"error":{"code":"internal_error","message":"internal server error"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"伺服器內部錯誤"},"502":{"content":{"application/json":{"example":{"error":{"code":"upstream_error","message":"upstream service unreachable"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"後端服務暫時無法回應，請稍後重試"},"503":{"content":{"application/json":{"example":{"error":{"code":"service_unavailable","message":"upstream temporarily unavailable, retry with backoff"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"後端服務暫時過載，請退避後重試"},"504":{"content":{"application/json":{"example":{"error":{"code":"gateway_timeout","message":"upstream did not respond in time"}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"查詢逾時，請稍後重試"}},"security":[{"api_key":[]}],"summary":"","tags":["地址標籤與身分"]}},"/v1/rates":{"get":{"operationId":"price","parameters":[{"description":"逗號分隔幣種（rate_symbol）","example":"BTC,ETH","in":"query","name":"symbols","required":true,"schema":{"type":"string"}},{"description":"時點（unix 秒）；省略=最新","example":1700000000,"in":"query","name":"at","required":false,"schema":{"format":"int64","type":"integer"}},{"description":"計價幣別；省略 = USD。可用的法幣見 /v1/rates/symbols 的 fiat 欄位","example":"TWD","in":"query","name":"quote","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"example":{"data":{"at":null,"quote":"USD","rates":[{"price_usd":62904.01,"symbol":"BTC","ts":1783328400},{"price_usd":1765.54,"symbol":"ETH","ts":1783328400}]},"meta":{"request_id":"f84a9a65-eab3-44ef-85d4-71ecac57d865"}}}},"description":"查詢成功，回傳各幣種的價格"},"400":{"description":"請求參數有誤，請提供 symbols"},"401":{"description":"缺少或無效的 API key"},"404":{"description":"指定的計價幣別在該時點沒有匯率資料"}},"security":[{"api_key":[]}],"summary":"","tags":["資產價格"]}},"/v1/rates/convert":{"get":{"operationId":"convert","parameters":[{"description":"要換算的金額（非負數）","example":33000.0,"in":"query","name":"amount","required":true,"schema":{"format":"double","type":"number"}},{"description":"來源幣別（法幣代碼或 rate_symbol）","example":"TWD","in":"query","name":"from","required":true,"schema":{"type":"string"}},{"description":"目標幣別（法幣代碼或 rate_symbol）","example":"USDT","in":"query","name":"to","required":true,"schema":{"type":"string"}},{"description":"時點（unix 秒）；省略=最新","example":1721142000,"in":"query","name":"at","required":false,"schema":{"format":"int64","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"example":{"data":{"amount":33000.0,"at":1721142000,"from":"TWD","from_rate":{"kind":"fiat","price_usd":0.030536215952119215,"ts":1721142000,"units_per_usd":32.748},"rate":0.030536215952119215,"result":1007.695126419934,"to":"USDT","to_rate":{"kind":"stable","price_usd":1.0,"ts":null,"units_per_usd":null},"usd_value":1007.695126419934},"meta":{"request_id":"3f1c8a20-6d54-4f8b-9a17-2c9e5b7d1e44"}}}},"description":"換算成功，回傳結果金額與所用匯率"},"400":{"description":"請求參數有誤，請檢查 amount / from / to"},"401":{"description":"缺少或無效的 API key"},"404":{"description":"指定幣別在該時點沒有匯率資料"}},"security":[{"api_key":[]}],"summary":"","tags":["金額換算"]}},"/v1/rates/history":{"get":{"operationId":"history","parameters":[{"description":"幣種（rate_symbol）","example":"BTC","in":"query","name":"symbol","required":true,"schema":{"type":"string"}},{"description":"起（unix 秒）","example":1700000000,"in":"query","name":"start","required":false,"schema":{"format":"int64","type":"integer"}},{"description":"迄（unix 秒）","example":1700086400,"in":"query","name":"end","required":false,"schema":{"format":"int64","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"example":{"data":{"points":[],"symbol":"BTC"},"meta":{"request_id":"e24ce1ca-c13e-46df-a1af-5d49ee44c249"}}}},"description":"查詢成功，回傳歷史價格序列"},"400":{"description":"請求參數有誤，請提供 symbol"},"401":{"description":"缺少或無效的 API key"}},"security":[{"api_key":[]}],"summary":"","tags":["歷史價格序列"]}},"/v1/rates/symbols":{"get":{"operationId":"symbols","responses":{"200":{"content":{"application/json":{"example":{"data":{"fiat":["TWD"],"symbols":["1INCH","AAVE"]},"meta":{"request_id":"eb8708db-2129-4f6c-99d2-923cc6f8b0d9"}}}},"description":"查詢成功，回傳有報價資料的幣種與法幣清單"},"401":{"description":"缺少或無效的 API key"}},"security":[{"api_key":[]}],"summary":"","tags":["可查價資產清單"]}},"/v1/registry":{"get":{"operationId":"registry","responses":{"200":{"content":{"application/json":{"example":{"data":{"tokens":[{"cg_id":null,"chain":"bitcoin","contract":null,"decimals":8,"display_name":"BTC","market_cap_usd":null,"mcap_updated_at":null,"rate_source":null,"rate_symbol":"BTC","symbol":"btc","usd_mode":"rate","verified":true},{"cg_id":null,"chain":"ethereum","contract":null,"decimals":18,"display_name":"ETH","market_cap_usd":null,"mcap_updated_at":null,"rate_source":null,"rate_symbol":"ETH","symbol":"eth","usd_mode":"rate","verified":true}]},"meta":{"request_id":"ded2c6df-fc53-4276-a7c4-da865053daab"}}}},"description":"查詢成功，回傳完整代幣清單"},"401":{"description":"缺少或無效的 API key"}},"security":[{"api_key":[]}],"summary":"","tags":["完整資產清單"]}},"/v1/resolve":{"post":{"operationId":"resolve","requestBody":{"content":{"application/json":{"example":{"blockchain":"ethereum","symbols":["usdt","weth"]},"schema":{"$ref":"#/components/schemas/ResolveRequest"}}},"description":"要解析的鏈與 symbols / contracts","required":true},"responses":{"200":{"content":{"application/json":{"example":{"data":{"assets":[{"contract":"0xdAC17F958D2ee523a2206206994597C13D831ec7","decimals":6,"rate_symbol":null,"symbol":"usdt","usd_mode":"stable"},{"contract":"0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2","decimals":18,"rate_symbol":"WETH","symbol":"weth","usd_mode":"rate"}],"blockchain":"ethereum"},"meta":{"request_id":"a2f27b22-82dd-4fc0-9bb2-c4ee5eaae434"}}}},"description":"解析成功，回傳標準化的資產識別"},"400":{"description":"請求參數有誤（不支援的鏈別或格式錯誤），請檢查輸入內容"},"401":{"description":"缺少或無效的 API key"}},"security":[{"api_key":[]}],"summary":"","tags":["資產識別解析"]}},"/v1/token/addresses_flow":{"get":{"operationId":"addresses_flow","parameters":[{"description":"鏈名稱（`ethereum` / `tron` / `bitcoin`）。","example":"ethereum","in":"path","name":"blockchain","required":true,"schema":{"type":"string"}},{"description":"合約地址（ethereum / tron 必填，bitcoin 必須省略）。","example":"0xdAC17F958D2ee523a2206206994597C13D831ec7","in":"path","name":"contract","required":true,"schema":{"type":["string","null"]}},{"description":"Comma-separated 地址清單（1..=100）。","example":"0xf977814e90da44bfa03b6295a0616a897441acec,0x47ac0fb4f2d84898e4d9e7b4dab3c24507a6d503","in":"path","name":"addresses","required":true,"schema":{"type":"string"}},{"description":"區間起點 unix timestamp（秒）。","example":1704067200,"in":"path","name":"from_ts","required":true,"schema":{"format":"int64","type":"integer"}},{"description":"區間終點 unix timestamp（秒）。`to_ts - from_ts ≤ 365 天`。","example":1735603200,"in":"path","name":"to_ts","required":true,"schema":{"format":"int64","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"example":{"data":{"address_count":2,"aggregate":{"net_flow_total":0.0,"net_flow_total_usd":0.0,"received_total":0.0,"sent_total":0.0,"tx_count_total":0},"blockchain":"tron","contract":"TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t","decimals":6,"from_ts":1721145600,"meta":{"cached":true,"cost_class":"light","query_duration_ms":6},"results":[{"address":"TMuA6YqfCeX8EhbfYEg5y7S4DqzSJireY9","first_activity_ts":null,"last_activity_ts":null,"net_flow":0.0,"net_flow_usd":0.0,"received":0.0,"received_count":0,"sent":0.0,"sent_count":0,"tx_count":0},{"address":"TAUN6FwrnwwmaEqYcckffC7wYmbaS6cBiX","first_activity_ts":null,"last_activity_ts":null,"net_flow":0.0,"net_flow_usd":0.0,"received":0.0,"received_count":0,"sent":0.0,"sent_count":0,"tx_count":0}],"symbol":"USDT","to_ts":1721318399},"meta":{"request_id":"f787d577-a307-4773-a4da-4448f516db07"}},"schema":{"description":"統一成功回應信封。\n\n- `data`：實際的業務資料（泛型 `T`，必須可序列化）。\n- `meta`：與這次請求有關的中繼資訊（request id、分頁、credit 用量等）。","properties":{"data":{"description":"代幣地址間資金流動查詢的回應。","properties":{"address_count":{"format":"int32","minimum":0,"type":"integer"},"aggregate":{"$ref":"#/components/schemas/AddressesFlowAggregate"},"blockchain":{"type":"string"},"contract":{"type":["string","null"]},"decimals":{"format":"int32","minimum":0,"type":"integer"},"from_ts":{"format":"int64","type":"integer"},"meta":{"$ref":"#/components/schemas/QueryMeta"},"results":{"items":{"$ref":"#/components/schemas/AddressFlow"},"type":"array"},"symbol":{"type":"string"},"to_ts":{"format":"int64","type":"integer"}},"required":["blockchain","symbol","decimals","from_ts","to_ts","address_count","results","aggregate","meta"],"type":"object"},"meta":{"$ref":"#/components/schemas/Meta"}},"required":["data","meta"],"type":"object"}}},"description":"查詢成功，回傳每個地址的資金流向與整體加總"},"400":{"description":"請求參數有誤（地址清單為空或超過 100 個、時間區間超過 365 天、或鏈別不符），請檢查輸入內容"},"401":{"description":"缺少或無效的 API key"},"402":{"description":"點數餘額不足"},"429":{"description":"請求過於頻繁，請稍後重試"},"502":{"description":"後端服務暫時無法回應，請稍後重試"}},"security":[{"api_key":[]}],"summary":"","tags":["多地址資金流"]}},"/v1/token/concentration":{"get":{"operationId":"concentration","parameters":[{"description":"鏈名稱（`ethereum` / `tron` / `bitcoin`）。","example":"tron","in":"path","name":"blockchain","required":true,"schema":{"type":"string"}},{"description":"合約地址（ethereum / tron 必填，bitcoin 必須省略）。","example":"TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t","in":"path","name":"contract","required":true,"schema":{"type":["string","null"]}}],"responses":{"200":{"content":{"application/json":{"example":{"data":{"blockchain":"ethereum","concentration":{"effective_holders_100usd":1818505,"effective_holders_1usd":6706993,"gini":0.998402,"hhi":0.049629,"top1000_pct":79.7241,"top100_pct":68.817,"top10_pct":50.2524},"contract":"0xdac17f958d2ee523a2206206994597c13d831ec7","decimals":6,"holder_count":15052045,"meta":{"cached":true,"cost_class":"medium","query_duration_ms":7096},"symbol":"USDT","total_supply":97065699801.98984,"total_supply_raw":"97065699801989856"},"meta":{"request_id":"1f0149cd-deb4-4884-bb1f-5085e62a4ccd"}},"schema":{"description":"統一成功回應信封。\n\n- `data`：實際的業務資料（泛型 `T`，必須可序列化）。\n- `meta`：與這次請求有關的中繼資訊（request id、分頁、credit 用量等）。","properties":{"data":{"description":"代幣持有集中度查詢的回應。","properties":{"blockchain":{"type":"string"},"concentration":{"$ref":"#/components/schemas/ConcentrationMetrics"},"contract":{"type":["string","null"]},"decimals":{"format":"int32","minimum":0,"type":"integer"},"holder_count":{"format":"int64","minimum":0,"type":"integer"},"meta":{"$ref":"#/components/schemas/QueryMeta"},"symbol":{"type":"string"},"total_supply":{"format":"double","type":["number","null"]},"total_supply_raw":{"type":["string","null"]}},"required":["blockchain","symbol","decimals","holder_count","concentration","meta"],"type":"object"},"meta":{"$ref":"#/components/schemas/Meta"}},"required":["data","meta"],"type":"object"}}},"description":"查詢成功，回傳持有集中度指標"},"400":{"description":"請求參數有誤，請檢查輸入內容"},"401":{"description":"缺少或無效的 API key"},"402":{"description":"點數餘額不足"},"429":{"description":"請求過於頻繁，請稍後重試"},"502":{"description":"後端服務暫時無法回應，請稍後重試"},"504":{"description":"查詢逾時，請稍後重試"}},"security":[{"api_key":[]}],"summary":"","tags":["代幣持有集中度"]}},"/v1/token/holders":{"get":{"operationId":"holders","parameters":[{"description":"鏈名稱（`ethereum` / `tron` / `bitcoin`）。","example":"ethereum","in":"path","name":"blockchain","required":true,"schema":{"type":"string"}},{"description":"合約地址:ETH 用 `0x` 開頭 40 字 hex;TRON 用 Base58Check (`T…`)。\nBitcoin 必須省略。","example":"0xdAC17F958D2ee523a2206206994597C13D831ec7","in":"path","name":"contract","required":true,"schema":{"type":["string","null"]}},{"description":"取前幾名（預設 10，上限 100）。","example":10,"in":"path","name":"limit","required":true,"schema":{"format":"int32","minimum":0,"type":["integer","null"]}},{"description":"偏移（預設 0）。","example":0,"in":"path","name":"offset","required":true,"schema":{"format":"int32","minimum":0,"type":["integer","null"]}}],"responses":{"200":{"content":{"application/json":{"example":{"data":{"blockchain":"ethereum","contract":"0xdac17f958d2ee523a2206206994597c13d831ec7","decimals":6,"holder_count":15052187,"holders":[{"address":"0xf977814e90da44bfa03b6295a0616a897441acec","balance":16900000000.0,"balance_raw":"16900000000000000","balance_usd":16900000000.0,"pct_of_supply":17.4109,"rank":1},{"address":"0x47ac0fb4f2d84898e4d9e7b4dab3c24507a6d503","balance":9184997799.482302,"balance_raw":"9184997799482302","balance_usd":9184997799.482302,"pct_of_supply":9.4627,"rank":2}],"meta":{"cached":false,"cost_class":"medium","limit":2,"offset":0,"query_duration_ms":7005},"symbol":"USDT","total_supply":97065699801.98984,"total_supply_raw":"97065699801989839"},"meta":{"request_id":"c00377d5-c419-4d0d-a9fa-95018c1f766f"}},"schema":{"description":"統一成功回應信封。\n\n- `data`：實際的業務資料（泛型 `T`，必須可序列化）。\n- `meta`：與這次請求有關的中繼資訊（request id、分頁、credit 用量等）。","properties":{"data":{"description":"代幣持有人查詢的回應。\n\n內層 `meta` 描述這次查詢本身（cache 狀態、耗時、成本級別）；外層信封的 `meta`\n則帶 request_id 等請求層資訊，所以你會看到兩個 `meta`：一個關於查詢、一個關於請求。\n\n`contract` 對 Bitcoin 原生幣為 null（BTC 無合約概念）。","properties":{"blockchain":{"type":"string"},"contract":{"type":["string","null"]},"decimals":{"format":"int32","minimum":0,"type":"integer"},"holder_count":{"format":"int64","minimum":0,"type":"integer"},"holders":{"items":{"$ref":"#/components/schemas/HolderEntry"},"type":"array"},"meta":{"$ref":"#/components/schemas/QueryMeta"},"symbol":{"type":"string"},"total_supply":{"description":"流通量（以 token 單位換算）；空 token 可能為 null。","format":"double","type":["number","null"]},"total_supply_raw":{"description":"流通量 raw（已乘 decimals，作為精度備援）。","type":["string","null"]}},"required":["blockchain","symbol","decimals","holder_count","holders","meta"],"type":"object"},"meta":{"$ref":"#/components/schemas/Meta"}},"required":["data","meta"],"type":"object"}}},"description":"查詢成功，回傳代幣持有量排行"},"400":{"description":"請求參數有誤（鏈別不支援或合約位址格式錯誤），請檢查輸入內容"},"401":{"description":"缺少或無效的 API key"},"402":{"description":"點數餘額不足"},"429":{"description":"請求過於頻繁，請稍後重試"},"502":{"description":"後端服務暫時無法回應，請稍後重試"},"504":{"description":"查詢逾時，資料量較大的代幣請稍後重試"}},"security":[{"api_key":[]}],"summary":"","tags":["代幣持有人排行"]}},"/v1/trace":{"post":{"operationId":"quick","requestBody":{"content":{"application/json":{"example":{"address":"TDZmNAhbGrrSzZZ8JJx1E3YhnSQ9TZQtYy","blockchain":"tron","filter_criterias":[{"max_value":700,"min_value":496,"sign":"range","symbol":"usdt"}],"track_setting":{"enable_amount_aggregation":true,"endTime":1721318399,"inbound_depth":1,"limit":5,"outbound_depth":3,"startTime":1721145600}},"schema":{"$ref":"#/components/schemas/TraceRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"example":{"data":{"result":{"address":"TDZmNAhbGrrSzZZ8JJx1E3YhnSQ9TZQtYy","blockchain":"tron","errors":[],"filter_criteria":{"max":700,"max_inclusive":true,"min":496,"min_inclusive":true,"sign":"range","symbol":"usdt","value":0,"variation":0},"filter_criterias":[{"max":700,"max_inclusive":true,"min":496,"min_inclusive":true,"sign":"range","symbol":"usdt","value":0,"variation":0}],"internal":[],"limit":5,"normal":[],"offset":17,"page":0,"path_summaries":[{"anchor_address":"TDZmNAhbGrrSzZZ8JJx1E3YhnSQ9TZQtYy","anchor_tx_hash":"21b9d56f509ff854ca15dbda7254810a33525604553c7ccf3c72eccf35bc5464","attribution_confidence":"high","edge_uids":["69a5837f94a25852193a9f0259b53428-0"],"endpoint_label":"Okx","endpoint_node":"THXN4jourpQJkdQsS3g8FgnoCgibHsrzhh","hop_count":0,"is_exchange":true,"is_service":false,"node_uids":["TDZmNAhbGrrSzZZ8JJx1E3YhnSQ9TZQtYy","THXN4jourpQJkdQsS3g8FgnoCgibHsrzhh"],"path_confidence":1,"stop_reason":"endpoint:exchange:Okx","stop_rule":"RULE-B4"},{"anchor_address":"TDZmNAhbGrrSzZZ8JJx1E3YhnSQ9TZQtYy","anchor_tx_hash":"d045f7a2d4ebdfd3f679c650c0a465fe07400b06cb4143fea36b92a63161b8cf","attribution_confidence":"high","edge_uids":["20919ada536491041a99e8193fd0e856-0"],"endpoint_label":"Okx","endpoint_node":"TTrwyjyiiYmJhjnZB7PNyLGERVVxdhDCZp","hop_count":0,"is_exchange":true,"is_service":false,"node_uids":["TDZmNAhbGrrSzZZ8JJx1E3YhnSQ9TZQtYy","TTrwyjyiiYmJhjnZB7PNyLGERVVxdhDCZp"],"path_confidence":1,"stop_reason":"endpoint:exchange:Okx","stop_rule":"RULE-B4"}],"source":"backup","token":[],"transactions":[{"amount":"315.44000000","blockchain":"tron","edge_score":0.7694133802388052,"fee":0,"from":{"address":"TYRbMsM5tjfArgjJ9YKuXd4jHijZwbqLMn","blackList":false,"blockchain":"tron","label":["Unknown"],"name":"Unknown","smartContract":false,"type":"Address"},"graph_type":"Txn","log_index":"0","rules_hit":["RULE-T1-S1","RULE-A2"],"symbol":"usdt","timestamp":1721189376,"to":{"address":"TLTXcvxJLw9HGWP8FDdp42E3GcXikbQhPS","blackList":false,"blockchain":"tron","label":["Binance"],"name":"Binance","smartContract":false,"type":"Deposit"},"tokenAddress":"","tx_hash":"a20606edbf220503ed16ad535e1a7503483fa8c789109d9b3d1d3cee33fd2673","txn_type":"token","uid":"261119e760b6ec5392731b99808e9c79-0","value":"315.44000000"},{"amount":"480.00000000","blockchain":"tron","edge_score":0.6326029437906675,"fee":0,"from":{"address":"TEa9JdwCgyRn7VUUYM2oLoD73CzYdUrxuq","blackList":false,"blockchain":"tron","label":["Unknown"],"name":"Unknown","smartContract":false,"type":"Address"},"graph_type":"Txn","log_index":"0","rules_hit":["RULE-T1-S2","RULE-A2"],"symbol":"usdt","timestamp":1721205990,"to":{"address":"TCCGqJChg2KScFPqFhBHw9h6A2dyYtkFec","blackList":false,"blockchain":"tron","label":["Unknown"],"name":"Unknown","smartContract":false,"type":"Address"},"tokenAddress":"","tx_hash":"8f63a32e166c06a9170a2c355224e089774610ab92b5d4bff01a8e651caf2b43","txn_type":"token","uid":"449af75fe7bd8e356818d675fc7bf7c6-0","value":"480.00000000"}]},"timestamp":1783332677},"meta":{"request_id":"8fa3f884-709d-442d-a33f-7255a6d8faab"}}}},"description":"追蹤成功，回傳展開的金流路徑與相關交易"},"400":{"description":"請求參數有誤，請提供 blockchain 與 address"},"401":{"description":"缺少或無效的 API key"},"502":{"description":"後端服務暫時無法回應，請稍後重試"}},"security":[{"api_key":[]}],"summary":"","tags":["多跳資金追蹤"]}},"/v1/transaction/{hash}":{"get":{"operationId":"tx_overview","parameters":[{"description":"tx hash (chain-native 格式)","example":"0x88df016429689c079f3b2f6ad39fa052532c56795b733da78a91ebe6a713944b","in":"path","name":"hash","required":true,"schema":{"type":"string"}},{"description":"`ethereum` / `tron` / `bitcoin`.","example":"ethereum","in":"path","name":"blockchain","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"example":{"data":{"data":{"_token_transfer_addresses":[],"blockchain":"ethereum","internal":[],"normal":[{"amount":"0.00429","blockchain":"ethereum","fee":0.00042816,"from":{"address":"0xa7d9ddbe1f17865597fbd27ec712455208b6b76d","chain":"ethereum"},"status":1,"symbol":"eth","timestamp":1534159090,"to":{"address":"0xf02c1c8e6114b1dbe8937a39260b5b0a374432bb","chain":"ethereum"},"tokenAddress":"","tx_hash":"0x88df016429689c079f3b2f6ad39fa052532c56795b733da78a91ebe6a713944b","txn_type":"normal","type":"normal","value":"0.00429"}],"token":[],"tx_hash":"0x88df016429689c079f3b2f6ad39fa052532c56795b733da78a91ebe6a713944b"},"msg":"","success":true},"meta":{"request_id":"bdaec07a-61a5-4456-bc91-59cd95277600"}}}},"description":"查詢成功，回傳該筆交易的完整明細"},"400":{"description":"請求參數有誤，請檢查輸入內容"},"401":{"description":"缺少或無效的 API key"},"502":{"description":"後端服務暫時無法回應，請稍後重試"}},"security":[{"api_key":[]}],"summary":"","tags":["單筆交易詳情"]}},"/v1/transactions":{"post":{"operationId":"transactions","requestBody":{"content":{"application/json":{"example":{"address":"TMuA6YqfCeX8EhbfYEg5y7S4DqzSJireY9","blockchain":"tron","limit":20,"symbols":["trx","usdt"]},"schema":{"$ref":"#/components/schemas/TransactionsRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"example":{"data":{"address":"TMuA6YqfCeX8EhbfYEg5y7S4DqzSJireY9","chain":"tron","errors":[],"is_next_page":true,"limit":2,"page":0,"reverse":false,"source":"bcs_api","transactions":[{"amount":2.0,"amount_usd":"","chain":"tron","contract_hex":"41a614f803b6fd780986a42c78ec9c7f77e6ded13c","fee":0.0,"from":{"address":"TEPSrSYPDSQ7yXpMFPq91Fb1QEWpMkRGfn","chain":"tron","is_contract":false},"is_from_contract":false,"is_to_contract":false,"log_index":"0_0","status":1,"success":true,"symbol":"41a614f803b6fd780986a42c78ec9c7f77e6ded13c","timestamp":1764517689,"to":{"address":"TMuA6YqfCeX8EhbfYEg5y7S4DqzSJireY9","chain":"tron","is_contract":false},"tokenAddress":"","tx_hash":"8b5e5f9a99d65c0b3aac7f3cbc2ee3029a0d4225054fd99830236d96d853c503","txn_token_type":"41a614f803b6fd780986a42c78ec9c7f77e6ded13c","txn_type":"token","type":"token","value":"2","value_raw":"2000000","value_usd":""},{"amount":8.333333,"amount_usd":"","chain":"tron","contract_hex":null,"fee":0.268,"from":{"address":"TDDBTQF2Xu3ALd1hZVqQmPmJ62xMUYYWf2","chain":"tron","is_contract":false},"is_from_contract":false,"is_to_contract":false,"log_index":"0_1","status":1,"success":true,"symbol":"trx","timestamp":1757632686,"to":{"address":"TMuA6YqfCeX8EhbfYEg5y7S4DqzSJireY9","chain":"tron","is_contract":false},"tokenAddress":"","tx_hash":"8a6f5e4e521bff0741b13b4accc68bd9e421e683eae2c9ce6b10903373dfb49b","txn_token_type":"normal","txn_type":"normal","type":"normal","value":"8.333333","value_raw":"8333333","value_usd":""}]},"meta":{"request_id":"c4f3b211-2d16-4585-8456-46e240b2a789"}}}},"description":"查詢成功，回傳符合條件的交易明細列表"},"400":{"description":"請求參數有誤，請檢查輸入內容"},"401":{"description":"缺少或無效的 API key"}},"security":[{"api_key":[]}],"summary":"","tags":["地址交易紀錄"]}},"/v1/wallet-overview":{"post":{"operationId":"wallet_overview","requestBody":{"content":{"application/json":{"example":{"address":"TMuA6YqfCeX8EhbfYEg5y7S4DqzSJireY9","blockchain":"tron"},"schema":{"$ref":"#/components/schemas/WalletOverviewRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"example":{"data":{"address":"TMuA6YqfCeX8EhbfYEg5y7S4DqzSJireY9","blockchain":"tron","symbols":[]},"meta":{"request_id":"f19cccc3-3470-444c-99b8-68c0ba1d01b0"}}}},"description":"查詢成功，回傳地址總覽資訊"},"400":{"description":"請求參數有誤，請檢查輸入內容"},"401":{"description":"缺少或無效的 API key"}},"security":[{"api_key":[]}],"summary":"","tags":["錢包活動總覽"]}},"/v1/webhooks":{"get":{"operationId":"list","responses":{"200":{"content":{"application/json":{"example":{"data":[],"meta":{"request_id":"ecfbb684-3037-4757-a762-29a805d5dc86"}},"schema":{"description":"統一成功回應信封。\n\n- `data`：實際的業務資料（泛型 `T`，必須可序列化）。\n- `meta`：與這次請求有關的中繼資訊（request id、分頁、credit 用量等）。","properties":{"data":{"items":{"description":"對外的訂閱視圖（不含 secret）。","properties":{"created_at":{"format":"date-time","type":"string"},"event_type":{"type":"string"},"id":{"format":"uuid","type":"string"},"status":{"type":"string"},"target_url":{"type":"string"}},"required":["id","target_url","event_type","status","created_at"],"type":"object"},"type":"array"},"meta":{"$ref":"#/components/schemas/Meta"}},"required":["data","meta"],"type":"object"}}},"description":"查詢成功，回傳目前的訂閱清單"},"401":{"description":"缺少或無效的 API key"}},"security":[{"api_key":[]}],"summary":"","tags":["Webhook 訂閱清單"]},"post":{"operationId":"create","requestBody":{"content":{"application/json":{"example":{"event_type":"large_transfer","target_url":"https://example.com/webhook-receiver"},"schema":{"$ref":"#/components/schemas/CreateWebhookRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"example":{"data":{"created_at":"2026-07-06T10:11:20.941438Z","event_type":"large_transfer","id":"fce267cb-2902-49f9-8444-2dfecf1e17b9","secret":"whsec_e24bf02555664706b56d7b0948e1fa307c4b34f85f2548e0a08de23c1fe961da","status":"active","target_url":"https://example.com/webhook-receiver"},"meta":{"request_id":"39042bac-1fb2-46cb-96c6-df41e4ede8ee"}},"schema":{"description":"統一成功回應信封。\n\n- `data`：實際的業務資料（泛型 `T`，必須可序列化）。\n- `meta`：與這次請求有關的中繼資訊（request id、分頁、credit 用量等）。","properties":{"data":{"allOf":[{"$ref":"#/components/schemas/WebhookView"},{"properties":{"secret":{"description":"用來驗證 webhook 來源的 HMAC 密鑰。","type":"string"}},"required":["secret"],"type":"object"}],"description":"建立成功時的回應（含 secret，僅此一次回傳，請客戶端妥善保存）。"},"meta":{"$ref":"#/components/schemas/Meta"}},"required":["data","meta"],"type":"object"}}},"description":"建立成功，回傳訂閱資訊與一次性簽章密鑰"},"400":{"description":"請求參數有誤，請檢查輸入內容"},"401":{"description":"缺少或無效的 API key"}},"security":[{"api_key":[]}],"summary":"","tags":["建立 Webhook 訂閱"]}},"/v1/webhooks/{id}":{"delete":{"operationId":"delete","parameters":[{"description":"訂閱 ID（建立訂閱時回傳）","example":"2ad55a3f-9d1c-4a6e-b1c6-6c9a1a2b3c4d","in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"204":{"description":"已成功刪除該訂閱"},"401":{"description":"缺少或無效的 API key"},"404":{"description":"找不到該訂閱"}},"security":[{"api_key":[]}],"summary":"","tags":["刪除 Webhook 訂閱"]}},"/v2/counterparty/list":{"get":{"operationId":"counterparty_list_v2","parameters":[{"description":"ethereum / tron / bitcoin","example":"bitcoin","in":"query","name":"blockchain","required":true,"schema":{"type":"string"}},{"description":"主地址","example":"1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa","in":"query","name":"address","required":true,"schema":{"type":"string"}},{"description":"(optional) 預設 50","example":50,"in":"query","name":"limit","required":false,"schema":{"format":"int32","minimum":0,"type":"integer"}},{"description":"(optional) 預設 0","example":0,"in":"query","name":"offset","required":false,"schema":{"format":"int32","minimum":0,"type":"integer"}}],"responses":{"200":{"content":{"application/json":{"example":{"data":{"datas":[{"address":"bc1qex0aqq8mxqfh4cpl62eg755836djjx20yzuuu8","blockchain":"bitcoin","first_activity":"2019-02-26 13:16:39","first_seen":1551158199,"last_activity":"2023-10-27 16:29:50","last_seen":1698395390,"received_amount":"0.00596261","received_count":1064,"sent_amount":"0.00000000","sent_count":0,"symbol":"all","total_amount":"0.00596261","total_count":1064,"total_transfers":1064},{"address":"bc1pce8yk5epjlqrpnnavelul54ed6663tjqv6taz3gq9cte979624uqjjrv55","blockchain":"bitcoin","first_activity":"2024-04-20 04:57:42","first_seen":1713560262,"last_activity":"2024-12-13 14:48:27","last_seen":1734072507,"received_amount":"0.00352170","received_count":645,"sent_amount":"0.00000000","sent_count":0,"symbol":"all","total_amount":"0.00352170","total_count":645,"total_transfers":645}],"pagination":{"has_more":true,"limit":2,"page":1,"total_pages":25136},"received_address_count":50271,"sent_address_count":0},"meta":{"request_id":"b2769b09-d4fa-46c1-91fe-d07fc73070ff"}}}},"description":"查詢成功，回傳交易對手清單"},"400":{"description":"請求參數有誤，請檢查輸入內容"},"401":{"description":"缺少或無效的 API key"},"502":{"description":"後端服務暫時無法回應，請稍後重試"}},"security":[{"api_key":[]}],"summary":"","tags":["快速交易對手清單"]}}},"servers":[{"description":"Production","url":"https://api.blockchainsecurity.asia"}],"tags":[{"description":"資產與價格資料：查詢平台支援的區塊鏈與資產、解析資產識別，並取得目前或歷史美元價格。不確定該用哪一支？查支援範圍用 chains；查指定鏈資產用 assets；一次同步全部資產用 registry；確認資產識別用 resolve；查價格用 rates。","name":"Assets & Market Data"},{"description":"列出平台目前支援的區塊鏈與各鏈可用資產，適合快速確認整體支援範圍。","name":"支援鏈總覽","x-parent":"Assets & Market Data"},{"description":"一次取得平台跨鏈資產的完整規格，包括合約地址、精度與驗證狀態。適合建立本地資產對照表或定期同步資產資料。","name":"完整資產清單","x-parent":"Assets & Market Data"},{"description":"查詢指定區塊鏈目前支援的資產，包括資產代碼、合約地址、精度與計價設定。適合在後續價格或鏈上資料查詢前確認正確參數。","name":"指定鏈資產清單","x-parent":"Assets & Market Data"},{"description":"將資產代碼或合約地址解析成標準資產識別，協助確認實際資產並降低同名代幣或跨鏈資產造成的誤判。","name":"資產識別解析","x-parent":"Assets & Market Data"},{"description":"查詢一個或多個資產的價格。未指定時間時取得目前價格；指定時間時取得對應的歷史價格。預設以美元計價，指定 quote 可改用法幣（如 TWD）計價。適合資產估值、帳務換算與損益計算。","name":"資產價格","x-parent":"Assets & Market Data"},{"description":"查詢指定資產在一段時間內的美元歷史價格序列。適合價格走勢分析、歷史估值、帳務回溯與策略研究。","name":"歷史價格序列","x-parent":"Assets & Market Data"},{"description":"列出目前可查詢價格的資產代碼，以及可用於計價與換算的法幣代碼，方便先確認哪些資產與\n幣別支援價格、歷史價格或金額換算查詢。","name":"可查價資產清單","x-parent":"Assets & Market Data"},{"description":"將一筆金額從某個幣別換算成另一個幣別，兩端都可以是法幣或加密資產。指定時間時使用該\n時點的歷史匯率，適合案件金額比對、帳務回溯與跨幣別對帳。回應會一併帶出換算所依據的\n匯率與其資料時間，方便留存佐證。\n\n若指定時間早於該幣別的資料涵蓋範圍，會回傳 404，而不會改用最新匯率代替。","name":"金額換算","x-parent":"Assets & Market Data"},{"description":"鏈上資料：查詢地址交易、餘額、交易對手、錢包概況，以及代幣持有分布與資金流。查交易對手時，需要排序或篩選用 v1 counterparty；只要完整清單、講求速度（尤其 Bitcoin）用 v2 counterparty/list。","name":"On-chain Data"},{"description":"查詢指定地址的交易紀錄，並可依資產、金額、時間區間與收付方向篩選。適合檢視地址的資金往來明細。","name":"地址交易紀錄","x-parent":"On-chain Data"},{"description":"列出指定地址曾往來的對手地址，並可依往來總額或交易筆數排序與篩選。適合找出主要資金往來對象。","name":"地址交易對手","x-parent":"On-chain Data"},{"description":"查詢兩個地址之間的逐筆轉帳紀錄，呈現雙方實際資金往來。適合調查特定地址之間的直接關係。","name":"兩地址轉帳紀錄","x-parent":"On-chain Data"},{"description":"彙總兩個地址之間的往來情況，包括雙向金額、交易筆數與主要資金方向。適合快速判斷雙方往來規模。","name":"兩地址往來總覽","x-parent":"On-chain Data"},{"description":"查詢指定地址持有某項資產的歷史餘額變化，回傳每日餘額序列。適合繪製持倉走勢或觀察資產增減。","name":"地址餘額歷史","x-parent":"On-chain Data"},{"description":"取得指定地址的整體概況，包括各資產餘額、收付款次數，以及首次與最近交易時間。適合快速建立地址基本輪廓。","name":"錢包活動總覽","x-parent":"On-chain Data"},{"description":"依交易 Hash 查詢單筆交易詳情，包括原生資產轉帳、代幣轉帳與合約內部轉帳。適合交易查核與明細檢視。","name":"單筆交易詳情","x-parent":"On-chain Data"},{"description":"快速取得指定地址的交易對手清單，並針對 Bitcoin 查詢提供最佳化處理。適合需要整理大量往來對象的場景。","name":"快速交易對手清單","x-parent":"On-chain Data"},{"description":"列出指定代幣持有量最高的前 N 個地址，快速查看主要持有人與籌碼分布。","name":"代幣持有人排行","x-parent":"On-chain Data"},{"description":"取得指定代幣的持有集中度指標，包括前 10、100、1000 名占比，以及 HHI、Gini 等統計值。適合判斷籌碼是否集中。","name":"代幣持有集中度","x-parent":"On-chain Data"},{"description":"查詢指定代幣在一批地址間、特定時間區間內的資金流動。回傳各地址收入、支出、淨流量與整體加總，單次最多 100 個地址。","name":"多地址資金流","x-parent":"On-chain Data"},{"description":"風險與情資：查詢地址標籤、地址類型與行為風險，協助風險篩查與盡職調查。","name":"Risk & Intelligence"},{"description":"綜合地址的情資、行為與拓樸關係評估風險：情資維度提供標籤/實體/分類，行為維度偵測快速進出、分散轉出、一次性錢包、分層歸集等模式，拓樸維度評估交易對手與圖譜暴露。回傳 0–100 綜合分數、風險等級與各維度明細。\n\n**維度覆蓋範圍**：情資維度支援所有鏈；行為與拓樸維度目前僅支援 Ethereum 與 Tron。\n查詢其他鏈（如 Bitcoin）會成功回 200，但 `dimensions.behavior` 為 null、\n`meta.behavior_available` 為 false，此時分數只反映情資維度。串接時請一律檢查\n`meta`，不要把單維度結果當成完整評估。","name":"地址風險評分","x-parent":"Risk & Intelligence"},{"description":"查詢地址已知標籤與身分類型，例如交易所、混幣器或 DeFi。回傳實體名稱、分類、信心度與驗證狀態，並提示是否需要進一步分析。\n\n查得到地址但沒有任何標籤是正常結果（`label` 只剩 `confidence: 0.0`），代表\n「目前無情資」，不代表該地址安全。需要風險判定請走 `/v1/address-risk`。","name":"地址標籤與身分","x-parent":"Risk & Intelligence"},{"description":"使用機器學習判斷一批地址可能屬於的類型，例如交易所、DeFi 或混幣器，並回傳信心分數。單次最多 100 個地址。\n\n本端點只看鏈上行為特徵做統計推測，**不查情資庫、不回風險分數**。要「這個地址是誰」請用\n`/v1/labels`；要可量化的風險結論請用 `/v1/address-risk`。\n\n結果順序與請求的 `addresses` 一致。單一地址分析失敗時該筆的 `predicted_class` 為 null、\n`error` 有值，整批仍回 200——請逐筆檢查而不是只看 HTTP 狀態碼。","name":"地址類型分類","x-parent":"Risk & Intelligence"},{"description":"調查追蹤：沿資金流向逐跳追蹤，並透過 Bitcoin 找零偵測還原更接近真實的收付關係。","name":"Investigation"},{"description":"辨識一筆 Bitcoin 交易中可能的找零地址，協助區分實際收款輸出與退回付款方的找零，還原更接近真實的資金方向。","name":"Bitcoin 找零地址偵測","x-parent":"Investigation"},{"description":"從指定地址向外或向內逐跳追蹤資金，自動展開多層流向，並可依資產與金額條件篩選。適合調查資金來源與最終去向。","name":"多跳資金追蹤","x-parent":"Investigation"},{"description":"跨鏈追蹤：追蹤資金經跨鏈橋移轉後的去向，連接來源鏈與目的鏈的交易關係。","name":"Cross-chain"},{"description":"追蹤單筆交易經跨鏈橋移轉後的去向，連接來源鏈、目的鏈，以及兩端交易與收付地址。","name":"跨鏈資金追蹤","x-parent":"Cross-chain"},{"description":"一次追蹤多筆交易的跨鏈去向，適合大量比對橋接交易或批次調查跨鏈資金流。","name":"批次跨鏈追蹤","x-parent":"Cross-chain"},{"description":"地址工具：驗證、修正與補全地址，降低因輸入錯誤造成的查詢失敗。要解析的是資產代碼或合約地址，請改用 Assets & Market Data 分類下的 resolve。","name":"Address Utilities"},{"description":"驗證錢包地址格式，並針對不完整或疑似輸入錯誤的地址提供修正結果與相似候選，降低查錯地址的風險。","name":"地址驗證與修正","x-parent":"Address Utilities"},{"description":"依輸入的地址前綴提供完整地址候選，適合搜尋框或即時輸入場景。前綴至少需 5 個字元。","name":"地址自動補全","x-parent":"Address Utilities"},{"description":"事件訂閱：建立 Webhook，讓符合條件的鏈上事件主動推送到你的系統。","name":"Events"},{"description":"列出目前已建立的 Webhook 訂閱，方便查看哪些鏈上事件正在推送到你的系統。","name":"Webhook 訂閱清單","x-parent":"Events"},{"description":"建立一筆 Webhook 訂閱，指定接收 URL 與事件類型後，符合條件的事件會主動推送到你的系統。回應中的簽章密鑰僅顯示一次，請妥善保存。","name":"建立 Webhook 訂閱","x-parent":"Events"},{"description":"刪除指定的 Webhook 訂閱。刪除後，該訂閱對應的事件將停止推送。","name":"刪除 Webhook 訂閱","x-parent":"Events"},{"description":"系統狀態：提供存活與就緒檢查，供監控與負載平衡使用。","name":"System"},{"description":"檢查服務程序是否仍可處理請求。服務存活時回傳 200，供監控系統判斷是否需要重啟。","name":"服務存活檢查","x-parent":"System"},{"description":"檢查服務是否已啟動完成且關鍵相依正常。就緒時回傳 200，供負載平衡器判斷是否可以導入流量。","name":"服務就緒檢查","x-parent":"System"}],"x-tagGroups":[{"name":"Assets & Market Data","tags":["支援鏈總覽","完整資產清單","指定鏈資產清單","資產識別解析","資產價格","歷史價格序列","可查價資產清單","金額換算"]},{"name":"On-chain Data","tags":["地址交易紀錄","地址交易對手","兩地址轉帳紀錄","兩地址往來總覽","地址餘額歷史","錢包活動總覽","單筆交易詳情","快速交易對手清單","代幣持有人排行","代幣持有集中度","多地址資金流"]},{"name":"Risk & Intelligence","tags":["地址風險評分","地址標籤與身分","地址類型分類"]},{"name":"Investigation","tags":["Bitcoin 找零地址偵測","多跳資金追蹤"]},{"name":"Cross-chain","tags":["跨鏈資金追蹤","批次跨鏈追蹤"]},{"name":"Address Utilities","tags":["地址驗證與修正","地址自動補全"]},{"name":"Events","tags":["Webhook 訂閱清單","建立 Webhook 訂閱","刪除 Webhook 訂閱"]},{"name":"System","tags":["服務存活檢查","服務就緒檢查"]}]}