SPB Git forge

spb/doc-api

Public
2commits 1branches 0releases
15.7 MBsize
maindefault branch
13 days agolast push
Python 88.3% TypeScript 7.6% Shell 4.1%
9.2 KB · 120 lines markdown
Rendered Raw Blame History
1# OpenAI tools — index (built-in, function calling, MCP, containers, skills)23**Status:** DOCUMENTED + LIVE_VERIFIED (12 of 16 tool types called live on 2026-09-18 with `gpt-5.4-nano` / `gpt-5.4-mini`; `computer_use_preview` ACCOUNT_RESTRICTED, `local_shell` FAILED_VERIFICATION/LEGACY, `programmatic_tool_calling`, `computer`, `web_search_preview*`, `web_search_2025_08_26` DOCUMENTED only).4**Sources:** https://developers.openai.com/api/docs/guides/tools · https://developers.openai.com/api/docs/guides/function-calling · https://developers.openai.com/api/reference/resources/responses/methods/create · openapi-master.yaml (`Tool` union) · model pages `## Supported tools` · https://developers.openai.com/api/docs/pricing#built-in-tools5**Last verified:** 2026-09-18 · machine-readable: `generated/fragments/tools/openai-tools.json`, `parameters/openai-tools.json`, `streaming-events/openai-tools.json`, `endpoints/openai-containers-skills.json`67## Exact `type` strings (OpenAPI `Tool` union, 16 members) and live status89| `type` | Category | Doc | Live 2026-09-18 |10|---|---|---|---|11| `function` | client | [function-calling](function-calling.md) | LIVE_VERIFIED (nano; forced, round trip, stream, strict 400) |12| `custom` | client | [custom-tools](custom-tools.md) | LIVE_VERIFIED (regex grammar) |13| `namespace` | client | [function-calling](function-calling.md#namespaces) | LIVE_VERIFIED (nano) |14| `tool_search` | hosted | [tool-search](tool-search.md) | LIVE_VERIFIED (gpt-5.4-mini) |15| `programmatic_tool_calling` | hosted | [tool-loop](../../openai/tool-loop.md#programmatic-tool-calling) | DOCUMENTED |16| `web_search` / `web_search_2025_08_26` | hosted | [web-search](web-search.md) | LIVE_VERIFIED / DOCUMENTED |17| `web_search_preview` / `web_search_preview_2025_03_11` | hosted, LEGACY | [web-search](web-search.md) | DOCUMENTED |18| `file_search` | hosted | [file-search](file-search.md) | LIVE_VERIFIED |19| `code_interpreter` | hosted | [code-interpreter](code-interpreter.md) | LIVE_VERIFIED (+ containers API) |20| `computer_use_preview` | client, PREVIEW | [computer-use](computer-use.md) | ACCOUNT_RESTRICTED (404 model_not_found) |21| `computer` | client | [computer-use](computer-use.md) | DOCUMENTED |22| `image_generation` | hosted | [image-generation](image-generation.md) | LIVE_VERIFIED error path only |23| `mcp` | mcp | [mcp-and-connectors](mcp-and-connectors.md) | LIVE_VERIFIED (DeepWiki, approvals) |24| `shell` | hosted / client | [shell](shell.md) | LIVE_VERIFIED (local + hosted with skill) |25| `local_shell` | client, LEGACY | [shell](shell.md#local_shell-legacy) | FAILED_VERIFICATION: 400 “no longer supported” on nano |26| `apply_patch` | client | [apply-patch](apply-patch.md) | LIVE_VERIFIED |27| *(not a tool)* `skill_reference` / `inline` skills | hosted attachment | [skills](skills.md), [Skills API](../../openai/skills-api.md) | LIVE_VERIFIED |2829## Tool × Endpoint matrix3031| Tool | POST /v1/responses | POST /v1/chat/completions | Realtime / Live | Agents API | Assistants (legacy) |32|---|---|---|---|---|---|33| function | yes | yes (`{type:function, function:{…}}`) | yes (`session.tools`) | yes | yes |34| custom | yes | yes (`{type:custom, custom:{…}}`) | no | no | no |35| namespace, tool_search, programmatic_tool_calling | yes | no | no | tool_search / PTC yes | no |36| web_search | yes | only via search models (`gpt-5-search-api`, `web_search_options`) | Live: `{type: web_search}` | yes | no |37| file_search | yes | no | no | no | yes |38| code_interpreter | yes | no | no | sandbox | yes |39| computer / computer_use_preview | yes | no | no | no | no |40| image_generation | yes | no | no | no | no |41| mcp | yes | no | yes (Realtime MCP) | yes (MCP connections) | no |42| shell / apply_patch / local_shell | yes | no | no | shell in sandbox | no |4344## Tool × Model matrix (from the `## Supported tools` section of each model page, 2026-09-18)4546Keys as written on the model pages. Note: gpt-5.6-*, gpt-6-astra and gpt-daybreak-* pages omit `function_calling` although function calling is documented for them (GPT-6 Astra requires Responses for tool calling); `computer-use-preview` and `codex-mini-latest` pages have no section.4748| Model | function / custom / namespace | web_search(_preview) | file_search | code_interpreter | image_generation | mcp | shell (hosted) | apply_patch | skills | computer / computer_use_preview | tool_search |49|---|---|---|---|---|---|---|---|---|---|---|---|50| `chat-latest` | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |  |  |  |  |  |51| `gpt-4.1-mini` | ✓ | ✓ | ✓ | ✓ |  | ✓ |  |  |  |  |  |52| `gpt-4.1-nano` | ✓ |  | ✓ | ✓ | ✓ | ✓ |  |  |  |  |  |53| `gpt-4.1` | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |  |  |  |  |  |54| `gpt-4o-mini-audio-preview` |  | ✓ | ✓ | ✓ |  | ✓ |  |  |  |  |  |55| `gpt-4o-mini` | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |  |  |  |  |  |56| `gpt-4o` | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |  |  |  |  |  |57| `gpt-5-chat-latest` | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |  |  |  |  |  |58| `gpt-5-codex` | ✓ | ✓ |  |  |  |  |  |  |  |  |  |59| `gpt-5-mini` | ✓ | ✓ | ✓ | ✓ |  | ✓ |  |  |  |  |  |60| `gpt-5-nano` | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |  |  |  |  |  |61| `gpt-5-pro` | ✓ | ✓ | ✓ |  | ✓ | ✓ |  |  |  |  |  |62| `gpt-5.1-chat-latest` | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |  |  |  |  |  |63| `gpt-5.1-codex-max` | ✓ | ✓ |  |  |  |  |  |  |  |  |  |64| `gpt-5.1-codex-mini` | ✓ | ✓ |  |  |  |  |  |  |  |  |  |65| `gpt-5.1-codex` | ✓ | ✓ |  |  |  |  |  |  |  |  |  |66| `gpt-5.1` | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |  | ✓ |  |  |  |67| `gpt-5.2-chat-latest` | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |  |  |  |  |  |68| `gpt-5.2-codex` | ✓ | ✓ |  |  |  |  | ✓ |  | ✓ |  |  |69| `gpt-5.2-pro` | ✓ | ✓ | ✓ |  | ✓ | ✓ |  |  |  |  |  |70| `gpt-5.2` | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |  |  |71| `gpt-5.3-chat-latest` | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |  |  |  |  |  |72| `gpt-5.3-codex` | ✓ | ✓ |  |  |  |  | ✓ |  | ✓ |  |  |73| `gpt-5.4-mini` | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |74| `gpt-5.4-nano` | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |  |  |75| `gpt-5.4-pro` | ✓ | ✓ | ✓ |  | ✓ | ✓ |  | ✓ |  | ✓ | ✓ |76| `gpt-5.4` | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |77| `gpt-5.5-pro` | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |  |  |  |  |78| `gpt-5.5` | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |79| `gpt-5.6-cyber` |  | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |80| `gpt-5.6-luna` |  | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |81| `gpt-5.6-sol` |  | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |82| `gpt-5.6-terra` |  | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |83| `gpt-5` | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |  |  |  |  |  |84| `gpt-6-astra` |  | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |85| `gpt-audio-mini` | ✓ |  |  |  |  |  |  |  |  |  |  |86| `gpt-daybreak-blue-latest` |  | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |87| `gpt-daybreak-red-latest` |  | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |88| `gpt-oss-120b` | ✓ | ✓ |  | ✓ |  | ✓ |  |  |  |  |  |89| `gpt-oss-20b` | ✓ | ✓ |  | ✓ |  | ✓ |  |  |  |  |  |90| `o1-mini` |  |  | ✓ | ✓ |  | ✓ |  |  |  |  |  |91| `o1-pro` | ✓ |  | ✓ |  |  | ✓ |  |  |  |  |  |92| `o1` | ✓ |  | ✓ |  |  | ✓ |  |  |  |  |  |93| `o3-deep-research` |  | ✓ |  | ✓ |  | ✓ |  |  |  |  |  |94| `o3-mini` | ✓ |  | ✓ | ✓ | ✓ | ✓ |  |  |  |  |  |95| `o3-pro` | ✓ | ✓ | ✓ |  | ✓ | ✓ |  |  |  |  |  |96| `o3` | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |  |  |  |  |  |97| `o4-mini-deep-research` |  | ✓ |  | ✓ |  | ✓ |  |  |  |  |  |98| `o4-mini` | ✓ | ✓ | ✓ | ✓ |  | ✓ |  |  |  |  |  |99100## Pricing pointers (owned by the pricing fragment; cited here)101102| Tool | Price | Source |103|---|---|---|104| Web search (`web_search`, all models; image web search) | $10.00 / 1k calls + search content tokens at model rates | pricing#built-in-tools |105| Web search preview | $10 / 1k (reasoning models) · $25 / 1k with free content tokens (non-reasoning) | pricing#built-in-tools |106| Containers (hosted shell, code interpreter) | 1 GB $0.03 · 4 GB $0.12 · 16 GB $0.48 · 64 GB $1.92 per 20-minute session per container | pricing#built-in-tools |107| File search | $2.50 / 1k calls; storage $0.10 / GB / day (1 GB free) | pricing#built-in-tools |108| MCP, function, custom, apply_patch, shell (local), tool_search | tokens only | pricing |109| image_generation | image-model token pricing | pricing#image-generation |110111## `include[]` values that belong to tools112113`file_search_call.results`, `web_search_call.results`, `web_search_call.action.sources`, `code_interpreter_call.outputs`, `computer_call_output.output.image_url` (plus non-tool: `message.input_image.image_url`, `reasoning.encrypted_content`, `message.output_text.logprobs`).114115## Live run summary (2026-09-18)116117~45 tool-related requests, est. total ≈ $0.35 (web search 6 × $0.01, containers 7 sessions × $0.03, file search 5 × $0.0025, tokens < $0.03). All raw responses in `tmp-live/tools/` (gitignored); log `reports/live-requests.jsonl`.118119See also: [containers](../../openai/containers.md) · [Skills API](../../openai/skills-api.md) · [tool loop patterns](../../openai/tool-loop.md).120