更新情報改善

AI の回答でブランドが抜け落ちた地点がわかります

Citation Analysis
Coway が1位、対象ブランドの Blueair が2位、Levoit が3位となった Citation Analysis の結果と、Blueair の自社ページと Target の商品ページを改善する2つのアクション

Citation Analysis が、AI の回答が参照したページ、自社ブランドの位置、自社サイトから始めるアクションまで示します。

変更点

  • queries: エンジンが実行した検索と、その検索で見つかったページ。
  • sources: エンジンが取得したすべてのページ。cited で引用の有無を分け、検索の position、エンジンが引用したと示した箇所、ページが挙げたブランド、ページの管理主体を示す channel(自社サイト、他ブランド、媒体、EC サイト、レビューサイト、コミュニティ、動画、SNS、ブログサービス、百科事典)が付きます。
  • brands: 自社ブランド、競合、回答が挙げたすべてのブランドを回答に出た順に並べ、それぞれに触れた引用ページと取得ページを結びます。
  • visibility: 自社ブランドが届いた段階。回答で言及されたところから、読んだどのページにもないところまで分かれます。
  • actions: 自分で動ける順に並んだアクション。自社ページが先、投稿できるプラットフォームが次、媒体への提案が最後です。各項目に具体的な steps と根拠のページが付きます。
  • insights: 引用ページに共通する点(チャネル、形式、鮮度、比較の基準)と自社ブランドの位置を示し、根拠のページとリンクを挙げます。

POST /v1/citation-analysis のレスポンスは version: 4 とこれらの新しいフィールドを持ちます。links の形はそのままで、各インサイトには linkIds に加えて根拠のページ sourceIds が付きます。この変更より前に保存された結果は保存時の形のままです。名前が Citation Analysis になりました。/v1/source-influence と /v1/geo-audit、taskType SOURCE_INFLUENCE と GEO_AUDIT、include.sourceInfluence と include.geoAudit は引き続き使え、レスポンスでは /v1/citation-analysis、CITATION_ANALYSIS、citationAnalysis を使います。

仕組み

taskId を送ると、エンジンが検索内容と取得ページを公開している場合(ChatGPT、Google AI Overview)は回答タスクからそのまま取り込みます。queries と cited: false の citations で自分で送ることもできます。ほかのエンジンは引用ページのみを扱います。

推薦の多くは第三者のページから生まれます。私たちが調べた ChatGPT の回答では、エンジンが取得したページは中央値20件、引用は3件で、推薦されたブランドの自社サイトが取得されたのは16%、引用は6.8%でした。アクションはこの流れに沿って、自分で動けるものから並びます。

  • improve_page: 取得されたまま見送られた自社ページ、または引用されたのに回答にブランドが出てこない自社ページ。引用ページのように質問に答えるには何を加えるかを示します。
  • publish_page: 自社ページが引用されなかった検索に向けて、引用ページを手本にした新しいページの企画。ページの種類、タイトルの型、セクション、示す根拠、日付が入ります。
  • post_on_platform: 競合が載っている EC サイト、レビューサイト、コミュニティ、動画、SNS のページ。商品情報を整える、実際の顧客にレビューを依頼する、ブランドの担当者として名乗って答える、といった手順を示します。
  • pitch_publisher: 媒体だけが変更できる引用記事。媒体に何を送るかを示します。

すべての対応は、回答の内容をどのページが述べているかを示し、各アクションは根拠のページを正確に指します。not_found は、読んだページにブランドが出てこなかったことを表します。brand を送ると visibility と actions が付き、brandDomains と brandAliases を加えると自社ページと別名も数えます。

活用例

  • まず自社サイトから。エンジンが見送ったページを直すか、引用ページを手本に新しいページを企画します。
  • 競合が載っている商品ページやコミュニティの投稿を、EC とコミュニティの担当者に渡します。
  • 回答が使ったページと箇所を根拠に、媒体へ提案します。

リクエストを送る

API キーを Authorization ヘッダーに入れてリクエストを送ります。

curl -X POST https://api.querying.ai/v1/citation-analysis \
  -H "Authorization: Bearer $QUERYING_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "taskId": "…",
    "brand": "Blueair",
    "competitors": ["Coway", "Levoit"],
    "brandDomains": ["blueair.com"]
  }'

リクエストのフィールド

taskIdstring必須
完了した自分の回答タスクの ID。その回答と引用ページが answer と citations になります。
brandstring
自社ブランド名。指定すると結果に visibility と actions が加わります。
competitorsarray
回答とページで追う競合の名前。
brandDomainsarray
自社サイトのホスト名、最大10個。例: coway.com。そのページは own になります。
brandAliasesarray
ブランドの別名、最大10個。製品ラインや現地表記など。
citations[].citedboolean
既定値は true。エンジンが取得して引用しなかったページは false にし、あれば position と query も送ります。
countrystring
引用ページを読み込む国。既定値は US。
webhook.urlstring
サーバーの HTTPS アドレス。タスクが完了した瞬間に結果をここへ送ります。
idempotencyKeystring
リクエストに付ける独自の ID。1つのキーはアカウント内で1つのタスクを作るため、再送してもタスクは1つのままです。

レスポンス

完了したタスクはこの形で届きます。長さを抑えて抜粋しています。

JSON
{
  "success": true,
  "task": {
    "id": "…",
    "taskType": "CITATION_ANALYSIS",
    "status": "COMPLETED",
    "createdAt": "…"
  },
  "credits": { "creditsToCharge": "…", "creditsCharged": "…" },
  "response": {
    "version": 4,
    "answer": "The best-reviewed air purifiers depend on whether you …",
    "queries": [
      {
        "id": "q0",
        "text": "best air purifiers 2026 reviews independent testing …",
        "sourceIds": ["s0", "s1", "s2", "…", "s20"]
      }
    ],
    "sources": [
      {
        "id": "s13",
        "url": "https://www.blueair.com/products/blue-pure-211i-max",
        "domain": "blueair.com",
        "channel": "own",
        "cited": false,
        "position": 14,
        "queryIds": ["q0"],
        "publishedAt": null,
        "citedText": [],
        "brandIds": ["b0"],
        "own": true,
        "paragraphs": []
      },
      {
        "id": "s14",
        "url": "https://www.target.com/p/levoit-core-300-air-…",
        "domain": "target.com",
        "channel": "retailer",
        "cited": true,
        "position": 15,
        "queryIds": ["q0"],
        "publishedAt": null,
        "citedText": [
          "A compact, straightforward option with a 4.6/5 rating …"
        ],
        "brandIds": ["b2"],
        "own": false,
        "paragraphs": [
          {
            "id": "s14p1",
            "text": "Levoit Core 300 Air Purifier White … $99.99 …"
          }
        ]
      },
      "…"
    ],
    "brands": [
      {
        "id": "b0",
        "name": "Blueair",
        "role": "target",
        "rank": 2,
        "answerRanges": ["…"],
        "citedSourceIds": ["s1", "s3", "s11"],
        "retrievedSourceIds": ["s5", "s6", "s8", "s9", "s13"],
        "ownSourceIds": ["s11", "s13"]
      },
      {
        "id": "b1",
        "name": "Coway",
        "role": "competitor",
        "rank": 1,
        "answerRanges": ["…"],
        "citedSourceIds": ["s1", "s3", "s4", "s7"],
        "retrievedSourceIds": ["s0", "s5", "s6", "s9", "s10", "s18"],
        "ownSourceIds": []
      },
      {
        "id": "b2",
        "name": "Levoit",
        "role": "competitor",
        "rank": 3,
        "answerRanges": ["…"],
        "citedSourceIds": ["s3", "s7", "s14"],
        "retrievedSourceIds": ["s6", "s15", "s16"],
        "ownSourceIds": []
      },
      "…"
    ],
    "links": [
      {
        "id": "l40",
        "paragraphId": "s14p1",
        "answerRanges": ["…"],
        "explanation": "Lists the Levoit Core 300 at $99.99, …"
      },
      "…"
    ],
    "visibility": {
      "brandId": "b0",
      "stage": "mentioned",
      "rank": 2,
      "answerBrands": 5
    },
    "actions": [
      {
        "id": "a0",
        "type": "improve_page",
        "control": "owned",
        "priority": 1,
        "summary": "Update Blueair’s site with a current, …",
        "steps": [
          "Add a page on best air purifiers in 2026 that covers …",
          "Include Blueair models in direct comparisons using published …",
          "…"
        ],
        "sourceIds": ["s13"],
        "brandIds": ["b0"],
        "queryIds": ["q0"],
        "linkIds": []
      },
      {
        "id": "a1",
        "type": "post_on_platform",
        "control": "platform",
        "priority": 2,
        "summary": "Improve Blueair’s Target product listing with …",
        "steps": [
          "Ensure the Blueair listing clearly states the model, current …",
          "…",
          "Keep product details current and invite genuine purchasers to …"
        ],
        "sourceIds": ["s14"],
        "brandIds": ["b2"],
        "queryIds": ["q0"],
        "linkIds": ["l40"]
      },
      "…"
    ],
    "insights": [
      {
        "summary": "Blueair’s second-place position is reflected in …",
        "sourceIds": ["s1", "s3", "s11"],
        "linkIds": ["l1", "l12", "l36"]
      },
      "…"
    ]
  }
}
task.statusstring
QUEUED、PROCESSING を経て、回答付きの COMPLETED か error 付きの FAILED で終わります。
credits.creditsChargedinteger
完了したタスクに請求されたクレジット。失敗したタスクは0です。
response.versionnumber
結果の形式。検索クエリ、検索されたページ、ブランド、アクションを含む分析は 4 です。
response.answerstring
送った回答そのもの。範囲はこのテキストの UTF-16 オフセットです。
response.queriesarray
エンジンが実行した検索。それぞれ id、検索語の text、その検索で見つかった sourceIds を持ちます。
response.sourcesarray
エンジンが取得したすべてのページ。cited で引用の有無を区別し、channel はページを管理する主体を示します(own、brand、editorial、retailer、review_platform、community、video、social、blog_platform、reference)。position、queryIds、citedText、brandIds、own も付きます。引用ページには paragraphs が入ります。
response.brandsarray
自社ブランド、競合、回答が挙げたブランド。それぞれ role、回答内の rank、answerRanges、そのブランドに触れた引用ページと取得ページを持ちます。
response.linksarray
各リンクは1つの段落と、それが対応する answerRanges、1文の explanation を結びます。
response.visibilityobject
自社ブランドがどこまで届いたか。stage は mentioned、on_cited_page、on_retrieved_page、not_found のいずれかで、rank と answerBrands が付きます。brand がなければ null。
response.actionsarray
やることを priority 順に。自社サイトでの owned(improve_page、publish_page)が先、プラットフォームへの投稿 platform(post_on_platform)が次、媒体への提案 outreach(pitch_publisher)が最後です。それぞれ control、summary、1〜5個の steps と、根拠の出典、ブランド、検索クエリ、リンクが付きます。brand がなければ空です。
response.insightsarray
引用ページに共通する点と自社ブランドの位置を短く読み解いたもの。最大4件で、根拠のページを sourceIds、根拠のリンクを linkIds で示します。

結果を受け取る

リクエストすると status が QUEUED のタスクがすぐに返ります。status が COMPLETED か FAILED になるまで GET /v1/async/task/{id} で取得するか、webhook.url を指定して同じ task、credits、response をサーバーで受け取ります。結果はタスクの完了から24時間取得できます。

curl https://api.querying.ai/v1/async/task/$TASK_ID \
  -H "Authorization: Bearer $QUERYING_API_KEY"

料金

料金は変わりません。分析の開始時にクレジットを確保し、終了時に精算します。

ほかの更新

最新情報を受け取る

製品の更新をメールでお届けします。

RSS フィード