88API88API
使用ガイドAPIリファレンスAIアプリケーションヘルプとサポート
チャット(Chat)

OpenAI 応答フォーマット(Responses)

公式ドキュメント

📝 概要

OpenAIの最先端のモデル応答インターフェースです。テキストと画像入力、およびテキスト出力をサポートします。以前の応答の出力を入力として使用し、モデルとのステートフルな対話を作成します。ファイル検索、ウェブ検索、コンピューター使用などの組み込みツールを通じてモデルの機能を拡張します。関数呼び出しを使用することで、モデルが外部システムやデータにアクセスできるようにします。

関連ガイドについては、OpenAI公式サイトを参照してください:Responses

💡 リクエスト例

基本的なテキスト応答 ✅

curl https://88api.ai/v1/responses \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $API_KEY" \
  -d '{
    "model": "gpt-4.1",
    "input": "讲一个三句话的关于独角兽的睡前故事。"
  }'

応答例:

{
  "id": "resp_67ccd2bed1ec8190b14f964abc0542670bb6a6b452d3795b",
  "object": "response",
  "created_at": 1741476542,
  "status": "completed",
  "error": null,
  "incomplete_details": null,
  "instructions": null,
  "max_output_tokens": null,
  "model": "gpt-4.1",
  "output": [
    {
      "type": "message",
      "id": "msg_67ccd2bf17f0819081ff3bb2cf6508e60bb6a6b452d3795b",
      "status": "completed",
      "role": "assistant",
      "content": [
        {
          "type": "output_text",
          "text": "在一个宁静的月夜下,一只名叫璐米娜的独角兽发现了一个倒映着星星的隐藏水池。当她将独角浸入水中时,水池开始闪烁,显现出通往一个有着无尽夜空的魔法世界的路径。充满好奇,璐米娜为所有做梦的人许下愿望,希望他们能找到自己的隐藏魔法,当她回头望去,她的蹄印像星尘一样闪烁。",
          "annotations": []
        }
      ]
    }
  ],
  "parallel_tool_calls": true,
  "previous_response_id": null,
  "reasoning": {
    "effort": null,
    "summary": null
  },
  "store": true,
  "temperature": 1.0,
  "text": {
    "format": {
      "type": "text"
    }
  },
  "tool_choice": "auto",
  "tools": [],
  "top_p": 1.0,
  "truncation": "disabled",
  "usage": {
    "input_tokens": 36,
    "input_tokens_details": {
      "cached_tokens": 0
    },
    "output_tokens": 87,
    "output_tokens_details": {
      "reasoning_tokens": 0
    },
    "total_tokens": 123
  },
  "user": null,
  "metadata": {}
}

画像分析応答 ✅

curl https://88api.ai/v1/responses \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $API_KEY" \
  -d '{
    "model": "gpt-4.1",
    "input": [
      {
        "role": "user",
        "content": [
          {"type": "input_text", "text": "描述这张图片中的内容"},
          {
            "type": "input_image",
            "image_url": "https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Gfp-wisconsin-madison-the-nature-boardwalk.jpg/2560px-Gfp-wisconsin-madison-the-nature-boardwalk.jpg"
          }
        ]
      }
    ]
  }'

応答例:

{
  "id": "resp_67ccd3a9da748190baa7f1570fe91ac604becb25c45c1d41",
  "object": "response",
  "created_at": 1741476777,
  "status": "completed",
  "error": null,
  "incomplete_details": null,
  "instructions": null,
  "max_output_tokens": null,
  "model": "gpt-4.1",
  "output": [
    {
      "type": "message",
      "id": "msg_67ccd3acc8d48190a77525dc6de64b4104becb25c45c1d41",
      "status": "completed",
      "role": "assistant",
      "content": [
        {
          "type": "output_text",
          "text": "这张图片展示了一条木制栈道或小径穿过茂密的绿色草地,上方是点缀着几朵云的蓝天。场景呈现出一个宁静的自然区域,可能是公园或自然保护区。背景中有树木和灌木丛。整个景观展现出和谐的自然环境,栈道为游客提供了一条穿过湿地或草原而不影响周围生态系统的路径。",
          "annotations": []
        }
      ]
    }
  ],
  "parallel_tool_calls": true,
  "previous_response_id": null,
  "reasoning": {
    "effort": null,
    "summary": null
  },
  "store": true,
  "temperature": 1.0,
  "text": {
    "format": {
      "type": "text"
    }
  },
  "tool_choice": "auto",
  "tools": [],
  "top_p": 1.0,
  "truncation": "disabled",
  "usage": {
    "input_tokens": 328,
    "input_tokens_details": {
      "cached_tokens": 0
    },
    "output_tokens": 52,
    "output_tokens_details": {
      "reasoning_tokens": 0
    },
    "total_tokens": 380
  },
  "user": null,
  "metadata": {}
}

ウェブ検索ツール ✅

curl https://88api.ai/v1/responses \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $API_KEY" \
  -d '{
    "model": "gpt-4.1",
    "tools": [{ "type": "web_search_preview" }],
    "input": "今天有什么积极正面的新闻?"
  }'

応答例:

{
  "id": "resp_67ccf18ef5fc8190b16dbee19bc54e5f087bb177ab789d5c",
  "object": "response",
  "created_at": 1741484430,
  "status": "completed",
  "error": null,
  "incomplete_details": null,
  "instructions": null,
  "max_output_tokens": null,
  "model": "gpt-4.1",
  "output": [
    {
      "type": "web_search_call",
      "id": "ws_67ccf18f64008190a39b619f4c8455ef087bb177ab789d5c",
      "status": "completed"
    },
    {
      "type": "message",
      "id": "msg_67ccf190ca3881909d433c50b1f6357e087bb177ab789d5c",
      "status": "completed",
      "role": "assistant",
      "content": [
        {
          "type": "output_text",
          "text": "截至今天,2025年3月9日,一则值得关注的积极新闻是中国科学家在可再生能源领域取得重大突破,成功研发出一种新型高效太阳能电池,转化率达到了创纪录的35%,这可能会极大推动清洁能源的普及和应用。这项技术预计将使太阳能发电成本降低约40%,为全球减少碳排放提供了新的解决方案。",
          "annotations": [
            {
              "type": "url_citation",
              "start_index": 42,
              "end_index": 100,
              "url": "https://example.com/renewable-energy-breakthrough/?utm_source=chatgpt.com",
              "title": "中国科学家在可再生能源领域取得重大突破"
            },
            {
              "type": "url_citation",
              "start_index": 101,
              "end_index": 150,
              "url": "https://example.com/solar-cell-efficiency-record/?utm_source=chatgpt.com",
              "title": "新型高效太阳能电池转化率创纪录"
            },
            {
              "type": "url_citation",
              "start_index": 151,
              "end_index": 200,
              "url": "https://example.com/clean-energy-cost-reduction/?utm_source=chatgpt.com",
              "title": "太阳能发电成本有望降低40%"
            }
          ]
        }
      ]
    }
  ],
  "parallel_tool_calls": true,
  "previous_response_id": null,
  "reasoning": {
    "effort": null,
    "summary": null
  },
  "store": true,
  "temperature": 1.0,
  "text": {
    "format": {
      "type": "text"
    }
  },
  "tool_choice": "auto",
  "tools": [
    {
      "type": "web_search_preview",
      "domains": [],
      "search_context_size": "medium",
      "user_location": {
        "type": "approximate",
        "city": null,
        "country": "US",
        "region": null,
        "timezone": null
      }
    }
  ],
  "top_p": 1.0,
  "truncation": "disabled",
  "usage": {
    "input_tokens": 328,
    "input_tokens_details": {
      "cached_tokens": 0
    },
    "output_tokens": 356,
    "output_tokens_details": {
      "reasoning_tokens": 0
    },
    "total_tokens": 684
  },
  "user": null,
  "metadata": {}
}

ファイル検索ツール ✅

curl https://88api.ai/v1/responses \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $API_KEY" \
  -d '{
    "model": "gpt-4.1",
    "tools": [{
      "type": "file_search",
      "vector_store_ids": ["vs_1234567890"],
      "max_num_results": 20
    }],
    "input": "古代棕龙有哪些特性和属性?"
  }'

応答例:

{
  "id": "resp_67ccf4c55fc48190b71bd0463ad3306d09504fb6872380d7",
  "object": "response",
  "created_at": 1741485253,
  "status": "completed",
  "error": null,
  "incomplete_details": null,
  "instructions": null,
  "max_output_tokens": null,
  "model": "gpt-4.1",
  "output": [
    {
      "type": "file_search_call",
      "id": "fs_67ccf4c63cd08190887ef6464ba5681609504fb6872380d7",
      "status": "completed",
      "queries": ["古代棕龙的特性和属性"],
      "results": null
    },
    {
      "type": "message",
      "id": "msg_67ccf4c93e5c81909d595b369351a9d309504fb6872380d7",
      "status": "completed",
      "role": "assistant",
      "content": [
        {
          "type": "output_text",
          "text": "根据资料,古代棕龙具有以下特性和属性:\n\n1. 物理特征:古代棕龙体型庞大,体长可达25-30米,翼展约35米。它们的鳞片呈深棕色至铜色,随着年龄增长会变得更加暗沉。头部有特征性的双角和脊刺,下颚强壮,适合撕裂猎物。\n\n2. 能力:它们能喷吐强力的酸液,对目标造成严重腐蚀伤害。古代棕龙还拥有出色的掘地能力,常在沙漠或山地挖掘复杂的巢穴系统。\n\n3. 智力:被认为是龙族中最为狡猾和有耐心的品种,智力极高,精通多种语言,并具有复杂的战术思维。\n\n4. 栖息地:主要栖息在干旱的山地和沙漠地区,喜欢炎热干燥的环境。\n\n5. 宝藏:古代棕龙以其庞大的宝藏闻名,特别喜爱收集铜币、红宝石和火焰魔法物品。\n\n6. 寿命:是所有龙种中寿命最长的之一,可活2000-2500年,随着年龄增长其力量和魔法能力也会增强。\n\n7. 性格:极度领地意识强,性格暴躁易怒,对侵入者毫不留情,但也以其罕见的耐心著称,能为复仇等待几个世纪。",
          "annotations": [
            {
              "type": "file_citation",
              "index": 80,
              "file_id": "file-4wDz5b167pAf72nx1h9eiN",
              "filename": "dragons.pdf"
            },
            {
              "type": "file_citation",
              "index": 233,
              "file_id": "file-4wDz5b167pAf72nx1h9eiN",
              "filename": "dragons.pdf"
            },
            {
              "type": "file_citation",
              "index": 345,
              "file_id": "file-4wDz5b167pAf72nx1h9eiN",
              "filename": "dragons.pdf"
            },
            {
              "type": "file_citation",
              "index": 420,
              "file_id": "file-4wDz5b167pAf72nx1h9eiN",
              "filename": "dragons.pdf"
            },
            {
              "type": "file_citation",
              "index": 520,
              "file_id": "file-4wDz5b167pAf72nx1h9eiN",
              "filename": "dragons.pdf"
            },
            {
              "type": "file_citation",
              "index": 580,
              "file_id": "file-4wDz5b167pAf72nx1h9eiN",
              "filename": "dragons.pdf"
            },
            {
              "type": "file_citation",
              "index": 655,
              "file_id": "file-4wDz5b167pAf72nx1h9eiN",
              "filename": "dragons.pdf"
            },
            {
              "type": "file_citation",
              "index": 781,
              "file_id": "file-4wDz5b167pAf72nx1h9eiN",
              "filename": "dragons.pdf"
            }
          ]
        }
      ]
    }
  ],
  "parallel_tool_calls": true,
  "previous_response_id": null,
  "reasoning": {
    "effort": null,
    "summary": null
  },
  "store": true,
  "temperature": 1.0,
  "text": {
    "format": {
      "type": "text"
    }
  },
  "tool_choice": "auto",
  "tools": [
    {
      "type": "file_search",
      "filters": null,
      "max_num_results": 20,
      "ranking_options": {
        "ranker": "auto",
        "score_threshold": 0.0
      },
      "vector_store_ids": ["vs_1234567890"]
    }
  ],
  "top_p": 1.0,
  "truncation": "disabled",
  "usage": {
    "input_tokens": 18307,
    "input_tokens_details": {
      "cached_tokens": 0
    },
    "output_tokens": 348,
    "output_tokens_details": {
      "reasoning_tokens": 0
    },
    "total_tokens": 18655
  },
  "user": null,
  "metadata": {}
}

ストリーミング応答 ✅

curl https://88api.ai/v1/responses \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $API_KEY" \
  -d '{
    "model": "gpt-4.1",
    "instructions": "你是一个有帮助的助手。",
    "input": "你好!",
    "stream": true
  }'

ストリーミング応答例:

event: response.created
data: {"type":"response.created","response":{"id":"resp_67c9fdcecf488190bdd9a0409de3a1ec07b8b0ad4e5eb654","object":"response","created_at":1741290958,"status":"in_progress","error":null,"incomplete_details":null,"instructions":"你是一个有帮助的助手。","max_output_tokens":null,"model":"gpt-4.1-2025-04-14","output":[],"parallel_tool_calls":true,"previous_response_id":null,"reasoning":{"effort":null,"summary":null},"store":true,"temperature":1.0,"text":{"format":{"type":"text"}},"tool_choice":"auto","tools":[],"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}}}

event: response.in_progress
data: {"type":"response.in_progress","response":{"id":"resp_67c9fdcecf488190bdd9a0409de3a1ec07b8b0ad4e5eb654","object":"response","created_at":1741290958,"status":"in_progress","error":null,"incomplete_details":null,"instructions":"你是一个有帮助的助手。","max_output_tokens":null,"model":"gpt-4.1-2025-04-14","output":[],"parallel_tool_calls":true,"previous_response_id":null,"reasoning":{"effort":null,"summary":null},"store":true,"temperature":1.0,"text":{"format":{"type":"text"}},"tool_choice":"auto","tools":[],"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}}}

event: response.output_item.added
data: {"type":"response.output_item.added","output_index":0,"item":{"id":"msg_67c9fdcf37fc8190ba82116e33fb28c507b8b0ad4e5eb654","type":"message","status":"in_progress","role":"assistant","content":[]}}

event: response.content_part.added
data: {"type":"response.content_part.added","item_id":"msg_67c9fdcf37fc8190ba82116e33fb28c507b8b0ad4e5eb654","output_index":0,"content_index":0,"part":{"type":"output_text","text":"","annotations":[]}}

event: response.output_text.delta
data: {"type":"response.output_text.delta","item_id":"msg_67c9fdcf37fc8190ba82116e33fb28c507b8b0ad4e5eb654","output_index":0,"content_index":0,"delta":"你好"}

event: response.output_text.delta
data: {"type":"response.output_text.delta","item_id":"msg_67c9fdcf37fc8190ba82116e33fb28c507b8b0ad4e5eb654","output_index":0,"content_index":0,"delta":"!"}

event: response.output_text.delta
data: {"type":"response.output_text.delta","item_id":"msg_67c9fdcf37fc8190ba82116e33fb28c507b8b0ad4e5eb654","output_index":0,"content_index":0,"delta":" 我"}

event: response.output_text.delta
data: {"type":"response.output_text.delta","item_id":"msg_67c9fdcf37fc8190ba82116e33fb28c507b8b0ad4e5eb654","output_index":0,"content_index":0,"delta":"能"}

event: response.output_text.delta
data: {"type":"response.output_text.delta","item_id":"msg_67c9fdcf37fc8190ba82116e33fb28c507b8b0ad4e5eb654","output_index":0,"content_index":0,"delta":"为"}

event: response.output_text.delta
data: {"type":"response.output_text.delta","item_id":"msg_67c9fdcf37fc8190ba82116e33fb28c507b8b0ad4e5eb654","output_index":0,"content_index":0,"delta":"您"}

event: response.output_text.delta
data: {"type":"response.output_text.delta","item_id":"msg_67c9fdcf37fc8190ba82116e33fb28c507b8b0ad4e5eb654","output_index":0,"content_index":0,"delta":"提供"}

event: response.output_text.delta
data: {"type":"response.output_text.delta","item_id":"msg_67c9fdcf37fc8190ba82116e33fb28c507b8b0ad4e5eb654","output_index":0,"content_index":0,"delta":"什么"}

event: response.output_text.delta
data: {"type":"response.output_text.delta","item_id":"msg_67c9fdcf37fc8190ba82116e33fb28c507b8b0ad4e5eb654","output_index":0,"content_index":0,"delta":"帮助"}

event: response.output_text.delta
data: {"type":"response.output_text.delta","item_id":"msg_67c9fdcf37fc8190ba82116e33fb28c507b8b0ad4e5eb654","output_index":0,"content_index":0,"delta":"吗"}

event: response.output_text.delta
data: {"type":"response.output_text.delta","item_id":"msg_67c9fdcf37fc8190ba82116e33fb28c507b8b0ad4e5eb654","output_index":0,"content_index":0,"delta":"?"}

event: response.output_text.done
data: {"type":"response.output_text.done","item_id":"msg_67c9fdcf37fc8190ba82116e33fb28c507b8b0ad4e5eb654","output_index":0,"content_index":0,"text":"你好! 我能为您提供什么帮助吗?"}

event: response.content_part.done
data: {"type":"response.content_part.done","item_id":"msg_67c9fdcf37fc8190ba82116e33fb28c507b8b0ad4e5eb654","output_index":0,"content_index":0,"part":{"type":"output_text","text":"你好! 我能为您提供什么帮助吗?","annotations":[]}}

event: response.output_item.done
data: {"type":"response.output_item.done","output_index":0,"item":{"id":"msg_67c9fdcf37fc8190ba82116e33fb28c507b8b0ad4e5eb654","type":"message","status":"completed","role":"assistant","content":[{"type":"output_text","text":"你好! 我能为您提供什么帮助吗?","annotations":[]}]}}

event: response.completed
data: {"type":"response.completed","response":{"id":"resp_67c9fdcecf488190bdd9a0409de3a1ec07b8b0ad4e5eb654","object":"response","created_at":1741290958,"status":"completed","error":null,"incomplete_details":null,"instructions":"你是一个有帮助的助手。","max_output_tokens":null,"model":"gpt-4.1-2025-04-14","output":[{"id":"msg_67c9fdcf37fc8190ba82116e33fb28c507b8b0ad4e5eb654","type":"message","status":"completed","role":"assistant","content":[{"type":"output_text","text":"你好! 我能为您提供什么帮助吗?","annotations":[]}]}],"parallel_tool_calls":true,"previous_response_id":null,"reasoning":{"effort":null,"summary":null},"store":true,"temperature":1.0,"text":{"format":{"type":"text"}},"tool_choice":"auto","tools":[],"top_p":1.0,"truncation":"disabled","usage":{"input_tokens":37,"output_tokens":11,"output_tokens_details":{"reasoning_tokens":0},"total_tokens":48},"user":null,"metadata":{}}}

関数呼び出し ✅

curl https://88api.ai/v1/responses \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $API_KEY" \
  -d '{
    "model": "gpt-4.1",
    "input": "波士顿今天的天气如何?",
    "tools": [
      {
        "type": "function",
        "name": "get_current_weather",
        "description": "获取指定位置的当前天气",
        "parameters": {
          "type": "object",
          "properties": {
            "location": {
              "type": "string",
              "description": "城市和州,例如 San Francisco, CA"
            },
            "unit": {
              "type": "string",
              "enum": ["celsius", "fahrenheit"]
            }
          },
          "required": ["location", "unit"]
        }
      }
    ],
    "tool_choice": "auto"
  }'

応答例:

{
  "id": "resp_67ca09c5efe0819096d0511c92b8c890096610f474011cc0",
  "object": "response",
  "created_at": 1741294021,
  "status": "completed",
  "error": null,
  "incomplete_details": null,
  "instructions": null,
  "max_output_tokens": null,
  "model": "gpt-4.1-2025-04-14",
  "output": [
    {
      "type": "function_call",
      "id": "fc_67ca09c6bedc8190a7abfec07b1a1332096610f474011cc0",
      "call_id": "call_unLAR8MvFNptuiZK6K6HCy5k",
      "name": "get_current_weather",
      "arguments": "{\"location\":\"波士顿, MA\",\"unit\":\"celsius\"}",
      "status": "completed"
    }
  ],
  "parallel_tool_calls": true,
  "previous_response_id": null,
  "reasoning": {
    "effort": null,
    "summary": null
  },
  "store": true,
  "temperature": 1.0,
  "text": {
    "format": {
      "type": "text"
    }
  },
  "tool_choice": "auto",
  "tools": [
    {
      "type": "function",
      "description": "获取指定位置的当前天气",
      "name": "get_current_weather",
      "parameters": {
        "type": "object",
        "properties": {
          "location": {
            "type": "string",
            "description": "城市和州,例如 San Francisco, CA"
          },
          "unit": {
            "type": "string",
            "enum": ["celsius", "fahrenheit"]
          }
        },
        "required": ["location", "unit"]
      },
      "strict": true
    }
  ],
  "top_p": 1.0,
  "truncation": "disabled",
  "usage": {
    "input_tokens": 291,
    "output_tokens": 23,
    "output_tokens_details": {
      "reasoning_tokens": 0
    },
    "total_tokens": 314
  },
  "user": null,
  "metadata": {}
}

推論能力 ✅

curl https://88api.ai/v1/responses \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $API_KEY" \
  -d '{
    "model": "o3-mini",
    "input": "一只啄木鸟能啄多少木头?",
    "reasoning": {
      "effort": "high"
    }
  }'

応答例:

{
  "id": "resp_67ccd7eca01881908ff0b5146584e408072912b2993db808",
  "object": "response",
  "created_at": 1741477868,
  "status": "completed",
  "error": null,
  "incomplete_details": null,
  "instructions": null,
  "max_output_tokens": null,
  "model": "o1-2024-12-17",
  "output": [
    {
      "type": "message",
      "id": "msg_67ccd7f7b5848190a6f3e95d809f6b44072912b2993db808",
      "status": "completed",
      "role": "assistant",
      "content": [
        {
          "type": "output_text",
          "text": "这是一个源自英文绕口令"How much wood would a woodchuck chuck if a woodchuck could chuck wood"的问题。在现实中,啄木鸟(woodpecker)和土拨鼠(woodchuck)是不同的动物,而且土拨鼠实际上并不"啄(chuck)"木头。\n\n从科学角度看,啄木鸟每天确实会啄树木以寻找食物、建造巢穴或进行通讯。一只啄木鸟平均每天可能啄树约8000-12000次,视物种和具体目的而定。如果我们将这转换为木材量,假设每次啄击移除约0.1-0.2立方厘米的木材,那么一只啄木鸟理论上每天可能移除约800-2400立方厘米的木材。\n\n然而,啄木鸟主要是为了觅食和筑巢而啄木,而不是单纯地移除木材,所以这个计算只是一个有趣的理论估算。",
          "annotations": []
        }
      ]
    }
  ],
  "parallel_tool_calls": true,
  "previous_response_id": null,
  "reasoning": {
    "effort": "high",
    "summary": null
  },
  "store": true,
  "temperature": 1.0,
  "text": {
    "format": {
      "type": "text"
    }
  },
  "tool_choice": "auto",
  "tools": [],
  "top_p": 1.0,
  "truncation": "disabled",
  "usage": {
    "input_tokens": 81,
    "input_tokens_details": {
      "cached_tokens": 0
    },
    "output_tokens": 1035,
    "output_tokens_details": {
      "reasoning_tokens": 832
    },
    "total_tokens": 1116
  },
  "user": null,
  "metadata": {}
}

📮 リクエスト

エンドポイント

POST /v1/responses

モデル応答を作成します。テキストまたは画像入力を提供して、テキストまたはJSON出力を生成します。モデルに独自のカスタムコードを呼び出させたり、組み込みツール(ウェブ検索やファイル検索など)を使用して独自のデータをモデル応答の入力として使用させたりできます。

認証方法

APIキー認証のために、リクエストヘッダーに以下を含めます:

Authorization: Bearer $API_KEY

ここで $API_KEY はあなたの API キーです。

リクエストボディパラメータ

input

タイプ: 文字列または配列
必須: はい

モデルに提供されるテキスト、画像、またはファイル入力。応答の生成に使用されます。

取りうるタイプ
タイプ説明
文字列テキスト入力。ユーザーロールを持つテキスト入力に相当します
入力アイテムの配列異なるコンテンツタイプを持つ1つ以上の入力アイテムのリスト
入力メッセージオブジェクト
属性タイプ必須説明
content文字列または配列はいモデルに提供されるテキスト、画像、または音声入力。応答の生成に使用されます。以前のアシスタント応答を含むこともできます
role文字列はい入力メッセージのロール。オプションの値:userassistantsystem、または developer
type文字列いいえ入力メッセージのタイプ。常に message
コンテンツアイテムタイプ
テキスト入力
属性タイプ必須説明
text文字列はいモデルに提供されるテキスト入力
type文字列はい入力アイテムのタイプ。常に input_text
画像入力
属性タイプ必須説明
detail文字列はいモデルに送信する画像の詳細レベル。オプションの値:highlow、または auto。デフォルトは auto
type文字列はい入力アイテムのタイプ。常に input_image
file_id文字列いいえモデルに送信するファイルID
image_url文字列いいえモデルに送信する画像URL。完全なURLまたはデータURL内のbase64エンコード画像を指定できます
ファイル入力
属性タイプ必須説明
type文字列はい入力アイテムのタイプ。常に input_file
file_data文字列いいえモデルに送信するファイルコンテンツ
file_id文字列いいえモデルに送信するファイルID
filename文字列いいえモデルに送信するファイル名
出力アイテムタイプ
出力テキスト
属性タイプ必須説明
text文字列はいモデルによって生成されたテキスト出力
type文字列はい出力アイテムのタイプ。常に output_text
annotations配列はいテキスト出力のアノテーション
アノテーションタイプ

ファイル参照:

属性タイプ必須説明
file_id文字列はいファイルのID
index整数はいファイルリスト内でのファイルのインデックス
type文字列はいファイル参照のタイプ。常に file_citation

URL参照:

属性タイプ必須説明
end_index整数はいメッセージ内のURL参照の最後の文字のインデックス
start_index整数はいメッセージ内のURL参照の最初の文字のインデックス
title文字列はいウェブリソースのタイトル
type文字列はいURL参照のタイプ。常に url_citation
url文字列はいウェブリソースのURL

ファイルパス:

属性タイプ必須説明
file_id文字列はいファイルのID
index整数はいファイルリスト内でのファイルのインデックス
type文字列はいファイルパスのタイプ。常に file_path
拒否応答
属性タイプ必須説明
refusal文字列はいモデルの拒否理由の説明
type文字列はい拒否のタイプ。常に refusal
ツール呼び出しタイプ
ファイル検索ツール呼び出し
属性タイプ必須説明
id文字列はいファイル検索ツール呼び出しの一意のID
queries配列はいファイル検索に使用されるクエリ
status文字列はいファイル検索ツール呼び出しのステータス。取りうる値:in_progresssearchingincomplete、または failed
type文字列はいファイル検索ツール呼び出しのタイプ。常に file_search_call
results配列またはnullいいえファイル検索ツール呼び出しの結果
ウェブ検索ツール呼び出し
属性タイプ必須説明
id文字列はいウェブ検索ツール呼び出しの一意のID
status文字列はいウェブ検索ツール呼び出しのステータス
type文字列はいウェブ検索ツール呼び出しのタイプ。常に web_search_call
関数ツール呼び出し
属性タイプ必須説明
arguments文字列はい関数に渡される引数のJSON文字列
call_id文字列はいモデルによって生成された関数ツール呼び出しの一意のID
name文字列はい実行する関数の名前
type文字列はい関数ツール呼び出しのタイプ。常に function_call
id文字列いいえ関数ツール呼び出しの一意のID
status文字列いいえアイテムのステータス。取りうる値:in_progresscompleted、またはincomplete
コンピューターツール呼び出し
属性タイプ必須説明
actionオブジェクトはいクリック、ドラッグなどのコンピューター操作のアクション
call_id文字列はい応答ツール呼び出し出力時に使用される識別子
id文字列はいコンピューター呼び出しの一意のID
pending_safety_checks配列はいコンピューター呼び出しの保留中の安全チェック
status文字列はいアイテムのステータス。取りうる値:in_progresscompleted、またはincomplete
type文字列はいコンピューター呼び出しのタイプ。常に computer_call

コンピューター操作タイプ:

操作タイプ説明
clickマウスクリック操作
double_clickマウスダブルクリック操作
dragドラッグ操作
keypressキー操作
moveマウス移動操作
screenshotスクリーンショット操作
scrollスクロール操作
typeテキスト入力操作
wait待機操作
コンピューターツール呼び出し出力
属性タイプ必須説明
call_id文字列はい出力を生成したコンピューターツール呼び出しのID
outputオブジェクトはいコンピューター使用ツール用のコンピューター画面のスクリーンショット画像
type文字列はいコンピューターツール呼び出し出力のタイプ。常に computer_call_output
acknowledged_safety_checks配列いいえ開発者によって確認されたAPI報告の安全チェック
id文字列いいえコンピューターツール呼び出し出力のID
status文字列いいえ入力メッセージのステータス。取りうる値:in_progresscompleted、またはincomplete
関数ツール呼び出し出力
属性タイプ必須説明
call_id文字列はいモデルによって生成された関数ツール呼び出しの一意のID
output文字列はい関数ツール呼び出し出力のJSON文字列
type文字列はい関数ツール呼び出し出力のタイプ。常に function_call_output
id文字列いいえ関数ツール呼び出し出力の一意のID
status文字列いいえアイテムのステータス。取りうる値:in_progresscompleted、またはincomplete
推論関連アイテム
属性タイプ必須説明
id文字列はい推論コンテンツの一意の識別子
summary配列はい推論テキストコンテンツ
type文字列はいオブジェクトのタイプ。常に reasoning
encrypted_content文字列またはnullいいえ推論アイテムの暗号化されたコンテンツ - reasoning.encrypted_content を含むパラメータを使用して応答が生成された場合に設定されます
status文字列いいえアイテムのステータス。取りうる値:in_progresscompleted、またはincomplete

推論要約:

属性タイプ必須説明
text文字列はいモデルが応答を生成する際に使用した推論の簡単な要約
type文字列はいオブジェクトのタイプ。常に summary_text
アイテム参照
属性タイプ必須説明
id文字列はい参照するアイテムのID
type文字列いいえ参照するアイテムのタイプ。常に item_reference

model

タイプ: 文字列
必須: はい

応答の生成に使用するモデルID。例:gpt-4.1 または o3。OpenAIは、異なる能力、性能特性、および価格帯を持つ様々なモデルを提供しています。利用可能なモデルを閲覧および比較するには、モデルガイドを参照してください。

include

タイプ: 配列またはnull
必須: いいえ

モデル応答に含める追加の出力データを指定します。現在サポートされている値は次のとおりです:

説明
file_search_call.resultsファイル検索ツール呼び出しの検索結果を含めます
message.input_image.image_url入力メッセージ内の画像URLを含めます
computer_call_output.output.image_urlコンピューター呼び出し出力内の画像URLを含めます
reasoning.encrypted_content推論アイテム出力に推論トークンの暗号化バージョンを含めます

instructions

タイプ: 文字列またはnull
必須: いいえ

モデルコンテキストの最初のアイテムとしてシステム(または開発者)メッセージを挿入します。

previous_response_id と一緒に使用する場合、前の応答の指示は次の応答には引き継がれません。これにより、新しい応答でシステム(開発者)メッセージを簡単に切り替えることができます。

max_output_tokens

タイプ: 整数またはnull
必須: いいえ

応答のために生成できるトークン数の上限。可視出力トークンと推論トークンの両方を含みます。

metadata

タイプ: オブジェクト
必須: いいえ

オブジェクトに添付できる16個のキーと値のペアのコレクション。これは、オブジェクトに関する追加情報を構造化された形式で保存し、APIまたはダッシュボードを通じてオブジェクトをクエリするのに役立ちます。

キーは最大長64文字の文字列です。値は最大長512文字の文字列です。

parallel_tool_calls

タイプ: ブール値またはnull
必須: いいえ
デフォルト値: true

モデルがツール呼び出しを並行して実行することを許可するかどうか。

previous_response_id

タイプ: 文字列またはnull
必須: いいえ

モデルの前の応答の一意のID。このパラメータを使用してマルチターンの会話を作成します。会話の状態についてさらに学ぶ。

reasoning

タイプ: オブジェクトまたはnull
必須: いいえ
oシリーズモデルにのみ適用

推論モデルの構成オプション。

属性タイプ必須説明
effort文字列またはnullいいえ推論の努力レベル。オプションの値: low, medium, high。デフォルト値は medium です。推論の努力を減らすと、応答速度が向上し、応答に使用される推論トークン数が減少します
summary文字列またはnullいいえモデルが実行した推論の要約。これは、デバッグやモデルの推論プロセスを理解するのに役立ちます。オプションの値: auto, concise, detailed
generate_summary文字列またはnullいいえ非推奨: 代わりに summary を使用してください。モデルが実行した推論の要約。オプションの値: auto, concise, detailed

service_tier

タイプ: 文字列またはnull
必須: いいえ
デフォルト値: auto

リクエストの処理に使用するレイテンシ層を指定します。このパラメータは、スケール層サービスを購読している顧客に関連します:

説明
autoプロジェクトでスケール層が有効になっている場合、クレジットがなくなるまでスケール層が使用されます。プロジェクトでスケール層が有効になっていない場合、リクエストはデフォルトのサービス層で処理され、稼働時間SLAが低く、レイテンシ保証はありません
defaultリクエストはデフォルトのサービス層で処理され、稼働時間SLAが低く、レイテンシ保証はありません
flexリクエストはFlex Processingサービス層で処理されます。詳細については公式ドキュメントを参照してください

このパラメータが設定されていない場合、デフォルトの動作は auto です。

このパラメータが設定されている場合、応答ボディには使用された service_tier が含まれます。

store

タイプ: ブール値またはnull
必須: いいえ
デフォルト値: true

生成されたモデル応答を後でAPI経由で取得するために保存するかどうか。

stream

タイプ: ブール値またはnull
必須: いいえ
デフォルト値: false

trueに設定されている場合、モデル応答データは、生成時にサーバー送信イベントを使用してクライアントにストリーミングされます。

temperature

タイプ: 数値またはnull
必須: いいえ
デフォルト値: 1

使用するサンプリング温度。0から2の間。高い値(例:0.8)は出力をよりランダムにし、低い値(例:0.2)は出力をより集中的で決定論的にします。通常、この値または top_p のいずれかを変更することをお勧めしますが、両方を同時に変更することはお勧めしません。

text

タイプ: オブジェクト
必須: いいえ

モデルのテキスト応答の構成オプション。プレーンテキストまたは構造化JSONデータにすることができます。

属性タイプ必須説明
formatオブジェクトいいえモデルが出力する必要があるフォーマットを指定します

{ "type": "json_schema" } を構成すると、構造化出力が有効になり、モデルが提供されたJSONスキーマに一致することが保証されます。詳細については、構造化出力ガイドを参照してください。

デフォルトのフォーマットは { "type": "text" } であり、他のオプションはありません。

gpt-4oおよびそれ以降のモデルでは非推奨{ "type": "json_object" } に設定すると、古いJSONモードが有効になり、モデルが生成するメッセージが有効なJSONであることが保証されます。サポートされているモデルでは、json_schema の使用が推奨されます。

テキストフォーマットタイプ
テキスト (Text)
属性タイプ必須説明
type文字列はい定義された応答フォーマットタイプ。常に text
JSONスキーマ (JSON Schema)
属性タイプ必須説明
name文字列はい応答フォーマットの名前。a-z, A-Z, 0-9、またはアンダースコアとハイフンを含める必要があり、最大長は64です
schemaオブジェクトはいJSONスキーマオブジェクトとして記述された応答フォーマットのスキーマ
type文字列はい定義された応答フォーマットタイプ。常に json_schema
description文字列いいえ応答フォーマットの用途の説明。モデルはこれを使用して、そのフォーマットでどのように応答するかを決定します
strictブール値またはnullいいえ出力生成時に厳密なスキーマ準拠モードを有効にするかどうか。デフォルトは false です。true に設定されている場合、モデルは schema フィールドで定義された正確なスキーマに常に従います。厳密モードでは、JSONスキーマのサブセットのみがサポートされます
JSONオブジェクト (JSON Object)
属性タイプ必須説明
type文字列はい定義された応答フォーマットタイプ。常に json_object

注意:モデルにそうするように指示するシステムメッセージやユーザーメッセージがない場合、モデルはJSONを生成しません。サポートされているモデルでは、json_schema の使用が推奨されます。

tool_choice

タイプ: 文字列またはオブジェクト
必須: いいえ

モデルが応答を生成する際に使用するツール(または複数のツール)をどのように選択するか。モデルが呼び出すことができるツールを指定する方法については、tools パラメータを参照してください。

取りうるタイプ
ツール選択モード (Tool choice mode)

タイプ: 文字列

モデルがツールを呼び出すかどうか、およびどのツールを呼び出すかを制御します。

説明
noneモデルはツールを呼び出さず、メッセージを生成します
autoモデルはメッセージの生成または1つ以上のツールの呼び出しを選択できます
requiredモデルは1つ以上のツールを呼び出す必要があります
ホスト型ツール (Hosted tool)

タイプ: オブジェクト

モデルが組み込みツールを使用して応答を生成する必要があることを示します。

属性タイプ必須説明
type文字列はいモデルが使用すべきホスト型ツールのタイプ。許可される値:file_searchweb_search_previewcomputer_use_preview
関数ツール (Function tool)

タイプ: オブジェクト

このオプションを使用して、モデルに特定の関数を強制的に呼び出させます。

属性タイプ必須説明
name文字列はい呼び出す関数の名前
type文字列はい関数呼び出しの場合、タイプは常に function

tools

タイプ: 配列
必須: いいえ

モデルが応答を生成する際に呼び出す可能性のあるツールの配列。tool_choice パラメータを設定することで、どのツールを使用するかを指定できます。

モデルに提供できるツールのカテゴリは2つあります:

  • 組み込みツール:ウェブ検索やファイル検索など、モデルの機能を拡張するためにOpenAIが提供するツール。
  • 関数呼び出し(カスタムツール):モデルが独自のコードを呼び出せるように、あなたが定義する関数。

タイプ: オブジェクト

アップロードされたファイル内の関連コンテンツを検索するツール。

属性タイプ必須説明
type文字列はいファイル検索ツールのタイプ。常に file_search
vector_store_ids配列はい検索するベクターストアIDのリスト
filtersオブジェクトいいえ適用するフィルター
max_num_results整数いいえ返される最大結果数。この数値は1から50の間(両端を含む)である必要があります
ranking_optionsオブジェクトいいえ検索ランキングオプション
フィルタータイプ

比較フィルター (Comparison Filter)

属性タイプ必須説明
key文字列はい値と比較するキー
type文字列はい比較演算子を指定します: eq, ne, gt, gte, lt, lte
- eq: 等しい<br />- ne: 等しくない<br />- gt: より大きい<br />- gte: 以上<br />- lt: より小さい<br />- lte: 以下
value文字列/数値/ブール値はい属性キーと比較する値。文字列、数値、またはブールタイプをサポートします

複合フィルター (Compound Filter)

属性タイプ必須説明
filters配列はい結合するフィルターの配列。アイテムは比較フィルターまたは複合フィルターのいずれかです
type文字列はい操作タイプ: and または or
ランキングオプション
属性タイプ必須説明
ranker文字列いいえファイル検索で使用されるランカー
score_threshold数値いいえファイル検索のスコアしきい値。0から1の間の数値。1に近い数値は、最も関連性の高い結果のみを返そうとしますが、結果の数が少なくなる可能性があります
関数ツール (Function)

タイプ: オブジェクト

モデルが呼び出すことを選択できる、独自のコード内の関数を定義します。

属性タイプ必須説明
type文字列はい関数ツールのタイプ。常に function
name文字列はい呼び出す関数の名前
parametersオブジェクトはい関数のパラメータを記述するJSONスキーマオブジェクト
strictブール値はい厳密なパラメータ検証を強制するかどうか。デフォルトは true です
description文字列いいえ関数の説明。モデルはこれを使用して関数を呼び出すかどうかを決定します
ウェブ検索ツール (Web search preview)

タイプ: オブジェクト

このツールは、応答に使用する関連結果をウェブで検索します。

属性タイプ必須説明
type文字列はいウェブ検索ツールのタイプ。オプションの値: web_search_preview または web_search_preview_2025_03_11
search_context_size文字列いいえ検索に使用されるコンテキストウィンドウのスペース量に関する高度なガイダンス。オプションの値: low, medium, high。デフォルトは medium
user_locationオブジェクトいいえユーザーの位置情報
domains配列いいえ検索を制限するドメインのリスト
ユーザー位置
属性タイプ必須説明
type文字列はい位置近似タイプ。常に approximate
city文字列いいえユーザーの都市の自由形式テキスト入力。例: "San Francisco"
country文字列いいえユーザーの2文字のISO国コード。例: "US"
region文字列いいえユーザーの地域の自由形式テキスト入力。例: "California"
timezone文字列いいえユーザーのIANAタイムゾーン。例: "America/Los_Angeles"
コンピューター使用ツール (Computer use preview)

タイプ: オブジェクト

仮想コンピューターを制御するためのツール。

属性タイプ必須説明
type文字列はいコンピューター使用ツールのタイプ。常に computer_use_preview
display_height整数はいコンピューターディスプレイの高さ
display_width整数はいコンピューターディスプレイの幅
environment文字列はい制御するコンピューター環境のタイプ

top_p

タイプ: 数値またはnull
必須: いいえ
デフォルト値: 1

核サンプリングと呼ばれるサンプリング温度の代替方法。モデルは、top_pの確率質量を持つトークン結果を考慮します。したがって、0.1は、上位10%の確率質量を含むトークンのみが考慮されることを意味します。

通常、この値または temperature のいずれかを変更することをお勧めしますが、両方を同時に変更することはお勧めしません。

truncation

タイプ: 文字列またはnull
必須: いいえ
デフォルト値: disabled

モデル応答に使用される切り捨てポリシー:

説明
autoこの応答と前の応答のコンテキストがモデルのコンテキストウィンドウサイズを超えた場合、モデルは会話の中央の入力アイテムを削除することで応答を切り捨て、コンテキストウィンドウに収まるようにします
disabledモデル応答がモデルのコンテキストウィンドウサイズを超える場合、リクエストは400エラーで失敗します

user

タイプ: 文字列
必須: いいえ

エンドユーザーを表す一意の識別子。OpenAIが不正行為を監視および検出するのに役立ちます。

📥 応答

応答オブジェクトを返します。

成功応答

応答オブジェクトを返します。リクエストがストリーミングされた場合は、応答オブジェクトのストリーミングシーケンスを返します。

id

  • タイプ:文字列
  • 説明:応答の一意の識別子

object

  • タイプ:文字列
  • 説明:オブジェクトタイプ。値は "response"

created_at

  • タイプ:整数
  • 説明:応答作成のタイムスタンプ

status

  • タイプ:文字列
  • 説明:応答ステータス。例: "completed"、"in_progress" など

error

  • タイプ:オブジェクトまたはnull
  • 説明:エラーが発生した場合、エラー情報が含まれます

incomplete_details

  • タイプ:オブジェクトまたはnull
  • 説明:応答が不完全な場合、詳細情報が含まれます

instructions

  • タイプ:文字列またはnull
  • 説明:モデルに提供されたシステム指示

max_output_tokens

  • タイプ:整数またはnull
  • 説明:最大出力トークン数

model

  • タイプ:文字列
  • 説明:使用されたモデル名

output

  • タイプ:配列
  • 説明:生成された応答とツール呼び出しが含まれます
  • 含まれる可能性があるもの:
    • メッセージオブジェクト(type: "message")
    • ツール使用オブジェクト(type: "tool_use")

parallel_tool_calls

  • タイプ:ブール値
  • 説明:並行ツール呼び出しが有効になっているかどうか

previous_response_id

  • タイプ:文字列またはnull
  • 説明:前の応答のID(マルチターン会話用)

reasoning

  • タイプ:オブジェクト
  • 説明:推論関連情報

store

  • タイプ:ブール値
  • 説明:この応答を保存するかどうか

temperature

  • タイプ:数値
  • 説明:使用されたサンプリング温度

text

  • タイプ:オブジェクト
  • 説明:テキスト出力フォーマット構成

tool_choice

  • タイプ:文字列
  • 説明:ツール選択ポリシー

tools

  • タイプ:配列
  • 説明:利用可能なツールのリスト

top_p

  • タイプ:数値
  • 説明:核サンプリングのしきい値

truncation

  • タイプ:文字列
  • 説明:切り捨てポリシー

usage

  • タイプ:オブジェクト
  • 説明:トークン使用統計
  • 属性:
    • input_tokens: 入力に使用されたトークン数
    • input_tokens_details: 入力トークンの詳細情報
    • output_tokens: 出力に使用されたトークン数
    • output_tokens_details: 出力トークンの詳細情報
    • total_tokens: 合計トークン数

user

  • タイプ:文字列またはnull
  • 説明:ユーザー識別子

metadata

  • タイプ:オブジェクト
  • 説明:添付されたメタデータ情報

目次

📝 概要
💡 リクエスト例
基本的なテキスト応答 ✅
画像分析応答 ✅
ウェブ検索ツール ✅
ファイル検索ツール ✅
ストリーミング応答 ✅
関数呼び出し ✅
推論能力 ✅
📮 リクエスト
エンドポイント
認証方法
リクエストボディパラメータ
input
取りうるタイプ
入力メッセージオブジェクト
コンテンツアイテムタイプ
テキスト入力
画像入力
ファイル入力
出力アイテムタイプ
出力テキスト
アノテーションタイプ
拒否応答
ツール呼び出しタイプ
ファイル検索ツール呼び出し
ウェブ検索ツール呼び出し
関数ツール呼び出し
コンピューターツール呼び出し
コンピューターツール呼び出し出力
関数ツール呼び出し出力
推論関連アイテム
アイテム参照
model
include
instructions
max_output_tokens
metadata
parallel_tool_calls
previous_response_id
reasoning
service_tier
store
stream
temperature
text
テキストフォーマットタイプ
テキスト (Text)
JSONスキーマ (JSON Schema)
JSONオブジェクト (JSON Object)
tool_choice
取りうるタイプ
ツール選択モード (Tool choice mode)
ホスト型ツール (Hosted tool)
関数ツール (Function tool)
tools
ファイル検索ツール (File search)
フィルタータイプ
ランキングオプション
関数ツール (Function)
ウェブ検索ツール (Web search preview)
ユーザー位置
コンピューター使用ツール (Computer use preview)
top_p
truncation
user
📥 応答
成功応答
id
object
created_at
status
error
incomplete_details
instructions
max_output_tokens
model
output
parallel_tool_calls
previous_response_id
reasoning
store
temperature
text
tool_choice
tools
top_p
truncation
usage
user
metadata