# モデルに基づくウェブ検索（OpenAI）。

**API:** Data API

**Endpoint:** `POST /v1/beta/openai-websearch/search`

**Tags:** OpenAI Web Search

OpenAI モデルとウェブ検索を使って引用付きの回答を生成します。input は文字列またはメッセージ配列で指定します。モデル、ツール、検索回数の上限はサービス側で管理されます。レスポンスは Responses オブジェクトで、output には web_search_call と URL 引用付きの message 項目が含まれます。usage はリソース消費量を報告するもので、Felo の請求ではありません。

### 料金の参考情報

- 計測方法：レスポンスコンポーネント単位で計測。
- 参考リクエスト見積もり：USD 0.3。
- 参照用の顧客乗数：1.0。確定済みの顧客金額には再適用しないでください。

参考情報のメタデータであり、アカウントへの見積もり、保証された価格、支出上限ではありません。リソースクレジットは Felo クレジットではありません。最終的な請求は Felo の請求記録に従います。

## Base URL

- `https://openapi.felo.ai`

## Authentication

- `FeloBearerAuth` (http bearer, bearer format Felo API Key)
- `FeloApiKey` (apiKey in header `X-API-Key`)

## Request body

Required: **yes**

### application/json

Schema:

```json
{
  "type": "object",
  "required": [
    "input"
  ],
  "properties": {
    "input": {
      "type": "string",
      "description": "質問または指示。OpenAI Responses API の `input` と同じ形式です。メッセージの配列も受け付けます。",
      "example": "What are the three biggest AI announcements this week? Give one sentence each with sources."
    },
    "max_output_tokens": {
      "type": "integer",
      "description": "回答で生成するトークン数の任意の上限。",
      "example": 1024
    },
    "instructions": {
      "type": "string",
      "description": "回答のトーンや形式を導くための任意の高レベル指示。"
    }
  }
}
```

Example:

```json
{
  "input": "What are the three biggest AI announcements this week? Give one sentence each with sources.",
  "max_output_tokens": 1024
}
```

## Responses

### 200 — 標準的な OpenAI Responses オブジェクトです。`output[]` には web_search_call 項目と引用付きの回答メッセージが交互に含まれ、web_search_call 項目の数が課金対象の検索回数になります。

Headers:
- `X-Request-Id` (string) — Felo サポートに問い合わせる際に伝えるリクエスト識別子。

**application/json**

Schema: object

```json
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "object": {
      "type": "string",
      "example": "response"
    },
    "status": {
      "type": "string",
      "example": "completed"
    },
    "output": {
      "type": "array",
      "description": "順序付けられた項目：web_search_call（実行された検索）と message（引用付きの回答）。",
      "items": {
        "type": "object"
      }
    },
    "usage": {
      "type": "object",
      "properties": {
        "input_tokens": {
          "type": "integer"
        },
        "output_tokens": {
          "type": "integer"
        },
        "input_tokens_details": {
          "type": "object",
          "properties": {
            "cached_tokens": {
              "type": "integer"
            }
          }
        }
      }
    }
  }
}
```

### 400 — リクエストを処理できませんでした。リクエストパラメータを確認してください。

### 401 — 有効な Felo API キーが必要です。

### 402 — 請求要件が満たされていないため、リクエストを続行できません。

### 403 — このアカウントにはこの操作を行う権限がありません。

### 429 — リクエストまたは支出の上限に達しました。

### 502 — サービスがリクエストを完了できませんでした。

### 503 — API または請求サービスが一時的に利用できません。

### 504 — リクエストの処理中にサービスがタイムアウトしました。

### default — エラーレスポンス。上流のパススルーレスポンスはプロバイダーの形式を使用する場合があります

**application/json**

Schema:

```json
{}
```
