確認
CertiWattWh
ja
B2B コンプライアンス API

旅行プラットフォーム向けバッテリーコンプライアンス API。

CertiWatt はブログ記事ではなく、機械可読の旅行判定を返します: ルート対応のバッテリー判定、正確なモデル解決、有効リコール情報、シリアル確認、出典引用、ルールバージョン、明示的な制約。

セルフサービスのテスト経路

公開 verifier エンドポイントはアカウントなしでテストできます。Partner key は上限、許可 origin、サポート条件だけを変更し、判定契約は変更しません。

curl -s https://certiwatt.app/api/verify \
  -H 'content-type: application/json' \
  -d '{
    "model_id": "anker-737",
    "ccc_mark": "present",
    "trip": {
      "origin": "CN",
      "destination": "CN",
      "airline": "CA",
      "compartment_intent": "carry_on"
    },
    "options": { "language": "en" }
  }'
エンドポイント
POST /api/verify
Auth
匿名呼び出しを受け付けます。Partner traffic は発行済みの x-certiwatt-key または Authorization: Bearer を使います。
Rate limit
公開 traffic は rate limit され、429 と Retry-After を返します。Partner limit は key と一緒に発行されます。
Contract
OpenAPI contract: /openapi.yaml
判定レスポンス形
{
  "verdict": "conditional",
  "verdict_id": "vdt_01JZ8EXAMPLETRIP00000001",
  "ruleset_version": "2026-05-15",
  "generated_at": "2026-06-06T08:40:12.000Z",
  "expires_at": "2026-06-13T08:40:12.000Z",
  "summary": "Carry-on only. Airline approval may be required.",
  "device_resolved": {
    "model_id": "anker-737",
    "brand": "Anker",
    "model_name": "737 Power Bank",
    "watt_hour": 86.4,
    "recall_status": "not_affected",
    "recall_check_method": "model_match"
  },
  "constraints": [
    { "code": "carry_on_only", "message": "Carry-on only — never in checked baggage." },
    { "code": "max_units_2", "message": "Maximum 2 power banks per passenger." }
  ],
  "warnings": [
    { "code": "airline_approval_review", "severity": "advisory", "message": "Confirm airline handling before departure." }
  ],
  "citations": [
    { "kind": "regulator", "authority": "CAAC", "jurisdiction": "CN", "url": "https://...", "pulled_at": "2026-05-29" },
    { "kind": "airline", "authority": "Singapore Airlines", "jurisdiction": "SG", "url": "https://...", "pulled_at": "2026-05-29" }
  ],
  "verdict_path": ["iata_spare_lithium_battery", "cn_3c_screening", "sq_power_bank_policy"]
}
Trip Battery Pass API

製品フローで単一路線ではなく旅程全体の判定が必要な場合は POST /api/trips/verify を使います。CertiWatt は origin、transit、destination をセグメント別 verdict に展開し、埋め込みワークフロー向けの aggregate verdict を返します。

POST /api/trips/verify

{
  "device": { "model_id": "anker-737" },
  "trip": {
    "origin": "CN",
    "transit": ["SG"],
    "destination": "US",
    "airline": "SQ",
    "compartment_intent": "carry_on"
  },
  "options": { "language": "en" }
}

{
  "public_name": "Trip Battery Pass",
  "trip_verdict_id": "trip_lx5t9d3a_q8z1r2p4",
  "verdict": "conditional",
  "summary": "Trip requires conditions or approval on at least one of 2 segments.",
  "segments": [
    {
      "index": 1,
      "origin": "CN",
      "destination": "SG",
      "airline": "SQ",
      "verdict": { "verdict": "conditional", "ruleset_version": "2026-05-15", "verdict_id": "vdt_..." }
    },
    {
      "index": 2,
      "origin": "SG",
      "destination": "US",
      "airline": "SQ",
      "verdict": { "verdict": "allowed", "ruleset_version": "2026-05-15", "verdict_id": "vdt_..." }
    }
  ],
  "device_resolved": { "model_id": "anker-737", "watt_hour": 86.4 },
  "citation_count": 4,
  "ruleset_version": "2026-05-15",
  "generated_at": "2026-06-06T08:40:12.000Z",
  "expires_at": "2026-06-13T08:40:12.000Z"
}

ワークフロー、route corridor、航空会社グループ、想定月間リクエスト数を送ると、CertiWatt がパイロットのレスポンス形と運用サポート範囲を設計できます。

Trip API パイロットを申請

Pilot CTA クリックは匿名の運用シグナルとしてのみ記録されます。CertiWatt は事前入力メール本文を受け取ったり保存したりしません。 プライバシー詳細.

主要フィールド
verdict
allowed、conditional、banned、insufficient のいずれか。
verdict_id
サポートとパートナーログ用の安定した監査ハンドル。
ruleset_version
回答に使われたルールコーパス。公開 API は現在の ruleset_version のみを受け付け、未対応の pin は 400 を返します。
citations
規制当局、航空会社、メーカー、リコール根拠への出典リンク。
conditions
持ち込み、承認、数量、ラベル、認証、リコール制約。
Operational commitments for partners

Public answers can summarize policy. Platform integrations need freshness, request preservation, source-change visibility, and reviewable evidence for support and operations.

Freshness window
Verdicts carry generated_at and expires_at; source monitoring keeps regulator, airline, manufacturer, and recall evidence reviewable.
Audit trail
パートナーは verdict_id、request payload、ruleset_version、citations を保存し、サポートレビューと audit export に使用できます。未対応の historical ruleset pin は明示的な 400 を返します。
Change intelligence
Partner policy-change access exposes change history, source-watch rows, fingerprints, and review queue signals.
Serial responsibility
Pattern-backed recalls resolve locally; manufacturer-list recalls return external_list_required and an official lookup URL instead of guessed clearance.
Pilot scope
レスポンス目標、サポート時間帯、許可 origin、rate limit、escalation path はパートナーパイロット範囲で定めます。
Partner integration guardrails

The public API surface is useful for discovery and testing. Partner traffic uses an agreed pilot scope, credential setup, and failure-mode review.

Partner auth
Partner traffic uses issued partner API keys; anonymous public calls do not carry pilot support terms.
Allowed origins
Allowed origins, rate limits, Retry-After behavior, production response targets, and support windows are agreement terms.
Failure modes
conditional, banned, insufficient, MODEL_NOT_FOUND, AIRLINE_NOT_COVERED, external_list_required, 429, 5xx, and stale expires_at cannot be converted into allowed.
Ruleset pins
The public API accepts the current ruleset_version only; historical replay requires the stored request payload and a controlled audit export.
Data boundary
No PII is required by default. Use serial_hash unless signed data-flow terms permit raw serial transit.
アクセス経路

公開検証 API

現在の Web 検証器は /api/verify を呼びます。モデル別リコールデータは /api/devices/[modelId]/recalls と /api/recalls から利用できます。航空会社ポリシー endpoints は匿名では公開 preview fields のみを返し、完全な policy fields、ルールロジック、引用、変更履歴には partner または authenticated access が必要です。

MCP パッケージ

エージェントは公開 MCP パッケージをローカル stdio で実行し、ライブ CertiWatt API を呼び出せます。

MCP パッケージ

埋め込みとパイロット

ホスト型ウィジェットやパイロット連携はパートナーページから開始してください。

埋め込みとパイロット
API リファレンス

これらの公開エンドポイントは OpenAPI 契約で保護されており、エージェントは /developers、/mcp、llms.txt、AEO manifest から発見できます。

POST /api/verify
旅程別バッテリー判定を返します。引用、ルート要因、リコール根拠、航空会社ポリシー文脈、ruleset_version、verdict_id を含みます。Transit stop があるリクエストは POST /api/trips/verify を使用してください。
GET /api/devices
対象モバイルバッテリーモデルを検索します。カタログ発見向けに q、limit、recent をサポートします。
GET /api/devices/[modelId]
標準モデル情報を返します。任意の serial は、適用可能な場合にモデルレベルのリコール serial_evaluation を追加します。
GET /api/devices/[modelId]/recalls
正確なモデルの Battery Recall Intelligence を返し、任意のシリアル評価をサポートします。
GET /api/recalls
モデル別リコール記録を一覧します。model_id、status、serial をサポートします。
GET /api/airlines
Airline Policy Intelligence 記録を一覧します。q、confidence、limit をサポートします。
GET /api/airlines/[code]
匿名リクエストは公開 preview を返し、partner/authenticated リクエストは有効ルール、引用、policy_fields、change_log を返します。
GET /api/policy-changes
匿名リクエストは変更/監視 count を返し、partner/authenticated リクエストは変更履歴、source-watch rows、fingerprints、review queue signals を返します。
GET /api/rules
有効な規制当局および航空会社ルールを検索します。
GET /api/sources
モデルまたはルールの正規化済み引用根拠を返します。
リコールシリアル API

旅行者またはエージェントがシリアル / バッチ根拠を持っている場合は、任意の serial クエリパラメータを使います。パターン対応リコールはローカルで判定し、メーカーリスト型リコールは推測せず external_list_required を返します。

GET /api/recalls
Model-specific recall records を一覧します。model_id、status、serial をサポートし、public_name、recalls[]、ruleset_version を返します。
GET /api/devices/[modelId]/recalls
正確な catalog model 1 件を取得します。model metadata、recall_policy、recalls[]、ruleset_version を返します。
serial_evaluation.match_status
affected、not_affected、unknown のいずれかです。Unknown は travel risk を clear しません。
serial_evaluation.match_method
pattern は local regex match、external_list_required は manufacturer-list recalls、none は local evidence なしです。
affected_serials.explicit_list_url
External serial/order-list verification が必要な recalls の official manufacturer lookup URL です。
recall_policy
Recall impact は exact-model-only で、brand-level inference はありません。Same-brand devices は recall status を継承しません。
GET /api/recalls?model_id=iniu-bi-b41&serial=000G21

{
  "public_name": "Battery Recall Intelligence",
  "recalls": [
    {
      "recall_id": "iniu.2025-12.BI-B41-affected",
      "model_id": "iniu-bi-b41",
      "affected_serials": {
        "pattern": "^(000G21|000H21|000I21|000L21)$",
        "explicit_list_url": "https://iniushop.com/pages/recall-b41"
      },
      "verdict_impact": {
        "applies_to": "exact_model_only",
        "if_affected_serial": "banned",
        "if_serial_unknown": "warning",
        "if_not_affected_serial": "normal_rules_apply"
      },
      "serial_evaluation": {
        "provided_serial": "000G21",
        "match_status": "affected",
        "match_method": "pattern",
        "verdict_if_used_for_flight": "banned"
      }
    }
  ]
}
公開データプレビュー

透明性と機械発見のため、CertiWatt は限定的な静的 JSON プレビューだけを公開します。完全な航空会社ポリシー項目、ルールロジック、変更履歴、パートナー向け export は製品/API 面に残します。

{
  "long_tail_verdicts": [
    {
      "route_factors": [
        "capacity check is tied to this exact catalog model",
        "Citation sources: CAAC (regulator, CN, 2026-05-29)"
      ],
      "article_body": "Summary plus route factors. Citation sources: CAAC (regulator, CN, 2026-05-29).",
      "ruleset_version": "2026-05-15",
      "citation_count": 3,
      "sources": [
        { "authority": "CAAC", "url": "https://...", "pulled_at": "2026-05-29" }
      ]
    }
  ]
}
エージェント発見

回答エンジンとエージェントは AEO manifest から、CertiWatt の 2026 質問ガイド、ブランドハブ、ロングテール判定ページ、データセットを読み取れます。トップレベルには manifest_version、content_hash、ruleset_version、cache_policy、counts が含まれ、レスポンスは同じ hash の X-CertiWatt-Content-Hash と quoted ETag も公開します。manifest レスポンスは rel="describedby" で schema をリンクし、schema レスポンスも X-CertiWatt-Schema-Hash と quoted schema ETag を公開します。各質問ガイド entry には localized_urls、short_answer、source_count、絶対 citation URL 付きの sources が含まれ、エージェントはユーザー言語に合う URL を引用できます。各ブランド hub entry にはブランドレベル catalog discovery のための model counts と representative_models が含まれます。各 long_tail_verdicts entry には verdict、summary、route_factors、article_body、ruleset_version、citation_count、sources が含まれます。Verifier API は現在の ruleset_version のみを受け付けます。未対応の historical pin は silent fallback ではなく 400 を返します。データセット entry は Battery Recall Intelligence と Airline Policy Intelligence discovery を公開し、policy_changes_api_url、集計 source-monitoring counts、public-preview と partner-detail API の境界を含みます。プログラム型判定ページも Article JSON-LD articleBody で判定 summary、route-specific signals、citation source metadata(authority、kind、jurisdiction、URL、citation_kind、citation_jurisdiction、pulled_at) を公開します。Manifest はエージェントが直接消費しやすいよう制限されています。/aeo-manifest.json は 512KB 未満、schema は 64KB 未満、各 long-tail article_body は 1600 文字未満です。

境界

API 出力は出典付きの情報提供判定です。法律助言、公式認証、空港・航空会社・保安担当者による受け入れ保証として表示してはなりません。