For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
メインナビゲーション
Theme
概要 ChatGPT と Codex のユーザー向けドキュメント ユースケース

ローカルサービスの見積もり依頼に関するコンバージョン仕様

ローカルサービスの見積もり依頼プラグインを ChatGPT のコンバージョンフローに組み込むための連携仕様です。

ChatGPT でローカルサービスの見積もり依頼を受け付けるプラグインは現在ベータ版で、承認済みのパートナーとテストを進めています。利用を希望する場合は、ChatGPT 加盟店向けフォームからお申し込みください。

目的

ChatGPT は、見積もりを依頼するときなど、ユーザーがローカルサービスの利用を具体的に検討している場面で、パートナープラグインを直接呼び出せます。

このフローを有効にするには、自社のサービスを識別できる地域事業者データを提供し、見積もり依頼ウィジェットを開く MCP ツールを公開してください。

この仕様に準拠したプラグインを開発する場合は、ChatGPT 加盟店向けフォームから利用を申請してください。

ユーザー体験

ユーザーが対象の地域事業者を検索すると、事業者の情報カードまたはサイドバーに「見積もりを依頼」ボタンが表示されることがあります。ボタンを選択すると、プロバイダーの見積もり依頼ウィジェットが ChatGPT 内のモーダルで開きます。

ChatGPT がこのボタンを表示するのは、その事業者に対象のサービスプロバイダーがあり、そのプロバイダーのパートナープラグインが設定済みの場合に限ります。

必須の連携仕様

request_service という名前の MCP ツールを登録し、ウィジェットリソースに ui://widget/request-service.html を指定してください。ウィジェットの表示モードは modal です。ユーザーが「見積もりを依頼」を選択すると、ChatGPT はこのモードでウィジェットを開き、プロバイダー側の事業者 ID を送信します。

const launcherTool = {
  name: "request_service",
  _meta: {
    ui: {
      resourceUri: "ui://widget/request-service.html",
    },
  },
};

const launcherInput = {
  business_id: "biz_123",
};

ウィジェットが直接呼び出すすべてのヘルパーツールに _meta["openai/widgetAccessible"] = true を設定してください。このメタデータは、ウィジェットからアクセスできるヘルパーツールに適用されます。ランチャーがウィジェットを開くだけなら、この設定は不要です。

ランチャーに渡す business_id には、該当するサービスプロバイダーのレコードにある provider_business_id を指定する必要があります。この値は、プロバイダーのレコードを格納する地域事業者レコードの ID と異なる場合があります。

事業者フィードの要件

事業者フィードは、地域事業者のレコードをページ単位で ChatGPT に提供するものです。ChatGPT は、検索用に各レコードをインデックスに登録し、レコード内のサービスプロバイダー情報を使って、その事業者が「見積もりを依頼」に対応しているかどうかを判定します。

事業者レコードの必須フィールド

各事業者レコードには、次のフィールドが必要です。

  • id:フィード内で一意で、継続して同じ事業者を識別できる ID
  • name:事業者名
  • address:構造化された住所、または人が読みやすい形式に整えた住所
  • location:latitude と longitude を含むオブジェクト
  • phone_number:事業者の電話番号(E.164 形式を推奨)
  • website_url:事業者のウェブサイト
  • platform_url:自社プラットフォームに掲載している事業者ページの正規 URL

見積もり依頼アクション

見積もり依頼を受け付ける各事業者のレコードに service_providers 配列を追加し、次のフィールドを持つレコードを格納してください。

  • provider:自社のプロバイダー名。パートナープラグインに設定したプロバイダー名と一致する必要があります。
  • provider_business_id:プロバイダー側で事業者を識別するための空でない値。ChatGPT はこの値を business_id として request_service に渡します。
  • action_type:見積もり依頼の場合は request_a_quote を指定してください。
  • provider_action_url:見積もり依頼アクションに使用する有効な HTTP または HTTPS の絶対 URL
  • display_name:プロバイダーが指定する表示名(任意)

ページネーション対応の一覧取得エンドポイント

GET /v1/businesses などの一覧取得エンドポイントを公開し、次のいずれかのページネーション方式に対応してください。

  • page と page_size
  • offset と limit
  • 内部構造を公開しない next_page_token

前回の同期チェックポイントを識別するため、任意のパラメーターとして changes_token を受け付けてください。レスポンスには、フィードに変更があったかどうかを示す checksum、現在のページの事業者レコードを格納した businesses、採用したページネーション方式に対応するメタデータを含めてください。

たとえば、次のリクエストは、ページ番号方式のフィードから事業者レコードを 1 件取得します。

GET /v1/businesses?page=1&page_size=1&changes_token=sync_001

見積もり依頼アクションを含む事業者レコード全体を返してください。

{
  "checksum": true,
  "page": 1,
  "page_size": 1,
  "total_pages": 1,
  "businesses": [
    {
      "id": "local_biz_456",
      "name": "Acme Plumbing",
      "address": {
        "line1": "123 Market St",
        "locality": "San Francisco",
        "region": "CA",
        "postal_code": "94105",
        "country": "US",
        "formatted": "123 Market St, San Francisco, CA 94105, US"
      },
      "location": {
        "latitude": 37.793,
        "longitude": -122.396
      },
      "phone_number": "+14155551234",
      "website_url": "https://acmeplumbing.example",
      "platform_url": "https://provider.example/businesses/local_biz_456",
      "service_providers": [
        {
          "provider": "example_provider",
          "provider_business_id": "biz_123",
          "action_type": "request_a_quote",
          "provider_action_url": "https://provider.example/request-quote/biz_123",
          "display_name": "Get Quote"
        }
      ]
    }
  ]
}

見積もり依頼の起動条件

ChatGPT がチャット内にランチャーを生成するには、サービスプロバイダーのレコードを格納する事業者レコードの ID が空でないことが必要です。また、サービスプロバイダーのレコードには空でない provider_business_id と有効な provider_action_url が必要で、そのプロバイダーのパートナープラグインも設定済みである必要があります。見積もり依頼ボタンには、ChatGPT の UI ラベル「見積もりを依頼」が表示されます。プロバイダーが display_name を指定しても、request_a_quote アクションではこのラベルは変わりません。

今後の拡張

この連携仕様は見積もり依頼を対象としています。見積もり依頼フローでは、来店予約など、ほかのサービスアクションへの対応は不要です。