> ## Documentation Index
> Fetch the complete documentation index at: https://docs.querying.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# ChatGPT API: 回答、出典、検索クエリ

> ChatGPTに質問し、回答、引用した出典、検索クエリ、商品、続けての質問の会話を受け取ります。

`CHATGPT` はウェブ検索を有効にした ChatGPT に質問し、回答、見つけたすべての出典、実行した検索、表示した商品カードや場所カードを返します。

| | |
| - | - |
| taskType | `CHATGPT` |
| 読むフィールド | `prompt`(なければ `query`) |
| クレジット | 回答ごとに1 |
| 国 | 任意、既定は `US`。`CN` と `HK` はシンガポールの出口から、現地の端末位置で質問します。 |
| 位置情報 | `payload.location` を受け付けます。[地域と位置情報](/ja/engines/capacity.md)を参照してください。 |

## リクエスト

```bash theme={"theme":"css-variables"}
curl -X POST https://api.querying.ai/v1/async/task \
  -H "Authorization: Bearer $QUERYING_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "taskType": "CHATGPT", "payload": { "prompt": "best CRM for a small team", "country": "US" } }'
```

## レスポンス

| フィールド | 型 | 説明 |
| - | - | - |
| `text` | string | プレーンテキストの回答。 |
| `markdown` | string | Markdownの回答。写真は各カードの位置に置かれます。既定でオン。 |
| `model` | string | ChatGPTが回答に使ったモデル。 |
| `sources` | array | すべての出典: `position`、`url`、`label`、`footnote`、`datePublished`、`searchQueries`、`cited`、`citedText`。 |
| `searchQueries` | string\[] | ChatGPTが実行したウェブ検索。既定でオン。 |
| `shoppingCards`、`inlineProducts` | array | 商品カードと、回答内でリンクされた商品名。既定でオン(`include.shopping`)。 |
| `ads` | array | 回答内のスポンサー項目。既定でオン(`include.ads`)。 |
| `entities` | array | カードに出てくる場所と商品。それぞれ `local_business` や `product` などの種類 `type` と名前 `name` を持ちます。 |
| `entityDetails` | array | カードごとの詳細パネル。`include.entityDetails` のときのみ。[カードの詳細](#カードの詳細)を参照してください。 |
| `map` | array | カードに表示された場所: 住所、座標、電話番号、評価、ChatGPTがピンに使う絵文字 `icon`。`provider` は記録の取得元フィード(`serp` と `bright-feed` は Google マップ、`yelp-feed` は Yelp、`tripadvisor-feed` は Tripadvisor)で、`placeId` と `providerUrl` はそのフィードでの場所 ID とページです。`resolvedBy: "address"` は、モデルが書いた住所から ChatGPT が見つけた場所に付きます。`localName` は韓国の店舗の韓国語名など記録のもう一つの名前、`closed` は `permanently` または `temporarily` です。 |
| `citationPills` | array | 各インライン引用チップの裏にある出典。 |
| `layout` | object | ChatGPTが回答をカードで表示したときのカードのレイアウト。下記参照。 |
| `forms` | array | 回答内にある続けての質問のフォーム(ある場合)。[会話](#あとから会話を続ける)を参照してください。 |
| `conversation` | object | 回答が属する会話の `id`、`turn`、`expiresAt`。 |
| `html` | object | ChatGPTが表示した画面。`include.html` のときのみ。 |
| `rawResponse` | array | 解析済みのストリームイベント。`include.rawResponse` のときのみ。 |

一部を省略したレスポンスの例:

```json theme={"theme":"css-variables"}
{
  "text": "For a small team, HubSpot CRM and Pipedrive are the usual picks ...",
  "markdown": "For a small team, **HubSpot CRM** and **Pipedrive** are the usual picks ...",
  "model": "gpt-5-3",
  "sources": [
    {
      "position": 1,
      "url": "https://www.example.com/best-crm-small-business",
      "label": "The best CRM software for small businesses",
      "searchQueries": ["best CRM for small teams"],
      "cited": true,
      "citedText": ["HubSpot CRM and Pipedrive are the usual picks"]
    }
  ],
  "searchQueries": ["best CRM for small teams"],
  "conversation": { "id": "8f6c1d2e-...", "turn": 1, "expiresAt": "2026-10-19T12:00:00.000Z" }
}
```

各出典には `searchQueries`(この出典を結果に含めた検索)、`cited`(回答がインラインで引用したか)、`citedText`(各引用が裏付ける回答のテキスト)が付きます。商品のように検索で見つけていない出典には `searchQueries` がありません。

### カードのレイアウト

`layout` は ChatGPT が回答をカードで表示したときに返ります。`nodes` は ChatGPT の画面と同じ順に並びます。

| ノード | 内容 |
| - | - |
| `row`、`box` | カードのまとまり。 |
| `title`、`text`、`badge` | カードの文言。 |
| `image` | 写真: `images[].url`、`thumbnailUrl`、`pageUrl`。 |
| `markdown` | 回答の残りの本文。 |
| `map` | `places` に、表示する各場所の `position`。 |
| `form` | 続けての質問を選ばせるフォーム。`choice` ノードには選択肢と最初に選ばれている値が、`button` ノードには ChatGPT が次に送る質問(`prompt`)が入ります。フォームは `text` と `markdown` には含まれません。 |

## includeフラグ

`CHATGPT` はすべてのレスポンスフラグに対応します。`rawResponse` と `html` 以外は既定でオンで、オフにするには `false` を送ります。

| フラグ | 既定 | 効果 |
| - | - | - |
| `markdown` | `true` | `markdown` を追加します。 |
| `searchQueries` | `true` | `searchQueries` を追加します。 |
| `shopping` | `true` | 商品カードを追加します。 |
| `ads` | `true` | `ads` を追加します。 |
| `rawResponse` | `false` | `rawResponse` を追加します。[Markdownと生のレスポンス](/ja/engines/response-options.md)を参照してください。 |
| `html` | `false` | `html` を追加します。ページが保存された場合は0.25クレジット。`location`、`CN`、`HK`、`continueFrom` と一緒に送ると `422 EVIDENCE_UNSUPPORTED` で拒否されます。[HTMLページ](/ja/engines/html-pages.md)を参照してください。 |
| `analysis` | `false` | `analysis` を追加します。1クレジット。[回答の分析](/ja/engines/answer-analysis.md)を参照してください。 |
| `citationAnalysis` | `false` | 回答に対して[Citation Analysis](/ja/research/citation-analysis.md)を実行します。 |
| `entityDetails` | `false` | `entityDetails` を追加します。追加のクレジットはかかりません。[カードの詳細](#カードの詳細)を参照してください。 |

## カードの詳細

`include.entityDetails` を有効にすると、回答の各カード(商品、場所、アプリ、ブランド)について、読者がカードをクリックしたときにChatGPTが開く詳細パネルも受け取れます。説明、仕様、レビューとその根拠ページが含まれます。パネルは独自のページを引用するため、回答本文にない出典まで把握できます。

| フィールド | 説明 |
| - | - |
| `name`、`category`、`query` | 回答に表示されるカード名、種類(`product`、`local_business`、`software`、`organization`)、ChatGPTが検索に使った名前。 |
| `status` | `ok`、または `error` 付きの `failed`。 |
| `markdown` | パネルのMarkdown。引用チップは回答と同じ形式です。 |
| `sources` | 引用されたページを最初に引用された順に1回ずつ: `position`、`url`、`label`、`site`、`description`。 |
| `products` | 商品パネルの上部に出るショッピングカード。`title`、`price`、`merchant`、`rating`、`num_reviews`、`url`、`offers` を `shoppingCards[].products` と同じ形で返します。パネルにカードがあるときだけ入ります。 |
| `images` | パネルの写真。 |
| `complete` | ChatGPTがパネルを書き終える前に止めた場合は `false`。その時点までの本文と出典が含まれます。 |

`error` は、パネルの取得に失敗した場合は `ENTITY_DETAIL_FAILED`、パネルに本文がない場合は `ENTITY_DETAIL_EMPTY`、パネルを開くための会話情報やターンの認証情報がない場合は `ENTITY_DETAIL_UNAVAILABLE` です。`payload.location`、`CN`、`HK`、代替経路の回答、`include.html` でもカード詳細を取得できます。

ChatGPTが以前に書いたパネルは約1秒、リクエストを受けて新しく書くパネルは10〜30秒で返り、同時に4つまで開きます。回答ごとにカード20個まで開きます。パネルに追加のクレジットはかからず、続けての質問の回答もそれぞれパネルを受け取ります。

```json theme={"theme":"css-variables"}
"entityDetails": [
  {
    "name": "Brooks Adrenaline GTS 25",
    "category": "product",
    "query": "Brooks Adrenaline GTS 25",
    "status": "ok",
    "markdown": "## Brooks Adrenaline GTS 25\n\nThe **Brooks Adrenaline GTS 25** is a **stability road running shoe** ... ([Brooks Running](https://www.brooksrunning.com/...))\n\n### Key specifications\n\n| Feature | Details |\n| --- | --- |\n| Heel-to-toe drop | 10 mm |\n...",
    "sources": [
      { "position": 1, "url": "https://www.brooksrunning.com/...", "label": "Men's Adrenaline GTS 25 Running Shoes | Brooks Running", "site": "Brooks Running" },
      { "position": 2, "url": "https://www.rei.com/product/249691/...", "label": "Brooks Adrenaline GTS 25 Road-Running Shoes - Men's | REI Co-op", "site": "REI" }
    ],
    "images": ["https://images.openai.com/..."],
    "complete": true
  }
]
```

## 続けて質問する

`payload.followUps` を使うと、最初の回答のあと同じ会話で最大4回まで順に質問できます。各項目は次のどちらかです。

* `{ "prompt": "..." }`: 自分で書いた質問。
* `{ "select": { "button": 0, "choices": { "budget": "Under $100" } } }`: 前の回答にあるフォームのボタンを押します。

`button` は回答内のボタンを0から数え、既定は最初のボタンです。`choices` は各 `choice` ノードの `name` で、またはフォームの順に配列でオプションを選びます。選ぶ値はオプションの `value` か `label`、または0から数えた位置です。選ばなかった項目は ChatGPT が選択していたオプションのままなので、`{ "select": {} }` はボタン自身の `prompt` を送ります。

```json theme={"theme":"css-variables"}
{
  "taskType": "CHATGPT",
  "payload": {
    "prompt": "best CRM for a small team",
    "country": "US",
    "followUps": [{ "prompt": "Which of these has the best free plan?" }]
  }
}
```

トップレベルのフィールドは最初の回答のままです。レスポンスの `followUps` には以降の各回答が、送った質問(`prompt`)、`select` で押した内容(`selection`: ボタンの `label` と各選択肢の値)、最初の回答と同じフィールドとともに並びます。

`select` を押せなかった場合、残りの質問は送られず、`followUpsStopped` にその項目の `index`、`code`、`message` が入ります。

| コード | 意味 |
| - | - |
| `NO_FOLLOW_UP_FORM` | 前の回答にフォームがありませんでした。 |
| `BUTTON_NOT_FOUND` | その番号のボタンがありません。 |
| `CHOICE_NOT_FOUND` | その名前の選択項目がありません。 |
| `OPTION_NOT_FOUND` | 指定に一致するオプションがありません。 |
| `PROMPT_UNAVAILABLE` | ボタンに送る質問がありませんでした。 |

タスクは得られた回答とともに完了します。回答ごとに1クレジットで、タスクはすべての続けての質問の分のクレジットを保留し、返した回答の分だけを請求します。`include.analysis`、`include.citationAnalysis`、`include.html` は最初の回答に適用されます。その他のエンジンは `followUps` を `400 VALIDATION_ERROR` で拒否します。

## あとから会話を続ける

回答を読んでから次の質問を決めるには、新しい `CHATGPT` タスクの `payload.continueFrom` に完了したタスクのidを入れ、`prompt` か、そのタスクの最後の回答にあるフォームを押す `select`(ルールは `followUps` と同じ)を一緒に送ります。

```json theme={"theme":"css-variables"}
{
  "taskType": "CHATGPT",
  "payload": {
    "continueFrom": "8f6c1d2e-...",
    "select": { "button": 0 }
  }
}
```

* フォームを表示した回答には `forms` が付きます。各フォームの `buttons`(その順番が `select.button`)と、`name`、最初に選ばれていたオプション、`options` を持つ `choices` が入ります。
* `conversation.id` は会話を始めたタスク、`turn` はこれまでの回答数、`expiresAt` は続けられる最後の時刻で、最初の回答から3時間後です。
* 続きの質問は指定したタスクの最後の回答の下で送られるため、同じタスクを2回指定すると会話が分岐します。
* 元の `country` と `location` を引き継ぎます。省略するか、同じ値を送ってください。
* 別のアカウントやエンジンのタスク、完了していないタスク、無効な `select` は `400 VALIDATION_ERROR` で、期限切れの会話は `400 CONVERSATION_EXPIRED` で拒否されます。どちらも請求されません。
* 続きの質問の料金は通常の ChatGPT タスクと同じです。

## 関連ページ

* [ChatGPT製品ページ](https://querying.ai/ja/engines/chatgpt)
* [エンジンの概要](/ja/engines/overview.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.